Version Description
- Fixed Google Maps.
Download this release
Release Info
Developer | boldthemes |
Plugin | Bold Page Builder |
Version | 3.2.5 |
Comparing to | |
See all releases |
Version 3.2.5
- admin-notice-rating.php +76 -0
- admin-notice.php +41 -0
- autosize.min.js +6 -0
- bold-builder.php +1510 -0
- build/bundle.js +1 -0
- build/jsx.min.js +2 -0
- content_elements/bt_bb_accordion/bt_bb_accordion.js +29 -0
- content_elements/bt_bb_accordion/bt_bb_accordion.php +95 -0
- content_elements/bt_bb_accordion_item/bt_bb_accordion_item.php +37 -0
- content_elements/bt_bb_button/bt_bb_button.php +209 -0
- content_elements/bt_bb_column/bt_bb_column.php +288 -0
- content_elements/bt_bb_column_inner/bt_bb_column_inner.php +261 -0
- content_elements/bt_bb_contact_form_7/bt_bb_contact_form_7.php +61 -0
- content_elements/bt_bb_content_slider/bt_bb_content_slider.php +175 -0
- content_elements/bt_bb_content_slider_item/bt_bb_content_slider_item.php +72 -0
- content_elements/bt_bb_cost_calculator/bt_bb_cost_calculator.js +64 -0
- content_elements/bt_bb_cost_calculator/bt_bb_cost_calculator.php +66 -0
- content_elements/bt_bb_cost_calculator_item/bt_bb_cost_calculator_item.php +94 -0
- content_elements/bt_bb_countdown/bt_bb_countdown.php +94 -0
- content_elements/bt_bb_counter/bt_bb_counter.php +102 -0
- content_elements/bt_bb_custom_menu/bt_bb_custom_menu.php +67 -0
- content_elements/bt_bb_google_maps/bt_bb_google_maps.php +121 -0
- content_elements/bt_bb_google_maps_location/bt_bb_google_maps_location.php +60 -0
- content_elements/bt_bb_headline/bt_bb_headline.php +225 -0
- content_elements/bt_bb_icon/bt_bb_icon.php +173 -0
- content_elements/bt_bb_image/bt_bb_image.php +267 -0
- content_elements/bt_bb_instagram/bt_bb_instagram.php +92 -0
- content_elements/bt_bb_latest_posts/bt_bb_latest_posts.php +194 -0
- content_elements/bt_bb_leaflet_map/bt_bb_leaflet_map.php +138 -0
- content_elements/bt_bb_leaflet_map/enqueue_lib.php +21 -0
- content_elements/bt_bb_leaflet_map/leafletmap/css/leaflet.css +65 -0
- content_elements/bt_bb_leaflet_map/leafletmap/img/pin24.png +0 -0
- content_elements/bt_bb_leaflet_map/leafletmap/img/pin48.png +0 -0
- content_elements/bt_bb_leaflet_map/leafletmap/js/leafletmap-source.js +29 -0
- content_elements/bt_bb_leaflet_map/leafletmap/lib/MarkerCluster.Default.css +60 -0
- content_elements/bt_bb_leaflet_map/leafletmap/lib/MarkerCluster.css +15 -0
- content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.ajax.min.js +1 -0
- content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.css +479 -0
- content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.js +9 -0
- content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.markercluster.js +7 -0
- content_elements/bt_bb_leaflet_map_location/bt_bb_leaflet_map_location.php +61 -0
- content_elements/bt_bb_masonry_image_grid/bt_bb_masonry_image_grid.js +78 -0
- content_elements/bt_bb_masonry_image_grid/bt_bb_masonry_image_grid.php +145 -0
- content_elements/bt_bb_masonry_post_grid/bt_bb_masonry_post_grid.php +345 -0
- content_elements/bt_bb_masonry_post_grid/bt_bb_post_grid.js +161 -0
- content_elements/bt_bb_price_list/bt_bb_price_list.php +82 -0
- content_elements/bt_bb_progress_bar/bt_bb_progress_bar.php +123 -0
- content_elements/bt_bb_raw_content/bt_bb_raw_content.php +28 -0
- content_elements/bt_bb_row/bt_bb_row.php +134 -0
- content_elements/bt_bb_row_inner/bt_bb_row_inner.php +98 -0
- content_elements/bt_bb_section/YTPlayer.css +297 -0
- content_elements/bt_bb_section/bt_bb_elements.js +45 -0
- content_elements/bt_bb_section/bt_bb_section.php +291 -0
- content_elements/bt_bb_section/jquery.mb.YTPlayer.min.css +1 -0
- content_elements/bt_bb_section/jquery.mb.YTPlayer.min.js +9 -0
- content_elements/bt_bb_section/jquery.mb.YTPlayer.src.js +2968 -0
- content_elements/bt_bb_separator/bt_bb_separator.php +96 -0
- content_elements/bt_bb_service/bt_bb_service.php +154 -0
- content_elements/bt_bb_slider/bt_bb_slider.php +202 -0
- content_elements/bt_bb_slider/placeholder.png +0 -0
- content_elements/bt_bb_tab_item/bt_bb_tab_item.php +46 -0
- content_elements/bt_bb_tabs/bt_bb_tabs.js +13 -0
- content_elements/bt_bb_tabs/bt_bb_tabs.php +92 -0
- content_elements/bt_bb_text/bt_bb_text.php +44 -0
- content_elements/bt_bb_twitter/bt_bb_twitter.php +158 -0
- content_elements/bt_bb_video/bt_bb_video.php +63 -0
- content_elements_misc/color_scheme_template.php +256 -0
- content_elements_misc/css/dummy.css +0 -0
- content_elements_misc/fa_icons.php +526 -0
- content_elements_misc/fonts.php +15 -0
- content_elements_misc/fonts/FontAwesome.otf +0 -0
- content_elements_misc/fonts/Pe-icon-7-stroke.eot +0 -0
- content_elements_misc/fonts/Pe-icon-7-stroke.svg +212 -0
- content_elements_misc/fonts/Pe-icon-7-stroke.ttf +0 -0
- content_elements_misc/fonts/Pe-icon-7-stroke.woff +0 -0
- content_elements_misc/fonts/fontawesome-webfont.eot +0 -0
- content_elements_misc/fonts/fontawesome-webfont.svg +148 -0
admin-notice-rating.php
ADDED
@@ -0,0 +1,76 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
add_action( 'admin_notices', 'bt_bb_rating_notice' );
|
4 |
+
function bt_bb_rating_notice() {
|
5 |
+
|
6 |
+
global $current_user;
|
7 |
+
|
8 |
+
$user_id = $current_user->ID;
|
9 |
+
|
10 |
+
if ( ! get_user_meta( $user_id, 'bt_bb_rating_notice_ignore' ) && get_user_meta( $user_id, 'bt_bb_rating_notice_enable' ) ) {
|
11 |
+
|
12 |
+
echo '<div class="notice notice-info is-dismissible bt_bb_rating_notice" style="background:#f2f8ff;"><p>'. esc_html__( 'Do you like Bold Builder?', 'bold-builder' ) . ' ' . esc_html__( 'You can contribute by leaving us a', 'bold-builder' ) . ' ' . ' <a href="https://wordpress.org/support/plugin/bold-page-builder/reviews/?filter=5" target="_blank">'. esc_html__( 'review', 'bold-builder' ) . '</a>' . '. ' . esc_html__( 'Thanks!', 'bold-builder' ) . ' 🙂</p></div>';
|
13 |
+
|
14 |
+
}
|
15 |
+
|
16 |
+
}
|
17 |
+
|
18 |
+
add_action( 'admin_footer', 'bt_bb_rating_notice_js' );
|
19 |
+
function bt_bb_rating_notice_js() {
|
20 |
+
?>
|
21 |
+
<script>
|
22 |
+
jQuery(function( $ ) {
|
23 |
+
|
24 |
+
$( document ).ready(function() {
|
25 |
+
|
26 |
+
let alo = localStorage.getItem( 'bt_bb_alo' );
|
27 |
+
if ( alo ) {
|
28 |
+
try {
|
29 |
+
alo = JSON.parse( alo );
|
30 |
+
} catch ( error ) {
|
31 |
+
console.error( error );
|
32 |
+
alo = {};
|
33 |
+
}
|
34 |
+
} else {
|
35 |
+
alo = {};
|
36 |
+
}
|
37 |
+
|
38 |
+
if ( ( alo.copy !== undefined && alo.copy > 9 ) && ( alo.paste !== undefined && alo.paste > 9 ) && ( alo.clone !== undefined && alo.clone > 4 ) && ( alo.add_horizontal !== undefined && alo.add_horizontal > 4 ) && ( alo.add !== undefined && alo.add > 4 ) && ( alo.edit !== undefined && alo.edit > 4 ) && ( alo.add_root !== undefined && alo.add_root > 4 ) && ( alo.delete !== undefined && alo.delete > 4 ) && ( alo.move_down !== undefined && alo.move_down > 4 ) ) {
|
39 |
+
$.ajax( ajaxurl, {
|
40 |
+
type: 'POST',
|
41 |
+
data: {
|
42 |
+
action: 'bt_bb_rating_notice_enable'
|
43 |
+
}
|
44 |
+
});
|
45 |
+
}
|
46 |
+
|
47 |
+
$( document ).on( 'click', '.bt_bb_rating_notice .notice-dismiss', function() {
|
48 |
+
$.ajax( ajaxurl, {
|
49 |
+
type: 'POST',
|
50 |
+
data: {
|
51 |
+
action: 'bt_bb_dismissed_rating_notice_handler'
|
52 |
+
}
|
53 |
+
});
|
54 |
+
});
|
55 |
+
|
56 |
+
});
|
57 |
+
|
58 |
+
});
|
59 |
+
</script>
|
60 |
+
<?php
|
61 |
+
}
|
62 |
+
|
63 |
+
add_action( 'wp_ajax_bt_bb_dismissed_rating_notice_handler', 'bt_bb_ajax_rating_notice_handler' );
|
64 |
+
function bt_bb_ajax_rating_notice_handler() {
|
65 |
+
global $current_user;
|
66 |
+
$user_id = $current_user->ID;
|
67 |
+
add_user_meta( $user_id, 'bt_bb_rating_notice_ignore', 'true', true );
|
68 |
+
}
|
69 |
+
|
70 |
+
add_action( 'wp_ajax_bt_bb_rating_notice_enable', 'bt_bb_ajax_rating_notice_enable' );
|
71 |
+
function bt_bb_ajax_rating_notice_enable() {
|
72 |
+
global $current_user;
|
73 |
+
$user_id = $current_user->ID;
|
74 |
+
add_user_meta( $user_id, 'bt_bb_rating_notice_enable', 'true', true );
|
75 |
+
}
|
76 |
+
|
admin-notice.php
ADDED
@@ -0,0 +1,41 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
//add_action( 'admin_notices', 'bt_bb_plugin_notice' );
|
4 |
+
function bt_bb_plugin_notice() {
|
5 |
+
|
6 |
+
global $current_user;
|
7 |
+
|
8 |
+
$user_id = $current_user->ID;
|
9 |
+
|
10 |
+
if ( ! get_user_meta( $user_id, 'bt_bb_plugin_notice_ignore' ) ) {
|
11 |
+
|
12 |
+
echo '<div class="notice notice-warning is-dismissible bt_bb_plugin_notice"><p>'. esc_html__( 'Because of deprecation of Instagram API, BB Instagram widget requires Instagram username instead of access token since Bold Builder version 2.5.0.', 'bold-builder' ) . '<br><br>'. esc_html__( 'If you are using BB Instagram widget, please insert Instagram username in appropriate widget input field.', 'bold-builder' ) .'</p></div>';
|
13 |
+
|
14 |
+
}
|
15 |
+
|
16 |
+
}
|
17 |
+
|
18 |
+
add_action( 'admin_footer', 'bt_bb_plugin_notice_js' );
|
19 |
+
function bt_bb_plugin_notice_js() {
|
20 |
+
?>
|
21 |
+
<script>
|
22 |
+
jQuery(function( $ ) {
|
23 |
+
$( document ).on( 'click', '.bt_bb_plugin_notice .notice-dismiss', function() {
|
24 |
+
$.ajax( ajaxurl, {
|
25 |
+
type: 'POST',
|
26 |
+
data: {
|
27 |
+
action: 'bt_bb_dismissed_notice_handler'
|
28 |
+
}
|
29 |
+
});
|
30 |
+
});
|
31 |
+
});
|
32 |
+
</script>
|
33 |
+
<?php
|
34 |
+
}
|
35 |
+
|
36 |
+
add_action( 'wp_ajax_bt_bb_dismissed_notice_handler', 'bt_bb_ajax_notice_handler' );
|
37 |
+
function bt_bb_ajax_notice_handler() {
|
38 |
+
global $current_user;
|
39 |
+
$user_id = $current_user->ID;
|
40 |
+
add_user_meta( $user_id, 'bt_bb_plugin_notice_ignore', 'true', true );
|
41 |
+
}
|
autosize.min.js
ADDED
@@ -0,0 +1,6 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*!
|
2 |
+
Autosize 3.0.4
|
3 |
+
license: MIT
|
4 |
+
http://www.jacklmoore.com/autosize
|
5 |
+
*/
|
6 |
+
!function(e,t){if("function"==typeof define&&define.amd)define(["exports","module"],t);else if("undefined"!=typeof exports&&"undefined"!=typeof module)t(exports,module);else{var o={exports:{}};t(o.exports,o),e.autosize=o.exports}}(this,function(e,t){"use strict";function o(e){function t(){var t=window.getComputedStyle(e,null);"vertical"===t.resize?e.style.resize="none":"both"===t.resize&&(e.style.resize="horizontal"),l="content-box"===t.boxSizing?-(parseFloat(t.paddingTop)+parseFloat(t.paddingBottom)):parseFloat(t.borderTopWidth)+parseFloat(t.borderBottomWidth),n()}function o(t){var o=e.style.width;e.style.width="0px",e.offsetWidth,e.style.width=o,u=t,a&&(e.style.overflowY=t),n()}function n(){var t=e.style.height,n=document.documentElement.scrollTop,i=document.body.scrollTop,r=e.style.height;e.style.height="auto";var d=e.scrollHeight+l;if(0===e.scrollHeight)return void(e.style.height=r);e.style.height=d+"px",document.documentElement.scrollTop=n,document.body.scrollTop=i;var s=window.getComputedStyle(e,null);if(s.height!==e.style.height){if("visible"!==u)return void o("visible")}else if("hidden"!==u)return void o("hidden");if(t!==e.style.height){var a=document.createEvent("Event");a.initEvent("autosize:resized",!0,!1),e.dispatchEvent(a)}}var i=void 0===arguments[1]?{}:arguments[1],r=i.setOverflowX,d=void 0===r?!0:r,s=i.setOverflowY,a=void 0===s?!0:s;if(e&&e.nodeName&&"TEXTAREA"===e.nodeName&&!e.hasAttribute("data-autosize-on")){var l=null,u="hidden",v=function(t){window.removeEventListener("resize",n),e.removeEventListener("input",n),e.removeEventListener("keyup",n),e.removeAttribute("data-autosize-on"),e.removeEventListener("autosize:destroy",v),Object.keys(t).forEach(function(o){e.style[o]=t[o]})}.bind(e,{height:e.style.height,resize:e.style.resize,overflowY:e.style.overflowY,overflowX:e.style.overflowX,wordWrap:e.style.wordWrap});e.addEventListener("autosize:destroy",v),"onpropertychange"in e&&"oninput"in e&&e.addEventListener("keyup",n),window.addEventListener("resize",n),e.addEventListener("input",n),e.addEventListener("autosize:update",n),e.setAttribute("data-autosize-on",!0),a&&(e.style.overflowY="hidden"),d&&(e.style.overflowX="hidden",e.style.wordWrap="break-word"),t()}}function n(e){if(e&&e.nodeName&&"TEXTAREA"===e.nodeName){var t=document.createEvent("Event");t.initEvent("autosize:destroy",!0,!1),e.dispatchEvent(t)}}function i(e){if(e&&e.nodeName&&"TEXTAREA"===e.nodeName){var t=document.createEvent("Event");t.initEvent("autosize:update",!0,!1),e.dispatchEvent(t)}}var r=null;"function"!=typeof window.getComputedStyle?(r=function(e){return e},r.destroy=function(e){return e},r.update=function(e){return e}):(r=function(e,t){return e&&Array.prototype.forEach.call(e.length?e:[e],function(e){return o(e,t)}),e},r.destroy=function(e){return e&&Array.prototype.forEach.call(e.length?e:[e],n),e},r.update=function(e){return e&&Array.prototype.forEach.call(e.length?e:[e],i),e}),t.exports=r});
|
bold-builder.php
ADDED
@@ -0,0 +1,1510 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Plugin Name: Bold Builder
|
5 |
+
* Description: WordPress page builder.
|
6 |
+
* Version: 3.2.5
|
7 |
+
* Author: BoldThemes
|
8 |
+
* Author URI: https://www.bold-themes.com
|
9 |
+
* Text Domain: bold-builder
|
10 |
+
*/
|
11 |
+
|
12 |
+
defined( 'ABSPATH' ) || exit;
|
13 |
+
|
14 |
+
// VERSION --------------------------------------------------------- \\
|
15 |
+
define( 'BT_BB_VERSION', '3.2.5' );
|
16 |
+
// VERSION --------------------------------------------------------- \\
|
17 |
+
|
18 |
+
/**
|
19 |
+
* Enqueue scripts and styles
|
20 |
+
*/
|
21 |
+
|
22 |
+
if ( file_exists( plugin_dir_path( __FILE__ ) . 'css-crush/CssCrush.php' ) && strpos( $_SERVER['SERVER_NAME'], '-dev' ) ) {
|
23 |
+
require_once( 'css-crush/CssCrush.php' );
|
24 |
+
}
|
25 |
+
|
26 |
+
if ( file_exists( get_template_directory() . '/bt_bb_config.php' ) ) {
|
27 |
+
require_once( get_template_directory() . '/bt_bb_config.php' );
|
28 |
+
}
|
29 |
+
|
30 |
+
add_filter( 'the_content', 'bt_bb_parse_content', 20 );
|
31 |
+
function bt_bb_parse_content( $content ) {
|
32 |
+
if ( bt_bb_active_for_post_type_fe() ) {
|
33 |
+
$content = str_ireplace( array( '``', '`{`', '`}`' ), array( '"', '[', ']' ), $content );
|
34 |
+
return '<div class="bt_bb_wrapper">' . $content . '</div>';
|
35 |
+
} else {
|
36 |
+
return $content;
|
37 |
+
}
|
38 |
+
}
|
39 |
+
|
40 |
+
add_filter( 'body_class', 'bt_bb_body_class' );
|
41 |
+
function bt_bb_body_class( $classes ) {
|
42 |
+
return array_merge( $classes, array( 'bt_bb_plugin_active', 'bt_bb_fe_preview_toggle' ) );
|
43 |
+
}
|
44 |
+
|
45 |
+
// WP 5
|
46 |
+
|
47 |
+
function bt_bb_disable_gutenberg( $is_enabled, $post_type ) {
|
48 |
+
$options = get_option( 'bt_bb_settings' );
|
49 |
+
if ( ! $options || ( ! array_key_exists( $post_type, $options ) || ( array_key_exists( $post_type, $options ) && $options[ $post_type ] == '1' ) ) ) {
|
50 |
+
return false;
|
51 |
+
}
|
52 |
+
return $is_enabled;
|
53 |
+
}
|
54 |
+
add_filter( 'use_block_editor_for_post_type', 'bt_bb_disable_gutenberg', 10, 2 );
|
55 |
+
|
56 |
+
function bt_bb_parse_content_admin( $content ) {
|
57 |
+
|
58 |
+
$bt_bb_content = false;
|
59 |
+
if ( strpos( $content, '[bt_bb' ) === 0 || strpos( $content, '[bt_section' ) === 0 ) {
|
60 |
+
$bt_bb_content = true;
|
61 |
+
}
|
62 |
+
if ( ! $bt_bb_content ) {
|
63 |
+
return $content;
|
64 |
+
}
|
65 |
+
|
66 |
+
global $bt_bb_map;
|
67 |
+
|
68 |
+
foreach( BT_BB_Root::$elements as $base => $params ) {
|
69 |
+
$proxy = new BT_BB_FE_Map_Proxy( $base, $params );
|
70 |
+
$proxy->js_map();
|
71 |
+
}
|
72 |
+
|
73 |
+
global $bt_bb_array;
|
74 |
+
$bt_bb_array = array();
|
75 |
+
|
76 |
+
bt_bb_do_shortcode( $content );
|
77 |
+
|
78 |
+
global $bt_bb_fe_array;
|
79 |
+
$bt_bb_fe_array = array();
|
80 |
+
|
81 |
+
global $bt_bb_fe_array_depth;
|
82 |
+
$bt_bb_fe_array_depth = -1;
|
83 |
+
|
84 |
+
bt_bb_fe_do_shortcode( $bt_bb_array );
|
85 |
+
|
86 |
+
$wrap_arr = array();
|
87 |
+
|
88 |
+
$count = 0;
|
89 |
+
|
90 |
+
foreach( $bt_bb_fe_array as $item ) {
|
91 |
+
|
92 |
+
if ( isset( $bt_bb_map[ $item['base'] ] ) && isset( $bt_bb_map[ $item['base'] ]['root'] ) && $bt_bb_map[ $item['base'] ]['root'] === true && $item['depth'] == 0 ) {
|
93 |
+
$count++;
|
94 |
+
$fe_wrap_open = '<div class="bt_bb_fe_wrap"><span class="bt_bb_fe_count" title="' . esc_html__( 'Edit', 'bold-builder' ) . '"><span class="bt_bb_fe_count_inner" data-edit_url="' . get_edit_post_link( get_the_ID(), '' ) . '">' . $count . '</span></span>';
|
95 |
+
$fe_wrap_close = '</div>';
|
96 |
+
} else {
|
97 |
+
$fe_wrap_open = '';
|
98 |
+
$fe_wrap_close = '';
|
99 |
+
}
|
100 |
+
|
101 |
+
$depth = $item['depth'];
|
102 |
+
|
103 |
+
if ( isset( $wrap_arr[ 'd' . ( $depth + 1 ) ] ) ) {
|
104 |
+
if ( isset( $wrap_arr[ 'd' . $depth ] ) ) {
|
105 |
+
$wrap_arr[ 'd' . $depth ] = $wrap_arr[ 'd' . $depth ] . $fe_wrap_open . $item['sc'] . $wrap_arr[ 'd' . ( $depth + 1 ) ] . $item['sc_close'] . $fe_wrap_close;
|
106 |
+
} else {
|
107 |
+
$wrap_arr[ 'd' . $depth ] = $fe_wrap_open . $item['sc'] . $wrap_arr[ 'd' . ( $depth + 1 ) ] . $item['sc_close'] . $fe_wrap_close;
|
108 |
+
}
|
109 |
+
unset( $wrap_arr[ 'd' . ( $depth + 1 ) ] );
|
110 |
+
} else {
|
111 |
+
if ( isset( $wrap_arr[ 'd' . $depth ] ) ) {
|
112 |
+
$wrap_arr[ 'd' . $depth ] = $wrap_arr[ 'd' . $depth ] . $fe_wrap_open . $item['sc'] . $item['sc_close'] . $fe_wrap_close;
|
113 |
+
} else {
|
114 |
+
$wrap_arr[ 'd' . $depth ] = $fe_wrap_open . $item['sc'] . $item['sc_close'] . $fe_wrap_close;
|
115 |
+
}
|
116 |
+
}
|
117 |
+
|
118 |
+
}
|
119 |
+
|
120 |
+
if ( isset( $wrap_arr['d0'] ) && $wrap_arr['d0'] != "" ) {
|
121 |
+
if ( current_user_can( 'edit_pages' ) ) {
|
122 |
+
$wrap_arr['d0'] .= '<span id="bt_bb_fe_preview_toggler" class="bt_bb_fe_preview_toggler">'. esc_html__( 'Show/hide edit mode UI', 'bold-builder' ) .'</span>';
|
123 |
+
}
|
124 |
+
return $wrap_arr['d0'];
|
125 |
+
} else {
|
126 |
+
return $content;
|
127 |
+
}
|
128 |
+
|
129 |
+
}
|
130 |
+
|
131 |
+
function bt_bb_fe_do_shortcode( $bt_bb_array ) {
|
132 |
+
|
133 |
+
global $bt_bb_fe_array;
|
134 |
+
global $bt_bb_fe_array_depth;
|
135 |
+
|
136 |
+
$bt_bb_fe_array_depth++;
|
137 |
+
|
138 |
+
foreach( $bt_bb_array as $item ) {
|
139 |
+
|
140 |
+
$sc = '';
|
141 |
+
|
142 |
+
if ( $item['base'] == '_content' ) {
|
143 |
+
|
144 |
+
$sc = $item['content'];
|
145 |
+
|
146 |
+
$sc_close = '';
|
147 |
+
|
148 |
+
} else {
|
149 |
+
|
150 |
+
$sc = '[';
|
151 |
+
|
152 |
+
$sc .= $item['base'];
|
153 |
+
|
154 |
+
if ( isset( $item['attr'] ) ) {
|
155 |
+
$attr_obj = bt_bb_json_decode( $item['attr'] );
|
156 |
+
foreach( $attr_obj as $key => $value ) {
|
157 |
+
$sc .= ' ' . $key . '="' . $value . '"';
|
158 |
+
}
|
159 |
+
}
|
160 |
+
|
161 |
+
$sc .= ']';
|
162 |
+
|
163 |
+
if ( isset( $item['children'] ) ) {
|
164 |
+
bt_bb_fe_do_shortcode( $item['children'] );
|
165 |
+
$bt_bb_fe_array_depth--;
|
166 |
+
}
|
167 |
+
|
168 |
+
$sc_close = '[/' . $item['base'] . ']';
|
169 |
+
|
170 |
+
}
|
171 |
+
|
172 |
+
$bt_bb_fe_array[] = array(
|
173 |
+
'base' => $item['base'],
|
174 |
+
'sc' => $sc,
|
175 |
+
'sc_close' => $sc_close,
|
176 |
+
'container' => count( $item['children'] ) > 0 ? 'yes' : 'no',
|
177 |
+
'depth' => $bt_bb_fe_array_depth
|
178 |
+
);
|
179 |
+
|
180 |
+
}
|
181 |
+
}
|
182 |
+
|
183 |
+
class BT_BB_Root {
|
184 |
+
public static $elements = array();
|
185 |
+
public static $path;
|
186 |
+
public static $init_wpautop;
|
187 |
+
public static $font_arr = array();
|
188 |
+
}
|
189 |
+
|
190 |
+
BT_BB_Root::$path = plugin_dir_url( __FILE__ );
|
191 |
+
BT_BB_Root::$init_wpautop = null;
|
192 |
+
|
193 |
+
function bt_bb_enqueue() {
|
194 |
+
|
195 |
+
$screen = get_current_screen();
|
196 |
+
if ( $screen->base != 'post' && $screen->base != 'widgets' && $screen->base != 'nav-menus' && $screen->base != 'customize' ) {
|
197 |
+
return;
|
198 |
+
}
|
199 |
+
|
200 |
+
$options = get_option( 'bt_bb_settings' );
|
201 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
202 |
+
$active_pt = array();
|
203 |
+
foreach( $post_types as $pt ) {
|
204 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
205 |
+
$active_pt[] = $pt;
|
206 |
+
}
|
207 |
+
}
|
208 |
+
$screens = $active_pt;
|
209 |
+
if ( ! in_array( $screen->post_type, $screens ) && $screen->base == 'post' ) {
|
210 |
+
return;
|
211 |
+
}
|
212 |
+
|
213 |
+
if ( function_exists( 'csscrush_file' ) && strpos( $_SERVER['SERVER_NAME'], '-dev' ) ) {
|
214 |
+
csscrush_file( plugin_dir_path( __FILE__ ) . 'css/style.css', array( 'source_map' => true, 'minify' => false, 'output_file' => 'style.crush', 'formatter' => 'block', 'boilerplate' => false, 'plugins' => array( 'loop', 'ease' ) ) );
|
215 |
+
}
|
216 |
+
|
217 |
+
wp_enqueue_style( 'bt_bb_font-awesome.min', plugins_url( 'css/font-awesome.min.css', __FILE__ ), array(), BT_BB_VERSION );
|
218 |
+
wp_enqueue_style( 'bt_bb', plugins_url( 'css/style.crush.css', __FILE__ ), array(), BT_BB_VERSION );
|
219 |
+
|
220 |
+
wp_enqueue_script( 'bt_bb_react', plugins_url( 'react.min.js', __FILE__ ), array(), BT_BB_VERSION );
|
221 |
+
wp_enqueue_script( 'bt_bb', plugins_url( 'script.min.js', __FILE__ ), array( 'jquery' ), BT_BB_VERSION );
|
222 |
+
wp_enqueue_script( 'bt_bb_jsx', plugins_url( 'build/bundle.js', __FILE__ ), array( 'jquery' ), BT_BB_VERSION );
|
223 |
+
wp_enqueue_script( 'bt_bb_autosize', plugins_url( 'autosize.min.js', __FILE__ ), array(), BT_BB_VERSION );
|
224 |
+
wp_enqueue_script( 'bt_bb_imagesloaded', plugins_url( 'imagesloaded.pkgd.min.js', __FILE__ ), array( 'jquery' ), BT_BB_VERSION );
|
225 |
+
wp_enqueue_script( 'wp-color-picker' );
|
226 |
+
wp_enqueue_style( 'wp-color-picker' );
|
227 |
+
wp_enqueue_script( 'wp-color-picker-alpha', plugins_url( 'wp-color-picker-alpha.min.js', __FILE__ ), array( 'wp-color-picker' ), BT_BB_VERSION );
|
228 |
+
|
229 |
+
}
|
230 |
+
add_action( 'admin_enqueue_scripts', 'bt_bb_enqueue' );
|
231 |
+
|
232 |
+
function bt_bb_enqueue_fe_always() {
|
233 |
+
if ( current_user_can( 'edit_pages' ) ) {
|
234 |
+
wp_enqueue_script( 'bt_bb_fe', plugins_url( 'script_fe.js', __FILE__ ), array( 'jquery' ), BT_BB_VERSION );
|
235 |
+
}
|
236 |
+
}
|
237 |
+
|
238 |
+
function bt_bb_wp_head() {
|
239 |
+
$post_id = get_the_ID();
|
240 |
+
$opt_arr = get_option( 'bt_bb_custom_css' );
|
241 |
+
if ( isset( $opt_arr[ $post_id ] ) ) {
|
242 |
+
echo '<style>' . stripslashes( wp_strip_all_tags( $opt_arr[ $post_id ] ) ) . '</style>';
|
243 |
+
}
|
244 |
+
if ( function_exists( 'bt_bb_add_color_schemes' ) ) {
|
245 |
+
bt_bb_add_color_schemes();
|
246 |
+
}
|
247 |
+
}
|
248 |
+
add_action( 'wp_head', 'bt_bb_wp_head', 7 );
|
249 |
+
|
250 |
+
function bt_bb_enqueue_fe() {
|
251 |
+
if ( function_exists( 'csscrush_file' ) && strpos( $_SERVER['SERVER_NAME'], '-dev' ) ) {
|
252 |
+
csscrush_file( plugin_dir_path( __FILE__ ) . 'css/front_end/style.css', array( 'source_map' => true, 'minify' => false, 'output_file' => 'style.crush', 'formatter' => 'block', 'boilerplate' => false, 'plugins' => array( 'loop', 'ease' ) ) );
|
253 |
+
}
|
254 |
+
wp_enqueue_style( 'bt_bb', plugins_url( 'css/front_end/style.crush.css', __FILE__ ), array(), BT_BB_VERSION );
|
255 |
+
}
|
256 |
+
|
257 |
+
function bt_bb_enqueue_content_elements() {
|
258 |
+
if ( function_exists( 'csscrush_file' ) && strpos( $_SERVER['SERVER_NAME'], '-dev' ) ) {
|
259 |
+
csscrush_file( plugin_dir_path( __FILE__ ) . 'css/front_end/content_elements.css', array( 'source_map' => true, 'minify' => false, 'output_file' => 'content_elements.crush', 'formatter' => 'block', 'boilerplate' => false, 'plugins' => array( 'loop', 'ease' ) ) );
|
260 |
+
}
|
261 |
+
wp_enqueue_style( 'bt_bb_content_elements', plugins_url( 'css/front_end/content_elements.crush.css', __FILE__ ), array(), BT_BB_VERSION );
|
262 |
+
|
263 |
+
wp_enqueue_script(
|
264 |
+
'bt_bb_slick',
|
265 |
+
plugins_url( 'slick/slick.min.js', __FILE__ ),
|
266 |
+
array( 'jquery' ),
|
267 |
+
BT_BB_VERSION
|
268 |
+
);
|
269 |
+
wp_enqueue_style( 'bt_bb_slick', plugins_url( 'slick/slick.css', __FILE__ ), array(), BT_BB_VERSION );
|
270 |
+
|
271 |
+
wp_enqueue_script(
|
272 |
+
'bt_bb_magnific',
|
273 |
+
plugins_url( 'content_elements_misc/js/jquery.magnific-popup.min.js', __FILE__ ),
|
274 |
+
array( 'jquery' ),
|
275 |
+
BT_BB_VERSION
|
276 |
+
);
|
277 |
+
|
278 |
+
wp_enqueue_script( 'bt_bb', plugins_url( 'content_elements_misc/js/content_elements.js', __FILE__ ), array( 'jquery' ), BT_BB_VERSION );
|
279 |
+
|
280 |
+
$post_id = get_the_ID();
|
281 |
+
|
282 |
+
}
|
283 |
+
|
284 |
+
function bt_bb_activate() {
|
285 |
+
$options = get_option( 'bt_bb_settings' );
|
286 |
+
if ( ! $options ) {
|
287 |
+
update_option( 'bt_bb_settings', array( 'tag_as_name' => '0', 'color_schemes' => "Black/White;#000;#fff\r\nWhite/Black;#fff;#000" ) );
|
288 |
+
}
|
289 |
+
}
|
290 |
+
register_activation_hook( __FILE__, 'bt_bb_activate' );
|
291 |
+
|
292 |
+
function bt_bb_deactivate() {
|
293 |
+
//delete_option( 'bt_bb_settings' );
|
294 |
+
}
|
295 |
+
register_deactivation_hook( __FILE__, 'bt_bb_deactivate' );
|
296 |
+
|
297 |
+
function bt_bb_admin_init() {
|
298 |
+
register_setting( 'bt_bb_settings', 'bt_bb_settings' );
|
299 |
+
}
|
300 |
+
add_action( 'admin_init', 'bt_bb_admin_init' );
|
301 |
+
|
302 |
+
function bt_bb_load_plugin_textdomain() {
|
303 |
+
|
304 |
+
$domain = 'bold-builder';
|
305 |
+
$locale = apply_filters( 'plugin_locale', get_locale(), $domain );
|
306 |
+
|
307 |
+
load_plugin_textdomain( $domain, false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );
|
308 |
+
|
309 |
+
}
|
310 |
+
add_action( 'init', 'bt_bb_load_plugin_textdomain' );
|
311 |
+
|
312 |
+
/**
|
313 |
+
* Save custom css
|
314 |
+
*/
|
315 |
+
|
316 |
+
function bt_bb_save_custom_css() {
|
317 |
+
check_ajax_referer( 'bt-bb-custom-css-nonce', 'bt-bb-custom-css-nonce' );
|
318 |
+
$post_id = intval( $_POST['post_id'] );
|
319 |
+
if ( current_user_can( 'edit_posts', $post_id ) ) {
|
320 |
+
$css = wp_strip_all_tags( $_POST['css'] );
|
321 |
+
$opt_arr = get_option( 'bt_bb_custom_css' );
|
322 |
+
if ( ! is_array( $opt_arr ) ) {
|
323 |
+
$opt_arr = array();
|
324 |
+
}
|
325 |
+
if ( $css != '' ) {
|
326 |
+
$opt_arr[ $post_id ] = $css;
|
327 |
+
} else {
|
328 |
+
unset( $opt_arr[ $post_id ] );
|
329 |
+
}
|
330 |
+
update_option( 'bt_bb_custom_css', $opt_arr );
|
331 |
+
echo 'ok';
|
332 |
+
}
|
333 |
+
wp_die();
|
334 |
+
}
|
335 |
+
add_action( 'wp_ajax_bt_bb_save_custom_css', 'bt_bb_save_custom_css' );
|
336 |
+
|
337 |
+
/**
|
338 |
+
* Get custom css
|
339 |
+
*/
|
340 |
+
|
341 |
+
function bt_bb_get_custom_css() {
|
342 |
+
$post_id = intval( $_POST['post_id'] );
|
343 |
+
$opt_arr = get_option( 'bt_bb_custom_css' );
|
344 |
+
if ( isset( $opt_arr[ $post_id ] ) ) {
|
345 |
+
echo stripslashes( wp_strip_all_tags( $opt_arr[ $post_id ] ) );
|
346 |
+
}
|
347 |
+
die();
|
348 |
+
}
|
349 |
+
add_action( 'wp_ajax_bt_bb_get_custom_css', 'bt_bb_get_custom_css' );
|
350 |
+
|
351 |
+
/**
|
352 |
+
* Get links
|
353 |
+
*/
|
354 |
+
|
355 |
+
function bt_bb_search_links() {
|
356 |
+
$search = sanitize_text_field( $_POST['search'] );
|
357 |
+
$page = intval( $_POST['page'] );
|
358 |
+
|
359 |
+
$pts = get_post_types( array( 'public' => true ), 'objects' );
|
360 |
+
$pt_names = array_keys( $pts );
|
361 |
+
|
362 |
+
$query = array(
|
363 |
+
'post_type' => $pt_names,
|
364 |
+
'suppress_filters' => true,
|
365 |
+
'update_post_term_cache' => false,
|
366 |
+
'update_post_meta_cache' => false,
|
367 |
+
'post_status' => 'publish',
|
368 |
+
'posts_per_page' => 20,
|
369 |
+
);
|
370 |
+
|
371 |
+
if ( $search != '' ) {
|
372 |
+
$query['s'] = $search;
|
373 |
+
}
|
374 |
+
|
375 |
+
$query['offset'] = $page > 1 ? $query['posts_per_page'] * ( $page - 1 ) : 0;
|
376 |
+
|
377 |
+
// Do main query.
|
378 |
+
$get_posts = new WP_Query;
|
379 |
+
$posts = $get_posts->query( $query );
|
380 |
+
|
381 |
+
// Build results.
|
382 |
+
$results = array();
|
383 |
+
foreach ( $posts as $post ) {
|
384 |
+
if ( 'post' === $post->post_type ) {
|
385 |
+
$info = mysql2date( __( 'Y/m/d' ), $post->post_date );
|
386 |
+
} else {
|
387 |
+
$info = $pts[ $post->post_type ]->labels->singular_name;
|
388 |
+
}
|
389 |
+
|
390 |
+
$results[] = array(
|
391 |
+
'ID' => $post->ID,
|
392 |
+
'title' => trim( esc_html( strip_tags( get_the_title( $post ) ) ) ),
|
393 |
+
'permalink' => get_permalink( $post->ID ),
|
394 |
+
'slug' => $post->post_name,
|
395 |
+
'info' => $info,
|
396 |
+
);
|
397 |
+
}
|
398 |
+
|
399 |
+
if ( ! isset( $results ) ) {
|
400 |
+
wp_die( 0 );
|
401 |
+
}
|
402 |
+
|
403 |
+
echo wp_json_encode( $results );
|
404 |
+
echo "\n";
|
405 |
+
|
406 |
+
die();
|
407 |
+
}
|
408 |
+
add_action( 'wp_ajax_bt_bb_search_links', 'bt_bb_search_links' );
|
409 |
+
|
410 |
+
/**
|
411 |
+
* Settings menu
|
412 |
+
*/
|
413 |
+
|
414 |
+
function bt_bb_menu() {
|
415 |
+
add_options_page( esc_html__( 'Bold Builder Settings', 'bold-builder' ), esc_html__( 'Bold Builder', 'bold-builder' ), 'manage_options', 'bt_bb_settings', 'bt_bb_settings' );
|
416 |
+
}
|
417 |
+
add_action( 'admin_menu', 'bt_bb_menu' );
|
418 |
+
|
419 |
+
/**
|
420 |
+
* Settings page
|
421 |
+
*/
|
422 |
+
function bt_bb_settings() {
|
423 |
+
|
424 |
+
$options = get_option( 'bt_bb_settings' );
|
425 |
+
$tag_as_name = $options['tag_as_name'];
|
426 |
+
|
427 |
+
$color_schemes = $options['color_schemes'];
|
428 |
+
|
429 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
430 |
+
|
431 |
+
?>
|
432 |
+
<div class="wrap">
|
433 |
+
<h2><?php _e( 'Bold Builder Settings', 'bold-builder' ); ?></h2>
|
434 |
+
<form method="post" action="options.php">
|
435 |
+
<?php settings_fields( 'bt_bb_settings' ); ?>
|
436 |
+
<table class="form-table">
|
437 |
+
<tbody>
|
438 |
+
<tr>
|
439 |
+
<th scope="row"><?php _e( 'Show shortcode tag instead of mapped name', 'bold-builder' ); ?></th>
|
440 |
+
<td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Show shortcode tags instead of mapped names', 'bold-builder' ); ?></span></legend>
|
441 |
+
<p><label><input name="bt_bb_settings[tag_as_name]" type="radio" value="0" <?php echo $tag_as_name != '1' ? 'checked="checked"' : ''; ?>> <?php _e( 'No', 'bold-builder' ); ?></label><br>
|
442 |
+
<label><input name="bt_bb_settings[tag_as_name]" type="radio" value="1" <?php echo $tag_as_name == '1' ? 'checked="checked"' : ''; ?>> <?php _e( 'Yes', 'bold-builder' ); ?></label></p>
|
443 |
+
</fieldset></td>
|
444 |
+
</tr>
|
445 |
+
<tr>
|
446 |
+
<th scope="row"><?php _e( 'Post Types', 'bold-builder' ); ?></th>
|
447 |
+
<td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Post Types', 'bold-builder' ); ?></span></legend>
|
448 |
+
<p>
|
449 |
+
<?php
|
450 |
+
$n = 0;
|
451 |
+
foreach( $post_types as $pt ) {
|
452 |
+
$n++;
|
453 |
+
$checked = '';
|
454 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
455 |
+
$checked = ' ' . 'checked="checked"';
|
456 |
+
}
|
457 |
+
echo '<input type="hidden" name="bt_bb_settings[' . $pt . ']" value="0">';
|
458 |
+
echo '<label><input name="bt_bb_settings[' . $pt . ']" type="checkbox" value="1"' . $checked . '> ' . $pt . '</label>';
|
459 |
+
if ( $n < count( $post_types ) ) echo '<br>';
|
460 |
+
} ?>
|
461 |
+
</p>
|
462 |
+
</fieldset></td>
|
463 |
+
</tr>
|
464 |
+
<tr>
|
465 |
+
<th scope="row"><?php _e( 'Color Schemes', 'bold-builder' ); ?></th>
|
466 |
+
<td><fieldset><legend class="screen-reader-text"><span><?php _e( 'Color Schemes', 'bold-builder' ); ?></span></legend>
|
467 |
+
<p>
|
468 |
+
<textarea name="bt_bb_settings[color_schemes]" rows="10" cols="50"><?php echo $color_schemes; ?></textarea>
|
469 |
+
</p>
|
470 |
+
</fieldset></td>
|
471 |
+
</tr>
|
472 |
+
<tr>
|
473 |
+
<th scope="row"><?php _e( 'Tips', 'bold-builder' ); ?></th>
|
474 |
+
<td>
|
475 |
+
<p><?php
|
476 |
+
$checked = '';
|
477 |
+
if ( ! $options || ( ! array_key_exists( 'tips', $options ) || ( array_key_exists( 'tips', $options ) && $options['tips'] == '1' ) ) ) {
|
478 |
+
$checked = ' ' . 'checked="checked"';
|
479 |
+
}
|
480 |
+
echo '<input type="hidden" name="bt_bb_settings[tips]" value="0">';
|
481 |
+
echo '<label><input name="bt_bb_settings[tips]" type="checkbox" value="1"' . $checked . '> ' . esc_html__( 'Show Tips', 'bold-builder' ) . '</label>';
|
482 |
+
?></p>
|
483 |
+
</td>
|
484 |
+
</tr>
|
485 |
+
<tr>
|
486 |
+
<th scope="row"><?php _e( 'Slug in URL', 'bold-builder' ); ?></th>
|
487 |
+
<td>
|
488 |
+
<p><?php
|
489 |
+
$checked = '';
|
490 |
+
if ( $options && array_key_exists( 'slug_url', $options ) && $options['slug_url'] == '1' ) {
|
491 |
+
$checked = ' ' . 'checked="checked"';
|
492 |
+
}
|
493 |
+
echo '<input type="hidden" name="bt_bb_settings[slug_url]" value="0">';
|
494 |
+
echo '<label><input name="bt_bb_settings[slug_url]" type="checkbox" value="1"' . $checked . '> ' . esc_html__( 'Use post slug in URL input (when selecting existing content search result)', 'bold-builder' ) . '</label>';
|
495 |
+
?></p>
|
496 |
+
</td>
|
497 |
+
</tr>
|
498 |
+
</tbody>
|
499 |
+
</table>
|
500 |
+
|
501 |
+
<p class="submit"><input type="submit" name="submit" id="submit" class="button button-primary" value="<?php _e( 'Save', 'bold-builder' ); ?>"></p>
|
502 |
+
</form>
|
503 |
+
</div>
|
504 |
+
<?php
|
505 |
+
|
506 |
+
}
|
507 |
+
|
508 |
+
/**
|
509 |
+
* Settings
|
510 |
+
*/
|
511 |
+
|
512 |
+
function bt_bb_js_settings() {
|
513 |
+
$screen = get_current_screen();
|
514 |
+
if ( $screen->base != 'post' ) {
|
515 |
+
return;
|
516 |
+
}
|
517 |
+
|
518 |
+
$options = get_option( 'bt_bb_settings' );
|
519 |
+
|
520 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
521 |
+
$active_pt = array();
|
522 |
+
foreach( $post_types as $pt ) {
|
523 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
524 |
+
$active_pt[] = $pt;
|
525 |
+
}
|
526 |
+
}
|
527 |
+
$screens = $active_pt;
|
528 |
+
if ( ! in_array( $screen->post_type, $screens ) && $screen->base == 'post' ) {
|
529 |
+
return;
|
530 |
+
}
|
531 |
+
|
532 |
+
$tag_as_name = $options['tag_as_name'];
|
533 |
+
$slug_url = array_key_exists( 'slug_url', $options ) ? $options['slug_url'] : '';
|
534 |
+
|
535 |
+
echo '<script>';
|
536 |
+
echo 'window.bt_bb_plugins_url = "' . plugins_url() . '";';
|
537 |
+
echo 'window.bt_bb_loading_gif_url = "' . plugins_url( 'img/ajax-loader.gif', __FILE__ ) . '";';
|
538 |
+
echo 'window.bt_bb_settings = [];';
|
539 |
+
echo 'window.bt_bb_settings.tag_as_name = "' . esc_js( $tag_as_name ) . '";';
|
540 |
+
echo 'window.bt_bb_settings.slug_url = "' . esc_js( $slug_url ) . '";';
|
541 |
+
|
542 |
+
echo 'window.BTAJAXURL = "' . esc_js( admin_url( 'admin-ajax.php' ) ) . '";';
|
543 |
+
|
544 |
+
global $shortcode_tags;
|
545 |
+
$all_sc = $shortcode_tags;
|
546 |
+
ksort( $all_sc );
|
547 |
+
|
548 |
+
echo 'window.bt_bb.all_sc = ' . bt_bb_json_encode( array_keys( $all_sc ) ) . ';';
|
549 |
+
|
550 |
+
global $bt_bb_is_bb_content;
|
551 |
+
if ( $bt_bb_is_bb_content === 'true' || $bt_bb_is_bb_content === 'false' ) {
|
552 |
+
echo 'window.bt_bb.is_bb_content = ' . $bt_bb_is_bb_content . ';';
|
553 |
+
}
|
554 |
+
$ajax_nonce = wp_create_nonce( 'bt-bb-custom-css-nonce' );
|
555 |
+
?>
|
556 |
+
jQuery( '#bt_bb_dialog' ).on( 'click', '.bt_bb_button_save_custom_css', function( e ) {
|
557 |
+
|
558 |
+
if ( wp.codeEditor !== undefined ) {
|
559 |
+
window.bt_bb_ce.codemirror.save();
|
560 |
+
}
|
561 |
+
|
562 |
+
var css = jQuery( '.bt_bb_custom_css_content' ).val();
|
563 |
+
|
564 |
+
window.bt_bb_custom_css = window.bt_bb_b64EncodeUnicode( css );
|
565 |
+
|
566 |
+
window.bt_bb_dialog.hide();
|
567 |
+
|
568 |
+
if ( css != '' ) {
|
569 |
+
jQuery( '.bt_bb_custom_css' ).addClass( 'button-primary' );
|
570 |
+
} else {
|
571 |
+
jQuery( '.bt_bb_custom_css' ).removeClass( 'button-primary' );
|
572 |
+
}
|
573 |
+
|
574 |
+
var data = {
|
575 |
+
'action': 'bt_bb_save_custom_css',
|
576 |
+
'post_id': jQuery( '#post_ID' ).val(),
|
577 |
+
'css': css,
|
578 |
+
'bt-bb-custom-css-nonce': '<?php echo $ajax_nonce; ?>'
|
579 |
+
};
|
580 |
+
|
581 |
+
jQuery.ajax({
|
582 |
+
type: 'POST',
|
583 |
+
url: window.BTAJAXURL,
|
584 |
+
data: data,
|
585 |
+
async: true,
|
586 |
+
success: function( response ) {
|
587 |
+
|
588 |
+
}
|
589 |
+
});
|
590 |
+
});
|
591 |
+
<?php
|
592 |
+
echo '</script>';
|
593 |
+
}
|
594 |
+
add_action( 'admin_footer', 'bt_bb_js_settings' );
|
595 |
+
|
596 |
+
/**
|
597 |
+
* Translate
|
598 |
+
*/
|
599 |
+
|
600 |
+
function bt_bb_translate() {
|
601 |
+
echo '<script>';
|
602 |
+
echo 'window.bt_bb_text = [];';
|
603 |
+
echo 'window.bt_bb_text.toggle = "' . esc_html__( 'Toggle', 'bold-builder' ) . '";';
|
604 |
+
echo 'window.bt_bb_text.add = "' . esc_html__( 'Add', 'bold-builder' ) . '";';
|
605 |
+
echo 'window.bt_bb_text.edit = "' . esc_html__( 'Edit', 'bold-builder' ) . '";';
|
606 |
+
echo 'window.bt_bb_text.edit_content = "' . esc_html__( 'Edit Content', 'bold-builder' ) . '";';
|
607 |
+
echo 'window.bt_bb_text.clone = "' . esc_html__( 'Clone', 'bold-builder' ) . '";';
|
608 |
+
echo 'window.bt_bb_text.delete = "' . esc_html__( 'Delete', 'bold-builder' ) . '";';
|
609 |
+
echo 'window.bt_bb_text.layout_error = "' . esc_html__( 'Layout error!', 'bold-builder' ) . '";';
|
610 |
+
echo 'window.bt_bb_text.number_columns = "' . esc_html__( 'Number of columns not equal for all breakpoints!', 'bold-builder' ) . '";';
|
611 |
+
echo 'window.bt_bb_text.add_element = "' . esc_html__( 'Add Element', 'bold-builder' ) . '";';
|
612 |
+
echo 'window.bt_bb_text.select_layout = "' . esc_html__( 'Select Layout', 'bold-builder' ) . '";';
|
613 |
+
echo 'window.bt_bb_text.edit_layout = "' . esc_html__( 'Edit Layout', 'bold-builder' ) . '";';
|
614 |
+
echo 'window.bt_bb_text.select = "' . esc_html__( 'Select', 'bold-builder' ) . '";';
|
615 |
+
echo 'window.bt_bb_text.select_images = "' . esc_html__( 'Select Images', 'bold-builder' ) . '";';
|
616 |
+
echo 'window.bt_bb_text.submit = "' . esc_html__( 'Submit', 'bold-builder' ) . '";';
|
617 |
+
echo 'window.bt_bb_text.search = "' . esc_html__( 'Search', 'bold-builder' ) . '";';
|
618 |
+
echo 'window.bt_bb_text.search_content = "' . esc_html__( 'Search for existing content', 'bold-builder' ) . '";';
|
619 |
+
echo 'window.bt_bb_text.copy = "' . esc_html__( 'Copy', 'bold-builder' ) . '";';
|
620 |
+
echo 'window.bt_bb_text.copy_plus = "' . esc_html__( 'Copy+', 'bold-builder' ) . '";';
|
621 |
+
echo 'window.bt_bb_text.paste = "' . esc_html__( 'Paste', 'bold-builder' ) . '";';
|
622 |
+
echo 'window.bt_bb_text.export = "' . esc_html__( 'Export', 'bold-builder' ) . '";';
|
623 |
+
echo 'window.bt_bb_text.import = "' . esc_html__( 'Import', 'bold-builder' ) . '";';
|
624 |
+
echo 'window.bt_bb_text.not_allowed = "' . esc_html__( 'Not allowed!', 'bold-builder' ) . '";';
|
625 |
+
echo 'window.bt_bb_text.manage_cb = "' . esc_html__( 'Manage Clipboard', 'bold-builder' ) . '";';
|
626 |
+
echo 'window.bt_bb_text.filter = "' . esc_html__( 'Filter...', 'bold-builder' ) . '";';
|
627 |
+
echo 'window.bt_bb_text.sc_mapper = "' . esc_html__( 'Shortcode Mapper', 'bold-builder' ) . '";';
|
628 |
+
echo 'window.bt_bb_text.insert_mapping = "' . esc_html__( 'Insert Mapping', 'bold-builder' ) . '";';
|
629 |
+
echo 'window.bt_bb_text.save = "' . esc_html__( 'Save', 'bold-builder' ) . '";';
|
630 |
+
echo 'window.bt_bb_text.switch_editor = "' . esc_html__( 'Switch Editor', 'bold-builder' ) . '";';
|
631 |
+
echo 'window.bt_bb_text.custom_css = "' . esc_html__( 'Custom CSS', 'bold-builder' ) . '";';
|
632 |
+
echo 'window.bt_bb_text.switch_editor_confirm = "' . esc_html__( 'Are you sure you want to switch editor?', 'bold-builder' ) . '";';
|
633 |
+
echo 'window.bt_bb_text.general = "' . esc_html__( 'General', 'bold-builder' ) . '";';
|
634 |
+
echo 'window.bt_bb_text.preview = "' . esc_html__( 'Preview', 'bold-builder' ) . '";';
|
635 |
+
echo 'window.bt_bb_text.no_results = "' . esc_html__( 'No results found.', 'bold-builder' ) . '";';
|
636 |
+
|
637 |
+
echo 'window.bt_bb_text.prev_tip = "' . esc_html__( 'Previous Tip', 'bold-builder' ) . '";';
|
638 |
+
echo 'window.bt_bb_text.next_tip = "' . esc_html__( 'Next Tip', 'bold-builder' ) . '";';
|
639 |
+
|
640 |
+
echo 'window.bt_bb_text._tips = [];';
|
641 |
+
|
642 |
+
//if ( ! class_exists( 'BoldThemes_BB_Settings' ) || ! BoldThemes_BB_Settings::$custom_content_elements ) { // only with native BB elements
|
643 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: Hold CTRL key while moving (dragging) element to quickly clone it to another location.', 'bold-builder' ) . '" );';
|
644 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: You can edit Bold Builder settings in Settings > Bold Builder.', 'bold-builder' ) . '" );';
|
645 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: Did you know that you can move columns between rows?', 'bold-builder' ) . '" );';
|
646 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: You can use CTRL key with Copy/Copy+ to cut the element.', 'bold-builder' ) . '" );';
|
647 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: Use Copy+ to copy multiple elements to clipboard.', 'bold-builder' ) . '" );';
|
648 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: Hold CTRL key and click Edit icon on front end to open back end editor in new tab.', 'bold-builder' ) . '" );';
|
649 |
+
echo 'window.bt_bb_text._tips.push( "' . esc_html__( 'Bold Builder tip: Hold CTRL key and click Paste on content element toolbar to paste before the element.', 'bold-builder' ) . '" );';
|
650 |
+
|
651 |
+
echo '</script>';
|
652 |
+
}
|
653 |
+
add_action( 'admin_footer', 'bt_bb_translate', 20 );
|
654 |
+
add_action( 'customize_controls_head', 'bt_bb_translate' );
|
655 |
+
|
656 |
+
/**
|
657 |
+
* Map shortcodes
|
658 |
+
*/
|
659 |
+
|
660 |
+
global $bt_bb_map;
|
661 |
+
$bt_bb_map = array();
|
662 |
+
|
663 |
+
function bt_bb_map_js() {
|
664 |
+
|
665 |
+
if ( is_admin() ) { // back end
|
666 |
+
$screen = get_current_screen();
|
667 |
+
if ( ! is_object( $screen ) || $screen->base != 'post' ) {
|
668 |
+
return;
|
669 |
+
}
|
670 |
+
|
671 |
+
$options = get_option( 'bt_bb_settings' );
|
672 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
673 |
+
$active_pt = array();
|
674 |
+
foreach( $post_types as $pt ) {
|
675 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
676 |
+
$active_pt[] = $pt;
|
677 |
+
}
|
678 |
+
}
|
679 |
+
$screens = $active_pt;
|
680 |
+
if ( ! in_array( $screen->post_type, $screens ) && $screen->base == 'post' ) {
|
681 |
+
return;
|
682 |
+
}
|
683 |
+
}
|
684 |
+
|
685 |
+
global $bt_bb_map;
|
686 |
+
echo '<script>';
|
687 |
+
BT_BB_Root::$elements = apply_filters( 'bt_bb_elements', BT_BB_Root::$elements );
|
688 |
+
foreach( BT_BB_Root::$elements as $base => $params ) {
|
689 |
+
$proxy = new BT_BB_Map_Proxy( $base, $params );
|
690 |
+
$proxy->js_map();
|
691 |
+
}
|
692 |
+
echo '</script>';
|
693 |
+
echo '<script>';
|
694 |
+
$opt_arr = get_option( 'bt_bb_mapping_secondary' );
|
695 |
+
if ( is_array( $opt_arr ) ) {
|
696 |
+
foreach( $opt_arr as $k => $v ) {
|
697 |
+
if ( shortcode_exists( $k ) ) {
|
698 |
+
echo 'window.bt_bb_map["' . $k . '"] = ' . stripslashes( $v ) . ';';
|
699 |
+
$bt_bb_map[ $k ] = json_decode( stripslashes( $v ), true );
|
700 |
+
echo 'window.bt_bb_map_secondary["' . $k . '"] = true;';
|
701 |
+
}
|
702 |
+
}
|
703 |
+
}
|
704 |
+
echo '</script>';
|
705 |
+
}
|
706 |
+
add_action( 'admin_head', 'bt_bb_map_js' );
|
707 |
+
|
708 |
+
function bt_bb_fe_action() {
|
709 |
+
if ( ! bt_bb_active_for_post_type_fe() ) {
|
710 |
+
return;
|
711 |
+
}
|
712 |
+
add_action( 'wp_enqueue_scripts', 'bt_bb_enqueue_fe' );
|
713 |
+
add_filter( 'the_content', 'bt_bb_parse_content_admin' );
|
714 |
+
}
|
715 |
+
add_action( 'admin_bar_init', 'bt_bb_fe_action' );
|
716 |
+
|
717 |
+
if ( ! class_exists( 'BoldThemes_BB_Settings' ) || ! BoldThemes_BB_Settings::$custom_content_elements ) {
|
718 |
+
add_action( 'wp_enqueue_scripts', 'bt_bb_enqueue_content_elements' );
|
719 |
+
add_action( 'admin_footer', function() {
|
720 |
+
echo '<script>window.bt_bb_custom_elements = false;</script>';
|
721 |
+
if ( isset( BT_BB_Root::$elements['bt_bb_column']['responsive_override'] ) && BT_BB_Root::$elements['bt_bb_column']['responsive_override'] && isset( BT_BB_Root::$elements['bt_bb_column_inner']['responsive_override'] ) && BT_BB_Root::$elements['bt_bb_column_inner']['responsive_override'] ) {
|
722 |
+
echo '<script>window.bt_bb_responsive_override_layout = true;</script>';
|
723 |
+
} else {
|
724 |
+
echo '<script>window.bt_bb_responsive_override_layout = false;</script>';
|
725 |
+
}
|
726 |
+
}
|
727 |
+
);
|
728 |
+
} else {
|
729 |
+
add_action( 'admin_footer', function() { echo '<script>window.bt_bb_custom_elements = true;</script>'; } );
|
730 |
+
}
|
731 |
+
|
732 |
+
add_action( 'wp_enqueue_scripts', 'bt_bb_enqueue_fe_always' );
|
733 |
+
|
734 |
+
/**
|
735 |
+
* Map shortcode elements
|
736 |
+
*/
|
737 |
+
//function bt_bb_map( $base, $params, $priority = 10 ) {
|
738 |
+
function bt_bb_map( $base, $params ) {
|
739 |
+
$i = 0;
|
740 |
+
if ( isset( $params['params'] ) ) {
|
741 |
+
foreach( $params['params'] as $param ) {
|
742 |
+
if ( ! isset( $param['weight'] ) ) {
|
743 |
+
$params['params'][ $i ]['weight'] = $i;
|
744 |
+
}
|
745 |
+
$i++;
|
746 |
+
}
|
747 |
+
}
|
748 |
+
BT_BB_Root::$elements[ $base ] = $params;
|
749 |
+
}
|
750 |
+
|
751 |
+
add_action( 'plugins_loaded', 'bt_rc_map_plugins_loaded', 5 );
|
752 |
+
function bt_rc_map_plugins_loaded() {
|
753 |
+
if ( ! function_exists( 'bt_rc_map' ) ) {
|
754 |
+
function bt_rc_map( $base, $params ) {
|
755 |
+
bt_bb_map( $base, $params );
|
756 |
+
}
|
757 |
+
}
|
758 |
+
}
|
759 |
+
|
760 |
+
/* Deactivate RC */
|
761 |
+
register_activation_hook( __FILE__, 'bt_deactivate_rc' );
|
762 |
+
function bt_deactivate_rc () {
|
763 |
+
deactivate_plugins( 'rapid_composer/rapid_composer.php' );
|
764 |
+
}
|
765 |
+
|
766 |
+
/**
|
767 |
+
* Modify map
|
768 |
+
*/
|
769 |
+
function bt_bb_map_modify( $base, $params ) {
|
770 |
+
$i = 0;
|
771 |
+
if ( isset( $params['params'] ) ) {
|
772 |
+
foreach( $params['params'] as $param ) {
|
773 |
+
if ( ! isset( $param['weight'] ) ) {
|
774 |
+
$params['params'][ $i ]['weight'] = $i;
|
775 |
+
}
|
776 |
+
$i++;
|
777 |
+
}
|
778 |
+
}
|
779 |
+
foreach( $params as $key => $value ) {
|
780 |
+
BT_BB_Root::$elements[ $base ][ $key ] = $value;
|
781 |
+
}
|
782 |
+
}
|
783 |
+
|
784 |
+
/**
|
785 |
+
* Add element param(s)
|
786 |
+
*/
|
787 |
+
function bt_bb_add_params( $base, $params ) {
|
788 |
+
$proxy = new BT_BB_Add_Params_Proxy( $base, $params );
|
789 |
+
add_filter( 'bt_bb_elements', array( $proxy, 'add_params' ) );
|
790 |
+
}
|
791 |
+
|
792 |
+
/**
|
793 |
+
* Remove element param(s)
|
794 |
+
*/
|
795 |
+
function bt_bb_remove_params( $base, $params ) {
|
796 |
+
$proxy = new BT_BB_Remove_Params_Proxy( $base, $params );
|
797 |
+
add_filter( 'bt_bb_elements', array( $proxy, 'remove_params' ) );
|
798 |
+
}
|
799 |
+
|
800 |
+
global $bt_bb_root_base;
|
801 |
+
$bt_bb_root_base = array();
|
802 |
+
|
803 |
+
class BT_BB_Map_Proxy {
|
804 |
+
function __construct( $base, $params ) {
|
805 |
+
$this->base = $base;
|
806 |
+
$params['base'] = $base;
|
807 |
+
$this->params = $params;
|
808 |
+
}
|
809 |
+
|
810 |
+
public function js_map() {
|
811 |
+
global $bt_bb_map;
|
812 |
+
if ( shortcode_exists( $this->base ) ) {
|
813 |
+
if ( isset( $this->params['admin_enqueue_css'] ) ) {
|
814 |
+
foreach( $this->params['admin_enqueue_css'] as $item ) {
|
815 |
+
wp_enqueue_style( 'bt_bb_admin_' . uniqid(), $item );
|
816 |
+
}
|
817 |
+
}
|
818 |
+
echo 'window.bt_bb_map["' . $this->base . '"] = window.bt_bb_map_primary.' . $this->base . ' = ' . bt_bb_json_encode( $this->params ) . ';';
|
819 |
+
$bt_bb_map[ $this->base ] = $this->params;
|
820 |
+
}
|
821 |
+
}
|
822 |
+
}
|
823 |
+
|
824 |
+
class BT_BB_FE_Map_Proxy {
|
825 |
+
function __construct( $base, $params ) {
|
826 |
+
$this->base = $base;
|
827 |
+
$params['base'] = $base;
|
828 |
+
$this->params = $params;
|
829 |
+
|
830 |
+
global $bt_bb_root_base;
|
831 |
+
if ( isset( $params['root'] ) && $params['root'] === true && isset( $params['base'] ) ) {
|
832 |
+
$bt_bb_root_base[] = $params['base'];
|
833 |
+
}
|
834 |
+
}
|
835 |
+
|
836 |
+
public function js_map() {
|
837 |
+
global $bt_bb_map;
|
838 |
+
if ( shortcode_exists( $this->base ) ) {
|
839 |
+
$bt_bb_map[ $this->base ] = $this->params;
|
840 |
+
}
|
841 |
+
}
|
842 |
+
}
|
843 |
+
|
844 |
+
class BT_BB_Add_Params_Proxy {
|
845 |
+
function __construct( $base, $params ) {
|
846 |
+
$this->base = $base;
|
847 |
+
$this->params = $params;
|
848 |
+
}
|
849 |
+
public function add_params( $elements ) {
|
850 |
+
foreach( $this->params as $param ) {
|
851 |
+
$last = end( $elements[ $this->base ]['params'] );
|
852 |
+
if ( ! is_array( $param ) ) {
|
853 |
+
if ( ! isset( $this->params['weight'] ) ) {
|
854 |
+
if ( isset( $last['weight'] ) ) {
|
855 |
+
$this->params['weight'] = $last['weight'] + 1;
|
856 |
+
} else {
|
857 |
+
$this->params['weight'] = 0;
|
858 |
+
}
|
859 |
+
}
|
860 |
+
$elements[ $this->base ]['params'][] = $this->params;
|
861 |
+
break;
|
862 |
+
} else {
|
863 |
+
if ( ! isset( $param['weight'] ) ) {
|
864 |
+
if ( isset( $last['weight'] ) ) {
|
865 |
+
$param['weight'] = $last['weight'] + 1;
|
866 |
+
} else {
|
867 |
+
$param['weight'] = 0;
|
868 |
+
}
|
869 |
+
}
|
870 |
+
$elements[ $this->base ]['params'][] = $param;
|
871 |
+
}
|
872 |
+
}
|
873 |
+
|
874 |
+
usort( $elements[ $this->base ]['params'], array( $this, 'sort_by_weight' ) );
|
875 |
+
|
876 |
+
return $elements;
|
877 |
+
}
|
878 |
+
private function sort_by_weight( $a, $b ) {
|
879 |
+
if ( $a['weight'] == $b['weight'] ) {
|
880 |
+
return 0;
|
881 |
+
}
|
882 |
+
return ( $a['weight'] < $b['weight'] ) ? -1 : 1;
|
883 |
+
}
|
884 |
+
}
|
885 |
+
|
886 |
+
class BT_BB_Remove_Params_Proxy {
|
887 |
+
function __construct( $base, $params ) {
|
888 |
+
$this->base = $base;
|
889 |
+
$this->params = $params;
|
890 |
+
}
|
891 |
+
public function remove_params( $elements ) {
|
892 |
+
if ( is_array( $this->params ) ) {
|
893 |
+
foreach( $this->params as $param ) {
|
894 |
+
$i = 0;
|
895 |
+
foreach( $elements[ $this->base ]['params'] as $element_param ) {
|
896 |
+
if ( $element_param['param_name'] == $param ) {
|
897 |
+
unset( $elements[ $this->base ]['params'][ $i ] );
|
898 |
+
}
|
899 |
+
$i++;
|
900 |
+
}
|
901 |
+
$elements[ $this->base ]['params'] = array_values( $elements[ $this->base ]['params'] );
|
902 |
+
}
|
903 |
+
} else {
|
904 |
+
$i = 0;
|
905 |
+
foreach( $elements[ $this->base ]['params'] as $element_param ) {
|
906 |
+
if ( $element_param['param_name'] == $this->params ) {
|
907 |
+
unset( $elements[ $this->base ]['params'][ $i ] );
|
908 |
+
}
|
909 |
+
$i++;
|
910 |
+
}
|
911 |
+
$elements[ $this->base ]['params'] = array_values( $elements[ $this->base ]['params'] );
|
912 |
+
}
|
913 |
+
return $elements;
|
914 |
+
}
|
915 |
+
}
|
916 |
+
|
917 |
+
/**
|
918 |
+
* Remove wpautop
|
919 |
+
*/
|
920 |
+
function bt_bb_wpautop( $content ) {
|
921 |
+
if ( BT_BB_Root::$init_wpautop === null ) {
|
922 |
+
BT_BB_Root::$init_wpautop = has_filter( 'the_content', 'wpautop' );
|
923 |
+
}
|
924 |
+
if ( ! bt_bb_active_for_post_type_fe() ) {
|
925 |
+
return $content;
|
926 |
+
}
|
927 |
+
foreach( BT_BB_Root::$elements as $base => $params ) {
|
928 |
+
$proxy = new BT_BB_FE_Map_Proxy( $base, $params );
|
929 |
+
}
|
930 |
+
global $bt_bb_root_base;
|
931 |
+
$bt_bb_content = false;
|
932 |
+
foreach( $bt_bb_root_base as $item ) {
|
933 |
+
if ( strpos( trim( $content ), '[' . $item ) === 0 ) {
|
934 |
+
$bt_bb_content = true;
|
935 |
+
break;
|
936 |
+
}
|
937 |
+
}
|
938 |
+
if ( $bt_bb_content ) {
|
939 |
+
remove_filter( 'the_content', 'wpautop' );
|
940 |
+
} else if ( BT_BB_Root::$init_wpautop !== false ) {
|
941 |
+
add_filter( 'the_content', 'wpautop' );
|
942 |
+
}
|
943 |
+
return $content;
|
944 |
+
}
|
945 |
+
add_filter( 'the_content', 'bt_bb_wpautop', 1 );
|
946 |
+
|
947 |
+
// force visual editor
|
948 |
+
add_action( 'current_screen' , 'bt_bb_current_screen' );
|
949 |
+
function bt_bb_current_screen( $current_screen ) {
|
950 |
+
$options = get_option( 'bt_bb_settings' );
|
951 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
952 |
+
$active_pt = array();
|
953 |
+
foreach( $post_types as $pt ) {
|
954 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
955 |
+
$active_pt[] = $pt;
|
956 |
+
}
|
957 |
+
}
|
958 |
+
$screens = $active_pt;
|
959 |
+
if ( in_array( $current_screen->post_type, $screens ) ) {
|
960 |
+
add_filter( 'user_can_richedit' , '__return_true', 50 );
|
961 |
+
}
|
962 |
+
}
|
963 |
+
|
964 |
+
/**
|
965 |
+
* Adds a box to the main column on the Post and Page edit screens.
|
966 |
+
*/
|
967 |
+
function bt_bb_add_meta_box() {
|
968 |
+
$options = get_option( 'bt_bb_settings' );
|
969 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
970 |
+
$active_pt = array();
|
971 |
+
foreach( $post_types as $pt ) {
|
972 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
973 |
+
$active_pt[] = $pt;
|
974 |
+
}
|
975 |
+
}
|
976 |
+
|
977 |
+
$screens = $active_pt;
|
978 |
+
|
979 |
+
foreach( $screens as $screen ) {
|
980 |
+
add_meta_box(
|
981 |
+
'bt_bb_sectionid',
|
982 |
+
esc_html__( 'Bold Builder', 'bold-builder' ),
|
983 |
+
'bt_bb_meta_box_callback',
|
984 |
+
$screen,
|
985 |
+
'normal',
|
986 |
+
'high',
|
987 |
+
array(
|
988 |
+
'__back_compat_meta_box' => true,
|
989 |
+
/*'__block_editor_compatible_meta_box' => true,*/
|
990 |
+
/*'__block_editor_compatible_meta_box' => false,*/
|
991 |
+
)
|
992 |
+
);
|
993 |
+
}
|
994 |
+
}
|
995 |
+
add_action( 'add_meta_boxes', 'bt_bb_add_meta_box' );
|
996 |
+
|
997 |
+
/**
|
998 |
+
* Get size information for all currently-registered image sizes.
|
999 |
+
*
|
1000 |
+
* @global $_wp_additional_image_sizes
|
1001 |
+
* @uses get_intermediate_image_sizes()
|
1002 |
+
* @return array $sizes Data for all currently-registered image sizes.
|
1003 |
+
*/
|
1004 |
+
function bt_bb_get_image_sizes() {
|
1005 |
+
global $_wp_additional_image_sizes;
|
1006 |
+
|
1007 |
+
foreach ( get_intermediate_image_sizes() as $_size ) {
|
1008 |
+
$sizes[ $_size ] = $_size;
|
1009 |
+
/*if ( in_array( $_size, array('thumbnail', 'medium', 'medium_large', 'large') ) ) {
|
1010 |
+
$sizes[ $_size ]['width'] = get_option( "{$_size}_size_w" );
|
1011 |
+
$sizes[ $_size ]['height'] = get_option( "{$_size}_size_h" );
|
1012 |
+
$sizes[ $_size ]['crop'] = (bool) get_option( "{$_size}_crop" );
|
1013 |
+
} elseif ( isset( $_wp_additional_image_sizes[ $_size ] ) ) {
|
1014 |
+
$sizes[ $_size ] = array(
|
1015 |
+
'width' => $_wp_additional_image_sizes[ $_size ]['width'],
|
1016 |
+
'height' => $_wp_additional_image_sizes[ $_size ]['height'],
|
1017 |
+
'crop' => $_wp_additional_image_sizes[ $_size ]['crop'],
|
1018 |
+
);
|
1019 |
+
}*/
|
1020 |
+
}
|
1021 |
+
|
1022 |
+
$sizes[ 'full' ] = 'full';
|
1023 |
+
|
1024 |
+
return array_reverse( $sizes );
|
1025 |
+
}
|
1026 |
+
|
1027 |
+
/**
|
1028 |
+
* Initial data.
|
1029 |
+
*/
|
1030 |
+
class BT_BB_Data_Proxy {
|
1031 |
+
function __construct( $data ) {
|
1032 |
+
$this->data = $data;
|
1033 |
+
}
|
1034 |
+
|
1035 |
+
public function js() {
|
1036 |
+
echo '<script>
|
1037 |
+
var bt_bb_data = {
|
1038 |
+
title: "_root",
|
1039 |
+
base: "_root",
|
1040 |
+
key: "' . uniqid( 'bt_bb_' ) . '",
|
1041 |
+
children: ' . $this->data . '
|
1042 |
+
}
|
1043 |
+
</script>';
|
1044 |
+
}
|
1045 |
+
}
|
1046 |
+
|
1047 |
+
function bt_bb_force_tinymce() {
|
1048 |
+
return 'tinymce';
|
1049 |
+
}
|
1050 |
+
add_filter( 'wp_default_editor', 'bt_bb_force_tinymce' );
|
1051 |
+
|
1052 |
+
/**
|
1053 |
+
* Prints the box content.
|
1054 |
+
*
|
1055 |
+
* @param WP_Post $post The object for the current post/page.
|
1056 |
+
*/
|
1057 |
+
function bt_bb_meta_box_callback( $post ) {
|
1058 |
+
|
1059 |
+
// Add an nonce field so we can check for it later.
|
1060 |
+
wp_nonce_field( 'bt_bb_meta_box', 'bt_bb_meta_box_nonce' );
|
1061 |
+
|
1062 |
+
/*
|
1063 |
+
* Use get_post_meta() to retrieve an existing value
|
1064 |
+
* from the database and use the value for the form.
|
1065 |
+
*/
|
1066 |
+
$value = get_post_meta( $post->ID, '_my_meta_value_key', true );
|
1067 |
+
|
1068 |
+
$content = $post->post_content;
|
1069 |
+
|
1070 |
+
if ( function_exists( 'mb_convert_encoding' ) ) {
|
1071 |
+
$content = mb_convert_encoding( $content, 'UTF-8' );
|
1072 |
+
}
|
1073 |
+
|
1074 |
+
global $bt_bb_array;
|
1075 |
+
$bt_bb_array = array();
|
1076 |
+
|
1077 |
+
bt_bb_do_shortcode( $content );
|
1078 |
+
|
1079 |
+
$json_content = bt_bb_json_encode( $bt_bb_array );
|
1080 |
+
|
1081 |
+
$screen = get_current_screen();
|
1082 |
+
|
1083 |
+
global $bt_bb_is_bb_content;
|
1084 |
+
if ( $json_content == '[]' ) {
|
1085 |
+
$bt_bb_is_bb_content = 'false';
|
1086 |
+
} else {
|
1087 |
+
$bt_bb_is_bb_content = 'true';
|
1088 |
+
}
|
1089 |
+
|
1090 |
+
if ( $screen->post_type == 'page' && $screen->action == 'add' ) {
|
1091 |
+
$bt_bb_is_bb_content = 'true';
|
1092 |
+
}
|
1093 |
+
|
1094 |
+
if ( function_exists( 'wp_enqueue_code_editor' ) ) {
|
1095 |
+
wp_enqueue_code_editor( array( 'type' => 'text/css' ) );
|
1096 |
+
}
|
1097 |
+
|
1098 |
+
echo '<div id="bt_bb"></div><div id="bt_bb_add_root"><i></i></div>';
|
1099 |
+
|
1100 |
+
bt_bb_edit_dialog();
|
1101 |
+
|
1102 |
+
echo '<div id="bt_bb_front_end_preview_container"><div id="bt_bb_front_end_preview" class="bt_bb_dialog">';
|
1103 |
+
echo '<div class="bt_bb_dialog_header">';
|
1104 |
+
echo '<div class="bt_bb_front_end_preview_resize bt_bb_front_end_preview_xl bt_bb_front_end_preview_selected" data-preview-size="xl"></div>';
|
1105 |
+
echo '<div class="bt_bb_front_end_preview_resize bt_bb_front_end_preview_lg" data-preview-size="lg"></div>';
|
1106 |
+
echo '<div class="bt_bb_front_end_preview_resize bt_bb_front_end_preview_md" data-preview-size="md"></div>';
|
1107 |
+
echo '<div class="bt_bb_front_end_preview_resize bt_bb_front_end_preview_sm" data-preview-size="sm"></div>';
|
1108 |
+
echo '<div class="bt_bb_front_end_preview_resize bt_bb_front_end_preview_xs" data-preview-size="xs"></div>';
|
1109 |
+
echo '<div class="bt_bb_front_end_preview_close bt_bb_dialog_close"></div>';
|
1110 |
+
echo '<span>' . esc_html__( 'Preview', 'bold-builder' ) . '</span>';
|
1111 |
+
echo '</div>';
|
1112 |
+
echo '<iframe name="bt_bb_front_end_preview_iframe"></iframe>';
|
1113 |
+
echo '</div></div>';
|
1114 |
+
|
1115 |
+
echo '<div id="bt_bb_main_toolbar">';
|
1116 |
+
echo '<i class="bt_bb_undo" title="' . esc_html__( 'Undo', 'bold-builder' ) . '"></i>';
|
1117 |
+
echo '<i class="bt_bb_redo" title="' . esc_html__( 'Redo', 'bold-builder' ) . '"></i>';
|
1118 |
+
echo '<span class="bt_bb_separator">|</span>';
|
1119 |
+
echo '<i class="bt_bb_paste_root" title="' . esc_html__( 'Paste', 'bold-builder' ) . '"></i>';
|
1120 |
+
echo '<span class="bt_bb_cb_items"></span>';
|
1121 |
+
echo '<i class="bt_bb_manage_clipboard" title="' . esc_html__( 'Clipboard Manager', 'bold-builder' ) . '"></i>';
|
1122 |
+
echo '<span class="bt_bb_separator">|</span>';
|
1123 |
+
echo '<i class="bt_bb_preview" title="' . esc_html__( 'Preview', 'bold-builder' ) . '"></i>';
|
1124 |
+
echo '<i class="bt_bb_save" title="' . esc_html__( 'Save', 'bold-builder' ) . '"></i>';
|
1125 |
+
echo '</div>';
|
1126 |
+
|
1127 |
+
add_action( 'admin_footer', array( new BT_BB_Data_Proxy( $json_content ), 'js' ) );
|
1128 |
+
|
1129 |
+
}
|
1130 |
+
|
1131 |
+
function bt_bb_do_shortcode( $content ) {
|
1132 |
+
global $shortcode_tags;
|
1133 |
+
if ( ! ( ( empty( $shortcode_tags ) || ! is_array( $shortcode_tags ) ) ) ) {
|
1134 |
+
$pattern = get_shortcode_regex();
|
1135 |
+
|
1136 |
+
global $bt_bb_array;
|
1137 |
+
|
1138 |
+
$callback = new BT_BB_Callback( $bt_bb_array );
|
1139 |
+
|
1140 |
+
$preg_cb = preg_replace_callback( "/$pattern/s", array( $callback, 'bt_bb_do_shortcode_tag' ), $content );
|
1141 |
+
}
|
1142 |
+
}
|
1143 |
+
|
1144 |
+
class BT_BB_Callback {
|
1145 |
+
|
1146 |
+
private $bt_bb_array;
|
1147 |
+
|
1148 |
+
function __construct( &$bt_bb_array ) {
|
1149 |
+
$this->bt_bb_array = &$bt_bb_array;
|
1150 |
+
}
|
1151 |
+
|
1152 |
+
function bt_bb_do_shortcode_tag( $m ) {
|
1153 |
+
global $shortcode_tags;
|
1154 |
+
|
1155 |
+
global $bt_bb_map;
|
1156 |
+
|
1157 |
+
// allow [[foo]] syntax for escaping a tag
|
1158 |
+
if ( $m[1] == '[' && $m[6] == ']' ) {
|
1159 |
+
return $m[0];
|
1160 |
+
}
|
1161 |
+
|
1162 |
+
$tag = $m[2];
|
1163 |
+
$attr = shortcode_parse_atts( $m[3] );
|
1164 |
+
|
1165 |
+
if ( is_array( $attr ) ) {
|
1166 |
+
$this->bt_bb_array[] = array( 'title' => $tag, 'base' => $tag, 'key' => str_replace( '.', '', uniqid( 'bt_bb_', true ) ), 'attr' => bt_bb_json_encode( $attr ), 'children' => array() );
|
1167 |
+
} else {
|
1168 |
+
$this->bt_bb_array[] = array( 'title' => $tag, 'base' => $tag, 'key' => str_replace( '.', '', uniqid( 'bt_bb_', true ) ), 'children' => array() );
|
1169 |
+
}
|
1170 |
+
|
1171 |
+
if ( isset( $m[5] ) && $m[5] != '' ) {
|
1172 |
+
// enclosing tag - extra parameter
|
1173 |
+
$pattern = get_shortcode_regex();
|
1174 |
+
|
1175 |
+
if ( isset( $bt_bb_map[ $m[2] ]['accept']['_content'] ) && $bt_bb_map[ $m[2] ]['accept']['_content'] ) {
|
1176 |
+
$r = $m[5];
|
1177 |
+
} else {
|
1178 |
+
$callback = new BT_BB_Callback( $this->bt_bb_array[ count( $this->bt_bb_array ) - 1 ]['children'] );
|
1179 |
+
$r = preg_replace_callback( "/$pattern/s", array( $callback, 'bt_bb_do_shortcode_tag' ), $m[5] );
|
1180 |
+
$r = trim( $r );
|
1181 |
+
}
|
1182 |
+
|
1183 |
+
if ( $r != '' ) {
|
1184 |
+
$this->bt_bb_array[ count( $this->bt_bb_array ) - 1 ]['children'][0] = array( 'title' => '_content', 'base' => '_content', 'content' => $r, 'children' => array() );
|
1185 |
+
}
|
1186 |
+
}
|
1187 |
+
}
|
1188 |
+
}
|
1189 |
+
|
1190 |
+
function bt_bb_edit_dialog() {
|
1191 |
+
echo '<div id="bt_bb_dialog" class="bt_bb_dialog">';
|
1192 |
+
echo '<div class="bt_bb_dialog_header"><div class="bt_bb_dialog_close"></div><span></span></div>';
|
1193 |
+
echo '<div class="bt_bb_dialog_header_tools"></div>';
|
1194 |
+
echo '<div class="bt_bb_dialog_content">';
|
1195 |
+
echo '</div>';
|
1196 |
+
echo '<div class="bt_bb_dialog_tinymce">';
|
1197 |
+
echo '<div class="bt_bb_dialog_tinymce_editor_container">';
|
1198 |
+
wp_editor( '' , 'bt_bb_tinymce', array( 'textarea_rows' => 12 ) );
|
1199 |
+
echo '</div>';
|
1200 |
+
echo '<input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small" value="' . esc_html__( 'Submit', 'bold-builder' ) . '">';
|
1201 |
+
echo '</div>';
|
1202 |
+
echo '</div>';
|
1203 |
+
}
|
1204 |
+
|
1205 |
+
function bt_bb_active_for_post_type_fe() {
|
1206 |
+
$options = get_option( 'bt_bb_settings' );
|
1207 |
+
$post_types = get_post_types( array( 'public' => true, 'show_in_nav_menus' => true ) );
|
1208 |
+
$active_pt = array();
|
1209 |
+
foreach( $post_types as $pt ) {
|
1210 |
+
if ( ! $options || ( ! array_key_exists( $pt, $options ) || ( array_key_exists( $pt, $options ) && $options[ $pt ] == '1' ) ) ) {
|
1211 |
+
$active_pt[ $pt ] = $pt;
|
1212 |
+
}
|
1213 |
+
}
|
1214 |
+
$post_type = get_post_type();
|
1215 |
+
if ( $post_type ) {
|
1216 |
+
return array_key_exists( $post_type, $active_pt );
|
1217 |
+
}
|
1218 |
+
return false;
|
1219 |
+
}
|
1220 |
+
|
1221 |
+
function bt_bb_json_encode( $arg ) {
|
1222 |
+
return json_encode($arg);
|
1223 |
+
}
|
1224 |
+
|
1225 |
+
function bt_bb_json_decode( $arg ) {
|
1226 |
+
return json_decode($arg);
|
1227 |
+
}
|
1228 |
+
|
1229 |
+
/* General publish date filter */
|
1230 |
+
|
1231 |
+
function bt_bb_publish_hide_callback( $output, $atts ) {
|
1232 |
+
$now = date("Y-m-d H:m", time());
|
1233 |
+
if ( !isset( $atts['publish_datetime'] ) || $atts['publish_datetime'] == '' ) {
|
1234 |
+
$publish_datetime = date("Y-m-d H:m", time() - 60 * 60 * 24);
|
1235 |
+
} else {
|
1236 |
+
$publish_datetime = str_replace( "T", " ", $atts['publish_datetime']);
|
1237 |
+
}
|
1238 |
+
if ( !isset( $atts['expiry_datetime'] ) || $atts['expiry_datetime'] == '' ) {
|
1239 |
+
$expiry_datetime = date("Y-m-d H:m", time() + 60 * 60 * 24);
|
1240 |
+
} else {
|
1241 |
+
$expiry_datetime = str_replace( "T", " ", $atts['expiry_datetime']);
|
1242 |
+
}
|
1243 |
+
|
1244 |
+
if ( $now >= $publish_datetime && $now <= $expiry_datetime ) {
|
1245 |
+
return $output;
|
1246 |
+
} else {
|
1247 |
+
return "";
|
1248 |
+
}
|
1249 |
+
}
|
1250 |
+
|
1251 |
+
add_filter( 'bt_bb_general_output', 'bt_bb_publish_hide_callback', 10, 2 );
|
1252 |
+
|
1253 |
+
class BT_BB_Basic_Element {
|
1254 |
+
|
1255 |
+
protected $shortcode;
|
1256 |
+
protected $prefix;
|
1257 |
+
protected $prefix_backend;
|
1258 |
+
|
1259 |
+
function __construct() {
|
1260 |
+
$this->init();
|
1261 |
+
}
|
1262 |
+
|
1263 |
+
function init() {
|
1264 |
+
$this->prefix = 'bt_bb_';
|
1265 |
+
$this->prefix_backend = 'bt_bb_';
|
1266 |
+
$this->shortcode = get_class( $this );
|
1267 |
+
add_shortcode( $this->shortcode, array( $this, 'handle_shortcode' ) );
|
1268 |
+
add_action( 'wp_loaded', array( $this, 'map_shortcode' ) );
|
1269 |
+
//$this->map_shortcode();
|
1270 |
+
$this->add_params();
|
1271 |
+
add_filter( 'bt_bb_extract_atts_' . $this->shortcode, array( $this, 'atts_callback' ) );
|
1272 |
+
add_filter( 'bt_bb_extract_atts', array( $this, 'atts_callback' ) ); // older themes override content elements
|
1273 |
+
add_filter( $this->shortcode . '_class', array( $this, 'responsive_hide_callback' ), 10, 2 );
|
1274 |
+
add_filter( $this->shortcode . '_class', array( $this, 'animation_callback' ), 10, 2 );
|
1275 |
+
//add_filter( $this->shortcode . '_output', array( $this, 'data_shortcode' ), 10, 2 );
|
1276 |
+
}
|
1277 |
+
|
1278 |
+
function add_params() {
|
1279 |
+
|
1280 |
+
}
|
1281 |
+
|
1282 |
+
function atts_callback( $atts ) {
|
1283 |
+
|
1284 |
+
}
|
1285 |
+
|
1286 |
+
function responsive_hide_callback( $class, $atts ) {
|
1287 |
+
if ( isset( $atts['responsive'] ) && $atts['responsive'] != '' ) {
|
1288 |
+
$class = array_merge( $class, preg_filter('/^/', $this->prefix, explode( ' ', $atts['responsive'] ) ) );
|
1289 |
+
}
|
1290 |
+
return $class;
|
1291 |
+
}
|
1292 |
+
|
1293 |
+
function animation_callback( $class, $atts ) {
|
1294 |
+
if ( isset( $atts['animation'] ) && $atts['animation'] != 'no_animation' ) {
|
1295 |
+
foreach ( explode( ' ', $atts['animation'] ) as $index) {
|
1296 |
+
$class[] = $this->prefix . 'animation' . '_' . $index;
|
1297 |
+
}
|
1298 |
+
/*$class[] = $this->prefix . 'animation' . '_' . $atts['animation'];*/
|
1299 |
+
$class[] = 'animate';
|
1300 |
+
}
|
1301 |
+
return $class;
|
1302 |
+
}
|
1303 |
+
|
1304 |
+
function data_shortcode( $output, $atts ) {
|
1305 |
+
if ( current_user_can( 'edit_posts' ) ) {
|
1306 |
+
return preg_replace( '/(<\w+)/', '$1 data-shortcode="' . $this->shortcode . '" data-atts="' . htmlspecialchars( json_encode( $atts, JSON_FORCE_OBJECT ) ) . '"', $output, 1 );
|
1307 |
+
} else {
|
1308 |
+
return $output;
|
1309 |
+
}
|
1310 |
+
}
|
1311 |
+
|
1312 |
+
function to_uc( $str ) {
|
1313 |
+
$str = str_replace( '_', ' ', $str );
|
1314 |
+
$str = ucwords( $str );
|
1315 |
+
$str = str_replace( ' ', '', $str );
|
1316 |
+
return $str;
|
1317 |
+
}
|
1318 |
+
|
1319 |
+
function to_camel( $str ) {
|
1320 |
+
$str = $this->to_uc( $str );
|
1321 |
+
$str = lcfirst( $str );
|
1322 |
+
return $str;
|
1323 |
+
}
|
1324 |
+
|
1325 |
+
}
|
1326 |
+
|
1327 |
+
class BT_BB_Element extends BT_BB_Basic_Element {
|
1328 |
+
|
1329 |
+
function add_params() {
|
1330 |
+
|
1331 |
+
$params = array(
|
1332 |
+
array( 'param_name' => 'responsive', 'type' => 'checkbox_group', 'heading' => esc_html__( 'Hide element on screens', 'bold-builder' ), 'group' => esc_html__( 'Responsive', 'bold-builder' ), 'preview' => true,
|
1333 |
+
'value' => array(
|
1334 |
+
esc_html__( '≤480px', 'bold-builder' ) => 'hidden_xs',
|
1335 |
+
esc_html__( '481-768px', 'bold-builder' ) => 'hidden_ms',
|
1336 |
+
esc_html__( '769-992px', 'bold-builder' ) => 'hidden_sm',
|
1337 |
+
esc_html__( '993-1200px', 'bold-builder' ) => 'hidden_md',
|
1338 |
+
esc_html__( '>1200px', 'bold-builder' ) => 'hidden_lg',
|
1339 |
+
)
|
1340 |
+
),
|
1341 |
+
array( 'param_name' => 'publish_datetime', 'type' => 'datetime-local', 'heading' => esc_html__( 'Publish date', 'bold-builder' ), 'description' => esc_html__( 'Please, fill both the date and time', 'bold-builder' ), 'group' => esc_html__( 'Custom', 'bold-builder' ), 'weight' => 990 ),
|
1342 |
+
array( 'param_name' => 'expiry_datetime', 'type' => 'datetime-local', 'heading' => esc_html__( 'Expiry date', 'bold-builder' ), 'description' => esc_html__( 'Please, fill both the date and time', 'bold-builder' ), 'group' => esc_html__( 'Custom', 'bold-builder' ), 'weight' => 995 ),
|
1343 |
+
array( 'param_name' => 'el_id', 'type' => 'textfield', 'heading' => esc_html__( 'Element ID', 'bold-builder' ), 'group' => esc_html__( 'Custom', 'bold-builder' ), 'weight' => 1000 ),
|
1344 |
+
array( 'param_name' => 'el_class', 'type' => 'textfield', 'heading' => esc_html__( 'Extra class name(s)', 'bold-builder' ), 'group' => esc_html__( 'Custom', 'bold-builder' ), 'weight' => 1005 ),
|
1345 |
+
array( 'param_name' => 'el_style', 'type' => 'textfield', 'heading' => esc_html__( 'Inline style', 'bold-builder' ), 'group' => esc_html__( 'Custom', 'bold-builder' ), 'weight' => 1010 )
|
1346 |
+
);
|
1347 |
+
|
1348 |
+
$bt_bb_skip_animation_arr = [ 'bt_bb_slider', 'bt_bb_content_slider', 'bt_bb_content_slider_item', 'bt_bb_accordion_item', 'bt_bb_tab_item', 'bt_bb_google_maps_location', 'bt_bb_leaflet_map_location' ];
|
1349 |
+
|
1350 |
+
if ( !in_array( $this->shortcode, $bt_bb_skip_animation_arr ) ) {
|
1351 |
+
$params[] = array( 'param_name' => 'animation', 'type' => 'dropdown', 'heading' => esc_html__( 'Animation', 'bold-builder' ), 'group' => esc_html__( 'Custom', 'bold-builder' ), 'preview' => true, 'weight' => 997,
|
1352 |
+
'value' => array(
|
1353 |
+
esc_html__( 'No Animation', 'bold-builder' ) => 'no_animation',
|
1354 |
+
esc_html__( 'Fade In', 'bold-builder' ) => 'fade_in',
|
1355 |
+
esc_html__( 'Move Up', 'bold-builder' ) => 'move_up',
|
1356 |
+
esc_html__( 'Move Left', 'bold-builder' ) => 'move_left',
|
1357 |
+
esc_html__( 'Move Right', 'bold-builder' ) => 'move_right',
|
1358 |
+
esc_html__( 'Move Down', 'bold-builder' ) => 'move_down',
|
1359 |
+
esc_html__( 'Zoom in', 'bold-builder' ) => 'zoom_in',
|
1360 |
+
esc_html__( 'Zoom out', 'bold-builder' ) => 'zoom_out',
|
1361 |
+
esc_html__( 'Fade In / Move Up', 'bold-builder' ) => 'fade_in move_up',
|
1362 |
+
esc_html__( 'Fade In / Move Left', 'bold-builder' ) => 'fade_in move_left',
|
1363 |
+
esc_html__( 'Fade In / Move Right', 'bold-builder' ) => 'fade_in move_right',
|
1364 |
+
esc_html__( 'Fade In / Move Down', 'bold-builder' ) => 'fade_in move_down',
|
1365 |
+
esc_html__( 'Fade In / Zoom in', 'bold-builder' ) => 'fade_in zoom_in',
|
1366 |
+
esc_html__( 'Fade In / Zoom out', 'bold-builder' ) => 'fade_in zoom_out'
|
1367 |
+
)
|
1368 |
+
);
|
1369 |
+
}
|
1370 |
+
|
1371 |
+
bt_bb_add_params( $this->shortcode, $params );
|
1372 |
+
|
1373 |
+
/*if ( $this->shortcode == 'bt_bb_content_slider' ) {
|
1374 |
+
bt_bb_remove_params( $this->shortcode, 'animation' );
|
1375 |
+
}*/
|
1376 |
+
}
|
1377 |
+
|
1378 |
+
function atts_callback( $atts ) {
|
1379 |
+
return array(
|
1380 |
+
'responsive' => '',
|
1381 |
+
'animation' => '',
|
1382 |
+
'el_id' => '',
|
1383 |
+
'el_class' => '',
|
1384 |
+
'el_style' => ''
|
1385 |
+
) + $atts;
|
1386 |
+
}
|
1387 |
+
|
1388 |
+
function responsive_override_class( &$class, $arr ) {
|
1389 |
+
if ( $arr['value'] != '' ) {
|
1390 |
+
$value_arr = explode( '%$%', $arr['value'] );
|
1391 |
+
if ( isset( $arr['suffix'] ) ) {
|
1392 |
+
$suffix = $arr['suffix'];
|
1393 |
+
} else {
|
1394 |
+
$suffix = '_';
|
1395 |
+
}
|
1396 |
+
$main = $arr['prefix'] . $arr['param'] . $suffix . $value_arr[0];
|
1397 |
+
if ( ! ( isset( $arr['ignore'] ) && $arr['ignore'] == $value_arr[0] ) ) {
|
1398 |
+
$class[] = $main;
|
1399 |
+
}
|
1400 |
+
if ( count( $value_arr ) == 5 ) {
|
1401 |
+
if ( $value_arr[1] != '' ) {
|
1402 |
+
$class[] = $arr['prefix'] . $arr['param'] . '_lg' . $suffix . $value_arr[1];
|
1403 |
+
}
|
1404 |
+
if ( $value_arr[2] != '' ) {
|
1405 |
+
$class[] = $arr['prefix'] . $arr['param'] . '_md' . $suffix . $value_arr[2];
|
1406 |
+
}
|
1407 |
+
if ( $value_arr[3] != '' ) {
|
1408 |
+
$class[] = $arr['prefix'] . $arr['param'] . '_sm' . $suffix . $value_arr[3];
|
1409 |
+
}
|
1410 |
+
if ( $value_arr[4] != '' ) {
|
1411 |
+
$class[] = $arr['prefix'] . $arr['param'] . '_xs' . $suffix . $value_arr[4];
|
1412 |
+
}
|
1413 |
+
}
|
1414 |
+
}
|
1415 |
+
}
|
1416 |
+
|
1417 |
+
function responsive_data_override_class( &$class, &$data_override_class, $arr ) {
|
1418 |
+
if ( $arr['value'] != '' ) {
|
1419 |
+
$value_arr = explode( '%$%', $arr['value'] );
|
1420 |
+
if ( isset( $arr['suffix'] ) ) {
|
1421 |
+
$suffix = $arr['suffix'];
|
1422 |
+
} else {
|
1423 |
+
$suffix = '_';
|
1424 |
+
}
|
1425 |
+
|
1426 |
+
$main = $arr['prefix'] . $arr['param'] . $suffix . $value_arr[0];
|
1427 |
+
|
1428 |
+
$class[] = $main;
|
1429 |
+
|
1430 |
+
if ( count( $value_arr ) == 5 ) {
|
1431 |
+
$data_override_class[ $arr['prefix'] . $arr['param'] . $suffix ][ 'current_class' ] = $main;
|
1432 |
+
$data_override_class[ $arr['prefix'] . $arr['param'] . $suffix ][ 'xl' ] = $value_arr[0];
|
1433 |
+
|
1434 |
+
if ( $value_arr[1] != '' ) {
|
1435 |
+
$data_override_class[ $arr['prefix'] . $arr['param'] . $suffix ][ 'lg' ] = $value_arr[1];
|
1436 |
+
}
|
1437 |
+
if ( $value_arr[2] != '' ) {
|
1438 |
+
$data_override_class[ $arr['prefix'] . $arr['param'] . $suffix ][ 'md' ] = $value_arr[2];
|
1439 |
+
}
|
1440 |
+
if ( $value_arr[3] != '' ) {
|
1441 |
+
$data_override_class[ $arr['prefix'] . $arr['param'] . $suffix ][ 'sm' ] = $value_arr[3];
|
1442 |
+
}
|
1443 |
+
if ( $value_arr[4] != '' ) {
|
1444 |
+
$data_override_class[ $arr['prefix'] . $arr['param'] . $suffix ][ 'xs' ] = $value_arr[4];
|
1445 |
+
}
|
1446 |
+
}
|
1447 |
+
}
|
1448 |
+
}
|
1449 |
+
|
1450 |
+
}
|
1451 |
+
|
1452 |
+
$elements = array();
|
1453 |
+
|
1454 |
+
if ( ! class_exists( 'BoldThemes_BB_Settings' ) || ! BoldThemes_BB_Settings::$custom_content_elements ) {
|
1455 |
+
|
1456 |
+
$glob_match = glob( plugin_dir_path( __FILE__ ) . 'content_elements/*/*.php' );
|
1457 |
+
$glob_match = apply_filters( 'bt_bb_content_elements', $glob_match );
|
1458 |
+
if ( $glob_match ) {
|
1459 |
+
foreach( $glob_match as $file ) {
|
1460 |
+
if ( preg_match( '/(\w+)\/\1.php$/', $file, $match ) ) {
|
1461 |
+
$elements[ $match[1] ] = $file;
|
1462 |
+
}
|
1463 |
+
}
|
1464 |
+
}
|
1465 |
+
|
1466 |
+
$glob_match = glob( WP_PLUGIN_DIR . '/' . get_template() . '/bold-page-builder/content_elements/*/*.php' );
|
1467 |
+
if ( $glob_match ) {
|
1468 |
+
foreach( $glob_match as $file ) {
|
1469 |
+
if ( preg_match( '/(\w+)\/\1.php$/', $file, $match ) ) {
|
1470 |
+
$elements[ $match[1] ] = $file;
|
1471 |
+
}
|
1472 |
+
}
|
1473 |
+
}
|
1474 |
+
}
|
1475 |
+
|
1476 |
+
$glob_match = glob( get_template_directory() . '/bold-page-builder/content_elements/*/*.php' );
|
1477 |
+
if ( $glob_match ) {
|
1478 |
+
foreach( $glob_match as $file ) {
|
1479 |
+
if ( preg_match( '/(\w+)\/\1.php$/', $file, $match ) ) {
|
1480 |
+
$elements[ $match[1] ] = $file;
|
1481 |
+
}
|
1482 |
+
}
|
1483 |
+
}
|
1484 |
+
|
1485 |
+
$glob_match = glob( get_stylesheet_directory() . '/bold-page-builder/content_elements/*/*.php' );
|
1486 |
+
if ( $glob_match ) {
|
1487 |
+
foreach( $glob_match as $file ) {
|
1488 |
+
if ( preg_match( '/(\w+)\/\1.php$/', $file, $match ) ) {
|
1489 |
+
$elements[ $match[1] ] = $file;
|
1490 |
+
}
|
1491 |
+
}
|
1492 |
+
}
|
1493 |
+
|
1494 |
+
foreach( $elements as $key => $value ) {
|
1495 |
+
require( $value );
|
1496 |
+
new $key();
|
1497 |
+
}
|
1498 |
+
|
1499 |
+
/* Widgets */
|
1500 |
+
|
1501 |
+
if ( ! class_exists( 'BoldThemes_BB_Settings' ) || ! BoldThemes_BB_Settings::$custom_content_elements ) { // only with native BB elements
|
1502 |
+
require_once( plugin_dir_path( __FILE__ ) . 'widgets/init.php' );
|
1503 |
+
//include 'admin-notice.php'; // ### Instagram ###
|
1504 |
+
include 'admin-notice-rating.php';
|
1505 |
+
}
|
1506 |
+
|
1507 |
+
$options = get_option( 'bt_bb_settings' );
|
1508 |
+
if ( ! $options || ( ! array_key_exists( 'tips', $options ) || ( array_key_exists( 'tips', $options ) && $options['tips'] == '1' ) ) ) {
|
1509 |
+
include 'tips.php';
|
1510 |
+
}
|
build/bundle.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
!function(t){var b={};function _(e){if(b[e])return b[e].exports;var a=b[e]={i:e,l:!1,exports:{}};return t[e].call(a.exports,a,a.exports,_),a.l=!0,a.exports}_.m=t,_.c=b,_.d=function(t,b,e){_.o(t,b)||Object.defineProperty(t,b,{enumerable:!0,get:e})},_.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},_.t=function(t,b){if(1&b&&(t=_(t)),8&b)return t;if(4&b&&"object"==typeof t&&t&&t.__esModule)return t;var e=Object.create(null);if(_.r(e),Object.defineProperty(e,"default",{enumerable:!0,value:t}),2&b&&"string"!=typeof t)for(var a in t)_.d(e,a,function(b){return t[b]}.bind(null,a));return e},_.n=function(t){var b=t&&t.__esModule?function(){return t.default}:function(){return t};return _.d(b,"a",b),b},_.o=function(t,b){return Object.prototype.hasOwnProperty.call(t,b)},_.p="",_(_.s=0)}([function(t,b,_){"use strict";_.r(b);_(1),_(2),_(3),_(4),_(5),_(6),_(7)},function(t,b,_){"use strict";window.bt_bb_edit_layout=function(){let t=jQuery;var b=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from),_="",e="",a="",i="",n="";for(let t=0;t<b.children.length;t++){var o=window.bt_bb_map[b.children[t].base].width_param,d=attr_to_obj(b.children[t].attr);void 0!==d&&void 0!==d[o]&&(_+=d[o]),void 0!==d&&void 0!==d.width_lg&&(e+=d.width_lg),void 0!==d&&void 0!==d.width_md&&(a+=d.width_md),void 0!==d&&void 0!==d.width_sm&&(i+=d.width_sm),void 0!==d&&void 0!==d.width_xs&&(n+=d.width_xs),t<b.children.length-1&&(void 0!==d&&void 0!==d[o]&&""!==d[o]&&(_+="+"),void 0!==d&&void 0!==d.width_lg&&""!==d.width_lg&&(e+="+"),void 0!==d&&void 0!==d.width_md&&""!==d.width_md&&(a+="+"),void 0!==d&&void 0!==d.width_sm&&""!==d.width_sm&&(i+="+"),void 0!==d&&void 0!==d.width_xs&&""!==d.width_xs&&(n+="+"))}t("#bt_bb_dialog").addClass("bt_bb_dialog_add_horizontal");t("#bt_bb_dialog .bt_bb_dialog_content").html('<div class="bt_bb_dialog_pick_layout_container"><span class="bt_bb_dialog_pick_layout bt_bb_dialog_11" title="1/1"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_12_12" title="1/2+1/2"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_13_13_13" title="1/3+1/3+1/3"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_14_14_14" title="1/4+1/4+1/4+1/4"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_15_15_15_15_15" title="1/5+1/5+1/5+1/5+1/5"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_23_13" title="2/3+1/3"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_13_23" title="1/3+2/3"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_34_14" title="3/4+1/4"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_34" title="1/4+3/4"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_24_14" title="1/4+2/4+1/4"></span></div><div class="bt_bb_dialog_enter_layout_container"><div class="bt_bb_edit_layout_xl"><b>>1200px</b><input type="text" class="bt_bb_dialog_enter_layout bt_bb_dialog_enter_layout_xl"></div><div class="bt_bb_edit_layout_lg"><b>993-1200px</b><input type="text" class="bt_bb_dialog_enter_layout bt_bb_dialog_enter_layout_lg" placeholder="---"></div><div class="bt_bb_edit_layout_md"><b>769-992px</b><input type="text" class="bt_bb_dialog_enter_layout bt_bb_dialog_enter_layout_md" placeholder="---"></div><div class="bt_bb_edit_layout_sm"><b>481-768px</b><input type="text" class="bt_bb_dialog_enter_layout bt_bb_dialog_enter_layout_sm" placeholder="---"></div><div class="bt_bb_edit_layout_xs"><b>≤480px</b><input type="text" class="bt_bb_dialog_enter_layout bt_bb_dialog_enter_layout_xs" placeholder="---"></div></div>'),t("#bt_bb_dialog").append('<input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small" value="'+window.bt_bb_text.submit+'">'),""!=_&&t(".bt_bb_dialog_enter_layout_xl").val(_),""!=e&&t(".bt_bb_dialog_enter_layout_lg").val(e),""!=a&&t(".bt_bb_dialog_enter_layout_md").val(a),""!=i&&t(".bt_bb_dialog_enter_layout_sm").val(i),""!=n&&t(".bt_bb_dialog_enter_layout_xs").val(n),t(".bt_bb_dialog_pick_layout").click(function(b){var _=t(this).attr("title").replace(/\s/gm,"");t(".bt_bb_dialog_enter_layout").parent().removeClass("bt_bb_layout_error_alert"),t(".bt_bb_dialog_enter_layout").val(_),"bt_bb_row"!=window.bt_bb_base&&"bt_bb_row_inner"!=window.bt_bb_base||("1/2+1/2"==_?t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1"):"1/3+1/3+1/3"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1+1/1")):"1/4+1/4+1/4+1/4"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/2+1/2+1/2+1/2"),t(".bt_bb_dialog_enter_layout_md").val("1/2+1/2+1/2+1/2")):"2/3+1/3"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1")):"1/3+2/3"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1")):"3/4+1/4"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1")):"1/4+3/4"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1")):"1/4+2/4+1/4"==_?(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1+1/1")):"1/5+1/5+1/5+1/5+1/5"==_&&(t(".bt_bb_dialog_enter_layout_xs").val("1/1+1/1+1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_sm").val("1/1+1/1+1/1+1/1+1/1"),t(".bt_bb_dialog_enter_layout_md").val("1/1+1/1+1/1+1/1+1/1")))}),t(".bt_bb_dialog_enter_layout").keypress(function(t){13==t.which&&t.preventDefault()}),t(".bt_bb_dialog_add_horizontal .bt_bb_dialog_button").click(function(b){bt_bb_add_horizontal(window.bt_bb_state_current,[t(".bt_bb_dialog_enter_layout_xl").val(),t(".bt_bb_dialog_enter_layout_lg").val(),t(".bt_bb_dialog_enter_layout_md").val(),t(".bt_bb_dialog_enter_layout_sm").val(),t(".bt_bb_dialog_enter_layout_xs").val()])&&window.bt_bb_dialog.hide()})}},function(t,b,_){"use strict";window.bt_bb_edit_layout_classic=function(){let t=jQuery;for(var b=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from),_="",e=0;e<b.children.length;e++){var a=window.bt_bb_map[b.children[e].base].width_param;_+=attr_to_obj(b.children[e].attr)[a],e<b.children.length-1&&(_+="+")}t("#bt_bb_dialog").addClass("bt_bb_dialog_add_horizontal bt_bb_dialog_add_horizontal_classic");t("#bt_bb_dialog .bt_bb_dialog_content").html('<div class="bt_bb_dialog_pick_layout_container"><span class="bt_bb_dialog_pick_layout bt_bb_dialog_11" title="1/1"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_12_12" title="1/2+1/2"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_13_13_13" title="1/3+1/3+1/3"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_14_14_14" title="1/4+1/4+1/4+1/4"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_23_13" title="2/3+1/3"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_13_23" title="1/3+2/3"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_34_14" title="3/4+1/4"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_34" title="1/4+3/4"></span><span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_24_14" title="1/4+2/4+1/4"></span></div><div class="bt_bb_dialog_enter_layout_container"><div contenteditable="true" class="bt_bb_dialog_enter_layout">1/1</div></div>'),t("#bt_bb_dialog").append('<input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small" value="'+window.bt_bb_text.submit+'">'),""!=_&&t(".bt_bb_dialog_enter_layout").html(_),t(".bt_bb_dialog_pick_layout").click(function(b){t(".bt_bb_dialog_enter_layout").html(t(this).attr("title").replace(/\s/gm,"")),t(".bt_bb_dialog_enter_layout").focus()}),t(".bt_bb_dialog_enter_layout").keypress(function(b){13==b.which&&(b.preventDefault(),bt_bb_add_horizontal_classic(window.bt_bb_state_current,t(this).html()),window.bt_bb_dialog.hide())}),t(".bt_bb_dialog_add_horizontal .bt_bb_dialog_button").click(function(b){bt_bb_add_horizontal_classic(window.bt_bb_state_current,t(".bt_bb_dialog_enter_layout").html()),window.bt_bb_dialog.hide()})}},function(t,b,_){"use strict";window.bt_bb_add_horizontal=function(t,b){let _=jQuery;if(void 0!==b){for(var e=[],a=function(t,b){e.push(t);var _=!1;if(""==(t=t.replace(/\s/gm,""))&&b>0)_=!1;else if(""==t)_=!0;else{var a=t.split("+");if(a.length>12)_=!0;else{var i=0,n=[],o=[];for(let t=0;t<a.length;t++){var d=a[t].split("/");if(2!=d.length){_=!0;break}var s=parseInt(d[0]);n.push(s);var r=parseInt(d[1]);if(o.push(r),s<1||s>12||r<1||r>12){_=!0;break}}if(!_){for(let t=0;t<n.length;t++){var l=12*n[t]/o[t];if(!Number.isInteger(l)&&window.bt_bb_custom_elements||!Number.isInteger(l)&&!Number.isInteger(l/2.4)){_=!0;break}i+=l}(12!=i&&0==b||!Number.isInteger(i/12))&&(_=!0)}}}return!_},i=function(t){return(t.match(/\+/g)||[]).length},n=!1,o=0;o<b.length;o++)if(!a(b[o],o)){n=!0;break}if(_(".bt_bb_dialog_enter_layout").parent().removeClass("bt_bb_layout_error_alert"),n)return _(".bt_bb_dialog_enter_layout").eq(o).parent().addClass("bt_bb_layout_error_alert"),setTimeout(function(){alert(window.bt_bb_text.layout_error)},300),!1;var d=i(b[0]);for(let t=1;t<b.length;t++){let e=i(b[t]);if(d!=e&&e>0)return _(".bt_bb_dialog_enter_layout").parent().removeClass("bt_bb_layout_error_alert"),_(".bt_bb_dialog_enter_layout").eq(t).parent().addClass("bt_bb_layout_error_alert"),setTimeout(function(){alert(window.bt_bb_text.number_columns)},300),!1}var s=window.bt_bb_from,r=e[0].split("+"),l=e[1].split("+"),c=e[2].split("+"),p=e[3].split("+"),w=e[4].split("+");for(let e=0;e<t.children.length;e++){if(s.bt_ends_with(t.children[e].key)){var h=t.children[e].children.length;if(h>0)if(r.length>=h){for(let b=0;b<h;b++){for(var m in window.bt_bb_map[window.bt_bb_base].accept);var u=window.bt_bb_map[m].width_param;(g=attr_to_obj(t.children[e].children[b].attr))[u]=r[b],g.width_lg=l[b],g.width_md=c[b],g.width_sm=p[b],g.width_xs=w[b],t.children[e].children[b].attr=JSON.stringify(g)}for(let b=h;b<r.length;b++){var v={};for(var m in window.bt_bb_map[window.bt_bb_base].accept);v.title=m,v.base=m,v.key=bt_bb_get_key(),v.children=[];u=window.bt_bb_map[m].width_param;v.attr='{"'+u+'":'+bt_bb_json_encode(r[b])+', "width_lg":'+bt_bb_json_encode(l[b])+', "width_md":'+bt_bb_json_encode(c[b])+', "width_sm":'+bt_bb_json_encode(p[b])+', "width_xs":'+bt_bb_json_encode(w[b])+"}";var g=attr_to_obj(v.attr);void 0!==window.bt_bb_map[v.base]&&void 0!==window.bt_bb_map[v.base].params&&_.each(window.bt_bb_map[v.base].params,function(t,b){b.hasOwnProperty("value")&&"string"==typeof b.value?g[b.param_name]=bt_bb_special_char_encode(b.value):b.hasOwnProperty("value")&&b.hasOwnProperty("default")&&(g[b.param_name]=b.default)}),v.attr=JSON.stringify(g),bt_bb_insert_inside(t,window.bt_bb_from,v)}}else{for(let b=0;b<r.length;b++){for(var m in window.bt_bb_map[window.bt_bb_base].accept);u=window.bt_bb_map[m].width_param;(g=attr_to_obj(t.children[e].children[b].attr))[u]=r[b],g.width_lg=l[b],g.width_md=c[b],g.width_sm=p[b],g.width_xs=w[b],t.children[e].children[b].attr=JSON.stringify(g)}bt_bb_delete_obj(t,t.children[e].children[r.length].key,h-r.length)}else for(let b=0;b<r.length;b++){v={};for(var m in window.bt_bb_map[window.bt_bb_base].accept);v.title=m,v.base=m,v.key=bt_bb_get_key(),v.children=[];u=window.bt_bb_map[m].width_param;v.attr='{"'+u+'":'+bt_bb_json_encode(r[b])+', "width_lg":'+bt_bb_json_encode(l[b])+', "width_md":'+bt_bb_json_encode(c[b])+', "width_sm":'+bt_bb_json_encode(p[b])+', "width_xs":'+bt_bb_json_encode(w[b])+"}";g=attr_to_obj(v.attr);void 0!==window.bt_bb_map[v.base]&&void 0!==window.bt_bb_map[v.base].params&&_.each(window.bt_bb_map[v.base].params,function(t,b){b.hasOwnProperty("value")&&"string"==typeof b.value?g[b.param_name]=bt_bb_special_char_encode(b.value):b.hasOwnProperty("value")&&b.hasOwnProperty("default")&&(g[b.param_name]=b.default)}),v.attr=JSON.stringify(g),bt_bb_insert_inside(t,window.bt_bb_from,v)}return window.bt_bb_action="refresh",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event"),!0}if(!0===bt_bb_add_horizontal(t.children[e],b))return!0}}else window.bt_bb_dialog.show("add_horizontal")}},function(t,b,_){"use strict";window.bt_bb_add_horizontal_classic=function(t,b){jQuery;if(void 0!==b){var _=!1;if(""==(b=b.replace(/\s/gm,"").replace(/<\/?[^>]+(>|$)/gm,"")))_=!0;else{var e=b.split("+");if(e.length>12)_=!0;else{for(var a=0,i=[],n=[],o=0;o<e.length;o++){var d=e[o].split("/");if(2!=d.length){_=!0;break}var s=parseInt(d[0]);i.push(s);var r=parseInt(d[1]);if(n.push(r),s<1||s>12||r<1||r>12){_=!0;break}}if(!_){for(var l=0;l<i.length;l++){var c=12*i[l]/n[l];if(c!=Math.floor(c)&&(2.4!=c||window.bt_bb_custom_elements)){_=!0;break}a+=c}12!=a&&(_=!0)}}}if(_)return void alert(window.bt_bb_text.layout_error);var p=window.bt_bb_from;for(o=0;o<t.children.length;o++){if(p.bt_ends_with(t.children[o].key)){var w=t.children[o].children.length;if(w>0)if(e.length>=w){for(l=0;l<w;l++){for(var h in window.bt_bb_map[window.bt_bb_base].accept);var m=window.bt_bb_map[h].width_param;(v=attr_to_obj(t.children[o].children[l].attr))[m]=e[l],t.children[o].children[l].attr=JSON.stringify(v)}for(l=w;l<e.length;l++){var u={};for(var h in window.bt_bb_map[window.bt_bb_base].accept);u.title=h,u.base=h,u.key=bt_bb_get_key(),u.children=[];m=window.bt_bb_map[h].width_param;u.attr='{"'+m+'":'+bt_bb_json_encode(e[l])+"}",bt_bb_insert_inside(t,window.bt_bb_from,u)}}else{for(l=0;l<e.length;l++){for(var h in window.bt_bb_map[window.bt_bb_base].accept);var v;m=window.bt_bb_map[h].width_param;(v=attr_to_obj(t.children[o].children[l].attr))[m]=e[l],t.children[o].children[l].attr=JSON.stringify(v)}bt_bb_delete_obj(t,t.children[o].children[e.length].key,w-e.length)}else for(l=0;l<e.length;l++){u={};for(var h in window.bt_bb_map[window.bt_bb_base].accept);u.title=h,u.base=h,u.key=bt_bb_get_key(),u.children=[];m=window.bt_bb_map[h].width_param;u.attr='{"'+m+'":'+bt_bb_json_encode(e[l])+"}",bt_bb_insert_inside(t,window.bt_bb_from,u)}return window.bt_bb_action="refresh",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event"),!0}if(!0===bt_bb_add_horizontal_classic(t.children[o],b))return!0}}else window.bt_bb_dialog.show("add_horizontal")}},function(t,b,_){"use strict";window.bt_bb_resize_h_helper=function(t){"_root"==t.title&&(t=t.children);for(let l=0;l<t.length;l++){if(void 0!==window.bt_bb_map[t[l].title]&&"horizontal"==window.bt_bb_map[t[l].title].container&&void 0!==t[l].children){var b=!1,_=!1,e=[],a=[],i=t[l].children.length;for(let _=0;_<i;_++){if(void 0===window.bt_bb_map[t[l].children[_].title]||void 0===window.bt_bb_map[t[l].children[_].title].width_param){b=!0;break}var n=window.bt_bb_map[t[l].children[_].title].width_param;void 0===t[l].children[_].attr&&(t[l].children[_].attr="{}"),(s=attr_to_obj(t[l].children[_].attr)).hasOwnProperty(n)||(s[n]="1/12");var o=s[n].split("/");e.push(parseInt(o[0])),a.push(parseInt(o[1]))}var d=0;for(let t=0;t<e.length;t++){if((r=12*e[t]/a[t])!=Math.floor(r)&&(2.4!=r||window.bt_bb_custom_elements)){_=!0;break}d+=r}if(!b&&(12!=d||_))for(let b=0;b<i;b++){var s;n=window.bt_bb_map[t[l].children[b].title].width_param;(s=attr_to_obj(t[l].children[b].attr))[n]="1/"+i,12==i?(s.width_lg="1/6",s.width_md="1/1",s.width_sm="1/1",s.width_xs="1/1"):6==i?(s.width_lg="1/3",s.width_md="1/1",s.width_sm="1/1",s.width_xs="1/1"):5==i?(s.width_lg="1/5",s.width_md="1/1",s.width_sm="1/1",s.width_xs="1/1"):4==i?(s.width_lg="1/4",s.width_md="1/2",s.width_sm="1/2",s.width_xs="1/1"):3==i?(s.width_lg="1/3",s.width_md="1/1",s.width_sm="1/1",s.width_xs="1/1"):2==i?(s.width_lg="1/2",s.width_md="1/2",s.width_sm="1/2",s.width_xs="1/1"):(s.width_lg="1/1",s.width_md="1/1",s.width_sm="1/1",s.width_xs="1/1"),e[b]=1,a[b]=i,t[l].children[b].attr=JSON.stringify(s)}_=!1;for(let t=0;t<e.length;t++){var r;if((r=12*e[t]/a[t])!=Math.floor(r)&&(2.4!=r||window.bt_bb_custom_elements)){_=!0;break}}t[l].has_alert=_?"bt_bb_item_alert":void 0}void 0!==t[l].children&&bt_bb_resize_h(t[l].children)}}},function(t,b,_){"use strict";window.bt_bb_resize_h_helper_classic=function(t){"_root"==t.title&&(t=t.children);for(var b=0;b<t.length;b++){if(void 0!==window.bt_bb_map[t[b].title]&&"horizontal"==window.bt_bb_map[t[b].title].container&&void 0!==t[b].children){for(var _=!1,e=!1,a=[],i=[],n=0;n<t[b].children.length;n++){if(void 0===window.bt_bb_map[t[b].children[n].title]||void 0===window.bt_bb_map[t[b].children[n].title].width_param){_=!0;break}var o=window.bt_bb_map[t[b].children[n].title].width_param;void 0===t[b].children[n].attr&&(t[b].children[n].attr="{}"),(l=attr_to_obj(t[b].children[n].attr)).hasOwnProperty(o)||(l[o]="1/12");var d=l[o].split("/");a.push(parseInt(d[0])),i.push(parseInt(d[1]))}for(var s=0,r=0;r<a.length;r++){if((c=12*a[r]/i[r])!=Math.floor(c)&&(2.4!=c||window.bt_bb_custom_elements)){e=!0;break}s+=c}if(!_&&(12!=s||e))for(n=0;n<t[b].children.length;n++){var l;o=window.bt_bb_map[t[b].children[n].title].width_param;(l=attr_to_obj(t[b].children[n].attr))[o]="1/"+t[b].children.length,a[n]=1,i[n]=t[b].children.length,t[b].children[n].attr=JSON.stringify(l)}e=!1;for(r=0;r<a.length;r++){var c;if((c=12*a[r]/i[r])!=Math.floor(c)&&(2.4!=c||window.bt_bb_custom_elements)){e=!0;break}}t[b].has_alert=e?"bt_bb_item_alert":void 0}void 0!==t[b].children&&bt_bb_resize_h(t[b].children)}}},function(t,b,e){"use strict";var a,i,n,o;window.bt_bb={},window.bt_bb.cache={},window.bt_bb.min_width=200,window.bt_bb.padding=10,window.bt_bb_state=[],window.bt_bb_state_pointer=-1,window.bt_bb_state_current=null,window.bt_bb_dirty=!1,a=jQuery,i=BTReact.createClass({render:function(){var t="",b="bt_bb_wrap",_="bt_bb_item";if(void 0!==this.props.data.has_alert&&(_+=" bt_bb_item_alert"),void 0!==this.props.data.extra_class&&(_=_+" "+this.props.data.extra_class),void 0!==window.bt_bb_map[this.props.data.base]&&(void 0!==window.bt_bb_map[this.props.data.base].container&&"horizontal"==window.bt_bb_map[this.props.data.base].container&&(t="bt_bb_horizontal"),void 0!==window.bt_bb_map[this.props.data.base].highlight&&!0===window.bt_bb_map[this.props.data.base].highlight&&(_+=" bt_bb_item_highlight"),void 0!==window.bt_bb_map[this.props.data.base].icon&&(_=_+" bt_bb_icon "+window.bt_bb_map[this.props.data.base].icon),void 0!==window.bt_bb_map[this.props.data.base].width_param&&void 0!==this.props.data.attr)){var e=(u=JSON.parse(this.props.data.attr))[window.bt_bb_map[this.props.data.base].width_param];void 0!==e&&(e=e.split("/"),b=b+" bt_bb_is_width bt_bb_width bt_bb_width"+(e=Math.round(12*e[0]/e[1])))}var n=this.props.data.key,d=this.props.data.base,s=this.props.data.children.map(function(t,b){return void 0===t.key&&(t.key="bt_bb_"+bt_bb_get_key()),BTReact.createElement(i,{key:t.key,data:t,p_key:n,p_base:d})});if(this.props.data.p_key=this.props.p_key,this.props.data.p_base=this.props.p_base,"_content"==this.props.data.base)return BTReact.createElement("div",{className:b},BTReact.createElement("div",{className:_,"data-base":this.props.data.base},BTReact.createElement("div",{className:"bt_bb_toolbar"},"]...[",BTReact.createElement(o,{has_params:"true"})),BTReact.createElement("div",{className:"bt_bb_content",dangerouslySetInnerHTML:{__html:window.switchEditors.wpautop(this.props.data.content)}})));var r=void 0!==window.bt_bb_map[this.props.data.base]&&void 0!==window.bt_bb_map[this.props.data.base].params&&window.bt_bb_map[this.props.data.base].params.length>0?"true":"false",l="";if("true"==r)for(var c=bt_bb_get_param(this.props.data.base,"params"),p=!1,w="",h=0;h<c.length;h++)if(void 0!==c[h].preview||void 0!==c[h].holder&&""!=c[h].holder){var m="";if(void 0!==this.props.data.attr)var u=JSON.parse(this.props.data.attr);if(void 0!==this.props.data.attr&&void 0!==u[c[h].param_name])m=u[c[h].param_name];else if("checkbox"==c[h].type||"checkbox_group"==c[h].type)m=void 0!==c[h].default?c[h].default:"";else if("object"==typeof c[h].value)if(void 0!==c[h].default)m=c[h].default;else{var v=Object.keys(c[h].value);m=c[h].value[v[0]]}else void 0!==c[h].value&&(m=c[h].value);if("attach_image"==c[h].type&&!p){w=this.props.data.key;var g=m,f=localStorage.getItem("bt_bb_cache_"+g);null!==f&&(void 0===window.bt_bb.cache[g]&&(window.bt_bb.cache[g]={}),window.bt_bb.cache[g].url=f),""==g?a("."+w+">.bt_bb_toolbar").css("background-image",""):void 0!==window.bt_bb.cache[g]?setTimeout(function(){a("."+w+">.bt_bb_toolbar").css("background-image","url("+window.bt_bb.cache[g].url+")")},100):a(window).load(function(){wp.media.ajax({data:{action:"get-attachment",id:g}}).done(function(t,b,_){if(void 0!==t.sizes){var e="";void 0!==t.sizes.thumbnail?e=t.sizes.thumbnail.url:void 0!==t.sizes.full&&t.sizes.full.width<=300&&t.sizes.full.height<=300&&(e=t.sizes.full.url),""!=e?(a("."+w+">.bt_bb_toolbar").css("background-image","url("+e+")"),window.bt_bb.cache[t.id]={},window.bt_bb.cache[t.id].url=e,localStorage.setItem("bt_bb_cache_"+t.id,e)):localStorage.removeItem("bt_bb_cache_"+t.id)}})}),m="",p=!0}if("iconpicker"==c[h].type)if("string"==typeof m&&""!=m){var y=m;m='<span class="bt_bb_icon_preview bt_bb_icon_preview_'+y.slice(0,-5)+'" data-icon-code="&#x'+y.substr(-4)+'"></span>'}else m="";else if("colorpicker"==c[h].type)m='<span style="color:'+m+';font-weight: bold;">'+m+"</span>";else if("textarea_object"==c[h].type)try{m=window.bt_bb_b64DecodeUnicode(m)}catch(t){}else void 0!==window["bt_bb_cf_"+c[h].type+"_param_value_preview"]&&(m=window["bt_bb_cf_"+c[h].type+"_param_value_preview"](m));"string"==typeof m&&(m=m.split("%$%")[0]),m=void 0!==c[h].preview_strong?'<span class="bt_bb_preview_strong">'+m+"</span>":'<span class="bt_bb_preview_normal">'+m+"</span>",l+=bt_bb_special_char_decode(m)}var k=void 0!==window.bt_bb_map[this.props.data.base]&&1==window.bt_bb_map[this.props.data.base].toggle?"true":"false",x=this.props.data.base;if(void 0!==window.bt_bb_map[this.props.data.base]&&void 0!==window.bt_bb_map[this.props.data.base].name&&"1"!=window.bt_bb_settings.tag_as_name&&(x=window.bt_bb_map[this.props.data.base].name),l='<span class="bt_bb_preview_name">'+x+"</span>"+l,p&&(_=_+" bt_bb_image_preview "+w),void 0!==window.bt_bb_map[this.props.data.base]&&void 0!==window.bt_bb_map[this.props.data.base].container){var O=window.bt_bb_map[this.props.data.base].container;return BTReact.createElement("div",{className:b},BTReact.createElement("div",{className:_,"data-base":this.props.data.base,"data-container":O},BTReact.createElement("div",{className:"bt_bb_toolbar"},BTReact.createElement("span",{className:"bt_bb_preview",dangerouslySetInnerHTML:{__html:l}}),BTReact.createElement(o,{container:O,mapped:"true",has_params:r,toggle:k})),BTReact.createElement("div",{className:t},s)))}var C=window.bt_bb_map[this.props.data.base],S="bt_bb_toolbar",j="true";return null!=C&&!1!==C.is_mapped||(j="false",window.bt_bb_map[this.props.data.base]={},window.bt_bb_map[this.props.data.base].is_mapped=!1,window.bt_bb_map[this.props.data.base].show_settings_on_create=!1,window.bt_bb_map[this.props.data.base].base=this.props.data.base,window.bt_bb_map[this.props.data.base].description=this.props.data.base,window.bt_bb_map[this.props.data.base].name=this.props.data.base,window.bt_bb_map[this.props.data.base].params=[],S="bt_bb_toolbar bt_bb_alert"),BTReact.createElement("div",{className:b},BTReact.createElement("div",{className:_,"data-base":this.props.data.base},BTReact.createElement("div",{className:S},""!=l?BTReact.createElement("span",{className:"bt_bb_preview",dangerouslySetInnerHTML:{__html:l}}):"",BTReact.createElement(o,{has_params:r,toggle:k,mapped:j})),BTReact.createElement("div",{className:t},s)))}}),n=BTReact.createClass({getInitialState:function(){return{data:this.props.data}},render:function(){var t=this.state.data.children.map(function(t,b){return BTReact.createElement(i,{key:t.key,data:t})});return BTReact.createElement("div",{className:"bt_bb_item_list"},t)},componentDidMount:function(){this.getDOMNode().addEventListener("bt_bb_event",this.handle),window.bt_bb_state_current=this.state.data},componentDidUpdate:function(){var t=0;a(".bt_bb_item_list > .bt_bb_wrap").each(function(){t++;var b=a(this).find(".bt_bb_preview_name").first().data("title");void 0===b&&(b=a(this).find(".bt_bb_preview_name").first().html(),a(this).find(".bt_bb_preview_name").first().data("title",b)),a(this).find(".bt_bb_preview_name").first().html('<span class="bt_bb_order" title="'+window.bt_bb_text.preview+'"><span class="bt_bb_order_inner">'+t+"</span></span>"+b)})},componentWillUnmount:function(){this.getDOMNode().removeEventListener("bt_bb_event",this.handle)},handle:function(t){if(void 0===window.bt_bb_alo[window.bt_bb_action]?window.bt_bb_alo[window.bt_bb_action]=1:window.bt_bb_alo[window.bt_bb_action]++,window.bt_bb_callback_action=null,"move_up"==window.bt_bb_action){var b=bt_bb_get_obj_copy_by_id(this.state.data,window.bt_bb_from);bt_bb_insert_before(this.state.data,window.bt_bb_to,b),window.bt_bb_ctrl||bt_bb_delete_obj(this.state.data,window.bt_bb_from)}else if("move_down"==window.bt_bb_action){b=bt_bb_get_obj_copy_by_id(this.state.data,window.bt_bb_from);bt_bb_insert_after(this.state.data,window.bt_bb_to,b),window.bt_bb_ctrl||bt_bb_delete_obj(this.state.data,window.bt_bb_from)}else if("move_inside"==window.bt_bb_action)bt_bb_insert_inside(this.state.data,window.bt_bb_to,bt_bb_get_obj_copy_by_id(this.state.data,window.bt_bb_from))&&(window.bt_bb_ctrl||bt_bb_delete_obj(this.state.data,window.bt_bb_from));else if("delete"==window.bt_bb_action)bt_bb_delete_obj(this.state.data,window.bt_bb_from);else if("add_root"==window.bt_bb_action||"add_root_from_dialog"==window.bt_bb_action){if("add_root"==window.bt_bb_action){if(void 0!==(e=bt_bb_add_root(this.state.data))&&void 0!==window.bt_bb_map[e[1]].auto_add){var _={};_.title=window.bt_bb_map[e[1]].auto_add,_.base=window.bt_bb_map[e[1]].auto_add,_.key=bt_bb_get_key(),_.children=[],bt_bb_insert_inside(this.state.data,e[0],_)}}else var e=bt_bb_add_root(this.state.data,window.bt_bb_base);void 0!==e&&!1!==bt_bb_get_param(e[1],"show_settings_on_create")&&(window.bt_bb_from=e[0],window.bt_bb_callback_action="edit")}else if("add"==window.bt_bb_action||"add_from_dialog"==window.bt_bb_action){if("add"==window.bt_bb_action)e=bt_bb_add(this.state.data);else e=bt_bb_add(this.state.data,window.bt_bb_base);if(void 0!==e&&!1!==bt_bb_get_param(e[1],"show_settings_on_create"))window.bt_bb_from=e[0],window.bt_bb_callback_action="edit";else if(void 0!==e&&!0!==bt_bb_get_param(e[1],"show_settings_on_create")){var i,n=bt_bb_get_param(e[1],"accept"),o=0;for(i in n)n.hasOwnProperty(i)&&o++;void 0!==n&&!0===n._content&&1==o&&(window.bt_bb_from=e[0],window.bt_bb_base=e[1],window.bt_bb_callback_action="add")}}else"add_horizontal"==window.bt_bb_action?window.bt_bb_custom_elements||!window.bt_bb_responsive_override_layout?bt_bb_add_horizontal_classic(this.state.data):bt_bb_add_horizontal(this.state.data):"edit"==window.bt_bb_action?bt_bb_edit(this.state.data,window.bt_bb_from):"clone"==window.bt_bb_action?bt_bb_clone(this.state.data,window.bt_bb_from):"update_state"==window.bt_bb_action?this.replaceState({data:window.bt_bb_state_current},window.bt_bb_state_callback):"copy"==window.bt_bb_action?(bt_bb_copy(this.state.data,window.bt_bb_from),a(".bt_bb_cb_items").addClass("bt_bb_cb_items_flash").delay(500).queue(function(t){a(this).removeClass("bt_bb_cb_items_flash"),t()})):"copy_plus"==window.bt_bb_action?(bt_bb_copy_plus(this.state.data,window.bt_bb_from),a(".bt_bb_cb_items").addClass("bt_bb_cb_items_flash").delay(500).queue(function(t){a(this).removeClass("bt_bb_cb_items_flash"),t()})):"paste"==window.bt_bb_action?bt_bb_paste(this.state.data,window.bt_bb_from):"paste_before"==window.bt_bb_action&&bt_bb_paste(this.state.data,window.bt_bb_from,!0);null!=window.bt_bb_action&&"edit"!=window.bt_bb_action&&"copy"!=window.bt_bb_action&&"copy_plus"!=window.bt_bb_action&&(bt_bb_resize_h(this.state.data),"update_state"!=window.bt_bb_action&&(bt_bb_push_state(this.state.data),this.replaceState({data:this.state.data},window.bt_bb_state_callback)),this.state.data.children.length>=0&&"update_wp_editor"==window.bt_bb_action&&bt_bb_parse_data(this.state.data),"refresh_on_ready"!=window.bt_bb_action&&"update_wp_editor"!=window.bt_bb_action&&(window.bt_bb_dirty=!0),bt_bb_item_mousedown(),bt_bb_toolbar())}}),o=BTReact.createClass({render:function(){var t=window.bt_bb_text.add;return"horizontal"==this.props.container&&(t=window.bt_bb_text.edit_layout),BTReact.createElement("div",{className:"bt_bb_toolbar_tools"},"true"==this.props.toggle?BTReact.createElement("i",{className:"bt_bb_toggle",title:window.bt_bb_text.toggle}):"","vertical"==this.props.container?BTReact.createElement("i",{className:"bt_bb_add",title:t}):"","horizontal"==this.props.container?BTReact.createElement("i",{className:"bt_bb_add bt_bb_edit_layout",title:t}):"","true"==this.props.has_params?BTReact.createElement("i",{className:"bt_bb_edit",title:window.bt_bb_text.edit}):"",BTReact.createElement("i",{className:"bt_bb_clone",title:window.bt_bb_text.clone}),"true"==this.props.mapped?BTReact.createElement("i",{className:"bt_bb_copy",title:window.bt_bb_text.copy}):"","true"==this.props.mapped?BTReact.createElement("i",{className:"bt_bb_copy_plus",title:window.bt_bb_text.copy_plus}):"","true"==this.props.mapped?BTReact.createElement("i",{className:"bt_bb_paste",title:window.bt_bb_text.paste}):"",BTReact.createElement("i",{className:"bt_bb_delete",title:window.bt_bb_text.delete}))}}),window.bt_bb_parse_data=function(t){window.bt_bb_parse_data_str="",t.children.length>0&&(bt_bb_parse_data_helper(t),window.switchEditors.go("content","tmce"),tinyMCE.get("content").setContent(window.switchEditors.wpautop(window.bt_bb_parse_data_str)))},window.bt_bb_parse_data_helper=function(t){"_root"==t.title&&(t=t.children);for(var b=0;b<t.length;b++){var _=!1;if("_content"==t[b].title&&(_=!0),_)window.bt_bb_parse_data_str+=t[b].content;else{if(window.bt_bb_parse_data_str+="["+t[b].base,void 0!==t[b].attr)for(var e=attr_to_arr(t[b].attr),a=0;a<e.length;a++)window.bt_bb_parse_data_str+=" "+e[a][0]+'="'+e[a][1]+'"';window.bt_bb_parse_data_str+="]"}void 0!==t[b].children&&bt_bb_parse_data_helper(t[b].children),_||(window.bt_bb_parse_data_str+="[/"+t[b].base+"]")}},window.attr_to_arr=function(t){var b=JSON.parse(t),_=[];for(var e in b)_.push([e,b[e]]);return _},window.attr_to_obj=function(t){return JSON.parse(t)},window.bt_bb_resize_h=function(t){window.bt_bb_custom_elements||!window.bt_bb_responsive_override_layout?window.bt_bb_resize_h_helper_classic(t):window.bt_bb_resize_h_helper(t)},window.bt_bb_get_obj_copy_by_id=function(t,b){var _=bt_bb_get_obj_by_id(t,b),e=JSON.parse(JSON.stringify(_));return null!=e&&(e=bt_bb_set_new_keys(e)),e},window.bt_bb_set_new_keys=function(t){t.key=bt_bb_get_key();for(var b=0;b<t.children.length;b++)bt_bb_set_new_keys(t.children[b]);return t},window.bt_bb_delete_obj=function(t,b,_){if("_content"!=t.title)for(var e=0;e<t.children.length;e++){if(b.bt_ends_with(t.children[e].key)){void 0!==_?t.children.splice(e,_):t.children.splice(e,1);break}bt_bb_delete_obj(t.children[e],b,_)}},window.bt_bb_insert_before=function(t,b,_){if("_content"!=t.title)for(var e=0;e<t.children.length;e++){if(b.bt_ends_with(t.children[e].key)){t.children.splice(e,0,_);break}bt_bb_insert_before(t.children[e],b,_)}},window.bt_bb_insert_after=function(t,b,_){if("_content"!=t.title)for(var e=0;e<t.children.length;e++){if(b.bt_ends_with(t.children[e].key)){t.children.splice(e+1,0,_);break}bt_bb_insert_after(t.children[e],b,_)}},window.bt_bb_insert_inside=function(t,b,_){if("_content"!=t.title)for(var e=0;e<t.children.length;e++){if(b.bt_ends_with(t.children[e].key)&&void 0!==t.children[e].children){if(t.children[e].children.push(_),"paste"!=window.bt_bb_action&&"paste_before"!=window.bt_bb_action&&"move_inside"!=window.bt_bb_action&&void 0!==window.bt_bb_map[_.base]&&void 0!==window.bt_bb_map[_.base].auto_add){var i={};i.title=window.bt_bb_map[_.base].auto_add,i.base=window.bt_bb_map[_.base].auto_add,i.key=bt_bb_get_key(),i.children=[];var n={};void 0!==window.bt_bb_map[i.base]&&void 0!==window.bt_bb_map[i.base].params&&a.each(window.bt_bb_map[i.base].params,function(t,b){b.hasOwnProperty("value")&&"string"==typeof b.value?n[b.param_name]=bt_bb_special_char_encode(b):b.hasOwnProperty("value")&&b.hasOwnProperty("default")&&(n[b.param_name]=b.default)}),i.attr=JSON.stringify(n),_.children.push(i)}return!0}if(!0===bt_bb_insert_inside(t.children[e],b,_))return!0}},window.bt_bb_add_root=function(t,b){var _=[];if(void 0!==b?_.push(b):a.each(window.bt_bb_map,function(t,b){1==b.root&&_.push(b.base)}),1==_.length){var e={};e.title=_[0],e.base=_[0],e.key=bt_bb_get_key(),e.children=[];var i={};return void 0!==window.bt_bb_map[e.base]&&void 0!==window.bt_bb_map[e.base].params&&a.each(window.bt_bb_map[e.base].params,function(t,b){b.hasOwnProperty("value")&&"string"==typeof b.value?i[b.param_name]=bt_bb_special_char_encode(b.value):b.hasOwnProperty("value")&&b.hasOwnProperty("default")&&(i[b.param_name]=b.default)}),e.attr=JSON.stringify(i),t.children.push(e),[e.key,e.base]}_.length>1&&window.bt_bb_dialog.show("add_root")},window.bt_bb_add=function(t,b){var _=[];if(void 0!==b?_.push(b):(a.each(window.bt_bb_map,function(t,b){var e;void 0!==window.bt_bb_map[window.bt_bb_base].accept&&(e=window.bt_bb_map[window.bt_bb_base].accept[b.base]),(!0===e||!0===window.bt_bb_map[window.bt_bb_base].accept_all&&!1!==e||void 0!==window.bt_bb_map[b.base].as_child&&-1!=window.bt_bb_map[b.base].as_child.only.indexOf(window.bt_bb_base))&&(void 0===window.bt_bb_map[b.base].as_child||void 0!==window.bt_bb_map[b.base].as_child&&-1!=window.bt_bb_map[b.base].as_child.only.indexOf(window.bt_bb_base))&&_.push(b.base)}),void 0!==window.bt_bb_map[window.bt_bb_base].accept&&!0===window.bt_bb_map[window.bt_bb_base].accept._content&&(_=[]).push("_content")),1==_.length){var e={};e.title=_[0],e.base=_[0],"_content"==e.base&&(e.content=""),e.key=bt_bb_get_key(),e.children=[];var i={};return void 0!==window.bt_bb_map[e.base]&&void 0!==window.bt_bb_map[e.base].params&&a.each(window.bt_bb_map[e.base].params,function(t,b){b.hasOwnProperty("value")&&"string"==typeof b.value?"textarea_object"==b.type?i[b.param_name]=b.value:i[b.param_name]=bt_bb_special_char_encode(b.value):b.hasOwnProperty("value")&&b.hasOwnProperty("default")&&(i[b.param_name]=b.default)}),e.attr=JSON.stringify(i),bt_bb_insert_inside(t,window.bt_bb_from,e),[e.key,e.base]}_.length>1&&window.bt_bb_dialog.show("add")},window.bt_bb_edit=function(t,b){for(var _=0;_<t.children.length;_++){if(b.bt_ends_with(t.children[_].key)){"_content"==t.children[_].title?(window.bt_bb_content=t.children[_].content,window.bt_bb_dialog.show("edit_content")):window.bt_bb_dialog.show("edit");break}bt_bb_edit(t.children[_],b)}},window.bt_bb_clone=function(t,b){a(".bt_bb_toolbar_tools").css("transition","all 0s");for(var _=0;_<t.children.length;_++){if(b.bt_ends_with(t.children[_].key)){if("_root"==t.title||void 0===window.bt_bb_map[t.base]||"horizontal"!=window.bt_bb_map[t.base].container||"horizontal"==window.bt_bb_map[t.base].container&&t.children.length<12){var e=bt_bb_get_obj_copy_by_id(t,b);t.children.splice(_+1,0,e)}break}bt_bb_clone(t.children[_],b)}},window.bt_bb_init_number_items=function(){window.bt_bb_cb_items=localStorage.getItem("bt_bb_cb_items"),null===window.bt_bb_cb_items&&(window.bt_bb_cb_items=0),a(".bt_bb_cb_items").html(window.bt_bb_cb_items)},window.bt_bb_set_number_items=function(t){localStorage.setItem("bt_bb_cb_items",t),a(".bt_bb_cb_items").html(t),window.bt_bb_cb_items=t},window.bt_bb_allowed=function(t,b){if(void 0===b)return!1;var _=window.bt_bb_map[b],e=!1;return(void 0!==_.accept&&!0===_.accept[t]||void 0!==_.accept&&void 0===_.accept[t]&&!0===_.accept_all||void 0===_.accept&&!0===_.accept_all)&&(e=!0),e},window.bt_bb_cb_import=function(t){for(var b=decodeURIComponent(window.bt_bb_b64DecodeUnicode(t)),_=JSON.parse(b),e=1;e<=_.length;e++)localStorage.setItem("bt_bb_cb_"+e,decodeURIComponent(window.bt_bb_b64DecodeUnicode(_[e-1].bt_bb_cb))),bt_bb_set_number_items(_.length)},window.bt_bb_copy=function(t,b){if(window.bt_bb_cb_items>1)for(var _=2;_<=window.bt_bb_cb_items;_++)localStorage.removeItem("bt_bb_cb_"+_);t=bt_bb_get_obj_by_id(t,b),localStorage.setItem("bt_bb_cb_1",JSON.stringify(t)),bt_bb_set_number_items(1)},window.bt_bb_copy_plus=function(t,b){var _=bt_bb_get_obj_by_id(t,b);if(0==window.bt_bb_cb_items)localStorage.setItem("bt_bb_cb_1",JSON.stringify(_)),bt_bb_set_number_items(1);else{var e=JSON.parse(localStorage.getItem("bt_bb_cb_1")),a=!1;void 0!==_.p_base?a=bt_bb_allowed(e.base,_.p_base):void 0!==window.bt_bb_map[_.base].root&&void 0!==window.bt_bb_map[e.base].root&&(a=!0),a?(window.bt_bb_cb_items++,localStorage.setItem("bt_bb_cb_"+window.bt_bb_cb_items,JSON.stringify(_)),bt_bb_set_number_items(window.bt_bb_cb_items)):alert(window.bt_bb_text.not_allowed)}},window.bt_bb_paste=function(t,b,_){if(window.bt_bb_cb_items>0){var e=bt_bb_get_obj_by_id(t,b),a=JSON.parse(localStorage.getItem("bt_bb_cb_1"));if(void 0!==window.bt_bb_map[e.base].root&&void 0!==window.bt_bb_map[a.base].root)for(var i=window.bt_bb_cb_items;i>=1;i--)a=JSON.parse(localStorage.getItem("bt_bb_cb_"+i)),a=bt_bb_set_new_keys(a),_?bt_bb_insert_before(t,b,a):bt_bb_insert_after(t,b,a);else if(bt_bb_allowed(a.base,e.p_base))if(_)for(i=1;i<=window.bt_bb_cb_items;i++)a=JSON.parse(localStorage.getItem("bt_bb_cb_"+i)),a=bt_bb_set_new_keys(a),bt_bb_insert_before(t,b,a);else for(i=window.bt_bb_cb_items;i>=1;i--)a=JSON.parse(localStorage.getItem("bt_bb_cb_"+i)),a=bt_bb_set_new_keys(a),bt_bb_insert_after(t,b,a);else if(bt_bb_allowed(a.base,e.base))for(i=1;i<=window.bt_bb_cb_items;i++)a=JSON.parse(localStorage.getItem("bt_bb_cb_"+i)),a=bt_bb_set_new_keys(a),bt_bb_insert_inside(t,b,a);else alert(window.bt_bb_text.not_allowed)}},window.bt_bb_paste_main_toolbar=function(){var t=JSON.parse(localStorage.getItem("bt_bb_cb_1"));if(void 0!==window.bt_bb_map[t.base].root){for(var b=1;b<=window.bt_bb_cb_items;b++)t=JSON.parse(localStorage.getItem("bt_bb_cb_"+b)),t=bt_bb_set_new_keys(t),window.bt_bb_state_current.children.push(t);bt_bb_event("refresh")}else alert(window.bt_bb_text.not_allowed)},window.bt_bb_dialog={},window.bt_bb_dialog.show=function(t){a("#bt_bb_front_end_preview").hide(),window.bt_bb_dialog.is_showing=!0;var b="";if("add_root"==t){var e=window.bt_bb_text.add_element,i=[];a.each(window.bt_bb_map,function(t,b){1==b.root&&i.push({base:b.base,name:b.name,description:b.description,icon:b.icon})}),i.sort(function(t,b){return t.name.toLowerCase().localeCompare(b.name.toLowerCase())}),a.each(i,function(t,_){b+='<div class="bt_bb_dialog_item bt_bb_dialog_add_element'+_.icon!==void 0?" "+_.icon:'" data-base="'+_.base+'"><b>'+_.name+"</b><i>"+_.description+"</i></div>"}),a("#bt_bb_dialog .bt_bb_dialog_content").html(b),a(".bt_bb_dialog_add_element").click(function(t){window.bt_bb_base=a(this).data("base"),window.bt_bb_dialog.hide(),bt_bb_event("add_root_from_dialog")})}else if("add"==t){e=window.bt_bb_text.add_element,i=[],a.each(window.bt_bb_map,function(t,b){var _;void 0!==window.bt_bb_map[window.bt_bb_base].accept&&(_=window.bt_bb_map[window.bt_bb_base].accept[b.base]),(!0===_||!0===window.bt_bb_map[window.bt_bb_base].accept_all&&!1!==_||void 0!==window.bt_bb_map[b.base].as_child&&-1!=window.bt_bb_map[b.base].as_child.only.indexOf(window.bt_bb_base))&&(void 0===window.bt_bb_map[b.base].as_child||void 0!==window.bt_bb_map[b.base].as_child&&-1!=window.bt_bb_map[b.base].as_child.only.indexOf(window.bt_bb_base))&&!1!==window.bt_bb_map[b.base].is_mapped&&i.push({base:b.base,name:b.name,description:b.description,icon:b.icon})}),i.sort(function(t,b){return t.name.toLowerCase().localeCompare(b.name.toLowerCase())});var n="";n+='<div class="bt_bb_dialog_item bt_bb_add_filter_container">',n+='<input type="text" class="bt_bb_filter" placeholder="'+window.bt_bb_text.filter+'">',n+="</div>",a("#bt_bb_dialog .bt_bb_dialog_header_tools").append(n);var o,d,s=document.createDocumentFragment();a.each(i,function(t,b){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item bt_bb_dialog_add_element"+(void 0!==b.icon?" bt_bb_icon "+b.icon:"")],["data-base",b.base]]),o=bt_bb_create_dom_element("b",[]),d=document.createTextNode(b.name),o.appendChild(d),v.appendChild(o),m=bt_bb_create_dom_element("i",[]),d=document.createTextNode(b.description),m.appendChild(d),v.appendChild(m),s.appendChild(v)}),a("#bt_bb_dialog .bt_bb_dialog_content")[0].appendChild(s),a(".bt_bb_dialog_add_element").click(function(t){window.bt_bb_base=a(this).data("base"),window.bt_bb_dialog.hide(),bt_bb_event("add_from_dialog")}),a(".bt_bb_filter").keyup(function(t){var b=a(this).val();a(".bt_bb_dialog_item").not(".bt_bb_add_filter_container").each(function(){var t=a(this).html().replace(/(<([^>]+)>)/gi,"");new RegExp(b,"i").test(t)?a(this).show():a(this).hide()})})}else if("add_horizontal"==t)e=window.bt_bb_text.edit_layout,window.bt_bb_custom_elements||!window.bt_bb_responsive_override_layout?window.bt_bb_edit_layout_classic():window.bt_bb_edit_layout();else if("edit_content"==t)e=window.bt_bb_text.edit_content,a("#bt_bb_dialog").addClass("bt_bb_dialog_tinymce_container"),a(".bt_bb_dialog_tinymce").show(),a(".bt_bb_dialog_button").unbind("click"),a(".bt_bb_dialog_button").click(function(){window.switchEditors.go("bt_bb_tinymce","tmce");var t=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from);t.content=tinyMCE.get("bt_bb_tinymce").getContent(),t.content.startsWith("<p>[")&&t.content.endsWith("]</p>")&&(t.content=t.content.substring(3),t.content=t.content.substring(0,t.content.length-4)),window.bt_bb_action="refresh",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event"),window.bt_bb_dialog.hide()}),a("#bt_bb_dialog").css("visibility","visible"),a("#bt_bb_dialog .mce-i-resize").show();else if("edit"==t){e=window.bt_bb_text.edit;var r=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from),l={};if(void 0!==r.attr&&(l=attr_to_obj(r.attr)),void 0!==window.bt_bb_map[r.base]){e=e+" "+window.bt_bb_map[r.base].name,a("#bt_bb_dialog").removeClass(),a("#bt_bb_dialog").addClass("bt_bb_dialog "+r.base);var c=window.bt_bb_map[r.base].params;if(void 0!==c){s=document.createDocumentFragment();var p=new Array,w="",h="";window.bt_bb.param_groups=[];for(var m=0;m<c.length;m++){b="";var u="";if(void 0!==l[c[m].param_name]?u=l[c[m].param_name]:l[c[m].param_name]="",w=void 0!==c[m].group?c[m].group:window.bt_bb_text.general,h=" bt_bb_group_"+window.bt_bb_b64EncodeUnicode(w).replace(/[=+\/]/g,""),-1==window.bt_bb.param_groups.indexOf(w)&&window.bt_bb.param_groups.push(w),"attach_images"==c[m].type||"attach_image"==c[m].type){var v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]);b+="<b>"+c[m].heading+"</b>",b+='<div class="bt_bb_dialog_image_container">';var g=u.split(",");if(""!=g[0])for(var f=0;f<g.length;f++)b+='<div class="bt_bb_sortable_item" data-id="'+g[f]+'"><i class="fa fa-times"></i></div>',setTimeout(window.bt_bb_sortable_background,100,g[f]);b+="</div>",b+='<div class="bt_bb_dialog_inline_buttons bt_bb_left">',b+='<input type="button" class="bt_bb_dialog_select_images_button button button-small" value="'+window.bt_bb_text.select+'">',b+="</div>",v.innerHTML=b}else if("textfield"==c[m].type){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]);var y="";""==u?void 0!==c[m].value&&(y=c[m].value,y=bt_bb_special_char_decode(y)):y=bt_bb_special_char_decode(u),v.innerHTML="<b>"+c[m].heading+'</b><input type="text" value="'+y+'">'}else if("datetime-local"==c[m].type)v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),y="",""==u?void 0!==c[m].value&&(y=c[m].value,y=bt_bb_special_char_decode(y)):y=bt_bb_special_char_decode(u),v.innerHTML="<b>"+c[m].heading+'</b><input type="datetime-local" value="'+y+'">';else if("textarea"==c[m].type)(v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]])).innerHTML="<b>"+c[m].heading+'</b><textarea rows="5">'+bt_bb_special_char_decode(u)+"</textarea>";else if("textarea_object"==c[m].type){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]);try{v.innerHTML="<b>"+c[m].heading+'</b><textarea rows="5">'+window.bt_bb_b64DecodeUnicode(u)+"</textarea>"}catch(t){v.innerHTML="<b>"+c[m].heading+'</b><textarea rows="5">'+u+"</textarea>"}}else if("dropdown"==c[m].type||"dropdown_color"==c[m].type){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),c[m].responsive_override&&a(v).addClass("bt_bb_dialog_item_responsive_override"),b+="<b>"+c[m].heading+"</b>";var k=function(t,b){var _="<select>";b&&(_+='<option value="">---</option>');for(var e=c[m].value,a=Object.keys(e),i=!1,n=0;n<a.length;n++)if(t==e[a[n]]){i=!0;break}for(n=0;n<a.length;n++)i&&t==e[a[n]]||!i&&e[a[n]]==c[m].default&&!b?_+='<option value="'+e[a[n]]+'" selected>'+a[n]+"</option>":_+='<option value="'+e[a[n]]+'">'+a[n]+"</option>";return _+="</select>"},x=u.split("%$%");5!=x.length&&(x=[x[0],"","","",""]),b+=k(x[0]),b+='<div class="bt_bb_responsive_override_container">',c[m].responsive_override&&(b+='<div class="bt_bb_responsive_override"><span class="bt_bb_ro bt_bb_ro_lg"></span>',b+=k(x[1],!0),b+="</div>",b+='<div class="bt_bb_responsive_override"><span class="bt_bb_ro bt_bb_ro_md"></span>',b+=k(x[2],!0),b+="</div>",b+='<div class="bt_bb_responsive_override"><span class="bt_bb_ro bt_bb_ro_sm"></span>',b+=k(x[3],!0),b+="</div>",b+='<div class="bt_bb_responsive_override"><span class="bt_bb_ro bt_bb_ro_xs"></span>',b+=k(x[4],!0),b+="</div>"),b+="</div>",v.innerHTML=b}else if("iconpicker"==c[m].type)v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),b+="<b>"+c[m].heading+"</b>",b+=window.bt_bb_iconpicker(c[m].value,u),v.innerHTML=b;else if("colorpicker"==c[m].type)v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item bt_bb_colorpicker"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),b+="<b>"+c[m].heading+"</b>",b+='<input type="text" class="bt_bb_color_picker" value="'+bt_bb_special_char_decode(u)+'" data-alpha-enabled="true">',v.innerHTML=b;else if("link"==c[m].type)v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),y="",""==u?void 0!==c[m].value&&(y=c[m].value,y=bt_bb_special_char_decode(y)):y=bt_bb_special_char_decode(u),v.innerHTML="<b>"+c[m].heading+'</b><input type="text" value="'+y+'">',v.innerHTML+='<input type="search" placeholder="'+window.bt_bb_text.search_content+'" class="bt_bb_search_link"><span class="spinner"></span>',v.innerHTML+='<div class="bt_bb_search_link_results" data-empty-text="'+window.bt_bb_text.no_results+'"></div>';else if("checkbox"==c[m].type){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),b+="<b>"+c[m].heading+"</b>";var O="";u==(C=c[m].value)[(S=Object.keys(C))[0]]&&(O=" checked"),b+='<label for="bt_'+r.base+"_"+c[m].param_name+'"><input id="bt_'+r.base+"_"+c[m].param_name+'" type="checkbox" value="'+C[S[0]]+'"'+O+"><span>"+S[0]+"</span></label>",v.innerHTML=b}else if("checkbox_group"==c[m].type){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]),b+="<b>"+c[m].heading+"</b>";for(var C=c[m].value,S=Object.keys(C),j=u.split(" "),N=0;N<S.length;N++)O="",-1!=a.inArray(C[S[N]],j)&&(O=" checked"),b+='<label for="'+r.base+"_"+c[m].param_name+N+'"><input id="'+r.base+"_"+c[m].param_name+N+'" type="checkbox" value="'+C[S[N]]+'"'+O+"><span>"+S[N]+"</span></label>";v.innerHTML=b}else if("hidden"==c[m].type){var E=new Object;E.name=c[m].param_name,E.value=c[m].value,p.push(E)}else if(void 0!==window["bt_bb_cf_"+c[m].type+"_content"]){v=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+h],["data-param_name",c[m].param_name],["data-type",c[m].type]]);var z={};z.param_heading=c[m].heading,z.param_value=c[m].value,z.param_name=c[m].param_name,z.val=u,z.base=r.base,v.innerHTML=window["bt_bb_cf_"+c[m].type+"_content"](z)}if("hidden"!=c[m].type){if(void 0!==c[m].description){var T=bt_bb_create_dom_element("i",[]);T.innerHTML=c[m].description,v.appendChild(T)}s.appendChild(v)}}a("#bt_bb_dialog").data("hidden",JSON.stringify(p)),a("#bt_bb_dialog .bt_bb_dialog_content")[0].appendChild(s),a(".bt_bb_color_picker").wpColorPicker();var R=function(t,b,_){b.find(".spinner").show(),b.find(".spinner").css("visibility","visible");var e={action:"bt_bb_search_links",search:t,page:_};a.ajax({type:"POST",url:window.BTAJAXURL,data:e,async:!0,success:function(t){var e=JSON.parse(t);e.length<20&&b.data("thats_all",!0);var a=b.find(".bt_bb_search_link_results");1==_&&(a.empty(),a[0].scrollTo(0,0)),e.forEach(function(t,b){var _=t.permalink;1==window.bt_bb_settings.slug_url&&(_=t.slug),a.append('<div data-link="'+_+'" title="'+_+'">'+t.title+"<span>"+t.info+"</span></div>")}),b.find(".spinner").hide(),b.data("page",_)}})};a('div[data-type="link"]').each(function(){var t=a(this);R("",t,1),a(this).find(".bt_bb_search_link").on("input",function(b){var _=(new Date).getTime();void 0!==t.data("last_input_time")&&_-t.data("last_input_time")<500||(t.data("thats_all",!1),setTimeout(function(){R(t.find(".bt_bb_search_link").val(),t,1)},500),t.data("last_input_time",(new Date).getTime()))}),a(this).find(".bt_bb_search_link").on("focus",function(b){t.find(".bt_bb_search_link_results").show()}),a(this).find(".bt_bb_search_link").on("blur",function(b){setTimeout(function(){t.find(".bt_bb_search_link_results").hide()},200)}),a(this).on("click",".bt_bb_search_link_results div",function(){t.find('input[type="text"]').val(a(this).data("link"))}),a(this).find(".bt_bb_search_link_results").on("scroll",function(b){var _=(new Date).getTime();void 0!==t.data("last_scroll_time")&&_-t.data("last_scroll_time")<500||this.scrollTop>.8*(this.scrollHeight-this.clientHeight)&&!t.data("thats_all")&&(R(a(this).val(),t,t.data("page")+1),t.data("last_scroll_time",(new Date).getTime()))})}),a(".bt_bb_iconpicker_select").on("click",function(t){a(this).next().toggle(),a(this).next().next().toggle()}),a(".bt_bb_iconpicker_icons .bt_bb_icon_preview").on("click",function(t){var b=a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon",a(this).data("icon")),b.attr("data-icon-code",a(this).data("icon-code")),b.removeClass(),b.addClass(a(this).attr("class")),a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_iconpicker_select_text").html(a(this).attr("title")),a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_clear").show(),a(this).parent().hide(),a(this).parent().prev().find("input").val("").trigger("keyup"),a(this).parent().prev().hide()}),a(".bt_bb_iconpicker .bt_bb_iconpicker_clear").on("click",function(t){t.stopPropagation();var b=a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon",""),b.attr("data-icon-code",""),b.parent().find(".bt_bb_iconpicker_select_text").html(""),a(this).closest(".bt_bb_iconpicker").find("input").val(""),a(this).parent().next().find("input").val("").trigger("keyup"),a(this).parent().next().hide(),a(this).parent().next().next().hide(),a(this).hide()}),a(".bt_bb_iconpicker .bt_bb_filter").keyup(function(t){var b=a(this).val();a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_icons .bt_bb_icon_preview").each(function(){var t=a(this).attr("title");new RegExp(b,"i").test(t)?a(this).show():a(this).hide()})}),a('#bt_bb_dialog .bt_bb_dialog_item[data-type="attach_images"] .bt_bb_dialog_image_container').sortable({cursor:"move",update:function(t,b){var _=a(this).closest(".bt_bb_dialog_item").data("param_name"),e="";a(this).find(".bt_bb_sortable_item").each(function(){e+=a(this).data("id")+","}),e=e.slice(0,-1),l[_]=e}}),a("#bt_bb_dialog .bt_bb_dialog_image_container").on("click",".fa-times",function(t){var b=a(this).closest(".bt_bb_dialog_item").data("param_name"),_=a(this).closest(".bt_bb_dialog_image_container");a(this).parent().remove();var e="";_.find(".bt_bb_sortable_item").each(function(){e+=a(this).data("id")+","}),e=e.slice(0,-1),l[b]=e}),a("#bt_bb_dialog .bt_bb_dialog_image_container").disableSelection(),a(".bt_bb_dialog_item").on("click",".bt_bb_dialog_select_images_button",function(t){var b=bt_bb_get_key(),e=a(this).closest(".bt_bb_dialog_item").find(".bt_bb_dialog_image_container"),i=a(this).closest(".bt_bb_dialog_item").data("param_name"),n="add";"attach_image"==a(this).closest(".bt_bb_dialog_item").data("type")&&(n=!1);var o=wp.media.controller.Library.extend({defaults:_.defaults({id:b,title:window.bt_bb_text.select_images,allowLocalEdits:!1,displaySettings:!1,displayUserSettings:!1,multiple:n,type:"image"},wp.media.controller.Library.prototype.defaults)}),d=wp.media({button:{text:window.bt_bb_text.select},state:b,states:[new o]});d.on("close",function(){var t=d.state(b).get("selection"),_="",a="";t.each(function(t){if(void 0!==t.attributes.sizes){var b="";b=void 0!==t.attributes.sizes.thumbnail?t.attributes.sizes.thumbnail.url:t.attributes.sizes.full.url,a+=t.id+",",window.bt_bb.cache[t.id]={},window.bt_bb.cache[t.id].url=b,window.bt_bb.cache[t.id].title=t.attributes.title,_+='<div class="bt_bb_sortable_item" data-id="'+t.id+'" style="background-image:url(\''+b+'\');"><i class="fa fa-times"></i></div>',e.html(_)}}),a=a.slice(0,-1),l[i]=a}),d.on("open",function(){var t=d.state(b).get("selection");e.find(".bt_bb_sortable_item").each(function(){var b=wp.media.attachment(a(this).data("id"));t.add(b)})}),d.open()})}}window.bt_bb.param_groups.length>0&&a(".bt_bb_dialog_item").hide(),a.each(window.bt_bb.param_groups,function(t,b){var _="bt_bb_group_tab";0==t&&(_="bt_bb_group_tab bt_bb_group_tab_active",a(".bt_bb_group_"+window.bt_bb_b64EncodeUnicode(b).replace(/[=+\/]/g,"")).show()),a(".bt_bb_dialog_header_tools").append('<span class="'+_+'">'+b+"</span>")}),a("#bt_bb_dialog .bt_bb_group_tab").click(function(t){var b=a(this).html();a(".bt_bb_dialog_item").hide(),a(".bt_bb_group_"+window.bt_bb_b64EncodeUnicode(b).replace(/[=+\/]/g,"")).show(),a(".bt_bb_group_tab").removeClass("bt_bb_group_tab_active"),a(this).addClass("bt_bb_group_tab_active"),window.bt_bb_resize_dialog()}),a("#bt_bb_dialog").append('<input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small" value="'+window.bt_bb_text.submit+'">'),a("#bt_bb_dialog .bt_bb_dialog_button").click(function(t){a("#bt_bb_dialog .bt_bb_dialog_item").each(function(){var t=a(this).data("param_name"),b=a(this).data("type");if("textfield"==b||"datetime-local"==b||"colorpicker"==b||"link"==b)l[t]=bt_bb_special_char_encode(a(this).find("input").val());else if("checkbox"==b)a(this).find("input").prop("checked")?l[t]=a(this).find("input").val():l[t]="";else if("checkbox_group"==b){var _=[];a(this).find("input").each(function(){a(this).prop("checked")&&_.push(a(this).val())}),l[t]=_.join(" ")}else if("textarea"==b)l[t]=bt_bb_special_char_encode(a(this).find("textarea").val());else if("textarea_object"==b)try{l[t]=window.bt_bb_b64EncodeUnicode(a(this).find("textarea").val())}catch(b){l[t]=a(this).find("textarea").val()}else if("dropdown"==b)if(a(this).hasClass("bt_bb_dialog_item_responsive_override")){var e=[];a(this).find("select :selected").each(function(){e.push(a(this).val())}),l[t]=e.join("%$%")}else l[t]=a(this).find("select :selected").val();else"iconpicker"==b?l[t]=a(this).find(".bt_bb_iconpicker_select .bt_bb_icon_preview").data("icon"):void 0!==window["bt_bb_cf_"+b+"_on_submit"]&&(l[t]=window["bt_bb_cf_"+b+"_on_submit"](a(this)))});for(var b=JSON.parse(a("#bt_bb_dialog").data("hidden")),_=0;_<b.length;_++)l[""+b[_].name]=b[_].value;r.attr=JSON.stringify(l),window.bt_bb_dialog.hide(),window.bt_bb_action="refresh",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")})}else if("manage_cb"==t)e=window.bt_bb_text.manage_cb,b+='<div class="bt_bb_dialog_item">',b+='<input type="text" class="bt_bb_impex_input">',b+="</div>",a("#bt_bb_dialog .bt_bb_dialog_content").html(b),a("#bt_bb_dialog").append('<div class="bt_bb_dialog_inline_buttons"><input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small bt_bb_button_export" value="'+window.bt_bb_text.export+'"><input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small bt_bb_button_import" value="'+window.bt_bb_text.import+'"></div>'),a("#bt_bb_dialog .bt_bb_button_export").click(function(t){if(window.bt_bb_cb_items>0){for(var b="[",_=1;_<=window.bt_bb_cb_items;_++)b+='{"bt_bb_cb":"'+window.bt_bb_b64EncodeUnicode(encodeURIComponent(localStorage.getItem("bt_bb_cb_"+_)))+'"},';b=b.substring(0,b.length-1),b+="]",a(".bt_bb_impex_input").val(window.bt_bb_b64EncodeUnicode(encodeURIComponent(b))),a(".bt_bb_impex_input").select()}}),a("#bt_bb_dialog .bt_bb_button_import").click(function(t){a(".bt_bb_impex_input").val()&&bt_bb_cb_import(a(".bt_bb_impex_input").val())});else if("sc_mapper"==t){e=window.bt_bb_text.sc_mapper,a("#bt_bb_dialog").addClass("bt_bb_dialog_sc_mapper_container"),n="",n+='<div class="bt_bb_dialog_item bt_bb_sc_mapper_filter_container">',n+='<input type="text" class="bt_bb_filter" placeholder="'+window.bt_bb_text.filter+'">',n+="</div>",a("#bt_bb_dialog .bt_bb_dialog_header_tools").append(n);var J=function(t){var b=t;return void 0!==window.bt_bb_map_primary[t]&&(b+=" / p"),void 0!==window.bt_bb_map_secondary[t]&&(b+=" / s"),b};for(s=document.createDocumentFragment(),v=bt_bb_create_dom_element("div",[["id","bt_bb_sc_mapper_accordion"]]),m=0;m<window.bt_bb.all_sc.length;m++){if(void 0!==window.bt_bb_map[window.bt_bb.all_sc[m]]&&!1!==window.bt_bb_map[window.bt_bb.all_sc[m]].is_mapped){(M=bt_bb_create_dom_element("h3",[["class","bt_bb_sc_mapper_item"]])).innerHTML='<i class="fa fa-chevron-down"></i><span>'+J(window.bt_bb.all_sc[m])+"</span>";var I=bt_bb_create_dom_element("div",[["data-base",window.bt_bb.all_sc[m]]])}else{var M;(M=bt_bb_create_dom_element("h3",[["class","bt_bb_sc_mapper_item bt_bb_sc_mapper_unmapped"]])).innerHTML='<i class="fa fa-chevron-down"></i><span>'+window.bt_bb.all_sc[m]+"</span>",I=bt_bb_create_dom_element("div",[["data-base",window.bt_bb.all_sc[m]]])}v.appendChild(M),v.appendChild(I)}s.appendChild(v),a("#bt_bb_dialog .bt_bb_dialog_content")[0].appendChild(s),a(".bt_bb_filter").keyup(function(t){var b=a(this).val();a("#bt_bb_sc_mapper_accordion > div").removeClass("bt_bb_map_item_active"),a("#bt_bb_sc_mapper_accordion > h3").removeClass("bt_bb_map_header_active"),a("#bt_bb_sc_mapper_accordion > h3 > i").removeClass("fa-chevron-up").addClass("fa-chevron-down"),a(".bt_bb_sc_mapper_item").each(function(){var t=a(this).html().replace(/(<([^>]+)>)/gi,"");new RegExp(b,"i").test(t)?a(this).show():a(this).hide()})}),a(".bt_bb_sc_map").keydown(function(t){if(9===t.keyCode){t.preventDefault();var b=this.selectionStart,_=this.selectionEnd,e=a(this);e.val(e.val().substring(0,b)+"\t"+e.val().substring(_)),this.selectionStart=this.selectionEnd=b+1,a(this).parent().find(".bt_bb_save_mapping_button").prop("disabled",!1)}}),a("#bt_bb_sc_mapper_accordion h3").click(function(t){var b=a(this).next();if(b.hasClass("bt_bb_map_item_active"))b[0].innerHTML="",b.removeClass("bt_bb_map_item_active"),a(this).removeClass("bt_bb_map_header_active"),a(this).find("i").removeClass("fa-chevron-up").addClass("fa-chevron-down");else{var _='<input type="button" class="button button-small bt_bb_insert_mapping_template_button" value="'+window.bt_bb_text.insert_mapping+'"><input type="button" class="button button-small bt_bb_delete_mapping_button" disabled value="'+window.bt_bb_text.delete+'"><input type="button" class="button button-small bt_bb_save_mapping_button" disabled value="'+window.bt_bb_text.save+'"><span class="spinner" style="display: none;"></span><textarea class="bt_bb_sc_map" rows="10"></textarea>';b[0].innerHTML=_,autosize(a(".bt_bb_sc_map")),b.addClass("bt_bb_map_item_active"),a(this).addClass("bt_bb_map_header_active"),a(this).find("i").removeClass("fa-chevron-down").addClass("fa-chevron-up");var e=b.data("base");void 0!==window.bt_bb_map_secondary[e]&&(b.find(".bt_bb_delete_mapping_button").prop("disabled",!1),b.find(".bt_bb_insert_existing_mapping_button").click(),b.find(".bt_bb_save_mapping_button").prop("disabled",!0))}}),a("#bt_bb_sc_mapper_accordion").on("keydown",".bt_bb_sc_map",function(){a(this).parent().find(".bt_bb_save_mapping_button").prop("disabled",!1)}),a("#bt_bb_sc_mapper_accordion").on("click",".bt_bb_insert_mapping_template_button",function(t){var b=a(this).parent().find("textarea"),_=a(this).parent().data("base");if(void 0!==window.bt_bb_map[_]&&!1!==window.bt_bb_map[_].is_mapped)var e=JSON.stringify(window.bt_bb_map[_],null,"\t");else if(void 0!==window.vc_mapper&&void 0!==window.vc_mapper[_]){var i=window.vc_mapper[_];(e={}).name=void 0!==i.name?i.name:"",e.base=void 0!==i.base?i.base:"",e.description=void 0!==i.description?i.description:"",e.show_settings_on_create=void 0===i.show_settings_on_create||i.show_settings_on_create,!0===i.is_container&&("vc_row"==i.base?(e.root=!0,e.container="horizontal",e.accept={vc_column:!0},e.toggle=!0):"vc_row_inner"==i.base?(e.container="horizontal",e.accept={vc_column_inner:!0}):"vc_column"==i.base?(e.container="vertical",e.width_param="width",e.accept_all=!0,e.accept={vc_row:!1,vc_column:!1,vc_column_inner:!1}):"vc_column_inner"==i.base?(e.container="vertical",e.width_param="width",e.accept_all=!0,e.accept={vc_row:!1,vc_column:!1,vc_row_inner:!1,vc_column_inner:!1}):e.container="vertical"),e.params=[];for(var n="",o=0,d=0;d<i.params.length;d++)"textarea_html"!=i.params[d].type&&!1!==i.params[d].admin_label?(e.params[o]={},e.params[o].type="textfield","textarea"!=(n=i.params[d].type)&&"dropdown"!=n&&"attach_image"!=n&&"attach_images"!=n&&"colorpicker"!=n&&"checkbox"!=n&&"checkbox_group"!=n&&"hidden"!=n||(e.params[o].type=n),e.params[o].heading=void 0!==i.params[d].heading?i.params[d].heading:"",void 0!==i.params[d].description&&(e.params[o].heading+=" ("+i.params[d].description+")"),e.params[o].param_name=void 0!==i.params[d].param_name?i.params[d].param_name:"",e.params[o].value=void 0!==i.params[d].value?i.params[d].value:"",void 0!==i.params[d].holder&&(e.params[o].preview=!0),o++):"textarea_html"==i.params[d].type&&(e.container="vertical",e.accept={_content:!0});e=JSON.stringify(e,null,"\t")}else(e={}).name=_,e.base=_,e.description="",e.show_settings_on_create=!0,e.params=[],e.params[0]={},e.params[0].type="textfield",e.params[0].heading="Param 1",e.params[0].param_name="param_1",e.params[0].value="",e.params[0].preview=!0,e.params[1]={},e.params[1].type="dropdown",e.params[1].heading="Param 2",e.params[1].param_name="param_2",e.params[1].value={"Option 1":"value 1","Option 2":"value 2"},e.params[1].preview=!0,e=JSON.stringify(e,null,"\t");b.val(e);var s=document.createEvent("Event");s.initEvent("autosize:update",!0,!1),b[0].dispatchEvent(s),a(this).parent().find(".bt_bb_save_mapping_button").prop("disabled",!1)}),a("#bt_bb_sc_mapper_accordion").on("click",".bt_bb_save_mapping_button",function(t){var b=a(this).parent().data("base"),_=a(this);try{var e=JSON.parse(a(this).parent().find(".bt_bb_sc_map").val())}catch(t){return alert(t),!1}var i=JSON.stringify(e);_.siblings(".spinner").show(),_.siblings(".spinner").css("visibility","visible");var n={action:"bt_bb_save_mapping",base:b,map:i};a.ajax({type:"POST",url:window.BTAJAXURL,data:n,async:!0,success:function(t){"ok"==t&&(_.prop("disabled",!0),_.siblings(".spinner").hide(),_.closest("div").prev(".bt_bb_sc_mapper_item").removeClass("bt_bb_sc_mapper_unmapped"),window.bt_bb_map[b]=JSON.parse(i),void 0===window.bt_bb_map_secondary[b]&&(window.bt_bb_map_secondary[b]=!0),_.closest("div").prev(".bt_bb_sc_mapper_item").find("span").html(J(b)),void 0!==window.bt_bb_map_secondary[b]&&_.parent("div").find(".bt_bb_delete_mapping_button").prop("disabled",!1),window.bt_bb_action="refresh",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event"))}})}),a("#bt_bb_sc_mapper_accordion").on("click",".bt_bb_delete_mapping_button",function(t){var b=a(this).parent().data("base"),_=a(this);_.siblings(".spinner").show(),_.siblings(".spinner").css("visibility","visible");var e={action:"bt_bb_delete_mapping",base:b};a.ajax({type:"POST",url:window.BTAJAXURL,data:e,async:!0,success:function(t){"ok"==t&&(_.prop("disabled",!0),_.siblings(".spinner").hide(),void 0!==window.bt_bb_map_secondary[b]&&delete window.bt_bb_map_secondary[b],_.parent().find("textarea").val(""),void 0===window.bt_bb_map_primary[b]?(_.closest("div").prev(".bt_bb_sc_mapper_item").addClass("bt_bb_sc_mapper_unmapped"),delete window.bt_bb_map[b],window.bt_bb_action="refresh",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")):window.bt_bb_map[b]=window.bt_bb_map_primary[b],_.closest("div").prev(".bt_bb_sc_mapper_item").find("span").html(J(b)))}})})}else"custom_css"==t&&(e=window.bt_bb_text.custom_css,b+='<div class="bt_bb_dialog_item">',b+='<textarea id="bt_bb_custom_css_content" class="bt_bb_custom_css_content" rows="10">'+window.bt_bb_b64DecodeUnicode(window.bt_bb_custom_css)+"</textarea>",b+="</div>",a("#bt_bb_dialog .bt_bb_dialog_content").html(b),a("#bt_bb_dialog").append('<div class="bt_bb_dialog_inline_buttons"><input type="button" class="bt_bb_dialog_button button button-small bt_bb_button_save_custom_css" value="'+window.bt_bb_text.save+'"></div>'),void 0!==wp.codeEditor?window.bt_bb_ce=wp.codeEditor.initialize("bt_bb_custom_css_content"):a("#bt_bb_dialog").on("keydown",".bt_bb_custom_css_content",function(t){if(9===t.keyCode){t.preventDefault();var b=this.selectionStart,_=this.selectionEnd,e=a(this);e.val(e.val().substring(0,b)+"\t"+e.val().substring(_)),this.selectionStart=this.selectionEnd=b+1}}));a("#bt_bb_dialog .bt_bb_dialog_header span").html(e),a('.bt_bb_dialog_item input[type="text"]').keypress(function(t){13==t.which&&t.preventDefault()}),"edit_content"==t?(a(".bt_bb_dialog_tinymce").css("height","auto"),window.switchEditors.go("bt_bb_tinymce","tmce"),tinyMCE.get("bt_bb_tinymce").setContent(window.switchEditors.wpautop(window.bt_bb_content))):(a("#bt_bb_dialog").css("visibility","visible"),a("#bt_bb_dialog .mce-i-resize").show()),"add"!=t&&"sc_mapper"!=t||a(".bt_bb_filter").focus(),window.bt_bb_resize_dialog()},window.bt_bb_dialog.hide=function(t){window.bt_bb_dialog.is_showing=!1,window.bt_bb_dialog.is_mouseover=!1,a(".wp-picker-open").click(),a(".bt_bb_dialog_tinymce").hide(),a("#bt_bb_dialog").data("hidden",""),a("#bt_bb_dialog").removeClass("bt_bb_dialog_tinymce_container"),a("#bt_bb_dialog").removeClass("bt_bb_dialog_sc_mapper_container"),a("#bt_bb_dialog").removeClass("bt_bb_dialog_add_horizontal"),a("#bt_bb_dialog").removeClass("bt_bb_dialog_custom_css");for(var b=a("#bt_bb_dialog .bt_bb_dialog_content")[0];b.firstChild;)b.removeChild(b.firstChild);a("#bt_bb_dialog .bt_bb_dialog_header")[0].innerHTML='<div class="bt_bb_dialog_close"></div><span></span>',a("#bt_bb_dialog .bt_bb_dialog_header_tools")[0].innerHTML="",a("#bt_bb_dialog > input").remove(),a("#bt_bb_dialog > .bt_bb_dialog_inline_buttons").remove(),a("#bt_bb_dialog").css("visibility","hidden")},a(document).ready(function(){a("#bt_bb_dialog").on("click",".bt_bb_dialog_close",function(t){window.bt_bb_dialog.hide()})}),window.bt_bb_get_obj_by_id=function(t,b){for(var _=null,e=0;e<t.children.length;e++){if(b.bt_ends_with(t.children[e].key)){_=t.children[e];break}if(null!=(_=bt_bb_get_obj_by_id(t.children[e],b)))break}return _},window.bt_bb_get_param=function(t,b){if(void 0!==window.bt_bb_map[t])return window.bt_bb_map[t][b]},window.bt_bb_state_callback=function(){bt_bb_horizontal_responsive(),null!==window.bt_bb_callback_action&&bt_bb_event(window.bt_bb_callback_action)},window.bt_bb_horizontal_responsive=function(){a(".bt_bb_horizontal").each(function(){var t=a(this).width(),b=!1;a(this).find(".bt_bb_is_width").each(function(){var _=bt_bb_get_obj_by_id(window.bt_bb_state_current,a(this).data("reactid")),e=window.bt_bb_map[_.base].width_param,i=attr_to_obj(_.attr)[e];if(i=12*(i=i.split("/"))[0]/i[1],t*i/12<window.bt_bb.min_width)return b=!0,!1}),b?(a(this).find(".bt_bb_is_width").removeClass("bt_bb_width"),a(this).css("display","block")):(a(this).find(".bt_bb_is_width").addClass("bt_bb_width"),a(this).css("display","table"))})},a(window).resize(function(){bt_bb_horizontal_responsive()}),window.bt_bb_push_state=function(t){window.bt_bb_state_current=t,window.bt_bb_state.splice(window.bt_bb_state_pointer+1),window.bt_bb_state.push(JSON.stringify(t)),window.bt_bb_state_pointer=window.bt_bb_state.length-1},window.bt_bb_undo=function(){window.bt_bb_dialog.hide(),window.bt_bb_state_pointer--,window.bt_bb_state_pointer>-1?(window.bt_bb_state_current=JSON.parse(window.bt_bb_state[window.bt_bb_state_pointer]),window.bt_bb_action="update_state",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")):window.bt_bb_state_pointer++},window.bt_bb_redo=function(){window.bt_bb_dialog.hide(),window.bt_bb_state_pointer++,window.bt_bb_state_pointer<=window.bt_bb_state.length-1?(window.bt_bb_state_current=JSON.parse(window.bt_bb_state[window.bt_bb_state_pointer]),window.bt_bb_action="update_state",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")):window.bt_bb_state_pointer--},window.bt_bb_sortable_background=function(t){void 0===window.bt_bb.cache[t]?wp.media.attachment(t).fetch().done(function(t){var b="";b=void 0!==t.sizes.thumbnail?t.sizes.thumbnail.url:t.sizes.full.url,a('.bt_bb_sortable_item[data-id="'+t.id+'"]').css("background-image",'url("'+b+'")'),a('.bt_bb_sortable_item[data-id="'+t.id+'"]').css("background-size","cover"),window.bt_bb.cache[t.id]={},window.bt_bb.cache[t.id].url=b,window.bt_bb.cache[t.id].title=t.title}):(a('.bt_bb_sortable_item[data-id="'+t+'"]').css("background-image",'url("'+window.bt_bb.cache[t].url+'")'),a('.bt_bb_sortable_item[data-id="'+t+'"]').css("background-size","cover"))},window.bt_bb_iconpicker=function(t,b){var _,e='<div class="bt_bb_iconpicker">',a=Object.keys(t);e+='<div class="bt_bb_iconpicker_select">';for(var i=b.slice(0,-5),n=b.substr(-4),o="",d=0;d<a.length;d++){_=Object.keys(t[a[d]]);for(var s=0;s<_.length;s++)b==t[a[d]][_[s]]&&(o=_[s])}""!=n&&(n="&#x"+n),e+='<div class="bt_bb_icon_preview bt_bb_icon_preview_'+i+'" data-icon="'+b+'" data-icon-code="'+n+'"></div>',e+='<div class="bt_bb_iconpicker_select_text">'+o+"</div>",e+='<i class="fa fa-close bt_bb_iconpicker_clear" style="display:'+(""!=o?"block":"none")+'"></i>',e+='<i class="fa fa-angle-down"></i>',e+="</div>",e+='<div class="bt_bb_iconpicker_filter_container">',e+='<input type="text" class="bt_bb_filter" placeholder="'+window.bt_bb_text.filter+'">',e+="</div>",e+='<div class="bt_bb_iconpicker_icons">';for(var r=0;r<a.length;r++){e+='<div class="bt_bb_iconpicker_title">'+a[r]+"</div>",_=Object.keys(t[a[r]]);for(var l=0;l<_.length;l++)i=(b=t[a[r]][_[l]]).slice(0,-5),n=b.substr(-4),e+='<div class="bt_bb_icon_preview bt_bb_icon_preview_'+i+'" data-icon="'+b+'" data-icon-code="&#x'+n+'" title="'+_[l]+'"></div>'}return e+="</div>",e+="</div>"},String.prototype.bt_ends_with=function(t){return-1!==this.indexOf(t,this.length-t.length)},window.bt_bb_get_key=function(){var t="bt_bb_"+Math.random().toString();return t=t.replace(".","")},window.bt_bb_dispatch=function(t,b){try{var _=new Event(b)}catch(t){(_=document.createEvent("Event")).initEvent(b,!1,!1)}a(t)[0].dispatchEvent(_)},a(document).ready(function(){a("#bt_bb").length>0&&(window.bt_bb_element_list=BTReact.render(BTReact.createElement(n,{data:window.bt_bb_data}),a("#bt_bb")[0],function(){bt_bb_horizontal_responsive(),bt_bb_resize_h(window.bt_bb_data),window.bt_bb_action="refresh_on_ready",bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")})),a("body").on("click",".bt_bb_iconpicker_widget_container .bt_bb_iconpicker_select",function(t){a(this).next().toggle(),a(this).next().next().toggle()}),a("body").on("click",".bt_bb_iconpicker_widget_container .bt_bb_icon_preview",function(t){var b=a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon",a(this).data("icon")),b.attr("data-icon-code",a(this).data("icon-code")),b.removeClass(),b.addClass(a(this).attr("class")),a(this).closest(".bt_bb_iconpicker").find("input").val(a(this).data("icon")),a(this).closest(".bt_bb_iconpicker").find("input").trigger("change"),a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_iconpicker_select_text").html(a(this).attr("title")),a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_clear").show(),a(this).parent().hide(),a(this).parent().prev().find("input").val("").trigger("keyup"),a(this).parent().prev().hide()}),a("body").on("click",".bt_bb_iconpicker_widget_container .bt_bb_iconpicker_clear",function(t){t.stopPropagation();var b=a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon",""),b.attr("data-icon-code",""),b.parent().find(".bt_bb_iconpicker_select_text").html(""),a(this).closest(".bt_bb_iconpicker").find("input").val(""),a(this).closest(".bt_bb_iconpicker").find("input").trigger("change"),a(this).parent().next().find("input").val("").trigger("keyup"),a(this).parent().next().hide(),a(this).parent().next().next().hide(),a(this).hide()}),a("body").on("keyup",".bt_bb_iconpicker_widget_container .bt_bb_filter",function(t){var b=a(this).val();a(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_icons .bt_bb_icon_preview").each(function(){var t=a(this).attr("title");new RegExp(b,"i").test(t)?a(this).show():a(this).hide()})})}),a(window).on("focus",function(){var t=localStorage.getItem("bt_bb_cb_items");bt_bb_set_number_items(null===t?0:t)}),window.bt_bb_b64EncodeUnicode=function(t){return btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,function(t,b){return String.fromCharCode(parseInt(b,16))}))},window.bt_bb_b64DecodeUnicode=function(t){return decodeURIComponent(Array.prototype.map.call(atob(t),function(t){return"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)}).join(""))}}]);
|
build/jsx.min.js
ADDED
@@ -0,0 +1,2 @@
|
|
|
|
|
1 |
+
"use strict";window.bt_bb={};window.bt_bb.cache={};window.bt_bb.min_width=200;window.bt_bb.padding=10;window.bt_bb_state=[];window.bt_bb_state_pointer=-1;window.bt_bb_state_current=null;window.bt_bb_dirty=false;(function(t){var e=BTReact.createClass({render:function(){var b="";var _="bt_bb_wrap";var i="bt_bb_item";var n="";if(this.props.data.has_alert!==undefined){i=i+" bt_bb_item_alert"}if(this.props.data.extra_class!==undefined){i=i+" "+this.props.data.extra_class}if(window.bt_bb_map[this.props.data.base]!==undefined){if(window.bt_bb_map[this.props.data.base].container!==undefined){if(window.bt_bb_map[this.props.data.base].container=="horizontal"){b="bt_bb_horizontal"}}if(window.bt_bb_map[this.props.data.base].highlight!==undefined){if(window.bt_bb_map[this.props.data.base].highlight===true){i=i+" bt_bb_item_highlight"}}if(window.bt_bb_map[this.props.data.base].icon!==undefined){i=i+" "+"bt_bb_icon"+" "+window.bt_bb_map[this.props.data.base].icon}if(window.bt_bb_map[this.props.data.base].width_param!==undefined){if(this.props.data.attr!==undefined){var o=JSON.parse(this.props.data.attr);var d=o[window.bt_bb_map[this.props.data.base].width_param];if(d!==undefined){d=d.split("/");d=Math.round(12*d[0]/d[1]);_=_+" "+"bt_bb_is_width bt_bb_width bt_bb_width"+d}}}}var s=this.props.data.key;var r=this.props.data.base;var l=this.props.data.children.map(function(t,b){if(t.key===undefined){t.key="bt_bb_"+bt_bb_get_key()}return BTReact.createElement(e,{key:t.key,data:t,p_key:s,p_base:r})});this.props.data["p_key"]=this.props.p_key;this.props.data["p_base"]=this.props.p_base;if(this.props.data.base=="_content"){return BTReact.createElement("div",{className:_},BTReact.createElement("div",{className:i,"data-base":this.props.data.base},BTReact.createElement("div",{className:"bt_bb_toolbar"},"]...[",BTReact.createElement(a,{has_params:"true"})),BTReact.createElement("div",{className:"bt_bb_content",dangerouslySetInnerHTML:{__html:window.switchEditors.wpautop(this.props.data.content)}})))}else{var c=window.bt_bb_map[this.props.data.base]!==undefined&&window.bt_bb_map[this.props.data.base].params!==undefined&&window.bt_bb_map[this.props.data.base].params.length>0?"true":"false";var p="";if(c=="true"){var w=bt_bb_get_param(this.props.data.base,"params");var m=false;var f="";for(var h=0;h<w.length;h++){if(w[h].preview!==undefined||w[h].holder!==undefined&&w[h].holder!=""){var u="";if(this.props.data.attr!==undefined){var o=JSON.parse(this.props.data.attr)}if(this.props.data.attr!==undefined&&o[w[h].param_name]!==undefined){u=o[w[h].param_name]}else{if(w[h].type=="checkbox"||w[h].type=="checkbox_group"){if(w[h].default!==undefined){u=w[h].default}else{u=""}}else if(typeof w[h].value=="object"){if(w[h].default!==undefined){u=w[h].default}else{var v=Object.keys(w[h].value);u=w[h].value[v[0]]}}else if(w[h].value!==undefined){u=w[h].value}}if(w[h].type=="attach_image"&&!m){var f=this.props.data.key;var g=u;var y=localStorage.getItem("bt_bb_cache_"+g);if(y!==null){if(window.bt_bb.cache[g]===undefined){window.bt_bb.cache[g]={}}window.bt_bb.cache[g].url=y}if(g==""){t("."+f+">"+".bt_bb_toolbar").css("background-image","")}else if(window.bt_bb.cache[g]!==undefined){setTimeout(function(){t("."+f+">"+".bt_bb_toolbar").css("background-image","url("+window.bt_bb.cache[g].url+")")},100)}else{t(window).load(function(){wp.media.ajax({data:{action:"get-attachment",id:g}}).done(function(e,b,a){if(e.sizes!==undefined){var _="";if(e.sizes.thumbnail!==undefined){_=e.sizes.thumbnail.url}else if(e.sizes.full!==undefined){if(e.sizes.full.width<=300&&e.sizes.full.height<=300){_=e.sizes.full.url}}if(_!=""){t("."+f+">"+".bt_bb_toolbar").css("background-image","url("+_+")");window.bt_bb.cache[e.id]={};window.bt_bb.cache[e.id].url=_;localStorage.setItem("bt_bb_cache_"+e.id,_)}else{localStorage.removeItem("bt_bb_cache_"+e.id)}}})})}u="";m=true}if(w[h].type=="iconpicker"){if(typeof u=="string"&&u!=""){var k=u;var x=k.slice(0,-5);var C=k.substr(-4);u='<span class="bt_bb_icon_preview bt_bb_icon_preview_'+x+'" data-icon-code="&#x'+C+'"></span>'}else{u=""}}else if(w[h].type=="colorpicker"){u='<span style="color:'+u+';font-weight: bold;">'+u+"</span>"}else if(w[h].type=="textarea_object"){try{u=b64DecodeUnicode(u)}catch(t){}}else{if(window["bt_bb_cf_"+w[h].type+"_param_value_preview"]!==undefined){u=window["bt_bb_cf_"+w[h].type+"_param_value_preview"](u)}}if(w[h].preview_strong!==undefined){u='<span class="bt_bb_preview_strong">'+u+"</span>"}else{u='<span class="bt_bb_preview_normal">'+u+"</span>"}p=p+bt_bb_special_char_decode(u)}}}var S=window.bt_bb_map[this.props.data.base]!==undefined&&window.bt_bb_map[this.props.data.base].toggle==true>0?"true":"false";var O=this.props.data.base;if(window.bt_bb_map[this.props.data.base]!==undefined&&window.bt_bb_map[this.props.data.base].name!==undefined&&window.bt_bb_settings.tag_as_name!="1"){O=window.bt_bb_map[this.props.data.base].name}p='<span class="bt_bb_preview_name">'+O+"</span>"+p;if(m){i=i+" bt_bb_image_preview "+f}if(window.bt_bb_map[this.props.data.base]!==undefined&&window.bt_bb_map[this.props.data.base].container!==undefined){var E=window.bt_bb_map[this.props.data.base].container;return BTReact.createElement("div",{className:_},BTReact.createElement("div",{className:i,"data-base":this.props.data.base,"data-container":E},BTReact.createElement("div",{className:"bt_bb_toolbar"},BTReact.createElement("span",{className:"bt_bb_preview",dangerouslySetInnerHTML:{__html:p}}),BTReact.createElement(a,{container:E,mapped:"true",has_params:c,toggle:S})),BTReact.createElement("div",{className:b},l)))}else{var T=window.bt_bb_map[this.props.data.base];var N="bt_bb_toolbar";var z="true";if(T==undefined||T.is_mapped===false){z="false";window.bt_bb_map[this.props.data.base]={};window.bt_bb_map[this.props.data.base].is_mapped=false;window.bt_bb_map[this.props.data.base].show_settings_on_create=false;window.bt_bb_map[this.props.data.base].base=this.props.data.base;window.bt_bb_map[this.props.data.base].description=this.props.data.base;window.bt_bb_map[this.props.data.base].name=this.props.data.base;window.bt_bb_map[this.props.data.base].params=[];N="bt_bb_toolbar bt_bb_alert"}return BTReact.createElement("div",{className:_},BTReact.createElement("div",{className:i,"data-base":this.props.data.base},BTReact.createElement("div",{className:N},p!=""?BTReact.createElement("span",{className:"bt_bb_preview",dangerouslySetInnerHTML:{__html:p}}):"",BTReact.createElement(a,{has_params:c,toggle:S,mapped:z})),BTReact.createElement("div",{className:b},l)))}}}});var b=BTReact.createClass({getInitialState:function(){return{data:this.props.data}},render:function(){var t=this.state.data.children.map(function(t,b){return BTReact.createElement(e,{key:t.key,data:t})});return BTReact.createElement("div",{className:"bt_bb_item_list"},t)},componentDidMount:function(){this.getDOMNode().addEventListener("bt_bb_event",this.handle);window.bt_bb_state_current=this.state.data},componentDidUpdate:function(){var e=0;t(".bt_bb_item_list > .bt_bb_wrap").each(function(){e++;var b=t(this).find(".bt_bb_preview_name").first().data("title");if(b===undefined){b=t(this).find(".bt_bb_preview_name").first().html();t(this).find(".bt_bb_preview_name").first().data("title",b)}t(this).find(".bt_bb_preview_name").first().html('<span class="bt_bb_order"><span class="bt_bb_order_inner">'+e+"</span></span>"+b)})},componentWillUnmount:function(){this.getDOMNode().removeEventListener("bt_bb_event",this.handle)},handle:function(e){window.bt_bb_callback_action=null;if(window.bt_bb_action=="move_up"){var b=bt_bb_get_obj_copy_by_id(this.state.data,window.bt_bb_from);bt_bb_insert_before(this.state.data,window.bt_bb_to,b);if(!window.bt_bb_ctrl){bt_bb_delete_obj(this.state.data,window.bt_bb_from)}}else if(window.bt_bb_action=="move_down"){var b=bt_bb_get_obj_copy_by_id(this.state.data,window.bt_bb_from);bt_bb_insert_after(this.state.data,window.bt_bb_to,b);if(!window.bt_bb_ctrl){bt_bb_delete_obj(this.state.data,window.bt_bb_from)}}else if(window.bt_bb_action=="move_inside"){if(bt_bb_insert_inside(this.state.data,window.bt_bb_to,bt_bb_get_obj_copy_by_id(this.state.data,window.bt_bb_from))){if(!window.bt_bb_ctrl){bt_bb_delete_obj(this.state.data,window.bt_bb_from)}}}else if(window.bt_bb_action=="delete"){bt_bb_delete_obj(this.state.data,window.bt_bb_from)}else if(window.bt_bb_action=="add_root"||window.bt_bb_action=="add_root_from_dialog"){if(window.bt_bb_action=="add_root"){var a=bt_bb_add_root(this.state.data);if(a!==undefined&&window.bt_bb_map[a[1]]["auto_add"]!==undefined){var _={};_.title=window.bt_bb_map[a[1]]["auto_add"];_.base=window.bt_bb_map[a[1]]["auto_add"];_.key=bt_bb_get_key();_.children=[];bt_bb_insert_inside(this.state.data,a[0],_)}}else{var a=bt_bb_add_root(this.state.data,window.bt_bb_base)}if(a!==undefined&&bt_bb_get_param(a[1],"show_settings_on_create")!==false){window.bt_bb_from=a[0];window.bt_bb_callback_action="edit"}}else if(window.bt_bb_action=="add"||window.bt_bb_action=="add_from_dialog"){if(window.bt_bb_action=="add"){var a=bt_bb_add(this.state.data)}else{var a=bt_bb_add(this.state.data,window.bt_bb_base)}if(a!==undefined&&bt_bb_get_param(a[1],"show_settings_on_create")!==false){window.bt_bb_from=a[0];window.bt_bb_callback_action="edit"}else if(a!==undefined&&bt_bb_get_param(a[1],"show_settings_on_create")!==true){var i=bt_bb_get_param(a[1],"accept");var n,o=0;for(n in i){if(i.hasOwnProperty(n)){o++}}if(i!==undefined&&i._content===true&&o==1){window.bt_bb_from=a[0];window.bt_bb_base=a[1];window.bt_bb_callback_action="add"}}}else if(window.bt_bb_action=="add_horizontal"){bt_bb_add_horizontal(this.state.data)}else if(window.bt_bb_action=="edit"){bt_bb_edit(this.state.data,window.bt_bb_from)}else if(window.bt_bb_action=="clone"){bt_bb_clone(this.state.data,window.bt_bb_from)}else if(window.bt_bb_action=="update_state"){this.replaceState({data:window.bt_bb_state_current},window.bt_bb_state_callback)}else if(window.bt_bb_action=="copy"){bt_bb_copy(this.state.data,window.bt_bb_from);t(".bt_bb_cb_items").addClass("bt_bb_cb_items_flash").delay(500).queue(function(e){t(this).removeClass("bt_bb_cb_items_flash");e()})}else if(window.bt_bb_action=="copy_plus"){bt_bb_copy_plus(this.state.data,window.bt_bb_from);t(".bt_bb_cb_items").addClass("bt_bb_cb_items_flash").delay(500).queue(function(e){t(this).removeClass("bt_bb_cb_items_flash");e()})}else if(window.bt_bb_action=="paste"){bt_bb_paste(this.state.data,window.bt_bb_from)}if(window.bt_bb_action!=null&&window.bt_bb_action!="edit"&&window.bt_bb_action!="copy"&&window.bt_bb_action!="copy_plus"){bt_bb_resize_h(this.state.data);if(window.bt_bb_action!="update_state"){bt_bb_push_state(this.state.data);this.replaceState({data:this.state.data},window.bt_bb_state_callback)}if(this.state.data.children.length>=0&&window.bt_bb_action=="update_wp_editor"){bt_bb_parse_data(this.state.data)}if(window.bt_bb_action!="refresh_on_ready"&&window.bt_bb_action!="update_wp_editor"){window.bt_bb_dirty=true}bt_bb_item_mousedown();bt_bb_toolbar()}}});var a=BTReact.createClass({render:function(){var t=window.bt_bb_text.add;if(this.props.container=="horizontal"){t=window.bt_bb_text.add+" / "+window.bt_bb_text.select_layout}return BTReact.createElement("div",{className:"bt_bb_toolbar_tools"},this.props.toggle=="true"?BTReact.createElement("i",{className:"bt_bb_toggle",title:window.bt_bb_text.toggle}):"",this.props.container=="vertical"||this.props.container=="horizontal"?BTReact.createElement("i",{className:"bt_bb_add",title:t}):"",this.props.has_params=="true"?BTReact.createElement("i",{className:"bt_bb_edit",title:window.bt_bb_text.edit}):"",BTReact.createElement("i",{className:"bt_bb_clone",title:window.bt_bb_text.clone}),this.props.mapped=="true"?BTReact.createElement("i",{className:"bt_bb_copy",title:window.bt_bb_text.copy}):"",this.props.mapped=="true"?BTReact.createElement("i",{className:"bt_bb_copy_plus",title:window.bt_bb_text.copy_plus}):"",this.props.mapped=="true"?BTReact.createElement("i",{className:"bt_bb_paste",title:window.bt_bb_text.paste}):"",BTReact.createElement("i",{className:"bt_bb_delete",title:window.bt_bb_text.delete}))}});window.bt_bb_parse_data=function(t){window.bt_bb_parse_data_str="";if(t.children.length>0){bt_bb_parse_data_helper(t);window.switchEditors.go("content","tmce");tinyMCE.get("content").setContent(window.switchEditors.wpautop(window.bt_bb_parse_data_str))}};window.bt_bb_parse_data_helper=function(t){if(t.title=="_root"){t=t.children}for(var e=0;e<t.length;e++){var b=false;if(t[e].title=="_content"){b=true}if(!b){window.bt_bb_parse_data_str+="["+t[e].base;if(t[e].attr!==undefined){var a=attr_to_arr(t[e].attr);for(var _=0;_<a.length;_++){window.bt_bb_parse_data_str+=" "+a[_][0]+'="'+a[_][1]+'"'}}window.bt_bb_parse_data_str+="]"}else{window.bt_bb_parse_data_str+=t[e].content}if(t[e].children!==undefined){bt_bb_parse_data_helper(t[e].children)}if(!b){window.bt_bb_parse_data_str+="[/"+t[e].base+"]"}}};window.attr_to_arr=function(t){var e=JSON.parse(t);var b=[];for(var a in e){b.push([a,e[a]])}return b};window.attr_to_obj=function(t){var e=JSON.parse(t);return e};window.bt_bb_resize_h=function(t){if(t.title=="_root"){t=t.children}for(var e=0;e<t.length;e++){if(window.bt_bb_map[t[e].title]!==undefined){if(window.bt_bb_map[t[e].title].container=="horizontal"){if(t[e].children!==undefined){var b=false;var a=false;var _=[];var i=[];for(var n=0;n<t[e].children.length;n++){if(window.bt_bb_map[t[e].children[n].title]!==undefined&&window.bt_bb_map[t[e].children[n].title].width_param!==undefined){var o=window.bt_bb_map[t[e].children[n].title].width_param;if(t[e].children[n].attr===undefined){t[e].children[n].attr="{}"}var d=attr_to_obj(t[e].children[n].attr);if(!d.hasOwnProperty(o)){d[o]="1/12"}var s=d[o].split("/");_.push(parseInt(s[0]));i.push(parseInt(s[1]))}else{b=true;break}}var r=0;for(var l=0;l<_.length;l++){var c=12*_[l]/i[l];if(c!=Math.floor(c)){a=true;break}r=r+c}if(!b&&(r!=12||a)){for(var n=0;n<t[e].children.length;n++){var o=window.bt_bb_map[t[e].children[n].title].width_param;var d=attr_to_obj(t[e].children[n].attr);d[o]="1/"+t[e].children.length;_[n]=1;i[n]=t[e].children.length;t[e].children[n].attr=JSON.stringify(d)}}a=false;for(var l=0;l<_.length;l++){var c=12*_[l]/i[l];if(c!=Math.floor(c)){a=true;break}}if(a){t[e].has_alert="bt_bb_item_alert"}else{t[e].has_alert=undefined}}}}if(t[e].children!==undefined){bt_bb_resize_h(t[e].children)}}};window.bt_bb_get_obj_copy_by_id=function(t,e){var b=bt_bb_get_obj_by_id(t,e);var a=JSON.parse(JSON.stringify(b));if(a!=null){a=bt_bb_set_new_keys(a)}return a};window.bt_bb_set_new_keys=function(t){t.key=bt_bb_get_key();for(var e=0;e<t.children.length;e++){bt_bb_set_new_keys(t.children[e])}return t};window.bt_bb_delete_obj=function(t,e,b){if(t.title!="_content"){for(var a=0;a<t.children.length;a++){if(e.bt_ends_with(t.children[a].key)){if(b!==undefined){t.children.splice(a,b)}else{t.children.splice(a,1)}break}bt_bb_delete_obj(t.children[a],e,b)}}};window.bt_bb_insert_before=function(t,e,b){if(t.title!="_content"){for(var a=0;a<t.children.length;a++){if(e.bt_ends_with(t.children[a].key)){t.children.splice(a,0,b);break}bt_bb_insert_before(t.children[a],e,b)}}};window.bt_bb_insert_after=function(t,e,b){if(t.title!="_content"){for(var a=0;a<t.children.length;a++){if(e.bt_ends_with(t.children[a].key)){t.children.splice(a+1,0,b);break}bt_bb_insert_after(t.children[a],e,b)}}};window.bt_bb_insert_inside=function(e,b,a){if(e.title!="_content"){for(var _=0;_<e.children.length;_++){if(b.bt_ends_with(e.children[_].key)){if(e.children[_].children!==undefined){e.children[_].children.push(a);if(window.bt_bb_action!="paste"&&window.bt_bb_action!="move_inside"&&window.bt_bb_map[a.base]!==undefined&&window.bt_bb_map[a.base]["auto_add"]!==undefined){var i={};i.title=window.bt_bb_map[a.base]["auto_add"];i.base=window.bt_bb_map[a.base]["auto_add"];i.key=bt_bb_get_key();i.children=[];var n={};if(window.bt_bb_map[i.base]!==undefined&&window.bt_bb_map[i.base].params!==undefined){t.each(window.bt_bb_map[i.base].params,function(t,e){if(e.hasOwnProperty("value")&&typeof e.value=="string"){n[e.param_name]=bt_bb_special_char_encode(e)}else if(e.hasOwnProperty("value")&&e.hasOwnProperty("default")){n[e.param_name]=e.default}})}i.attr=JSON.stringify(n);a.children.push(i)}return true}}var o=bt_bb_insert_inside(e.children[_],b,a);if(o===true){return true}}}};window.bt_bb_add_root=function(e,b){var a=[];if(b!==undefined){a.push(b)}else{t.each(window.bt_bb_map,function(t,e){if(e.root==true){a.push(e.base)}})}if(a.length==1){var _={};_.title=a[0];_.base=a[0];_.key=bt_bb_get_key();_.children=[];var i={};if(window.bt_bb_map[_.base]!==undefined&&window.bt_bb_map[_.base].params!==undefined){t.each(window.bt_bb_map[_.base].params,function(t,e){if(e.hasOwnProperty("value")&&typeof e.value=="string"){i[e.param_name]=bt_bb_special_char_encode(e.value)}else if(e.hasOwnProperty("value")&&e.hasOwnProperty("default")){i[e.param_name]=e.default}})}_.attr=JSON.stringify(i);e.children.push(_);return[_.key,_.base]}else if(a.length>1){window.bt_bb_dialog.show("add_root")}};window.bt_bb_add=function(e,b){var a=[];if(b!==undefined){a.push(b)}else{t.each(window.bt_bb_map,function(t,e){var b;if(window.bt_bb_map[window.bt_bb_base].accept!==undefined){b=window.bt_bb_map[window.bt_bb_base].accept[e.base]}if((b===true||window.bt_bb_map[window.bt_bb_base].accept_all===true&&b!==false||window.bt_bb_map[e.base].as_child!==undefined&&window.bt_bb_map[e.base].as_child["only"].indexOf(window.bt_bb_base)!=-1)&&(window.bt_bb_map[e.base].as_child===undefined||window.bt_bb_map[e.base].as_child!==undefined&&window.bt_bb_map[e.base].as_child["only"].indexOf(window.bt_bb_base)!=-1)){a.push(e.base)}});if(window.bt_bb_map[window.bt_bb_base].accept!==undefined&&window.bt_bb_map[window.bt_bb_base].accept["_content"]===true){a=[];a.push("_content")}}if(a.length==1){var _={};_.title=a[0];_.base=a[0];if(_.base=="_content"){_.content=""}_.key=bt_bb_get_key();_.children=[];var i={};if(window.bt_bb_map[_.base]!==undefined&&window.bt_bb_map[_.base].params!==undefined){t.each(window.bt_bb_map[_.base].params,function(t,e){if(e.hasOwnProperty("value")&&typeof e.value=="string"){if(e.type=="textarea_object"){i[e.param_name]=e.value}else{i[e.param_name]=bt_bb_special_char_encode(e.value)}}else if(e.hasOwnProperty("value")&&e.hasOwnProperty("default")){i[e.param_name]=e.default}})}_.attr=JSON.stringify(i);bt_bb_insert_inside(e,window.bt_bb_from,_);return[_.key,_.base]}else if(a.length>1){window.bt_bb_dialog.show("add")}};window.bt_bb_add_horizontal=function(t,e){if(e!==undefined){var b=false;e=e.replace(/\s/gm,"").replace(/<\/?[^>]+(>|$)/gm,"");if(e==""){b=true}else{var a=e.split("+");if(a.length>12){b=true}else{var _=0;var i=[];var n=[];for(var o=0;o<a.length;o++){var d=a[o].split("/");if(d.length!=2){b=true;break}var s=parseInt(d[0]);i.push(s);var r=parseInt(d[1]);n.push(r);if(s<1||s>12||r<1||r>12){b=true;break}}if(!b){for(var l=0;l<i.length;l++){var c=12*i[l]/n[l];if(c!=Math.floor(c)){b=true;break}_=_+c}if(_!=12){b=true}}}}if(b){alert(window.bt_bb_text.layout_error);return}var p=window.bt_bb_from;for(var o=0;o<t.children.length;o++){if(p.bt_ends_with(t.children[o].key)){var w=t.children[o].children.length;if(w>0){if(a.length>=w){for(var l=0;l<w;l++){for(var m in window.bt_bb_map[window.bt_bb_base].accept){}var f=window.bt_bb_map[m].width_param;var h=attr_to_obj(t.children[o].children[l].attr);h[f]=a[l];t.children[o].children[l].attr=JSON.stringify(h)}for(var l=w;l<a.length;l++){var u={};for(var m in window.bt_bb_map[window.bt_bb_base].accept){}u.title=m;u.base=m;u.key=bt_bb_get_key();u.children=[];var f=window.bt_bb_map[m].width_param;u.attr='{"'+f+'":'+bt_bb_json_encode(a[l])+"}";bt_bb_insert_inside(t,window.bt_bb_from,u)}}else{for(var l=0;l<a.length;l++){for(var m in window.bt_bb_map[window.bt_bb_base].accept){}var f=window.bt_bb_map[m].width_param;var h=attr_to_obj(t.children[o].children[l].attr);h[f]=a[l];t.children[o].children[l].attr=JSON.stringify(h)}bt_bb_delete_obj(t,t.children[o].children[a.length].key,w-a.length)}}else{for(var l=0;l<a.length;l++){var u={};for(var m in window.bt_bb_map[window.bt_bb_base].accept){}u.title=m;u.base=m;u.key=bt_bb_get_key();u.children=[];var f=window.bt_bb_map[m].width_param;u.attr='{"'+f+'":'+bt_bb_json_encode(a[l])+"}";bt_bb_insert_inside(t,window.bt_bb_from,u)}}window.bt_bb_action="refresh";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event");return true}var v=bt_bb_add_horizontal(t.children[o],e);if(v===true){return true}}}else{window.bt_bb_dialog.show("add_horizontal")}};window.bt_bb_edit=function(t,e){for(var b=0;b<t.children.length;b++){if(e.bt_ends_with(t.children[b].key)){if(t.children[b].title=="_content"){window.bt_bb_content=t.children[b].content;window.bt_bb_dialog.show("edit_content")}else{window.bt_bb_dialog.show("edit")}break}bt_bb_edit(t.children[b],e)}};window.bt_bb_clone=function(e,b){t(".bt_bb_toolbar_tools").css("transition","all 0s");for(var a=0;a<e.children.length;a++){if(b.bt_ends_with(e.children[a].key)){if(e.title=="_root"||window.bt_bb_map[e.base]===undefined||window.bt_bb_map[e.base].container!="horizontal"||window.bt_bb_map[e.base].container=="horizontal"&&e.children.length<12){var _=bt_bb_get_obj_copy_by_id(e,b);e.children.splice(a+1,0,_)}break}bt_bb_clone(e.children[a],b)}};window.bt_bb_init_number_items=function(){window.bt_bb_cb_items=localStorage.getItem("bt_bb_cb_items");if(window.bt_bb_cb_items===null)window.bt_bb_cb_items=0;t(".bt_bb_cb_items").html(window.bt_bb_cb_items)};window.bt_bb_set_number_items=function(e){localStorage.setItem("bt_bb_cb_items",e);t(".bt_bb_cb_items").html(e);window.bt_bb_cb_items=e};window.bt_bb_allowed=function(t,e){if(e===undefined)return false;var b=window.bt_bb_map[e];var a=false;if(b.accept!==undefined&&b.accept[t]===true||b.accept!==undefined&&b.accept[t]===undefined&&b.accept_all===true||b.accept===undefined&&b.accept_all===true){a=true}return a};window.bt_bb_cb_import=function(t){var e=decodeURIComponent(b64DecodeUnicode(t));var b=JSON.parse(e);for(var a=1;a<=b.length;a++){localStorage.setItem("bt_bb_cb_"+a,decodeURIComponent(b64DecodeUnicode(b[a-1].bt_bb_cb)));bt_bb_set_number_items(b.length)}};window.bt_bb_copy=function(t,e){if(window.bt_bb_cb_items>1){for(var b=2;b<=window.bt_bb_cb_items;b++){localStorage.removeItem("bt_bb_cb_"+b)}}var t=bt_bb_get_obj_by_id(t,e);localStorage.setItem("bt_bb_cb_1",JSON.stringify(t));bt_bb_set_number_items(1)};window.bt_bb_copy_plus=function(t,e){var b=bt_bb_get_obj_by_id(t,e);if(window.bt_bb_cb_items==0){localStorage.setItem("bt_bb_cb_1",JSON.stringify(b));bt_bb_set_number_items(1)}else{var a=JSON.parse(localStorage.getItem("bt_bb_cb_1"));var _=false;if(b.p_base!==undefined){_=bt_bb_allowed(a.base,b.p_base)}else if(window.bt_bb_map[b.base].root!==undefined&&window.bt_bb_map[a.base].root!==undefined){_=true}if(_){window.bt_bb_cb_items++;localStorage.setItem("bt_bb_cb_"+window.bt_bb_cb_items,JSON.stringify(b));bt_bb_set_number_items(window.bt_bb_cb_items)}else{alert(window.bt_bb_text.not_allowed)}}};window.bt_bb_paste=function(t,e){if(window.bt_bb_cb_items>0){var b=bt_bb_get_obj_by_id(t,e);var a=JSON.parse(localStorage.getItem("bt_bb_cb_1"));if(window.bt_bb_map[b.base].root!==undefined&&window.bt_bb_map[a.base].root!==undefined){for(var _=window.bt_bb_cb_items;_>=1;_--){a=JSON.parse(localStorage.getItem("bt_bb_cb_"+_));a=bt_bb_set_new_keys(a);bt_bb_insert_after(t,e,a)}}else if(bt_bb_allowed(a.base,b.p_base)){for(var _=window.bt_bb_cb_items;_>=1;_--){a=JSON.parse(localStorage.getItem("bt_bb_cb_"+_));a=bt_bb_set_new_keys(a);bt_bb_insert_after(t,e,a)}}else if(bt_bb_allowed(a.base,b.base)){for(var _=1;_<=window.bt_bb_cb_items;_++){a=JSON.parse(localStorage.getItem("bt_bb_cb_"+_));a=bt_bb_set_new_keys(a);bt_bb_insert_inside(t,e,a)}}else{alert(window.bt_bb_text.not_allowed)}}};window.bt_bb_paste_main_toolbar=function(){var t=JSON.parse(localStorage.getItem("bt_bb_cb_1"));if(window.bt_bb_map[t.base].root!==undefined){for(var e=1;e<=window.bt_bb_cb_items;e++){t=JSON.parse(localStorage.getItem("bt_bb_cb_"+e));t=bt_bb_set_new_keys(t);window.bt_bb_state_current.children.push(t)}bt_bb_event("refresh")}else{alert(window.bt_bb_text.not_allowed)}};window.bt_bb_dialog={};window.bt_bb_dialog.show=function(e){window.bt_bb_dialog.is_showing=true;var b="";if(e=="add_root"){var a=window.bt_bb_text.add_element;var i=[];t.each(window.bt_bb_map,function(t,e){if(e.root==true){i.push({base:e.base,name:e.name,description:e.description,icon:e.icon})}});i.sort(function(t,e){return t.name.toLowerCase().localeCompare(e.name.toLowerCase())});t.each(i,function(t,e){b+='<div class="bt_bb_dialog_item bt_bb_dialog_add_element'+e.icon!==undefined?" "+e.icon:""+'" data-base="'+e.base+'"><b>'+e.name+"</b><i>"+e.description+"</i></div>"});t("#bt_bb_dialog .bt_bb_dialog_content").html(b);t(".bt_bb_dialog_add_element").click(function(e){window.bt_bb_base=t(this).data("base");window.bt_bb_dialog.hide();bt_bb_event("add_root_from_dialog")})}else if(e=="add"){var a=window.bt_bb_text.add_element;var i=[];t.each(window.bt_bb_map,function(t,e){var b;if(window.bt_bb_map[window.bt_bb_base].accept!==undefined){b=window.bt_bb_map[window.bt_bb_base].accept[e.base]}if((b===true||window.bt_bb_map[window.bt_bb_base].accept_all===true&&b!==false||window.bt_bb_map[e.base].as_child!==undefined&&window.bt_bb_map[e.base].as_child["only"].indexOf(window.bt_bb_base)!=-1)&&(window.bt_bb_map[e.base].as_child===undefined||window.bt_bb_map[e.base].as_child!==undefined&&window.bt_bb_map[e.base].as_child["only"].indexOf(window.bt_bb_base)!=-1)){if(window.bt_bb_map[e.base].is_mapped!==false){i.push({base:e.base,name:e.name,description:e.description,icon:e.icon})}}});i.sort(function(t,e){return t.name.toLowerCase().localeCompare(e.name.toLowerCase())});var n="";n+='<div class="bt_bb_dialog_item bt_bb_add_filter_container">';n+='<input type="text" class="bt_bb_filter" placeholder="'+window.bt_bb_text.filter+'">';n+="</div>";t("#bt_bb_dialog .bt_bb_dialog_header_tools").append(n);var o=document.createDocumentFragment();var d,s,r,l;t.each(i,function(t,e){d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item bt_bb_dialog_add_element"+(e.icon!==undefined?" bt_bb_icon "+e.icon:"")],["data-base",e.base]]);s=bt_bb_create_dom_element("b",[]);l=document.createTextNode(e.name);s.appendChild(l);d.appendChild(s);r=bt_bb_create_dom_element("i",[]);l=document.createTextNode(e.description);r.appendChild(l);d.appendChild(r);o.appendChild(d)});t("#bt_bb_dialog .bt_bb_dialog_content")[0].appendChild(o);t(".bt_bb_dialog_add_element").click(function(e){window.bt_bb_base=t(this).data("base");window.bt_bb_dialog.hide();bt_bb_event("add_from_dialog")});t(".bt_bb_filter").keyup(function(e){var b=t(this).val();t(".bt_bb_dialog_item").not(".bt_bb_add_filter_container").each(function(){var e=t(this).html().replace(/(<([^>]+)>)/gi,"");var a=new RegExp(b,"i");if(!a.test(e)){t(this).hide()}else{t(this).show()}})})}else if(e=="add_horizontal"){var c=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from);var p="";for(var r=0;r<c.children.length;r++){var w=window.bt_bb_map[c.children[r].base].width_param;var m=attr_to_obj(c.children[r].attr);p+=m[w];if(r<c.children.length-1)p+="+"}var a=window.bt_bb_text.select_layout;t("#bt_bb_dialog").addClass("bt_bb_dialog_add_horizontal");b+='<div class="bt_bb_dialog_pick_layout_container">';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_11" title="1/1"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_12_12" title="1/2+1/2"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_13_13_13" title="1/3+1/3+1/3"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_14_14_14" title="1/4+1/4+1/4+1/4"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_23_13" title="2/3+1/3"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_13_23" title="1/3+2/3"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_34_14" title="3/4+1/4"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_34" title="1/4+3/4"></span>';b+='<span class="bt_bb_dialog_pick_layout bt_bb_dialog_14_24_14" title="1/4+2/4+1/4"></span>';b+="</div>";b+='<div class="bt_bb_dialog_enter_layout_container">';b+='<div contenteditable="true" class="bt_bb_dialog_enter_layout">1/1</div>';b+="</div>";t("#bt_bb_dialog .bt_bb_dialog_content").html(b);t("#bt_bb_dialog").append('<input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small" value="'+window.bt_bb_text.submit+'">');if(p!=""){t(".bt_bb_dialog_enter_layout").html(p)}t(".bt_bb_dialog_pick_layout").click(function(e){t(".bt_bb_dialog_enter_layout").html(t(this).attr("title").replace(/\s/gm,""));t(".bt_bb_dialog_enter_layout").focus()});t(".bt_bb_dialog_enter_layout").keypress(function(e){if(e.which==13){e.preventDefault();bt_bb_add_horizontal(window.bt_bb_state_current,t(this).html());window.bt_bb_dialog.hide()}});t(".bt_bb_dialog_add_horizontal .bt_bb_dialog_button").click(function(e){bt_bb_add_horizontal(window.bt_bb_state_current,t(".bt_bb_dialog_enter_layout").html());window.bt_bb_dialog.hide()})}else if(e=="edit_content"){var a=window.bt_bb_text.edit_content;t("#bt_bb_dialog").addClass("bt_bb_dialog_tinymce_container");t(".bt_bb_dialog_tinymce").show();t(".bt_bb_dialog_button").unbind("click");t(".bt_bb_dialog_button").click(function(){window.switchEditors.go("bt_bb_tinymce","tmce");var t=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from);t.content=tinyMCE.get("bt_bb_tinymce").getContent();if(t.content.startsWith("<p>[")&&t.content.endsWith("]</p>")){t.content=t.content.substring(3);t.content=t.content.substring(0,t.content.length-4)}window.bt_bb_action="refresh";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event");window.bt_bb_dialog.hide()});t("#bt_bb_dialog").css("visibility","visible");t("#bt_bb_dialog .mce-i-resize").show()}else if(e=="edit"){var a=window.bt_bb_text.edit;var c=bt_bb_get_obj_by_id(window.bt_bb_state_current,window.bt_bb_from);var m={};if(c.attr!==undefined){m=attr_to_obj(c.attr)}if(window.bt_bb_map[c.base]!==undefined){a=a+" "+window.bt_bb_map[c.base].name;t("#bt_bb_dialog").removeClass();t("#bt_bb_dialog").addClass("bt_bb_dialog"+" "+c.base);var f=window.bt_bb_map[c.base].params;if(f!==undefined){var o=document.createDocumentFragment();var h=new Array;var u="";var v="";window.bt_bb.param_groups=[];for(var r=0;r<f.length;r++){b="";var g="";if(m[f[r].param_name]!==undefined){g=m[f[r].param_name]}else{m[f[r].param_name]=""}if(f[r].group!==undefined){u=f[r].group}else{u=window.bt_bb_text.general}v=" bt_bb_group_"+u.replace(" ","_").replace(/^[^a-z]+|[^\w:.-]+/gi,"");if(window.bt_bb.param_groups.indexOf(u)==-1){window.bt_bb.param_groups.push(u)}if(f[r].type=="attach_images"||f[r].type=="attach_image"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);b+="<b>"+f[r].heading+"</b>";b+='<div class="bt_bb_dialog_image_container">';var y=g.split(",");if(y[0]!=""){for(var k=0;k<y.length;k++){b+='<div class="bt_bb_sortable_item" data-id="'+y[k]+'"><i class="fa fa-times"></i></div>';setTimeout(window.bt_bb_sortable_background,100,y[k])}}b+="</div>";b+='<div class="bt_bb_dialog_inline_buttons bt_bb_left">';b+='<input type="button" class="bt_bb_dialog_select_images_button button button-small" value="'+window.bt_bb_text.select+'">';b+="</div>";d.innerHTML=b}else if(f[r].type=="textfield"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);var x="";if(g==""){if(f[r].value!==undefined){x=f[r].value;x=bt_bb_special_char_decode(x)}}else{x=bt_bb_special_char_decode(g)}d.innerHTML="<b>"+f[r].heading+'</b><input type="text" value="'+x+'">'}else if(f[r].type=="datetime-local"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);var x="";if(g==""){if(f[r].value!==undefined){x=f[r].value
|
2 |
+
;x=bt_bb_special_char_decode(x)}}else{x=bt_bb_special_char_decode(g)}d.innerHTML="<b>"+f[r].heading+'</b><input type="datetime-local" value="'+x+'">'}else if(f[r].type=="textarea"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);d.innerHTML="<b>"+f[r].heading+'</b><textarea rows="5">'+bt_bb_special_char_decode(g)+"</textarea>"}else if(f[r].type=="textarea_object"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);try{d.innerHTML="<b>"+f[r].heading+'</b><textarea rows="5">'+b64DecodeUnicode(g)+"</textarea>"}catch(t){d.innerHTML="<b>"+f[r].heading+'</b><textarea rows="5">'+g+"</textarea>"}}else if(f[r].type=="dropdown"||f[r].type=="dropdown_color"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);b+="<b>"+f[r].heading+"</b>";b+="<select";var C=f[r].value;var S=Object.keys(C);for(var O=0;O<S.length;O++){if(g==C[S[O]]||g==""&&O==0){b+=">";if(f[r].type=="dropdown_color"){b+='<option value="'+C[S[O]]+'" selected>'+S[O]+"</option>"}else{b+='<option value="'+C[S[O]]+'" selected>'+S[O]+"</option>"}}else{b+=">";if(f[r].type=="dropdown_color"){b+='<option value="'+C[S[O]]+'">'+S[O]+"</option>"}else{b+='<option value="'+C[S[O]]+'">'+S[O]+"</option>"}}}b+="</select>";d.innerHTML=b}else if(f[r].type=="iconpicker"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);b+="<b>"+f[r].heading+"</b>";b+=window.bt_bb_iconpicker(f[r].value,g);d.innerHTML=b}else if(f[r].type=="colorpicker"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item bt_bb_colorpicker"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);b+="<b>"+f[r].heading+"</b>";b+='<input type="text" class="bt_bb_color_picker" value="'+bt_bb_special_char_decode(g)+'">';d.innerHTML=b}else if(f[r].type=="checkbox"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);b+="<b>"+f[r].heading+"</b>";var C=f[r].value;var S=Object.keys(C);var E="";if(g==C[S[0]]){E=" "+"checked"}b+='<label for="bt_'+c.base+"_"+f[r].param_name+'"><input id="bt_'+c.base+"_"+f[r].param_name+'" type="checkbox" value="'+C[S[0]]+'"'+E+"><span>"+S[0]+"</span></label>";d.innerHTML=b}else if(f[r].type=="checkbox_group"){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);b+="<b>"+f[r].heading+"</b>";var C=f[r].value;var S=Object.keys(C);var T=g.split(" ");for(var O=0;O<S.length;O++){var E="";if(t.inArray(C[S[O]],T)!=-1){E=" "+"checked"}b+='<label for="'+c.base+"_"+f[r].param_name+O+'"><input id="'+c.base+"_"+f[r].param_name+O+'" type="checkbox" value="'+C[S[O]]+'"'+E+"><span>"+S[O]+"</span></label>"}d.innerHTML=b}else if(f[r].type=="hidden"){var N=new Object;N.name=f[r].param_name;N.value=f[r].value;h.push(N)}else{if(window["bt_bb_cf_"+f[r].type+"_content"]!==undefined){var d=bt_bb_create_dom_element("div",[["class","bt_bb_dialog_item"+v],["data-param_name",f[r].param_name],["data-type",f[r].type]]);var z={};z.param_heading=f[r].heading;z.param_value=f[r].value;z.param_name=f[r].param_name;z.val=g;z.base=c.base;d.innerHTML=window["bt_bb_cf_"+f[r].type+"_content"](z)}}if(f[r].type!="hidden"){if(f[r].description!==undefined){var j=bt_bb_create_dom_element("i",[]);j.innerHTML=f[r].description;d.appendChild(j)}o.appendChild(d)}}t("#bt_bb_dialog").data("hidden",JSON.stringify(h));t("#bt_bb_dialog .bt_bb_dialog_content")[0].appendChild(o);t(".bt_bb_color_picker").wpColorPicker();t(".bt_bb_iconpicker_select").on("click",function(e){t(this).next().toggle();t(this).next().next().toggle()});t(".bt_bb_iconpicker_icons .bt_bb_icon_preview").on("click",function(e){var b=t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon",t(this).data("icon"));b.attr("data-icon-code",t(this).data("icon-code"));b.removeClass();b.addClass(t(this).attr("class"));t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_iconpicker_select_text").html(t(this).attr("title"));t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_clear").show();t(this).parent().hide();t(this).parent().prev().find("input").val("").trigger("keyup");t(this).parent().prev().hide()});t(".bt_bb_iconpicker .bt_bb_iconpicker_clear").on("click",function(e){e.stopPropagation();var b=t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon","");b.attr("data-icon-code","");b.parent().find(".bt_bb_iconpicker_select_text").html("");t(this).closest(".bt_bb_iconpicker").find("input").val("");t(this).parent().next().find("input").val("").trigger("keyup");t(this).parent().next().hide();t(this).parent().next().next().hide();t(this).hide()});t(".bt_bb_iconpicker .bt_bb_filter").keyup(function(e){var b=t(this).val();t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_icons .bt_bb_icon_preview").each(function(){var e=t(this).attr("title");var a=new RegExp(b,"i");if(!a.test(e)){t(this).hide()}else{t(this).show()}})});t('#bt_bb_dialog .bt_bb_dialog_item[data-type="attach_images"] .bt_bb_dialog_image_container').sortable({cursor:"move",update:function(e,b){var a=t(this).closest(".bt_bb_dialog_item").data("param_name");var _="";t(this).find(".bt_bb_sortable_item").each(function(){_+=t(this).data("id")+","});_=_.slice(0,-1);m[a]=_}});t("#bt_bb_dialog .bt_bb_dialog_image_container").on("click",".fa-times",function(e){var b=t(this).closest(".bt_bb_dialog_item").data("param_name");var a=t(this).closest(".bt_bb_dialog_image_container");t(this).parent().remove();var _="";a.find(".bt_bb_sortable_item").each(function(){_+=t(this).data("id")+","});_=_.slice(0,-1);m[b]=_});t("#bt_bb_dialog .bt_bb_dialog_image_container").disableSelection();t(".bt_bb_dialog_item").on("click",".bt_bb_dialog_select_images_button",function(e){var b=bt_bb_get_key();var a=t(this).closest(".bt_bb_dialog_item").find(".bt_bb_dialog_image_container");var i=t(this).closest(".bt_bb_dialog_item").data("param_name");var n=t(this).closest(".bt_bb_dialog_item").data("type");var o="add";if(n=="attach_image"){o=false}var d=wp.media.controller.Library.extend({defaults:_.defaults({id:b,title:window.bt_bb_text.select_images,allowLocalEdits:false,displaySettings:false,displayUserSettings:false,multiple:o,type:"image"},wp.media.controller.Library.prototype.defaults)});var s=wp.media({button:{text:window.bt_bb_text.select},state:b,states:[new d]});s.on("close",function(){var t=s.state(b).get("selection");var e="";var _="";t.each(function(t){if(t.attributes.sizes!==undefined){var b="";if(t.attributes.sizes.thumbnail!==undefined){b=t.attributes.sizes.thumbnail.url}else{b=t.attributes.sizes.full.url}_+=t.id+",";window.bt_bb.cache[t.id]={};window.bt_bb.cache[t.id].url=b;window.bt_bb.cache[t.id].title=t.attributes.title;e+='<div class="bt_bb_sortable_item" data-id="'+t.id+'" style="background-image:url(\''+b+'\');"><i class="fa fa-times"></i></div>';a.html(e)}});_=_.slice(0,-1);m[i]=_});s.on("open",function(){var e=s.state(b).get("selection");a.find(".bt_bb_sortable_item").each(function(){var b=wp.media.attachment(t(this).data("id"));e.add(b)})});s.open()})}}if(window.bt_bb.param_groups.length>0){t(".bt_bb_dialog_item").hide()}t.each(window.bt_bb.param_groups,function(e,b){var a="bt_bb_group_tab";if(e==0){a="bt_bb_group_tab bt_bb_group_tab_active";t(".bt_bb_group_"+b).show()}t(".bt_bb_dialog_header_tools").append('<span class="'+a+'">'+b+"</span>")});t("#bt_bb_dialog .bt_bb_group_tab").click(function(e){var b=t(this).html();t(".bt_bb_dialog_item").hide();t(".bt_bb_group_"+b.replace(" ","_").replace(/^[^a-z]+|[^\w:.-]+/gi,"")).show();t(".bt_bb_group_tab").removeClass("bt_bb_group_tab_active");t(this).addClass("bt_bb_group_tab_active");window.bt_bb_resize_dialog()});t("#bt_bb_dialog").append('<input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small" value="'+window.bt_bb_text.submit+'">');t("#bt_bb_dialog .bt_bb_dialog_button").click(function(e){t("#bt_bb_dialog .bt_bb_dialog_item").each(function(){var e=t(this).data("param_name");var b=t(this).data("type");if(b=="textfield"||b=="datetime-local"||b=="colorpicker"){m[e]=bt_bb_special_char_encode(t(this).find("input").val())}else if(b=="checkbox"){if(t(this).find("input").prop("checked")){m[e]=t(this).find("input").val()}else{m[e]=""}}else if(b=="checkbox_group"){var a=[];t(this).find("input").each(function(){if(t(this).prop("checked")){a.push(t(this).val())}});m[e]=a.join(" ")}else if(b=="textarea"){m[e]=bt_bb_special_char_encode(t(this).find("textarea").val())}else if(b=="textarea_object"){try{m[e]=b64EncodeUnicode(t(this).find("textarea").val())}catch(b){m[e]=t(this).find("textarea").val()}}else if(b=="dropdown"){m[e]=t(this).find("select :selected").val()}else if(b=="iconpicker"){m[e]=t(this).find(".bt_bb_iconpicker_select .bt_bb_icon_preview").data("icon")}else{if(window["bt_bb_cf_"+b+"_on_submit"]!==undefined){m[e]=window["bt_bb_cf_"+b+"_on_submit"](t(this))}}});var b=JSON.parse(t("#bt_bb_dialog").data("hidden"));for(var a=0;a<b.length;a++){m[""+b[a].name]=b[a].value}c.attr=JSON.stringify(m);window.bt_bb_dialog.hide();window.bt_bb_action="refresh";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")})}else if(e=="manage_cb"){a=window.bt_bb_text.manage_cb;b+='<div class="bt_bb_dialog_item">';b+='<input type="text" class="bt_bb_impex_input">';b+="</div>";t("#bt_bb_dialog .bt_bb_dialog_content").html(b);t("#bt_bb_dialog").append('<div class="bt_bb_dialog_inline_buttons"><input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small bt_bb_button_export" value="'+window.bt_bb_text.export+'"><input type="button" class="bt_bb_dialog_button bt_bb_edit button button-small bt_bb_button_import" value="'+window.bt_bb_text.import+'"></div>');t("#bt_bb_dialog .bt_bb_button_export").click(function(e){if(window.bt_bb_cb_items>0){var b="[";for(var a=1;a<=window.bt_bb_cb_items;a++){b+='{"bt_bb_cb":"'+b64EncodeUnicode(encodeURIComponent(localStorage.getItem("bt_bb_cb_"+a)))+'"},'}b=b.substring(0,b.length-1);b+="]";t(".bt_bb_impex_input").val(b64EncodeUnicode(encodeURIComponent(b)));t(".bt_bb_impex_input").select()}});t("#bt_bb_dialog .bt_bb_button_import").click(function(e){if(t(".bt_bb_impex_input").val()){bt_bb_cb_import(t(".bt_bb_impex_input").val())}})}else if(e=="sc_mapper"){a=window.bt_bb_text.sc_mapper;t("#bt_bb_dialog").addClass("bt_bb_dialog_sc_mapper_container");var n="";n+='<div class="bt_bb_dialog_item bt_bb_sc_mapper_filter_container">';n+='<input type="text" class="bt_bb_filter" placeholder="'+window.bt_bb_text.filter+'">';n+="</div>";t("#bt_bb_dialog .bt_bb_dialog_header_tools").append(n);var R=function(t){var e=t;if(window.bt_bb_map_primary[t]!==undefined){e+=" "+"/"+" "+"p"}if(window.bt_bb_map_secondary[t]!==undefined){e+=" "+"/"+" "+"s"}return e};var o=document.createDocumentFragment();var d=bt_bb_create_dom_element("div",[["id","bt_bb_sc_mapper_accordion"]]);for(var r=0;r<window.bt_bb.all_sc.length;r++){if(window.bt_bb_map[window.bt_bb.all_sc[r]]!==undefined&&window.bt_bb_map[window.bt_bb.all_sc[r]].is_mapped!==false){var J=bt_bb_create_dom_element("h3",[["class","bt_bb_sc_mapper_item"]]);J.innerHTML='<i class="fa fa-chevron-down"></i><span>'+R(window.bt_bb.all_sc[r])+"</span>";var B=bt_bb_create_dom_element("div",[["data-base",window.bt_bb.all_sc[r]]])}else{var J=bt_bb_create_dom_element("h3",[["class","bt_bb_sc_mapper_item bt_bb_sc_mapper_unmapped"]]);J.innerHTML='<i class="fa fa-chevron-down"></i><span>'+window.bt_bb.all_sc[r]+"</span>";var B=bt_bb_create_dom_element("div",[["data-base",window.bt_bb.all_sc[r]]])}d.appendChild(J);d.appendChild(B)}o.appendChild(d);t("#bt_bb_dialog .bt_bb_dialog_content")[0].appendChild(o);t(".bt_bb_filter").keyup(function(e){var b=t(this).val();t("#bt_bb_sc_mapper_accordion > div").removeClass("bt_bb_map_item_active");t("#bt_bb_sc_mapper_accordion > h3").removeClass("bt_bb_map_header_active");t("#bt_bb_sc_mapper_accordion > h3 > i").removeClass("fa-chevron-up").addClass("fa-chevron-down");t(".bt_bb_sc_mapper_item").each(function(){var e=t(this).html().replace(/(<([^>]+)>)/gi,"");var a=new RegExp(b,"i");if(!a.test(e)){t(this).hide()}else{t(this).show()}})});t(".bt_bb_sc_map").keydown(function(e){if(e.keyCode===9){e.preventDefault();var b=this.selectionStart;var a=this.selectionEnd;var _=t(this);_.val(_.val().substring(0,b)+"\t"+_.val().substring(a));this.selectionStart=this.selectionEnd=b+1;t(this).parent().find(".bt_bb_save_mapping_button").prop("disabled",false)}});t("#bt_bb_sc_mapper_accordion h3").click(function(e){var b=t(this).next();if(b.hasClass("bt_bb_map_item_active")){b[0].innerHTML="";b.removeClass("bt_bb_map_item_active");t(this).removeClass("bt_bb_map_header_active");t(this).find("i").removeClass("fa-chevron-up").addClass("fa-chevron-down")}else{var a='<input type="button" class="button button-small bt_bb_insert_mapping_template_button" value="'+window.bt_bb_text.insert_mapping+'"><input type="button" class="button button-small bt_bb_delete_mapping_button" disabled value="'+window.bt_bb_text.delete+'"><input type="button" class="button button-small bt_bb_save_mapping_button" disabled value="'+window.bt_bb_text.save+'"><span class="spinner" style="display: none;"></span><textarea class="bt_bb_sc_map" rows="10"></textarea>';b[0].innerHTML=a;autosize(t(".bt_bb_sc_map"));b.addClass("bt_bb_map_item_active");t(this).addClass("bt_bb_map_header_active");t(this).find("i").removeClass("fa-chevron-down").addClass("fa-chevron-up");var _=b.data("base");if(window.bt_bb_map_secondary[_]!==undefined){b.find(".bt_bb_delete_mapping_button").prop("disabled",false);b.find(".bt_bb_insert_existing_mapping_button").click();b.find(".bt_bb_save_mapping_button").prop("disabled",true)}}});t("#bt_bb_sc_mapper_accordion").on("keydown",".bt_bb_sc_map",function(){t(this).parent().find(".bt_bb_save_mapping_button").prop("disabled",false)});t("#bt_bb_sc_mapper_accordion").on("click",".bt_bb_insert_mapping_template_button",function(e){var b=t(this).parent().find("textarea");var a=t(this).parent().data("base");if(window.bt_bb_map[a]!==undefined&&window.bt_bb_map[a].is_mapped!==false){var _=JSON.stringify(window.bt_bb_map[a],null,"\t")}else if(window.vc_mapper!==undefined&&window.vc_mapper[a]!==undefined){var i=window.vc_mapper[a];_={};_.name=i.name!==undefined?i.name:"";_.base=i.base!==undefined?i.base:"";_.description=i.description!==undefined?i.description:"";_.show_settings_on_create=i.show_settings_on_create!==undefined?i.show_settings_on_create:true;if(i.is_container===true){if(i.base=="vc_row"){_.root=true;_.container="horizontal";_.accept={vc_column:true};_.toggle=true}else if(i.base=="vc_row_inner"){_.container="horizontal";_.accept={vc_column_inner:true}}else if(i.base=="vc_column"){_.container="vertical";_.width_param="width";_.accept_all=true;_.accept={vc_row:false,vc_column:false,vc_column_inner:false}}else if(i.base=="vc_column_inner"){_.container="vertical";_.width_param="width";_.accept_all=true;_.accept={vc_row:false,vc_column:false,vc_row_inner:false,vc_column_inner:false}}else{_.container="vertical"}}_.params=[];var n="";var o=0;for(var d=0;d<i.params.length;d++){if(i.params[d].type!="textarea_html"&&i.params[d].admin_label!==false){_.params[o]={};_.params[o].type="textfield";n=i.params[d].type;if(n=="textarea"||n=="dropdown"||n=="attach_image"||n=="attach_images"||n=="colorpicker"||n=="checkbox"||n=="checkbox_group"||n=="hidden"){_.params[o].type=n}_.params[o].heading=i.params[d].heading!==undefined?i.params[d].heading:"";if(i.params[d].description!==undefined)_.params[o].heading+=" "+"("+i.params[d].description+")";_.params[o].param_name=i.params[d].param_name!==undefined?i.params[d].param_name:"";_.params[o].value=i.params[d].value!==undefined?i.params[d].value:"";if(i.params[d].holder!==undefined)_.params[o].preview=true;o++}else if(i.params[d].type=="textarea_html"){_.container="vertical";_.accept={_content:true}}}_=JSON.stringify(_,null,"\t")}else{var _={};_.name=a;_.base=a;_.description="";_.show_settings_on_create=true;_.params=[];_.params[0]={};_.params[0].type="textfield";_.params[0].heading="Param 1";_.params[0].param_name="param_1";_.params[0].value="";_.params[0].preview=true;_.params[1]={};_.params[1].type="dropdown";_.params[1].heading="Param 2";_.params[1].param_name="param_2";_.params[1].value={"Option 1":"value 1","Option 2":"value 2"};_.params[1].preview=true;_=JSON.stringify(_,null,"\t")}b.val(_);var s=document.createEvent("Event");s.initEvent("autosize:update",true,false);b[0].dispatchEvent(s);t(this).parent().find(".bt_bb_save_mapping_button").prop("disabled",false)});t("#bt_bb_sc_mapper_accordion").on("click",".bt_bb_save_mapping_button",function(e){var b=t(this).parent().data("base");var a=t(this);try{var _=JSON.parse(t(this).parent().find(".bt_bb_sc_map").val())}catch(e){alert(e);return false}var i=JSON.stringify(_);a.siblings(".spinner").show();a.siblings(".spinner").css("visibility","visible");var n={action:"bt_bb_save_mapping",base:b,map:i};t.ajax({type:"POST",url:window.BTAJAXURL,data:n,async:true,success:function(t){if(t=="ok"){a.prop("disabled",true);a.siblings(".spinner").hide();a.closest("div").prev(".bt_bb_sc_mapper_item").removeClass("bt_bb_sc_mapper_unmapped");window.bt_bb_map[b]=JSON.parse(i);if(window.bt_bb_map_secondary[b]===undefined){window.bt_bb_map_secondary[b]=true}a.closest("div").prev(".bt_bb_sc_mapper_item").find("span").html(R(b));if(window.bt_bb_map_secondary[b]!==undefined){a.parent("div").find(".bt_bb_delete_mapping_button").prop("disabled",false)}window.bt_bb_action="refresh";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")}}})});t("#bt_bb_sc_mapper_accordion").on("click",".bt_bb_delete_mapping_button",function(e){var b=t(this).parent().data("base");var a=t(this);a.siblings(".spinner").show();a.siblings(".spinner").css("visibility","visible");var _={action:"bt_bb_delete_mapping",base:b};t.ajax({type:"POST",url:window.BTAJAXURL,data:_,async:true,success:function(t){if(t=="ok"){a.prop("disabled",true);a.siblings(".spinner").hide();if(window.bt_bb_map_secondary[b]!==undefined){delete window.bt_bb_map_secondary[b]}a.parent().find("textarea").val("");if(window.bt_bb_map_primary[b]===undefined){a.closest("div").prev(".bt_bb_sc_mapper_item").addClass("bt_bb_sc_mapper_unmapped");delete window.bt_bb_map[b];window.bt_bb_action="refresh";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")}else{window.bt_bb_map[b]=window.bt_bb_map_primary[b]}a.closest("div").prev(".bt_bb_sc_mapper_item").find("span").html(R(b))}}})})}else if(e=="custom_css"){a=window.bt_bb_text.custom_css;b+='<div class="bt_bb_dialog_item">';b+='<textarea id="bt_bb_custom_css_content" class="bt_bb_custom_css_content" rows="10">'+b64DecodeUnicode(window.bt_bb_custom_css)+"</textarea>";b+="</div>";t("#bt_bb_dialog .bt_bb_dialog_content").html(b);t("#bt_bb_dialog").append('<div class="bt_bb_dialog_inline_buttons"><input type="button" class="bt_bb_dialog_button button button-small bt_bb_button_save_custom_css" value="'+window.bt_bb_text.save+'"></div>');if(wp.codeEditor!==undefined){window.bt_bb_ce=wp.codeEditor.initialize("bt_bb_custom_css_content")}else{t("#bt_bb_dialog").on("keydown",".bt_bb_custom_css_content",function(e){if(e.keyCode===9){e.preventDefault();var b=this.selectionStart;var a=this.selectionEnd;var _=t(this);_.val(_.val().substring(0,b)+"\t"+_.val().substring(a));this.selectionStart=this.selectionEnd=b+1}})}}t("#bt_bb_dialog .bt_bb_dialog_header span").html(a);t('.bt_bb_dialog_item input[type="text"]').keypress(function(t){if(t.which==13){t.preventDefault()}});if(e=="edit_content"){t(".bt_bb_dialog_tinymce").css("height","auto");window.switchEditors.go("bt_bb_tinymce","tmce");tinyMCE.get("bt_bb_tinymce").setContent(window.switchEditors.wpautop(window.bt_bb_content))}else{t("#bt_bb_dialog").css("visibility","visible");t("#bt_bb_dialog .mce-i-resize").show()}if(e=="add"||e=="sc_mapper"){t(".bt_bb_filter").focus()}window.bt_bb_resize_dialog()};window.bt_bb_dialog.hide=function(e){window.bt_bb_dialog.is_showing=false;window.bt_bb_dialog.is_mouseover=false;t(".wp-picker-open").click();t(".bt_bb_dialog_tinymce").hide();t("#bt_bb_dialog").data("hidden","");t("#bt_bb_dialog").removeClass("bt_bb_dialog_tinymce_container");t("#bt_bb_dialog").removeClass("bt_bb_dialog_sc_mapper_container");t("#bt_bb_dialog").removeClass("bt_bb_dialog_add_horizontal");t("#bt_bb_dialog").removeClass("bt_bb_dialog_custom_css");var b=t("#bt_bb_dialog .bt_bb_dialog_content")[0];while(b.firstChild){b.removeChild(b.firstChild)}t("#bt_bb_dialog .bt_bb_dialog_header")[0].innerHTML='<div class="bt_bb_dialog_close"></div><span></span>';t("#bt_bb_dialog .bt_bb_dialog_header_tools")[0].innerHTML="";t("#bt_bb_dialog > input").remove();t("#bt_bb_dialog > .bt_bb_dialog_inline_buttons").remove();t("#bt_bb_dialog").css("visibility","hidden")};t(document).ready(function(){t("#bt_bb_dialog").on("click",".bt_bb_dialog_close",function(t){window.bt_bb_dialog.hide()})});window.bt_bb_get_obj_by_id=function(t,e){var b=null;for(var a=0;a<t.children.length;a++){if(e.bt_ends_with(t.children[a].key)){b=t.children[a];break}b=bt_bb_get_obj_by_id(t.children[a],e);if(b!=null)break}return b};window.bt_bb_get_param=function(t,e){if(window.bt_bb_map[t]!==undefined){return window.bt_bb_map[t][e]}return undefined};window.bt_bb_state_callback=function(){bt_bb_horizontal_responsive();if(window.bt_bb_callback_action!==null){bt_bb_event(window.bt_bb_callback_action)}};window.bt_bb_horizontal_responsive=function(){t(".bt_bb_horizontal").each(function(){var e=t(this).width();var b=false;t(this).find(".bt_bb_is_width").each(function(){var a=bt_bb_get_obj_by_id(window.bt_bb_state_current,t(this).data("reactid"));var _=window.bt_bb_map[a.base].width_param;var i=attr_to_obj(a.attr);var n=i[_];n=n.split("/");n=12*n[0]/n[1];var o=e*n/12;if(o<window.bt_bb.min_width){b=true;return false}});if(b){t(this).find(".bt_bb_is_width").removeClass("bt_bb_width");t(this).css("display","block")}else{t(this).find(".bt_bb_is_width").addClass("bt_bb_width");t(this).css("display","table")}})};t(window).resize(function(){bt_bb_horizontal_responsive()});window.bt_bb_push_state=function(t){window.bt_bb_state_current=t;window.bt_bb_state.splice(window.bt_bb_state_pointer+1);window.bt_bb_state.push(JSON.stringify(t));window.bt_bb_state_pointer=window.bt_bb_state.length-1};window.bt_bb_undo=function(){window.bt_bb_dialog.hide();window.bt_bb_state_pointer--;if(window.bt_bb_state_pointer>-1){window.bt_bb_state_current=JSON.parse(window.bt_bb_state[window.bt_bb_state_pointer]);window.bt_bb_action="update_state";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")}else{window.bt_bb_state_pointer++}};window.bt_bb_redo=function(){window.bt_bb_dialog.hide();window.bt_bb_state_pointer++;if(window.bt_bb_state_pointer<=window.bt_bb_state.length-1){window.bt_bb_state_current=JSON.parse(window.bt_bb_state[window.bt_bb_state_pointer]);window.bt_bb_action="update_state";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")}else{window.bt_bb_state_pointer--}};window.bt_bb_sortable_background=function(e){if(window.bt_bb.cache[e]===undefined){var b=wp.media.attachment(e);b.fetch().done(function(e){var b="";if(e.sizes.thumbnail!==undefined){b=e.sizes.thumbnail.url}else{b=e.sizes.full.url}t('.bt_bb_sortable_item[data-id="'+e.id+'"]').css("background-image",'url("'+b+'")');t('.bt_bb_sortable_item[data-id="'+e.id+'"]').css("background-size","cover");window.bt_bb.cache[e.id]={};window.bt_bb.cache[e.id].url=b;window.bt_bb.cache[e.id].title=e.title})}else{t('.bt_bb_sortable_item[data-id="'+e+'"]').css("background-image",'url("'+window.bt_bb.cache[e].url+'")');t('.bt_bb_sortable_item[data-id="'+e+'"]').css("background-size","cover")}};window.bt_bb_iconpicker=function(t,e){var b='<div class="bt_bb_iconpicker">';var a=Object.keys(t);var _;b+='<div class="bt_bb_iconpicker_select">';var i=e.slice(0,-5);var n=e.substr(-4);var o="";for(var d=0;d<a.length;d++){_=Object.keys(t[a[d]]);for(var s=0;s<_.length;s++){if(e==t[a[d]][_[s]]){o=_[s]}}}if(n!=""){n="&#x"+n}b+='<div class="bt_bb_icon_preview bt_bb_icon_preview_'+i+'" data-icon="'+e+'" data-icon-code="'+n+'"></div>';b+='<div class="bt_bb_iconpicker_select_text">'+o+"</div>";var r=o!=""?"block":"none";b+='<i class="fa fa-close bt_bb_iconpicker_clear" style="display:'+r+'"></i>';b+='<i class="fa fa-angle-down"></i>';b+="</div>";b+='<div class="bt_bb_iconpicker_filter_container">';b+='<input type="text" class="bt_bb_filter" placeholder="'+window.bt_bb_text.filter+'">';b+="</div>";b+='<div class="bt_bb_iconpicker_icons">';for(var l=0;l<a.length;l++){b+='<div class="bt_bb_iconpicker_title">'+a[l]+"</div>";_=Object.keys(t[a[l]]);for(var c=0;c<_.length;c++){var e=t[a[l]][_[c]];var i=e.slice(0,-5);var n=e.substr(-4);b+='<div class="bt_bb_icon_preview bt_bb_icon_preview_'+i+'" data-icon="'+e+'" data-icon-code="&#x'+n+'" title="'+_[c]+'"></div>'}}b+="</div>";b+="</div>";return b};String.prototype.bt_ends_with=function(t){return this.indexOf(t,this.length-t.length)!==-1};window.bt_bb_get_key=function(){var t="bt_bb_"+Math.random().toString();t=t.replace(".","");return t};window.bt_bb_dispatch=function(e,b){try{var a=new Event(b)}catch(t){var a=document.createEvent("Event");a.initEvent(b,false,false)}t(e)[0].dispatchEvent(a)};t(document).ready(function(){if(t("#bt_bb").length>0){window.bt_bb_element_list=BTReact.render(BTReact.createElement(b,{data:window.bt_bb_data}),t("#bt_bb")[0],function(){bt_bb_horizontal_responsive();bt_bb_resize_h(window.bt_bb_data);window.bt_bb_action="refresh_on_ready";bt_bb_dispatch(".bt_bb_item_list","bt_bb_event")})}t("body").on("click",".bt_bb_iconpicker_widget_container .bt_bb_iconpicker_select",function(e){t(this).next().toggle();t(this).next().next().toggle()});t("body").on("click",".bt_bb_iconpicker_widget_container .bt_bb_icon_preview",function(e){var b=t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon",t(this).data("icon"));b.attr("data-icon-code",t(this).data("icon-code"));b.removeClass();b.addClass(t(this).attr("class"));t(this).closest(".bt_bb_iconpicker").find("input").val(t(this).data("icon"));t(this).closest(".bt_bb_iconpicker").find("input").trigger("change");t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_iconpicker_select_text").html(t(this).attr("title"));t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_clear").show();t(this).parent().hide();t(this).parent().prev().find("input").val("").trigger("keyup");t(this).parent().prev().hide()});t("body").on("click",".bt_bb_iconpicker_widget_container .bt_bb_iconpicker_clear",function(e){e.stopPropagation();var b=t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_select .bt_bb_icon_preview");b.attr("data-icon","");b.attr("data-icon-code","");b.parent().find(".bt_bb_iconpicker_select_text").html("");t(this).closest(".bt_bb_iconpicker").find("input").val("");t(this).closest(".bt_bb_iconpicker").find("input").trigger("change");t(this).parent().next().find("input").val("").trigger("keyup");t(this).parent().next().hide();t(this).parent().next().next().hide();t(this).hide()});t("body").on("keyup",".bt_bb_iconpicker_widget_container .bt_bb_filter",function(e){var b=t(this).val();t(this).closest(".bt_bb_iconpicker").find(".bt_bb_iconpicker_icons .bt_bb_icon_preview").each(function(){var e=t(this).attr("title");var a=new RegExp(b,"i");if(!a.test(e)){t(this).hide()}else{t(this).show()}})})});t(window).on("focus",function(){var t=localStorage.getItem("bt_bb_cb_items");bt_bb_set_number_items(t===null?0:t)})})(jQuery);function b64EncodeUnicode(t){return btoa(encodeURIComponent(t).replace(/%([0-9A-F]{2})/g,function(t,e){return String.fromCharCode(parseInt(e,16))}))}function b64DecodeUnicode(t){return decodeURIComponent(Array.prototype.map.call(atob(t),function(t){return"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)}).join(""))}
|
content_elements/bt_bb_accordion/bt_bb_accordion.js
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function( $ ) {
|
2 |
+
"use strict";
|
3 |
+
$( '.bt_bb_accordion_item_title' ).click(function() {
|
4 |
+
if ( ! $( this ).closest( '.bt_bb_accordion_item' ).hasClass('on') ) {
|
5 |
+
$( this ).closest( '.bt_bb_accordion' ).find( '.bt_bb_accordion_item.on' ).removeClass( 'on' );
|
6 |
+
$( this ).closest( '.bt_bb_accordion_item' ).addClass( 'on' );
|
7 |
+
if( !window.initialaccordion ){
|
8 |
+
var diff = $( this ).offset().top + $( this ).closest( '.bt_bb_accordion_item' ).outerHeight() - ( $( 'html' ).scrollTop() + $( window ).height() );
|
9 |
+
if( diff > 0 ) {
|
10 |
+
$('html, body').animate({
|
11 |
+
scrollTop: $( 'html' ).scrollTop() + diff + 15
|
12 |
+
}, 100);
|
13 |
+
}
|
14 |
+
|
15 |
+
} else {
|
16 |
+
window.initialaccordion = false;
|
17 |
+
}
|
18 |
+
|
19 |
+
} else {
|
20 |
+
$( this ).closest( '.bt_bb_accordion_item' ).removeClass( 'on' );
|
21 |
+
}
|
22 |
+
});
|
23 |
+
$( '.bt_bb_accordion' ).each(function() {
|
24 |
+
if ( $( this ).data( 'closed' ) != 'closed' ) {
|
25 |
+
window.initialaccordion = true;
|
26 |
+
$( this ).find( '.bt_bb_accordion_item_title' ).first().click();
|
27 |
+
}
|
28 |
+
});
|
29 |
+
})( jQuery );
|
content_elements/bt_bb_accordion/bt_bb_accordion.php
ADDED
@@ -0,0 +1,95 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_accordion extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'color_scheme' => '',
|
8 |
+
'style' => '',
|
9 |
+
'shape' => '',
|
10 |
+
'closed' => ''
|
11 |
+
) ), $atts, $this->shortcode ) );
|
12 |
+
|
13 |
+
wp_enqueue_script(
|
14 |
+
'bt_bb_accordion',
|
15 |
+
plugin_dir_url( __FILE__ ) . 'bt_bb_accordion.js',
|
16 |
+
array( 'jquery' ),
|
17 |
+
BT_BB_VERSION,
|
18 |
+
true
|
19 |
+
);
|
20 |
+
|
21 |
+
$class = array( $this->shortcode );
|
22 |
+
|
23 |
+
if ( $el_class != '' ) {
|
24 |
+
$class[] = $el_class;
|
25 |
+
}
|
26 |
+
|
27 |
+
$id_attr = '';
|
28 |
+
if ( $el_id != '' ) {
|
29 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
30 |
+
}
|
31 |
+
|
32 |
+
$style_attr = '';
|
33 |
+
if ( $el_style != '' ) {
|
34 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
35 |
+
}
|
36 |
+
|
37 |
+
if ( $color_scheme != '' ) {
|
38 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
39 |
+
}
|
40 |
+
|
41 |
+
if ( $style != '' ) {
|
42 |
+
$class[] = $this->prefix . 'style' . '_' . $style;
|
43 |
+
}
|
44 |
+
|
45 |
+
if ( $shape != '' ) {
|
46 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
47 |
+
}
|
48 |
+
|
49 |
+
$data_attr = '';
|
50 |
+
if ( $closed == 'closed' ) {
|
51 |
+
$data_attr = ' ' . 'data-closed=closed';
|
52 |
+
}
|
53 |
+
|
54 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
55 |
+
|
56 |
+
$content = do_shortcode( $content );
|
57 |
+
|
58 |
+
$output = '';
|
59 |
+
|
60 |
+
$output .= '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . $data_attr . '>' . $content . '</div>';
|
61 |
+
|
62 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
63 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
64 |
+
|
65 |
+
return $output;
|
66 |
+
|
67 |
+
}
|
68 |
+
|
69 |
+
function map_shortcode() {
|
70 |
+
|
71 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
72 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
73 |
+
|
74 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Accordion', 'bold-builder' ), 'description' => esc_html__( 'Accordion container', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_accordion_item' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
75 |
+
'params' => array(
|
76 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true ),
|
77 |
+
array( 'param_name' => 'style', 'type' => 'dropdown', 'heading' => esc_html__( 'Style', 'bold-builder' ), 'preview' => true,
|
78 |
+
'value' => array(
|
79 |
+
esc_html__( 'Outline', 'bold-builder' ) => 'outline',
|
80 |
+
esc_html__( 'Filled', 'bold-builder' ) => 'filled',
|
81 |
+
esc_html__( 'Simple', 'bold-builder' ) => 'simple'
|
82 |
+
)
|
83 |
+
),
|
84 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Shape', 'bold-builder' ),
|
85 |
+
'value' => array(
|
86 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
87 |
+
esc_html__( 'Rounded', 'bold-builder' ) => 'rounded',
|
88 |
+
esc_html__( 'Round', 'bold-builder' ) => 'round'
|
89 |
+
)
|
90 |
+
),
|
91 |
+
array( 'param_name' => 'closed', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'closed' ), 'heading' => esc_html__( 'All items closed initially', 'bold-builder' ), 'preview' => true )
|
92 |
+
)
|
93 |
+
) );
|
94 |
+
}
|
95 |
+
}
|
content_elements/bt_bb_accordion_item/bt_bb_accordion_item.php
ADDED
@@ -0,0 +1,37 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_accordion_item extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'title' => ''
|
8 |
+
) ), $atts, $this->shortcode ) );
|
9 |
+
|
10 |
+
$class = array( $this->shortcode );
|
11 |
+
|
12 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
13 |
+
|
14 |
+
$output = '<div class="' . implode( ' ', $class ) . '">';
|
15 |
+
$output .= '<div class="bt_bb_accordion_item_title">' . $title . '</div>';
|
16 |
+
$output .= '<div class="bt_bb_accordion_item_content">' . wpautop( wptexturize( do_shortcode( $content ) ) ) . '</div>';
|
17 |
+
$output .= '</div>';
|
18 |
+
|
19 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
20 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
21 |
+
|
22 |
+
return $output;
|
23 |
+
|
24 |
+
}
|
25 |
+
|
26 |
+
function add_params() {
|
27 |
+
// removes default params from BT_BB_Element
|
28 |
+
}
|
29 |
+
|
30 |
+
function map_shortcode() {
|
31 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Accordion Item', 'bold-builder' ), 'description' => esc_html__( 'Single accordion element', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_section' => false, 'bt_bb_row' => false, 'bt_bb_column' => false, 'bt_bb_column_inner' => false, 'bt_bb_tabs' => false, 'bt_bb_tab_item' => false, 'bt_bb_accordion' => false, 'bt_bb_accordion_item' => false, 'bt_bb_cost_calculator_item' => false, 'bt_cc_group' => false, 'bt_cc_multiply' => false, 'bt_cc_item' => false, 'bt_bb_content_slider_item' => false, 'bt_bb_google_maps_location' => false, '_content' => false ), 'accept_all' => true, 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
32 |
+
'params' => array(
|
33 |
+
array( 'param_name' => 'title', 'type' => 'textfield', 'heading' => esc_html__( 'Title', 'bold-builder' ), 'preview' => true )
|
34 |
+
)
|
35 |
+
) );
|
36 |
+
}
|
37 |
+
}
|
content_elements/bt_bb_button/bt_bb_button.php
ADDED
@@ -0,0 +1,209 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_button extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'text' => '',
|
8 |
+
'icon' => '',
|
9 |
+
'icon_position' => '',
|
10 |
+
'url' => '',
|
11 |
+
'target' => '',
|
12 |
+
'color_scheme' => '',
|
13 |
+
'font' => '',
|
14 |
+
'font_subset' => '',
|
15 |
+
'style' => '',
|
16 |
+
'size' => '',
|
17 |
+
'width' => '',
|
18 |
+
'shape' => '',
|
19 |
+
'align' => 'inherit'
|
20 |
+
) ), $atts, $this->shortcode ) );
|
21 |
+
|
22 |
+
$class = array( $this->shortcode );
|
23 |
+
$data_override_class = array();
|
24 |
+
|
25 |
+
if ( $font != '' && $font != 'inherit' ) {
|
26 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
27 |
+
bt_bb_enqueue_google_font( $font, $font_subset );
|
28 |
+
}
|
29 |
+
|
30 |
+
if ( $el_class != '' ) {
|
31 |
+
$class[] = $el_class;
|
32 |
+
}
|
33 |
+
|
34 |
+
$id_attr = '';
|
35 |
+
if ( $el_id != '' ) {
|
36 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
37 |
+
}
|
38 |
+
|
39 |
+
$style_attr = '';
|
40 |
+
|
41 |
+
if ( $font != '' && $font != 'inherit' ) {
|
42 |
+
$el_style = $el_style . ';' . 'font-family:\'' . urldecode( $font ) . '\'';
|
43 |
+
}
|
44 |
+
|
45 |
+
if ( $el_style != '' ) {
|
46 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
47 |
+
}
|
48 |
+
|
49 |
+
if ( $icon_position != '' ) {
|
50 |
+
$class[] = $this->prefix . 'icon_position' . '_' . $icon_position;
|
51 |
+
}
|
52 |
+
|
53 |
+
if ( $color_scheme != '' ) {
|
54 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
55 |
+
}
|
56 |
+
|
57 |
+
if ( $style != '' ) {
|
58 |
+
$class[] = $this->prefix . 'style' . '_' . $style;
|
59 |
+
}
|
60 |
+
|
61 |
+
$this->responsive_data_override_class(
|
62 |
+
$class, $data_override_class,
|
63 |
+
array(
|
64 |
+
'prefix' => $this->prefix,
|
65 |
+
'param' => 'size',
|
66 |
+
'value' => $size
|
67 |
+
)
|
68 |
+
);
|
69 |
+
|
70 |
+
if ( $width != '' ) {
|
71 |
+
$class[] = $this->prefix . 'width' . '_' . $width;
|
72 |
+
}
|
73 |
+
|
74 |
+
if ( $shape != '' ) {
|
75 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
76 |
+
}
|
77 |
+
|
78 |
+
$this->responsive_data_override_class(
|
79 |
+
$class, $data_override_class,
|
80 |
+
array(
|
81 |
+
'prefix' => $this->prefix,
|
82 |
+
'param' => 'align',
|
83 |
+
'value' => $align
|
84 |
+
)
|
85 |
+
);
|
86 |
+
|
87 |
+
if ( $target == '' ) {
|
88 |
+
$target = '_self';
|
89 |
+
}
|
90 |
+
|
91 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
92 |
+
|
93 |
+
$output = $this->get_html( $icon, $text, $url, $target );
|
94 |
+
|
95 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">' . $output . '</div>';
|
96 |
+
|
97 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
98 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
99 |
+
|
100 |
+
return $output;
|
101 |
+
|
102 |
+
}
|
103 |
+
|
104 |
+
function get_html( $icon, $text, $url, $target ) {
|
105 |
+
|
106 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
107 |
+
|
108 |
+
if ( $url == '' ) {
|
109 |
+
$url = '#';
|
110 |
+
}
|
111 |
+
|
112 |
+
$text_output = '';
|
113 |
+
|
114 |
+
if ( $text != '' ) {
|
115 |
+
$text_output = '<span class="bt_bb_button_text">' . $text . '</span>';
|
116 |
+
}
|
117 |
+
|
118 |
+
$link = bt_bb_get_url( $url );
|
119 |
+
|
120 |
+
// IMPORTANT: esc_attr must be used instead of esc_url
|
121 |
+
$output = '<a href="' . esc_attr( $link ) . '" target="' . esc_attr( $target ) . '" class="' . esc_attr( $this->prefix ) . 'link" title="' . esc_attr( $text ) . '">';
|
122 |
+
if ( $icon == '' || $icon == 'no_icon' ) {
|
123 |
+
$output .= $text_output;
|
124 |
+
} else {
|
125 |
+
$output .= $text_output . bt_bb_icon::get_html( $icon, '', '', '' );
|
126 |
+
}
|
127 |
+
$output .= '</a>';
|
128 |
+
|
129 |
+
return $output;
|
130 |
+
}
|
131 |
+
|
132 |
+
function map_shortcode() {
|
133 |
+
|
134 |
+
if ( function_exists('boldthemes_get_icon_fonts_bb_array') ) {
|
135 |
+
$icon_arr = boldthemes_get_icon_fonts_bb_array();
|
136 |
+
} else {
|
137 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/fa_icons.php' );
|
138 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/s7_icons.php' );
|
139 |
+
$icon_arr = array( 'Font Awesome' => bt_bb_fa_icons(), 'S7' => bt_bb_s7_icons() );
|
140 |
+
}
|
141 |
+
|
142 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
143 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
144 |
+
|
145 |
+
require( dirname(__FILE__) . '/../../content_elements_misc/fonts1.php' );
|
146 |
+
|
147 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Button', 'bold-builder' ), 'description' => esc_html__( 'Button with custom link', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
148 |
+
'params' => array(
|
149 |
+
array( 'param_name' => 'text', 'type' => 'textfield', 'heading' => esc_html__( 'Text', 'bold-builder' ), 'preview' => true ),
|
150 |
+
array( 'param_name' => 'icon', 'type' => 'iconpicker', 'heading' => esc_html__( 'Icon', 'bold-builder' ), 'value' => $icon_arr, 'preview' => true ),
|
151 |
+
array( 'param_name' => 'icon_position', 'type' => 'dropdown', 'heading' => esc_html__( 'Icon Position', 'bold-builder' ),
|
152 |
+
'value' => array(
|
153 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
154 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
155 |
+
)
|
156 |
+
),
|
157 |
+
array( 'param_name' => 'url', 'type' => 'link', 'heading' => esc_html__( 'URL', 'bold-builder' ), 'description' => esc_html__( 'Enter full or local URL (e.g. https://www.bold-themes.com or /pages/about-us) or post slug (e.g. about-us) or search for existing content.', 'bold-builder' ), 'preview' => true ),
|
158 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'heading' => esc_html__( 'Target', 'bold-builder' ),
|
159 |
+
'value' => array(
|
160 |
+
esc_html__( 'Self (open in same tab)', 'bold-builder' ) => '_self',
|
161 |
+
esc_html__( 'Blank (open in new tab)', 'bold-builder' ) => '_blank',
|
162 |
+
)
|
163 |
+
),
|
164 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Alignment', 'bold-builder' ), 'description' => esc_html__( 'Please note that it is not possible to show multiple buttons inline if any of them are using Center option.', 'bold-builder' ), 'responsive_override' => true,
|
165 |
+
'value' => array(
|
166 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
167 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
168 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
169 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
170 |
+
)
|
171 |
+
),
|
172 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ), 'responsive_override' => true,
|
173 |
+
'value' => array(
|
174 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
175 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
176 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
177 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
178 |
+
)
|
179 |
+
),
|
180 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
181 |
+
array( 'param_name' => 'font', 'type' => 'dropdown', 'heading' => esc_html__( 'Font', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ), 'preview' => true,
|
182 |
+
'value' => array( esc_html__( 'Inherit', 'bold-builder' ) => 'inherit' ) + BT_BB_Root::$font_arr
|
183 |
+
),
|
184 |
+
array( 'param_name' => 'font_subset', 'type' => 'textfield', 'heading' => esc_html__( 'Google Font subset', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ), 'value' => 'latin,latin-ext', 'description' => esc_html__( 'E.g. latin,latin-ext,cyrillic,cyrillic-ext', 'bold-builder' ) ),
|
185 |
+
array( 'param_name' => 'style', 'type' => 'dropdown', 'heading' => esc_html__( 'Style', 'bold-builder' ), 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ),
|
186 |
+
'value' => array(
|
187 |
+
esc_html__( 'Outline', 'bold-builder' ) => 'outline',
|
188 |
+
esc_html__( 'Filled', 'bold-builder' ) => 'filled',
|
189 |
+
esc_html__( 'Clean', 'bold-builder' ) => 'clean'
|
190 |
+
)
|
191 |
+
),
|
192 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Shape', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
193 |
+
'value' => array(
|
194 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
195 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
196 |
+
esc_html__( 'Rounded', 'bold-builder' ) => 'rounded',
|
197 |
+
esc_html__( 'Round', 'bold-builder' ) => 'round'
|
198 |
+
)
|
199 |
+
),
|
200 |
+
array( 'param_name' => 'width', 'type' => 'dropdown', 'heading' => esc_html__( 'Width', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
201 |
+
'value' => array(
|
202 |
+
esc_html__( 'Inline', 'bold-builder' ) => 'inline',
|
203 |
+
esc_html__( 'Full', 'bold-builder' ) => 'full'
|
204 |
+
)
|
205 |
+
)
|
206 |
+
)
|
207 |
+
) );
|
208 |
+
}
|
209 |
+
}
|
content_elements/bt_bb_column/bt_bb_column.php
ADDED
@@ -0,0 +1,288 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_column extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
8 |
+
'width' => '',
|
9 |
+
'width_lg' => '',
|
10 |
+
'width_md' => '',
|
11 |
+
'width_sm' => '',
|
12 |
+
'width_xs' => '',
|
13 |
+
'align' => 'left',
|
14 |
+
'vertical_align' => 'top',
|
15 |
+
'padding' => 'normal',
|
16 |
+
'order' => '',
|
17 |
+
'background_image' => '',
|
18 |
+
'lazy_load' => 'no',
|
19 |
+
'inner_background_image' => '',
|
20 |
+
'color_scheme' => '',
|
21 |
+
'background_color' => '',
|
22 |
+
'inner_background_color' => '',
|
23 |
+
'opacity' => ''
|
24 |
+
) ), $atts, $this->shortcode ) );
|
25 |
+
|
26 |
+
$class = array( $this->shortcode );
|
27 |
+
$data_override_class = array();
|
28 |
+
|
29 |
+
$class[] = $this->get_responsive_class( $width, 'xl' );
|
30 |
+
|
31 |
+
if ( $width_xs != '' ) {
|
32 |
+
$class[] = $this->get_responsive_class( $width_xs, 'xs' );
|
33 |
+
}
|
34 |
+
if ( $width_sm != '' ) {
|
35 |
+
$class[] = $this->get_responsive_class( $width_sm, 'sm' );
|
36 |
+
}
|
37 |
+
if ( $width_md != '' ) {
|
38 |
+
$class[] = $this->get_responsive_class( $width_md, 'md' );
|
39 |
+
}
|
40 |
+
if ( $width_lg != '' ) {
|
41 |
+
$class[] = $this->get_responsive_class( $width_lg, 'lg' );
|
42 |
+
}
|
43 |
+
|
44 |
+
if ( $el_class != '' ) {
|
45 |
+
$class[] = $el_class;
|
46 |
+
}
|
47 |
+
|
48 |
+
$id_attr = '';
|
49 |
+
if ( $el_id != '' ) {
|
50 |
+
$id_attr = 'id="' . esc_attr( $el_id ) . '"';
|
51 |
+
}
|
52 |
+
|
53 |
+
if ( $color_scheme != '' ) {
|
54 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
55 |
+
}
|
56 |
+
|
57 |
+
$this->responsive_data_override_class(
|
58 |
+
$class, $data_override_class,
|
59 |
+
array(
|
60 |
+
'prefix' => $this->prefix,
|
61 |
+
'param' => 'align',
|
62 |
+
'value' => $align
|
63 |
+
)
|
64 |
+
);
|
65 |
+
|
66 |
+
if ( $vertical_align != '' ) {
|
67 |
+
$class[] = $this->prefix . 'vertical_align' . '_' . $vertical_align;
|
68 |
+
}
|
69 |
+
|
70 |
+
if ( $padding != '' ) {
|
71 |
+
$class[] = $this->prefix . 'padding' . '_' . $padding;
|
72 |
+
}
|
73 |
+
|
74 |
+
$this->responsive_override_class(
|
75 |
+
$class,
|
76 |
+
array(
|
77 |
+
'prefix' => $this->prefix,
|
78 |
+
'ignore' => '0',
|
79 |
+
'param' => 'order',
|
80 |
+
'value' => $order
|
81 |
+
)
|
82 |
+
);
|
83 |
+
|
84 |
+
if ( $background_color != '' ) {
|
85 |
+
if ( strpos( $background_color, '#' ) !== false ) {
|
86 |
+
$background_color = bt_bb_hex2rgb( $background_color );
|
87 |
+
if ( $opacity == '' ) {
|
88 |
+
$opacity = 1;
|
89 |
+
}
|
90 |
+
$el_style .= 'background-color:rgba(' . $background_color[0] . ', ' . $background_color[1] . ', ' . $background_color[2] . ', ' . $opacity . ');';
|
91 |
+
} else {
|
92 |
+
$el_style .= 'background-color:' . $background_color . ';';
|
93 |
+
}
|
94 |
+
}
|
95 |
+
|
96 |
+
$el_inner_style = '';
|
97 |
+
|
98 |
+
if ( $inner_background_color != '' ) {
|
99 |
+
if ( strpos( $inner_background_color, '#' ) !== false ) {
|
100 |
+
$inner_background_color = bt_bb_hex2rgb( $inner_background_color );
|
101 |
+
if ( $opacity == '' ) {
|
102 |
+
$opacity = 1;
|
103 |
+
}
|
104 |
+
$el_inner_style .= 'background-color:rgba(' . $inner_background_color[0] . ', ' . $inner_background_color[1] . ', ' . $inner_background_color[2] . ', ' . $opacity . ');';
|
105 |
+
} else {
|
106 |
+
$el_inner_style .= 'background-color:' . $inner_background_color . ';';
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
+
$inner_class = array( $this->shortcode . '_content' );
|
111 |
+
$background_data_attr = '';
|
112 |
+
$inner_background_data_attr = '';
|
113 |
+
|
114 |
+
if ( $background_image != '' ) {
|
115 |
+
$background_image = wp_get_attachment_image_src( $background_image, 'full' );
|
116 |
+
if ( $background_image ) {
|
117 |
+
$background_image_url = $background_image[0];
|
118 |
+
if ( $lazy_load == 'yes' ) {
|
119 |
+
$blank_image_src = BT_BB_Root::$path . 'img/blank.gif';
|
120 |
+
$el_style .= 'background-image:url(\'' . $blank_image_src . '\');';
|
121 |
+
$background_data_attr .= ' data-background_image_src=\'' . $background_image_url . '\'';
|
122 |
+
$class[] = 'btLazyLoadBackground';
|
123 |
+
} else {
|
124 |
+
$el_style .= 'background-image:url(\'' . $background_image_url . '\');';
|
125 |
+
}
|
126 |
+
}
|
127 |
+
|
128 |
+
$class[] = 'bt_bb_column_background_image';
|
129 |
+
}
|
130 |
+
|
131 |
+
if ( $inner_background_image != '' ) {
|
132 |
+
$inner_background_image = wp_get_attachment_image_src( $inner_background_image, 'full' );
|
133 |
+
$inner_background_image_url = $inner_background_image[0];
|
134 |
+
if ( $lazy_load == 'yes' ) {
|
135 |
+
$blank_image_src = BT_BB_Root::$path . 'img/blank.gif';
|
136 |
+
$el_inner_style .= 'background-image:url(\'' . $blank_image_src . '\');';
|
137 |
+
$inner_background_data_attr .= ' data-background_image_src="' . $inner_background_image_url . '"';
|
138 |
+
$inner_class[] = 'btLazyLoadBackground';
|
139 |
+
} else {
|
140 |
+
$el_inner_style .= 'background-image:url(\'' . $inner_background_image_url . '\');';
|
141 |
+
}
|
142 |
+
$class[] = 'bt_bb_column_inner_background_image';
|
143 |
+
}
|
144 |
+
|
145 |
+
if ( $el_inner_style != '' ) {
|
146 |
+
$el_inner_style = ' style="' . esc_attr( $el_inner_style ) . '"';
|
147 |
+
}
|
148 |
+
|
149 |
+
$style_attr = '';
|
150 |
+
|
151 |
+
if ( $el_style != '' ) {
|
152 |
+
$style_attr = 'style="' . esc_attr( $el_style ) . '"';
|
153 |
+
}
|
154 |
+
|
155 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
156 |
+
|
157 |
+
$output = '<div ' . $id_attr . ' class="' . implode( ' ', $class ) . '" ' . $style_attr . $background_data_attr . ' data-width="' . esc_attr( $this->get_width2( $width ) ) . '" data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">';
|
158 |
+
$output .= '<div class="' . esc_attr( implode( ' ', $inner_class ) ) . '"' . $el_inner_style . $inner_background_data_attr . '>';
|
159 |
+
$output .= '<div class="' . esc_attr( $this->shortcode . '_content_inner' ) . '">';
|
160 |
+
$output .= do_shortcode( $content );
|
161 |
+
$output .= '</div>';
|
162 |
+
$output .= '</div>';
|
163 |
+
$output .= '</div>';
|
164 |
+
|
165 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
166 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
167 |
+
|
168 |
+
return $output;
|
169 |
+
|
170 |
+
}
|
171 |
+
|
172 |
+
function get_responsive_class( $width, $size ) {
|
173 |
+
|
174 |
+
$width = $this->get_width1( $width );
|
175 |
+
|
176 |
+
$class = 'col-' . $size . '-' . $width;
|
177 |
+
|
178 |
+
return $class;
|
179 |
+
}
|
180 |
+
|
181 |
+
function get_width1( $width ) {
|
182 |
+
$array = explode( '/', $width );
|
183 |
+
|
184 |
+
if ( empty( $array ) || $array[0] == 0 || $array[1] == 0 ) {
|
185 |
+
$width = 12;
|
186 |
+
} else {
|
187 |
+
$top = $array[0];
|
188 |
+
$bottom = $array[1];
|
189 |
+
$width = 12 * $top / $bottom;
|
190 |
+
if ( $width < 1 || $width > 12 ) {
|
191 |
+
$width = 12;
|
192 |
+
}
|
193 |
+
}
|
194 |
+
|
195 |
+
$width = str_replace( '.', '_', $width );
|
196 |
+
|
197 |
+
return $width;
|
198 |
+
}
|
199 |
+
|
200 |
+
function get_width2( $width ) {
|
201 |
+
$array = explode( '/', $width );
|
202 |
+
|
203 |
+
if ( empty( $array ) || $array[0] == 0 || $array[1] == 0 ) {
|
204 |
+
$width = 12;
|
205 |
+
} else {
|
206 |
+
$top = $array[0];
|
207 |
+
$bottom = $array[1];
|
208 |
+
$width = 12 * $top / $bottom;
|
209 |
+
if ( $width < 1 || $width > 12 ) {
|
210 |
+
$width = 12;
|
211 |
+
}
|
212 |
+
}
|
213 |
+
|
214 |
+
return $width;
|
215 |
+
}
|
216 |
+
|
217 |
+
function map_shortcode() {
|
218 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
219 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
220 |
+
|
221 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Column', 'bold-builder' ), 'description' => esc_html__( 'Column element', 'bold-builder' ), 'width_param' => 'width', 'container' => 'vertical', 'accept' => array( 'bt_bb_section' => false, 'bt_bb_row' => false, 'bt_bb_column' => false, 'bt_bb_column_inner' => false, 'bt_bb_tab_item' => false, 'bt_bb_accordion_item' => false, 'bt_bb_cost_calculator_item' => false, 'bt_cc_group' => false, 'bt_cc_multiply' => false, 'bt_cc_item' => false, 'bt_bb_content_slider_item' => false, 'bt_bb_google_maps_location' => false, '_content' => false ), 'accept_all' => true, 'toggle' => false, 'responsive_override' => true,
|
222 |
+
'params' => array(
|
223 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Align', 'bold-builder' ), 'preview' => true, 'responsive_override' => true,
|
224 |
+
'value' => array(
|
225 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
226 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
227 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
228 |
+
)
|
229 |
+
),
|
230 |
+
array( 'param_name' => 'vertical_align', 'type' => 'dropdown', 'heading' => esc_html__( 'Vertical align', 'bold-builder' ), 'preview' => true,
|
231 |
+
'value' => array(
|
232 |
+
esc_html__( 'Top', 'bold-builder' ) => 'top',
|
233 |
+
esc_html__( 'Middle', 'bold-builder' ) => 'middle',
|
234 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom'
|
235 |
+
)
|
236 |
+
),
|
237 |
+
array( 'param_name' => 'padding', 'type' => 'dropdown', 'heading' => esc_html__( 'Padding', 'bold-builder' ), 'preview' => true,
|
238 |
+
'value' => array(
|
239 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
240 |
+
esc_html__( 'Double', 'bold-builder' ) => 'double',
|
241 |
+
esc_html__( 'Text Indent', 'bold-builder' ) => 'text_indent'
|
242 |
+
)
|
243 |
+
),
|
244 |
+
array( 'param_name' => 'order', 'type' => 'dropdown', 'heading' => esc_html__( 'Order', 'bold-builder' ), 'default' => '0', 'responsive_override' => true, 'description' => esc_html__( 'Columns are placed in the visual order according to selected order, lowest values first.', 'bold-builder' ),
|
245 |
+
'value' => array(
|
246 |
+
esc_html__( ' -5', 'bold-builder' ) => '-5',
|
247 |
+
esc_html__( ' -4', 'bold-builder' ) => '-4',
|
248 |
+
esc_html__( ' -3', 'bold-builder' ) => '-3',
|
249 |
+
esc_html__( ' -2', 'bold-builder' ) => '-2',
|
250 |
+
esc_html__( ' -1', 'bold-builder' ) => '-1',
|
251 |
+
esc_html__( ' 0 (default)', 'bold-builder' ) => '0',
|
252 |
+
esc_html__( ' 1', 'bold-builder' ) => '1',
|
253 |
+
esc_html__( ' 2', 'bold-builder' ) => '2',
|
254 |
+
esc_html__( ' 3', 'bold-builder' ) => '3',
|
255 |
+
esc_html__( ' 4', 'bold-builder' ) => '4',
|
256 |
+
esc_html__( ' 5', 'bold-builder' ) => '5'
|
257 |
+
)
|
258 |
+
),
|
259 |
+
array( 'param_name' => 'background_image', 'type' => 'attach_image', 'preview' => true, 'heading' => esc_html__( 'Background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
260 |
+
array( 'param_name' => 'inner_background_image', 'type' => 'attach_image', 'preview' => true, 'heading' => esc_html__( 'Inner background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
261 |
+
array( 'param_name' => 'lazy_load', 'type' => 'dropdown', 'default' => 'yes', 'heading' => esc_html__( 'Lazy load background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
262 |
+
'value' => array(
|
263 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
264 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
265 |
+
) ),
|
266 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
267 |
+
array( 'param_name' => 'background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Background color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
268 |
+
array( 'param_name' => 'inner_background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Inner background color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
269 |
+
array( 'param_name' => 'opacity', 'type' => 'textfield', 'heading' => esc_html__( 'Background color opacity (deprecated)', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) )
|
270 |
+
)
|
271 |
+
) );
|
272 |
+
}
|
273 |
+
|
274 |
+
static function hex2rgb( $hex ) {
|
275 |
+
$hex = str_replace( '#', '', $hex );
|
276 |
+
if ( strlen( $hex ) == 3 ) {
|
277 |
+
$r = hexdec( substr( $hex, 0, 1 ) . substr( $hex, 0, 1 ) );
|
278 |
+
$g = hexdec( substr( $hex, 1, 1 ) . substr( $hex, 1, 1 ) );
|
279 |
+
$b = hexdec( substr( $hex, 2, 1 ) . substr( $hex, 2, 1 ) );
|
280 |
+
} else {
|
281 |
+
$r = hexdec( substr( $hex, 0, 2 ) );
|
282 |
+
$g = hexdec( substr( $hex, 2, 2 ) );
|
283 |
+
$b = hexdec( substr( $hex, 4, 2 ) );
|
284 |
+
}
|
285 |
+
$rgb = array( $r, $g, $b );
|
286 |
+
return $rgb;
|
287 |
+
}
|
288 |
+
}
|
content_elements/bt_bb_column_inner/bt_bb_column_inner.php
ADDED
@@ -0,0 +1,261 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_column_inner extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'width' => '',
|
8 |
+
'width_lg' => '',
|
9 |
+
'width_md' => '',
|
10 |
+
'width_sm' => '',
|
11 |
+
'width_xs' => '',
|
12 |
+
'align' => 'left',
|
13 |
+
'vertical_align' => 'top',
|
14 |
+
'padding' => '',
|
15 |
+
'order' => '',
|
16 |
+
'background_image' => '',
|
17 |
+
'inner_background_image' => '',
|
18 |
+
'lazy_load' => 'no',
|
19 |
+
'background_color' => '',
|
20 |
+
'inner_background_color' => '',
|
21 |
+
'opacity' => ''
|
22 |
+
) ), $atts, $this->shortcode ) );
|
23 |
+
|
24 |
+
$class = array( $this->shortcode );
|
25 |
+
$data_override_class = array();
|
26 |
+
|
27 |
+
$class[] = $this->get_responsive_class( $width, 'xl' );
|
28 |
+
|
29 |
+
if ( $width_xs != '' ) {
|
30 |
+
$class[] = $this->get_responsive_class( $width_xs, 'xs' );
|
31 |
+
}
|
32 |
+
if ( $width_sm != '' ) {
|
33 |
+
$class[] = $this->get_responsive_class( $width_sm, 'sm' );
|
34 |
+
}
|
35 |
+
if ( $width_md != '' ) {
|
36 |
+
$class[] = $this->get_responsive_class( $width_md, 'md' );
|
37 |
+
}
|
38 |
+
if ( $width_lg != '' ) {
|
39 |
+
$class[] = $this->get_responsive_class( $width_lg, 'lg' );
|
40 |
+
}
|
41 |
+
|
42 |
+
if ( $el_class != '' ) {
|
43 |
+
$class[] = $el_class;
|
44 |
+
}
|
45 |
+
|
46 |
+
$id_attr = '';
|
47 |
+
if ( $el_id != '' ) {
|
48 |
+
$id_attr = 'id="' . esc_attr( $el_id ) . '"';
|
49 |
+
}
|
50 |
+
|
51 |
+
$this->responsive_data_override_class(
|
52 |
+
$class, $data_override_class,
|
53 |
+
array(
|
54 |
+
'prefix' => $this->prefix,
|
55 |
+
'param' => 'align',
|
56 |
+
'value' => $align
|
57 |
+
)
|
58 |
+
);
|
59 |
+
|
60 |
+
if ( $vertical_align != '' ) {
|
61 |
+
$class[] = $this->prefix . 'vertical_align' . '_' . $vertical_align;
|
62 |
+
}
|
63 |
+
|
64 |
+
if ( $padding != '' ) {
|
65 |
+
$class[] = $this->prefix . 'padding' . '_' . $padding;
|
66 |
+
}
|
67 |
+
|
68 |
+
$this->responsive_override_class(
|
69 |
+
$class,
|
70 |
+
array(
|
71 |
+
'prefix' => $this->prefix,
|
72 |
+
'ignore' => '0',
|
73 |
+
'param' => 'order',
|
74 |
+
'value' => $order
|
75 |
+
)
|
76 |
+
);
|
77 |
+
|
78 |
+
if ( $background_color != '' ) {
|
79 |
+
if ( strpos( $background_color, '#' ) !== false ) {
|
80 |
+
$background_color = bt_bb_column::hex2rgb( $background_color );
|
81 |
+
if ( $opacity == '' ) {
|
82 |
+
$opacity = 1;
|
83 |
+
}
|
84 |
+
$el_style .= 'background-color:rgba(' . $background_color[0] . ', ' . $background_color[1] . ', ' . $background_color[2] . ', ' . $opacity . ');';
|
85 |
+
} else {
|
86 |
+
$el_style .= 'background-color:' . $background_color . ';';
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
$el_inner_style = '';
|
91 |
+
|
92 |
+
if ( $inner_background_color != '' ) {
|
93 |
+
if ( strpos( $inner_background_color, '#' ) !== false ) {
|
94 |
+
$inner_background_color = bt_bb_column::hex2rgb( $inner_background_color );
|
95 |
+
if ( $opacity == '' ) {
|
96 |
+
$opacity = 1;
|
97 |
+
}
|
98 |
+
$el_inner_style .= '"background-color:rgba(' . $inner_background_color[0] . ', ' . $inner_background_color[1] . ', ' . $inner_background_color[2] . ', ' . $opacity . ');" ';
|
99 |
+
} else {
|
100 |
+
$el_inner_style .= 'background-color:' . $inner_background_color . ';';
|
101 |
+
}
|
102 |
+
}
|
103 |
+
|
104 |
+
$inner_class = array( $this->shortcode . '_content' );
|
105 |
+
$background_data_attr = '';
|
106 |
+
$inner_background_data_attr = '';
|
107 |
+
|
108 |
+
if ( $background_image != '' ) {
|
109 |
+
$background_image = wp_get_attachment_image_src( $background_image, 'full' );
|
110 |
+
if ( $background_image ) {
|
111 |
+
$background_image_url = $background_image[0];
|
112 |
+
if ( $lazy_load == 'yes' ) {
|
113 |
+
$blank_image_src = BT_BB_Root::$path . 'img/blank.gif';
|
114 |
+
$el_style .= 'background-image:url(\'' . $blank_image_src . '\');';
|
115 |
+
$background_data_attr .= ' data-background_image_src=\'' . $background_image_url . '\'';
|
116 |
+
$class[] = 'btLazyLoadBackground';
|
117 |
+
} else {
|
118 |
+
$el_style .= 'background-image:url(\'' . $background_image_url . '\');';
|
119 |
+
}
|
120 |
+
}
|
121 |
+
|
122 |
+
$class[] = 'bt_bb_column_inner_background_image';
|
123 |
+
}
|
124 |
+
|
125 |
+
if ( $inner_background_image != '' ) {
|
126 |
+
$inner_background_image = wp_get_attachment_image_src( $inner_background_image, 'full' );
|
127 |
+
$inner_background_image_url = $inner_background_image[0];
|
128 |
+
if ( $lazy_load == 'yes' ) {
|
129 |
+
$blank_image_src = BT_BB_Root::$path . 'img/blank.gif';
|
130 |
+
$el_inner_style .= 'background-image:url(\'' . $blank_image_src . '\');';
|
131 |
+
$inner_background_data_attr .= ' data-background_image_src="' . $inner_background_image_url . '"';
|
132 |
+
$inner_class[] = 'btLazyLoadBackground';
|
133 |
+
} else {
|
134 |
+
$el_inner_style .= 'background-image:url(\'' . $inner_background_image_url . '\');';
|
135 |
+
}
|
136 |
+
$class[] = 'bt_bb_column_inner_inner_background_image';
|
137 |
+
}
|
138 |
+
|
139 |
+
if ( $el_inner_style != "" ) $el_inner_style = ' style=' . $el_inner_style;
|
140 |
+
|
141 |
+
$style_attr = '';
|
142 |
+
|
143 |
+
if ( $el_style != '' ) {
|
144 |
+
$style_attr = 'style="' . esc_attr( $el_style ) . '"';
|
145 |
+
}
|
146 |
+
|
147 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
148 |
+
|
149 |
+
$output = '<div ' . $id_attr . ' class="' . implode( ' ', $class ) . '" ' . $style_attr . $background_data_attr . ' data-width="' . esc_attr( $this->get_width2( $width ) ) . '" data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">';
|
150 |
+
$output .= '<div class="' . implode( ' ', $inner_class ) . '"' . $el_inner_style . $inner_background_data_attr . '>';
|
151 |
+
$output .= do_shortcode( $content );
|
152 |
+
$output .= '</div>';
|
153 |
+
$output .= '</div>';
|
154 |
+
|
155 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
156 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
157 |
+
|
158 |
+
return $output;
|
159 |
+
|
160 |
+
}
|
161 |
+
|
162 |
+
function get_responsive_class( $width, $size ) {
|
163 |
+
|
164 |
+
$width = $this->get_width1( $width );
|
165 |
+
|
166 |
+
$class = 'col-' . $size . '-' . $width;
|
167 |
+
|
168 |
+
return $class;
|
169 |
+
}
|
170 |
+
|
171 |
+
function get_width1( $width ) {
|
172 |
+
$array = explode( '/', $width );
|
173 |
+
|
174 |
+
if ( empty( $array ) || $array[0] == 0 || $array[1] == 0 ) {
|
175 |
+
$width = 12;
|
176 |
+
} else {
|
177 |
+
$top = $array[0];
|
178 |
+
$bottom = $array[1];
|
179 |
+
$width = 12 * $top / $bottom;
|
180 |
+
if ( $width < 1 || $width > 12 ) {
|
181 |
+
$width = 12;
|
182 |
+
}
|
183 |
+
}
|
184 |
+
|
185 |
+
$width = str_replace( '.', '_', $width );
|
186 |
+
|
187 |
+
return $width;
|
188 |
+
}
|
189 |
+
|
190 |
+
function get_width2( $width ) {
|
191 |
+
$array = explode( '/', $width );
|
192 |
+
|
193 |
+
if ( empty( $array ) || $array[0] == 0 || $array[1] == 0 ) {
|
194 |
+
$width = 12;
|
195 |
+
} else {
|
196 |
+
$top = $array[0];
|
197 |
+
$bottom = $array[1];
|
198 |
+
$width = 12 * $top / $bottom;
|
199 |
+
if ( $width < 1 || $width > 12 ) {
|
200 |
+
$width = 12;
|
201 |
+
}
|
202 |
+
}
|
203 |
+
|
204 |
+
return $width;
|
205 |
+
}
|
206 |
+
|
207 |
+
function map_shortcode() {
|
208 |
+
|
209 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Inner Column', 'bold-builder' ), 'description' => esc_html__( 'Inner Column element', 'bold-builder' ), 'width_param' => 'width', 'container' => 'vertical',
|
210 |
+
'accept' => array( 'bt_bb_section' => false, 'bt_bb_row' => false, 'bt_bb_row_inner' => false, 'bt_bb_column' => false, 'bt_bb_column_inner' => false, 'bt_bb_tab_item' => false, 'bt_bb_accordion_item' => false, 'bt_bb_cost_calculator_item' => false, 'bt_cc_group' => false, 'bt_cc_multiply' => false, 'bt_cc_item' => false, 'bt_bb_content_slider_item' => false, 'bt_bb_google_maps_location' => false, '_content' => false ),
|
211 |
+
'accept_all' => true, 'toggle' => true, 'show_settings_on_create' => false, 'icon' => 'bt_bb_icon_bt_bb_row_inner', 'responsive_override' => true,
|
212 |
+
'params' => array(
|
213 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Align', 'bold-builder' ), 'preview' => true, 'responsive_override' => true,
|
214 |
+
'value' => array(
|
215 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
216 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
217 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right',
|
218 |
+
) ),
|
219 |
+
array( 'param_name' => 'vertical_align', 'type' => 'dropdown', 'heading' => esc_html__( 'Vertical Align', 'bold-builder' ), 'preview' => true,
|
220 |
+
'value' => array(
|
221 |
+
esc_html__( 'Top', 'bold-builder' ) => 'top',
|
222 |
+
esc_html__( 'Middle', 'bold-builder' ) => 'middle',
|
223 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom'
|
224 |
+
) ),
|
225 |
+
array( 'param_name' => 'padding', 'type' => 'dropdown', 'heading' => esc_html__( 'Padding', 'bold-builder' ), 'preview' => true,
|
226 |
+
'value' => array(
|
227 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
228 |
+
esc_html__( 'Double', 'bold-builder' ) => 'double',
|
229 |
+
esc_html__( 'Text Indent', 'bold-builder' ) => 'text_indent'
|
230 |
+
) ),
|
231 |
+
array( 'param_name' => 'order', 'type' => 'dropdown', 'heading' => esc_html__( 'Order', 'bold-builder' ), 'default' => '0', 'responsive_override' => true, 'description' => esc_html__( 'Columns are placed in the visual order according to selected order, lowest values first.', 'bold-builder' ),
|
232 |
+
'value' => array(
|
233 |
+
esc_html__( ' -5', 'bold-builder' ) => '-5',
|
234 |
+
esc_html__( ' -4', 'bold-builder' ) => '-4',
|
235 |
+
esc_html__( ' -3', 'bold-builder' ) => '-3',
|
236 |
+
esc_html__( ' -2', 'bold-builder' ) => '-2',
|
237 |
+
esc_html__( ' -1', 'bold-builder' ) => '-1',
|
238 |
+
esc_html__( ' 0 (default)', 'bold-builder' ) => '0',
|
239 |
+
esc_html__( ' 1', 'bold-builder' ) => '1',
|
240 |
+
esc_html__( ' 2', 'bold-builder' ) => '2',
|
241 |
+
esc_html__( ' 3', 'bold-builder' ) => '3',
|
242 |
+
esc_html__( ' 4', 'bold-builder' ) => '4',
|
243 |
+
esc_html__( ' 5', 'bold-builder' ) => '5'
|
244 |
+
)
|
245 |
+
),
|
246 |
+
array( 'param_name' => 'background_image', 'type' => 'attach_image', 'preview' => true, 'heading' => esc_html__( 'Background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
247 |
+
array( 'param_name' => 'inner_background_image', 'type' => 'attach_image', 'preview' => true, 'heading' => esc_html__( 'Inner background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
248 |
+
array( 'param_name' => 'lazy_load', 'type' => 'dropdown', 'default' => 'yes', 'heading' => esc_html__( 'Lazy load background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
249 |
+
'value' => array(
|
250 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
251 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
252 |
+
) ),
|
253 |
+
array( 'param_name' => 'background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Background color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
254 |
+
array( 'param_name' => 'inner_background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Inner background color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
255 |
+
array( 'param_name' => 'opacity', 'type' => 'textfield', 'heading' => esc_html__( 'Opacity (deprecated)', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) )
|
256 |
+
)
|
257 |
+
) );
|
258 |
+
|
259 |
+
}
|
260 |
+
|
261 |
+
}
|
content_elements/bt_bb_contact_form_7/bt_bb_contact_form_7.php
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_contact_form_7 extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'contact_form_id' => ''
|
8 |
+
) ), $atts, $this->shortcode ) );
|
9 |
+
|
10 |
+
$class = array( $this->shortcode );
|
11 |
+
|
12 |
+
if ( $el_class != '' ) {
|
13 |
+
$class[] = $el_class;
|
14 |
+
}
|
15 |
+
|
16 |
+
$id_attr = '';
|
17 |
+
if ( $el_id != '' ) {
|
18 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
19 |
+
}
|
20 |
+
|
21 |
+
$style_attr = '';
|
22 |
+
if ( $el_style != '' ) {
|
23 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
24 |
+
}
|
25 |
+
|
26 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
27 |
+
|
28 |
+
if ( intval( $contact_form_id ) > 0 ) {
|
29 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>';
|
30 |
+
$output .= do_shortcode('[contact-form-7 id="' . $contact_form_id . '"]');
|
31 |
+
$output .= '</div>';
|
32 |
+
}
|
33 |
+
|
34 |
+
|
35 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
36 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
37 |
+
|
38 |
+
return $output;
|
39 |
+
|
40 |
+
}
|
41 |
+
|
42 |
+
function map_shortcode() {
|
43 |
+
|
44 |
+
$args = array('post_type' => 'wpcf7_contact_form', 'posts_per_page' => -1);
|
45 |
+
$forms_data = array();
|
46 |
+
if ( $data = get_posts( $args ) ) {
|
47 |
+
foreach( $data as $key ){
|
48 |
+
$forms_data[ $key -> post_title ] = $key -> ID;
|
49 |
+
}
|
50 |
+
} else {
|
51 |
+
$forms_data[ '0' ] = esc_html__( 'No Contact Form found', 'bold-builder' );
|
52 |
+
}
|
53 |
+
|
54 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Contact Form 7', 'bold-builder' ), 'description' => esc_html__( 'Choose CF7 form', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
55 |
+
'params' => array(
|
56 |
+
array( 'param_name' => 'contact_form_id', 'type' => 'dropdown', 'heading' => esc_html__( 'Contact form 7', 'bold-builder' ), 'preview' => true,
|
57 |
+
'value' => $forms_data )
|
58 |
+
) )
|
59 |
+
);
|
60 |
+
}
|
61 |
+
}
|
content_elements/bt_bb_content_slider/bt_bb_content_slider.php
ADDED
@@ -0,0 +1,175 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_content_slider extends BT_BB_Element {
|
4 |
+
|
5 |
+
public $auto_play = '';
|
6 |
+
|
7 |
+
function handle_shortcode( $atts, $content ) {
|
8 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
9 |
+
'height' => '',
|
10 |
+
'show_dots' => '',
|
11 |
+
'animation' => 'slide',
|
12 |
+
'gap' => '',
|
13 |
+
'arrows_size' => '',
|
14 |
+
'pause_on_hover' => '',
|
15 |
+
'slides_to_show' => '',
|
16 |
+
'auto_play' => ''
|
17 |
+
) ), $atts, $this->shortcode ) );
|
18 |
+
|
19 |
+
$class = array( $this->shortcode );
|
20 |
+
$slider_class = array( 'slick-slider' );
|
21 |
+
|
22 |
+
if ( $el_class != '' ) {
|
23 |
+
$class[] = $el_class;
|
24 |
+
}
|
25 |
+
|
26 |
+
$id_attr = '';
|
27 |
+
if ( $el_id != '' ) {
|
28 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
29 |
+
}
|
30 |
+
|
31 |
+
$style_attr = '';
|
32 |
+
if ( $el_style != '' ) {
|
33 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
34 |
+
}
|
35 |
+
|
36 |
+
if ( $gap != '' ) {
|
37 |
+
$class[] = $this->prefix . 'gap' . '_' . $gap;
|
38 |
+
}
|
39 |
+
|
40 |
+
if ( $arrows_size != '' ) {
|
41 |
+
$class[] = $this->prefix . 'arrows_size' . '_' . $arrows_size;
|
42 |
+
}
|
43 |
+
|
44 |
+
if ( $show_dots != '' ) {
|
45 |
+
$class[] = $this->prefix . 'show_dots_' . $show_dots;
|
46 |
+
}
|
47 |
+
|
48 |
+
if ( $height != '' ) {
|
49 |
+
$class[] = $this->prefix . 'height' . '_' . $height;
|
50 |
+
}
|
51 |
+
|
52 |
+
if ( $animation != '' ) {
|
53 |
+
$class[] = $this->prefix . 'animation' . '_' . $animation;
|
54 |
+
}
|
55 |
+
|
56 |
+
$data_slick = ' data-slick=\'{ "lazyLoad": "progressive", "cssEase": "ease-out", "speed": "600", "accessibility": false';
|
57 |
+
|
58 |
+
if ( $animation == 'fade' ) {
|
59 |
+
$data_slick .= ', "fade": true';
|
60 |
+
$slider_class[] = 'fade';
|
61 |
+
$slides_to_show = 1;
|
62 |
+
}
|
63 |
+
|
64 |
+
if ( $arrows_size != 'no_arrows' ) {
|
65 |
+
$data_slick .= ', "prevArrow": "<button type=\"button\" class=\"slick-prev\" aria-label=\"' . esc_html__( 'Previous', 'bold-builder' ) . '\" tabindex=\"0\" role=\"button\"></button>", "nextArrow": "<button type=\"button\" class=\"slick-next\" aria-label=\"' . esc_html__( 'Next', 'bold-builder' ) . '\" tabindex=\"0\" role=\"button\"></button>"';
|
66 |
+
} else {
|
67 |
+
$data_slick .= ', "arrows": false';
|
68 |
+
}
|
69 |
+
|
70 |
+
if ( $height != 'keep-height' ) {
|
71 |
+
$data_slick .= ', "adaptiveHeight": true';
|
72 |
+
}
|
73 |
+
|
74 |
+
if ( $show_dots != 'hide' ) {
|
75 |
+
$data_slick .= ', "dots": true' ;
|
76 |
+
}
|
77 |
+
|
78 |
+
if ( $slides_to_show > 1 ) {
|
79 |
+
$data_slick .= ',"slidesToShow": ' . intval( $slides_to_show );
|
80 |
+
$class[] = $this->prefix . 'multiple_slides';
|
81 |
+
}
|
82 |
+
|
83 |
+
if ( $auto_play != '' ) {
|
84 |
+
$data_slick .= ',"autoplay": true, "autoplaySpeed": ' . intval( $auto_play );
|
85 |
+
}
|
86 |
+
|
87 |
+
if ( $pause_on_hover == 'no' ) {
|
88 |
+
$data_slick .= ',"pauseOnHover": false';
|
89 |
+
}
|
90 |
+
|
91 |
+
if ( is_rtl() ) {
|
92 |
+
$data_slick .= ', "rtl": true' ;
|
93 |
+
}
|
94 |
+
|
95 |
+
if ( $slides_to_show > 1 ) {
|
96 |
+
$data_slick .= ', "responsive": [';
|
97 |
+
if ( $slides_to_show > 1 ) {
|
98 |
+
$data_slick .= '{ "breakpoint": 480, "settings": { "slidesToShow": 1, "slidesToScroll": 1 } }';
|
99 |
+
}
|
100 |
+
if ( $slides_to_show > 2 ) {
|
101 |
+
$data_slick .= ',{ "breakpoint": 768, "settings": { "slidesToShow": 2, "slidesToScroll": 2 } }';
|
102 |
+
}
|
103 |
+
if ( $slides_to_show > 3 ) {
|
104 |
+
$data_slick .= ',{ "breakpoint": 920, "settings": { "slidesToShow": 3, "slidesToScroll": 3 } }';
|
105 |
+
}
|
106 |
+
if ( $slides_to_show > 4 ) {
|
107 |
+
$data_slick .= ',{ "breakpoint": 1024, "settings": { "slidesToShow": 3, "slidesToScroll": 3 } }';
|
108 |
+
}
|
109 |
+
$data_slick .= ']';
|
110 |
+
}
|
111 |
+
$data_slick = $data_slick . '}\' ';
|
112 |
+
|
113 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
114 |
+
|
115 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '><div class="' . implode( ' ', $slider_class ) . '" ' . $data_slick . '>' . do_shortcode( $content ) . '</div></div>';
|
116 |
+
|
117 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
118 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
119 |
+
|
120 |
+
return $output;
|
121 |
+
|
122 |
+
}
|
123 |
+
|
124 |
+
function map_shortcode() {
|
125 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Slider', 'bold-builder' ), 'description' => esc_html__( 'Slider with custom content', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_content_slider_item' => true ), 'toggle' => true, 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
126 |
+
'params' => array(
|
127 |
+
array( 'param_name' => 'height', 'type' => 'dropdown', 'preview' => true, 'heading' => esc_html__( 'Size', 'bold-builder' ),
|
128 |
+
'value' => array(
|
129 |
+
esc_html__( 'Auto', 'bold-builder' ) => 'auto',
|
130 |
+
esc_html__( 'Keep height', 'bold-builder' ) => 'keep-height',
|
131 |
+
esc_html__( 'Half screen', 'bold-builder' ) => 'half_screen',
|
132 |
+
esc_html__( 'Full screen', 'bold-builder' ) => 'full_screen'
|
133 |
+
)
|
134 |
+
),
|
135 |
+
array( 'param_name' => 'animation', 'preview' => true, 'default' => 'slide', 'type' => 'dropdown', 'heading' => esc_html__( 'Animation', 'bold-builder' ), 'description' => esc_html__( 'If fade is selected, number of slides to show will be 1', 'bold-builder' ),
|
136 |
+
'value' => array(
|
137 |
+
esc_html__( 'Default (slide)', 'bold-builder' ) => 'slide',
|
138 |
+
esc_html__( 'Fade', 'bold-builder' ) => 'fade'
|
139 |
+
)
|
140 |
+
),
|
141 |
+
array( 'param_name' => 'arrows_size', 'type' => 'dropdown', 'preview' => true, 'default' => 'normal', 'heading' => esc_html__( 'Navigation arrows size', 'bold-builder' ),
|
142 |
+
'value' => array(
|
143 |
+
esc_html__( 'No arrows', 'bold-builder' ) => 'no_arrows',
|
144 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
145 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
146 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
147 |
+
)
|
148 |
+
),
|
149 |
+
array( 'param_name' => 'show_dots', 'type' => 'dropdown', 'heading' => esc_html__( 'Dots navigation', 'bold-builder' ),
|
150 |
+
'value' => array(
|
151 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom',
|
152 |
+
esc_html__( 'Below', 'bold-builder' ) => 'below',
|
153 |
+
esc_html__( 'Hide', 'bold-builder' ) => 'hide'
|
154 |
+
)
|
155 |
+
),
|
156 |
+
array( 'param_name' => 'pause_on_hover', 'default' => 'yes', 'type' => 'dropdown', 'heading' => esc_html__( 'Pause slideshow on hover', 'bold-builder' ),
|
157 |
+
'value' => array(
|
158 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes',
|
159 |
+
esc_html__( 'No', 'bold-builder' ) => 'no'
|
160 |
+
)
|
161 |
+
),
|
162 |
+
array( 'param_name' => 'slides_to_show', 'type' => 'textfield', 'preview' => true, 'default' => 1, 'heading' => esc_html__( 'Number of slides to show', 'bold-builder' ), 'description' => esc_html__( 'e.g. 3', 'bold-builder' ) ),
|
163 |
+
array( 'param_name' => 'gap', 'type' => 'dropdown', 'heading' => esc_html__( 'Gap', 'bold-builder' ),
|
164 |
+
'value' => array(
|
165 |
+
esc_html__( 'No gap', 'bold-builder' ) => 'no_gap',
|
166 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
167 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
168 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
169 |
+
)
|
170 |
+
),
|
171 |
+
array( 'param_name' => 'auto_play', 'type' => 'textfield', 'heading' => esc_html__( 'Autoplay interval (ms)', 'bold-builder' ), 'description' => esc_html__( 'e.g. 2000' ) )
|
172 |
+
)
|
173 |
+
) );
|
174 |
+
}
|
175 |
+
}
|
content_elements/bt_bb_content_slider_item/bt_bb_content_slider_item.php
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_content_slider_item extends BT_BB_Element {
|
4 |
+
|
5 |
+
public $auto_play = '';
|
6 |
+
|
7 |
+
function handle_shortcode( $atts, $content ) {
|
8 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
9 |
+
'image' => '',
|
10 |
+
'background_overlay' => '',
|
11 |
+
'image_size' => ''
|
12 |
+
) ), $atts, $this->shortcode ) );
|
13 |
+
|
14 |
+
$class = array( $this->shortcode );
|
15 |
+
|
16 |
+
if ( $el_class != '' ) {
|
17 |
+
$class[] = $el_class;
|
18 |
+
}
|
19 |
+
|
20 |
+
$id_attr = '';
|
21 |
+
if ( $el_id != '' ) {
|
22 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
23 |
+
}
|
24 |
+
|
25 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style );
|
26 |
+
|
27 |
+
if ( $image != '' ) {
|
28 |
+
$image_src = wp_get_attachment_image_src( $image, $image_size );
|
29 |
+
if ( $image_src ) {
|
30 |
+
$style_attr .= ';background-image:url(' . $image_src[0] . ')';
|
31 |
+
}
|
32 |
+
}
|
33 |
+
|
34 |
+
if ( $background_overlay != '' ) {
|
35 |
+
$class[] = 'bt_bb_background_overlay' . '_' . $background_overlay;
|
36 |
+
}
|
37 |
+
|
38 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
39 |
+
|
40 |
+
$style_attr .= '"';
|
41 |
+
|
42 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '><div class="bt_bb_content_slider_item_content content">' . wptexturize( do_shortcode( $content ) ) . '</div></div>';
|
43 |
+
|
44 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
45 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
46 |
+
|
47 |
+
return $output;
|
48 |
+
|
49 |
+
}
|
50 |
+
|
51 |
+
function map_shortcode() {
|
52 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Slider Item', 'bold-builder' ), 'description' => esc_html__( 'Individual slide element', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_section' => false, 'bt_bb_row' => false, 'bt_bb_column' => false, 'bt_bb_column_inner' => false, 'bt_bb_tab_item' => false, 'bt_bb_accordion_item' => false, 'bt_bb_cost_calculator_item' => false, 'bt_cc_group' => false, 'bt_cc_multiply' => false, 'bt_cc_item' => false, 'bt_bb_content_slider_item' => false, 'bt_bb_google_maps_location' => false, '_content' => false ), 'accept_all' => true, 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
53 |
+
'params' => array(
|
54 |
+
array( 'param_name' => 'image', 'type' => 'attach_image', 'heading' => esc_html__( 'Background image', 'bold-builder' ), 'preview' => true ),
|
55 |
+
array( 'param_name' => 'background_overlay', 'type' => 'dropdown', 'heading' => esc_html__( 'Background overlay', 'bold-builder' ),
|
56 |
+
'value' => array(
|
57 |
+
esc_html__( 'No overlay', 'bold-builder' ) => '',
|
58 |
+
esc_html__( 'Light stripes', 'bold-builder' ) => 'light_stripes',
|
59 |
+
esc_html__( 'Dark stripes', 'bold-builder' ) => 'dark_stripes',
|
60 |
+
esc_html__( 'Light solid', 'bold-builder' ) => 'light_solid',
|
61 |
+
esc_html__( 'Dark solid', 'bold-builder' ) => 'dark_solid',
|
62 |
+
esc_html__( 'Light gradient', 'bold-builder' ) => 'light_gradient',
|
63 |
+
esc_html__( 'Dark gradient', 'bold-builder' ) => 'dark_gradient'
|
64 |
+
)
|
65 |
+
),
|
66 |
+
array( 'param_name' => 'image_size', 'type' => 'dropdown', 'heading' => esc_html__( 'Background image size', 'bold-builder' ), 'preview' => true,
|
67 |
+
'value' => bt_bb_get_image_sizes()
|
68 |
+
)
|
69 |
+
)
|
70 |
+
) );
|
71 |
+
}
|
72 |
+
}
|
content_elements/bt_bb_cost_calculator/bt_bb_cost_calculator.js
ADDED
@@ -0,0 +1,64 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function( $ ) {
|
2 |
+
"use strict";
|
3 |
+
|
4 |
+
$( document ).ready(function() {
|
5 |
+
bt_bb_cost_calculator();
|
6 |
+
|
7 |
+
// number
|
8 |
+
$( '.bt_bb_widget_number input' ).on( 'keyup change', function() {
|
9 |
+
$( this ).closest( '.bt_bb_cost_calculator_item' ).data( 'value', $( this ).val() );
|
10 |
+
bt_bb_cost_calculator();
|
11 |
+
});
|
12 |
+
|
13 |
+
// select
|
14 |
+
$( '.bt_bb_widget_select_selected' ).on( 'click', function() {
|
15 |
+
$( this ).next().slideToggle( 200 );
|
16 |
+
});
|
17 |
+
|
18 |
+
$( '.bt_bb_widget_select_items > div' ).on( 'click', function() {
|
19 |
+
$( this ).closest( '.bt_bb_cost_calculator_item' ).data( 'value', $( this ).data( 'value' ) );
|
20 |
+
$( this ).parent().prev( '.bt_bb_widget_select_selected' ).html( $( this ).html() );
|
21 |
+
$( this ).parent().slideToggle( 200 );
|
22 |
+
bt_bb_cost_calculator();
|
23 |
+
});
|
24 |
+
|
25 |
+
// switch
|
26 |
+
$( '.bt_bb_widget_switch' ).on( 'click', function() {
|
27 |
+
|
28 |
+
if ( $( this ).hasClass( 'on' ) ) {
|
29 |
+
$( this ).closest( '.bt_bb_cost_calculator_item' ).data( 'value', '0' );
|
30 |
+
} else {
|
31 |
+
$( this ).closest( '.bt_bb_cost_calculator_item' ).data( 'value', $( this ).data( 'on' ) );
|
32 |
+
}
|
33 |
+
|
34 |
+
$( this ).toggleClass( 'on' );
|
35 |
+
|
36 |
+
bt_bb_cost_calculator();
|
37 |
+
});
|
38 |
+
|
39 |
+
});
|
40 |
+
|
41 |
+
var bt_bb_cost_calculator = function() {
|
42 |
+
|
43 |
+
$( '.bt_bb_cost_calculator' ).each(function() {
|
44 |
+
|
45 |
+
var total = 0;
|
46 |
+
|
47 |
+
var current = 0;
|
48 |
+
|
49 |
+
$( this ).find( '.bt_bb_cost_calculator_item' ).each(function() {
|
50 |
+
current = parseFloat( $( this ).data( 'value' ) );
|
51 |
+
if ( isNaN( current ) ) {
|
52 |
+
current = 0;
|
53 |
+
}
|
54 |
+
total += current;
|
55 |
+
});
|
56 |
+
|
57 |
+
total = total.toFixed( 2 ).replace( /(\d)(?=(\d{3})+\.)/g, '$1,' );
|
58 |
+
|
59 |
+
$( this ).find( '.bt_bb_cost_calculator_total_amount' ).html( total );
|
60 |
+
|
61 |
+
});
|
62 |
+
}
|
63 |
+
|
64 |
+
})( jQuery );
|
content_elements/bt_bb_cost_calculator/bt_bb_cost_calculator.php
ADDED
@@ -0,0 +1,66 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_cost_calculator extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'currency' => '',
|
8 |
+
'color_scheme' => ''
|
9 |
+
) ), $atts, $this->shortcode ) );
|
10 |
+
|
11 |
+
wp_enqueue_script(
|
12 |
+
'bt_bb_cost_calculator',
|
13 |
+
plugin_dir_url( __FILE__ ) . 'bt_bb_cost_calculator.js',
|
14 |
+
array( 'jquery' ),
|
15 |
+
BT_BB_VERSION,
|
16 |
+
true
|
17 |
+
);
|
18 |
+
|
19 |
+
$class = array( $this->shortcode );
|
20 |
+
|
21 |
+
if ( $el_class != '' ) {
|
22 |
+
$class[] = $el_class;
|
23 |
+
}
|
24 |
+
|
25 |
+
$id_attr = '';
|
26 |
+
if ( $el_id != '' ) {
|
27 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
28 |
+
}
|
29 |
+
|
30 |
+
$style_attr = '';
|
31 |
+
if ( $el_style != '' ) {
|
32 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
33 |
+
}
|
34 |
+
|
35 |
+
if ( $color_scheme != '' ) {
|
36 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
37 |
+
}
|
38 |
+
|
39 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
40 |
+
|
41 |
+
$content = do_shortcode( $content );
|
42 |
+
|
43 |
+
$content .= '<div class="' . esc_attr( $this->shortcode ) . '_total"><div class="' . esc_attr( $this->shortcode ) . '_total_text">' . esc_html__( 'Total', 'bold-builder' ) . '</div><div class="' . esc_attr( $this->shortcode ) . '_total_amount">0.00</div></div>';
|
44 |
+
|
45 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>' . $content . '</div>';
|
46 |
+
|
47 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
48 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
49 |
+
|
50 |
+
return $output;
|
51 |
+
|
52 |
+
}
|
53 |
+
|
54 |
+
function map_shortcode() {
|
55 |
+
|
56 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
57 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
58 |
+
|
59 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Simple Cost Calculator', 'bold-builder' ), 'description' => esc_html__( 'Simple cost calculator container', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_cost_calculator_item' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode, 'show_settings_on_create' => false,
|
60 |
+
'params' => array(
|
61 |
+
array( 'param_name' => 'currency', 'type' => 'textfield', 'heading' => esc_html__( 'Currency', 'bold-builder' ) ),
|
62 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true ),
|
63 |
+
)
|
64 |
+
) );
|
65 |
+
}
|
66 |
+
}
|
content_elements/bt_bb_cost_calculator_item/bt_bb_cost_calculator_item.php
ADDED
@@ -0,0 +1,94 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_cost_calculator_item extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'title' => '',
|
8 |
+
'type' => '',
|
9 |
+
'value' => ''
|
10 |
+
) ), $atts, $this->shortcode ) );
|
11 |
+
|
12 |
+
$class = array( $this->shortcode );
|
13 |
+
|
14 |
+
if ( $el_class != '' ) {
|
15 |
+
$class[] = $el_class;
|
16 |
+
}
|
17 |
+
|
18 |
+
$id_attr = '';
|
19 |
+
if ( $el_id != '' ) {
|
20 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
21 |
+
}
|
22 |
+
|
23 |
+
$style_attr = '';
|
24 |
+
if ( $el_style != '' ) {
|
25 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
26 |
+
}
|
27 |
+
|
28 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
29 |
+
|
30 |
+
$output = '<div class="' . esc_attr( $this->shortcode ) . '_title">' . $title . '</div>';
|
31 |
+
|
32 |
+
if ( $type == 'number' ) {
|
33 |
+
|
34 |
+
$output .= '<div class="bt_bb_widget_number" data-unit-value="' . esc_attr( $value ) . '"><input type="number" step="1" min="0"></div>';
|
35 |
+
|
36 |
+
} else if ( $type == 'select' ) {
|
37 |
+
|
38 |
+
$items_arr = preg_split( '/$\R?^/m', $value );
|
39 |
+
|
40 |
+
$output .= '<div class="bt_bb_widget_select">';
|
41 |
+
$output .= '<div class="bt_bb_widget_select_selected">';
|
42 |
+
$output .= '<div>' . esc_html__( 'Select...', 'bold-builder' ) . '</div>';
|
43 |
+
$output .= '<div></div>';
|
44 |
+
$output .= '</div>';
|
45 |
+
$output .= '<div class="bt_bb_widget_select_items">';
|
46 |
+
$i = 0;
|
47 |
+
foreach( $items_arr as $item ) {
|
48 |
+
if ( $i == 0 ) {
|
49 |
+
$output .= '<div data-value="0">';
|
50 |
+
$output .= '<div>' . esc_html__( 'Select...', 'bold-builder' ) . '</div>';
|
51 |
+
$output .= '<div></div>';
|
52 |
+
$output .= '</div>';
|
53 |
+
}
|
54 |
+
$item_arr = explode( ';', $item );
|
55 |
+
$output .= '<div data-value="' . esc_attr( $item_arr[1] ) . '">';
|
56 |
+
$output .= '<div>' . $item_arr[0] . '</div>';
|
57 |
+
$output .= '<div>' . $item_arr[2] . '</div>';
|
58 |
+
$output .= '</div>';
|
59 |
+
$i++;
|
60 |
+
}
|
61 |
+
$output .= '</div>';
|
62 |
+
$output .= '</div>';
|
63 |
+
|
64 |
+
} else if ( $type == 'switch' ) {
|
65 |
+
|
66 |
+
$output .= '<div class="bt_bb_widget_switch" data-on="' . esc_attr( $value ) . '"><div></div></div>';
|
67 |
+
|
68 |
+
}
|
69 |
+
|
70 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>' . $output . '</div>';
|
71 |
+
|
72 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
73 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
74 |
+
|
75 |
+
return $output;
|
76 |
+
|
77 |
+
}
|
78 |
+
|
79 |
+
function map_shortcode() {
|
80 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Simple Cost Calculator Item', 'bold-builder' ), 'description' => esc_html__( 'Simple cost calculator item element', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
81 |
+
'params' => array(
|
82 |
+
array( 'param_name' => 'title', 'type' => 'textfield', 'heading' => esc_html__( 'Title', 'bold-builder' ), 'preview' => true ),
|
83 |
+
array( 'param_name' => 'type', 'type' => 'dropdown', 'heading' => esc_html__( 'Input type', 'bold-builder' ), 'preview' => true,
|
84 |
+
'value' => array(
|
85 |
+
esc_html__( 'Number', 'bold-builder' ) => 'number',
|
86 |
+
esc_html__( 'Select', 'bold-builder' ) => 'select',
|
87 |
+
esc_html__( 'Switch', 'bold-builder' ) => 'switch'
|
88 |
+
)
|
89 |
+
),
|
90 |
+
array( 'param_name' => 'value', 'type' => 'textarea', 'heading' => esc_html__( 'Value', 'bold-builder' ), 'description' => esc_html__( 'Unit value for Number / name;value;description separated by new line for Select / value for Switch', 'bold-builder' ) ),
|
91 |
+
)
|
92 |
+
) );
|
93 |
+
}
|
94 |
+
}
|
content_elements/bt_bb_countdown/bt_bb_countdown.php
ADDED
@@ -0,0 +1,94 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_countdown extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
8 |
+
'datetime' => '',
|
9 |
+
'size' => '',
|
10 |
+
'hide_indication' => ''
|
11 |
+
) ), $atts, $this->shortcode ) );
|
12 |
+
|
13 |
+
$class = array( $this->shortcode, 'btCounterHolder' );
|
14 |
+
|
15 |
+
if ( $el_class != '' ) {
|
16 |
+
$class[] = $el_class;
|
17 |
+
}
|
18 |
+
|
19 |
+
$id_attr = '';
|
20 |
+
if ( $el_id != '' ) {
|
21 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
22 |
+
}
|
23 |
+
|
24 |
+
$style_attr = '';
|
25 |
+
if ( $el_style != '' ) {
|
26 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
27 |
+
}
|
28 |
+
|
29 |
+
$class[] = $size;
|
30 |
+
|
31 |
+
$datetime = sanitize_text_field( $datetime );
|
32 |
+
|
33 |
+
$target = strtotime( $datetime );
|
34 |
+
$now = strtotime( 'now' );
|
35 |
+
|
36 |
+
$init_seconds = $target - $now;
|
37 |
+
if ( $init_seconds < 0 ) {
|
38 |
+
$init_seconds = 0;
|
39 |
+
}
|
40 |
+
|
41 |
+
$d_text = esc_html__( 'Days', 'bold-builder' );
|
42 |
+
$h_text = esc_html__( 'Hours', 'bold-builder' );
|
43 |
+
$m_text = esc_html__( 'Minutes', 'bold-builder' );
|
44 |
+
$s_text = esc_html__( 'Seconds', 'bold-builder' );
|
45 |
+
|
46 |
+
if ( $hide_indication == 'yes' ) {
|
47 |
+
$d_text = '';
|
48 |
+
$h_text = '';
|
49 |
+
$m_text = '';
|
50 |
+
$s_text = '';
|
51 |
+
}
|
52 |
+
|
53 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
54 |
+
|
55 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>';
|
56 |
+
$output .= '<div class="btCountdownHolder" data-init-seconds="' . esc_attr( $init_seconds ) . '">';
|
57 |
+
|
58 |
+
$output .= '<span class="days" data-text="' . esc_attr( $d_text ) . '"></span>';
|
59 |
+
|
60 |
+
$output .= '<span class="hours"><span class="n0"><span></span><span></span></span><span class="n1"><span></span><span></span></span><span class="hours_text"><span>' . $h_text . '</span></span></span>';
|
61 |
+
|
62 |
+
$output .= '<span class="minutes"><span class="n0"><span></span><span></span></span><span class="n1"><span></span><span></span></span><span class="minutes_text"><span>' . $m_text . '</span></span></span>';
|
63 |
+
|
64 |
+
$output .= '<span class="seconds"><span class="n0"><span></span><span></span></span><span class="n1"><span></span><span></span></span><span class="seconds_text"><span>' . $s_text . '</span></span></span>';
|
65 |
+
$output .= '</div>';
|
66 |
+
$output .= '</div>';
|
67 |
+
|
68 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
69 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
70 |
+
|
71 |
+
return $output;
|
72 |
+
}
|
73 |
+
|
74 |
+
function map_shortcode() {
|
75 |
+
|
76 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Countdown', 'bold-builder' ), 'description' => esc_html__( 'Animated countdown', 'bold-builder' ),
|
77 |
+
'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
78 |
+
'params' => array(
|
79 |
+
array( 'param_name' => 'datetime', 'type' => 'textfield', 'heading' => esc_html__( 'Target date and time', 'bold-builder' ), 'description' => esc_html__( 'YY-mm-dd HH:mm:ss, e.g. 2017-02-22 22:45:00' ), 'preview' => true ),
|
80 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'preview' => true,
|
81 |
+
'value' => array(
|
82 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'btCounterNormalSize',
|
83 |
+
esc_html__( 'Large', 'bold-builder' ) => 'btCounterLargeSize'
|
84 |
+
) ),
|
85 |
+
array( 'param_name' => 'hide_indication', 'type' => 'dropdown', 'heading' => esc_html__( 'Hide indication', 'bold-builder' ), 'description' => esc_html__( 'Hide indication of days, hours, minutes and seconds', 'bold-builder' ),
|
86 |
+
'value' => array(
|
87 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
88 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
89 |
+
) )
|
90 |
+
)
|
91 |
+
) );
|
92 |
+
|
93 |
+
}
|
94 |
+
}
|
content_elements/bt_bb_counter/bt_bb_counter.php
ADDED
@@ -0,0 +1,102 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_counter extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
8 |
+
'number' => '',
|
9 |
+
'size' => ''
|
10 |
+
) ), $atts, $this->shortcode ) );
|
11 |
+
|
12 |
+
$class = array(); //array( $this->shortcode );
|
13 |
+
|
14 |
+
$class[] = 'bt_bb_counter_holder';
|
15 |
+
|
16 |
+
$id_attr = '';
|
17 |
+
if ( $el_id != '' ) {
|
18 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
19 |
+
}
|
20 |
+
|
21 |
+
$style_attr = '';
|
22 |
+
if ( $el_style != '' ) {
|
23 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
24 |
+
}
|
25 |
+
|
26 |
+
if ( $size != '' ) {
|
27 |
+
$class[] = $this->prefix . 'size' . '_' . $size;
|
28 |
+
}
|
29 |
+
|
30 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
31 |
+
$class_attr = implode( ' ', $class );
|
32 |
+
|
33 |
+
if ( $el_class != '' ) {
|
34 |
+
$class_attr = $class_attr . ' ' . $el_class;
|
35 |
+
}
|
36 |
+
|
37 |
+
$strlen = mb_strlen( $number, 'UTF-8' );
|
38 |
+
$number = $this->msplit( $number );
|
39 |
+
|
40 |
+
$output = '';
|
41 |
+
$output .= '<div' . $id_attr . ' class="' . esc_attr( $class_attr ) . '"' . $style_attr . '>';
|
42 |
+
$output .= '<span class="bt_bb_counter animate" data-digit-length="' . $strlen . '">';
|
43 |
+
for ( $i = 0; $i < $strlen; $i++ ) {
|
44 |
+
|
45 |
+
|
46 |
+
// $output .= '<span class="onedigit p' . ( $strlen - $i ) . '" data-digit="' . esc_attr( $number[ $i ] ) . '">';
|
47 |
+
|
48 |
+
if ( ctype_digit( $number[ $i ] ) ) {
|
49 |
+
$output .= '<span class="onedigit p' . ( $strlen - $i ) . ' d' . $number[ $i ] . '" data-digit="' . esc_attr( $number[ $i ] ) . '">';
|
50 |
+
for ( $j = 0; $j <= 9; $j++ ) {
|
51 |
+
$output .= '<span class="n' . $j . '">' . $j . '</span>';
|
52 |
+
}
|
53 |
+
$output .= '<span class="n0">0</span>';
|
54 |
+
$output .= '</span>';
|
55 |
+
} else {
|
56 |
+
$output .= '<span class="onedigit p' . ( $strlen - $i ) . ' d0" data-digit="' . esc_attr( $number[ $i ] ) . '">';
|
57 |
+
for ( $j = 0; $j <= 9; $j++ ) {
|
58 |
+
$output .= '<span class="n' . $j . '"> </span>';
|
59 |
+
}
|
60 |
+
$output .= '<span class="n0 t">' . $number[ $i ] . '</span>';
|
61 |
+
$output .= '</span>';
|
62 |
+
}
|
63 |
+
|
64 |
+
// $output .= '</span>';
|
65 |
+
}
|
66 |
+
$output .= '</span>';
|
67 |
+
$output .= '</div>';
|
68 |
+
|
69 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
70 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
71 |
+
|
72 |
+
return $output;
|
73 |
+
}
|
74 |
+
|
75 |
+
function msplit( $str, $len = 1 ) {
|
76 |
+
$arr = array();
|
77 |
+
$length = mb_strlen( $str, 'UTF-8' );
|
78 |
+
for ( $i = 0; $i < $length; $i += $len ) {
|
79 |
+
$arr[] = mb_substr( $str, $i, $len, 'UTF-8' );
|
80 |
+
}
|
81 |
+
return $arr;
|
82 |
+
}
|
83 |
+
|
84 |
+
function map_shortcode() {
|
85 |
+
|
86 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Counter', 'bold-builder' ), 'description' => esc_html__( 'Animated counter', 'bold-builder' ),
|
87 |
+
'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
88 |
+
'params' => array(
|
89 |
+
array( 'param_name' => 'number', 'type' => 'textfield', 'heading' => esc_html__( 'Number', 'bold-builder' ), 'preview' => true ),
|
90 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'preview' => true,
|
91 |
+
'value' => array(
|
92 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
93 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'xsmall',
|
94 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
95 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
96 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'xlarge'
|
97 |
+
) )
|
98 |
+
)
|
99 |
+
) );
|
100 |
+
|
101 |
+
}
|
102 |
+
}
|
content_elements/bt_bb_custom_menu/bt_bb_custom_menu.php
ADDED
@@ -0,0 +1,67 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_custom_menu extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'menu' => '',
|
8 |
+
'direction' => 'vertical'
|
9 |
+
) ), $atts, $this->shortcode ) );
|
10 |
+
|
11 |
+
$class = array( $this->shortcode );
|
12 |
+
|
13 |
+
if ( $el_class != '' ) {
|
14 |
+
$class[] = $el_class;
|
15 |
+
}
|
16 |
+
|
17 |
+
if ( $direction != '' ) {
|
18 |
+
$class[] = $this->prefix . 'direction' . '_' . $direction;
|
19 |
+
}
|
20 |
+
|
21 |
+
$id_attr = '';
|
22 |
+
if ( $el_id != '' ) {
|
23 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
24 |
+
}
|
25 |
+
|
26 |
+
$style_attr = '';
|
27 |
+
if ( $el_style != '' ) {
|
28 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
29 |
+
}
|
30 |
+
|
31 |
+
$output = wp_nav_menu(
|
32 |
+
array(
|
33 |
+
'menu' => $menu,
|
34 |
+
'echo' => false
|
35 |
+
)
|
36 |
+
);
|
37 |
+
|
38 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
39 |
+
|
40 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>' . $output . '</div>';
|
41 |
+
|
42 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
43 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
44 |
+
|
45 |
+
return $output;
|
46 |
+
|
47 |
+
}
|
48 |
+
|
49 |
+
function map_shortcode() {
|
50 |
+
$menus = wp_get_nav_menus();
|
51 |
+
$nav_menu_arr = array();
|
52 |
+
foreach( $menus as $menu ) {
|
53 |
+
$nav_menu_arr[ $menu->name ] = $menu->slug;
|
54 |
+
}
|
55 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Custom Menu', 'bold-builder' ), 'description' => esc_html__( 'Custom WordPress menu', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
56 |
+
'params' => array(
|
57 |
+
array( 'param_name' => 'menu', 'type' => 'dropdown', 'heading' => esc_html__( 'Menu name', 'bold-builder' ), 'preview' => true, 'value' => $nav_menu_arr ),
|
58 |
+
array( 'param_name' => 'direction', 'type' => 'dropdown', 'default' => 'vertical', 'heading' => esc_html__( 'Direction', 'bold-builder' ), 'preview' => true,
|
59 |
+
'value' => array(
|
60 |
+
esc_html__( 'Vertical', 'bold-builder' ) => 'vertical',
|
61 |
+
esc_html__( 'Horizontal', 'bold-builder' ) => 'horizontal'
|
62 |
+
)
|
63 |
+
)
|
64 |
+
)
|
65 |
+
) );
|
66 |
+
}
|
67 |
+
}
|
content_elements/bt_bb_google_maps/bt_bb_google_maps.php
ADDED
@@ -0,0 +1,121 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_google_maps extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'api_key' => '',
|
8 |
+
'zoom' => '',
|
9 |
+
'height' => '',
|
10 |
+
'custom_style' => '',
|
11 |
+
'map_type' => 'interactive',
|
12 |
+
'center_map' => ''
|
13 |
+
) ), $atts, $this->shortcode ) );
|
14 |
+
|
15 |
+
$class_master = 'bt_bb_map';
|
16 |
+
|
17 |
+
$class = array( $this->shortcode, $class_master );
|
18 |
+
|
19 |
+
if ( $el_class != '' ) {
|
20 |
+
$class[] = $el_class;
|
21 |
+
}
|
22 |
+
|
23 |
+
if ( $center_map == 'yes_no_overlay' ) {
|
24 |
+
$class[] = $this->shortcode . '_no_overlay';
|
25 |
+
$class[] = $class_master . '_no_overlay';
|
26 |
+
}
|
27 |
+
|
28 |
+
if ( $map_type != '' ) {
|
29 |
+
$class[] = $this->prefix . 'map_type' . '_' . $map_type;
|
30 |
+
}
|
31 |
+
|
32 |
+
$id_attr = '';
|
33 |
+
if ( $el_id != '' ) {
|
34 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
35 |
+
}
|
36 |
+
|
37 |
+
$style_attr = '';
|
38 |
+
if ( $el_style != '' ) {
|
39 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
40 |
+
}
|
41 |
+
|
42 |
+
if ( $api_key != '' ) {
|
43 |
+
wp_enqueue_script(
|
44 |
+
'gmaps_api',
|
45 |
+
'https://maps.googleapis.com/maps/api/js?key=' . $api_key
|
46 |
+
);
|
47 |
+
} else {
|
48 |
+
wp_enqueue_script(
|
49 |
+
'gmaps_api',
|
50 |
+
'https://maps.googleapis.com/maps/api/js?v=&sensor=false'
|
51 |
+
);
|
52 |
+
}
|
53 |
+
|
54 |
+
if ( $zoom == '' ) {
|
55 |
+
$zoom = 14;
|
56 |
+
}
|
57 |
+
|
58 |
+
$style_height = '';
|
59 |
+
if ( $height != '' && $map_type == 'interactive' ) {
|
60 |
+
$style_height = ' ' . 'style="height:' . $height . '"';
|
61 |
+
}
|
62 |
+
|
63 |
+
$map_id = uniqid( 'map_canvas' );
|
64 |
+
|
65 |
+
$content_html = wptexturize( do_shortcode( $content ) );
|
66 |
+
|
67 |
+
$locations = substr_count( $content_html, '"bt_bb_google_maps_location' );
|
68 |
+
$locations_without_content = substr_count( $content_html, 'bt_bb_google_maps_location_without_content' );
|
69 |
+
|
70 |
+
if ( $content != '' && $locations != $locations_without_content ) {
|
71 |
+
$content = '<span class="' . esc_attr( $this->shortcode ) . '_content_toggler ' . esc_attr( $class_master ) . '_content_toggler"></span>';
|
72 |
+
$content .= '<div class="' . esc_attr( $this->shortcode ) . '_content ' . esc_attr($class_master) . '_content">';
|
73 |
+
$content .= '<div class="' . esc_attr( $this->shortcode ) . '_content_wrapper ' . esc_attr( $class_master ) . '_content_wrapper">' ;
|
74 |
+
$content .= $content_html ;
|
75 |
+
$content .= '</div>';
|
76 |
+
$content .= '</div>';
|
77 |
+
$class[] = $this->shortcode . '_with_content';
|
78 |
+
$class[] = $class_master . '_with_content';
|
79 |
+
$style_height = '';
|
80 |
+
} else {
|
81 |
+
$content = $content_html;
|
82 |
+
}
|
83 |
+
|
84 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
85 |
+
|
86 |
+
$output = '<div class="' . esc_attr( $this->shortcode ) . '_map ' . esc_attr( $class_master ) . '_map" id="' . esc_attr( $map_id ) . '" data-height="' . esc_attr( intval( $height ) ) . '" data-api-key="' . esc_attr( $api_key ) . '" data-map-type="' . esc_attr( $map_type ) . '" data-zoom="' . esc_attr( intval( $zoom ) ) . '" data-init-finished="false" data-custom-style="' . esc_attr( $custom_style ) . '"' . $style_height . '>';
|
87 |
+
$output .= '</div>';
|
88 |
+
$output .= $content;
|
89 |
+
$output = '<div' . $id_attr . ' class="' . esc_attr( implode( ' ', $class ) ) . '"' . $style_attr . ' data-center="' . esc_attr( $center_map ) . '">' . $output . '</div>';
|
90 |
+
|
91 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
92 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
93 |
+
|
94 |
+
return $output;
|
95 |
+
|
96 |
+
}
|
97 |
+
|
98 |
+
function map_shortcode() {
|
99 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Google Maps', 'bold-builder' ), 'description' => esc_html__( 'Google Map with custom content', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_google_maps_location' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
100 |
+
'params' => array(
|
101 |
+
array( 'param_name' => 'api_key', 'type' => 'textfield', 'heading' => esc_html__( 'API key', 'bold-builder' ) ),
|
102 |
+
array( 'param_name' => 'zoom', 'type' => 'textfield', 'heading' => esc_html__( 'Zoom (e.g. 14)', 'bold-builder' ) ),
|
103 |
+
array( 'param_name' => 'height', 'type' => 'textfield', 'heading' => esc_html__( 'Height (e.g. 250px)', 'bold-builder' ), 'description' => esc_html__( 'Used for static map or for interactive map without content; static image map width is 1280px ', 'bold-builder' ) ),
|
104 |
+
array( 'param_name' => 'custom_style', 'type' => 'textarea_object', 'heading' => esc_html__( 'Custom map style array (interactive map) or querystring (static image map)', 'bold-builder' ), 'description' => esc_html__( 'Find more custom styles at https://snazzymaps.com/ or https://mapstyle.withgoogle.com/ (for static maps). ', 'bold-builder' ) ),
|
105 |
+
array( 'param_name' => 'map_type', 'type' => 'dropdown', 'default' => 'interactive', 'heading' => esc_html__( 'Map type', 'bold-builder' ),
|
106 |
+
'value' => array(
|
107 |
+
esc_html__( 'Interactive (JavaScript API)', 'bold-builder' ) => 'interactive',
|
108 |
+
esc_html__( 'Static image (Maps Static API)', 'bold-builder' ) => 'static'
|
109 |
+
)
|
110 |
+
),
|
111 |
+
array( 'param_name' => 'center_map', 'type' => 'dropdown', 'heading' => esc_html__( 'Center map', 'bold-builder' ),
|
112 |
+
'value' => array(
|
113 |
+
esc_html__( 'No (use first location as center)', 'bold-builder' ) => 'no',
|
114 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes',
|
115 |
+
esc_html__( 'Yes (without overlay initially)', 'bold-builder' ) => 'yes_no_overlay'
|
116 |
+
)
|
117 |
+
),
|
118 |
+
)
|
119 |
+
) );
|
120 |
+
}
|
121 |
+
}
|
content_elements/bt_bb_google_maps_location/bt_bb_google_maps_location.php
ADDED
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_google_maps_location extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'latitude' => '',
|
8 |
+
'longitude' => '',
|
9 |
+
'icon' => ''
|
10 |
+
) ), $atts, $this->shortcode ) );
|
11 |
+
|
12 |
+
$class_master = 'bt_bb_map_location';
|
13 |
+
|
14 |
+
$class = array( $this->shortcode, $class_master );
|
15 |
+
|
16 |
+
if ( $el_class != '' ) {
|
17 |
+
$class[] = $el_class;
|
18 |
+
}
|
19 |
+
|
20 |
+
if ( $content == '' ) {
|
21 |
+
$class[] = $this->shortcode . '_without_content';
|
22 |
+
$class[] = $class_master . '_without_content';
|
23 |
+
}
|
24 |
+
|
25 |
+
$id_attr = '';
|
26 |
+
if ( $el_id != '' ) {
|
27 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
28 |
+
}
|
29 |
+
|
30 |
+
$style_attr = '';
|
31 |
+
if ( $el_style != '' ) {
|
32 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
33 |
+
}
|
34 |
+
|
35 |
+
if ( $icon != '' ) {
|
36 |
+
$icon = wp_get_attachment_image_src( $icon, 'full' );
|
37 |
+
$icon = $icon[0];
|
38 |
+
}
|
39 |
+
|
40 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
41 |
+
|
42 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-lat="' . esc_attr( $latitude ) . '" data-lng="' . esc_attr( $longitude ) . '" data-icon="' . esc_attr( $icon ) . '">' . wptexturize( do_shortcode( $content ) ) . '</div>';
|
43 |
+
|
44 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
45 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
46 |
+
|
47 |
+
return $output;
|
48 |
+
|
49 |
+
}
|
50 |
+
|
51 |
+
function map_shortcode() {
|
52 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Google Maps Location', 'bold-builder' ), 'description' => esc_html__( 'Google Map Location', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_headline' => true, 'bt_bb_text' => true, 'bt_bb_button' => true, 'bt_bb_icon' => true, 'bt_bb_service_icon' => true, 'bt_bb_service' => true, 'bt_bb_image' => true, 'bt_bb_separator' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
53 |
+
'params' => array(
|
54 |
+
array( 'param_name' => 'latitude', 'type' => 'textfield', 'heading' => esc_html__( 'Latitude', 'bold-builder' ), 'preview' => true ),
|
55 |
+
array( 'param_name' => 'longitude', 'type' => 'textfield', 'heading' => esc_html__( 'Longitude', 'bold-builder' ), 'preview' => true ),
|
56 |
+
array( 'param_name' => 'icon', 'type' => 'attach_image', 'heading' => esc_html__( 'Icon', 'bold-builder' ), 'preview' => true )
|
57 |
+
)
|
58 |
+
) );
|
59 |
+
}
|
60 |
+
}
|
content_elements/bt_bb_headline/bt_bb_headline.php
ADDED
@@ -0,0 +1,225 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_headline extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'headline' => '',
|
8 |
+
'html_tag' => '',
|
9 |
+
'font' => '',
|
10 |
+
'font_subset' => '',
|
11 |
+
'size' => '',
|
12 |
+
'font_size' => '',
|
13 |
+
'font_weight' => '',
|
14 |
+
'color_scheme' => '',
|
15 |
+
'color' => '',
|
16 |
+
'supertitle_position' => '',
|
17 |
+
'dash' => '',
|
18 |
+
'align' => '',
|
19 |
+
'url' => '',
|
20 |
+
'target' => '',
|
21 |
+
'superheadline' => '',
|
22 |
+
'subheadline' => ''
|
23 |
+
) ), $atts, $this->shortcode ) );
|
24 |
+
|
25 |
+
$superheadline = html_entity_decode( $superheadline, ENT_QUOTES, 'UTF-8' );
|
26 |
+
$subheadline = html_entity_decode( $subheadline, ENT_QUOTES, 'UTF-8' );
|
27 |
+
$headline = html_entity_decode( $headline, ENT_QUOTES, 'UTF-8' );
|
28 |
+
|
29 |
+
if ( $font != '' && $font != 'inherit' ) {
|
30 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
31 |
+
bt_bb_enqueue_google_font( $font, $font_subset );
|
32 |
+
}
|
33 |
+
|
34 |
+
$class = array( $this->shortcode );
|
35 |
+
$data_override_class = array();
|
36 |
+
|
37 |
+
if ( $el_class != '' ) {
|
38 |
+
$class[] = $el_class;
|
39 |
+
}
|
40 |
+
|
41 |
+
$id_attr = '';
|
42 |
+
if ( $el_id != '' ) {
|
43 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
44 |
+
}
|
45 |
+
|
46 |
+
$html_tag_style = "";
|
47 |
+
$html_tag_style_arr = array();
|
48 |
+
if ( $font != '' && $font != 'inherit' ) {
|
49 |
+
$el_style = $el_style . ';' . 'font-family:\'' . urldecode( $font ) . '\'';
|
50 |
+
$html_tag_style_arr[] = 'font-family:\'' . urldecode( $font ) . '\'';
|
51 |
+
}
|
52 |
+
if ( $font_size != '' ) {
|
53 |
+
$html_tag_style_arr[] = 'font-size:' . $font_size ;
|
54 |
+
}
|
55 |
+
if ( count( $html_tag_style_arr ) > 0 ) {
|
56 |
+
$html_tag_style = ' style="' . implode( '; ', $html_tag_style_arr ) . '"';
|
57 |
+
}
|
58 |
+
|
59 |
+
if ( $font_weight != '' ) {
|
60 |
+
$class[] = $this->prefix . 'font_weight_' . $font_weight ;
|
61 |
+
}
|
62 |
+
|
63 |
+
if ( $color_scheme != '' ) {
|
64 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
65 |
+
}
|
66 |
+
|
67 |
+
if ( $color != '' ) {
|
68 |
+
$el_style = $el_style . ';' . 'color:' . $color . ';border-color:' . $color . ';';
|
69 |
+
}
|
70 |
+
|
71 |
+
if ( $dash != '' ) {
|
72 |
+
$class[] = $this->prefix . 'dash' . '_' . $dash;
|
73 |
+
}
|
74 |
+
|
75 |
+
$this->responsive_data_override_class(
|
76 |
+
$class, $data_override_class,
|
77 |
+
array(
|
78 |
+
'prefix' => $this->prefix,
|
79 |
+
'param' => 'size',
|
80 |
+
'value' => $size
|
81 |
+
)
|
82 |
+
);
|
83 |
+
|
84 |
+
if ( $target == '' ) {
|
85 |
+
$target = '_self';
|
86 |
+
}
|
87 |
+
|
88 |
+
$superheadline_inside = '';
|
89 |
+
$superheadline_outside = '';
|
90 |
+
|
91 |
+
if ( $superheadline != '' ) {
|
92 |
+
$class[] = $this->prefix . 'superheadline';
|
93 |
+
if ( $supertitle_position == 'outside' ) {
|
94 |
+
$superheadline_outside = '<span class="' . esc_attr( $this->shortcode ) . '_superheadline">' . $superheadline . '</span>';
|
95 |
+
$class[] = $this->prefix . 'superheadline_outside';
|
96 |
+
} else {
|
97 |
+
$superheadline_inside = '<span class="' . esc_attr( $this->shortcode ) . '_superheadline">' . $superheadline . '</span>';
|
98 |
+
}
|
99 |
+
}
|
100 |
+
|
101 |
+
if ( $subheadline != '' ) {
|
102 |
+
$class[] = $this->prefix . 'subheadline';
|
103 |
+
$subheadline = '<div class="' . esc_attr( $this->shortcode ) . '_subheadline">' . $subheadline . '</div>';
|
104 |
+
$subheadline = nl2br( $subheadline );
|
105 |
+
}
|
106 |
+
|
107 |
+
$style_attr = '';
|
108 |
+
if ( $el_style != '' ) {
|
109 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
110 |
+
}
|
111 |
+
|
112 |
+
$this->responsive_data_override_class(
|
113 |
+
$class, $data_override_class,
|
114 |
+
array(
|
115 |
+
'prefix' => $this->prefix,
|
116 |
+
'param' => 'align',
|
117 |
+
'value' => $align
|
118 |
+
)
|
119 |
+
);
|
120 |
+
|
121 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
122 |
+
|
123 |
+
if ( $headline != '' ) {
|
124 |
+
if ( $url != '' ) {
|
125 |
+
$url_title = strip_tags( str_replace( array("\n", "\r"), ' ', $headline ) );
|
126 |
+
$link = bt_bb_get_url( $url );
|
127 |
+
// IMPORTANT: esc_attr must be used instead of esc_url(_raw)
|
128 |
+
$headline = '<a href="' . esc_attr( $link ) . '" target="' . esc_attr( $target ) . '" title="' . esc_attr( $url_title ) . '">' . $headline . '</a>';
|
129 |
+
}
|
130 |
+
$headline = '<span class="' . esc_attr( $this->shortcode ) . '_content"><span>' . $headline . '</span></span>';
|
131 |
+
}
|
132 |
+
|
133 |
+
$headline = nl2br( $headline );
|
134 |
+
|
135 |
+
$output = '<header' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">';
|
136 |
+
if ( $superheadline_outside != '' ) $output .= '<div class="' . $this->shortcode . '_superheadline_outside' . '">' . $superheadline_outside . '</div>';
|
137 |
+
if ( $headline != '' || $superheadline_inside != '' ) $output .= '<' . $html_tag . $html_tag_style . ' class="bt_bb_headline_tag">' . $superheadline_inside . $headline . '</' . $html_tag . '>';
|
138 |
+
$output .= $subheadline . '</header>';
|
139 |
+
|
140 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
141 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
142 |
+
|
143 |
+
return $output;
|
144 |
+
|
145 |
+
}
|
146 |
+
|
147 |
+
function map_shortcode() {
|
148 |
+
|
149 |
+
require( dirname(__FILE__) . '/../../content_elements_misc/fonts1.php' );
|
150 |
+
|
151 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
152 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
153 |
+
|
154 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Headline', 'bold-builder' ), 'description' => esc_html__( 'Headline with custom Google fonts', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode, 'highlight' => true,
|
155 |
+
'params' => array(
|
156 |
+
array( 'param_name' => 'superheadline', 'type' => 'textfield', 'heading' => esc_html__( 'Superheadline', 'bold-builder' ) ),
|
157 |
+
array( 'param_name' => 'headline', 'type' => 'textarea', 'heading' => esc_html__( 'Headline', 'bold-builder' ), 'preview' => true, 'preview_strong' => true ),
|
158 |
+
array( 'param_name' => 'subheadline', 'type' => 'textarea', 'heading' => esc_html__( 'Subheadline', 'bold-builder' ) ),
|
159 |
+
array( 'param_name' => 'html_tag', 'type' => 'dropdown', 'heading' => esc_html__( 'HTML tag', 'bold-builder' ), 'preview' => true,
|
160 |
+
'value' => array(
|
161 |
+
esc_html__( 'h1', 'bold-builder' ) => 'h1',
|
162 |
+
esc_html__( 'h2', 'bold-builder' ) => 'h2',
|
163 |
+
esc_html__( 'h3', 'bold-builder' ) => 'h3',
|
164 |
+
esc_html__( 'h4', 'bold-builder' ) => 'h4',
|
165 |
+
esc_html__( 'h5', 'bold-builder' ) => 'h5',
|
166 |
+
esc_html__( 'h6', 'bold-builder' ) => 'h6'
|
167 |
+
) ),
|
168 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'description' => esc_html__( 'Predefined heading sizes, independent of html tag', 'bold-builder' ), 'responsive_override' => true,
|
169 |
+
'value' => array(
|
170 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
171 |
+
esc_html__( 'Extra Small', 'bold-builder' ) => 'extrasmall',
|
172 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
173 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
174 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
175 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
176 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'extralarge',
|
177 |
+
esc_html__( 'Huge', 'bold-builder' ) => 'huge'
|
178 |
+
)
|
179 |
+
),
|
180 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Alignment', 'bold-builder' ), 'responsive_override' => true,
|
181 |
+
'value' => array(
|
182 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
183 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
184 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
185 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
186 |
+
)
|
187 |
+
),
|
188 |
+
array( 'param_name' => 'dash', 'type' => 'dropdown', 'heading' => esc_html__( 'Dash', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
189 |
+
'value' => array(
|
190 |
+
esc_html__( 'None', 'bold-builder' ) => 'none',
|
191 |
+
esc_html__( 'Top', 'bold-builder' ) => 'top',
|
192 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom',
|
193 |
+
esc_html__( 'Top and bottom', 'bold-builder' ) => 'top_bottom'
|
194 |
+
)
|
195 |
+
),
|
196 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true ),
|
197 |
+
array( 'param_name' => 'color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ), 'preview' => true ),
|
198 |
+
array( 'param_name' => 'supertitle_position', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'outside' ), 'default' => 'outside', 'heading' => esc_html__( 'Put supertitle outside H tag', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ), 'preview' => true ),
|
199 |
+
array( 'param_name' => 'font', 'type' => 'dropdown', 'heading' => esc_html__( 'Font', 'bold-builder' ), 'group' => esc_html__( 'Font', 'bold-builder' ), 'preview' => true,
|
200 |
+
'value' => array( esc_html__( 'Inherit', 'bold-builder' ) => 'inherit' ) + BT_BB_Root::$font_arr
|
201 |
+
),
|
202 |
+
array( 'param_name' => 'font_subset', 'type' => 'textfield', 'heading' => esc_html__( 'Google Font subset', 'bold-builder' ), 'group' => esc_html__( 'Font', 'bold-builder' ), 'value' => 'latin,latin-ext', 'description' => esc_html__( 'E.g. latin,latin-ext,cyrillic,cyrillic-ext', 'bold-builder' ) ),
|
203 |
+
array( 'param_name' => 'font_size', 'type' => 'textfield', 'heading' => esc_html__( 'Custom font size', 'bold-builder' ), 'group' => esc_html__( 'Font', 'bold-builder' ), 'description' => esc_html__( 'E.g. 20px or 1.5rem', 'bold-builder' ) ),
|
204 |
+
array( 'param_name' => 'font_weight', 'type' => 'dropdown', 'heading' => esc_html__( 'Font weight', 'bold-builder' ), 'group' => esc_html__( 'Font', 'bold-builder' ),
|
205 |
+
'value' => array(
|
206 |
+
esc_html__( 'Default', 'bold-builder' ) => '',
|
207 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
208 |
+
esc_html__( 'Bold', 'bold-builder' ) => 'bold',
|
209 |
+
esc_html__( 'Bolder', 'bold-builder' ) => 'bolder',
|
210 |
+
esc_html__( 'Lighter', 'bold-builder' ) => 'lighter',
|
211 |
+
esc_html__( 'Light', 'bold-builder' ) => 'light',
|
212 |
+
esc_html__( 'Thin', 'bold-builder' ) => 'thin'
|
213 |
+
)
|
214 |
+
),
|
215 |
+
array( 'param_name' => 'url', 'type' => 'link', 'heading' => esc_html__( 'URL', 'bold-builder' ), 'description' => esc_html__( 'Enter full or local URL (e.g. https://www.bold-themes.com or /pages/about-us) or post slug (e.g. about-us) or search for existing content.', 'bold-builder' ), 'group' => esc_html__( 'URL', 'bold-builder' ) ),
|
216 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'heading' => esc_html__( 'Target', 'bold-builder' ), 'group' => esc_html__( 'URL', 'bold-builder' ),
|
217 |
+
'value' => array(
|
218 |
+
esc_html__( 'Self (open in same tab)', 'bold-builder' ) => '_self',
|
219 |
+
esc_html__( 'Blank (open in new tab)', 'bold-builder' ) => '_blank'
|
220 |
+
)
|
221 |
+
)
|
222 |
+
)
|
223 |
+
) );
|
224 |
+
}
|
225 |
+
}
|
content_elements/bt_bb_icon/bt_bb_icon.php
ADDED
@@ -0,0 +1,173 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_icon extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'icon' => '',
|
8 |
+
'text' => '',
|
9 |
+
'url' => '',
|
10 |
+
'url_title' => '',
|
11 |
+
'target' => '',
|
12 |
+
'color_scheme' => '',
|
13 |
+
'style' => '',
|
14 |
+
'size' => '',
|
15 |
+
'shape' => '',
|
16 |
+
'align' => 'inherit'
|
17 |
+
) ), $atts, $this->shortcode ) );
|
18 |
+
|
19 |
+
$class = array( $this->shortcode );
|
20 |
+
$data_override_class = array();
|
21 |
+
|
22 |
+
if ( $el_class != '' ) {
|
23 |
+
$class[] = $el_class;
|
24 |
+
}
|
25 |
+
|
26 |
+
$id_attr = '';
|
27 |
+
if ( $el_id != '' ) {
|
28 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
29 |
+
}
|
30 |
+
|
31 |
+
$style_attr = '';
|
32 |
+
if ( $el_style != '' ) {
|
33 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
34 |
+
}
|
35 |
+
|
36 |
+
if ( $color_scheme != '' ) {
|
37 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
38 |
+
}
|
39 |
+
|
40 |
+
if ( $style != '' ) {
|
41 |
+
$class[] = $this->prefix . 'style' . '_' . $style;
|
42 |
+
}
|
43 |
+
|
44 |
+
$this->responsive_data_override_class(
|
45 |
+
$class, $data_override_class,
|
46 |
+
array(
|
47 |
+
'prefix' => $this->prefix,
|
48 |
+
'param' => 'size',
|
49 |
+
'value' => $size
|
50 |
+
)
|
51 |
+
);
|
52 |
+
|
53 |
+
if ( $shape != '' ) {
|
54 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
55 |
+
}
|
56 |
+
|
57 |
+
$this->responsive_data_override_class(
|
58 |
+
$class, $data_override_class,
|
59 |
+
array(
|
60 |
+
'prefix' => $this->prefix,
|
61 |
+
'param' => 'align',
|
62 |
+
'value' => $align
|
63 |
+
)
|
64 |
+
);
|
65 |
+
|
66 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
67 |
+
|
68 |
+
$output = $this->get_html( $icon, $text, $url, $url_title, $target );
|
69 |
+
|
70 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">' . $output . '</div>';
|
71 |
+
|
72 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
73 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
74 |
+
|
75 |
+
return $output;
|
76 |
+
|
77 |
+
}
|
78 |
+
|
79 |
+
static function get_html( $icon, $text = '', $url = '', $url_title = '', $target = '' ) {
|
80 |
+
|
81 |
+
$icon_set = substr( $icon, 0, -5 );
|
82 |
+
$icon = substr( $icon, -4 );
|
83 |
+
|
84 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
85 |
+
$link = bt_bb_get_url( $url );
|
86 |
+
|
87 |
+
if ( $text != '' ) {
|
88 |
+
if ( $url_title == '' ) $url_title = strip_tags($text);
|
89 |
+
$text = '<span>' . $text . '</span>';
|
90 |
+
}
|
91 |
+
|
92 |
+
$url_title_attr = '';
|
93 |
+
|
94 |
+
if ( $url_title != '' ) {
|
95 |
+
$url_title_attr = ' title="' . esc_attr( $url_title ) . '"';
|
96 |
+
}
|
97 |
+
|
98 |
+
if ( $link == '' ) {
|
99 |
+
$ico_tag = 'span' . ' ';
|
100 |
+
$ico_tag_end = 'span';
|
101 |
+
} else {
|
102 |
+
$target_attr = 'target="_self"';
|
103 |
+
if ( $target != '' ) {
|
104 |
+
$target_attr = ' ' . 'target="' . ( $target ) . '"';
|
105 |
+
}
|
106 |
+
$ico_tag = 'a href="' . esc_attr( $link ) . '"' . ' ' . $target_attr . ' ' . $url_title_attr . ' ';
|
107 |
+
$ico_tag_end = 'a';
|
108 |
+
}
|
109 |
+
|
110 |
+
return '<' . $ico_tag . ' data-ico-' . esc_attr( $icon_set ) . '="&#x' . esc_attr( $icon ) . ';" class="bt_bb_icon_holder">' . $text . '</' . $ico_tag_end . '>';
|
111 |
+
}
|
112 |
+
|
113 |
+
function map_shortcode() {
|
114 |
+
|
115 |
+
if ( function_exists('boldthemes_get_icon_fonts_bb_array') ) {
|
116 |
+
$icon_arr = boldthemes_get_icon_fonts_bb_array();
|
117 |
+
} else {
|
118 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/fa_icons.php' );
|
119 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/s7_icons.php' );
|
120 |
+
$icon_arr = array( 'Font Awesome' => bt_bb_fa_icons(), 'S7' => bt_bb_s7_icons() );
|
121 |
+
}
|
122 |
+
|
123 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
124 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
125 |
+
|
126 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Icon', 'bold-builder' ), 'description' => esc_html__( 'Single icon with link', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
127 |
+
'params' => array(
|
128 |
+
array( 'param_name' => 'icon', 'type' => 'iconpicker', 'heading' => esc_html__( 'Icon', 'bold-builder' ), 'value' => $icon_arr, 'preview' => true ),
|
129 |
+
array( 'param_name' => 'text', 'type' => 'textfield', 'heading' => esc_html__( 'Text', 'bold-builder' ), 'preview' => true ),
|
130 |
+
array( 'param_name' => 'url', 'type' => 'link', 'heading' => esc_html__( 'URL', 'bold-builder' ), 'description' => esc_html__( 'Enter full or local URL (e.g. https://www.bold-themes.com or /pages/about-us) or post slug (e.g. about-us) or search for existing content.', 'bold-builder' ) ),
|
131 |
+
array( 'param_name' => 'url_title', 'type' => 'textfield', 'heading' => esc_html__( 'Mouse hover title', 'bold-builder' ) ),
|
132 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'heading' => esc_html__( 'Target', 'bold-builder' ),
|
133 |
+
'value' => array(
|
134 |
+
esc_html__( 'Self (open in same tab)', 'bold-builder' ) => '_self',
|
135 |
+
esc_html__( 'Blank (open in new tab)', 'bold-builder' ) => '_blank',
|
136 |
+
)
|
137 |
+
),
|
138 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Alignment', 'bold-builder' ), 'description' => esc_html__( 'Please note that it is not possible to show multiple icons inline if any of them are using Center option.', 'bold-builder' ), 'responsive_override' => true,
|
139 |
+
'value' => array(
|
140 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
141 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
142 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
143 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
144 |
+
)
|
145 |
+
),
|
146 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'default' => 'small', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ), 'responsive_override' => true,
|
147 |
+
'value' => array(
|
148 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'xsmall',
|
149 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
150 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
151 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
152 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'xlarge'
|
153 |
+
)
|
154 |
+
),
|
155 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
156 |
+
array( 'param_name' => 'style', 'type' => 'dropdown', 'heading' => esc_html__( 'Style', 'bold-builder' ), 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ),
|
157 |
+
'value' => array(
|
158 |
+
esc_html__( 'Outline', 'bold-builder' ) => 'outline',
|
159 |
+
esc_html__( 'Filled', 'bold-builder' ) => 'filled',
|
160 |
+
esc_html__( 'Borderless', 'bold-builder' ) => 'borderless'
|
161 |
+
)
|
162 |
+
),
|
163 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Shape', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
164 |
+
'value' => array(
|
165 |
+
esc_html__( 'Circle', 'bold-builder' ) => 'circle',
|
166 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
167 |
+
esc_html__( 'Rounded Square', 'bold-builder' ) => 'round'
|
168 |
+
)
|
169 |
+
)
|
170 |
+
)
|
171 |
+
) );
|
172 |
+
}
|
173 |
+
}
|
content_elements/bt_bb_image/bt_bb_image.php
ADDED
@@ -0,0 +1,267 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_image extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'image' => '',
|
8 |
+
'size' => '',
|
9 |
+
'shape' => '',
|
10 |
+
'lazy_load' => 'no',
|
11 |
+
'image_height' => '',
|
12 |
+
'align' => '',
|
13 |
+
'caption' => '',
|
14 |
+
'url' => '',
|
15 |
+
'target' => '',
|
16 |
+
'hover_style' => '',
|
17 |
+
'content_display' => '',
|
18 |
+
'content_background_color' => '',
|
19 |
+
'content_background_opacity' => '',
|
20 |
+
'content_align' => ''
|
21 |
+
) ), $atts, $this->shortcode ) );
|
22 |
+
|
23 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
24 |
+
|
25 |
+
$class = array( $this->shortcode );
|
26 |
+
$data_override_class = array();
|
27 |
+
|
28 |
+
if ( $el_class != '' ) {
|
29 |
+
$class[] = $el_class;
|
30 |
+
}
|
31 |
+
|
32 |
+
if ( $hover_style == 'scroll' ) {
|
33 |
+
$el_id = 'bt_bb_random_id_' . rand();
|
34 |
+
}
|
35 |
+
|
36 |
+
$style_attr = '';
|
37 |
+
|
38 |
+
if ( $image_height != '' ) {
|
39 |
+
$el_style .= 'height:' . $image_height . '; overflow: hidden;';
|
40 |
+
}
|
41 |
+
|
42 |
+
if ( $el_style != '' ) {
|
43 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
44 |
+
}
|
45 |
+
|
46 |
+
$id_attr = '';
|
47 |
+
if ( $el_id != '' ) {
|
48 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
49 |
+
}
|
50 |
+
|
51 |
+
|
52 |
+
if ( $shape != '' ) {
|
53 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
54 |
+
}
|
55 |
+
|
56 |
+
$this->responsive_data_override_class(
|
57 |
+
$class, $data_override_class,
|
58 |
+
array(
|
59 |
+
'prefix' => $this->prefix,
|
60 |
+
'param' => 'align',
|
61 |
+
'value' => $align
|
62 |
+
)
|
63 |
+
);
|
64 |
+
|
65 |
+
if ( $hover_style != '' ) {
|
66 |
+
$class[] = $this->prefix . 'hover_style' . '_' . $hover_style;
|
67 |
+
}
|
68 |
+
|
69 |
+
if ( $content_display != '' ) {
|
70 |
+
$class[] = $this->prefix . 'content_display' . '_' . $content_display;
|
71 |
+
}
|
72 |
+
|
73 |
+
if ( $content_align != '' ) {
|
74 |
+
$class[] = $this->prefix . 'content_align' . '_' . $content_align;
|
75 |
+
}
|
76 |
+
|
77 |
+
$alt = $caption;
|
78 |
+
$title = $caption;
|
79 |
+
$full_image = $image;
|
80 |
+
$image_ = $image;
|
81 |
+
|
82 |
+
if ( $image != '' && is_numeric( $image ) ) {
|
83 |
+
$post_image = get_post( $image );
|
84 |
+
if ( $post_image == '' ) return;
|
85 |
+
|
86 |
+
if ( $alt == '' ) {
|
87 |
+
$alt = get_post_meta( $post_image->ID, '_wp_attachment_image_alt', true );
|
88 |
+
}
|
89 |
+
if ( $alt == '' ) {
|
90 |
+
$alt = $post_image->post_excerpt;
|
91 |
+
}
|
92 |
+
if ( $title == '' ) {
|
93 |
+
$title = $post_image->post_title;
|
94 |
+
}
|
95 |
+
|
96 |
+
$image_ = wp_get_attachment_image_src( $image, $size );
|
97 |
+
if ( $image_ ) {
|
98 |
+
$image_ = $image_[0];
|
99 |
+
}
|
100 |
+
if ( $alt == '' ) {
|
101 |
+
$alt = $image_;
|
102 |
+
}
|
103 |
+
|
104 |
+
if ( $size == 'full' ) {
|
105 |
+
$full_image = $image_;
|
106 |
+
} else {
|
107 |
+
$full_image = wp_get_attachment_image_src( $image, 'full' );
|
108 |
+
if ( $full_image ) {
|
109 |
+
$full_image = $full_image[0];
|
110 |
+
} else {
|
111 |
+
$full_image = '';
|
112 |
+
}
|
113 |
+
}
|
114 |
+
}
|
115 |
+
|
116 |
+
$content = do_shortcode( $content );
|
117 |
+
|
118 |
+
if ( $content != '' ) {
|
119 |
+
$class[] = $this->prefix . 'content_exists';
|
120 |
+
}
|
121 |
+
|
122 |
+
$output = '';
|
123 |
+
|
124 |
+
if ( $image != '' ) {
|
125 |
+
if ( is_numeric( $image ) ) {
|
126 |
+
$attr_arr = array();
|
127 |
+
$attr_arr['data-full_image_src'] = esc_url_raw( $full_image );
|
128 |
+
$attr_arr['alt'] = esc_attr( $alt );
|
129 |
+
if ( $title != '' ) {
|
130 |
+
$attr_arr['title'] = esc_attr( $title );
|
131 |
+
}
|
132 |
+
if ( $lazy_load != 'yes' ) {
|
133 |
+
$attr_arr['loading'] = false;
|
134 |
+
}
|
135 |
+
$output .= wp_get_attachment_image( $image, $size, false, $attr_arr );
|
136 |
+
} else {
|
137 |
+
if ( $lazy_load == 'yes' ) {
|
138 |
+
$output .= '<img src = "' . BT_BB_Root::$path . 'img/blank.gif" data-full_image_src="' . esc_url_raw( $full_image ) . '" data-image_src="' . esc_url_raw( $image_ ) . '"' . $title . ' alt="' . esc_attr( $alt ) . '" class="btLazyLoadImage" loading="lazy">';
|
139 |
+
} else {
|
140 |
+
$output .= '<img src="' . esc_url_raw( $image_ ) . '" data-full_image_src="' . esc_url_raw( $full_image ) . '" ' . $title . ' alt="' . esc_attr( $alt ) . '">';
|
141 |
+
}
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
if ( $url != '#lightbox' ) {
|
146 |
+
$link = bt_bb_get_url( $url );
|
147 |
+
} else {
|
148 |
+
$link = $url ;
|
149 |
+
$class[] = 'bt_bb_use_lightbox';
|
150 |
+
}
|
151 |
+
|
152 |
+
if ( ! empty( $link ) ) {
|
153 |
+
$output = '<a href="' . esc_url( $link ) . '" target="' . esc_attr( $target ) . '" title="' . $title . '">' . $output . '</a>';
|
154 |
+
} else {
|
155 |
+
$output = '<span>' . $output . '</span>';
|
156 |
+
}
|
157 |
+
|
158 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
159 |
+
|
160 |
+
$output = '<div' . $id_attr . ' class="' . esc_attr( implode( ' ', $class ) ) . '"' . $style_attr . ' data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">' . $output ;
|
161 |
+
if ( $content != '' ) {
|
162 |
+
$content_background_style = '';
|
163 |
+
if ( $content_background_color != '' ) {
|
164 |
+
if ( strpos( $content_background_color, '#' ) !== false ) {
|
165 |
+
$content_background_color = bt_bb_image::hex2rgb( $content_background_color );
|
166 |
+
if ( $content_background_opacity == '' ) {
|
167 |
+
$content_background_opacity = 1;
|
168 |
+
}
|
169 |
+
$content_background_style .= ' style="background-color: rgba(' . $content_background_color[0] . ', ' . $content_background_color[1] . ', ' . $content_background_color[2] . ', ' . $content_background_opacity . ');"';
|
170 |
+
} else {
|
171 |
+
$content_background_style .= 'style="background-color:' . $content_background_color . ';"';
|
172 |
+
}
|
173 |
+
}
|
174 |
+
$output .= '<div class="bt_bb_image_content"' . $content_background_style . '><div class="bt_bb_image_content_flex"><div class="bt_bb_image_content_inner">' . $content . '</div></div></div>';
|
175 |
+
}
|
176 |
+
$output .= '</div>';
|
177 |
+
|
178 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
179 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
180 |
+
|
181 |
+
return $output;
|
182 |
+
|
183 |
+
}
|
184 |
+
|
185 |
+
function map_shortcode() {
|
186 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Image', 'bold-builder' ), 'description' => esc_html__( 'Single image', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_button' => true, 'bt_bb_icon' => true, 'bt_bb_text' => true, 'bt_bb_headline' => true, 'bt_bb_separator' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
187 |
+
'params' => array(
|
188 |
+
array( 'param_name' => 'image', 'type' => 'attach_image', 'heading' => esc_html__( 'Image', 'bold-builder' ), 'preview' => true ),
|
189 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'preview' => true,
|
190 |
+
'value' => bt_bb_get_image_sizes()
|
191 |
+
),
|
192 |
+
array( 'param_name' => 'image_height', 'type' => 'textfield', 'heading' => esc_html__( 'Image height', 'bold-builder' )),
|
193 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Shape', 'bold-builder' ),
|
194 |
+
'value' => array(
|
195 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
196 |
+
esc_html__( 'Soft Rounded', 'bold-builder' ) => 'soft-rounded',
|
197 |
+
esc_html__( 'Hard Rounded', 'bold-builder' ) => 'hard-rounded'
|
198 |
+
)
|
199 |
+
),
|
200 |
+
array( 'param_name' => 'lazy_load', 'type' => 'dropdown', 'default' => 'yes', 'heading' => esc_html__( 'Lazy load this image', 'bold-builder' ),
|
201 |
+
'value' => array(
|
202 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
203 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
204 |
+
)
|
205 |
+
),
|
206 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Alignment', 'bold-builder' ), 'responsive_override' => true,
|
207 |
+
'value' => array(
|
208 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
209 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
210 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
211 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
212 |
+
)
|
213 |
+
),
|
214 |
+
array( 'param_name' => 'caption', 'type' => 'textfield', 'heading' => esc_html__( 'Caption', 'bold-builder' ) ),
|
215 |
+
array( 'param_name' => 'url', 'type' => 'link', 'heading' => esc_html__( 'URL', 'bold-builder' ), 'description' => esc_html__( 'Enter full or local URL (e.g. https://www.bold-themes.com or /pages/about-us), post slug (e.g. about-us), #lightbox to open current image in full size or search for existing content.', 'bold-builder' ), 'group' => esc_html__( 'URL', 'bold-builder' ) ),
|
216 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'heading' => esc_html__( 'Target', 'bold-builder' ), 'group' => esc_html__( 'URL', 'bold-builder' ),
|
217 |
+
'value' => array(
|
218 |
+
esc_html__( 'Self (open in same tab)', 'bold-builder' ) => '_self',
|
219 |
+
esc_html__( 'Blank (open in new tab)', 'bold-builder' ) => '_blank'
|
220 |
+
)
|
221 |
+
),
|
222 |
+
array( 'param_name' => 'hover_style', 'type' => 'dropdown', 'heading' => esc_html__( 'Mouse hover style', 'bold-builder' ), 'group' => esc_html__( 'URL', 'bold-builder' ),
|
223 |
+
'value' => array(
|
224 |
+
esc_html__( 'Simple', 'bold-builder' ) => 'simple',
|
225 |
+
esc_html__( 'Flip', 'bold-builder' ) => 'flip',
|
226 |
+
esc_html__( 'Zoom in', 'bold-builder' ) => 'zoom-in',
|
227 |
+
esc_html__( 'To grayscale', 'bold-builder' ) => 'to-grayscale',
|
228 |
+
esc_html__( 'From grayscale', 'bold-builder' ) => 'from-grayscale',
|
229 |
+
esc_html__( 'Zoom in to grayscale', 'bold-builder' ) => 'zoom-in-to-grayscale',
|
230 |
+
esc_html__( 'Zoom in from grayscale', 'bold-builder' ) => 'zoom-in-from-grayscale',
|
231 |
+
esc_html__( 'Scroll', 'bold-builder' ) => 'scroll'
|
232 |
+
)
|
233 |
+
),
|
234 |
+
array( 'param_name' => 'content_display', 'type' => 'dropdown', 'heading' => esc_html__( 'Show content', 'bold-builder' ), 'description' => esc_html__( 'Add selected elements and show them over the image', 'bold-builder' ), 'group' => esc_html__( 'Content', 'bold-builder' ),
|
235 |
+
'value' => array(
|
236 |
+
esc_html__( 'Always', 'bold-builder' ) => 'always',
|
237 |
+
esc_html__( 'Show on hover', 'bold-builder' ) => 'show-on-hover',
|
238 |
+
esc_html__( 'Hide on hover', 'bold-builder' ) => 'hide-on-hover'
|
239 |
+
)
|
240 |
+
),
|
241 |
+
array( 'param_name' => 'content_background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Content background color', 'bold-builder' ), 'group' => esc_html__( 'Content', 'bold-builder' ) ),
|
242 |
+
array( 'param_name' => 'content_background_opacity', 'type' => 'textfield', 'heading' => esc_html__( 'Content background opacity (deprecated)', 'bold-builder' ), 'group' => esc_html__( 'Content', 'bold-builder' ) ),
|
243 |
+
array( 'param_name' => 'content_align', 'type' => 'dropdown', 'heading' => esc_html__( 'Content alignment', 'bold-builder' ), 'group' => esc_html__( 'Content', 'bold-builder' ),
|
244 |
+
'value' => array(
|
245 |
+
esc_html__( 'Middle', 'bold-builder' ) => 'middle',
|
246 |
+
esc_html__( 'Top', 'bold-builder' ) => 'top',
|
247 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom'
|
248 |
+
)
|
249 |
+
)
|
250 |
+
)
|
251 |
+
) );
|
252 |
+
}
|
253 |
+
static function hex2rgb( $hex ) {
|
254 |
+
$hex = str_replace( '#', '', $hex );
|
255 |
+
if ( strlen( $hex ) == 3 ) {
|
256 |
+
$r = hexdec( substr( $hex, 0, 1 ) . substr( $hex, 0, 1 ) );
|
257 |
+
$g = hexdec( substr( $hex, 1, 1 ) . substr( $hex, 1, 1 ) );
|
258 |
+
$b = hexdec( substr( $hex, 2, 1 ) . substr( $hex, 2, 1 ) );
|
259 |
+
} else {
|
260 |
+
$r = hexdec( substr( $hex, 0, 2 ) );
|
261 |
+
$g = hexdec( substr( $hex, 2, 2 ) );
|
262 |
+
$b = hexdec( substr( $hex, 4, 2 ) );
|
263 |
+
}
|
264 |
+
$rgb = array( $r, $g, $b );
|
265 |
+
return $rgb;
|
266 |
+
}
|
267 |
+
}
|
content_elements/bt_bb_instagram/bt_bb_instagram.php
ADDED
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_instagram extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'username' => '',
|
8 |
+
'number' => '',
|
9 |
+
'target' => '',
|
10 |
+
'columns' => '',
|
11 |
+
'gap' => '',
|
12 |
+
'hashtag' => '',
|
13 |
+
'cache' => '',
|
14 |
+
) ), $atts, $this->shortcode ) );
|
15 |
+
|
16 |
+
$class = array( $this->shortcode );
|
17 |
+
|
18 |
+
if ( $el_class != '' ) {
|
19 |
+
$class[] = $el_class;
|
20 |
+
}
|
21 |
+
|
22 |
+
if ( $columns != '' ) {
|
23 |
+
$class[] = $this->prefix . 'columns' . '_' . $columns;
|
24 |
+
}
|
25 |
+
|
26 |
+
if ( $gap != '' ) {
|
27 |
+
$class[] = $this->prefix . 'gap' . '_' . $gap;
|
28 |
+
}
|
29 |
+
|
30 |
+
$id_attr = '';
|
31 |
+
if ( $el_id != '' ) {
|
32 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
33 |
+
}
|
34 |
+
|
35 |
+
$style_attr = '';
|
36 |
+
if ( $el_style != '' ) {
|
37 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
38 |
+
}
|
39 |
+
|
40 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
41 |
+
|
42 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>';
|
43 |
+
ob_start();
|
44 |
+
the_widget( 'BB_Instagram', array( 'username' => $username, 'number' => $number, 'target' => $target, 'hashtag' => $hashtag, 'cache' => $cache ) );
|
45 |
+
$output .= ob_get_contents();
|
46 |
+
ob_end_clean();
|
47 |
+
$output .= '</div>';
|
48 |
+
|
49 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
50 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
51 |
+
|
52 |
+
return $output;
|
53 |
+
|
54 |
+
}
|
55 |
+
|
56 |
+
function map_shortcode() {
|
57 |
+
|
58 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Instagram (deprecated)', 'bold-builder' ), 'description' => esc_html__( 'Recent Instagram images', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
59 |
+
'params' => array(
|
60 |
+
array( 'param_name' => 'username', 'type' => 'textfield', 'heading' => esc_html__( 'Instagram username', 'bold-builder' ), 'preview' => true ),
|
61 |
+
array( 'param_name' => 'number', 'type' => 'textfield', 'heading' => esc_html__( 'Number of images', 'bold-builder' ), 'preview' => true, 'value' => '8' ),
|
62 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'default' => '_self', 'heading' => esc_html__( 'Target', 'bold-builder' ),
|
63 |
+
'value' => array(
|
64 |
+
esc_html__( 'Self', 'bold-builder' ) => '_self',
|
65 |
+
esc_html__( 'Blank', 'bold-builder' ) => '_blank'
|
66 |
+
)
|
67 |
+
),
|
68 |
+
array( 'param_name' => 'columns', 'type' => 'dropdown', 'heading' => esc_html__( 'Columns', 'bold-builder' ), 'preview' => true,
|
69 |
+
'value' => array(
|
70 |
+
esc_html__( '1', 'bold-builder' ) => '1',
|
71 |
+
esc_html__( '2', 'bold-builder' ) => '2',
|
72 |
+
esc_html__( '3', 'bold-builder' ) => '3',
|
73 |
+
esc_html__( '4', 'bold-builder' ) => '4',
|
74 |
+
esc_html__( '5', 'bold-builder' ) => '5',
|
75 |
+
esc_html__( '6', 'bold-builder' ) => '6'
|
76 |
+
)
|
77 |
+
),
|
78 |
+
array( 'param_name' => 'gap', 'type' => 'dropdown', 'default' => 'small', 'heading' => esc_html__( 'Gap', 'bold-builder' ),
|
79 |
+
'value' => array(
|
80 |
+
esc_html__( 'No gap', 'bold-builder' ) => 'no_gap',
|
81 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extrasmall',
|
82 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
83 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
84 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
85 |
+
)
|
86 |
+
),
|
87 |
+
array( 'param_name' => 'hashtag', 'type' => 'textfield', 'heading' => esc_html__( 'Hashtag', 'bold-builder' ) ),
|
88 |
+
array( 'param_name' => 'cache', 'type' => 'textfield', 'heading' => esc_html__( 'Cache (minutes)', 'bold-builder' ), 'value' => '15', 'default' => '15' ),
|
89 |
+
) )
|
90 |
+
);
|
91 |
+
}
|
92 |
+
}
|
content_elements/bt_bb_latest_posts/bt_bb_latest_posts.php
ADDED
@@ -0,0 +1,194 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_latest_posts extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'rows' => '',
|
8 |
+
'columns' => '',
|
9 |
+
'gap' => '',
|
10 |
+
'category' => '',
|
11 |
+
'target' => '',
|
12 |
+
'image_shape' => '',
|
13 |
+
'show_category' => '',
|
14 |
+
'show_date' => '',
|
15 |
+
'show_author' => '',
|
16 |
+
'show_comments' => '',
|
17 |
+
'show_excerpt' => '',
|
18 |
+
'lazy_load' => 'no'
|
19 |
+
) ), $atts, $this->shortcode ) );
|
20 |
+
|
21 |
+
$class = array( $this->shortcode );
|
22 |
+
|
23 |
+
if ( $el_class != '' ) {
|
24 |
+
$class[] = $el_class;
|
25 |
+
}
|
26 |
+
|
27 |
+
$id_attr = '';
|
28 |
+
if ( $el_id != '' ) {
|
29 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
30 |
+
}
|
31 |
+
|
32 |
+
$style_attr = '';
|
33 |
+
if ( $el_style != '' ) {
|
34 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
35 |
+
}
|
36 |
+
|
37 |
+
if ( $columns != '' ) {
|
38 |
+
$class[] = $this->prefix . 'columns' . '_' . $columns;
|
39 |
+
}
|
40 |
+
|
41 |
+
if ( $gap != '' ) {
|
42 |
+
$class[] = $this->prefix . 'gap' . '_' . $gap;
|
43 |
+
}
|
44 |
+
|
45 |
+
if ( $image_shape != '' ) {
|
46 |
+
$class[] = $this->prefix . 'image_shape' . '_' . $image_shape;
|
47 |
+
}
|
48 |
+
|
49 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
50 |
+
|
51 |
+
$number = $rows * $columns;
|
52 |
+
|
53 |
+
$posts = bt_bb_get_posts( $number, 0, $category );
|
54 |
+
|
55 |
+
$output = '';
|
56 |
+
|
57 |
+
foreach( $posts as $post_item ) {
|
58 |
+
|
59 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_item">';
|
60 |
+
$post_thumbnail_id = get_post_thumbnail_id( $post_item['ID'] );
|
61 |
+
|
62 |
+
if ( $post_thumbnail_id != '' ) {
|
63 |
+
$img = wp_get_attachment_image_src( $post_thumbnail_id, $size = 'medium' );
|
64 |
+
$img_src = BT_BB_Root::$path . 'img/blank.gif';
|
65 |
+
$data_img = '';
|
66 |
+
if ( $lazy_load == 'yes' ) {
|
67 |
+
$img_class = 'btLazyLoadImage';
|
68 |
+
if ( $img ) {
|
69 |
+
$data_img = ' data-image_src="' . esc_attr( $img[0] ) . '"';
|
70 |
+
}
|
71 |
+
} else {
|
72 |
+
if ( $img ) {
|
73 |
+
$img_src = $img[0];
|
74 |
+
}
|
75 |
+
$img_class = '';
|
76 |
+
}
|
77 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_item_image"><a href="' . esc_url_raw( $post_item['permalink'] ) . '" target="' . esc_attr( $target ) . '"><img src="' . esc_url_raw( $img_src ) . '" alt="' . esc_attr( $post_item['title'] ) . '" title="' . esc_attr( $post_item['title'] ) . '" class="' . $img_class . '" ' . $data_img . '"></a></div>';
|
78 |
+
}
|
79 |
+
|
80 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_item_content">';
|
81 |
+
|
82 |
+
if ( $show_category == 'show_category' ) {
|
83 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_item_category">';
|
84 |
+
$output .= $post_item['category_list'];
|
85 |
+
$output .= '</div>';
|
86 |
+
}
|
87 |
+
|
88 |
+
if ( $show_date == 'show_date' || $show_author == 'show_author' || $show_author == 'show_comments' ) {
|
89 |
+
|
90 |
+
$meta_output = '<div class="' . esc_attr( $this->shortcode ) . '_item_meta">';
|
91 |
+
|
92 |
+
if ( $show_date == 'show_date' ) {
|
93 |
+
$meta_output .= '<span class="' . esc_attr( $this->shortcode ) . '_item_date">';
|
94 |
+
$meta_output .= get_the_date( '', $post_item['ID'] );
|
95 |
+
$meta_output .= '</span>';
|
96 |
+
}
|
97 |
+
|
98 |
+
if ( $show_author == 'show_author' ) {
|
99 |
+
$meta_output .= '<span class="' . esc_attr( $this->shortcode ) . '_item_author">';
|
100 |
+
$meta_output .= esc_html__( 'by', 'bold-builder' ) . ' ' . $post_item['author'];
|
101 |
+
$meta_output .= '</span>';
|
102 |
+
}
|
103 |
+
|
104 |
+
if ( $show_comments == 'show_comments' && $post_item['comments'] != '' ) {
|
105 |
+
$meta_output .= '<span class="' . esc_attr( $this->shortcode ) . '_item_comments">';
|
106 |
+
$meta_output .= $post_item['comments'];
|
107 |
+
$meta_output .= '</span>';
|
108 |
+
}
|
109 |
+
|
110 |
+
$meta_output .= '</div>';
|
111 |
+
|
112 |
+
$output .= $meta_output;
|
113 |
+
|
114 |
+
}
|
115 |
+
|
116 |
+
$output .= '<h5 class="' . esc_attr( $this->shortcode ) . '_item_title">';
|
117 |
+
$output .= '<a href="' . esc_url_raw( $post_item['permalink'] ) . '" target="' . esc_attr( $target ) . '">' . $post_item['title'] . '</a>';
|
118 |
+
$output .= '</h5>';
|
119 |
+
|
120 |
+
if ( $show_excerpt == 'show_excerpt' ) {
|
121 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_item_excerpt">';
|
122 |
+
$output .= $post_item['excerpt'];
|
123 |
+
$output .= '</div>';
|
124 |
+
}
|
125 |
+
$output .= '</div>';
|
126 |
+
|
127 |
+
$output .= '</div>';
|
128 |
+
}
|
129 |
+
|
130 |
+
$output = '<div' . $id_attr . ' class="' . esc_attr( implode( ' ', $class ) ) . '"' . $style_attr . '>' . $output . '</div>';
|
131 |
+
|
132 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
133 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
134 |
+
|
135 |
+
return $output;
|
136 |
+
|
137 |
+
}
|
138 |
+
|
139 |
+
function map_shortcode() {
|
140 |
+
|
141 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Latest Posts', 'bold-builder' ), 'description' => esc_html__( 'List of latest posts', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
142 |
+
'params' => array(
|
143 |
+
array( 'param_name' => 'rows', 'type' => 'textfield', 'value' => '1', 'heading' => esc_html__( 'Rows', 'bold-builder' ), 'preview' => true ),
|
144 |
+
array( 'param_name' => 'columns', 'type' => 'dropdown', 'value' => '3', 'heading' => esc_html__( 'Columns', 'bold-builder' ), 'preview' => true,
|
145 |
+
'value' => array(
|
146 |
+
esc_html__( '1', 'bold-builder' ) => '1',
|
147 |
+
esc_html__( '2', 'bold-builder' ) => '2',
|
148 |
+
esc_html__( '3', 'bold-builder' ) => '3',
|
149 |
+
esc_html__( '4', 'bold-builder' ) => '4',
|
150 |
+
esc_html__( '6', 'bold-builder' ) => '6'
|
151 |
+
)
|
152 |
+
),
|
153 |
+
array( 'param_name' => 'gap', 'type' => 'dropdown', 'heading' => esc_html__( 'Gap', 'bold-builder' ), 'preview' => true,
|
154 |
+
'value' => array(
|
155 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
156 |
+
esc_html__( 'No gap', 'bold-builder' ) => 'no_gap',
|
157 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
158 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
159 |
+
)
|
160 |
+
),
|
161 |
+
array( 'param_name' => 'category', 'type' => 'textfield', 'heading' => esc_html__( 'Category', 'bold-builder' ), 'description' => esc_html__( 'Enter category slug or leave empty to show all', 'bold-builder' ), 'preview' => true ),
|
162 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'heading' => esc_html__( 'Target', 'bold-builder' ),
|
163 |
+
'value' => array(
|
164 |
+
esc_html__( 'Self (open in same tab)', 'bold-builder' ) => '_self',
|
165 |
+
esc_html__( 'Blank (open in new tab)', 'bold-builder' ) => '_blank',
|
166 |
+
)
|
167 |
+
),
|
168 |
+
array( 'param_name' => 'image_shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Image shape', 'bold-builder' ),
|
169 |
+
'value' => array(
|
170 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
171 |
+
esc_html__( 'Rounded', 'bold-builder' ) => 'rounded',
|
172 |
+
esc_html__( 'Round', 'bold-builder' ) => 'round'
|
173 |
+
)
|
174 |
+
),
|
175 |
+
array( 'param_name' => 'show_category', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_category' ), 'heading' => esc_html__( 'Show category', 'bold-builder' ), 'preview' => true
|
176 |
+
),
|
177 |
+
array( 'param_name' => 'show_date', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_date' ), 'heading' => esc_html__( 'Show date', 'bold-builder' ), 'preview' => true
|
178 |
+
),
|
179 |
+
array( 'param_name' => 'show_author', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_author' ), 'heading' => esc_html__( 'Show author', 'bold-builder' ), 'preview' => true
|
180 |
+
),
|
181 |
+
array( 'param_name' => 'show_comments', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_comments' ), 'heading' => esc_html__( 'Show number of comments', 'bold-builder' ), 'preview' => true
|
182 |
+
),
|
183 |
+
array( 'param_name' => 'show_excerpt', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_excerpt' ), 'heading' => esc_html__( 'Show excerpt', 'bold-builder' ), 'preview' => true
|
184 |
+
),
|
185 |
+
array( 'param_name' => 'lazy_load', 'type' => 'dropdown', 'default' => 'yes', 'heading' => esc_html__( 'Lazy load images', 'bold-builder' ),
|
186 |
+
'value' => array(
|
187 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
188 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
189 |
+
)
|
190 |
+
)
|
191 |
+
)
|
192 |
+
) );
|
193 |
+
}
|
194 |
+
}
|
content_elements/bt_bb_leaflet_map/bt_bb_leaflet_map.php
ADDED
@@ -0,0 +1,138 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_leaflet_map extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'zoom' => '9',
|
8 |
+
'max_zoom' => '15',
|
9 |
+
'height' => '',
|
10 |
+
'center_map' => '',
|
11 |
+
'predefined_style' => '1',
|
12 |
+
'custom_style' => '',
|
13 |
+
'scroll_wheel' => '',
|
14 |
+
'zoom_control' => ''
|
15 |
+
) ), $atts, $this->shortcode ) );
|
16 |
+
|
17 |
+
$zoom = $zoom == '' ? '9' : $zoom;
|
18 |
+
$max_zoom = $max_zoom == '' ? '15' : $max_zoom;
|
19 |
+
|
20 |
+
$max_zoom = $max_zoom > $zoom ? $max_zoom : $zoom;
|
21 |
+
$scroll_wheel = ( $scroll_wheel == 'scroll_wheel' || $scroll_wheel == 'yes' ) ? 1 : 0;
|
22 |
+
$zoom_control = ( $zoom_control == 'zoom_control' || $zoom_control == 'yes' ) ? 1 : 0;
|
23 |
+
|
24 |
+
// enqueue leaflet framework js and css
|
25 |
+
$leaflet_framework_path = plugin_dir_url( __FILE__ ) . '/';
|
26 |
+
require_once( 'enqueue_lib.php' );
|
27 |
+
// wp_enqueue_script( 'bt_bb_leaflet_map_js', plugin_dir_url( __FILE__ ) . '/bt_bb_leaflet_map.js' );
|
28 |
+
|
29 |
+
$class_master = 'bt_bb_map';
|
30 |
+
|
31 |
+
$class = array( $this->shortcode, $class_master );
|
32 |
+
|
33 |
+
if ( $el_class != '' ) {
|
34 |
+
$class[] = $el_class;
|
35 |
+
}
|
36 |
+
|
37 |
+
if ( $center_map == 'yes_no_overlay' ) {
|
38 |
+
$class[] = $this->shortcode . '_no_overlay';
|
39 |
+
$class[] = $class_master . '_no_overlay';
|
40 |
+
}
|
41 |
+
|
42 |
+
$id_attr = '';
|
43 |
+
if ( $el_id != '' ) {
|
44 |
+
$id_attr = ' ' . 'id="' . esc_attr($el_id) . '"';
|
45 |
+
}
|
46 |
+
|
47 |
+
$style_attr = '';
|
48 |
+
if ( $el_style != '' ) {
|
49 |
+
$style_attr = ' ' . 'style="' . esc_attr($el_style) . '"';
|
50 |
+
}
|
51 |
+
|
52 |
+
$style_height = '';
|
53 |
+
if ( $height != '' ) {
|
54 |
+
$style_height = ' ' . 'style="height:' . $height . '"';
|
55 |
+
}
|
56 |
+
|
57 |
+
$map_id = uniqid( 'map_canvas' );
|
58 |
+
$content_html = wptexturize( do_shortcode( $content ) );
|
59 |
+
$locations = substr_count( $content_html, '"bt_bb_leaflet_map_location' );
|
60 |
+
$locations_without_content = substr_count( $content_html, 'bt_bb_leaflet_map_location_without_content' );
|
61 |
+
|
62 |
+
if ( $content != '' && $locations != $locations_without_content ) {
|
63 |
+
$content = '<span class="' . esc_attr( $this->shortcode ) . '_content_toggler ' . esc_attr( $class_master ) . '_content_toggler"></span>';
|
64 |
+
$content .= '<div class="' . esc_attr( $this->shortcode ) . '_content ' . esc_attr($class_master) . '_content">';
|
65 |
+
$content .= '<div class="' . esc_attr( $this->shortcode ) . '_content_wrapper ' . esc_attr( $class_master ) . '_content_wrapper">' ;
|
66 |
+
$content .= $content_html ;
|
67 |
+
$content .= '</div>';
|
68 |
+
$content .= '</div>';
|
69 |
+
$class[] = $this->shortcode . '_with_content';
|
70 |
+
$class[] = $class_master . '_with_content';
|
71 |
+
$style_height = '';
|
72 |
+
} else {
|
73 |
+
$content = $content_html;
|
74 |
+
}
|
75 |
+
|
76 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
77 |
+
|
78 |
+
$output = '<div class="' . esc_attr($this->shortcode) . '_map ' . esc_attr( $class_master ) . '_map" id="' . esc_attr( $map_id ) . '"' . $style_height . '></div>';
|
79 |
+
$output .= $content;
|
80 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-center="' . esc_attr( $center_map ) . '">' . $output . '</div>';
|
81 |
+
|
82 |
+
$output_script = 'var bt_bb_leaflet_' . $map_id . '_init_finished = false; ';
|
83 |
+
$output_script .= ' document.addEventListener("readystatechange", function() { ';
|
84 |
+
$output_script .= ' if ( !bt_bb_leaflet_' . $map_id . '_init_finished && ( document.readyState === "interactive" || document.readyState === "complete" ) ) { ';
|
85 |
+
$output_script .= ' if ( typeof( bt_bb_leaflet_init ) !== typeof(Function) ) { return false; } ';
|
86 |
+
$output_script .= ' bt_bb_leaflet_init( "' . $map_id . '", ' . $zoom . ', ' . $max_zoom . ', ' . $predefined_style . ', "' . $custom_style . '", ' . $scroll_wheel . ', ' . $zoom_control . ' );';
|
87 |
+
$output_script .= ' bt_bb_leaflet_' . $map_id . '_init_finished = true; ';
|
88 |
+
$output_script .= '};';
|
89 |
+
$output_script .= '}, false);';
|
90 |
+
|
91 |
+
wp_register_script( 'boldthemes-script-bt-bb-leaflet-maps-js-init', '' );
|
92 |
+
wp_enqueue_script( 'boldthemes-script-bt-bb-leaflet-maps-js-init' );
|
93 |
+
wp_add_inline_script( 'boldthemes-script-bt-bb-leaflet-maps-js-init', $output_script );
|
94 |
+
|
95 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
96 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
97 |
+
|
98 |
+
return $output;
|
99 |
+
|
100 |
+
}
|
101 |
+
|
102 |
+
function map_shortcode() {
|
103 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'OpenStreetMap', 'boldthemes_framework_textdomain' ), 'description' => esc_html__( 'OpenStreetMap with custom content', 'boldthemes_framework_textdomain' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_openmap_location' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
104 |
+
'params' => array(
|
105 |
+
array( 'param_name' => 'zoom', 'type' => 'textfield', 'heading' => esc_html__( 'Zoom (e.g. 9)', 'boldthemes_framework_textdomain' ), 'default' => '9', 'preview' => true ),
|
106 |
+
array( 'param_name' => 'max_zoom', 'type' => 'textfield', 'heading' => esc_html__( 'Max Zoom (e.g. 15)', 'boldthemes_framework_textdomain' ), 'default' => '15', 'preview' => true ),
|
107 |
+
array( 'param_name' => 'height', 'type' => 'textfield', 'heading' => esc_html__( 'Height (e.g. 250px)', 'boldthemes_framework_textdomain' ), 'description' => esc_html__( 'Used when there is no content', 'boldthemes_framework_textdomain' ) ),
|
108 |
+
array( 'param_name' => 'predefined_style', 'type' => 'dropdown', 'default' => '1', 'heading' => esc_html__( 'Predefined (base) map layer', 'boldthemes_framework_textdomain' ), 'preview' => true,
|
109 |
+
'value' => array(
|
110 |
+
__( 'No base layer (use only additional map layers)', 'boldthemes_framework_textdomain' ) => '0',
|
111 |
+
__( 'Mapnik OSM', 'boldthemes_framework_textdomain' ) => '1',
|
112 |
+
//__( 'Wikimedia', 'boldthemes_framework_textdomain' ) => '2',
|
113 |
+
__( 'OSM Hot', 'boldthemes_framework_textdomain' ) => '3',
|
114 |
+
__( 'Stamen Watercolor', 'boldthemes_framework_textdomain' ) => '4',
|
115 |
+
__( 'Stamen Terrain', 'boldthemes_framework_textdomain' ) => '5',
|
116 |
+
__( 'Stamen Toner', 'boldthemes_framework_textdomain' ) => '6',
|
117 |
+
__( 'Carto Dark', 'boldthemes_framework_textdomain' ) => '7',
|
118 |
+
__( 'Carto Light', 'boldthemes_framework_textdomain' ) => '8'
|
119 |
+
)
|
120 |
+
),
|
121 |
+
array( 'param_name' => 'custom_style', 'type' => 'textarea_object', 'heading' => esc_html__( 'Additional map layers', 'boldthemes_framework_textdomain' ), 'description' => esc_html__( 'Map tiles url. Ex. https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png, Attribution text separated by new line', 'boldthemes_framework_textdomain' ) ),
|
122 |
+
array( 'param_name' => 'center_map', 'type' => 'dropdown', 'heading' => esc_html__( 'Center map', 'boldthemes_framework_textdomain' ),
|
123 |
+
'value' => array(
|
124 |
+
__( 'No (use first location as center)', 'boldthemes_framework_textdomain' ) => 'no',
|
125 |
+
__( 'Yes', 'boldthemes_framework_textdomain' ) => 'yes',
|
126 |
+
__( 'Yes (without overlay initially)', 'boldthemes_framework_textdomain' ) => 'yes_no_overlay'
|
127 |
+
)
|
128 |
+
),
|
129 |
+
array( 'param_name' => 'scroll_wheel', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'boldthemes_framework_textdomain' ) => 'yes' ), 'default' => 'yes', 'heading' => esc_html__( 'Enable Scroll Wheel Zoom on Map', 'boldthemes_framework_textdomain' ), 'preview' => true
|
130 |
+
),
|
131 |
+
array( 'param_name' => 'zoom_control', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'boldthemes_framework_textdomain' ) => 'yes' ), 'default' => 'yes', 'heading' => esc_html__( 'Enable Zoom Control on Map', 'boldthemes_framework_textdomain' ), 'preview' => true
|
132 |
+
),
|
133 |
+
|
134 |
+
)
|
135 |
+
) );
|
136 |
+
}
|
137 |
+
}
|
138 |
+
|
content_elements/bt_bb_leaflet_map/enqueue_lib.php
ADDED
@@ -0,0 +1,21 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/* leaflet_map bb framework */
|
3 |
+
|
4 |
+
bt_bb_include_scripts_leaflet();
|
5 |
+
|
6 |
+
function bt_bb_include_scripts_leaflet() {
|
7 |
+
|
8 |
+
/* js */
|
9 |
+
wp_enqueue_script( 'bt_bb_framework-leaflet-js', plugin_dir_url( __FILE__ ) . 'leafletmap/lib/leaflet.js', array(), BT_BB_VERSION );
|
10 |
+
wp_enqueue_script( 'bt_bb_framework-leaflet-markercluster-js', plugin_dir_url( __FILE__ ) . 'leafletmap/lib/leaflet.markercluster.js', array(), BT_BB_VERSION );
|
11 |
+
wp_enqueue_script( 'bt_bb_framework-leaflet-ajax-min-js', plugin_dir_url( __FILE__ ) . 'leafletmap/lib/leaflet.ajax.min.js', array(), BT_BB_VERSION );
|
12 |
+
|
13 |
+
/* css */
|
14 |
+
wp_enqueue_style( 'bt_bb_framework-lefflet-css', plugin_dir_url( __FILE__ ) . 'leafletmap/lib/leaflet.css', array(), BT_BB_VERSION, 'screen' );
|
15 |
+
wp_enqueue_style( 'bt_bb_framework-markercluster-css', plugin_dir_url( __FILE__ ) . 'leafletmap/lib/MarkerCluster.css', array(), BT_BB_VERSION, 'screen' );
|
16 |
+
wp_enqueue_style( 'bt_bb_framework-markerclustee-default-css', plugin_dir_url( __FILE__ ) . 'leafletmap/lib/MarkerCluster.Default.css', array(), BT_BB_VERSION, 'screen' );
|
17 |
+
|
18 |
+
/* map source */
|
19 |
+
wp_enqueue_script( 'bt_bb_leafletmap-source-js', plugin_dir_url( __FILE__ ) . 'leafletmap/js/leafletmap-source.js', array(), BT_BB_VERSION );
|
20 |
+
|
21 |
+
}
|
content_elements/bt_bb_leaflet_map/leafletmap/css/leaflet.css
ADDED
@@ -0,0 +1,65 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.bt_bb_leaflet_map.bt_bb_leaflet_map_with_content .bt_bb_leaflet_map_map {
|
2 |
+
height: 100% !important;
|
3 |
+
position: absolute;
|
4 |
+
left: 0;
|
5 |
+
right: 0;
|
6 |
+
top: 0;
|
7 |
+
bottom: 0;
|
8 |
+
width: 100% !important;
|
9 |
+
}
|
10 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content {
|
11 |
+
position: relative;
|
12 |
+
display: none;
|
13 |
+
pointer-events: none;
|
14 |
+
}
|
15 |
+
.bt_bb_leaflet_map_with_content.bt_bb_leaflet_map .bt_bb_leaflet_map_content {
|
16 |
+
display: block;
|
17 |
+
}
|
18 |
+
.bt_bb_leaflet_map_no_overlay.bt_bb_leaflet_map .bt_bb_leaflet_map_content,
|
19 |
+
.bt_bb_leaflet_map_no_overlay.bt_bb_leaflet_map_with_content.bt_bb_leaflet_map .bt_bb_leaflet_map_content {
|
20 |
+
opacity: 0;
|
21 |
+
}
|
22 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content .bt_bb_leaflet_map_content_wrapper {
|
23 |
+
display: flex;
|
24 |
+
overflow: hidden;
|
25 |
+
margin: 1em;
|
26 |
+
width: 30%;
|
27 |
+
}
|
28 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content .bt_bb_leaflet_map_content_wrapper .bt_bb_leaflet_map_location {
|
29 |
+
background: white;
|
30 |
+
padding: 1em;
|
31 |
+
opacity: 0;
|
32 |
+
flex: 0 0 100%;
|
33 |
+
transition: opacity 300ms ease;
|
34 |
+
order: 1;
|
35 |
+
pointer-events: none;
|
36 |
+
}
|
37 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content .bt_bb_leaflet_map_content_wrapper .bt_bb_leaflet_map_location.bt_bb_leaflet_map_location_without_content {
|
38 |
+
visibility: hidden;
|
39 |
+
}
|
40 |
+
|
41 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content .bt_bb_leaflet_map_content_wrapper .bt_bb_leaflet_map_location.bt_bb_leaflet_map_location_show {
|
42 |
+
opacity: 1;
|
43 |
+
order: 0;
|
44 |
+
pointer-events: all;
|
45 |
+
}
|
46 |
+
|
47 |
+
@media (max-width: 768px) {
|
48 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content .bt_bb_leaflet_map_content_wrapper {
|
49 |
+
width: 50%;
|
50 |
+
}
|
51 |
+
}
|
52 |
+
|
53 |
+
@media (max-width: 640px) {
|
54 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_with_content .bt_bb_leaflet_map_map {
|
55 |
+
height: 250px !important;
|
56 |
+
position: relative;
|
57 |
+
}
|
58 |
+
.bt_bb_leaflet_map .bt_bb_leaflet_map_content .bt_bb_leaflet_map_content_wrapper {
|
59 |
+
width: 100%;
|
60 |
+
margin: 0;
|
61 |
+
}
|
62 |
+
}
|
63 |
+
|
64 |
+
|
65 |
+
|
content_elements/bt_bb_leaflet_map/leafletmap/img/pin24.png
ADDED
Binary file
|
content_elements/bt_bb_leaflet_map/leafletmap/img/pin48.png
ADDED
Binary file
|
content_elements/bt_bb_leaflet_map/leafletmap/js/leafletmap-source.js
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
var map_leaflet_source_arr = [
|
2 |
+
[
|
3 |
+
'No map'
|
4 |
+
],
|
5 |
+
[
|
6 |
+
['https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', 'Attribution text']
|
7 |
+
],
|
8 |
+
[
|
9 |
+
['https://maps.wikimedia.org/osm-intl/{z}/{x}/{y}.png', 'Attribution text']
|
10 |
+
],
|
11 |
+
[
|
12 |
+
['https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png', 'Attribution text']
|
13 |
+
],
|
14 |
+
[
|
15 |
+
['https://stamen-tiles.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.jpg', 'Attribution text']
|
16 |
+
],
|
17 |
+
[
|
18 |
+
['https://stamen-tiles.a.ssl.fastly.net/terrain/{z}/{x}/{y}.jpg', 'Attribution text']
|
19 |
+
],
|
20 |
+
[
|
21 |
+
['https://stamen-tiles.a.ssl.fastly.net/toner/{z}/{x}/{y}.png', 'Attribution text']
|
22 |
+
],
|
23 |
+
[
|
24 |
+
['https://cartodb-basemaps-a.global.ssl.fastly.net/dark_all/{z}/{x}/{y}.png', 'Attribution text']
|
25 |
+
],
|
26 |
+
[
|
27 |
+
['https://cartodb-basemaps-a.global.ssl.fastly.net/light_all/{z}/{x}/{y}.png', 'Attribution text']
|
28 |
+
]
|
29 |
+
]
|
content_elements/bt_bb_leaflet_map/leafletmap/lib/MarkerCluster.Default.css
ADDED
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.marker-cluster-small {
|
2 |
+
background-color: rgba(181, 226, 140, 0.6);
|
3 |
+
}
|
4 |
+
.marker-cluster-small div {
|
5 |
+
background-color: rgba(110, 204, 57, 0.6);
|
6 |
+
}
|
7 |
+
|
8 |
+
.marker-cluster-medium {
|
9 |
+
background-color: rgba(241, 211, 87, 0.6);
|
10 |
+
}
|
11 |
+
.marker-cluster-medium div {
|
12 |
+
background-color: rgba(240, 194, 12, 0.6);
|
13 |
+
}
|
14 |
+
|
15 |
+
.marker-cluster-large {
|
16 |
+
background-color: rgba(253, 156, 115, 0.6);
|
17 |
+
}
|
18 |
+
.marker-cluster-large div {
|
19 |
+
background-color: rgba(241, 128, 23, 0.6);
|
20 |
+
}
|
21 |
+
|
22 |
+
/* IE 6-8 fallback colors */
|
23 |
+
.leaflet-oldie .marker-cluster-small {
|
24 |
+
background-color: rgb(181, 226, 140);
|
25 |
+
}
|
26 |
+
.leaflet-oldie .marker-cluster-small div {
|
27 |
+
background-color: rgb(110, 204, 57);
|
28 |
+
}
|
29 |
+
|
30 |
+
.leaflet-oldie .marker-cluster-medium {
|
31 |
+
background-color: rgb(241, 211, 87);
|
32 |
+
}
|
33 |
+
.leaflet-oldie .marker-cluster-medium div {
|
34 |
+
background-color: rgb(240, 194, 12);
|
35 |
+
}
|
36 |
+
|
37 |
+
.leaflet-oldie .marker-cluster-large {
|
38 |
+
background-color: rgb(253, 156, 115);
|
39 |
+
}
|
40 |
+
.leaflet-oldie .marker-cluster-large div {
|
41 |
+
background-color: rgb(241, 128, 23);
|
42 |
+
}
|
43 |
+
|
44 |
+
.marker-cluster {
|
45 |
+
background-clip: padding-box;
|
46 |
+
border-radius: 20px;
|
47 |
+
}
|
48 |
+
.marker-cluster div {
|
49 |
+
width: 30px;
|
50 |
+
height: 30px;
|
51 |
+
margin-left: 5px;
|
52 |
+
margin-top: 5px;
|
53 |
+
|
54 |
+
text-align: center;
|
55 |
+
border-radius: 15px;
|
56 |
+
font: 12px "Helvetica Neue", Arial, Helvetica, sans-serif;
|
57 |
+
}
|
58 |
+
.marker-cluster span {
|
59 |
+
line-height: 30px;
|
60 |
+
}
|
content_elements/bt_bb_leaflet_map/leafletmap/lib/MarkerCluster.css
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.leaflet-cluster-anim .leaflet-marker-icon, .leaflet-cluster-anim .leaflet-marker-shadow {
|
2 |
+
-webkit-transition: -webkit-transform 0.3s ease-out, opacity 0.3s ease-in;
|
3 |
+
-moz-transition: -moz-transform 0.3s ease-out, opacity 0.3s ease-in;
|
4 |
+
-o-transition: -o-transform 0.3s ease-out, opacity 0.3s ease-in;
|
5 |
+
transition: transform 0.3s ease-out, opacity 0.3s ease-in;
|
6 |
+
}
|
7 |
+
|
8 |
+
|
9 |
+
.leaflet-cluster-spider-leg {
|
10 |
+
/* stroke-dashoffset (duration and function) should match with leaflet-marker-icon transform in order to track it exactly */
|
11 |
+
-webkit-transition: -webkit-stroke-dashoffset 0.3s ease-out, -webkit-stroke-opacity 0.3s ease-in;
|
12 |
+
-moz-transition: -moz-stroke-dashoffset 0.3s ease-out, -moz-stroke-opacity 0.3s ease-in;
|
13 |
+
-o-transition: -o-stroke-dashoffset 0.3s ease-out, -o-stroke-opacity 0.3s ease-in;
|
14 |
+
transition: stroke-dashoffset 0.3s ease-out, stroke-opacity 0.3s ease-in;
|
15 |
+
}
|
content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.ajax.min.js
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
!function e(t,n,r){function a(i,s){if(!n[i]){if(!t[i]){var l="function"==typeof require&&require;if(!s&&l)return l(i,!0);if(o)return o(i,!0);var u=new Error("Cannot find module '"+i+"'");throw u.code="MODULE_NOT_FOUND",u}var c=n[i]={exports:{}};t[i][0].call(c.exports,function(e){var n=t[i][1][e];return a(n?n:e)},c,c.exports,e,t,n,r)}return n[i].exports}for(var o="function"==typeof require&&require,i=0;i<r.length;i++)a(r[i]);return a}({1:[function(e,t,n){"use strict";function r(){}function a(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=j,this.queue=[],this.outcome=void 0,e!==r&&l(this,e)}function o(e,t,n){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function i(e,t,n){p(function(){var r;try{r=t(n)}catch(a){return v.reject(e,a)}r===e?v.reject(e,new TypeError("Cannot resolve promise with itself")):v.resolve(e,r)})}function s(e){var t=e&&e.then;return e&&"object"==typeof e&&"function"==typeof t?function(){t.apply(e,arguments)}:void 0}function l(e,t){function n(t){o||(o=!0,v.reject(e,t))}function r(t){o||(o=!0,v.resolve(e,t))}function a(){t(r,n)}var o=!1,i=u(a);"error"===i.status&&n(i.value)}function u(e,t){var n={};try{n.value=e(t),n.status="success"}catch(r){n.status="error",n.value=r}return n}function c(e){return e instanceof this?e:v.resolve(new this(r),e)}function f(e){var t=new this(r);return v.reject(t,e)}function d(e){function t(e,t){function r(e){i[t]=e,++s!==a||o||(o=!0,v.resolve(u,i))}n.resolve(e).then(r,function(e){o||(o=!0,v.reject(u,e))})}var n=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var a=e.length,o=!1;if(!a)return this.resolve([]);for(var i=new Array(a),s=0,l=-1,u=new this(r);++l<a;)t(e[l],l);return u}function h(e){function t(e){n.resolve(e).then(function(e){o||(o=!0,v.resolve(s,e))},function(e){o||(o=!0,v.reject(s,e))})}var n=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var a=e.length,o=!1;if(!a)return this.resolve([]);for(var i=-1,s=new this(r);++i<a;)t(e[i]);return s}var p=e("immediate"),v={},y=["REJECTED"],m=["FULFILLED"],j=["PENDING"];t.exports=n=a,a.prototype["catch"]=function(e){return this.then(null,e)},a.prototype.then=function(e,t){if("function"!=typeof e&&this.state===m||"function"!=typeof t&&this.state===y)return this;var n=new this.constructor(r);if(this.state!==j){var a=this.state===m?e:t;i(n,a,this.outcome)}else this.queue.push(new o(n,e,t));return n},o.prototype.callFulfilled=function(e){v.resolve(this.promise,e)},o.prototype.otherCallFulfilled=function(e){i(this.promise,this.onFulfilled,e)},o.prototype.callRejected=function(e){v.reject(this.promise,e)},o.prototype.otherCallRejected=function(e){i(this.promise,this.onRejected,e)},v.resolve=function(e,t){var n=u(s,t);if("error"===n.status)return v.reject(e,n.value);var r=n.value;if(r)l(e,r);else{e.state=m,e.outcome=t;for(var a=-1,o=e.queue.length;++a<o;)e.queue[a].callFulfilled(t)}return e},v.reject=function(e,t){e.state=y,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},n.resolve=c,n.reject=f,n.all=d,n.race=h},{immediate:2}],2:[function(e,t,n){(function(e){"use strict";function n(){c=!0;for(var e,t,n=f.length;n;){for(t=f,f=[],e=-1;++e<n;)t[e]();n=f.length}c=!1}function r(e){1!==f.push(e)||c||a()}var a,o=e.MutationObserver||e.WebKitMutationObserver;if(o){var i=0,s=new o(n),l=e.document.createTextNode("");s.observe(l,{characterData:!0}),a=function(){l.data=i=++i%2}}else if(e.setImmediate||"undefined"==typeof e.MessageChannel)a="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){n(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(n,0)};else{var u=new e.MessageChannel;u.port1.onmessage=n,a=function(){u.port2.postMessage(0)}}var c,f=[];t.exports=r}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],3:[function(e,t,n){(function(n){"use strict";var r=e("./jsonp"),a=e("lie");t.exports=function(e,t){if(t=t||{},t.jsonp)return r(e,t);var o,i,s=new a(function(r,a){i=a,void 0===n.XMLHttpRequest&&a("XMLHttpRequest is not supported");var s;o=new n.XMLHttpRequest,o.open("GET",e),t.headers&&Object.keys(t.headers).forEach(function(e){o.setRequestHeader(e,t.headers[e])}),o.onreadystatechange=function(){4===o.readyState&&(o.status<400&&t.local||200===o.status?(n.JSON?s=JSON.parse(o.responseText):a(new Error("JSON is not supported")),r(s)):a(o.status?o.statusText:"Attempted cross origin request without CORS enabled"))},o.send()});return s["catch"](function(e){return o.abort(),e}),s.abort=i,s}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./jsonp":5,lie:1}],4:[function(e,t,n){(function(t){"use strict";var n=t.L||e("leaflet"),r=e("lie"),a=e("./ajax");n.GeoJSON.AJAX=n.GeoJSON.extend({defaultAJAXparams:{dataType:"json",callbackParam:"callback",local:!1,middleware:function(e){return e}},initialize:function(e,t){this.urls=[],e&&("string"==typeof e?this.urls.push(e):"function"==typeof e.pop?this.urls=this.urls.concat(e):(t=e,e=void 0));var a=n.Util.extend({},this.defaultAJAXparams);for(var o in t)this.defaultAJAXparams.hasOwnProperty(o)&&(a[o]=t[o]);this.ajaxParams=a,this._layers={},n.Util.setOptions(this,t),this.on("data:loaded",function(){this.filter&&this.refilter(this.filter)},this);var i=this;this.urls.length>0&&new r(function(e){e()}).then(function(){i.addUrl()})},clearLayers:function(){return this.urls=[],n.GeoJSON.prototype.clearLayers.call(this),this},addUrl:function(e){var t=this;e&&("string"==typeof e?t.urls.push(e):"function"==typeof e.pop&&(t.urls=t.urls.concat(e)));var r=t.urls.length,o=0;t.fire("data:loading"),t.urls.forEach(function(e){"json"===t.ajaxParams.dataType.toLowerCase()?a(e,t.ajaxParams).then(function(e){var n=t.ajaxParams.middleware(e);t.addData(n),t.fire("data:progress",n)},function(e){t.fire("data:progress",{error:e})}):"jsonp"===t.ajaxParams.dataType.toLowerCase()&&n.Util.jsonp(e,t.ajaxParams).then(function(e){var n=t.ajaxParams.middleware(e);t.addData(n),t.fire("data:progress",n)},function(e){t.fire("data:progress",{error:e})})}),t.on("data:progress",function(){++o===r&&t.fire("data:loaded")})},refresh:function(e){e=e||this.urls,this.clearLayers(),this.addUrl(e)},refilter:function(e){"function"!=typeof e?(this.filter=!1,this.eachLayer(function(e){e.setStyle({stroke:!0,clickable:!0})})):(this.filter=e,this.eachLayer(function(t){e(t.feature)?t.setStyle({stroke:!0,clickable:!0}):t.setStyle({stroke:!1,clickable:!1})}))}}),n.Util.Promise=r,n.Util.ajax=a,n.Util.jsonp=e("./jsonp"),n.geoJson.ajax=function(e,t){return new n.GeoJSON.AJAX(e,t)}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./ajax":3,"./jsonp":5,leaflet:void 0,lie:1}],5:[function(e,t,n){(function(n){"use strict";var r=n.L||e("leaflet"),a=e("lie");t.exports=function(e,t){t=t||{};var o,i,s,l,u=document.getElementsByTagName("head")[0],c=r.DomUtil.create("script","",u),f=new a(function(r,a){l=a;var f=t.cbParam||"callback";t.callbackName?o=t.callbackName:(s="_"+(""+Math.random()).slice(2),o="_leafletJSONPcallbacks."+s),c.type="text/javascript",s&&(n._leafletJSONPcallbacks||(n._leafletJSONPcallbacks={length:0}),n._leafletJSONPcallbacks.length++,n._leafletJSONPcallbacks[s]=function(e){u.removeChild(c),delete n._leafletJSONPcallbacks[s],n._leafletJSONPcallbacks.length--,n._leafletJSONPcallbacks.length||delete n._leafletJSONPcallbacks,r(e)}),i=-1===e.indexOf("?")?e+"?"+f+"="+o:e+"&"+f+"="+o,c.src=i}).then(null,function(e){return u.removeChild(c),delete r.Util.ajax.cb[s],e});return f.abort=l,f}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{leaflet:void 0,lie:1}]},{},[4]);
|
content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.css
ADDED
@@ -0,0 +1,479 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/* required styles */
|
2 |
+
|
3 |
+
.leaflet-map-pane,
|
4 |
+
.leaflet-tile,
|
5 |
+
.leaflet-marker-icon,
|
6 |
+
.leaflet-marker-shadow,
|
7 |
+
.leaflet-tile-pane,
|
8 |
+
.leaflet-tile-container,
|
9 |
+
.leaflet-overlay-pane,
|
10 |
+
.leaflet-shadow-pane,
|
11 |
+
.leaflet-marker-pane,
|
12 |
+
.leaflet-popup-pane,
|
13 |
+
.leaflet-overlay-pane svg,
|
14 |
+
.leaflet-zoom-box,
|
15 |
+
.leaflet-image-layer,
|
16 |
+
.leaflet-layer {
|
17 |
+
position: absolute;
|
18 |
+
left: 0;
|
19 |
+
top: 0;
|
20 |
+
}
|
21 |
+
.leaflet-container {
|
22 |
+
overflow: hidden;
|
23 |
+
-ms-touch-action: none;
|
24 |
+
touch-action: none;
|
25 |
+
}
|
26 |
+
.leaflet-tile,
|
27 |
+
.leaflet-marker-icon,
|
28 |
+
.leaflet-marker-shadow {
|
29 |
+
-webkit-user-select: none;
|
30 |
+
-moz-user-select: none;
|
31 |
+
user-select: none;
|
32 |
+
-webkit-user-drag: none;
|
33 |
+
}
|
34 |
+
.leaflet-marker-icon,
|
35 |
+
.leaflet-marker-shadow {
|
36 |
+
display: block;
|
37 |
+
}
|
38 |
+
/* map is broken in FF if you have max-width: 100% on tiles */
|
39 |
+
.leaflet-container img {
|
40 |
+
max-width: none !important;
|
41 |
+
}
|
42 |
+
/* stupid Android 2 doesn't understand "max-width: none" properly */
|
43 |
+
.leaflet-container img.leaflet-image-layer {
|
44 |
+
max-width: 15000px !important;
|
45 |
+
}
|
46 |
+
.leaflet-tile {
|
47 |
+
filter: inherit;
|
48 |
+
visibility: hidden;
|
49 |
+
}
|
50 |
+
.leaflet-tile-loaded {
|
51 |
+
visibility: inherit;
|
52 |
+
}
|
53 |
+
.leaflet-zoom-box {
|
54 |
+
width: 0;
|
55 |
+
height: 0;
|
56 |
+
}
|
57 |
+
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
|
58 |
+
.leaflet-overlay-pane svg {
|
59 |
+
-moz-user-select: none;
|
60 |
+
}
|
61 |
+
|
62 |
+
.leaflet-tile-pane { z-index: 2; }
|
63 |
+
.leaflet-objects-pane { z-index: 3; }
|
64 |
+
.leaflet-overlay-pane { z-index: 4; }
|
65 |
+
.leaflet-shadow-pane { z-index: 5; }
|
66 |
+
.leaflet-marker-pane { z-index: 6; }
|
67 |
+
.leaflet-popup-pane { z-index: 7; }
|
68 |
+
|
69 |
+
.leaflet-vml-shape {
|
70 |
+
width: 1px;
|
71 |
+
height: 1px;
|
72 |
+
}
|
73 |
+
.lvml {
|
74 |
+
behavior: url(#default#VML);
|
75 |
+
display: inline-block;
|
76 |
+
position: absolute;
|
77 |
+
}
|
78 |
+
|
79 |
+
|
80 |
+
/* control positioning */
|
81 |
+
|
82 |
+
.leaflet-control {
|
83 |
+
position: relative;
|
84 |
+
z-index: 7;
|
85 |
+
pointer-events: auto;
|
86 |
+
}
|
87 |
+
.leaflet-top,
|
88 |
+
.leaflet-bottom {
|
89 |
+
position: absolute;
|
90 |
+
z-index: 0;
|
91 |
+
pointer-events: none;
|
92 |
+
}
|
93 |
+
.leaflet-top {
|
94 |
+
top: 0;
|
95 |
+
}
|
96 |
+
.leaflet-right {
|
97 |
+
right: 0;
|
98 |
+
}
|
99 |
+
.leaflet-bottom {
|
100 |
+
bottom: 0;
|
101 |
+
}
|
102 |
+
.leaflet-left {
|
103 |
+
left: 0;
|
104 |
+
}
|
105 |
+
.leaflet-control {
|
106 |
+
float: left;
|
107 |
+
clear: both;
|
108 |
+
}
|
109 |
+
.leaflet-right .leaflet-control {
|
110 |
+
float: right;
|
111 |
+
}
|
112 |
+
.leaflet-top .leaflet-control {
|
113 |
+
margin-top: 10px;
|
114 |
+
}
|
115 |
+
.leaflet-bottom .leaflet-control {
|
116 |
+
margin-bottom: 10px;
|
117 |
+
}
|
118 |
+
.leaflet-left .leaflet-control {
|
119 |
+
margin-left: 10px;
|
120 |
+
}
|
121 |
+
.leaflet-right .leaflet-control {
|
122 |
+
margin-right: 10px;
|
123 |
+
}
|
124 |
+
|
125 |
+
|
126 |
+
/* zoom and fade animations */
|
127 |
+
|
128 |
+
.leaflet-fade-anim .leaflet-tile,
|
129 |
+
.leaflet-fade-anim .leaflet-popup {
|
130 |
+
opacity: 0;
|
131 |
+
-webkit-transition: opacity 0.2s linear;
|
132 |
+
-moz-transition: opacity 0.2s linear;
|
133 |
+
-o-transition: opacity 0.2s linear;
|
134 |
+
transition: opacity 0.2s linear;
|
135 |
+
}
|
136 |
+
.leaflet-fade-anim .leaflet-tile-loaded,
|
137 |
+
.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
|
138 |
+
opacity: 1;
|
139 |
+
}
|
140 |
+
|
141 |
+
.leaflet-zoom-anim .leaflet-zoom-animated {
|
142 |
+
-webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
|
143 |
+
-moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
|
144 |
+
-o-transition: -o-transform 0.25s cubic-bezier(0,0,0.25,1);
|
145 |
+
transition: transform 0.25s cubic-bezier(0,0,0.25,1);
|
146 |
+
}
|
147 |
+
.leaflet-zoom-anim .leaflet-tile,
|
148 |
+
.leaflet-pan-anim .leaflet-tile,
|
149 |
+
.leaflet-touching .leaflet-zoom-animated {
|
150 |
+
-webkit-transition: none;
|
151 |
+
-moz-transition: none;
|
152 |
+
-o-transition: none;
|
153 |
+
transition: none;
|
154 |
+
}
|
155 |
+
|
156 |
+
.leaflet-zoom-anim .leaflet-zoom-hide {
|
157 |
+
visibility: hidden;
|
158 |
+
}
|
159 |
+
|
160 |
+
|
161 |
+
/* cursors */
|
162 |
+
|
163 |
+
.leaflet-clickable {
|
164 |
+
cursor: pointer;
|
165 |
+
}
|
166 |
+
.leaflet-container {
|
167 |
+
cursor: -webkit-grab;
|
168 |
+
cursor: -moz-grab;
|
169 |
+
}
|
170 |
+
.leaflet-popup-pane,
|
171 |
+
.leaflet-control {
|
172 |
+
cursor: auto;
|
173 |
+
}
|
174 |
+
.leaflet-dragging .leaflet-container,
|
175 |
+
.leaflet-dragging .leaflet-clickable {
|
176 |
+
cursor: move;
|
177 |
+
cursor: -webkit-grabbing;
|
178 |
+
cursor: -moz-grabbing;
|
179 |
+
}
|
180 |
+
|
181 |
+
|
182 |
+
/* visual tweaks */
|
183 |
+
|
184 |
+
.leaflet-container {
|
185 |
+
background: #ddd;
|
186 |
+
outline: 0;
|
187 |
+
}
|
188 |
+
.leaflet-container a {
|
189 |
+
color: #0078A8;
|
190 |
+
}
|
191 |
+
.leaflet-container a.leaflet-active {
|
192 |
+
outline: 2px solid orange;
|
193 |
+
}
|
194 |
+
.leaflet-zoom-box {
|
195 |
+
border: 2px dotted #38f;
|
196 |
+
background: rgba(255,255,255,0.5);
|
197 |
+
}
|
198 |
+
|
199 |
+
|
200 |
+
/* general typography */
|
201 |
+
.leaflet-container {
|
202 |
+
font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
|
203 |
+
}
|
204 |
+
|
205 |
+
|
206 |
+
/* general toolbar styles */
|
207 |
+
|
208 |
+
.leaflet-bar {
|
209 |
+
box-shadow: 0 1px 5px rgba(0,0,0,0.65);
|
210 |
+
border-radius: 4px;
|
211 |
+
}
|
212 |
+
.leaflet-bar a,
|
213 |
+
.leaflet-bar a:hover {
|
214 |
+
background-color: #fff;
|
215 |
+
border-bottom: 1px solid #ccc;
|
216 |
+
width: 26px;
|
217 |
+
height: 26px;
|
218 |
+
line-height: 26px;
|
219 |
+
display: block;
|
220 |
+
text-align: center;
|
221 |
+
text-decoration: none;
|
222 |
+
color: black;
|
223 |
+
}
|
224 |
+
.leaflet-bar a,
|
225 |
+
.leaflet-control-layers-toggle {
|
226 |
+
background-position: 50% 50%;
|
227 |
+
background-repeat: no-repeat;
|
228 |
+
display: block;
|
229 |
+
}
|
230 |
+
.leaflet-bar a:hover {
|
231 |
+
background-color: #f4f4f4;
|
232 |
+
}
|
233 |
+
.leaflet-bar a:first-child {
|
234 |
+
border-top-left-radius: 4px;
|
235 |
+
border-top-right-radius: 4px;
|
236 |
+
}
|
237 |
+
.leaflet-bar a:last-child {
|
238 |
+
border-bottom-left-radius: 4px;
|
239 |
+
border-bottom-right-radius: 4px;
|
240 |
+
border-bottom: none;
|
241 |
+
}
|
242 |
+
.leaflet-bar a.leaflet-disabled {
|
243 |
+
cursor: default;
|
244 |
+
background-color: #f4f4f4;
|
245 |
+
color: #bbb;
|
246 |
+
}
|
247 |
+
|
248 |
+
.leaflet-touch .leaflet-bar a {
|
249 |
+
width: 30px;
|
250 |
+
height: 30px;
|
251 |
+
line-height: 30px;
|
252 |
+
}
|
253 |
+
|
254 |
+
|
255 |
+
/* zoom control */
|
256 |
+
|
257 |
+
.leaflet-control-zoom-in,
|
258 |
+
.leaflet-control-zoom-out {
|
259 |
+
font: bold 18px 'Lucida Console', Monaco, monospace;
|
260 |
+
text-indent: 1px;
|
261 |
+
}
|
262 |
+
.leaflet-control-zoom-out {
|
263 |
+
font-size: 20px;
|
264 |
+
}
|
265 |
+
|
266 |
+
.leaflet-touch .leaflet-control-zoom-in {
|
267 |
+
font-size: 22px;
|
268 |
+
}
|
269 |
+
.leaflet-touch .leaflet-control-zoom-out {
|
270 |
+
font-size: 24px;
|
271 |
+
}
|
272 |
+
|
273 |
+
|
274 |
+
/* layers control */
|
275 |
+
|
276 |
+
.leaflet-control-layers {
|
277 |
+
box-shadow: 0 1px 5px rgba(0,0,0,0.4);
|
278 |
+
background: #fff;
|
279 |
+
border-radius: 5px;
|
280 |
+
}
|
281 |
+
.leaflet-control-layers-toggle {
|
282 |
+
background-image: url(images/layers.png);
|
283 |
+
width: 36px;
|
284 |
+
height: 36px;
|
285 |
+
}
|
286 |
+
.leaflet-retina .leaflet-control-layers-toggle {
|
287 |
+
background-image: url(images/layers-2x.png);
|
288 |
+
background-size: 26px 26px;
|
289 |
+
}
|
290 |
+
.leaflet-touch .leaflet-control-layers-toggle {
|
291 |
+
width: 44px;
|
292 |
+
height: 44px;
|
293 |
+
}
|
294 |
+
.leaflet-control-layers .leaflet-control-layers-list,
|
295 |
+
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
|
296 |
+
display: none;
|
297 |
+
}
|
298 |
+
.leaflet-control-layers-expanded .leaflet-control-layers-list {
|
299 |
+
display: block;
|
300 |
+
position: relative;
|
301 |
+
}
|
302 |
+
.leaflet-control-layers-expanded {
|
303 |
+
padding: 6px 10px 6px 6px;
|
304 |
+
color: #333;
|
305 |
+
background: #fff;
|
306 |
+
}
|
307 |
+
.leaflet-control-layers-selector {
|
308 |
+
margin-top: 2px;
|
309 |
+
position: relative;
|
310 |
+
top: 1px;
|
311 |
+
}
|
312 |
+
.leaflet-control-layers label {
|
313 |
+
display: block;
|
314 |
+
}
|
315 |
+
.leaflet-control-layers-separator {
|
316 |
+
height: 0;
|
317 |
+
border-top: 1px solid #ddd;
|
318 |
+
margin: 5px -10px 5px -6px;
|
319 |
+
}
|
320 |
+
|
321 |
+
|
322 |
+
/* attribution and scale controls */
|
323 |
+
|
324 |
+
.leaflet-container .leaflet-control-attribution {
|
325 |
+
background: #fff;
|
326 |
+
background: rgba(255, 255, 255, 0.7);
|
327 |
+
margin: 0;
|
328 |
+
}
|
329 |
+
.leaflet-control-attribution,
|
330 |
+
.leaflet-control-scale-line {
|
331 |
+
padding: 0 5px;
|
332 |
+
color: #333;
|
333 |
+
}
|
334 |
+
.leaflet-control-attribution a {
|
335 |
+
text-decoration: none;
|
336 |
+
}
|
337 |
+
.leaflet-control-attribution a:hover {
|
338 |
+
text-decoration: underline;
|
339 |
+
}
|
340 |
+
.leaflet-container .leaflet-control-attribution,
|
341 |
+
.leaflet-container .leaflet-control-scale {
|
342 |
+
font-size: 11px;
|
343 |
+
}
|
344 |
+
.leaflet-left .leaflet-control-scale {
|
345 |
+
margin-left: 5px;
|
346 |
+
}
|
347 |
+
.leaflet-bottom .leaflet-control-scale {
|
348 |
+
margin-bottom: 5px;
|
349 |
+
}
|
350 |
+
.leaflet-control-scale-line {
|
351 |
+
border: 2px solid #777;
|
352 |
+
border-top: none;
|
353 |
+
line-height: 1.1;
|
354 |
+
padding: 2px 5px 1px;
|
355 |
+
font-size: 11px;
|
356 |
+
white-space: nowrap;
|
357 |
+
overflow: hidden;
|
358 |
+
-moz-box-sizing: content-box;
|
359 |
+
box-sizing: content-box;
|
360 |
+
|
361 |
+
background: #fff;
|
362 |
+
background: rgba(255, 255, 255, 0.5);
|
363 |
+
}
|
364 |
+
.leaflet-control-scale-line:not(:first-child) {
|
365 |
+
border-top: 2px solid #777;
|
366 |
+
border-bottom: none;
|
367 |
+
margin-top: -2px;
|
368 |
+
}
|
369 |
+
.leaflet-control-scale-line:not(:first-child):not(:last-child) {
|
370 |
+
border-bottom: 2px solid #777;
|
371 |
+
}
|
372 |
+
|
373 |
+
.leaflet-touch .leaflet-control-attribution,
|
374 |
+
.leaflet-touch .leaflet-control-layers,
|
375 |
+
.leaflet-touch .leaflet-bar {
|
376 |
+
box-shadow: none;
|
377 |
+
}
|
378 |
+
.leaflet-touch .leaflet-control-layers,
|
379 |
+
.leaflet-touch .leaflet-bar {
|
380 |
+
border: 2px solid rgba(0,0,0,0.2);
|
381 |
+
background-clip: padding-box;
|
382 |
+
}
|
383 |
+
|
384 |
+
|
385 |
+
/* popup */
|
386 |
+
|
387 |
+
.leaflet-popup {
|
388 |
+
position: absolute;
|
389 |
+
text-align: center;
|
390 |
+
}
|
391 |
+
.leaflet-popup-content-wrapper {
|
392 |
+
padding: 1px;
|
393 |
+
text-align: left;
|
394 |
+
border-radius: 12px;
|
395 |
+
}
|
396 |
+
.leaflet-popup-content {
|
397 |
+
margin: 13px 19px;
|
398 |
+
line-height: 1.4;
|
399 |
+
}
|
400 |
+
.leaflet-popup-content p {
|
401 |
+
margin: 18px 0;
|
402 |
+
}
|
403 |
+
.leaflet-popup-tip-container {
|
404 |
+
margin: 0 auto;
|
405 |
+
width: 40px;
|
406 |
+
height: 20px;
|
407 |
+
position: relative;
|
408 |
+
overflow: hidden;
|
409 |
+
}
|
410 |
+
.leaflet-popup-tip {
|
411 |
+
width: 17px;
|
412 |
+
height: 17px;
|
413 |
+
padding: 1px;
|
414 |
+
|
415 |
+
margin: -10px auto 0;
|
416 |
+
|
417 |
+
-webkit-transform: rotate(45deg);
|
418 |
+
-moz-transform: rotate(45deg);
|
419 |
+
-ms-transform: rotate(45deg);
|
420 |
+
-o-transform: rotate(45deg);
|
421 |
+
transform: rotate(45deg);
|
422 |
+
}
|
423 |
+
.leaflet-popup-content-wrapper,
|
424 |
+
.leaflet-popup-tip {
|
425 |
+
background: white;
|
426 |
+
|
427 |
+
box-shadow: 0 3px 14px rgba(0,0,0,0.4);
|
428 |
+
}
|
429 |
+
.leaflet-container a.leaflet-popup-close-button {
|
430 |
+
position: absolute;
|
431 |
+
top: 0;
|
432 |
+
right: 0;
|
433 |
+
padding: 4px 4px 0 0;
|
434 |
+
text-align: center;
|
435 |
+
width: 18px;
|
436 |
+
height: 14px;
|
437 |
+
font: 16px/14px Tahoma, Verdana, sans-serif;
|
438 |
+
color: #c3c3c3;
|
439 |
+
text-decoration: none;
|
440 |
+
font-weight: bold;
|
441 |
+
background: transparent;
|
442 |
+
}
|
443 |
+
.leaflet-container a.leaflet-popup-close-button:hover {
|
444 |
+
color: #999;
|
445 |
+
}
|
446 |
+
.leaflet-popup-scrolled {
|
447 |
+
overflow: auto;
|
448 |
+
border-bottom: 1px solid #ddd;
|
449 |
+
border-top: 1px solid #ddd;
|
450 |
+
}
|
451 |
+
|
452 |
+
.leaflet-oldie .leaflet-popup-content-wrapper {
|
453 |
+
zoom: 1;
|
454 |
+
}
|
455 |
+
.leaflet-oldie .leaflet-popup-tip {
|
456 |
+
width: 24px;
|
457 |
+
margin: 0 auto;
|
458 |
+
|
459 |
+
-ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
|
460 |
+
filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
|
461 |
+
}
|
462 |
+
.leaflet-oldie .leaflet-popup-tip-container {
|
463 |
+
margin-top: -1px;
|
464 |
+
}
|
465 |
+
|
466 |
+
.leaflet-oldie .leaflet-control-zoom,
|
467 |
+
.leaflet-oldie .leaflet-control-layers,
|
468 |
+
.leaflet-oldie .leaflet-popup-content-wrapper,
|
469 |
+
.leaflet-oldie .leaflet-popup-tip {
|
470 |
+
border: 1px solid #999;
|
471 |
+
}
|
472 |
+
|
473 |
+
|
474 |
+
/* div icon */
|
475 |
+
|
476 |
+
.leaflet-div-icon {
|
477 |
+
background: #fff;
|
478 |
+
border: 1px solid #666;
|
479 |
+
}
|
content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.js
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
Leaflet, a JavaScript library for mobile-friendly interactive maps. http://leafletjs.com
|
3 |
+
(c) 2010-2013, Vladimir Agafonkin
|
4 |
+
(c) 2010-2011, CloudMade
|
5 |
+
*/
|
6 |
+
!function(t,e,i){var n=t.L,o={};o.version="0.7.7","object"==typeof module&&"object"==typeof module.exports?module.exports=o:"function"==typeof define&&define.amd&&define(o),o.noConflict=function(){return t.L=n,this},t.L=o,o.Util={extend:function(t){var e,i,n,o,s=Array.prototype.slice.call(arguments,1);for(i=0,n=s.length;n>i;i++){o=s[i]||{};for(e in o)o.hasOwnProperty(e)&&(t[e]=o[e])}return t},bind:function(t,e){var i=arguments.length>2?Array.prototype.slice.call(arguments,2):null;return function(){return t.apply(e,i||arguments)}},stamp:function(){var t=0,e="_leaflet_id";return function(i){return i[e]=i[e]||++t,i[e]}}(),invokeEach:function(t,e,i){var n,o;if("object"==typeof t){o=Array.prototype.slice.call(arguments,3);for(n in t)e.apply(i,[n,t[n]].concat(o));return!0}return!1},limitExecByInterval:function(t,e,i){var n,o;return function s(){var a=arguments;return n?void(o=!0):(n=!0,setTimeout(function(){n=!1,o&&(s.apply(i,a),o=!1)},e),void t.apply(i,a))}},falseFn:function(){return!1},formatNum:function(t,e){var i=Math.pow(10,e||5);return Math.round(t*i)/i},trim:function(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")},splitWords:function(t){return o.Util.trim(t).split(/\s+/)},setOptions:function(t,e){return t.options=o.extend({},t.options,e),t.options},getParamString:function(t,e,i){var n=[];for(var o in t)n.push(encodeURIComponent(i?o.toUpperCase():o)+"="+encodeURIComponent(t[o]));return(e&&-1!==e.indexOf("?")?"&":"?")+n.join("&")},template:function(t,e){return t.replace(/\{ *([\w_]+) *\}/g,function(t,n){var o=e[n];if(o===i)throw new Error("No value provided for variable "+t);return"function"==typeof o&&(o=o(e)),o})},isArray:Array.isArray||function(t){return"[object Array]"===Object.prototype.toString.call(t)},emptyImageUrl:"data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="},function(){function e(e){var i,n,o=["webkit","moz","o","ms"];for(i=0;i<o.length&&!n;i++)n=t[o[i]+e];return n}function i(e){var i=+new Date,o=Math.max(0,16-(i-n));return n=i+o,t.setTimeout(e,o)}var n=0,s=t.requestAnimationFrame||e("RequestAnimationFrame")||i,a=t.cancelAnimationFrame||e("CancelAnimationFrame")||e("CancelRequestAnimationFrame")||function(e){t.clearTimeout(e)};o.Util.requestAnimFrame=function(e,n,a,r){return e=o.bind(e,n),a&&s===i?void e():s.call(t,e,r)},o.Util.cancelAnimFrame=function(e){e&&a.call(t,e)}}(),o.extend=o.Util.extend,o.bind=o.Util.bind,o.stamp=o.Util.stamp,o.setOptions=o.Util.setOptions,o.Class=function(){},o.Class.extend=function(t){var e=function(){this.initialize&&this.initialize.apply(this,arguments),this._initHooks&&this.callInitHooks()},i=function(){};i.prototype=this.prototype;var n=new i;n.constructor=e,e.prototype=n;for(var s in this)this.hasOwnProperty(s)&&"prototype"!==s&&(e[s]=this[s]);t.statics&&(o.extend(e,t.statics),delete t.statics),t.includes&&(o.Util.extend.apply(null,[n].concat(t.includes)),delete t.includes),t.options&&n.options&&(t.options=o.extend({},n.options,t.options)),o.extend(n,t),n._initHooks=[];var a=this;return e.__super__=a.prototype,n.callInitHooks=function(){if(!this._initHooksCalled){a.prototype.callInitHooks&&a.prototype.callInitHooks.call(this),this._initHooksCalled=!0;for(var t=0,e=n._initHooks.length;e>t;t++)n._initHooks[t].call(this)}},e},o.Class.include=function(t){o.extend(this.prototype,t)},o.Class.mergeOptions=function(t){o.extend(this.prototype.options,t)},o.Class.addInitHook=function(t){var e=Array.prototype.slice.call(arguments,1),i="function"==typeof t?t:function(){this[t].apply(this,e)};this.prototype._initHooks=this.prototype._initHooks||[],this.prototype._initHooks.push(i)};var s="_leaflet_events";o.Mixin={},o.Mixin.Events={addEventListener:function(t,e,i){if(o.Util.invokeEach(t,this.addEventListener,this,e,i))return this;var n,a,r,h,l,u,c,d=this[s]=this[s]||{},p=i&&i!==this&&o.stamp(i);for(t=o.Util.splitWords(t),n=0,a=t.length;a>n;n++)r={action:e,context:i||this},h=t[n],p?(l=h+"_idx",u=l+"_len",c=d[l]=d[l]||{},c[p]||(c[p]=[],d[u]=(d[u]||0)+1),c[p].push(r)):(d[h]=d[h]||[],d[h].push(r));return this},hasEventListeners:function(t){var e=this[s];return!!e&&(t in e&&e[t].length>0||t+"_idx"in e&&e[t+"_idx_len"]>0)},removeEventListener:function(t,e,i){if(!this[s])return this;if(!t)return this.clearAllEventListeners();if(o.Util.invokeEach(t,this.removeEventListener,this,e,i))return this;var n,a,r,h,l,u,c,d,p,_=this[s],m=i&&i!==this&&o.stamp(i);for(t=o.Util.splitWords(t),n=0,a=t.length;a>n;n++)if(r=t[n],u=r+"_idx",c=u+"_len",d=_[u],e){if(h=m&&d?d[m]:_[r]){for(l=h.length-1;l>=0;l--)h[l].action!==e||i&&h[l].context!==i||(p=h.splice(l,1),p[0].action=o.Util.falseFn);i&&d&&0===h.length&&(delete d[m],_[c]--)}}else delete _[r],delete _[u],delete _[c];return this},clearAllEventListeners:function(){return delete this[s],this},fireEvent:function(t,e){if(!this.hasEventListeners(t))return this;var i,n,a,r,h,l=o.Util.extend({},e,{type:t,target:this}),u=this[s];if(u[t])for(i=u[t].slice(),n=0,a=i.length;a>n;n++)i[n].action.call(i[n].context,l);r=u[t+"_idx"];for(h in r)if(i=r[h].slice())for(n=0,a=i.length;a>n;n++)i[n].action.call(i[n].context,l);return this},addOneTimeEventListener:function(t,e,i){if(o.Util.invokeEach(t,this.addOneTimeEventListener,this,e,i))return this;var n=o.bind(function(){this.removeEventListener(t,e,i).removeEventListener(t,n,i)},this);return this.addEventListener(t,e,i).addEventListener(t,n,i)}},o.Mixin.Events.on=o.Mixin.Events.addEventListener,o.Mixin.Events.off=o.Mixin.Events.removeEventListener,o.Mixin.Events.once=o.Mixin.Events.addOneTimeEventListener,o.Mixin.Events.fire=o.Mixin.Events.fireEvent,function(){var n="ActiveXObject"in t,s=n&&!e.addEventListener,a=navigator.userAgent.toLowerCase(),r=-1!==a.indexOf("webkit"),h=-1!==a.indexOf("chrome"),l=-1!==a.indexOf("phantom"),u=-1!==a.indexOf("android"),c=-1!==a.search("android [23]"),d=-1!==a.indexOf("gecko"),p=typeof orientation!=i+"",_=!t.PointerEvent&&t.MSPointerEvent,m=t.PointerEvent&&t.navigator.pointerEnabled||_,f="devicePixelRatio"in t&&t.devicePixelRatio>1||"matchMedia"in t&&t.matchMedia("(min-resolution:144dpi)")&&t.matchMedia("(min-resolution:144dpi)").matches,g=e.documentElement,v=n&&"transition"in g.style,y="WebKitCSSMatrix"in t&&"m11"in new t.WebKitCSSMatrix&&!c,P="MozPerspective"in g.style,L="OTransition"in g.style,x=!t.L_DISABLE_3D&&(v||y||P||L)&&!l,w=!t.L_NO_TOUCH&&!l&&(m||"ontouchstart"in t||t.DocumentTouch&&e instanceof t.DocumentTouch);o.Browser={ie:n,ielt9:s,webkit:r,gecko:d&&!r&&!t.opera&&!n,android:u,android23:c,chrome:h,ie3d:v,webkit3d:y,gecko3d:P,opera3d:L,any3d:x,mobile:p,mobileWebkit:p&&r,mobileWebkit3d:p&&y,mobileOpera:p&&t.opera,touch:w,msPointer:_,pointer:m,retina:f}}(),o.Point=function(t,e,i){this.x=i?Math.round(t):t,this.y=i?Math.round(e):e},o.Point.prototype={clone:function(){return new o.Point(this.x,this.y)},add:function(t){return this.clone()._add(o.point(t))},_add:function(t){return this.x+=t.x,this.y+=t.y,this},subtract:function(t){return this.clone()._subtract(o.point(t))},_subtract:function(t){return this.x-=t.x,this.y-=t.y,this},divideBy:function(t){return this.clone()._divideBy(t)},_divideBy:function(t){return this.x/=t,this.y/=t,this},multiplyBy:function(t){return this.clone()._multiplyBy(t)},_multiplyBy:function(t){return this.x*=t,this.y*=t,this},round:function(){return this.clone()._round()},_round:function(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this},floor:function(){return this.clone()._floor()},_floor:function(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this},distanceTo:function(t){t=o.point(t);var e=t.x-this.x,i=t.y-this.y;return Math.sqrt(e*e+i*i)},equals:function(t){return t=o.point(t),t.x===this.x&&t.y===this.y},contains:function(t){return t=o.point(t),Math.abs(t.x)<=Math.abs(this.x)&&Math.abs(t.y)<=Math.abs(this.y)},toString:function(){return"Point("+o.Util.formatNum(this.x)+", "+o.Util.formatNum(this.y)+")"}},o.point=function(t,e,n){return t instanceof o.Point?t:o.Util.isArray(t)?new o.Point(t[0],t[1]):t===i||null===t?t:new o.Point(t,e,n)},o.Bounds=function(t,e){if(t)for(var i=e?[t,e]:t,n=0,o=i.length;o>n;n++)this.extend(i[n])},o.Bounds.prototype={extend:function(t){return t=o.point(t),this.min||this.max?(this.min.x=Math.min(t.x,this.min.x),this.max.x=Math.max(t.x,this.max.x),this.min.y=Math.min(t.y,this.min.y),this.max.y=Math.max(t.y,this.max.y)):(this.min=t.clone(),this.max=t.clone()),this},getCenter:function(t){return new o.Point((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,t)},getBottomLeft:function(){return new o.Point(this.min.x,this.max.y)},getTopRight:function(){return new o.Point(this.max.x,this.min.y)},getSize:function(){return this.max.subtract(this.min)},contains:function(t){var e,i;return t="number"==typeof t[0]||t instanceof o.Point?o.point(t):o.bounds(t),t instanceof o.Bounds?(e=t.min,i=t.max):e=i=t,e.x>=this.min.x&&i.x<=this.max.x&&e.y>=this.min.y&&i.y<=this.max.y},intersects:function(t){t=o.bounds(t);var e=this.min,i=this.max,n=t.min,s=t.max,a=s.x>=e.x&&n.x<=i.x,r=s.y>=e.y&&n.y<=i.y;return a&&r},isValid:function(){return!(!this.min||!this.max)}},o.bounds=function(t,e){return!t||t instanceof o.Bounds?t:new o.Bounds(t,e)},o.Transformation=function(t,e,i,n){this._a=t,this._b=e,this._c=i,this._d=n},o.Transformation.prototype={transform:function(t,e){return this._transform(t.clone(),e)},_transform:function(t,e){return e=e||1,t.x=e*(this._a*t.x+this._b),t.y=e*(this._c*t.y+this._d),t},untransform:function(t,e){return e=e||1,new o.Point((t.x/e-this._b)/this._a,(t.y/e-this._d)/this._c)}},o.DomUtil={get:function(t){return"string"==typeof t?e.getElementById(t):t},getStyle:function(t,i){var n=t.style[i];if(!n&&t.currentStyle&&(n=t.currentStyle[i]),(!n||"auto"===n)&&e.defaultView){var o=e.defaultView.getComputedStyle(t,null);n=o?o[i]:null}return"auto"===n?null:n},getViewportOffset:function(t){var i,n=0,s=0,a=t,r=e.body,h=e.documentElement;do{if(n+=a.offsetTop||0,s+=a.offsetLeft||0,n+=parseInt(o.DomUtil.getStyle(a,"borderTopWidth"),10)||0,s+=parseInt(o.DomUtil.getStyle(a,"borderLeftWidth"),10)||0,i=o.DomUtil.getStyle(a,"position"),a.offsetParent===r&&"absolute"===i)break;if("fixed"===i){n+=r.scrollTop||h.scrollTop||0,s+=r.scrollLeft||h.scrollLeft||0;break}if("relative"===i&&!a.offsetLeft){var l=o.DomUtil.getStyle(a,"width"),u=o.DomUtil.getStyle(a,"max-width"),c=a.getBoundingClientRect();("none"!==l||"none"!==u)&&(s+=c.left+a.clientLeft),n+=c.top+(r.scrollTop||h.scrollTop||0);break}a=a.offsetParent}while(a);a=t;do{if(a===r)break;n-=a.scrollTop||0,s-=a.scrollLeft||0,a=a.parentNode}while(a);return new o.Point(s,n)},documentIsLtr:function(){return o.DomUtil._docIsLtrCached||(o.DomUtil._docIsLtrCached=!0,o.DomUtil._docIsLtr="ltr"===o.DomUtil.getStyle(e.body,"direction")),o.DomUtil._docIsLtr},create:function(t,i,n){var o=e.createElement(t);return o.className=i,n&&n.appendChild(o),o},hasClass:function(t,e){if(t.classList!==i)return t.classList.contains(e);var n=o.DomUtil._getClass(t);return n.length>0&&new RegExp("(^|\\s)"+e+"(\\s|$)").test(n)},addClass:function(t,e){if(t.classList!==i)for(var n=o.Util.splitWords(e),s=0,a=n.length;a>s;s++)t.classList.add(n[s]);else if(!o.DomUtil.hasClass(t,e)){var r=o.DomUtil._getClass(t);o.DomUtil._setClass(t,(r?r+" ":"")+e)}},removeClass:function(t,e){t.classList!==i?t.classList.remove(e):o.DomUtil._setClass(t,o.Util.trim((" "+o.DomUtil._getClass(t)+" ").replace(" "+e+" "," ")))},_setClass:function(t,e){t.className.baseVal===i?t.className=e:t.className.baseVal=e},_getClass:function(t){return t.className.baseVal===i?t.className:t.className.baseVal},setOpacity:function(t,e){if("opacity"in t.style)t.style.opacity=e;else if("filter"in t.style){var i=!1,n="DXImageTransform.Microsoft.Alpha";try{i=t.filters.item(n)}catch(o){if(1===e)return}e=Math.round(100*e),i?(i.Enabled=100!==e,i.Opacity=e):t.style.filter+=" progid:"+n+"(opacity="+e+")"}},testProp:function(t){for(var i=e.documentElement.style,n=0;n<t.length;n++)if(t[n]in i)return t[n];return!1},getTranslateString:function(t){var e=o.Browser.webkit3d,i="translate"+(e?"3d":"")+"(",n=(e?",0":"")+")";return i+t.x+"px,"+t.y+"px"+n},getScaleString:function(t,e){var i=o.DomUtil.getTranslateString(e.add(e.multiplyBy(-1*t))),n=" scale("+t+") ";return i+n},setPosition:function(t,e,i){t._leaflet_pos=e,!i&&o.Browser.any3d?t.style[o.DomUtil.TRANSFORM]=o.DomUtil.getTranslateString(e):(t.style.left=e.x+"px",t.style.top=e.y+"px")},getPosition:function(t){return t._leaflet_pos}},o.DomUtil.TRANSFORM=o.DomUtil.testProp(["transform","WebkitTransform","OTransform","MozTransform","msTransform"]),o.DomUtil.TRANSITION=o.DomUtil.testProp(["webkitTransition","transition","OTransition","MozTransition","msTransition"]),o.DomUtil.TRANSITION_END="webkitTransition"===o.DomUtil.TRANSITION||"OTransition"===o.DomUtil.TRANSITION?o.DomUtil.TRANSITION+"End":"transitionend",function(){if("onselectstart"in e)o.extend(o.DomUtil,{disableTextSelection:function(){o.DomEvent.on(t,"selectstart",o.DomEvent.preventDefault)},enableTextSelection:function(){o.DomEvent.off(t,"selectstart",o.DomEvent.preventDefault)}});else{var i=o.DomUtil.testProp(["userSelect","WebkitUserSelect","OUserSelect","MozUserSelect","msUserSelect"]);o.extend(o.DomUtil,{disableTextSelection:function(){if(i){var t=e.documentElement.style;this._userSelect=t[i],t[i]="none"}},enableTextSelection:function(){i&&(e.documentElement.style[i]=this._userSelect,delete this._userSelect)}})}o.extend(o.DomUtil,{disableImageDrag:function(){o.DomEvent.on(t,"dragstart",o.DomEvent.preventDefault)},enableImageDrag:function(){o.DomEvent.off(t,"dragstart",o.DomEvent.preventDefault)}})}(),o.LatLng=function(t,e,n){if(t=parseFloat(t),e=parseFloat(e),isNaN(t)||isNaN(e))throw new Error("Invalid LatLng object: ("+t+", "+e+")");this.lat=t,this.lng=e,n!==i&&(this.alt=parseFloat(n))},o.extend(o.LatLng,{DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI,MAX_MARGIN:1e-9}),o.LatLng.prototype={equals:function(t){if(!t)return!1;t=o.latLng(t);var e=Math.max(Math.abs(this.lat-t.lat),Math.abs(this.lng-t.lng));return e<=o.LatLng.MAX_MARGIN},toString:function(t){return"LatLng("+o.Util.formatNum(this.lat,t)+", "+o.Util.formatNum(this.lng,t)+")"},distanceTo:function(t){t=o.latLng(t);var e=6378137,i=o.LatLng.DEG_TO_RAD,n=(t.lat-this.lat)*i,s=(t.lng-this.lng)*i,a=this.lat*i,r=t.lat*i,h=Math.sin(n/2),l=Math.sin(s/2),u=h*h+l*l*Math.cos(a)*Math.cos(r);return 2*e*Math.atan2(Math.sqrt(u),Math.sqrt(1-u))},wrap:function(t,e){var i=this.lng;return t=t||-180,e=e||180,i=(i+e)%(e-t)+(t>i||i===e?e:t),new o.LatLng(this.lat,i)}},o.latLng=function(t,e){return t instanceof o.LatLng?t:o.Util.isArray(t)?"number"==typeof t[0]||"string"==typeof t[0]?new o.LatLng(t[0],t[1],t[2]):null:t===i||null===t?t:"object"==typeof t&&"lat"in t?new o.LatLng(t.lat,"lng"in t?t.lng:t.lon):e===i?null:new o.LatLng(t,e)},o.LatLngBounds=function(t,e){if(t)for(var i=e?[t,e]:t,n=0,o=i.length;o>n;n++)this.extend(i[n])},o.LatLngBounds.prototype={extend:function(t){if(!t)return this;var e=o.latLng(t);return t=null!==e?e:o.latLngBounds(t),t instanceof o.LatLng?this._southWest||this._northEast?(this._southWest.lat=Math.min(t.lat,this._southWest.lat),this._southWest.lng=Math.min(t.lng,this._southWest.lng),this._northEast.lat=Math.max(t.lat,this._northEast.lat),this._northEast.lng=Math.max(t.lng,this._northEast.lng)):(this._southWest=new o.LatLng(t.lat,t.lng),this._northEast=new o.LatLng(t.lat,t.lng)):t instanceof o.LatLngBounds&&(this.extend(t._southWest),this.extend(t._northEast)),this},pad:function(t){var e=this._southWest,i=this._northEast,n=Math.abs(e.lat-i.lat)*t,s=Math.abs(e.lng-i.lng)*t;return new o.LatLngBounds(new o.LatLng(e.lat-n,e.lng-s),new o.LatLng(i.lat+n,i.lng+s))},getCenter:function(){return new o.LatLng((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new o.LatLng(this.getNorth(),this.getWest())},getSouthEast:function(){return new o.LatLng(this.getSouth(),this.getEast())},getWest:function(){return this._southWest.lng},getSouth:function(){return this._southWest.lat},getEast:function(){return this._northEast.lng},getNorth:function(){return this._northEast.lat},contains:function(t){t="number"==typeof t[0]||t instanceof o.LatLng?o.latLng(t):o.latLngBounds(t);var e,i,n=this._southWest,s=this._northEast;return t instanceof o.LatLngBounds?(e=t.getSouthWest(),i=t.getNorthEast()):e=i=t,e.lat>=n.lat&&i.lat<=s.lat&&e.lng>=n.lng&&i.lng<=s.lng},intersects:function(t){t=o.latLngBounds(t);var e=this._southWest,i=this._northEast,n=t.getSouthWest(),s=t.getNorthEast(),a=s.lat>=e.lat&&n.lat<=i.lat,r=s.lng>=e.lng&&n.lng<=i.lng;return a&&r},toBBoxString:function(){return[this.getWest(),this.getSouth(),this.getEast(),this.getNorth()].join(",")},equals:function(t){return t?(t=o.latLngBounds(t),this._southWest.equals(t.getSouthWest())&&this._northEast.equals(t.getNorthEast())):!1},isValid:function(){return!(!this._southWest||!this._northEast)}},o.latLngBounds=function(t,e){return!t||t instanceof o.LatLngBounds?t:new o.LatLngBounds(t,e)},o.Projection={},o.Projection.SphericalMercator={MAX_LATITUDE:85.0511287798,project:function(t){var e=o.LatLng.DEG_TO_RAD,i=this.MAX_LATITUDE,n=Math.max(Math.min(i,t.lat),-i),s=t.lng*e,a=n*e;return a=Math.log(Math.tan(Math.PI/4+a/2)),new o.Point(s,a)},unproject:function(t){var e=o.LatLng.RAD_TO_DEG,i=t.x*e,n=(2*Math.atan(Math.exp(t.y))-Math.PI/2)*e;return new o.LatLng(n,i)}},o.Projection.LonLat={project:function(t){return new o.Point(t.lng,t.lat)},unproject:function(t){return new o.LatLng(t.y,t.x)}},o.CRS={latLngToPoint:function(t,e){var i=this.projection.project(t),n=this.scale(e);return this.transformation._transform(i,n)},pointToLatLng:function(t,e){var i=this.scale(e),n=this.transformation.untransform(t,i);return this.projection.unproject(n)},project:function(t){return this.projection.project(t)},scale:function(t){return 256*Math.pow(2,t)},getSize:function(t){var e=this.scale(t);return o.point(e,e)}},o.CRS.Simple=o.extend({},o.CRS,{projection:o.Projection.LonLat,transformation:new o.Transformation(1,0,-1,0),scale:function(t){return Math.pow(2,t)}}),o.CRS.EPSG3857=o.extend({},o.CRS,{code:"EPSG:3857",projection:o.Projection.SphericalMercator,transformation:new o.Transformation(.5/Math.PI,.5,-.5/Math.PI,.5),project:function(t){var e=this.projection.project(t),i=6378137;return e.multiplyBy(i)}}),o.CRS.EPSG900913=o.extend({},o.CRS.EPSG3857,{code:"EPSG:900913"}),o.CRS.EPSG4326=o.extend({},o.CRS,{code:"EPSG:4326",projection:o.Projection.LonLat,transformation:new o.Transformation(1/360,.5,-1/360,.5)}),o.Map=o.Class.extend({includes:o.Mixin.Events,options:{crs:o.CRS.EPSG3857,fadeAnimation:o.DomUtil.TRANSITION&&!o.Browser.android23,trackResize:!0,markerZoomAnimation:o.DomUtil.TRANSITION&&o.Browser.any3d},initialize:function(t,e){e=o.setOptions(this,e),this._initContainer(t),this._initLayout(),this._onResize=o.bind(this._onResize,this),this._initEvents(),e.maxBounds&&this.setMaxBounds(e.maxBounds),e.center&&e.zoom!==i&&this.setView(o.latLng(e.center),e.zoom,{reset:!0}),this._handlers=[],this._layers={},this._zoomBoundLayers={},this._tileLayersNum=0,this.callInitHooks(),this._addLayers(e.layers)},setView:function(t,e){return e=e===i?this.getZoom():e,this._resetView(o.latLng(t),this._limitZoom(e)),this},setZoom:function(t,e){return this._loaded?this.setView(this.getCenter(),t,{zoom:e}):(this._zoom=this._limitZoom(t),this)},zoomIn:function(t,e){return this.setZoom(this._zoom+(t||1),e)},zoomOut:function(t,e){return this.setZoom(this._zoom-(t||1),e)},setZoomAround:function(t,e,i){var n=this.getZoomScale(e),s=this.getSize().divideBy(2),a=t instanceof o.Point?t:this.latLngToContainerPoint(t),r=a.subtract(s).multiplyBy(1-1/n),h=this.containerPointToLatLng(s.add(r));return this.setView(h,e,{zoom:i})},fitBounds:function(t,e){e=e||{},t=t.getBounds?t.getBounds():o.latLngBounds(t);var i=o.point(e.paddingTopLeft||e.padding||[0,0]),n=o.point(e.paddingBottomRight||e.padding||[0,0]),s=this.getBoundsZoom(t,!1,i.add(n));s=e.maxZoom?Math.min(e.maxZoom,s):s;var a=n.subtract(i).divideBy(2),r=this.project(t.getSouthWest(),s),h=this.project(t.getNorthEast(),s),l=this.unproject(r.add(h).divideBy(2).add(a),s);return this.setView(l,s,e)},fitWorld:function(t){return this.fitBounds([[-90,-180],[90,180]],t)},panTo:function(t,e){return this.setView(t,this._zoom,{pan:e})},panBy:function(t){return this.fire("movestart"),this._rawPanBy(o.point(t)),this.fire("move"),this.fire("moveend")},setMaxBounds:function(t){return t=o.latLngBounds(t),this.options.maxBounds=t,t?(this._loaded&&this._panInsideMaxBounds(),this.on("moveend",this._panInsideMaxBounds,this)):this.off("moveend",this._panInsideMaxBounds,this)},panInsideBounds:function(t,e){var i=this.getCenter(),n=this._limitCenter(i,this._zoom,t);return i.equals(n)?this:this.panTo(n,e)},addLayer:function(t){var e=o.stamp(t);return this._layers[e]?this:(this._layers[e]=t,!t.options||isNaN(t.options.maxZoom)&&isNaN(t.options.minZoom)||(this._zoomBoundLayers[e]=t,this._updateZoomLevels()),this.options.zoomAnimation&&o.TileLayer&&t instanceof o.TileLayer&&(this._tileLayersNum++,this._tileLayersToLoad++,t.on("load",this._onTileLayerLoad,this)),this._loaded&&this._layerAdd(t),this)},removeLayer:function(t){var e=o.stamp(t);return this._layers[e]?(this._loaded&&t.onRemove(this),delete this._layers[e],this._loaded&&this.fire("layerremove",{layer:t}),this._zoomBoundLayers[e]&&(delete this._zoomBoundLayers[e],this._updateZoomLevels()),this.options.zoomAnimation&&o.TileLayer&&t instanceof o.TileLayer&&(this._tileLayersNum--,this._tileLayersToLoad--,t.off("load",this._onTileLayerLoad,this)),this):this},hasLayer:function(t){return t?o.stamp(t)in this._layers:!1},eachLayer:function(t,e){for(var i in this._layers)t.call(e,this._layers[i]);return this},invalidateSize:function(t){if(!this._loaded)return this;t=o.extend({animate:!1,pan:!0},t===!0?{animate:!0}:t);var e=this.getSize();this._sizeChanged=!0,this._initialCenter=null;var i=this.getSize(),n=e.divideBy(2).round(),s=i.divideBy(2).round(),a=n.subtract(s);return a.x||a.y?(t.animate&&t.pan?this.panBy(a):(t.pan&&this._rawPanBy(a),this.fire("move"),t.debounceMoveend?(clearTimeout(this._sizeTimer),this._sizeTimer=setTimeout(o.bind(this.fire,this,"moveend"),200)):this.fire("moveend")),this.fire("resize",{oldSize:e,newSize:i})):this},addHandler:function(t,e){if(!e)return this;var i=this[t]=new e(this);return this._handlers.push(i),this.options[t]&&i.enable(),this},remove:function(){this._loaded&&this.fire("unload"),this._initEvents("off");try{delete this._container._leaflet}catch(t){this._container._leaflet=i}return this._clearPanes(),this._clearControlPos&&this._clearControlPos(),this._clearHandlers(),this},getCenter:function(){return this._checkIfLoaded(),this._initialCenter&&!this._moved()?this._initialCenter:this.layerPointToLatLng(this._getCenterLayerPoint())},getZoom:function(){return this._zoom},getBounds:function(){var t=this.getPixelBounds(),e=this.unproject(t.getBottomLeft()),i=this.unproject(t.getTopRight());return new o.LatLngBounds(e,i)},getMinZoom:function(){return this.options.minZoom===i?this._layersMinZoom===i?0:this._layersMinZoom:this.options.minZoom},getMaxZoom:function(){return this.options.maxZoom===i?this._layersMaxZoom===i?1/0:this._layersMaxZoom:this.options.maxZoom},getBoundsZoom:function(t,e,i){t=o.latLngBounds(t);var n,s=this.getMinZoom()-(e?1:0),a=this.getMaxZoom(),r=this.getSize(),h=t.getNorthWest(),l=t.getSouthEast(),u=!0;i=o.point(i||[0,0]);do s++,n=this.project(l,s).subtract(this.project(h,s)).add(i),u=e?n.x<r.x||n.y<r.y:r.contains(n);while(u&&a>=s);return u&&e?null:e?s:s-1},getSize:function(){return(!this._size||this._sizeChanged)&&(this._size=new o.Point(this._container.clientWidth,this._container.clientHeight),this._sizeChanged=!1),this._size.clone()},getPixelBounds:function(){var t=this._getTopLeftPoint();return new o.Bounds(t,t.add(this.getSize()))},getPixelOrigin:function(){return this._checkIfLoaded(),this._initialTopLeftPoint},getPanes:function(){return this._panes},getContainer:function(){return this._container},getZoomScale:function(t){var e=this.options.crs;return e.scale(t)/e.scale(this._zoom)},getScaleZoom:function(t){return this._zoom+Math.log(t)/Math.LN2},project:function(t,e){return e=e===i?this._zoom:e,this.options.crs.latLngToPoint(o.latLng(t),e)},unproject:function(t,e){return e=e===i?this._zoom:e,this.options.crs.pointToLatLng(o.point(t),e)},layerPointToLatLng:function(t){var e=o.point(t).add(this.getPixelOrigin());return this.unproject(e)},latLngToLayerPoint:function(t){var e=this.project(o.latLng(t))._round();return e._subtract(this.getPixelOrigin())},containerPointToLayerPoint:function(t){return o.point(t).subtract(this._getMapPanePos())},layerPointToContainerPoint:function(t){return o.point(t).add(this._getMapPanePos())},containerPointToLatLng:function(t){var e=this.containerPointToLayerPoint(o.point(t));return this.layerPointToLatLng(e)},latLngToContainerPoint:function(t){return this.layerPointToContainerPoint(this.latLngToLayerPoint(o.latLng(t)))},mouseEventToContainerPoint:function(t){return o.DomEvent.getMousePosition(t,this._container)},mouseEventToLayerPoint:function(t){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(t))},mouseEventToLatLng:function(t){return this.layerPointToLatLng(this.mouseEventToLayerPoint(t))},_initContainer:function(t){var e=this._container=o.DomUtil.get(t);if(!e)throw new Error("Map container not found.");if(e._leaflet)throw new Error("Map container is already initialized.");e._leaflet=!0},_initLayout:function(){var t=this._container;o.DomUtil.addClass(t,"leaflet-container"+(o.Browser.touch?" leaflet-touch":"")+(o.Browser.retina?" leaflet-retina":"")+(o.Browser.ielt9?" leaflet-oldie":"")+(this.options.fadeAnimation?" leaflet-fade-anim":""));var e=o.DomUtil.getStyle(t,"position");"absolute"!==e&&"relative"!==e&&"fixed"!==e&&(t.style.position="relative"),this._initPanes(),this._initControlPos&&this._initControlPos()},_initPanes:function(){var t=this._panes={};this._mapPane=t.mapPane=this._createPane("leaflet-map-pane",this._container),this._tilePane=t.tilePane=this._createPane("leaflet-tile-pane",this._mapPane),t.objectsPane=this._createPane("leaflet-objects-pane",this._mapPane),t.shadowPane=this._createPane("leaflet-shadow-pane"),t.overlayPane=this._createPane("leaflet-overlay-pane"),t.markerPane=this._createPane("leaflet-marker-pane"),t.popupPane=this._createPane("leaflet-popup-pane");var e=" leaflet-zoom-hide";this.options.markerZoomAnimation||(o.DomUtil.addClass(t.markerPane,e),o.DomUtil.addClass(t.shadowPane,e),o.DomUtil.addClass(t.popupPane,e))},_createPane:function(t,e){return o.DomUtil.create("div",t,e||this._panes.objectsPane)},_clearPanes:function(){this._container.removeChild(this._mapPane)},_addLayers:function(t){t=t?o.Util.isArray(t)?t:[t]:[];for(var e=0,i=t.length;i>e;e++)this.addLayer(t[e])},_resetView:function(t,e,i,n){var s=this._zoom!==e;n||(this.fire("movestart"),s&&this.fire("zoomstart")),this._zoom=e,this._initialCenter=t,this._initialTopLeftPoint=this._getNewTopLeftPoint(t),i?this._initialTopLeftPoint._add(this._getMapPanePos()):o.DomUtil.setPosition(this._mapPane,new o.Point(0,0)),this._tileLayersToLoad=this._tileLayersNum;var a=!this._loaded;this._loaded=!0,this.fire("viewreset",{hard:!i}),a&&(this.fire("load"),this.eachLayer(this._layerAdd,this)),this.fire("move"),(s||n)&&this.fire("zoomend"),this.fire("moveend",{hard:!i})},_rawPanBy:function(t){o.DomUtil.setPosition(this._mapPane,this._getMapPanePos().subtract(t))},_getZoomSpan:function(){return this.getMaxZoom()-this.getMinZoom()},_updateZoomLevels:function(){var t,e=1/0,n=-(1/0),o=this._getZoomSpan();for(t in this._zoomBoundLayers){var s=this._zoomBoundLayers[t];isNaN(s.options.minZoom)||(e=Math.min(e,s.options.minZoom)),isNaN(s.options.maxZoom)||(n=Math.max(n,s.options.maxZoom))}t===i?this._layersMaxZoom=this._layersMinZoom=i:(this._layersMaxZoom=n,this._layersMinZoom=e),o!==this._getZoomSpan()&&this.fire("zoomlevelschange")},_panInsideMaxBounds:function(){this.panInsideBounds(this.options.maxBounds)},_checkIfLoaded:function(){if(!this._loaded)throw new Error("Set map center and zoom first.")},_initEvents:function(e){if(o.DomEvent){e=e||"on",o.DomEvent[e](this._container,"click",this._onMouseClick,this);var i,n,s=["dblclick","mousedown","mouseup","mouseenter","mouseleave","mousemove","contextmenu"];for(i=0,n=s.length;n>i;i++)o.DomEvent[e](this._container,s[i],this._fireMouseEvent,this);this.options.trackResize&&o.DomEvent[e](t,"resize",this._onResize,this)}},_onResize:function(){o.Util.cancelAnimFrame(this._resizeRequest),this._resizeRequest=o.Util.requestAnimFrame(function(){this.invalidateSize({debounceMoveend:!0})},this,!1,this._container)},_onMouseClick:function(t){!this._loaded||!t._simulated&&(this.dragging&&this.dragging.moved()||this.boxZoom&&this.boxZoom.moved())||o.DomEvent._skipped(t)||(this.fire("preclick"),this._fireMouseEvent(t))},_fireMouseEvent:function(t){if(this._loaded&&!o.DomEvent._skipped(t)){var e=t.type;if(e="mouseenter"===e?"mouseover":"mouseleave"===e?"mouseout":e,this.hasEventListeners(e)){"contextmenu"===e&&o.DomEvent.preventDefault(t);var i=this.mouseEventToContainerPoint(t),n=this.containerPointToLayerPoint(i),s=this.layerPointToLatLng(n);this.fire(e,{latlng:s,layerPoint:n,containerPoint:i,originalEvent:t})}}},_onTileLayerLoad:function(){this._tileLayersToLoad--,this._tileLayersNum&&!this._tileLayersToLoad&&this.fire("tilelayersload")},_clearHandlers:function(){for(var t=0,e=this._handlers.length;e>t;t++)this._handlers[t].disable()},whenReady:function(t,e){return this._loaded?t.call(e||this,this):this.on("load",t,e),this},_layerAdd:function(t){t.onAdd(this),this.fire("layeradd",{layer:t})},_getMapPanePos:function(){return o.DomUtil.getPosition(this._mapPane)},_moved:function(){var t=this._getMapPanePos();return t&&!t.equals([0,0])},_getTopLeftPoint:function(){return this.getPixelOrigin().subtract(this._getMapPanePos())},_getNewTopLeftPoint:function(t,e){var i=this.getSize()._divideBy(2);return this.project(t,e)._subtract(i)._round()},_latLngToNewLayerPoint:function(t,e,i){var n=this._getNewTopLeftPoint(i,e).add(this._getMapPanePos());return this.project(t,e)._subtract(n)},_getCenterLayerPoint:function(){return this.containerPointToLayerPoint(this.getSize()._divideBy(2))},_getCenterOffset:function(t){return this.latLngToLayerPoint(t).subtract(this._getCenterLayerPoint())},_limitCenter:function(t,e,i){if(!i)return t;var n=this.project(t,e),s=this.getSize().divideBy(2),a=new o.Bounds(n.subtract(s),n.add(s)),r=this._getBoundsOffset(a,i,e);return this.unproject(n.add(r),e)},_limitOffset:function(t,e){if(!e)return t;var i=this.getPixelBounds(),n=new o.Bounds(i.min.add(t),i.max.add(t));return t.add(this._getBoundsOffset(n,e))},_getBoundsOffset:function(t,e,i){var n=this.project(e.getNorthWest(),i).subtract(t.min),s=this.project(e.getSouthEast(),i).subtract(t.max),a=this._rebound(n.x,-s.x),r=this._rebound(n.y,-s.y);return new o.Point(a,r)},_rebound:function(t,e){return t+e>0?Math.round(t-e)/2:Math.max(0,Math.ceil(t))-Math.max(0,Math.floor(e))},_limitZoom:function(t){var e=this.getMinZoom(),i=this.getMaxZoom();return Math.max(e,Math.min(i,t))}}),o.map=function(t,e){return new o.Map(t,e)},o.Projection.Mercator={MAX_LATITUDE:85.0840591556,R_MINOR:6356752.314245179,R_MAJOR:6378137,project:function(t){var e=o.LatLng.DEG_TO_RAD,i=this.MAX_LATITUDE,n=Math.max(Math.min(i,t.lat),-i),s=this.R_MAJOR,a=this.R_MINOR,r=t.lng*e*s,h=n*e,l=a/s,u=Math.sqrt(1-l*l),c=u*Math.sin(h);c=Math.pow((1-c)/(1+c),.5*u);var d=Math.tan(.5*(.5*Math.PI-h))/c;return h=-s*Math.log(d),new o.Point(r,h)},unproject:function(t){for(var e,i=o.LatLng.RAD_TO_DEG,n=this.R_MAJOR,s=this.R_MINOR,a=t.x*i/n,r=s/n,h=Math.sqrt(1-r*r),l=Math.exp(-t.y/n),u=Math.PI/2-2*Math.atan(l),c=15,d=1e-7,p=c,_=.1;Math.abs(_)>d&&--p>0;)e=h*Math.sin(u),_=Math.PI/2-2*Math.atan(l*Math.pow((1-e)/(1+e),.5*h))-u,u+=_;return new o.LatLng(u*i,a)}},o.CRS.EPSG3395=o.extend({},o.CRS,{code:"EPSG:3395",projection:o.Projection.Mercator,
|
7 |
+
transformation:function(){var t=o.Projection.Mercator,e=t.R_MAJOR,i=.5/(Math.PI*e);return new o.Transformation(i,.5,-i,.5)}()}),o.TileLayer=o.Class.extend({includes:o.Mixin.Events,options:{minZoom:0,maxZoom:18,tileSize:256,subdomains:"abc",errorTileUrl:"",attribution:"",zoomOffset:0,opacity:1,unloadInvisibleTiles:o.Browser.mobile,updateWhenIdle:o.Browser.mobile},initialize:function(t,e){e=o.setOptions(this,e),e.detectRetina&&o.Browser.retina&&e.maxZoom>0&&(e.tileSize=Math.floor(e.tileSize/2),e.zoomOffset++,e.minZoom>0&&e.minZoom--,this.options.maxZoom--),e.bounds&&(e.bounds=o.latLngBounds(e.bounds)),this._url=t;var i=this.options.subdomains;"string"==typeof i&&(this.options.subdomains=i.split(""))},onAdd:function(t){this._map=t,this._animated=t._zoomAnimated,this._initContainer(),t.on({viewreset:this._reset,moveend:this._update},this),this._animated&&t.on({zoomanim:this._animateZoom,zoomend:this._endZoomAnim},this),this.options.updateWhenIdle||(this._limitedUpdate=o.Util.limitExecByInterval(this._update,150,this),t.on("move",this._limitedUpdate,this)),this._reset(),this._update()},addTo:function(t){return t.addLayer(this),this},onRemove:function(t){this._container.parentNode.removeChild(this._container),t.off({viewreset:this._reset,moveend:this._update},this),this._animated&&t.off({zoomanim:this._animateZoom,zoomend:this._endZoomAnim},this),this.options.updateWhenIdle||t.off("move",this._limitedUpdate,this),this._container=null,this._map=null},bringToFront:function(){var t=this._map._panes.tilePane;return this._container&&(t.appendChild(this._container),this._setAutoZIndex(t,Math.max)),this},bringToBack:function(){var t=this._map._panes.tilePane;return this._container&&(t.insertBefore(this._container,t.firstChild),this._setAutoZIndex(t,Math.min)),this},getAttribution:function(){return this.options.attribution},getContainer:function(){return this._container},setOpacity:function(t){return this.options.opacity=t,this._map&&this._updateOpacity(),this},setZIndex:function(t){return this.options.zIndex=t,this._updateZIndex(),this},setUrl:function(t,e){return this._url=t,e||this.redraw(),this},redraw:function(){return this._map&&(this._reset({hard:!0}),this._update()),this},_updateZIndex:function(){this._container&&this.options.zIndex!==i&&(this._container.style.zIndex=this.options.zIndex)},_setAutoZIndex:function(t,e){var i,n,o,s=t.children,a=-e(1/0,-(1/0));for(n=0,o=s.length;o>n;n++)s[n]!==this._container&&(i=parseInt(s[n].style.zIndex,10),isNaN(i)||(a=e(a,i)));this.options.zIndex=this._container.style.zIndex=(isFinite(a)?a:0)+e(1,-1)},_updateOpacity:function(){var t,e=this._tiles;if(o.Browser.ielt9)for(t in e)o.DomUtil.setOpacity(e[t],this.options.opacity);else o.DomUtil.setOpacity(this._container,this.options.opacity)},_initContainer:function(){var t=this._map._panes.tilePane;if(!this._container){if(this._container=o.DomUtil.create("div","leaflet-layer"),this._updateZIndex(),this._animated){var e="leaflet-tile-container";this._bgBuffer=o.DomUtil.create("div",e,this._container),this._tileContainer=o.DomUtil.create("div",e,this._container)}else this._tileContainer=this._container;t.appendChild(this._container),this.options.opacity<1&&this._updateOpacity()}},_reset:function(t){for(var e in this._tiles)this.fire("tileunload",{tile:this._tiles[e]});this._tiles={},this._tilesToLoad=0,this.options.reuseTiles&&(this._unusedTiles=[]),this._tileContainer.innerHTML="",this._animated&&t&&t.hard&&this._clearBgBuffer(),this._initContainer()},_getTileSize:function(){var t=this._map,e=t.getZoom()+this.options.zoomOffset,i=this.options.maxNativeZoom,n=this.options.tileSize;return i&&e>i&&(n=Math.round(t.getZoomScale(e)/t.getZoomScale(i)*n)),n},_update:function(){if(this._map){var t=this._map,e=t.getPixelBounds(),i=t.getZoom(),n=this._getTileSize();if(!(i>this.options.maxZoom||i<this.options.minZoom)){var s=o.bounds(e.min.divideBy(n)._floor(),e.max.divideBy(n)._floor());this._addTilesFromCenterOut(s),(this.options.unloadInvisibleTiles||this.options.reuseTiles)&&this._removeOtherTiles(s)}}},_addTilesFromCenterOut:function(t){var i,n,s,a=[],r=t.getCenter();for(i=t.min.y;i<=t.max.y;i++)for(n=t.min.x;n<=t.max.x;n++)s=new o.Point(n,i),this._tileShouldBeLoaded(s)&&a.push(s);var h=a.length;if(0!==h){a.sort(function(t,e){return t.distanceTo(r)-e.distanceTo(r)});var l=e.createDocumentFragment();for(this._tilesToLoad||this.fire("loading"),this._tilesToLoad+=h,n=0;h>n;n++)this._addTile(a[n],l);this._tileContainer.appendChild(l)}},_tileShouldBeLoaded:function(t){if(t.x+":"+t.y in this._tiles)return!1;var e=this.options;if(!e.continuousWorld){var i=this._getWrapTileNum();if(e.noWrap&&(t.x<0||t.x>=i.x)||t.y<0||t.y>=i.y)return!1}if(e.bounds){var n=this._getTileSize(),o=t.multiplyBy(n),s=o.add([n,n]),a=this._map.unproject(o),r=this._map.unproject(s);if(e.continuousWorld||e.noWrap||(a=a.wrap(),r=r.wrap()),!e.bounds.intersects([a,r]))return!1}return!0},_removeOtherTiles:function(t){var e,i,n,o;for(o in this._tiles)e=o.split(":"),i=parseInt(e[0],10),n=parseInt(e[1],10),(i<t.min.x||i>t.max.x||n<t.min.y||n>t.max.y)&&this._removeTile(o)},_removeTile:function(t){var e=this._tiles[t];this.fire("tileunload",{tile:e,url:e.src}),this.options.reuseTiles?(o.DomUtil.removeClass(e,"leaflet-tile-loaded"),this._unusedTiles.push(e)):e.parentNode===this._tileContainer&&this._tileContainer.removeChild(e),o.Browser.android||(e.onload=null,e.src=o.Util.emptyImageUrl),delete this._tiles[t]},_addTile:function(t,e){var i=this._getTilePos(t),n=this._getTile();o.DomUtil.setPosition(n,i,o.Browser.chrome),this._tiles[t.x+":"+t.y]=n,this._loadTile(n,t),n.parentNode!==this._tileContainer&&e.appendChild(n)},_getZoomForUrl:function(){var t=this.options,e=this._map.getZoom();return t.zoomReverse&&(e=t.maxZoom-e),e+=t.zoomOffset,t.maxNativeZoom?Math.min(e,t.maxNativeZoom):e},_getTilePos:function(t){var e=this._map.getPixelOrigin(),i=this._getTileSize();return t.multiplyBy(i).subtract(e)},getTileUrl:function(t){return o.Util.template(this._url,o.extend({s:this._getSubdomain(t),z:t.z,x:t.x,y:t.y},this.options))},_getWrapTileNum:function(){var t=this._map.options.crs,e=t.getSize(this._map.getZoom());return e.divideBy(this._getTileSize())._floor()},_adjustTilePoint:function(t){var e=this._getWrapTileNum();this.options.continuousWorld||this.options.noWrap||(t.x=(t.x%e.x+e.x)%e.x),this.options.tms&&(t.y=e.y-t.y-1),t.z=this._getZoomForUrl()},_getSubdomain:function(t){var e=Math.abs(t.x+t.y)%this.options.subdomains.length;return this.options.subdomains[e]},_getTile:function(){if(this.options.reuseTiles&&this._unusedTiles.length>0){var t=this._unusedTiles.pop();return this._resetTile(t),t}return this._createTile()},_resetTile:function(){},_createTile:function(){var t=o.DomUtil.create("img","leaflet-tile");return t.style.width=t.style.height=this._getTileSize()+"px",t.galleryimg="no",t.onselectstart=t.onmousemove=o.Util.falseFn,o.Browser.ielt9&&this.options.opacity!==i&&o.DomUtil.setOpacity(t,this.options.opacity),o.Browser.mobileWebkit3d&&(t.style.WebkitBackfaceVisibility="hidden"),t},_loadTile:function(t,e){t._layer=this,t.onload=this._tileOnLoad,t.onerror=this._tileOnError,this._adjustTilePoint(e),t.src=this.getTileUrl(e),this.fire("tileloadstart",{tile:t,url:t.src})},_tileLoaded:function(){this._tilesToLoad--,this._animated&&o.DomUtil.addClass(this._tileContainer,"leaflet-zoom-animated"),this._tilesToLoad||(this.fire("load"),this._animated&&(clearTimeout(this._clearBgBufferTimer),this._clearBgBufferTimer=setTimeout(o.bind(this._clearBgBuffer,this),500)))},_tileOnLoad:function(){var t=this._layer;this.src!==o.Util.emptyImageUrl&&(o.DomUtil.addClass(this,"leaflet-tile-loaded"),t.fire("tileload",{tile:this,url:this.src})),t._tileLoaded()},_tileOnError:function(){var t=this._layer;t.fire("tileerror",{tile:this,url:this.src});var e=t.options.errorTileUrl;e&&(this.src=e),t._tileLoaded()}}),o.tileLayer=function(t,e){return new o.TileLayer(t,e)},o.TileLayer.WMS=o.TileLayer.extend({defaultWmsParams:{service:"WMS",request:"GetMap",version:"1.1.1",layers:"",styles:"",format:"image/jpeg",transparent:!1},initialize:function(t,e){this._url=t;var i=o.extend({},this.defaultWmsParams),n=e.tileSize||this.options.tileSize;e.detectRetina&&o.Browser.retina?i.width=i.height=2*n:i.width=i.height=n;for(var s in e)this.options.hasOwnProperty(s)||"crs"===s||(i[s]=e[s]);this.wmsParams=i,o.setOptions(this,e)},onAdd:function(t){this._crs=this.options.crs||t.options.crs,this._wmsVersion=parseFloat(this.wmsParams.version);var e=this._wmsVersion>=1.3?"crs":"srs";this.wmsParams[e]=this._crs.code,o.TileLayer.prototype.onAdd.call(this,t)},getTileUrl:function(t){var e=this._map,i=this.options.tileSize,n=t.multiplyBy(i),s=n.add([i,i]),a=this._crs.project(e.unproject(n,t.z)),r=this._crs.project(e.unproject(s,t.z)),h=this._wmsVersion>=1.3&&this._crs===o.CRS.EPSG4326?[r.y,a.x,a.y,r.x].join(","):[a.x,r.y,r.x,a.y].join(","),l=o.Util.template(this._url,{s:this._getSubdomain(t)});return l+o.Util.getParamString(this.wmsParams,l,!0)+"&BBOX="+h},setParams:function(t,e){return o.extend(this.wmsParams,t),e||this.redraw(),this}}),o.tileLayer.wms=function(t,e){return new o.TileLayer.WMS(t,e)},o.TileLayer.Canvas=o.TileLayer.extend({options:{async:!1},initialize:function(t){o.setOptions(this,t)},redraw:function(){this._map&&(this._reset({hard:!0}),this._update());for(var t in this._tiles)this._redrawTile(this._tiles[t]);return this},_redrawTile:function(t){this.drawTile(t,t._tilePoint,this._map._zoom)},_createTile:function(){var t=o.DomUtil.create("canvas","leaflet-tile");return t.width=t.height=this.options.tileSize,t.onselectstart=t.onmousemove=o.Util.falseFn,t},_loadTile:function(t,e){t._layer=this,t._tilePoint=e,this._redrawTile(t),this.options.async||this.tileDrawn(t)},drawTile:function(){},tileDrawn:function(t){this._tileOnLoad.call(t)}}),o.tileLayer.canvas=function(t){return new o.TileLayer.Canvas(t)},o.ImageOverlay=o.Class.extend({includes:o.Mixin.Events,options:{opacity:1},initialize:function(t,e,i){this._url=t,this._bounds=o.latLngBounds(e),o.setOptions(this,i)},onAdd:function(t){this._map=t,this._image||this._initImage(),t._panes.overlayPane.appendChild(this._image),t.on("viewreset",this._reset,this),t.options.zoomAnimation&&o.Browser.any3d&&t.on("zoomanim",this._animateZoom,this),this._reset()},onRemove:function(t){t.getPanes().overlayPane.removeChild(this._image),t.off("viewreset",this._reset,this),t.options.zoomAnimation&&t.off("zoomanim",this._animateZoom,this)},addTo:function(t){return t.addLayer(this),this},setOpacity:function(t){return this.options.opacity=t,this._updateOpacity(),this},bringToFront:function(){return this._image&&this._map._panes.overlayPane.appendChild(this._image),this},bringToBack:function(){var t=this._map._panes.overlayPane;return this._image&&t.insertBefore(this._image,t.firstChild),this},setUrl:function(t){this._url=t,this._image.src=this._url},getAttribution:function(){return this.options.attribution},_initImage:function(){this._image=o.DomUtil.create("img","leaflet-image-layer"),this._map.options.zoomAnimation&&o.Browser.any3d?o.DomUtil.addClass(this._image,"leaflet-zoom-animated"):o.DomUtil.addClass(this._image,"leaflet-zoom-hide"),this._updateOpacity(),o.extend(this._image,{galleryimg:"no",onselectstart:o.Util.falseFn,onmousemove:o.Util.falseFn,onload:o.bind(this._onImageLoad,this),src:this._url})},_animateZoom:function(t){var e=this._map,i=this._image,n=e.getZoomScale(t.zoom),s=this._bounds.getNorthWest(),a=this._bounds.getSouthEast(),r=e._latLngToNewLayerPoint(s,t.zoom,t.center),h=e._latLngToNewLayerPoint(a,t.zoom,t.center)._subtract(r),l=r._add(h._multiplyBy(.5*(1-1/n)));i.style[o.DomUtil.TRANSFORM]=o.DomUtil.getTranslateString(l)+" scale("+n+") "},_reset:function(){var t=this._image,e=this._map.latLngToLayerPoint(this._bounds.getNorthWest()),i=this._map.latLngToLayerPoint(this._bounds.getSouthEast())._subtract(e);o.DomUtil.setPosition(t,e),t.style.width=i.x+"px",t.style.height=i.y+"px"},_onImageLoad:function(){this.fire("load")},_updateOpacity:function(){o.DomUtil.setOpacity(this._image,this.options.opacity)}}),o.imageOverlay=function(t,e,i){return new o.ImageOverlay(t,e,i)},o.Icon=o.Class.extend({options:{className:""},initialize:function(t){o.setOptions(this,t)},createIcon:function(t){return this._createIcon("icon",t)},createShadow:function(t){return this._createIcon("shadow",t)},_createIcon:function(t,e){var i=this._getIconUrl(t);if(!i){if("icon"===t)throw new Error("iconUrl not set in Icon options (see the docs).");return null}var n;return n=e&&"IMG"===e.tagName?this._createImg(i,e):this._createImg(i),this._setIconStyles(n,t),n},_setIconStyles:function(t,e){var i,n=this.options,s=o.point(n[e+"Size"]);i="shadow"===e?o.point(n.shadowAnchor||n.iconAnchor):o.point(n.iconAnchor),!i&&s&&(i=s.divideBy(2,!0)),t.className="leaflet-marker-"+e+" "+n.className,i&&(t.style.marginLeft=-i.x+"px",t.style.marginTop=-i.y+"px"),s&&(t.style.width=s.x+"px",t.style.height=s.y+"px")},_createImg:function(t,i){return i=i||e.createElement("img"),i.src=t,i},_getIconUrl:function(t){return o.Browser.retina&&this.options[t+"RetinaUrl"]?this.options[t+"RetinaUrl"]:this.options[t+"Url"]}}),o.icon=function(t){return new o.Icon(t)},o.Icon.Default=o.Icon.extend({options:{iconSize:[25,41],iconAnchor:[12,41],popupAnchor:[1,-34],shadowSize:[41,41]},_getIconUrl:function(t){var e=t+"Url";if(this.options[e])return this.options[e];o.Browser.retina&&"icon"===t&&(t+="-2x");var i=o.Icon.Default.imagePath;if(!i)throw new Error("Couldn't autodetect L.Icon.Default.imagePath, set it manually.");return i+"/marker-"+t+".png"}}),o.Icon.Default.imagePath=function(){var t,i,n,o,s,a=e.getElementsByTagName("script"),r=/[\/^]leaflet[\-\._]?([\w\-\._]*)\.js\??/;for(t=0,i=a.length;i>t;t++)if(n=a[t].src,o=n.match(r))return s=n.split(r)[0],(s?s+"/":"")+"images"}(),o.Marker=o.Class.extend({includes:o.Mixin.Events,options:{icon:new o.Icon.Default,title:"",alt:"",clickable:!0,draggable:!1,keyboard:!0,zIndexOffset:0,opacity:1,riseOnHover:!1,riseOffset:250},initialize:function(t,e){o.setOptions(this,e),this._latlng=o.latLng(t)},onAdd:function(t){this._map=t,t.on("viewreset",this.update,this),this._initIcon(),this.update(),this.fire("add"),t.options.zoomAnimation&&t.options.markerZoomAnimation&&t.on("zoomanim",this._animateZoom,this)},addTo:function(t){return t.addLayer(this),this},onRemove:function(t){this.dragging&&this.dragging.disable(),this._removeIcon(),this._removeShadow(),this.fire("remove"),t.off({viewreset:this.update,zoomanim:this._animateZoom},this),this._map=null},getLatLng:function(){return this._latlng},setLatLng:function(t){return this._latlng=o.latLng(t),this.update(),this.fire("move",{latlng:this._latlng})},setZIndexOffset:function(t){return this.options.zIndexOffset=t,this.update(),this},setIcon:function(t){return this.options.icon=t,this._map&&(this._initIcon(),this.update()),this._popup&&this.bindPopup(this._popup),this},update:function(){return this._icon&&this._setPos(this._map.latLngToLayerPoint(this._latlng).round()),this},_initIcon:function(){var t=this.options,e=this._map,i=e.options.zoomAnimation&&e.options.markerZoomAnimation,n=i?"leaflet-zoom-animated":"leaflet-zoom-hide",s=t.icon.createIcon(this._icon),a=!1;s!==this._icon&&(this._icon&&this._removeIcon(),a=!0,t.title&&(s.title=t.title),t.alt&&(s.alt=t.alt)),o.DomUtil.addClass(s,n),t.keyboard&&(s.tabIndex="0"),this._icon=s,this._initInteraction(),t.riseOnHover&&o.DomEvent.on(s,"mouseover",this._bringToFront,this).on(s,"mouseout",this._resetZIndex,this);var r=t.icon.createShadow(this._shadow),h=!1;r!==this._shadow&&(this._removeShadow(),h=!0),r&&o.DomUtil.addClass(r,n),this._shadow=r,t.opacity<1&&this._updateOpacity();var l=this._map._panes;a&&l.markerPane.appendChild(this._icon),r&&h&&l.shadowPane.appendChild(this._shadow)},_removeIcon:function(){this.options.riseOnHover&&o.DomEvent.off(this._icon,"mouseover",this._bringToFront).off(this._icon,"mouseout",this._resetZIndex),this._map._panes.markerPane.removeChild(this._icon),this._icon=null},_removeShadow:function(){this._shadow&&this._map._panes.shadowPane.removeChild(this._shadow),this._shadow=null},_setPos:function(t){o.DomUtil.setPosition(this._icon,t),this._shadow&&o.DomUtil.setPosition(this._shadow,t),this._zIndex=t.y+this.options.zIndexOffset,this._resetZIndex()},_updateZIndex:function(t){this._icon.style.zIndex=this._zIndex+t},_animateZoom:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center).round();this._setPos(e)},_initInteraction:function(){if(this.options.clickable){var t=this._icon,e=["dblclick","mousedown","mouseover","mouseout","contextmenu"];o.DomUtil.addClass(t,"leaflet-clickable"),o.DomEvent.on(t,"click",this._onMouseClick,this),o.DomEvent.on(t,"keypress",this._onKeyPress,this);for(var i=0;i<e.length;i++)o.DomEvent.on(t,e[i],this._fireMouseEvent,this);o.Handler.MarkerDrag&&(this.dragging=new o.Handler.MarkerDrag(this),this.options.draggable&&this.dragging.enable())}},_onMouseClick:function(t){var e=this.dragging&&this.dragging.moved();(this.hasEventListeners(t.type)||e)&&o.DomEvent.stopPropagation(t),e||(this.dragging&&this.dragging._enabled||!this._map.dragging||!this._map.dragging.moved())&&this.fire(t.type,{originalEvent:t,latlng:this._latlng})},_onKeyPress:function(t){13===t.keyCode&&this.fire("click",{originalEvent:t,latlng:this._latlng})},_fireMouseEvent:function(t){this.fire(t.type,{originalEvent:t,latlng:this._latlng}),"contextmenu"===t.type&&this.hasEventListeners(t.type)&&o.DomEvent.preventDefault(t),"mousedown"!==t.type?o.DomEvent.stopPropagation(t):o.DomEvent.preventDefault(t)},setOpacity:function(t){return this.options.opacity=t,this._map&&this._updateOpacity(),this},_updateOpacity:function(){o.DomUtil.setOpacity(this._icon,this.options.opacity),this._shadow&&o.DomUtil.setOpacity(this._shadow,this.options.opacity)},_bringToFront:function(){this._updateZIndex(this.options.riseOffset)},_resetZIndex:function(){this._updateZIndex(0)}}),o.marker=function(t,e){return new o.Marker(t,e)},o.DivIcon=o.Icon.extend({options:{iconSize:[12,12],className:"leaflet-div-icon",html:!1},createIcon:function(t){var i=t&&"DIV"===t.tagName?t:e.createElement("div"),n=this.options;return n.html!==!1?i.innerHTML=n.html:i.innerHTML="",n.bgPos&&(i.style.backgroundPosition=-n.bgPos.x+"px "+-n.bgPos.y+"px"),this._setIconStyles(i,"icon"),i},createShadow:function(){return null}}),o.divIcon=function(t){return new o.DivIcon(t)},o.Map.mergeOptions({closePopupOnClick:!0}),o.Popup=o.Class.extend({includes:o.Mixin.Events,options:{minWidth:50,maxWidth:300,autoPan:!0,closeButton:!0,offset:[0,7],autoPanPadding:[5,5],keepInView:!1,className:"",zoomAnimation:!0},initialize:function(t,e){o.setOptions(this,t),this._source=e,this._animated=o.Browser.any3d&&this.options.zoomAnimation,this._isOpen=!1},onAdd:function(t){this._map=t,this._container||this._initLayout();var e=t.options.fadeAnimation;e&&o.DomUtil.setOpacity(this._container,0),t._panes.popupPane.appendChild(this._container),t.on(this._getEvents(),this),this.update(),e&&o.DomUtil.setOpacity(this._container,1),this.fire("open"),t.fire("popupopen",{popup:this}),this._source&&this._source.fire("popupopen",{popup:this})},addTo:function(t){return t.addLayer(this),this},openOn:function(t){return t.openPopup(this),this},onRemove:function(t){t._panes.popupPane.removeChild(this._container),o.Util.falseFn(this._container.offsetWidth),t.off(this._getEvents(),this),t.options.fadeAnimation&&o.DomUtil.setOpacity(this._container,0),this._map=null,this.fire("close"),t.fire("popupclose",{popup:this}),this._source&&this._source.fire("popupclose",{popup:this})},getLatLng:function(){return this._latlng},setLatLng:function(t){return this._latlng=o.latLng(t),this._map&&(this._updatePosition(),this._adjustPan()),this},getContent:function(){return this._content},setContent:function(t){return this._content=t,this.update(),this},update:function(){this._map&&(this._container.style.visibility="hidden",this._updateContent(),this._updateLayout(),this._updatePosition(),this._container.style.visibility="",this._adjustPan())},_getEvents:function(){var t={viewreset:this._updatePosition};return this._animated&&(t.zoomanim=this._zoomAnimation),("closeOnClick"in this.options?this.options.closeOnClick:this._map.options.closePopupOnClick)&&(t.preclick=this._close),this.options.keepInView&&(t.moveend=this._adjustPan),t},_close:function(){this._map&&this._map.closePopup(this)},_initLayout:function(){var t,e="leaflet-popup",i=e+" "+this.options.className+" leaflet-zoom-"+(this._animated?"animated":"hide"),n=this._container=o.DomUtil.create("div",i);this.options.closeButton&&(t=this._closeButton=o.DomUtil.create("a",e+"-close-button",n),t.href="#close",t.innerHTML="×",o.DomEvent.disableClickPropagation(t),o.DomEvent.on(t,"click",this._onCloseButtonClick,this));var s=this._wrapper=o.DomUtil.create("div",e+"-content-wrapper",n);o.DomEvent.disableClickPropagation(s),this._contentNode=o.DomUtil.create("div",e+"-content",s),o.DomEvent.disableScrollPropagation(this._contentNode),o.DomEvent.on(s,"contextmenu",o.DomEvent.stopPropagation),this._tipContainer=o.DomUtil.create("div",e+"-tip-container",n),this._tip=o.DomUtil.create("div",e+"-tip",this._tipContainer)},_updateContent:function(){if(this._content){if("string"==typeof this._content)this._contentNode.innerHTML=this._content;else{for(;this._contentNode.hasChildNodes();)this._contentNode.removeChild(this._contentNode.firstChild);this._contentNode.appendChild(this._content)}this.fire("contentupdate")}},_updateLayout:function(){var t=this._contentNode,e=t.style;e.width="",e.whiteSpace="nowrap";var i=t.offsetWidth;i=Math.min(i,this.options.maxWidth),i=Math.max(i,this.options.minWidth),e.width=i+1+"px",e.whiteSpace="",e.height="";var n=t.offsetHeight,s=this.options.maxHeight,a="leaflet-popup-scrolled";s&&n>s?(e.height=s+"px",o.DomUtil.addClass(t,a)):o.DomUtil.removeClass(t,a),this._containerWidth=this._container.offsetWidth},_updatePosition:function(){if(this._map){var t=this._map.latLngToLayerPoint(this._latlng),e=this._animated,i=o.point(this.options.offset);e&&o.DomUtil.setPosition(this._container,t),this._containerBottom=-i.y-(e?0:t.y),this._containerLeft=-Math.round(this._containerWidth/2)+i.x+(e?0:t.x),this._container.style.bottom=this._containerBottom+"px",this._container.style.left=this._containerLeft+"px"}},_zoomAnimation:function(t){var e=this._map._latLngToNewLayerPoint(this._latlng,t.zoom,t.center);o.DomUtil.setPosition(this._container,e)},_adjustPan:function(){if(this.options.autoPan){var t=this._map,e=this._container.offsetHeight,i=this._containerWidth,n=new o.Point(this._containerLeft,-e-this._containerBottom);this._animated&&n._add(o.DomUtil.getPosition(this._container));var s=t.layerPointToContainerPoint(n),a=o.point(this.options.autoPanPadding),r=o.point(this.options.autoPanPaddingTopLeft||a),h=o.point(this.options.autoPanPaddingBottomRight||a),l=t.getSize(),u=0,c=0;s.x+i+h.x>l.x&&(u=s.x+i-l.x+h.x),s.x-u-r.x<0&&(u=s.x-r.x),s.y+e+h.y>l.y&&(c=s.y+e-l.y+h.y),s.y-c-r.y<0&&(c=s.y-r.y),(u||c)&&t.fire("autopanstart").panBy([u,c])}},_onCloseButtonClick:function(t){this._close(),o.DomEvent.stop(t)}}),o.popup=function(t,e){return new o.Popup(t,e)},o.Map.include({openPopup:function(t,e,i){if(this.closePopup(),!(t instanceof o.Popup)){var n=t;t=new o.Popup(i).setLatLng(e).setContent(n)}return t._isOpen=!0,this._popup=t,this.addLayer(t)},closePopup:function(t){return t&&t!==this._popup||(t=this._popup,this._popup=null),t&&(this.removeLayer(t),t._isOpen=!1),this}}),o.Marker.include({openPopup:function(){return this._popup&&this._map&&!this._map.hasLayer(this._popup)&&(this._popup.setLatLng(this._latlng),this._map.openPopup(this._popup)),this},closePopup:function(){return this._popup&&this._popup._close(),this},togglePopup:function(){return this._popup&&(this._popup._isOpen?this.closePopup():this.openPopup()),this},bindPopup:function(t,e){var i=o.point(this.options.icon.options.popupAnchor||[0,0]);return i=i.add(o.Popup.prototype.options.offset),e&&e.offset&&(i=i.add(e.offset)),e=o.extend({offset:i},e),this._popupHandlersAdded||(this.on("click",this.togglePopup,this).on("remove",this.closePopup,this).on("move",this._movePopup,this),this._popupHandlersAdded=!0),t instanceof o.Popup?(o.setOptions(t,e),this._popup=t,t._source=this):this._popup=new o.Popup(e,this).setContent(t),this},setPopupContent:function(t){return this._popup&&this._popup.setContent(t),this},unbindPopup:function(){return this._popup&&(this._popup=null,this.off("click",this.togglePopup,this).off("remove",this.closePopup,this).off("move",this._movePopup,this),this._popupHandlersAdded=!1),this},getPopup:function(){return this._popup},_movePopup:function(t){this._popup.setLatLng(t.latlng)}}),o.LayerGroup=o.Class.extend({initialize:function(t){this._layers={};var e,i;if(t)for(e=0,i=t.length;i>e;e++)this.addLayer(t[e])},addLayer:function(t){var e=this.getLayerId(t);return this._layers[e]=t,this._map&&this._map.addLayer(t),this},removeLayer:function(t){var e=t in this._layers?t:this.getLayerId(t);return this._map&&this._layers[e]&&this._map.removeLayer(this._layers[e]),delete this._layers[e],this},hasLayer:function(t){return t?t in this._layers||this.getLayerId(t)in this._layers:!1},clearLayers:function(){return this.eachLayer(this.removeLayer,this),this},invoke:function(t){var e,i,n=Array.prototype.slice.call(arguments,1);for(e in this._layers)i=this._layers[e],i[t]&&i[t].apply(i,n);return this},onAdd:function(t){this._map=t,this.eachLayer(t.addLayer,t)},onRemove:function(t){this.eachLayer(t.removeLayer,t),this._map=null},addTo:function(t){return t.addLayer(this),this},eachLayer:function(t,e){for(var i in this._layers)t.call(e,this._layers[i]);return this},getLayer:function(t){return this._layers[t]},getLayers:function(){var t=[];for(var e in this._layers)t.push(this._layers[e]);return t},setZIndex:function(t){return this.invoke("setZIndex",t)},getLayerId:function(t){return o.stamp(t)}}),o.layerGroup=function(t){return new o.LayerGroup(t)},o.FeatureGroup=o.LayerGroup.extend({includes:o.Mixin.Events,statics:{EVENTS:"click dblclick mouseover mouseout mousemove contextmenu popupopen popupclose"},addLayer:function(t){return this.hasLayer(t)?this:("on"in t&&t.on(o.FeatureGroup.EVENTS,this._propagateEvent,this),o.LayerGroup.prototype.addLayer.call(this,t),this._popupContent&&t.bindPopup&&t.bindPopup(this._popupContent,this._popupOptions),this.fire("layeradd",{layer:t}))},removeLayer:function(t){return this.hasLayer(t)?(t in this._layers&&(t=this._layers[t]),"off"in t&&t.off(o.FeatureGroup.EVENTS,this._propagateEvent,this),o.LayerGroup.prototype.removeLayer.call(this,t),this._popupContent&&this.invoke("unbindPopup"),this.fire("layerremove",{layer:t})):this},bindPopup:function(t,e){return this._popupContent=t,this._popupOptions=e,this.invoke("bindPopup",t,e)},openPopup:function(t){for(var e in this._layers){this._layers[e].openPopup(t);break}return this},setStyle:function(t){return this.invoke("setStyle",t)},bringToFront:function(){return this.invoke("bringToFront")},bringToBack:function(){return this.invoke("bringToBack")},getBounds:function(){var t=new o.LatLngBounds;return this.eachLayer(function(e){t.extend(e instanceof o.Marker?e.getLatLng():e.getBounds())}),t},_propagateEvent:function(t){t=o.extend({layer:t.target,target:this},t),this.fire(t.type,t)}}),o.featureGroup=function(t){return new o.FeatureGroup(t)},o.Path=o.Class.extend({includes:[o.Mixin.Events],statics:{CLIP_PADDING:function(){var e=o.Browser.mobile?1280:2e3,i=(e/Math.max(t.outerWidth,t.outerHeight)-1)/2;return Math.max(0,Math.min(.5,i))}()},options:{stroke:!0,color:"#0033ff",dashArray:null,lineCap:null,lineJoin:null,weight:5,opacity:.5,fill:!1,fillColor:null,fillOpacity:.2,clickable:!0},initialize:function(t){o.setOptions(this,t)},onAdd:function(t){this._map=t,this._container||(this._initElements(),this._initEvents()),this.projectLatlngs(),this._updatePath(),this._container&&this._map._pathRoot.appendChild(this._container),this.fire("add"),t.on({viewreset:this.projectLatlngs,moveend:this._updatePath},this)},addTo:function(t){return t.addLayer(this),this},onRemove:function(t){t._pathRoot.removeChild(this._container),this.fire("remove"),this._map=null,o.Browser.vml&&(this._container=null,this._stroke=null,this._fill=null),t.off({viewreset:this.projectLatlngs,moveend:this._updatePath},this)},projectLatlngs:function(){},setStyle:function(t){return o.setOptions(this,t),this._container&&this._updateStyle(),this},redraw:function(){return this._map&&(this.projectLatlngs(),this._updatePath()),this}}),o.Map.include({_updatePathViewport:function(){var t=o.Path.CLIP_PADDING,e=this.getSize(),i=o.DomUtil.getPosition(this._mapPane),n=i.multiplyBy(-1)._subtract(e.multiplyBy(t)._round()),s=n.add(e.multiplyBy(1+2*t)._round());this._pathViewport=new o.Bounds(n,s)}}),o.Path.SVG_NS="http://www.w3.org/2000/svg",o.Browser.svg=!(!e.createElementNS||!e.createElementNS(o.Path.SVG_NS,"svg").createSVGRect),o.Path=o.Path.extend({statics:{SVG:o.Browser.svg},bringToFront:function(){var t=this._map._pathRoot,e=this._container;return e&&t.lastChild!==e&&t.appendChild(e),this},bringToBack:function(){var t=this._map._pathRoot,e=this._container,i=t.firstChild;return e&&i!==e&&t.insertBefore(e,i),this},getPathString:function(){},_createElement:function(t){return e.createElementNS(o.Path.SVG_NS,t)},_initElements:function(){this._map._initPathRoot(),this._initPath(),this._initStyle()},_initPath:function(){this._container=this._createElement("g"),this._path=this._createElement("path"),this.options.className&&o.DomUtil.addClass(this._path,this.options.className),this._container.appendChild(this._path)},_initStyle:function(){this.options.stroke&&(this._path.setAttribute("stroke-linejoin","round"),this._path.setAttribute("stroke-linecap","round")),this.options.fill&&this._path.setAttribute("fill-rule","evenodd"),this.options.pointerEvents&&this._path.setAttribute("pointer-events",this.options.pointerEvents),this.options.clickable||this.options.pointerEvents||this._path.setAttribute("pointer-events","none"),this._updateStyle()},_updateStyle:function(){this.options.stroke?(this._path.setAttribute("stroke",this.options.color),this._path.setAttribute("stroke-opacity",this.options.opacity),this._path.setAttribute("stroke-width",this.options.weight),this.options.dashArray?this._path.setAttribute("stroke-dasharray",this.options.dashArray):this._path.removeAttribute("stroke-dasharray"),this.options.lineCap&&this._path.setAttribute("stroke-linecap",this.options.lineCap),this.options.lineJoin&&this._path.setAttribute("stroke-linejoin",this.options.lineJoin)):this._path.setAttribute("stroke","none"),this.options.fill?(this._path.setAttribute("fill",this.options.fillColor||this.options.color),this._path.setAttribute("fill-opacity",this.options.fillOpacity)):this._path.setAttribute("fill","none")},_updatePath:function(){var t=this.getPathString();t||(t="M0 0"),this._path.setAttribute("d",t)},_initEvents:function(){if(this.options.clickable){(o.Browser.svg||!o.Browser.vml)&&o.DomUtil.addClass(this._path,"leaflet-clickable"),o.DomEvent.on(this._container,"click",this._onMouseClick,this);for(var t=["dblclick","mousedown","mouseover","mouseout","mousemove","contextmenu"],e=0;e<t.length;e++)o.DomEvent.on(this._container,t[e],this._fireMouseEvent,this)}},_onMouseClick:function(t){this._map.dragging&&this._map.dragging.moved()||this._fireMouseEvent(t)},_fireMouseEvent:function(t){if(this._map&&this.hasEventListeners(t.type)){var e=this._map,i=e.mouseEventToContainerPoint(t),n=e.containerPointToLayerPoint(i),s=e.layerPointToLatLng(n);this.fire(t.type,{latlng:s,layerPoint:n,containerPoint:i,originalEvent:t}),"contextmenu"===t.type&&o.DomEvent.preventDefault(t),"mousemove"!==t.type&&o.DomEvent.stopPropagation(t)}}}),o.Map.include({_initPathRoot:function(){this._pathRoot||(this._pathRoot=o.Path.prototype._createElement("svg"),this._panes.overlayPane.appendChild(this._pathRoot),this.options.zoomAnimation&&o.Browser.any3d?(o.DomUtil.addClass(this._pathRoot,"leaflet-zoom-animated"),
|
8 |
+
this.on({zoomanim:this._animatePathZoom,zoomend:this._endPathZoom})):o.DomUtil.addClass(this._pathRoot,"leaflet-zoom-hide"),this.on("moveend",this._updateSvgViewport),this._updateSvgViewport())},_animatePathZoom:function(t){var e=this.getZoomScale(t.zoom),i=this._getCenterOffset(t.center)._multiplyBy(-e)._add(this._pathViewport.min);this._pathRoot.style[o.DomUtil.TRANSFORM]=o.DomUtil.getTranslateString(i)+" scale("+e+") ",this._pathZooming=!0},_endPathZoom:function(){this._pathZooming=!1},_updateSvgViewport:function(){if(!this._pathZooming){this._updatePathViewport();var t=this._pathViewport,e=t.min,i=t.max,n=i.x-e.x,s=i.y-e.y,a=this._pathRoot,r=this._panes.overlayPane;o.Browser.mobileWebkit&&r.removeChild(a),o.DomUtil.setPosition(a,e),a.setAttribute("width",n),a.setAttribute("height",s),a.setAttribute("viewBox",[e.x,e.y,n,s].join(" ")),o.Browser.mobileWebkit&&r.appendChild(a)}}}),o.Path.include({bindPopup:function(t,e){return t instanceof o.Popup?this._popup=t:((!this._popup||e)&&(this._popup=new o.Popup(e,this)),this._popup.setContent(t)),this._popupHandlersAdded||(this.on("click",this._openPopup,this).on("remove",this.closePopup,this),this._popupHandlersAdded=!0),this},unbindPopup:function(){return this._popup&&(this._popup=null,this.off("click",this._openPopup).off("remove",this.closePopup),this._popupHandlersAdded=!1),this},openPopup:function(t){return this._popup&&(t=t||this._latlng||this._latlngs[Math.floor(this._latlngs.length/2)],this._openPopup({latlng:t})),this},closePopup:function(){return this._popup&&this._popup._close(),this},_openPopup:function(t){this._popup.setLatLng(t.latlng),this._map.openPopup(this._popup)}}),o.Browser.vml=!o.Browser.svg&&function(){try{var t=e.createElement("div");t.innerHTML='<v:shape adj="1"/>';var i=t.firstChild;return i.style.behavior="url(#default#VML)",i&&"object"==typeof i.adj}catch(n){return!1}}(),o.Path=o.Browser.svg||!o.Browser.vml?o.Path:o.Path.extend({statics:{VML:!0,CLIP_PADDING:.02},_createElement:function(){try{return e.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(t){return e.createElement("<lvml:"+t+' class="lvml">')}}catch(t){return function(t){return e.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}}(),_initPath:function(){var t=this._container=this._createElement("shape");o.DomUtil.addClass(t,"leaflet-vml-shape"+(this.options.className?" "+this.options.className:"")),this.options.clickable&&o.DomUtil.addClass(t,"leaflet-clickable"),t.coordsize="1 1",this._path=this._createElement("path"),t.appendChild(this._path),this._map._pathRoot.appendChild(t)},_initStyle:function(){this._updateStyle()},_updateStyle:function(){var t=this._stroke,e=this._fill,i=this.options,n=this._container;n.stroked=i.stroke,n.filled=i.fill,i.stroke?(t||(t=this._stroke=this._createElement("stroke"),t.endcap="round",n.appendChild(t)),t.weight=i.weight+"px",t.color=i.color,t.opacity=i.opacity,i.dashArray?t.dashStyle=o.Util.isArray(i.dashArray)?i.dashArray.join(" "):i.dashArray.replace(/( *, *)/g," "):t.dashStyle="",i.lineCap&&(t.endcap=i.lineCap.replace("butt","flat")),i.lineJoin&&(t.joinstyle=i.lineJoin)):t&&(n.removeChild(t),this._stroke=null),i.fill?(e||(e=this._fill=this._createElement("fill"),n.appendChild(e)),e.color=i.fillColor||i.color,e.opacity=i.fillOpacity):e&&(n.removeChild(e),this._fill=null)},_updatePath:function(){var t=this._container.style;t.display="none",this._path.v=this.getPathString()+" ",t.display=""}}),o.Map.include(o.Browser.svg||!o.Browser.vml?{}:{_initPathRoot:function(){if(!this._pathRoot){var t=this._pathRoot=e.createElement("div");t.className="leaflet-vml-container",this._panes.overlayPane.appendChild(t),this.on("moveend",this._updatePathViewport),this._updatePathViewport()}}}),o.Browser.canvas=function(){return!!e.createElement("canvas").getContext}(),o.Path=o.Path.SVG&&!t.L_PREFER_CANVAS||!o.Browser.canvas?o.Path:o.Path.extend({statics:{CANVAS:!0,SVG:!1},redraw:function(){return this._map&&(this.projectLatlngs(),this._requestUpdate()),this},setStyle:function(t){return o.setOptions(this,t),this._map&&(this._updateStyle(),this._requestUpdate()),this},onRemove:function(t){t.off("viewreset",this.projectLatlngs,this).off("moveend",this._updatePath,this),this.options.clickable&&(this._map.off("click",this._onClick,this),this._map.off("mousemove",this._onMouseMove,this)),this._requestUpdate(),this.fire("remove"),this._map=null},_requestUpdate:function(){this._map&&!o.Path._updateRequest&&(o.Path._updateRequest=o.Util.requestAnimFrame(this._fireMapMoveEnd,this._map))},_fireMapMoveEnd:function(){o.Path._updateRequest=null,this.fire("moveend")},_initElements:function(){this._map._initPathRoot(),this._ctx=this._map._canvasCtx},_updateStyle:function(){var t=this.options;t.stroke&&(this._ctx.lineWidth=t.weight,this._ctx.strokeStyle=t.color),t.fill&&(this._ctx.fillStyle=t.fillColor||t.color),t.lineCap&&(this._ctx.lineCap=t.lineCap),t.lineJoin&&(this._ctx.lineJoin=t.lineJoin)},_drawPath:function(){var t,e,i,n,s,a;for(this._ctx.beginPath(),t=0,i=this._parts.length;i>t;t++){for(e=0,n=this._parts[t].length;n>e;e++)s=this._parts[t][e],a=(0===e?"move":"line")+"To",this._ctx[a](s.x,s.y);this instanceof o.Polygon&&this._ctx.closePath()}},_checkIfEmpty:function(){return!this._parts.length},_updatePath:function(){if(!this._checkIfEmpty()){var t=this._ctx,e=this.options;this._drawPath(),t.save(),this._updateStyle(),e.fill&&(t.globalAlpha=e.fillOpacity,t.fill(e.fillRule||"evenodd")),e.stroke&&(t.globalAlpha=e.opacity,t.stroke()),t.restore()}},_initEvents:function(){this.options.clickable&&(this._map.on("mousemove",this._onMouseMove,this),this._map.on("click dblclick contextmenu",this._fireMouseEvent,this))},_fireMouseEvent:function(t){this._containsPoint(t.layerPoint)&&this.fire(t.type,t)},_onMouseMove:function(t){this._map&&!this._map._animatingZoom&&(this._containsPoint(t.layerPoint)?(this._ctx.canvas.style.cursor="pointer",this._mouseInside=!0,this.fire("mouseover",t)):this._mouseInside&&(this._ctx.canvas.style.cursor="",this._mouseInside=!1,this.fire("mouseout",t)))}}),o.Map.include(o.Path.SVG&&!t.L_PREFER_CANVAS||!o.Browser.canvas?{}:{_initPathRoot:function(){var t,i=this._pathRoot;i||(i=this._pathRoot=e.createElement("canvas"),i.style.position="absolute",t=this._canvasCtx=i.getContext("2d"),t.lineCap="round",t.lineJoin="round",this._panes.overlayPane.appendChild(i),this.options.zoomAnimation&&(this._pathRoot.className="leaflet-zoom-animated",this.on("zoomanim",this._animatePathZoom),this.on("zoomend",this._endPathZoom)),this.on("moveend",this._updateCanvasViewport),this._updateCanvasViewport())},_updateCanvasViewport:function(){if(!this._pathZooming){this._updatePathViewport();var t=this._pathViewport,e=t.min,i=t.max.subtract(e),n=this._pathRoot;o.DomUtil.setPosition(n,e),n.width=i.x,n.height=i.y,n.getContext("2d").translate(-e.x,-e.y)}}}),o.LineUtil={simplify:function(t,e){if(!e||!t.length)return t.slice();var i=e*e;return t=this._reducePoints(t,i),t=this._simplifyDP(t,i)},pointToSegmentDistance:function(t,e,i){return Math.sqrt(this._sqClosestPointOnSegment(t,e,i,!0))},closestPointOnSegment:function(t,e,i){return this._sqClosestPointOnSegment(t,e,i)},_simplifyDP:function(t,e){var n=t.length,o=typeof Uint8Array!=i+""?Uint8Array:Array,s=new o(n);s[0]=s[n-1]=1,this._simplifyDPStep(t,s,e,0,n-1);var a,r=[];for(a=0;n>a;a++)s[a]&&r.push(t[a]);return r},_simplifyDPStep:function(t,e,i,n,o){var s,a,r,h=0;for(a=n+1;o-1>=a;a++)r=this._sqClosestPointOnSegment(t[a],t[n],t[o],!0),r>h&&(s=a,h=r);h>i&&(e[s]=1,this._simplifyDPStep(t,e,i,n,s),this._simplifyDPStep(t,e,i,s,o))},_reducePoints:function(t,e){for(var i=[t[0]],n=1,o=0,s=t.length;s>n;n++)this._sqDist(t[n],t[o])>e&&(i.push(t[n]),o=n);return s-1>o&&i.push(t[s-1]),i},clipSegment:function(t,e,i,n){var o,s,a,r=n?this._lastCode:this._getBitCode(t,i),h=this._getBitCode(e,i);for(this._lastCode=h;;){if(!(r|h))return[t,e];if(r&h)return!1;o=r||h,s=this._getEdgeIntersection(t,e,o,i),a=this._getBitCode(s,i),o===r?(t=s,r=a):(e=s,h=a)}},_getEdgeIntersection:function(t,e,i,n){var s=e.x-t.x,a=e.y-t.y,r=n.min,h=n.max;return 8&i?new o.Point(t.x+s*(h.y-t.y)/a,h.y):4&i?new o.Point(t.x+s*(r.y-t.y)/a,r.y):2&i?new o.Point(h.x,t.y+a*(h.x-t.x)/s):1&i?new o.Point(r.x,t.y+a*(r.x-t.x)/s):void 0},_getBitCode:function(t,e){var i=0;return t.x<e.min.x?i|=1:t.x>e.max.x&&(i|=2),t.y<e.min.y?i|=4:t.y>e.max.y&&(i|=8),i},_sqDist:function(t,e){var i=e.x-t.x,n=e.y-t.y;return i*i+n*n},_sqClosestPointOnSegment:function(t,e,i,n){var s,a=e.x,r=e.y,h=i.x-a,l=i.y-r,u=h*h+l*l;return u>0&&(s=((t.x-a)*h+(t.y-r)*l)/u,s>1?(a=i.x,r=i.y):s>0&&(a+=h*s,r+=l*s)),h=t.x-a,l=t.y-r,n?h*h+l*l:new o.Point(a,r)}},o.Polyline=o.Path.extend({initialize:function(t,e){o.Path.prototype.initialize.call(this,e),this._latlngs=this._convertLatLngs(t)},options:{smoothFactor:1,noClip:!1},projectLatlngs:function(){this._originalPoints=[];for(var t=0,e=this._latlngs.length;e>t;t++)this._originalPoints[t]=this._map.latLngToLayerPoint(this._latlngs[t])},getPathString:function(){for(var t=0,e=this._parts.length,i="";e>t;t++)i+=this._getPathPartStr(this._parts[t]);return i},getLatLngs:function(){return this._latlngs},setLatLngs:function(t){return this._latlngs=this._convertLatLngs(t),this.redraw()},addLatLng:function(t){return this._latlngs.push(o.latLng(t)),this.redraw()},spliceLatLngs:function(){var t=[].splice.apply(this._latlngs,arguments);return this._convertLatLngs(this._latlngs,!0),this.redraw(),t},closestLayerPoint:function(t){for(var e,i,n=1/0,s=this._parts,a=null,r=0,h=s.length;h>r;r++)for(var l=s[r],u=1,c=l.length;c>u;u++){e=l[u-1],i=l[u];var d=o.LineUtil._sqClosestPointOnSegment(t,e,i,!0);n>d&&(n=d,a=o.LineUtil._sqClosestPointOnSegment(t,e,i))}return a&&(a.distance=Math.sqrt(n)),a},getBounds:function(){return new o.LatLngBounds(this.getLatLngs())},_convertLatLngs:function(t,e){var i,n,s=e?t:[];for(i=0,n=t.length;n>i;i++){if(o.Util.isArray(t[i])&&"number"!=typeof t[i][0])return;s[i]=o.latLng(t[i])}return s},_initEvents:function(){o.Path.prototype._initEvents.call(this)},_getPathPartStr:function(t){for(var e,i=o.Path.VML,n=0,s=t.length,a="";s>n;n++)e=t[n],i&&e._round(),a+=(n?"L":"M")+e.x+" "+e.y;return a},_clipPoints:function(){var t,e,i,n=this._originalPoints,s=n.length;if(this.options.noClip)return void(this._parts=[n]);this._parts=[];var a=this._parts,r=this._map._pathViewport,h=o.LineUtil;for(t=0,e=0;s-1>t;t++)i=h.clipSegment(n[t],n[t+1],r,t),i&&(a[e]=a[e]||[],a[e].push(i[0]),(i[1]!==n[t+1]||t===s-2)&&(a[e].push(i[1]),e++))},_simplifyPoints:function(){for(var t=this._parts,e=o.LineUtil,i=0,n=t.length;n>i;i++)t[i]=e.simplify(t[i],this.options.smoothFactor)},_updatePath:function(){this._map&&(this._clipPoints(),this._simplifyPoints(),o.Path.prototype._updatePath.call(this))}}),o.polyline=function(t,e){return new o.Polyline(t,e)},o.PolyUtil={},o.PolyUtil.clipPolygon=function(t,e){var i,n,s,a,r,h,l,u,c,d=[1,4,2,8],p=o.LineUtil;for(n=0,l=t.length;l>n;n++)t[n]._code=p._getBitCode(t[n],e);for(a=0;4>a;a++){for(u=d[a],i=[],n=0,l=t.length,s=l-1;l>n;s=n++)r=t[n],h=t[s],r._code&u?h._code&u||(c=p._getEdgeIntersection(h,r,u,e),c._code=p._getBitCode(c,e),i.push(c)):(h._code&u&&(c=p._getEdgeIntersection(h,r,u,e),c._code=p._getBitCode(c,e),i.push(c)),i.push(r));t=i}return t},o.Polygon=o.Polyline.extend({options:{fill:!0},initialize:function(t,e){o.Polyline.prototype.initialize.call(this,t,e),this._initWithHoles(t)},_initWithHoles:function(t){var e,i,n;if(t&&o.Util.isArray(t[0])&&"number"!=typeof t[0][0])for(this._latlngs=this._convertLatLngs(t[0]),this._holes=t.slice(1),e=0,i=this._holes.length;i>e;e++)n=this._holes[e]=this._convertLatLngs(this._holes[e]),n[0].equals(n[n.length-1])&&n.pop();t=this._latlngs,t.length>=2&&t[0].equals(t[t.length-1])&&t.pop()},projectLatlngs:function(){if(o.Polyline.prototype.projectLatlngs.call(this),this._holePoints=[],this._holes){var t,e,i,n;for(t=0,i=this._holes.length;i>t;t++)for(this._holePoints[t]=[],e=0,n=this._holes[t].length;n>e;e++)this._holePoints[t][e]=this._map.latLngToLayerPoint(this._holes[t][e])}},setLatLngs:function(t){return t&&o.Util.isArray(t[0])&&"number"!=typeof t[0][0]?(this._initWithHoles(t),this.redraw()):o.Polyline.prototype.setLatLngs.call(this,t)},_clipPoints:function(){var t=this._originalPoints,e=[];if(this._parts=[t].concat(this._holePoints),!this.options.noClip){for(var i=0,n=this._parts.length;n>i;i++){var s=o.PolyUtil.clipPolygon(this._parts[i],this._map._pathViewport);s.length&&e.push(s)}this._parts=e}},_getPathPartStr:function(t){var e=o.Polyline.prototype._getPathPartStr.call(this,t);return e+(o.Browser.svg?"z":"x")}}),o.polygon=function(t,e){return new o.Polygon(t,e)},function(){function t(t){return o.FeatureGroup.extend({initialize:function(t,e){this._layers={},this._options=e,this.setLatLngs(t)},setLatLngs:function(e){var i=0,n=e.length;for(this.eachLayer(function(t){n>i?t.setLatLngs(e[i++]):this.removeLayer(t)},this);n>i;)this.addLayer(new t(e[i++],this._options));return this},getLatLngs:function(){var t=[];return this.eachLayer(function(e){t.push(e.getLatLngs())}),t}})}o.MultiPolyline=t(o.Polyline),o.MultiPolygon=t(o.Polygon),o.multiPolyline=function(t,e){return new o.MultiPolyline(t,e)},o.multiPolygon=function(t,e){return new o.MultiPolygon(t,e)}}(),o.Rectangle=o.Polygon.extend({initialize:function(t,e){o.Polygon.prototype.initialize.call(this,this._boundsToLatLngs(t),e)},setBounds:function(t){this.setLatLngs(this._boundsToLatLngs(t))},_boundsToLatLngs:function(t){return t=o.latLngBounds(t),[t.getSouthWest(),t.getNorthWest(),t.getNorthEast(),t.getSouthEast()]}}),o.rectangle=function(t,e){return new o.Rectangle(t,e)},o.Circle=o.Path.extend({initialize:function(t,e,i){o.Path.prototype.initialize.call(this,i),this._latlng=o.latLng(t),this._mRadius=e},options:{fill:!0},setLatLng:function(t){return this._latlng=o.latLng(t),this.redraw()},setRadius:function(t){return this._mRadius=t,this.redraw()},projectLatlngs:function(){var t=this._getLngRadius(),e=this._latlng,i=this._map.latLngToLayerPoint([e.lat,e.lng-t]);this._point=this._map.latLngToLayerPoint(e),this._radius=Math.max(this._point.x-i.x,1)},getBounds:function(){var t=this._getLngRadius(),e=this._mRadius/40075017*360,i=this._latlng;return new o.LatLngBounds([i.lat-e,i.lng-t],[i.lat+e,i.lng+t])},getLatLng:function(){return this._latlng},getPathString:function(){var t=this._point,e=this._radius;return this._checkIfEmpty()?"":o.Browser.svg?"M"+t.x+","+(t.y-e)+"A"+e+","+e+",0,1,1,"+(t.x-.1)+","+(t.y-e)+" z":(t._round(),e=Math.round(e),"AL "+t.x+","+t.y+" "+e+","+e+" 0,23592600")},getRadius:function(){return this._mRadius},_getLatRadius:function(){return this._mRadius/40075017*360},_getLngRadius:function(){return this._getLatRadius()/Math.cos(o.LatLng.DEG_TO_RAD*this._latlng.lat)},_checkIfEmpty:function(){if(!this._map)return!1;var t=this._map._pathViewport,e=this._radius,i=this._point;return i.x-e>t.max.x||i.y-e>t.max.y||i.x+e<t.min.x||i.y+e<t.min.y}}),o.circle=function(t,e,i){return new o.Circle(t,e,i)},o.CircleMarker=o.Circle.extend({options:{radius:10,weight:2},initialize:function(t,e){o.Circle.prototype.initialize.call(this,t,null,e),this._radius=this.options.radius},projectLatlngs:function(){this._point=this._map.latLngToLayerPoint(this._latlng)},_updateStyle:function(){o.Circle.prototype._updateStyle.call(this),this.setRadius(this.options.radius)},setLatLng:function(t){return o.Circle.prototype.setLatLng.call(this,t),this._popup&&this._popup._isOpen&&this._popup.setLatLng(t),this},setRadius:function(t){return this.options.radius=this._radius=t,this.redraw()},getRadius:function(){return this._radius}}),o.circleMarker=function(t,e){return new o.CircleMarker(t,e)},o.Polyline.include(o.Path.CANVAS?{_containsPoint:function(t,e){var i,n,s,a,r,h,l,u=this.options.weight/2;for(o.Browser.touch&&(u+=10),i=0,a=this._parts.length;a>i;i++)for(l=this._parts[i],n=0,r=l.length,s=r-1;r>n;s=n++)if((e||0!==n)&&(h=o.LineUtil.pointToSegmentDistance(t,l[s],l[n]),u>=h))return!0;return!1}}:{}),o.Polygon.include(o.Path.CANVAS?{_containsPoint:function(t){var e,i,n,s,a,r,h,l,u=!1;if(o.Polyline.prototype._containsPoint.call(this,t,!0))return!0;for(s=0,h=this._parts.length;h>s;s++)for(e=this._parts[s],a=0,l=e.length,r=l-1;l>a;r=a++)i=e[a],n=e[r],i.y>t.y!=n.y>t.y&&t.x<(n.x-i.x)*(t.y-i.y)/(n.y-i.y)+i.x&&(u=!u);return u}}:{}),o.Circle.include(o.Path.CANVAS?{_drawPath:function(){var t=this._point;this._ctx.beginPath(),this._ctx.arc(t.x,t.y,this._radius,0,2*Math.PI,!1)},_containsPoint:function(t){var e=this._point,i=this.options.stroke?this.options.weight/2:0;return t.distanceTo(e)<=this._radius+i}}:{}),o.CircleMarker.include(o.Path.CANVAS?{_updateStyle:function(){o.Path.prototype._updateStyle.call(this)}}:{}),o.GeoJSON=o.FeatureGroup.extend({initialize:function(t,e){o.setOptions(this,e),this._layers={},t&&this.addData(t)},addData:function(t){var e,i,n,s=o.Util.isArray(t)?t:t.features;if(s){for(e=0,i=s.length;i>e;e++)n=s[e],(n.geometries||n.geometry||n.features||n.coordinates)&&this.addData(s[e]);return this}var a=this.options;if(!a.filter||a.filter(t)){var r=o.GeoJSON.geometryToLayer(t,a.pointToLayer,a.coordsToLatLng,a);return r.feature=o.GeoJSON.asFeature(t),r.defaultOptions=r.options,this.resetStyle(r),a.onEachFeature&&a.onEachFeature(t,r),this.addLayer(r)}},resetStyle:function(t){var e=this.options.style;e&&(o.Util.extend(t.options,t.defaultOptions),this._setLayerStyle(t,e))},setStyle:function(t){this.eachLayer(function(e){this._setLayerStyle(e,t)},this)},_setLayerStyle:function(t,e){"function"==typeof e&&(e=e(t.feature)),t.setStyle&&t.setStyle(e)}}),o.extend(o.GeoJSON,{geometryToLayer:function(t,e,i,n){var s,a,r,h,l="Feature"===t.type?t.geometry:t,u=l.coordinates,c=[];switch(i=i||this.coordsToLatLng,l.type){case"Point":return s=i(u),e?e(t,s):new o.Marker(s);case"MultiPoint":for(r=0,h=u.length;h>r;r++)s=i(u[r]),c.push(e?e(t,s):new o.Marker(s));return new o.FeatureGroup(c);case"LineString":return a=this.coordsToLatLngs(u,0,i),new o.Polyline(a,n);case"Polygon":if(2===u.length&&!u[1].length)throw new Error("Invalid GeoJSON object.");return a=this.coordsToLatLngs(u,1,i),new o.Polygon(a,n);case"MultiLineString":return a=this.coordsToLatLngs(u,1,i),new o.MultiPolyline(a,n);case"MultiPolygon":return a=this.coordsToLatLngs(u,2,i),new o.MultiPolygon(a,n);case"GeometryCollection":for(r=0,h=l.geometries.length;h>r;r++)c.push(this.geometryToLayer({geometry:l.geometries[r],type:"Feature",properties:t.properties},e,i,n));return new o.FeatureGroup(c);default:throw new Error("Invalid GeoJSON object.")}},coordsToLatLng:function(t){return new o.LatLng(t[1],t[0],t[2])},coordsToLatLngs:function(t,e,i){var n,o,s,a=[];for(o=0,s=t.length;s>o;o++)n=e?this.coordsToLatLngs(t[o],e-1,i):(i||this.coordsToLatLng)(t[o]),a.push(n);return a},latLngToCoords:function(t){var e=[t.lng,t.lat];return t.alt!==i&&e.push(t.alt),e},latLngsToCoords:function(t){for(var e=[],i=0,n=t.length;n>i;i++)e.push(o.GeoJSON.latLngToCoords(t[i]));return e},getFeature:function(t,e){return t.feature?o.extend({},t.feature,{geometry:e}):o.GeoJSON.asFeature(e)},asFeature:function(t){return"Feature"===t.type?t:{type:"Feature",properties:{},geometry:t}}});var a={toGeoJSON:function(){return o.GeoJSON.getFeature(this,{type:"Point",coordinates:o.GeoJSON.latLngToCoords(this.getLatLng())})}};o.Marker.include(a),o.Circle.include(a),o.CircleMarker.include(a),o.Polyline.include({toGeoJSON:function(){return o.GeoJSON.getFeature(this,{type:"LineString",coordinates:o.GeoJSON.latLngsToCoords(this.getLatLngs())})}}),o.Polygon.include({toGeoJSON:function(){var t,e,i,n=[o.GeoJSON.latLngsToCoords(this.getLatLngs())];if(n[0].push(n[0][0]),this._holes)for(t=0,e=this._holes.length;e>t;t++)i=o.GeoJSON.latLngsToCoords(this._holes[t]),i.push(i[0]),n.push(i);return o.GeoJSON.getFeature(this,{type:"Polygon",coordinates:n})}}),function(){function t(t){return function(){var e=[];return this.eachLayer(function(t){e.push(t.toGeoJSON().geometry.coordinates)}),o.GeoJSON.getFeature(this,{type:t,coordinates:e})}}o.MultiPolyline.include({toGeoJSON:t("MultiLineString")}),o.MultiPolygon.include({toGeoJSON:t("MultiPolygon")}),o.LayerGroup.include({toGeoJSON:function(){var e,i=this.feature&&this.feature.geometry,n=[];if(i&&"MultiPoint"===i.type)return t("MultiPoint").call(this);var s=i&&"GeometryCollection"===i.type;return this.eachLayer(function(t){t.toGeoJSON&&(e=t.toGeoJSON(),n.push(s?e.geometry:o.GeoJSON.asFeature(e)))}),s?o.GeoJSON.getFeature(this,{geometries:n,type:"GeometryCollection"}):{type:"FeatureCollection",features:n}}})}(),o.geoJson=function(t,e){return new o.GeoJSON(t,e)},o.DomEvent={addListener:function(t,e,i,n){var s,a,r,h=o.stamp(i),l="_leaflet_"+e+h;return t[l]?this:(s=function(e){return i.call(n||t,e||o.DomEvent._getEvent())},o.Browser.pointer&&0===e.indexOf("touch")?this.addPointerListener(t,e,s,h):(o.Browser.touch&&"dblclick"===e&&this.addDoubleTapListener&&this.addDoubleTapListener(t,s,h),"addEventListener"in t?"mousewheel"===e?(t.addEventListener("DOMMouseScroll",s,!1),t.addEventListener(e,s,!1)):"mouseenter"===e||"mouseleave"===e?(a=s,r="mouseenter"===e?"mouseover":"mouseout",s=function(e){return o.DomEvent._checkMouse(t,e)?a(e):void 0},t.addEventListener(r,s,!1)):"click"===e&&o.Browser.android?(a=s,s=function(t){return o.DomEvent._filterClick(t,a)},t.addEventListener(e,s,!1)):t.addEventListener(e,s,!1):"attachEvent"in t&&t.attachEvent("on"+e,s),t[l]=s,this))},removeListener:function(t,e,i){var n=o.stamp(i),s="_leaflet_"+e+n,a=t[s];return a?(o.Browser.pointer&&0===e.indexOf("touch")?this.removePointerListener(t,e,n):o.Browser.touch&&"dblclick"===e&&this.removeDoubleTapListener?this.removeDoubleTapListener(t,n):"removeEventListener"in t?"mousewheel"===e?(t.removeEventListener("DOMMouseScroll",a,!1),t.removeEventListener(e,a,!1)):"mouseenter"===e||"mouseleave"===e?t.removeEventListener("mouseenter"===e?"mouseover":"mouseout",a,!1):t.removeEventListener(e,a,!1):"detachEvent"in t&&t.detachEvent("on"+e,a),t[s]=null,this):this},stopPropagation:function(t){return t.stopPropagation?t.stopPropagation():t.cancelBubble=!0,o.DomEvent._skipped(t),this},disableScrollPropagation:function(t){var e=o.DomEvent.stopPropagation;return o.DomEvent.on(t,"mousewheel",e).on(t,"MozMousePixelScroll",e)},disableClickPropagation:function(t){for(var e=o.DomEvent.stopPropagation,i=o.Draggable.START.length-1;i>=0;i--)o.DomEvent.on(t,o.Draggable.START[i],e);return o.DomEvent.on(t,"click",o.DomEvent._fakeStop).on(t,"dblclick",e)},preventDefault:function(t){return t.preventDefault?t.preventDefault():t.returnValue=!1,this},stop:function(t){return o.DomEvent.preventDefault(t).stopPropagation(t)},getMousePosition:function(t,e){if(!e)return new o.Point(t.clientX,t.clientY);var i=e.getBoundingClientRect();return new o.Point(t.clientX-i.left-e.clientLeft,t.clientY-i.top-e.clientTop)},getWheelDelta:function(t){var e=0;return t.wheelDelta&&(e=t.wheelDelta/120),t.detail&&(e=-t.detail/3),e},_skipEvents:{},_fakeStop:function(t){o.DomEvent._skipEvents[t.type]=!0},_skipped:function(t){var e=this._skipEvents[t.type];return this._skipEvents[t.type]=!1,e},_checkMouse:function(t,e){var i=e.relatedTarget;if(!i)return!0;try{for(;i&&i!==t;)i=i.parentNode}catch(n){return!1}return i!==t},_getEvent:function(){var e=t.event;if(!e)for(var i=arguments.callee.caller;i&&(e=i.arguments[0],!e||t.Event!==e.constructor);)i=i.caller;return e},_filterClick:function(t,e){var i=t.timeStamp||t.originalEvent.timeStamp,n=o.DomEvent._lastClick&&i-o.DomEvent._lastClick;return n&&n>100&&500>n||t.target._simulatedClick&&!t._simulated?void o.DomEvent.stop(t):(o.DomEvent._lastClick=i,e(t))}},o.DomEvent.on=o.DomEvent.addListener,o.DomEvent.off=o.DomEvent.removeListener,o.Draggable=o.Class.extend({includes:o.Mixin.Events,statics:{START:o.Browser.touch?["touchstart","mousedown"]:["mousedown"],END:{mousedown:"mouseup",touchstart:"touchend",pointerdown:"touchend",MSPointerDown:"touchend"},MOVE:{mousedown:"mousemove",touchstart:"touchmove",pointerdown:"touchmove",MSPointerDown:"touchmove"}},initialize:function(t,e){this._element=t,this._dragStartTarget=e||t},enable:function(){if(!this._enabled){for(var t=o.Draggable.START.length-1;t>=0;t--)o.DomEvent.on(this._dragStartTarget,o.Draggable.START[t],this._onDown,this);this._enabled=!0}},disable:function(){if(this._enabled){for(var t=o.Draggable.START.length-1;t>=0;t--)o.DomEvent.off(this._dragStartTarget,o.Draggable.START[t],this._onDown,this);this._enabled=!1,this._moved=!1}},_onDown:function(t){if(this._moved=!1,!t.shiftKey&&(1===t.which||1===t.button||t.touches)&&(o.DomEvent.stopPropagation(t),!o.Draggable._disabled&&(o.DomUtil.disableImageDrag(),o.DomUtil.disableTextSelection(),!this._moving))){var i=t.touches?t.touches[0]:t;this._startPoint=new o.Point(i.clientX,i.clientY),this._startPos=this._newPos=o.DomUtil.getPosition(this._element),o.DomEvent.on(e,o.Draggable.MOVE[t.type],this._onMove,this).on(e,o.Draggable.END[t.type],this._onUp,this)}},_onMove:function(t){if(t.touches&&t.touches.length>1)return void(this._moved=!0);var i=t.touches&&1===t.touches.length?t.touches[0]:t,n=new o.Point(i.clientX,i.clientY),s=n.subtract(this._startPoint);(s.x||s.y)&&(o.Browser.touch&&Math.abs(s.x)+Math.abs(s.y)<3||(o.DomEvent.preventDefault(t),this._moved||(this.fire("dragstart"),this._moved=!0,this._startPos=o.DomUtil.getPosition(this._element).subtract(s),o.DomUtil.addClass(e.body,"leaflet-dragging"),this._lastTarget=t.target||t.srcElement,o.DomUtil.addClass(this._lastTarget,"leaflet-drag-target")),this._newPos=this._startPos.add(s),this._moving=!0,o.Util.cancelAnimFrame(this._animRequest),this._animRequest=o.Util.requestAnimFrame(this._updatePosition,this,!0,this._dragStartTarget)))},_updatePosition:function(){this.fire("predrag"),o.DomUtil.setPosition(this._element,this._newPos),this.fire("drag")},_onUp:function(){o.DomUtil.removeClass(e.body,"leaflet-dragging"),this._lastTarget&&(o.DomUtil.removeClass(this._lastTarget,"leaflet-drag-target"),this._lastTarget=null);for(var t in o.Draggable.MOVE)o.DomEvent.off(e,o.Draggable.MOVE[t],this._onMove).off(e,o.Draggable.END[t],this._onUp);o.DomUtil.enableImageDrag(),o.DomUtil.enableTextSelection(),this._moved&&this._moving&&(o.Util.cancelAnimFrame(this._animRequest),this.fire("dragend",{distance:this._newPos.distanceTo(this._startPos)})),this._moving=!1}}),o.Handler=o.Class.extend({initialize:function(t){this._map=t},enable:function(){this._enabled||(this._enabled=!0,this.addHooks())},disable:function(){this._enabled&&(this._enabled=!1,this.removeHooks())},enabled:function(){return!!this._enabled}}),o.Map.mergeOptions({dragging:!0,inertia:!o.Browser.android23,inertiaDeceleration:3400,inertiaMaxSpeed:1/0,inertiaThreshold:o.Browser.touch?32:18,easeLinearity:.25,worldCopyJump:!1}),o.Map.Drag=o.Handler.extend({addHooks:function(){if(!this._draggable){var t=this._map;this._draggable=new o.Draggable(t._mapPane,t._container),this._draggable.on({dragstart:this._onDragStart,drag:this._onDrag,dragend:this._onDragEnd},this),t.options.worldCopyJump&&(this._draggable.on("predrag",this._onPreDrag,this),t.on("viewreset",this._onViewReset,this),t.whenReady(this._onViewReset,this))}this._draggable.enable()},removeHooks:function(){this._draggable.disable()},moved:function(){return this._draggable&&this._draggable._moved},_onDragStart:function(){var t=this._map;t._panAnim&&t._panAnim.stop(),t.fire("movestart").fire("dragstart"),t.options.inertia&&(this._positions=[],this._times=[])},_onDrag:function(){if(this._map.options.inertia){var t=this._lastTime=+new Date,e=this._lastPos=this._draggable._newPos;this._positions.push(e),this._times.push(t),t-this._times[0]>200&&(this._positions.shift(),this._times.shift())}this._map.fire("move").fire("drag")},_onViewReset:function(){var t=this._map.getSize()._divideBy(2),e=this._map.latLngToLayerPoint([0,0]);this._initialWorldOffset=e.subtract(t).x,this._worldWidth=this._map.project([0,180]).x},_onPreDrag:function(){var t=this._worldWidth,e=Math.round(t/2),i=this._initialWorldOffset,n=this._draggable._newPos.x,o=(n-e+i)%t+e-i,s=(n+e+i)%t-e-i,a=Math.abs(o+i)<Math.abs(s+i)?o:s;this._draggable._newPos.x=a},_onDragEnd:function(t){var e=this._map,i=e.options,n=+new Date-this._lastTime,s=!i.inertia||n>i.inertiaThreshold||!this._positions[0];if(e.fire("dragend",t),s)e.fire("moveend");else{var a=this._lastPos.subtract(this._positions[0]),r=(this._lastTime+n-this._times[0])/1e3,h=i.easeLinearity,l=a.multiplyBy(h/r),u=l.distanceTo([0,0]),c=Math.min(i.inertiaMaxSpeed,u),d=l.multiplyBy(c/u),p=c/(i.inertiaDeceleration*h),_=d.multiplyBy(-p/2).round();_.x&&_.y?(_=e._limitOffset(_,e.options.maxBounds),o.Util.requestAnimFrame(function(){e.panBy(_,{duration:p,easeLinearity:h,noMoveStart:!0})})):e.fire("moveend")}}}),o.Map.addInitHook("addHandler","dragging",o.Map.Drag),o.Map.mergeOptions({doubleClickZoom:!0}),o.Map.DoubleClickZoom=o.Handler.extend({addHooks:function(){this._map.on("dblclick",this._onDoubleClick,this)},removeHooks:function(){this._map.off("dblclick",this._onDoubleClick,this)},_onDoubleClick:function(t){var e=this._map,i=e.getZoom()+(t.originalEvent.shiftKey?-1:1);"center"===e.options.doubleClickZoom?e.setZoom(i):e.setZoomAround(t.containerPoint,i)}}),o.Map.addInitHook("addHandler","doubleClickZoom",o.Map.DoubleClickZoom),o.Map.mergeOptions({scrollWheelZoom:!0}),o.Map.ScrollWheelZoom=o.Handler.extend({addHooks:function(){o.DomEvent.on(this._map._container,"mousewheel",this._onWheelScroll,this),o.DomEvent.on(this._map._container,"MozMousePixelScroll",o.DomEvent.preventDefault),this._delta=0},removeHooks:function(){o.DomEvent.off(this._map._container,"mousewheel",this._onWheelScroll),o.DomEvent.off(this._map._container,"MozMousePixelScroll",o.DomEvent.preventDefault)},_onWheelScroll:function(t){var e=o.DomEvent.getWheelDelta(t);this._delta+=e,this._lastMousePos=this._map.mouseEventToContainerPoint(t),this._startTime||(this._startTime=+new Date);var i=Math.max(40-(+new Date-this._startTime),0);clearTimeout(this._timer),this._timer=setTimeout(o.bind(this._performZoom,this),i),o.DomEvent.preventDefault(t),o.DomEvent.stopPropagation(t)},_performZoom:function(){var t=this._map,e=this._delta,i=t.getZoom();e=e>0?Math.ceil(e):Math.floor(e),e=Math.max(Math.min(e,4),-4),e=t._limitZoom(i+e)-i,this._delta=0,this._startTime=null,e&&("center"===t.options.scrollWheelZoom?t.setZoom(i+e):t.setZoomAround(this._lastMousePos,i+e))}}),o.Map.addInitHook("addHandler","scrollWheelZoom",o.Map.ScrollWheelZoom),o.extend(o.DomEvent,{_touchstart:o.Browser.msPointer?"MSPointerDown":o.Browser.pointer?"pointerdown":"touchstart",_touchend:o.Browser.msPointer?"MSPointerUp":o.Browser.pointer?"pointerup":"touchend",addDoubleTapListener:function(t,i,n){function s(t){var e;if(o.Browser.pointer?(_.push(t.pointerId),e=_.length):e=t.touches.length,!(e>1)){var i=Date.now(),n=i-(r||i);h=t.touches?t.touches[0]:t,l=n>0&&u>=n,r=i}}function a(t){if(o.Browser.pointer){var e=_.indexOf(t.pointerId);if(-1===e)return;_.splice(e,1)}if(l){if(o.Browser.pointer){var n,s={};for(var a in h)n=h[a],"function"==typeof n?s[a]=n.bind(h):s[a]=n;h=s}h.type="dblclick",i(h),r=null}}var r,h,l=!1,u=250,c="_leaflet_",d=this._touchstart,p=this._touchend,_=[];t[c+d+n]=s,t[c+p+n]=a;var m=o.Browser.pointer?e.documentElement:t;return t.addEventListener(d,s,!1),m.addEventListener(p,a,!1),o.Browser.pointer&&m.addEventListener(o.DomEvent.POINTER_CANCEL,a,!1),this},removeDoubleTapListener:function(t,i){var n="_leaflet_";return t.removeEventListener(this._touchstart,t[n+this._touchstart+i],!1),(o.Browser.pointer?e.documentElement:t).removeEventListener(this._touchend,t[n+this._touchend+i],!1),o.Browser.pointer&&e.documentElement.removeEventListener(o.DomEvent.POINTER_CANCEL,t[n+this._touchend+i],!1),this}}),o.extend(o.DomEvent,{POINTER_DOWN:o.Browser.msPointer?"MSPointerDown":"pointerdown",POINTER_MOVE:o.Browser.msPointer?"MSPointerMove":"pointermove",POINTER_UP:o.Browser.msPointer?"MSPointerUp":"pointerup",POINTER_CANCEL:o.Browser.msPointer?"MSPointerCancel":"pointercancel",_pointers:[],_pointerDocumentListener:!1,addPointerListener:function(t,e,i,n){switch(e){case"touchstart":return this.addPointerListenerStart(t,e,i,n);
|
9 |
+
case"touchend":return this.addPointerListenerEnd(t,e,i,n);case"touchmove":return this.addPointerListenerMove(t,e,i,n);default:throw"Unknown touch event type"}},addPointerListenerStart:function(t,i,n,s){var a="_leaflet_",r=this._pointers,h=function(t){"mouse"!==t.pointerType&&t.pointerType!==t.MSPOINTER_TYPE_MOUSE&&o.DomEvent.preventDefault(t);for(var e=!1,i=0;i<r.length;i++)if(r[i].pointerId===t.pointerId){e=!0;break}e||r.push(t),t.touches=r.slice(),t.changedTouches=[t],n(t)};if(t[a+"touchstart"+s]=h,t.addEventListener(this.POINTER_DOWN,h,!1),!this._pointerDocumentListener){var l=function(t){for(var e=0;e<r.length;e++)if(r[e].pointerId===t.pointerId){r.splice(e,1);break}};e.documentElement.addEventListener(this.POINTER_UP,l,!1),e.documentElement.addEventListener(this.POINTER_CANCEL,l,!1),this._pointerDocumentListener=!0}return this},addPointerListenerMove:function(t,e,i,n){function o(t){if(t.pointerType!==t.MSPOINTER_TYPE_MOUSE&&"mouse"!==t.pointerType||0!==t.buttons){for(var e=0;e<a.length;e++)if(a[e].pointerId===t.pointerId){a[e]=t;break}t.touches=a.slice(),t.changedTouches=[t],i(t)}}var s="_leaflet_",a=this._pointers;return t[s+"touchmove"+n]=o,t.addEventListener(this.POINTER_MOVE,o,!1),this},addPointerListenerEnd:function(t,e,i,n){var o="_leaflet_",s=this._pointers,a=function(t){for(var e=0;e<s.length;e++)if(s[e].pointerId===t.pointerId){s.splice(e,1);break}t.touches=s.slice(),t.changedTouches=[t],i(t)};return t[o+"touchend"+n]=a,t.addEventListener(this.POINTER_UP,a,!1),t.addEventListener(this.POINTER_CANCEL,a,!1),this},removePointerListener:function(t,e,i){var n="_leaflet_",o=t[n+e+i];switch(e){case"touchstart":t.removeEventListener(this.POINTER_DOWN,o,!1);break;case"touchmove":t.removeEventListener(this.POINTER_MOVE,o,!1);break;case"touchend":t.removeEventListener(this.POINTER_UP,o,!1),t.removeEventListener(this.POINTER_CANCEL,o,!1)}return this}}),o.Map.mergeOptions({touchZoom:o.Browser.touch&&!o.Browser.android23,bounceAtZoomLimits:!0}),o.Map.TouchZoom=o.Handler.extend({addHooks:function(){o.DomEvent.on(this._map._container,"touchstart",this._onTouchStart,this)},removeHooks:function(){o.DomEvent.off(this._map._container,"touchstart",this._onTouchStart,this)},_onTouchStart:function(t){var i=this._map;if(t.touches&&2===t.touches.length&&!i._animatingZoom&&!this._zooming){var n=i.mouseEventToLayerPoint(t.touches[0]),s=i.mouseEventToLayerPoint(t.touches[1]),a=i._getCenterLayerPoint();this._startCenter=n.add(s)._divideBy(2),this._startDist=n.distanceTo(s),this._moved=!1,this._zooming=!0,this._centerOffset=a.subtract(this._startCenter),i._panAnim&&i._panAnim.stop(),o.DomEvent.on(e,"touchmove",this._onTouchMove,this).on(e,"touchend",this._onTouchEnd,this),o.DomEvent.preventDefault(t)}},_onTouchMove:function(t){var e=this._map;if(t.touches&&2===t.touches.length&&this._zooming){var i=e.mouseEventToLayerPoint(t.touches[0]),n=e.mouseEventToLayerPoint(t.touches[1]);this._scale=i.distanceTo(n)/this._startDist,this._delta=i._add(n)._divideBy(2)._subtract(this._startCenter),1!==this._scale&&(e.options.bounceAtZoomLimits||!(e.getZoom()===e.getMinZoom()&&this._scale<1||e.getZoom()===e.getMaxZoom()&&this._scale>1))&&(this._moved||(o.DomUtil.addClass(e._mapPane,"leaflet-touching"),e.fire("movestart").fire("zoomstart"),this._moved=!0),o.Util.cancelAnimFrame(this._animRequest),this._animRequest=o.Util.requestAnimFrame(this._updateOnMove,this,!0,this._map._container),o.DomEvent.preventDefault(t))}},_updateOnMove:function(){var t=this._map,e=this._getScaleOrigin(),i=t.layerPointToLatLng(e),n=t.getScaleZoom(this._scale);t._animateZoom(i,n,this._startCenter,this._scale,this._delta,!1,!0)},_onTouchEnd:function(){if(!this._moved||!this._zooming)return void(this._zooming=!1);var t=this._map;this._zooming=!1,o.DomUtil.removeClass(t._mapPane,"leaflet-touching"),o.Util.cancelAnimFrame(this._animRequest),o.DomEvent.off(e,"touchmove",this._onTouchMove).off(e,"touchend",this._onTouchEnd);var i=this._getScaleOrigin(),n=t.layerPointToLatLng(i),s=t.getZoom(),a=t.getScaleZoom(this._scale)-s,r=a>0?Math.ceil(a):Math.floor(a),h=t._limitZoom(s+r),l=t.getZoomScale(h)/this._scale;t._animateZoom(n,h,i,l)},_getScaleOrigin:function(){var t=this._centerOffset.subtract(this._delta).divideBy(this._scale);return this._startCenter.add(t)}}),o.Map.addInitHook("addHandler","touchZoom",o.Map.TouchZoom),o.Map.mergeOptions({tap:!0,tapTolerance:15}),o.Map.Tap=o.Handler.extend({addHooks:function(){o.DomEvent.on(this._map._container,"touchstart",this._onDown,this)},removeHooks:function(){o.DomEvent.off(this._map._container,"touchstart",this._onDown,this)},_onDown:function(t){if(t.touches){if(o.DomEvent.preventDefault(t),this._fireClick=!0,t.touches.length>1)return this._fireClick=!1,void clearTimeout(this._holdTimeout);var i=t.touches[0],n=i.target;this._startPos=this._newPos=new o.Point(i.clientX,i.clientY),n.tagName&&"a"===n.tagName.toLowerCase()&&o.DomUtil.addClass(n,"leaflet-active"),this._holdTimeout=setTimeout(o.bind(function(){this._isTapValid()&&(this._fireClick=!1,this._onUp(),this._simulateEvent("contextmenu",i))},this),1e3),o.DomEvent.on(e,"touchmove",this._onMove,this).on(e,"touchend",this._onUp,this)}},_onUp:function(t){if(clearTimeout(this._holdTimeout),o.DomEvent.off(e,"touchmove",this._onMove,this).off(e,"touchend",this._onUp,this),this._fireClick&&t&&t.changedTouches){var i=t.changedTouches[0],n=i.target;n&&n.tagName&&"a"===n.tagName.toLowerCase()&&o.DomUtil.removeClass(n,"leaflet-active"),this._isTapValid()&&this._simulateEvent("click",i)}},_isTapValid:function(){return this._newPos.distanceTo(this._startPos)<=this._map.options.tapTolerance},_onMove:function(t){var e=t.touches[0];this._newPos=new o.Point(e.clientX,e.clientY)},_simulateEvent:function(i,n){var o=e.createEvent("MouseEvents");o._simulated=!0,n.target._simulatedClick=!0,o.initMouseEvent(i,!0,!0,t,1,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),n.target.dispatchEvent(o)}}),o.Browser.touch&&!o.Browser.pointer&&o.Map.addInitHook("addHandler","tap",o.Map.Tap),o.Map.mergeOptions({boxZoom:!0}),o.Map.BoxZoom=o.Handler.extend({initialize:function(t){this._map=t,this._container=t._container,this._pane=t._panes.overlayPane,this._moved=!1},addHooks:function(){o.DomEvent.on(this._container,"mousedown",this._onMouseDown,this)},removeHooks:function(){o.DomEvent.off(this._container,"mousedown",this._onMouseDown),this._moved=!1},moved:function(){return this._moved},_onMouseDown:function(t){return this._moved=!1,!t.shiftKey||1!==t.which&&1!==t.button?!1:(o.DomUtil.disableTextSelection(),o.DomUtil.disableImageDrag(),this._startLayerPoint=this._map.mouseEventToLayerPoint(t),void o.DomEvent.on(e,"mousemove",this._onMouseMove,this).on(e,"mouseup",this._onMouseUp,this).on(e,"keydown",this._onKeyDown,this))},_onMouseMove:function(t){this._moved||(this._box=o.DomUtil.create("div","leaflet-zoom-box",this._pane),o.DomUtil.setPosition(this._box,this._startLayerPoint),this._container.style.cursor="crosshair",this._map.fire("boxzoomstart"));var e=this._startLayerPoint,i=this._box,n=this._map.mouseEventToLayerPoint(t),s=n.subtract(e),a=new o.Point(Math.min(n.x,e.x),Math.min(n.y,e.y));o.DomUtil.setPosition(i,a),this._moved=!0,i.style.width=Math.max(0,Math.abs(s.x)-4)+"px",i.style.height=Math.max(0,Math.abs(s.y)-4)+"px"},_finish:function(){this._moved&&(this._pane.removeChild(this._box),this._container.style.cursor=""),o.DomUtil.enableTextSelection(),o.DomUtil.enableImageDrag(),o.DomEvent.off(e,"mousemove",this._onMouseMove).off(e,"mouseup",this._onMouseUp).off(e,"keydown",this._onKeyDown)},_onMouseUp:function(t){this._finish();var e=this._map,i=e.mouseEventToLayerPoint(t);if(!this._startLayerPoint.equals(i)){var n=new o.LatLngBounds(e.layerPointToLatLng(this._startLayerPoint),e.layerPointToLatLng(i));e.fitBounds(n),e.fire("boxzoomend",{boxZoomBounds:n})}},_onKeyDown:function(t){27===t.keyCode&&this._finish()}}),o.Map.addInitHook("addHandler","boxZoom",o.Map.BoxZoom),o.Map.mergeOptions({keyboard:!0,keyboardPanOffset:80,keyboardZoomOffset:1}),o.Map.Keyboard=o.Handler.extend({keyCodes:{left:[37],right:[39],down:[40],up:[38],zoomIn:[187,107,61,171],zoomOut:[189,109,173]},initialize:function(t){this._map=t,this._setPanOffset(t.options.keyboardPanOffset),this._setZoomOffset(t.options.keyboardZoomOffset)},addHooks:function(){var t=this._map._container;-1===t.tabIndex&&(t.tabIndex="0"),o.DomEvent.on(t,"focus",this._onFocus,this).on(t,"blur",this._onBlur,this).on(t,"mousedown",this._onMouseDown,this),this._map.on("focus",this._addHooks,this).on("blur",this._removeHooks,this)},removeHooks:function(){this._removeHooks();var t=this._map._container;o.DomEvent.off(t,"focus",this._onFocus,this).off(t,"blur",this._onBlur,this).off(t,"mousedown",this._onMouseDown,this),this._map.off("focus",this._addHooks,this).off("blur",this._removeHooks,this)},_onMouseDown:function(){if(!this._focused){var i=e.body,n=e.documentElement,o=i.scrollTop||n.scrollTop,s=i.scrollLeft||n.scrollLeft;this._map._container.focus(),t.scrollTo(s,o)}},_onFocus:function(){this._focused=!0,this._map.fire("focus")},_onBlur:function(){this._focused=!1,this._map.fire("blur")},_setPanOffset:function(t){var e,i,n=this._panKeys={},o=this.keyCodes;for(e=0,i=o.left.length;i>e;e++)n[o.left[e]]=[-1*t,0];for(e=0,i=o.right.length;i>e;e++)n[o.right[e]]=[t,0];for(e=0,i=o.down.length;i>e;e++)n[o.down[e]]=[0,t];for(e=0,i=o.up.length;i>e;e++)n[o.up[e]]=[0,-1*t]},_setZoomOffset:function(t){var e,i,n=this._zoomKeys={},o=this.keyCodes;for(e=0,i=o.zoomIn.length;i>e;e++)n[o.zoomIn[e]]=t;for(e=0,i=o.zoomOut.length;i>e;e++)n[o.zoomOut[e]]=-t},_addHooks:function(){o.DomEvent.on(e,"keydown",this._onKeyDown,this)},_removeHooks:function(){o.DomEvent.off(e,"keydown",this._onKeyDown,this)},_onKeyDown:function(t){var e=t.keyCode,i=this._map;if(e in this._panKeys){if(i._panAnim&&i._panAnim._inProgress)return;i.panBy(this._panKeys[e]),i.options.maxBounds&&i.panInsideBounds(i.options.maxBounds)}else{if(!(e in this._zoomKeys))return;i.setZoom(i.getZoom()+this._zoomKeys[e])}o.DomEvent.stop(t)}}),o.Map.addInitHook("addHandler","keyboard",o.Map.Keyboard),o.Handler.MarkerDrag=o.Handler.extend({initialize:function(t){this._marker=t},addHooks:function(){var t=this._marker._icon;this._draggable||(this._draggable=new o.Draggable(t,t)),this._draggable.on("dragstart",this._onDragStart,this).on("drag",this._onDrag,this).on("dragend",this._onDragEnd,this),this._draggable.enable(),o.DomUtil.addClass(this._marker._icon,"leaflet-marker-draggable")},removeHooks:function(){this._draggable.off("dragstart",this._onDragStart,this).off("drag",this._onDrag,this).off("dragend",this._onDragEnd,this),this._draggable.disable(),o.DomUtil.removeClass(this._marker._icon,"leaflet-marker-draggable")},moved:function(){return this._draggable&&this._draggable._moved},_onDragStart:function(){this._marker.closePopup().fire("movestart").fire("dragstart")},_onDrag:function(){var t=this._marker,e=t._shadow,i=o.DomUtil.getPosition(t._icon),n=t._map.layerPointToLatLng(i);e&&o.DomUtil.setPosition(e,i),t._latlng=n,t.fire("move",{latlng:n}).fire("drag")},_onDragEnd:function(t){this._marker.fire("moveend").fire("dragend",t)}}),o.Control=o.Class.extend({options:{position:"topright"},initialize:function(t){o.setOptions(this,t)},getPosition:function(){return this.options.position},setPosition:function(t){var e=this._map;return e&&e.removeControl(this),this.options.position=t,e&&e.addControl(this),this},getContainer:function(){return this._container},addTo:function(t){this._map=t;var e=this._container=this.onAdd(t),i=this.getPosition(),n=t._controlCorners[i];return o.DomUtil.addClass(e,"leaflet-control"),-1!==i.indexOf("bottom")?n.insertBefore(e,n.firstChild):n.appendChild(e),this},removeFrom:function(t){var e=this.getPosition(),i=t._controlCorners[e];return i.removeChild(this._container),this._map=null,this.onRemove&&this.onRemove(t),this},_refocusOnMap:function(){this._map&&this._map.getContainer().focus()}}),o.control=function(t){return new o.Control(t)},o.Map.include({addControl:function(t){return t.addTo(this),this},removeControl:function(t){return t.removeFrom(this),this},_initControlPos:function(){function t(t,s){var a=i+t+" "+i+s;e[t+s]=o.DomUtil.create("div",a,n)}var e=this._controlCorners={},i="leaflet-",n=this._controlContainer=o.DomUtil.create("div",i+"control-container",this._container);t("top","left"),t("top","right"),t("bottom","left"),t("bottom","right")},_clearControlPos:function(){this._container.removeChild(this._controlContainer)}}),o.Control.Zoom=o.Control.extend({options:{position:"topleft",zoomInText:"+",zoomInTitle:"Zoom in",zoomOutText:"-",zoomOutTitle:"Zoom out"},onAdd:function(t){var e="leaflet-control-zoom",i=o.DomUtil.create("div",e+" leaflet-bar");return this._map=t,this._zoomInButton=this._createButton(this.options.zoomInText,this.options.zoomInTitle,e+"-in",i,this._zoomIn,this),this._zoomOutButton=this._createButton(this.options.zoomOutText,this.options.zoomOutTitle,e+"-out",i,this._zoomOut,this),this._updateDisabled(),t.on("zoomend zoomlevelschange",this._updateDisabled,this),i},onRemove:function(t){t.off("zoomend zoomlevelschange",this._updateDisabled,this)},_zoomIn:function(t){this._map.zoomIn(t.shiftKey?3:1)},_zoomOut:function(t){this._map.zoomOut(t.shiftKey?3:1)},_createButton:function(t,e,i,n,s,a){var r=o.DomUtil.create("a",i,n);r.innerHTML=t,r.href="#",r.title=e;var h=o.DomEvent.stopPropagation;return o.DomEvent.on(r,"click",h).on(r,"mousedown",h).on(r,"dblclick",h).on(r,"click",o.DomEvent.preventDefault).on(r,"click",s,a).on(r,"click",this._refocusOnMap,a),r},_updateDisabled:function(){var t=this._map,e="leaflet-disabled";o.DomUtil.removeClass(this._zoomInButton,e),o.DomUtil.removeClass(this._zoomOutButton,e),t._zoom===t.getMinZoom()&&o.DomUtil.addClass(this._zoomOutButton,e),t._zoom===t.getMaxZoom()&&o.DomUtil.addClass(this._zoomInButton,e)}}),o.Map.mergeOptions({zoomControl:!0}),o.Map.addInitHook(function(){this.options.zoomControl&&(this.zoomControl=new o.Control.Zoom,this.addControl(this.zoomControl))}),o.control.zoom=function(t){return new o.Control.Zoom(t)},o.Control.Attribution=o.Control.extend({options:{position:"bottomright",prefix:'<a href="http://leafletjs.com" title="A JS library for interactive maps">Leaflet</a>'},initialize:function(t){o.setOptions(this,t),this._attributions={}},onAdd:function(t){this._container=o.DomUtil.create("div","leaflet-control-attribution"),o.DomEvent.disableClickPropagation(this._container);for(var e in t._layers)t._layers[e].getAttribution&&this.addAttribution(t._layers[e].getAttribution());return t.on("layeradd",this._onLayerAdd,this).on("layerremove",this._onLayerRemove,this),this._update(),this._container},onRemove:function(t){t.off("layeradd",this._onLayerAdd).off("layerremove",this._onLayerRemove)},setPrefix:function(t){return this.options.prefix=t,this._update(),this},addAttribution:function(t){return t?(this._attributions[t]||(this._attributions[t]=0),this._attributions[t]++,this._update(),this):void 0},removeAttribution:function(t){return t?(this._attributions[t]&&(this._attributions[t]--,this._update()),this):void 0},_update:function(){if(this._map){var t=[];for(var e in this._attributions)this._attributions[e]&&t.push(e);var i=[];this.options.prefix&&i.push(this.options.prefix),t.length&&i.push(t.join(", ")),this._container.innerHTML=i.join(" | ")}},_onLayerAdd:function(t){t.layer.getAttribution&&this.addAttribution(t.layer.getAttribution())},_onLayerRemove:function(t){t.layer.getAttribution&&this.removeAttribution(t.layer.getAttribution())}}),o.Map.mergeOptions({attributionControl:!0}),o.Map.addInitHook(function(){this.options.attributionControl&&(this.attributionControl=(new o.Control.Attribution).addTo(this))}),o.control.attribution=function(t){return new o.Control.Attribution(t)},o.Control.Scale=o.Control.extend({options:{position:"bottomleft",maxWidth:100,metric:!0,imperial:!0,updateWhenIdle:!1},onAdd:function(t){this._map=t;var e="leaflet-control-scale",i=o.DomUtil.create("div",e),n=this.options;return this._addScales(n,e,i),t.on(n.updateWhenIdle?"moveend":"move",this._update,this),t.whenReady(this._update,this),i},onRemove:function(t){t.off(this.options.updateWhenIdle?"moveend":"move",this._update,this)},_addScales:function(t,e,i){t.metric&&(this._mScale=o.DomUtil.create("div",e+"-line",i)),t.imperial&&(this._iScale=o.DomUtil.create("div",e+"-line",i))},_update:function(){var t=this._map.getBounds(),e=t.getCenter().lat,i=6378137*Math.PI*Math.cos(e*Math.PI/180),n=i*(t.getNorthEast().lng-t.getSouthWest().lng)/180,o=this._map.getSize(),s=this.options,a=0;o.x>0&&(a=n*(s.maxWidth/o.x)),this._updateScales(s,a)},_updateScales:function(t,e){t.metric&&e&&this._updateMetric(e),t.imperial&&e&&this._updateImperial(e)},_updateMetric:function(t){var e=this._getRoundNum(t);this._mScale.style.width=this._getScaleWidth(e/t)+"px",this._mScale.innerHTML=1e3>e?e+" m":e/1e3+" km"},_updateImperial:function(t){var e,i,n,o=3.2808399*t,s=this._iScale;o>5280?(e=o/5280,i=this._getRoundNum(e),s.style.width=this._getScaleWidth(i/e)+"px",s.innerHTML=i+" mi"):(n=this._getRoundNum(o),s.style.width=this._getScaleWidth(n/o)+"px",s.innerHTML=n+" ft")},_getScaleWidth:function(t){return Math.round(this.options.maxWidth*t)-10},_getRoundNum:function(t){var e=Math.pow(10,(Math.floor(t)+"").length-1),i=t/e;return i=i>=10?10:i>=5?5:i>=3?3:i>=2?2:1,e*i}}),o.control.scale=function(t){return new o.Control.Scale(t)},o.Control.Layers=o.Control.extend({options:{collapsed:!0,position:"topright",autoZIndex:!0},initialize:function(t,e,i){o.setOptions(this,i),this._layers={},this._lastZIndex=0,this._handlingClick=!1;for(var n in t)this._addLayer(t[n],n);for(n in e)this._addLayer(e[n],n,!0)},onAdd:function(t){return this._initLayout(),this._update(),t.on("layeradd",this._onLayerChange,this).on("layerremove",this._onLayerChange,this),this._container},onRemove:function(t){t.off("layeradd",this._onLayerChange,this).off("layerremove",this._onLayerChange,this)},addBaseLayer:function(t,e){return this._addLayer(t,e),this._update(),this},addOverlay:function(t,e){return this._addLayer(t,e,!0),this._update(),this},removeLayer:function(t){var e=o.stamp(t);return delete this._layers[e],this._update(),this},_initLayout:function(){var t="leaflet-control-layers",e=this._container=o.DomUtil.create("div",t);e.setAttribute("aria-haspopup",!0),o.Browser.touch?o.DomEvent.on(e,"click",o.DomEvent.stopPropagation):o.DomEvent.disableClickPropagation(e).disableScrollPropagation(e);var i=this._form=o.DomUtil.create("form",t+"-list");if(this.options.collapsed){o.Browser.android||o.DomEvent.on(e,"mouseover",this._expand,this).on(e,"mouseout",this._collapse,this);var n=this._layersLink=o.DomUtil.create("a",t+"-toggle",e);n.href="#",n.title="Layers",o.Browser.touch?o.DomEvent.on(n,"click",o.DomEvent.stop).on(n,"click",this._expand,this):o.DomEvent.on(n,"focus",this._expand,this),o.DomEvent.on(i,"click",function(){setTimeout(o.bind(this._onInputClick,this),0)},this),this._map.on("click",this._collapse,this)}else this._expand();this._baseLayersList=o.DomUtil.create("div",t+"-base",i),this._separator=o.DomUtil.create("div",t+"-separator",i),this._overlaysList=o.DomUtil.create("div",t+"-overlays",i),e.appendChild(i)},_addLayer:function(t,e,i){var n=o.stamp(t);this._layers[n]={layer:t,name:e,overlay:i},this.options.autoZIndex&&t.setZIndex&&(this._lastZIndex++,t.setZIndex(this._lastZIndex))},_update:function(){if(this._container){this._baseLayersList.innerHTML="",this._overlaysList.innerHTML="";var t,e,i=!1,n=!1;for(t in this._layers)e=this._layers[t],this._addItem(e),n=n||e.overlay,i=i||!e.overlay;this._separator.style.display=n&&i?"":"none"}},_onLayerChange:function(t){var e=this._layers[o.stamp(t.layer)];if(e){this._handlingClick||this._update();var i=e.overlay?"layeradd"===t.type?"overlayadd":"overlayremove":"layeradd"===t.type?"baselayerchange":null;i&&this._map.fire(i,e)}},_createRadioElement:function(t,i){var n='<input type="radio" class="leaflet-control-layers-selector" name="'+t+'"';i&&(n+=' checked="checked"'),n+="/>";var o=e.createElement("div");return o.innerHTML=n,o.firstChild},_addItem:function(t){var i,n=e.createElement("label"),s=this._map.hasLayer(t.layer);t.overlay?(i=e.createElement("input"),i.type="checkbox",i.className="leaflet-control-layers-selector",i.defaultChecked=s):i=this._createRadioElement("leaflet-base-layers",s),i.layerId=o.stamp(t.layer),o.DomEvent.on(i,"click",this._onInputClick,this);var a=e.createElement("span");a.innerHTML=" "+t.name,n.appendChild(i),n.appendChild(a);var r=t.overlay?this._overlaysList:this._baseLayersList;return r.appendChild(n),n},_onInputClick:function(){var t,e,i,n=this._form.getElementsByTagName("input"),o=n.length;for(this._handlingClick=!0,t=0;o>t;t++)e=n[t],i=this._layers[e.layerId],e.checked&&!this._map.hasLayer(i.layer)?this._map.addLayer(i.layer):!e.checked&&this._map.hasLayer(i.layer)&&this._map.removeLayer(i.layer);this._handlingClick=!1,this._refocusOnMap()},_expand:function(){o.DomUtil.addClass(this._container,"leaflet-control-layers-expanded")},_collapse:function(){this._container.className=this._container.className.replace(" leaflet-control-layers-expanded","")}}),o.control.layers=function(t,e,i){return new o.Control.Layers(t,e,i)},o.PosAnimation=o.Class.extend({includes:o.Mixin.Events,run:function(t,e,i,n){this.stop(),this._el=t,this._inProgress=!0,this._newPos=e,this.fire("start"),t.style[o.DomUtil.TRANSITION]="all "+(i||.25)+"s cubic-bezier(0,0,"+(n||.5)+",1)",o.DomEvent.on(t,o.DomUtil.TRANSITION_END,this._onTransitionEnd,this),o.DomUtil.setPosition(t,e),o.Util.falseFn(t.offsetWidth),this._stepTimer=setInterval(o.bind(this._onStep,this),50)},stop:function(){this._inProgress&&(o.DomUtil.setPosition(this._el,this._getPos()),this._onTransitionEnd(),o.Util.falseFn(this._el.offsetWidth))},_onStep:function(){var t=this._getPos();return t?(this._el._leaflet_pos=t,void this.fire("step")):void this._onTransitionEnd()},_transformRe:/([-+]?(?:\d*\.)?\d+)\D*, ([-+]?(?:\d*\.)?\d+)\D*\)/,_getPos:function(){var e,i,n,s=this._el,a=t.getComputedStyle(s);if(o.Browser.any3d){if(n=a[o.DomUtil.TRANSFORM].match(this._transformRe),!n)return;e=parseFloat(n[1]),i=parseFloat(n[2])}else e=parseFloat(a.left),i=parseFloat(a.top);return new o.Point(e,i,!0)},_onTransitionEnd:function(){o.DomEvent.off(this._el,o.DomUtil.TRANSITION_END,this._onTransitionEnd,this),this._inProgress&&(this._inProgress=!1,this._el.style[o.DomUtil.TRANSITION]="",this._el._leaflet_pos=this._newPos,clearInterval(this._stepTimer),this.fire("step").fire("end"))}}),o.Map.include({setView:function(t,e,n){if(e=e===i?this._zoom:this._limitZoom(e),t=this._limitCenter(o.latLng(t),e,this.options.maxBounds),n=n||{},this._panAnim&&this._panAnim.stop(),this._loaded&&!n.reset&&n!==!0){n.animate!==i&&(n.zoom=o.extend({animate:n.animate},n.zoom),n.pan=o.extend({animate:n.animate},n.pan));var s=this._zoom!==e?this._tryAnimatedZoom&&this._tryAnimatedZoom(t,e,n.zoom):this._tryAnimatedPan(t,n.pan);if(s)return clearTimeout(this._sizeTimer),this}return this._resetView(t,e),this},panBy:function(t,e){if(t=o.point(t).round(),e=e||{},!t.x&&!t.y)return this;if(this._panAnim||(this._panAnim=new o.PosAnimation,this._panAnim.on({step:this._onPanTransitionStep,end:this._onPanTransitionEnd},this)),e.noMoveStart||this.fire("movestart"),e.animate!==!1){o.DomUtil.addClass(this._mapPane,"leaflet-pan-anim");var i=this._getMapPanePos().subtract(t);this._panAnim.run(this._mapPane,i,e.duration||.25,e.easeLinearity)}else this._rawPanBy(t),this.fire("move").fire("moveend");return this},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){o.DomUtil.removeClass(this._mapPane,"leaflet-pan-anim"),this.fire("moveend")},_tryAnimatedPan:function(t,e){var i=this._getCenterOffset(t)._floor();return(e&&e.animate)===!0||this.getSize().contains(i)?(this.panBy(i,e),!0):!1}}),o.PosAnimation=o.DomUtil.TRANSITION?o.PosAnimation:o.PosAnimation.extend({run:function(t,e,i,n){this.stop(),this._el=t,this._inProgress=!0,this._duration=i||.25,this._easeOutPower=1/Math.max(n||.5,.2),this._startPos=o.DomUtil.getPosition(t),this._offset=e.subtract(this._startPos),this._startTime=+new Date,this.fire("start"),this._animate()},stop:function(){this._inProgress&&(this._step(),this._complete())},_animate:function(){this._animId=o.Util.requestAnimFrame(this._animate,this),this._step()},_step:function(){var t=+new Date-this._startTime,e=1e3*this._duration;e>t?this._runFrame(this._easeOut(t/e)):(this._runFrame(1),this._complete())},_runFrame:function(t){var e=this._startPos.add(this._offset.multiplyBy(t));o.DomUtil.setPosition(this._el,e),this.fire("step")},_complete:function(){o.Util.cancelAnimFrame(this._animId),this._inProgress=!1,this.fire("end")},_easeOut:function(t){return 1-Math.pow(1-t,this._easeOutPower)}}),o.Map.mergeOptions({zoomAnimation:!0,zoomAnimationThreshold:4}),o.DomUtil.TRANSITION&&o.Map.addInitHook(function(){this._zoomAnimated=this.options.zoomAnimation&&o.DomUtil.TRANSITION&&o.Browser.any3d&&!o.Browser.android23&&!o.Browser.mobileOpera,this._zoomAnimated&&o.DomEvent.on(this._mapPane,o.DomUtil.TRANSITION_END,this._catchTransitionEnd,this)}),o.Map.include(o.DomUtil.TRANSITION?{_catchTransitionEnd:function(t){this._animatingZoom&&t.propertyName.indexOf("transform")>=0&&this._onZoomTransitionEnd()},_nothingToAnimate:function(){return!this._container.getElementsByClassName("leaflet-zoom-animated").length},_tryAnimatedZoom:function(t,e,i){if(this._animatingZoom)return!0;if(i=i||{},!this._zoomAnimated||i.animate===!1||this._nothingToAnimate()||Math.abs(e-this._zoom)>this.options.zoomAnimationThreshold)return!1;var n=this.getZoomScale(e),o=this._getCenterOffset(t)._divideBy(1-1/n),s=this._getCenterLayerPoint()._add(o);return i.animate===!0||this.getSize().contains(o)?(this.fire("movestart").fire("zoomstart"),this._animateZoom(t,e,s,n,null,!0),!0):!1},_animateZoom:function(t,e,i,n,s,a,r){r||(this._animatingZoom=!0),o.DomUtil.addClass(this._mapPane,"leaflet-zoom-anim"),this._animateToCenter=t,this._animateToZoom=e,o.Draggable&&(o.Draggable._disabled=!0),o.Util.requestAnimFrame(function(){this.fire("zoomanim",{center:t,zoom:e,origin:i,scale:n,delta:s,backwards:a}),setTimeout(o.bind(this._onZoomTransitionEnd,this),250)},this)},_onZoomTransitionEnd:function(){this._animatingZoom&&(this._animatingZoom=!1,o.DomUtil.removeClass(this._mapPane,"leaflet-zoom-anim"),o.Util.requestAnimFrame(function(){this._resetView(this._animateToCenter,this._animateToZoom,!0,!0),o.Draggable&&(o.Draggable._disabled=!1)},this))}}:{}),o.TileLayer.include({_animateZoom:function(t){this._animating||(this._animating=!0,this._prepareBgBuffer());var e=this._bgBuffer,i=o.DomUtil.TRANSFORM,n=t.delta?o.DomUtil.getTranslateString(t.delta):e.style[i],s=o.DomUtil.getScaleString(t.scale,t.origin);e.style[i]=t.backwards?s+" "+n:n+" "+s},_endZoomAnim:function(){var t=this._tileContainer,e=this._bgBuffer;t.style.visibility="",t.parentNode.appendChild(t),o.Util.falseFn(e.offsetWidth);var i=this._map.getZoom();(i>this.options.maxZoom||i<this.options.minZoom)&&this._clearBgBuffer(),this._animating=!1},_clearBgBuffer:function(){var t=this._map;!t||t._animatingZoom||t.touchZoom._zooming||(this._bgBuffer.innerHTML="",this._bgBuffer.style[o.DomUtil.TRANSFORM]="")},_prepareBgBuffer:function(){var t=this._tileContainer,e=this._bgBuffer,i=this._getLoadedTilesPercentage(e),n=this._getLoadedTilesPercentage(t);return e&&i>.5&&.5>n?(t.style.visibility="hidden",void this._stopLoadingImages(t)):(e.style.visibility="hidden",e.style[o.DomUtil.TRANSFORM]="",this._tileContainer=e,e=this._bgBuffer=t,this._stopLoadingImages(e),void clearTimeout(this._clearBgBufferTimer))},_getLoadedTilesPercentage:function(t){var e,i,n=t.getElementsByTagName("img"),o=0;for(e=0,i=n.length;i>e;e++)n[e].complete&&o++;return o/i},_stopLoadingImages:function(t){var e,i,n,s=Array.prototype.slice.call(t.getElementsByTagName("img"));for(e=0,i=s.length;i>e;e++)n=s[e],n.complete||(n.onload=o.Util.falseFn,n.onerror=o.Util.falseFn,n.src=o.Util.emptyImageUrl,n.parentNode.removeChild(n))}}),o.Map.include({_defaultLocateOptions:{watch:!1,setView:!1,maxZoom:1/0,timeout:1e4,maximumAge:0,enableHighAccuracy:!1},locate:function(t){if(t=this._locateOptions=o.extend(this._defaultLocateOptions,t),!navigator.geolocation)return this._handleGeolocationError({code:0,message:"Geolocation not supported."}),this;var e=o.bind(this._handleGeolocationResponse,this),i=o.bind(this._handleGeolocationError,this);return t.watch?this._locationWatchId=navigator.geolocation.watchPosition(e,i,t):navigator.geolocation.getCurrentPosition(e,i,t),this},stopLocate:function(){return navigator.geolocation&&navigator.geolocation.clearWatch(this._locationWatchId),this._locateOptions&&(this._locateOptions.setView=!1),this},_handleGeolocationError:function(t){var e=t.code,i=t.message||(1===e?"permission denied":2===e?"position unavailable":"timeout");this._locateOptions.setView&&!this._loaded&&this.fitWorld(),this.fire("locationerror",{code:e,message:"Geolocation error: "+i+"."})},_handleGeolocationResponse:function(t){var e=t.coords.latitude,i=t.coords.longitude,n=new o.LatLng(e,i),s=180*t.coords.accuracy/40075017,a=s/Math.cos(o.LatLng.DEG_TO_RAD*e),r=o.latLngBounds([e-s,i-a],[e+s,i+a]),h=this._locateOptions;if(h.setView){var l=Math.min(this.getBoundsZoom(r),h.maxZoom);this.setView(n,l)}var u={latlng:n,bounds:r,timestamp:t.timestamp};for(var c in t.coords)"number"==typeof t.coords[c]&&(u[c]=t.coords[c]);this.fire("locationfound",u)}})}(window,document);
|
content_elements/bt_bb_leaflet_map/leafletmap/lib/leaflet.markercluster.js
ADDED
@@ -0,0 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
Leaflet.markercluster, Provides Beautiful Animated Marker Clustering functionality for Leaflet, a JS library for interactive maps.
|
3 |
+
https://github.com/Leaflet/Leaflet.markercluster
|
4 |
+
(c) 2012-2013, Dave Leaver, smartrak
|
5 |
+
*/
|
6 |
+
!function(t,e){L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animateAddingMarkers:!1,spiderfyDistanceMultiplier:1,polygonOptions:{}},initialize:function(t){L.Util.setOptions(this,t),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction),this._featureGroup=L.featureGroup(),this._featureGroup.on(L.FeatureGroup.EVENTS,this._propagateEvent,this),this._nonPointGroup=L.featureGroup(),this._nonPointGroup.on(L.FeatureGroup.EVENTS,this._propagateEvent,this),this._inZoomAnimation=0,this._needsClustering=[],this._needsRemoving=[],this._currentShownBounds=null,this._queue=[]},addLayer:function(t){if(t instanceof L.LayerGroup){var e=[];for(var i in t._layers)e.push(t._layers[i]);return this.addLayers(e)}if(!t.getLatLng)return this._nonPointGroup.addLayer(t),this;if(!this._map)return this._needsClustering.push(t),this;if(this.hasLayer(t))return this;this._unspiderfy&&this._unspiderfy(),this._addLayer(t,this._maxZoom);var n=t,s=this._map.getZoom();if(t.__parent)for(;n.__parent._zoom>=s;)n=n.__parent;return this._currentShownBounds.contains(n.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(t,n):this._animationAddLayerNonAnimated(t,n)),this},removeLayer:function(t){if(t instanceof L.LayerGroup){var e=[];for(var i in t._layers)e.push(t._layers[i]);return this.removeLayers(e)}return t.getLatLng?this._map?t.__parent?(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(t)),this._removeLayer(t,!0),this._featureGroup.hasLayer(t)&&(this._featureGroup.removeLayer(t),t.setOpacity&&t.setOpacity(1)),this):this:(!this._arraySplice(this._needsClustering,t)&&this.hasLayer(t)&&this._needsRemoving.push(t),this):(this._nonPointGroup.removeLayer(t),this)},addLayers:function(t){var e,i,n,s=this._map,r=this._featureGroup,o=this._nonPointGroup;for(e=0,i=t.length;i>e;e++)if(n=t[e],n.getLatLng){if(!this.hasLayer(n))if(s){if(this._addLayer(n,this._maxZoom),n.__parent&&2===n.__parent.getChildCount()){var a=n.__parent.getAllChildMarkers(),h=a[0]===n?a[1]:a[0];r.removeLayer(h)}}else this._needsClustering.push(n)}else o.addLayer(n);return s&&(r.eachLayer(function(t){t instanceof L.MarkerCluster&&t._iconNeedsUpdate&&t._updateIcon()}),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)),this},removeLayers:function(t){var e,i,n,s=this._featureGroup,r=this._nonPointGroup;if(!this._map){for(e=0,i=t.length;i>e;e++)n=t[e],this._arraySplice(this._needsClustering,n),r.removeLayer(n);return this}for(e=0,i=t.length;i>e;e++)n=t[e],n.__parent?(this._removeLayer(n,!0,!0),s.hasLayer(n)&&(s.removeLayer(n),n.setOpacity&&n.setOpacity(1))):r.removeLayer(n);return this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),s.eachLayer(function(t){t instanceof L.MarkerCluster&&t._updateIcon()}),this},clearLayers:function(){return this._map||(this._needsClustering=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(t){delete t.__parent}),this._map&&this._generateInitialClusters(),this},getBounds:function(){var t=new L.LatLngBounds;if(this._topClusterLevel)t.extend(this._topClusterLevel._bounds);else for(var e=this._needsClustering.length-1;e>=0;e--)t.extend(this._needsClustering[e].getLatLng());return t.extend(this._nonPointGroup.getBounds()),t},eachLayer:function(t,e){var i,n=this._needsClustering.slice();for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(n),i=n.length-1;i>=0;i--)t.call(e,n[i]);this._nonPointGroup.eachLayer(t,e)},getLayers:function(){var t=[];return this.eachLayer(function(e){t.push(e)}),t},getLayer:function(t){var e=null;return this.eachLayer(function(i){L.stamp(i)===t&&(e=i)}),e},hasLayer:function(t){if(!t)return!1;var e,i=this._needsClustering;for(e=i.length-1;e>=0;e--)if(i[e]===t)return!0;for(i=this._needsRemoving,e=i.length-1;e>=0;e--)if(i[e]===t)return!1;return!(!t.__parent||t.__parent._group!==this)||this._nonPointGroup.hasLayer(t)},zoomToShowLayer:function(t,e){var i=function(){if((t._icon||t.__parent._icon)&&!this._inZoomAnimation)if(this._map.off("moveend",i,this),this.off("animationend",i,this),t._icon)e();else if(t.__parent._icon){var n=function(){this.off("spiderfied",n,this),e()};this.on("spiderfied",n,this),t.__parent.spiderfy()}};t._icon&&this._map.getBounds().contains(t.getLatLng())?e():t.__parent._zoom<this._map.getZoom()?(this._map.on("moveend",i,this),this._map.panTo(t.getLatLng())):(this._map.on("moveend",i,this),this.on("animationend",i,this),this._map.setView(t.getLatLng(),t.__parent._zoom+1),t.__parent.zoomToBounds())},onAdd:function(t){this._map=t;var e,i,n;if(!isFinite(this._map.getMaxZoom()))throw"Map has no maxZoom specified";for(this._featureGroup.onAdd(t),this._nonPointGroup.onAdd(t),this._gridClusters||this._generateInitialClusters(),e=0,i=this._needsRemoving.length;i>e;e++)n=this._needsRemoving[e],this._removeLayer(n,!0);for(this._needsRemoving=[],e=0,i=this._needsClustering.length;i>e;e++)n=this._needsClustering[e],n.getLatLng?n.__parent||this._addLayer(n,this._maxZoom):this._featureGroup.addLayer(n);this._needsClustering=[],this._map.on("zoomend",this._zoomEnd,this),this._map.on("moveend",this._moveEnd,this),this._spiderfierOnAdd&&this._spiderfierOnAdd(),this._bindEvents(),this._zoom=this._map.getZoom(),this._currentShownBounds=this._getExpandedVisibleBounds(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)},onRemove:function(t){t.off("zoomend",this._zoomEnd,this),t.off("moveend",this._moveEnd,this),this._unbindEvents(),this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""),this._spiderfierOnRemove&&this._spiderfierOnRemove(),this._hideCoverage(),this._featureGroup.onRemove(t),this._nonPointGroup.onRemove(t),this._featureGroup.clearLayers(),this._map=null},getVisibleParent:function(t){for(var e=t;e&&!e._icon;)e=e.__parent;return e||null},_arraySplice:function(t,e){for(var i=t.length-1;i>=0;i--)if(t[i]===e)return t.splice(i,1),!0},_removeLayer:function(t,e,i){var n=this._gridClusters,s=this._gridUnclustered,r=this._featureGroup,o=this._map;if(e)for(var a=this._maxZoom;a>=0&&s[a].removeObject(t,o.project(t.getLatLng(),a));a--);var h,_=t.__parent,u=_._markers;for(this._arraySplice(u,t);_&&(_._childCount--,!(_._zoom<0));)e&&_._childCount<=1?(h=_._markers[0]===t?_._markers[1]:_._markers[0],n[_._zoom].removeObject(_,o.project(_._cLatLng,_._zoom)),s[_._zoom].addObject(h,o.project(h.getLatLng(),_._zoom)),this._arraySplice(_.__parent._childClusters,_),_.__parent._markers.push(h),h.__parent=_.__parent,_._icon&&(r.removeLayer(_),i||r.addLayer(h))):(_._recalculateBounds(),i&&_._icon||_._updateIcon()),_=_.__parent;delete t.__parent},_isOrIsParent:function(t,e){for(;e;){if(t===e)return!0;e=e.parentNode}return!1},_propagateEvent:function(t){if(t.layer instanceof L.MarkerCluster){if(t.originalEvent&&this._isOrIsParent(t.layer._icon,t.originalEvent.relatedTarget))return;t.type="cluster"+t.type}this.fire(t.type,t)},_defaultIconCreateFunction:function(t){var e=t.getChildCount(),i=" marker-cluster-";return i+=10>e?"small":100>e?"medium":"large",new L.DivIcon({html:"<div><span>"+e+"</span></div>",className:"marker-cluster"+i,iconSize:new L.Point(40,40)})},_bindEvents:function(){var t=this._map,e=this.options.spiderfyOnMaxZoom,i=this.options.showCoverageOnHover,n=this.options.zoomToBoundsOnClick;(e||n)&&this.on("clusterclick",this._zoomOrSpiderfy,this),i&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),t.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(t){var e=this._map;e.getMaxZoom()===e.getZoom()?this.options.spiderfyOnMaxZoom&&t.layer.spiderfy():this.options.zoomToBoundsOnClick&&t.layer.zoomToBounds(),t.originalEvent&&13===t.originalEvent.keyCode&&e._container.focus()},_showCoverage:function(t){var e=this._map;this._inZoomAnimation||(this._shownPolygon&&e.removeLayer(this._shownPolygon),t.layer.getChildCount()>2&&t.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(t.layer.getConvexHull(),this.options.polygonOptions),e.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var t=this.options.spiderfyOnMaxZoom,e=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,n=this._map;(t||i)&&this.off("clusterclick",this._zoomOrSpiderfy,this),e&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),n.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=this._map._zoom,this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var t=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,this._zoom,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._map._zoom,t),this._currentShownBounds=t}},_generateInitialClusters:function(){var t=this._map.getMaxZoom(),e=this.options.maxClusterRadius;this.options.disableClusteringAtZoom&&(t=this.options.disableClusteringAtZoom-1),this._maxZoom=t,this._gridClusters={},this._gridUnclustered={};for(var i=t;i>=0;i--)this._gridClusters[i]=new L.DistanceGrid(e),this._gridUnclustered[i]=new L.DistanceGrid(e);this._topClusterLevel=new L.MarkerCluster(this,-1)},_addLayer:function(t,e){var i,n,s=this._gridClusters,r=this._gridUnclustered;for(this.options.singleMarkerMode&&(t.options.icon=this.options.iconCreateFunction({getChildCount:function(){return 1},getAllChildMarkers:function(){return[t]}}));e>=0;e--){i=this._map.project(t.getLatLng(),e);var o=s[e].getNearObject(i);if(o)return o._addChild(t),t.__parent=o,void 0;if(o=r[e].getNearObject(i)){var a=o.__parent;a&&this._removeLayer(o,!1);var h=new L.MarkerCluster(this,e,o,t);s[e].addObject(h,this._map.project(h._cLatLng,e)),o.__parent=h,t.__parent=h;var _=h;for(n=e-1;n>a._zoom;n--)_=new L.MarkerCluster(this,n,_),s[n].addObject(_,this._map.project(o.getLatLng(),n));for(a._addChild(_),n=e;n>=0&&r[n].removeObject(o,this._map.project(o.getLatLng(),n));n--);return}r[e].addObject(t,i)}this._topClusterLevel._addChild(t),t.__parent=this._topClusterLevel},_enqueue:function(t){this._queue.push(t),this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var t=0;t<this._queue.length;t++)this._queue[t].call(this);this._queue.length=0,clearTimeout(this._queueTimeout),this._queueTimeout=null},_mergeSplitClusters:function(){this._processQueue(),this._zoom<this._map._zoom&&this._currentShownBounds.contains(this._getExpandedVisibleBounds())?(this._animationStart(),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,this._zoom,this._getExpandedVisibleBounds()),this._animationZoomIn(this._zoom,this._map._zoom)):this._zoom>this._map._zoom?(this._animationStart(),this._animationZoomOut(this._zoom,this._map._zoom)):this._moveEnd()},_getExpandedVisibleBounds:function(){if(!this.options.removeOutsideVisibleBounds)return this.getBounds();var t=this._map,e=t.getBounds(),i=e._southWest,n=e._northEast,s=L.Browser.mobile?0:Math.abs(i.lat-n.lat),r=L.Browser.mobile?0:Math.abs(i.lng-n.lng);return new L.LatLngBounds(new L.LatLng(i.lat-s,i.lng-r,!0),new L.LatLng(n.lat+s,n.lng+r,!0))},_animationAddLayerNonAnimated:function(t,e){if(e===t)this._featureGroup.addLayer(t);else if(2===e._childCount){e._addToMap();var i=e.getAllChildMarkers();this._featureGroup.removeLayer(i[0]),this._featureGroup.removeLayer(i[1])}else e._updateIcon()}}),L.MarkerClusterGroup.include(L.DomUtil.TRANSITION?{_animationStart:function(){this._map._mapPane.className+=" leaflet-cluster-anim",this._inZoomAnimation++},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","")),this._inZoomAnimation--,this.fire("animationend")},_animationZoomIn:function(t,e){var i,n=this._getExpandedVisibleBounds(),s=this._featureGroup;this._topClusterLevel._recursively(n,t,0,function(r){var o,a=r._latlng,h=r._markers;for(n.contains(a)||(a=null),r._isSingleParent()&&t+1===e?(s.removeLayer(r),r._recursivelyAddChildrenToMap(null,e,n)):(r.setOpacity(0),r._recursivelyAddChildrenToMap(a,e,n)),i=h.length-1;i>=0;i--)o=h[i],n.contains(o._latlng)||s.removeLayer(o)}),this._forceLayout(),this._topClusterLevel._recursivelyBecomeVisible(n,e),s.eachLayer(function(t){t instanceof L.MarkerCluster||!t._icon||t.setOpacity(1)}),this._topClusterLevel._recursively(n,t,e,function(t){t._recursivelyRestoreChildPositions(e)}),this._enqueue(function(){this._topClusterLevel._recursively(n,t,0,function(t){s.removeLayer(t),t.setOpacity(1)}),this._animationEnd()})},_animationZoomOut:function(t,e){this._animationZoomOutSingle(this._topClusterLevel,t-1,e),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds()),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,t,this._getExpandedVisibleBounds())},_animationZoomOutSingle:function(t,e,i){var n=this._getExpandedVisibleBounds();t._recursivelyAnimateChildrenInAndAddSelfToMap(n,e+1,i);var s=this;this._forceLayout(),t._recursivelyBecomeVisible(n,i),this._enqueue(function(){if(1===t._childCount){var r=t._markers[0];r.setLatLng(r.getLatLng()),r.setOpacity(1)}else t._recursively(n,i,0,function(t){t._recursivelyRemoveChildrenFromMap(n,e+1)});s._animationEnd()})},_animationAddLayer:function(t,e){var i=this,n=this._featureGroup;n.addLayer(t),e!==t&&(e._childCount>2?(e._updateIcon(),this._forceLayout(),this._animationStart(),t._setPos(this._map.latLngToLayerPoint(e.getLatLng())),t.setOpacity(0),this._enqueue(function(){n.removeLayer(t),t.setOpacity(1),i._animationEnd()})):(this._forceLayout(),i._animationStart(),i._animationZoomOutSingle(e,this._map.getMaxZoom(),this._map.getZoom())))},_forceLayout:function(){L.Util.falseFn(e.body.offsetWidth)}}:{_animationStart:function(){},_animationZoomIn:function(t,e){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds())},_animationZoomOut:function(t,e){this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,e,this._getExpandedVisibleBounds())},_animationAddLayer:function(t,e){this._animationAddLayerNonAnimated(t,e)}}),L.markerClusterGroup=function(t){return new L.MarkerClusterGroup(t)},L.MarkerCluster=L.Marker.extend({initialize:function(t,e,i,n){L.Marker.prototype.initialize.call(this,i?i._cLatLng||i.getLatLng():new L.LatLng(0,0),{icon:this}),this._group=t,this._zoom=e,this._markers=[],this._childClusters=[],this._childCount=0,this._iconNeedsUpdate=!0,this._bounds=new L.LatLngBounds,i&&this._addChild(i),n&&this._addChild(n)},getAllChildMarkers:function(t){t=t||[];for(var e=this._childClusters.length-1;e>=0;e--)this._childClusters[e].getAllChildMarkers(t);for(var i=this._markers.length-1;i>=0;i--)t.push(this._markers[i]);return t},getChildCount:function(){return this._childCount},zoomToBounds:function(){for(var t,e=this._childClusters.slice(),i=this._group._map,n=i.getBoundsZoom(this._bounds),s=this._zoom+1,r=i.getZoom();e.length>0&&n>s;){s++;var o=[];for(t=0;t<e.length;t++)o=o.concat(e[t]._childClusters);e=o}n>s?this._group._map.setView(this._latlng,s):r>=n?this._group._map.setView(this._latlng,r+1):this._group._map.fitBounds(this._bounds)},getBounds:function(){var t=new L.LatLngBounds;return t.extend(this._bounds),t},_updateIcon:function(){this._iconNeedsUpdate=!0,this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(t,e){this._iconNeedsUpdate=!0,this._expandBounds(t),t instanceof L.MarkerCluster?(e||(this._childClusters.push(t),t.__parent=this),this._childCount+=t._childCount):(e||this._markers.push(t),this._childCount++),this.__parent&&this.__parent._addChild(t,!0)},_expandBounds:function(t){var e,i=t._wLatLng||t._latlng;t instanceof L.MarkerCluster?(this._bounds.extend(t._bounds),e=t._childCount):(this._bounds.extend(i),e=1),this._cLatLng||(this._cLatLng=t._cLatLng||i);var n=this._childCount+e;this._wLatLng?(this._wLatLng.lat=(i.lat*e+this._wLatLng.lat*this._childCount)/n,this._wLatLng.lng=(i.lng*e+this._wLatLng.lng*this._childCount)/n):this._latlng=this._wLatLng=new L.LatLng(i.lat,i.lng)},_addToMap:function(t){t&&(this._backupLatlng=this._latlng,this.setLatLng(t)),this._group._featureGroup.addLayer(this)},_recursivelyAnimateChildrenIn:function(t,e,i){this._recursively(t,0,i-1,function(t){var i,n,s=t._markers;for(i=s.length-1;i>=0;i--)n=s[i],n._icon&&(n._setPos(e),n.setOpacity(0))},function(t){var i,n,s=t._childClusters;for(i=s.length-1;i>=0;i--)n=s[i],n._icon&&(n._setPos(e),n.setOpacity(0))})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(t,e,i){this._recursively(t,i,0,function(n){n._recursivelyAnimateChildrenIn(t,n._group._map.latLngToLayerPoint(n.getLatLng()).round(),e),n._isSingleParent()&&e-1===i?(n.setOpacity(1),n._recursivelyRemoveChildrenFromMap(t,e)):n.setOpacity(0),n._addToMap()})},_recursivelyBecomeVisible:function(t,e){this._recursively(t,0,e,null,function(t){t.setOpacity(1)})},_recursivelyAddChildrenToMap:function(t,e,i){this._recursively(i,-1,e,function(n){if(e!==n._zoom)for(var s=n._markers.length-1;s>=0;s--){var r=n._markers[s];i.contains(r._latlng)&&(t&&(r._backupLatlng=r.getLatLng(),r.setLatLng(t),r.setOpacity&&r.setOpacity(0)),n._group._featureGroup.addLayer(r))}},function(e){e._addToMap(t)})},_recursivelyRestoreChildPositions:function(t){for(var e=this._markers.length-1;e>=0;e--){var i=this._markers[e];i._backupLatlng&&(i.setLatLng(i._backupLatlng),delete i._backupLatlng)}if(t-1===this._zoom)for(var n=this._childClusters.length-1;n>=0;n--)this._childClusters[n]._restorePosition();else for(var s=this._childClusters.length-1;s>=0;s--)this._childClusters[s]._recursivelyRestoreChildPositions(t)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(t,e,i){var n,s;this._recursively(t,-1,e-1,function(t){for(s=t._markers.length-1;s>=0;s--)n=t._markers[s],i&&i.contains(n._latlng)||(t._group._featureGroup.removeLayer(n),n.setOpacity&&n.setOpacity(1))},function(t){for(s=t._childClusters.length-1;s>=0;s--)n=t._childClusters[s],i&&i.contains(n._latlng)||(t._group._featureGroup.removeLayer(n),n.setOpacity&&n.setOpacity(1))})},_recursively:function(t,e,i,n,s){var r,o,a=this._childClusters,h=this._zoom;if(e>h)for(r=a.length-1;r>=0;r--)o=a[r],t.intersects(o._bounds)&&o._recursively(t,e,i,n,s);else if(n&&n(this),s&&this._zoom===i&&s(this),i>h)for(r=a.length-1;r>=0;r--)o=a[r],t.intersects(o._bounds)&&o._recursively(t,e,i,n,s)},_recalculateBounds:function(){var t,e=this._markers,i=this._childClusters;for(this._bounds=new L.LatLngBounds,delete this._wLatLng,t=e.length-1;t>=0;t--)this._expandBounds(e[t]);for(t=i.length-1;t>=0;t--)this._expandBounds(i[t])},_isSingleParent:function(){return this._childClusters.length>0&&this._childClusters[0]._childCount===this._childCount}}),L.DistanceGrid=function(t){this._cellSize=t,this._sqCellSize=t*t,this._grid={},this._objectPoint={}},L.DistanceGrid.prototype={addObject:function(t,e){var i=this._getCoord(e.x),n=this._getCoord(e.y),s=this._grid,r=s[n]=s[n]||{},o=r[i]=r[i]||[],a=L.Util.stamp(t);this._objectPoint[a]=e,o.push(t)},updateObject:function(t,e){this.removeObject(t),this.addObject(t,e)},removeObject:function(t,e){var i,n,s=this._getCoord(e.x),r=this._getCoord(e.y),o=this._grid,a=o[r]=o[r]||{},h=a[s]=a[s]||[];for(delete this._objectPoint[L.Util.stamp(t)],i=0,n=h.length;n>i;i++)if(h[i]===t)return h.splice(i,1),1===n&&delete a[s],!0},eachObject:function(t,e){var i,n,s,r,o,a,h,_=this._grid;for(i in _){o=_[i];for(n in o)for(a=o[n],s=0,r=a.length;r>s;s++)h=t.call(e,a[s]),h&&(s--,r--)}},getNearObject:function(t){var e,i,n,s,r,o,a,h,_=this._getCoord(t.x),u=this._getCoord(t.y),l=this._objectPoint,d=this._sqCellSize,p=null;for(e=u-1;u+1>=e;e++)if(s=this._grid[e])for(i=_-1;_+1>=i;i++)if(r=s[i])for(n=0,o=r.length;o>n;n++)a=r[n],h=this._sqDist(l[L.Util.stamp(a)],t),d>h&&(d=h,p=a);return p},_getCoord:function(t){return Math.floor(t/this._cellSize)},_sqDist:function(t,e){var i=e.x-t.x,n=e.y-t.y;return i*i+n*n}},function(){L.QuickHull={getDistant:function(t,e){var i=e[1].lat-e[0].lat,n=e[0].lng-e[1].lng;return n*(t.lat-e[0].lat)+i*(t.lng-e[0].lng)},findMostDistantPointFromBaseLine:function(t,e){var i,n,s,r=0,o=null,a=[];for(i=e.length-1;i>=0;i--)n=e[i],s=this.getDistant(n,t),s>0&&(a.push(n),s>r&&(r=s,o=n));return{maxPoint:o,newPoints:a}},buildConvexHull:function(t,e){var i=[],n=this.findMostDistantPointFromBaseLine(t,e);return n.maxPoint?(i=i.concat(this.buildConvexHull([t[0],n.maxPoint],n.newPoints)),i=i.concat(this.buildConvexHull([n.maxPoint,t[1]],n.newPoints))):[t[0]]},getConvexHull:function(t){var e,i=!1,n=!1,s=null,r=null;for(e=t.length-1;e>=0;e--){var o=t[e];(i===!1||o.lat>i)&&(s=o,i=o.lat),(n===!1||o.lat<n)&&(r=o,n=o.lat)}var a=[].concat(this.buildConvexHull([r,s],t),this.buildConvexHull([s,r],t));return a}}}(),L.MarkerCluster.include({getConvexHull:function(){var t,e,i=this.getAllChildMarkers(),n=[];for(e=i.length-1;e>=0;e--)t=i[e].getLatLng(),n.push(t);return L.QuickHull.getConvexHull(n)}}),L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:Math.PI/6,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var t,e=this.getAllChildMarkers(),i=this._group,n=i._map,s=n.latLngToLayerPoint(this._latlng);this._group._unspiderfy(),this._group._spiderfied=this,e.length>=this._circleSpiralSwitchover?t=this._generatePointsSpiral(e.length,s):(s.y+=10,t=this._generatePointsCircle(e.length,s)),this._animationSpiderfy(e,t)}},unspiderfy:function(t){this._group._inZoomAnimation||(this._animationUnspiderfy(t),this._group._spiderfied=null)},_generatePointsCircle:function(t,e){var i,n,s=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+t),r=s/this._2PI,o=this._2PI/t,a=[];for(a.length=t,i=t-1;i>=0;i--)n=this._circleStartAngle+i*o,a[i]=new L.Point(e.x+r*Math.cos(n),e.y+r*Math.sin(n))._round();return a},_generatePointsSpiral:function(t,e){var i,n=this._group.options.spiderfyDistanceMultiplier*this._spiralLengthStart,s=this._group.options.spiderfyDistanceMultiplier*this._spiralFootSeparation,r=this._group.options.spiderfyDistanceMultiplier*this._spiralLengthFactor,o=0,a=[];for(a.length=t,i=t-1;i>=0;i--)o+=s/n+5e-4*i,a[i]=new L.Point(e.x+n*Math.cos(o),e.y+n*Math.sin(o))._round(),n+=this._2PI*r/o;return a},_noanimationUnspiderfy:function(){var t,e,i=this._group,n=i._map,s=i._featureGroup,r=this.getAllChildMarkers();for(this.setOpacity(1),e=r.length-1;e>=0;e--)t=r[e],s.removeLayer(t),t._preSpiderfyLatlng&&(t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng),t.setZIndexOffset&&t.setZIndexOffset(0),t._spiderLeg&&(n.removeLayer(t._spiderLeg),delete t._spiderLeg);i._spiderfied=null}}),L.MarkerCluster.include(L.DomUtil.TRANSITION?{SVG_ANIMATION:function(){return e.createElementNS("http://www.w3.org/2000/svg","animate").toString().indexOf("SVGAnimate")>-1}(),_animationSpiderfy:function(t,i){var n,s,r,o,a=this,h=this._group,_=h._map,u=h._featureGroup,l=_.latLngToLayerPoint(this._latlng);for(n=t.length-1;n>=0;n--)s=t[n],s.setOpacity?(s.setZIndexOffset(1e6),s.setOpacity(0),u.addLayer(s),s._setPos(l)):u.addLayer(s);h._forceLayout(),h._animationStart();var d=L.Path.SVG?0:.3,p=L.Path.SVG_NS;for(n=t.length-1;n>=0;n--)if(o=_.layerPointToLatLng(i[n]),s=t[n],s._preSpiderfyLatlng=s._latlng,s.setLatLng(o),s.setOpacity&&s.setOpacity(1),r=new L.Polyline([a._latlng,o],{weight:1.5,color:"#222",opacity:d}),_.addLayer(r),s._spiderLeg=r,L.Path.SVG&&this.SVG_ANIMATION){var c=r._path.getTotalLength();r._path.setAttribute("stroke-dasharray",c+","+c);var m=e.createElementNS(p,"animate");m.setAttribute("attributeName","stroke-dashoffset"),m.setAttribute("begin","indefinite"),m.setAttribute("from",c),m.setAttribute("to",0),m.setAttribute("dur",.25),r._path.appendChild(m),m.beginElement(),m=e.createElementNS(p,"animate"),m.setAttribute("attributeName","stroke-opacity"),m.setAttribute("attributeName","stroke-opacity"),m.setAttribute("begin","indefinite"),m.setAttribute("from",0),m.setAttribute("to",.5),m.setAttribute("dur",.25),r._path.appendChild(m),m.beginElement()}if(a.setOpacity(.3),L.Path.SVG)for(this._group._forceLayout(),n=t.length-1;n>=0;n--)s=t[n]._spiderLeg,s.options.opacity=.5,s._path.setAttribute("stroke-opacity",.5);setTimeout(function(){h._animationEnd(),h.fire("spiderfied")},200)},_animationUnspiderfy:function(t){var e,i,n,s=this._group,r=s._map,o=s._featureGroup,a=t?r._latLngToNewLayerPoint(this._latlng,t.zoom,t.center):r.latLngToLayerPoint(this._latlng),h=this.getAllChildMarkers(),_=L.Path.SVG&&this.SVG_ANIMATION;for(s._animationStart(),this.setOpacity(1),i=h.length-1;i>=0;i--)e=h[i],e._preSpiderfyLatlng&&(e.setLatLng(e._preSpiderfyLatlng),delete e._preSpiderfyLatlng,e.setOpacity?(e._setPos(a),e.setOpacity(0)):o.removeLayer(e),_&&(n=e._spiderLeg._path.childNodes[0],n.setAttribute("to",n.getAttribute("from")),n.setAttribute("from",0),n.beginElement(),n=e._spiderLeg._path.childNodes[1],n.setAttribute("from",.5),n.setAttribute("to",0),n.setAttribute("stroke-opacity",0),n.beginElement(),e._spiderLeg._path.setAttribute("stroke-opacity",0)));setTimeout(function(){var t=0;for(i=h.length-1;i>=0;i--)e=h[i],e._spiderLeg&&t++;for(i=h.length-1;i>=0;i--)e=h[i],e._spiderLeg&&(e.setOpacity&&(e.setOpacity(1),e.setZIndexOffset(0)),t>1&&o.removeLayer(e),r.removeLayer(e._spiderLeg),delete e._spiderLeg);s._animationEnd()},200)}}:{_animationSpiderfy:function(t,e){var i,n,s,r,o=this._group,a=o._map,h=o._featureGroup;for(i=t.length-1;i>=0;i--)r=a.layerPointToLatLng(e[i]),n=t[i],n._preSpiderfyLatlng=n._latlng,n.setLatLng(r),n.setZIndexOffset&&n.setZIndexOffset(1e6),h.addLayer(n),s=new L.Polyline([this._latlng,r],{weight:1.5,color:"#222"}),a.addLayer(s),n._spiderLeg=s;this.setOpacity(.3),o.fire("spiderfied")},_animationUnspiderfy:function(){this._noanimationUnspiderfy()}}),L.MarkerClusterGroup.include({_spiderfied:null,_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this),this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this),this._map.on("zoomend",this._noanimationUnspiderfy,this),L.Path.SVG&&!L.Browser.touch&&this._map._initPathRoot()},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this),this._map.off("zoomstart",this._unspiderfyZoomStart,this),this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy()},_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(t){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(t))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(t){this._spiderfied&&this._spiderfied.unspiderfy(t)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(t){t._spiderLeg&&(this._featureGroup.removeLayer(t),t.setOpacity(1),t.setZIndexOffset(0),this._map.removeLayer(t._spiderLeg),delete t._spiderLeg)}})}(window,document);
|
7 |
+
|
content_elements/bt_bb_leaflet_map_location/bt_bb_leaflet_map_location.php
ADDED
@@ -0,0 +1,61 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_leaflet_map_location extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'latitude' => '',
|
8 |
+
'longitude' => '',
|
9 |
+
'icon' => ''
|
10 |
+
) ), $atts, $this->shortcode ) );
|
11 |
+
|
12 |
+
$class_master = 'bt_bb_map_location';
|
13 |
+
|
14 |
+
$class = array( $this->shortcode, $class_master );
|
15 |
+
|
16 |
+
if ( $el_class != '' ) {
|
17 |
+
$class[] = $el_class;
|
18 |
+
}
|
19 |
+
|
20 |
+
if ( $content == '' ) {
|
21 |
+
$class[] = $this->shortcode . '_without_content';
|
22 |
+
$class[] = $class_master . '_without_content';
|
23 |
+
}
|
24 |
+
|
25 |
+
$id_attr = '';
|
26 |
+
if ( $el_id != '' ) {
|
27 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
28 |
+
}
|
29 |
+
|
30 |
+
$style_attr = '';
|
31 |
+
if ( $el_style != '' ) {
|
32 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
33 |
+
}
|
34 |
+
|
35 |
+
if ( $icon != '' ) {
|
36 |
+
$icon = wp_get_attachment_image_src( $icon, 'full' );
|
37 |
+
$icon = $icon[0];
|
38 |
+
}
|
39 |
+
|
40 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
41 |
+
|
42 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-lat="' . esc_attr($latitude) . '" data-lng="' . esc_attr($longitude) . '" data-icon="' . esc_attr($icon) . '">' . wptexturize( do_shortcode( $content ) ) . '</div>';
|
43 |
+
|
44 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
45 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
46 |
+
|
47 |
+
return $output;
|
48 |
+
|
49 |
+
}
|
50 |
+
|
51 |
+
function map_shortcode() {
|
52 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Leaflet Maps Location', 'boldthemes_framework_textdomain' ), 'description' => esc_html__( 'OpenSteet Map Location', 'boldthemes_framework_textdomain' ), 'container' => 'vertical', 'as_child' => array( 'only' => 'bt_bb_leaflet_map' ), 'accept' => array( 'bt_bb_headline' => true, 'bt_bb_text' => true, 'bt_bb_button' => true, 'bt_bb_icon' => true, 'bt_bb_service_icon' => true, 'bt_bb_image' => true, 'bt_bb_separator' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
53 |
+
'params' => array(
|
54 |
+
array( 'param_name' => 'latitude', 'type' => 'textfield', 'heading' => esc_html__( 'Latitude', 'boldthemes_framework_textdomain' ), 'preview' => true ),
|
55 |
+
array( 'param_name' => 'longitude', 'type' => 'textfield', 'heading' => esc_html__( 'Longitude', 'boldthemes_framework_textdomain' ), 'preview' => true ),
|
56 |
+
array( 'param_name' => 'icon', 'type' => 'attach_image', 'heading' => esc_html__( 'Icon', 'boldthemes_framework_textdomain' ), 'preview' => true )
|
57 |
+
)
|
58 |
+
) );
|
59 |
+
}
|
60 |
+
}
|
61 |
+
|
content_elements/bt_bb_masonry_image_grid/bt_bb_masonry_image_grid.js
ADDED
@@ -0,0 +1,78 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function( $ ) {
|
2 |
+
"use strict";
|
3 |
+
|
4 |
+
var bt_bb_masonry_image_grid_fix_resize = function() {
|
5 |
+
$( '.bt_bb_masonry_image_grid .bt_bb_grid_item' ).each(function() {
|
6 |
+
$( this ).height( Math.floor( $( this ).width() * $( this ).data( 'hw' ) ) );
|
7 |
+
});
|
8 |
+
$( '.bt_bb_masonry_image_grid' ).each( function() {
|
9 |
+
$( this ).width( 'initial' );
|
10 |
+
var child_margin = parseInt( $( this ).find( '.bt_bb_masonry_post_image_content' ).css( 'margin-right' ) ) + parseInt( $( this ).find( '.bt_bb_masonry_post_image_content' ).css( 'margin-left' ) );
|
11 |
+
var base_item_width = ( $( this ).width() - child_margin ) / ( $( this ).data( 'columns' ) ) ;
|
12 |
+
if ( Math.ceil( base_item_width ) != base_item_width ) {
|
13 |
+
$( this ).width( $( this ).data( 'columns' ) * Math.ceil( base_item_width ) + child_margin );
|
14 |
+
}
|
15 |
+
});
|
16 |
+
|
17 |
+
}
|
18 |
+
|
19 |
+
var bt_bb_masonry_image_grid_load_images = function( ) {
|
20 |
+
$( '.bt_bb_masonry_image_grid' ).each(function() {
|
21 |
+
var page_bottom = $( window ).scrollTop() + $( window ).height();
|
22 |
+
$( this ).find( '.bt_bb_grid_item' ).each(function() {
|
23 |
+
var this_top = $( this ).offset().top;
|
24 |
+
if ( this_top < page_bottom + $( window ).height() ) {
|
25 |
+
var img_src = $( this ).data( 'src' );
|
26 |
+
var img_title = $( this ).data( 'title' );
|
27 |
+
var img_src_full = $( this ).data( 'src-full' );
|
28 |
+
if ( img_src !== '' && $( this ).find('.bt_bb_grid_item_inner_image').html() == '' ) {
|
29 |
+
$( this ).find('.bt_bb_grid_item_inner_image').html( '<img src="' + img_src + '" title="' + img_title + '" alt="' + img_title + '" data-src-full="' + img_src_full + '">' );
|
30 |
+
}
|
31 |
+
}
|
32 |
+
});
|
33 |
+
});
|
34 |
+
}
|
35 |
+
|
36 |
+
|
37 |
+
$( window ).load(function() {
|
38 |
+
|
39 |
+
bt_bb_masonry_image_grid_fix_resize();
|
40 |
+
|
41 |
+
$( '.bt_bb_masonry_post_image_content' ).masonry({
|
42 |
+
columnWidth: '.bt_bb_grid_sizer',
|
43 |
+
itemSelector: '.bt_bb_grid_item',
|
44 |
+
gutter: 0,
|
45 |
+
percentPosition: true
|
46 |
+
});
|
47 |
+
|
48 |
+
bt_bb_masonry_image_grid_load_images();
|
49 |
+
|
50 |
+
$( window ).on( 'resize', function() {
|
51 |
+
bt_bb_masonry_image_grid_fix_resize();
|
52 |
+
});
|
53 |
+
|
54 |
+
$( window ).on( 'scroll', function() {
|
55 |
+
bt_bb_masonry_image_grid_load_images();
|
56 |
+
});
|
57 |
+
|
58 |
+
setTimeout(function() {
|
59 |
+
$( '.bt_bb_masonry_post_image_content' ).masonry( 'layout' );
|
60 |
+
}, 10 );
|
61 |
+
|
62 |
+
$( '.bt_bb_masonry_image_grid' ).not( '.bt_bb_no_lightbox' ).each(function() {
|
63 |
+
$( this ).magnificPopup({
|
64 |
+
delegate: '.bt_bb_grid_item',
|
65 |
+
type: 'image',
|
66 |
+
gallery:{
|
67 |
+
enabled: true
|
68 |
+
},
|
69 |
+
callbacks: {
|
70 |
+
elementParse: function( item ) { item.src = item.el.data( 'src-full' ); }
|
71 |
+
},
|
72 |
+
closeBtnInside: false,
|
73 |
+
fixedContentPos: false
|
74 |
+
});
|
75 |
+
});
|
76 |
+
});
|
77 |
+
|
78 |
+
})( jQuery );
|
content_elements/bt_bb_masonry_image_grid/bt_bb_masonry_image_grid.php
ADDED
@@ -0,0 +1,145 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_masonry_image_grid extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'images' => '',
|
8 |
+
'columns' => '',
|
9 |
+
'format' => '',
|
10 |
+
'gap' => '',
|
11 |
+
'img_base_size' => 'large',
|
12 |
+
'lightbox_img_base_size' => 'full',
|
13 |
+
'no_lightbox' => ''
|
14 |
+
) ), $atts, $this->shortcode ) );
|
15 |
+
|
16 |
+
wp_enqueue_script( 'jquery-masonry' );
|
17 |
+
|
18 |
+
wp_enqueue_script(
|
19 |
+
'bt_bb_image_grid',
|
20 |
+
plugin_dir_url( __FILE__ ) . 'bt_bb_masonry_image_grid.js',
|
21 |
+
array( 'jquery' ),
|
22 |
+
BT_BB_VERSION
|
23 |
+
);
|
24 |
+
|
25 |
+
$class = array( $this->shortcode, 'bt_bb_grid_container' );
|
26 |
+
|
27 |
+
if ( $el_class != '' ) {
|
28 |
+
$class[] = $el_class;
|
29 |
+
}
|
30 |
+
|
31 |
+
$id_attr = '';
|
32 |
+
if ( $el_id != '' ) {
|
33 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
34 |
+
}
|
35 |
+
|
36 |
+
$style_attr = '';
|
37 |
+
if ( $el_style != '' ) {
|
38 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
39 |
+
}
|
40 |
+
|
41 |
+
if ( $columns != '' ) {
|
42 |
+
$class[] = $this->prefix . 'columns' . '_' . $columns;
|
43 |
+
}
|
44 |
+
|
45 |
+
if ( $gap != '' ) {
|
46 |
+
$class[] = $this->prefix . 'gap' . '_' . $gap;
|
47 |
+
}
|
48 |
+
|
49 |
+
if ( $no_lightbox == 'no_lightbox' ) {
|
50 |
+
$class[] = $this->prefix . 'no_lightbox';
|
51 |
+
}
|
52 |
+
|
53 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
54 |
+
|
55 |
+
$output = '';
|
56 |
+
|
57 |
+
$output .= '<div class="bt_bb_grid_sizer"></div>';
|
58 |
+
|
59 |
+
$images_arr = explode( ',', $images );
|
60 |
+
$format_arr = explode( ',', $format );
|
61 |
+
|
62 |
+
$n = 0;
|
63 |
+
|
64 |
+
foreach( $images_arr as $id ) {
|
65 |
+
$img = wp_get_attachment_image_src( $id, $img_base_size );
|
66 |
+
$img_src = isset( $img[0] ) ? $img[0] : '';
|
67 |
+
$img_full = wp_get_attachment_image_src( $id, $lightbox_img_base_size );
|
68 |
+
$img_src_full = isset( $img_full[0] ) ? $img_full[0] : '';
|
69 |
+
$image_post = get_post( $id );
|
70 |
+
if ( isset( $format_arr[ $n ] ) ) {
|
71 |
+
$tile_format = 'bt_bb_tile_format';
|
72 |
+
if ( $format_arr[ $n ] == '21' ) {
|
73 |
+
$tile_format .= '_' . esc_attr( $format_arr[ $n ] );
|
74 |
+
} else {
|
75 |
+
$tile_format .= '11';
|
76 |
+
}
|
77 |
+
}
|
78 |
+
$data_hw = '';
|
79 |
+
if ( isset($img[1]) ) {
|
80 |
+
if ( $img[1] > 0 ) {
|
81 |
+
$data_hw = $img[2] / $img[1];
|
82 |
+
}
|
83 |
+
}
|
84 |
+
$data_title = '';
|
85 |
+
if ( is_object( $image_post ) ) {
|
86 |
+
$data_title = $image_post->post_title;
|
87 |
+
}
|
88 |
+
$output .= '<div class="bt_bb_grid_item ' . $tile_format . '" data-hw="' . esc_attr( $data_hw ) . '" data-src="' . esc_url_raw( $img_src ) . '" data-src-full="' . esc_url_raw( $img_src_full ) . '" data-title="' . esc_attr( $data_title ) . '"><div class="bt_bb_grid_item_inner" data-hw="' . esc_attr( $data_hw ) . '" ><div class="bt_bb_grid_item_inner_image"></div><div class="bt_bb_grid_item_inner_content"></div></div></div>';
|
89 |
+
$n++;
|
90 |
+
}
|
91 |
+
|
92 |
+
$output = '<div' . $id_attr . ' class="' . esc_attr( implode( ' ', $class ) ) . '"' . $style_attr . ' data-columns="' . esc_attr( $columns ) . '"><div class="bt_bb_masonry_post_image_content" data-columns="' . esc_attr( $columns ) . '">' . $output . '</div></div>';
|
93 |
+
|
94 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
95 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
96 |
+
|
97 |
+
return $output;
|
98 |
+
|
99 |
+
}
|
100 |
+
|
101 |
+
function map_shortcode() {
|
102 |
+
|
103 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Masonry Image Grid', 'bold-builder' ), 'description' => esc_html__( 'Masonry grid with images', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
104 |
+
'params' => array(
|
105 |
+
array( 'param_name' => 'images', 'type' => 'attach_images', 'heading' => esc_html__( 'Images', 'bold-builder' ) ),
|
106 |
+
array( 'param_name' => 'columns', 'type' => 'dropdown', 'heading' => esc_html__( 'Columns', 'bold-builder' ), 'preview' => true,
|
107 |
+
'value' => array(
|
108 |
+
esc_html__( '1', 'bold-builder' ) => '1',
|
109 |
+
esc_html__( '2', 'bold-builder' ) => '2',
|
110 |
+
esc_html__( '3', 'bold-builder' ) => '3',
|
111 |
+
esc_html__( '4', 'bold-builder' ) => '4',
|
112 |
+
esc_html__( '5', 'bold-builder' ) => '5',
|
113 |
+
esc_html__( '6', 'bold-builder' ) => '6'
|
114 |
+
)
|
115 |
+
),
|
116 |
+
array( 'param_name' => 'gap', 'type' => 'dropdown', 'heading' => esc_html__( 'Gap', 'bold-builder' ),
|
117 |
+
'value' => array(
|
118 |
+
esc_html__( 'No gap', 'bold-builder' ) => 'no_gap',
|
119 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extrasmall',
|
120 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
121 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
122 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
123 |
+
)
|
124 |
+
),
|
125 |
+
array( 'param_name' => 'img_base_size', 'type' => 'dropdown', 'default' => 'large', 'heading' => esc_html__( 'Base image size', 'bold-builder' ),
|
126 |
+
'value' => array(
|
127 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
128 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
129 |
+
esc_html__( 'Thumbnail', 'bold-builder' ) => 'thumbnail'
|
130 |
+
)
|
131 |
+
),
|
132 |
+
array( 'param_name' => 'lightbox_img_base_size', 'type' => 'dropdown', 'default' => 'full', 'heading' => esc_html__( 'Popup image size', 'bold-builder' ),
|
133 |
+
'value' => array(
|
134 |
+
esc_html__( 'Full', 'bold-builder' ) => 'full',
|
135 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
136 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
137 |
+
esc_html__( 'Thumbnail', 'bold-builder' ) => 'thumbnail'
|
138 |
+
)
|
139 |
+
),
|
140 |
+
array( 'param_name' => 'format', 'type' => 'textfield', 'preview' => true, 'heading' => esc_html__( 'Tiles format', 'bold-builder' ), 'description' => esc_html__( 'e.g. 21, 11, 11', 'bold-builder' ) ),
|
141 |
+
array( 'param_name' => 'no_lightbox', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'no_lightbox', esc_html__( 'No', 'bold-builder' ) => 'hide_share' ), 'heading' => esc_html__( 'Disable lightbox', 'bold-builder' ) )
|
142 |
+
)
|
143 |
+
) );
|
144 |
+
}
|
145 |
+
}
|
content_elements/bt_bb_masonry_post_grid/bt_bb_masonry_post_grid.php
ADDED
@@ -0,0 +1,345 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_masonry_post_grid extends BT_BB_Element {
|
4 |
+
|
5 |
+
function __construct() {
|
6 |
+
parent::__construct();
|
7 |
+
add_action( 'wp_ajax_bt_bb_get_grid', array( __CLASS__, 'bt_bb_get_grid_callback' ) );
|
8 |
+
add_action( 'wp_ajax_nopriv_bt_bb_get_grid', array( __CLASS__, 'bt_bb_get_grid_callback' ) );
|
9 |
+
}
|
10 |
+
|
11 |
+
static function bt_bb_get_grid_callback() {
|
12 |
+
check_ajax_referer( 'bt-bb-masonry-post-grid-nonce', 'bt-bb-masonry-post-grid-nonce' );
|
13 |
+
bt_bb_masonry_post_grid::dump_grid( intval( $_POST['number'] ), intval( $_POST['offset'] ), sanitize_text_field( $_POST['category'] ), $_POST['show'], $_POST['post-type'] );
|
14 |
+
die();
|
15 |
+
}
|
16 |
+
|
17 |
+
static function dump_grid( $number, $offset, $category, $show, $post_type ) {
|
18 |
+
|
19 |
+
$show = json_decode( urldecode( $show ), true );
|
20 |
+
|
21 |
+
$output = '';
|
22 |
+
|
23 |
+
$posts = bt_bb_get_posts( $number, $offset, $category, $post_type );
|
24 |
+
|
25 |
+
foreach( $posts as $item ) {
|
26 |
+
$post_thumbnail_id = get_post_thumbnail_id( $item['ID'] );
|
27 |
+
$img = wp_get_attachment_image_src( $post_thumbnail_id, 'large' );
|
28 |
+
$img_src = isset( $img[0] ) ? $img[0] : '';
|
29 |
+
$hw = 0;
|
30 |
+
if ( $img_src != '' ) {
|
31 |
+
$hw = $img[2] / $img[1];
|
32 |
+
}
|
33 |
+
$alt = get_post_meta( $post_thumbnail_id, '_wp_attachment_image_alt', true );
|
34 |
+
$alt = $alt != '' ? $alt : $item['title'];
|
35 |
+
$output .= '<div class="bt_bb_grid_item" data-hw="' . esc_attr( $hw ) . '" data-src="' . esc_url_raw( $img_src ) . '" data-alt="' . esc_attr( $alt ) . '"><div class="bt_bb_grid_item_inner">';
|
36 |
+
$output .= '<div class="bt_bb_grid_item_post_thumbnail"><a href="' . esc_url_raw( $item['permalink'] ) . '" title="' . esc_attr( $item['title'] ) . '"></a></div>';
|
37 |
+
$output .= '<div class="bt_bb_grid_item_post_content">';
|
38 |
+
|
39 |
+
if ( $show['category'] ) {
|
40 |
+
$output .= '<div class="bt_bb_grid_item_category">';
|
41 |
+
$output .= $item['category_list'];
|
42 |
+
$output .= '</div>';
|
43 |
+
}
|
44 |
+
|
45 |
+
if ( $show['date'] || $show['author'] || $show['comments'] ) {
|
46 |
+
|
47 |
+
$meta_output = '<div class="bt_bb_grid_item_meta">';
|
48 |
+
|
49 |
+
if ( $show['date'] ) {
|
50 |
+
$meta_output .= '<span class="bt_bb_grid_item_date">';
|
51 |
+
$meta_output .= $item['date'];
|
52 |
+
$meta_output .= '</span>';
|
53 |
+
}
|
54 |
+
|
55 |
+
if ( $show['author'] ) {
|
56 |
+
$meta_output .= '<span class="bt_bb_grid_item_item_author">';
|
57 |
+
$meta_output .= esc_html__( 'by', 'bold-builder' ) . ' ' . $item['author'];
|
58 |
+
$meta_output .= '</span>';
|
59 |
+
}
|
60 |
+
|
61 |
+
if ( $show['comments'] && $item['comments'] != '' ) {
|
62 |
+
$meta_output .= '<span class="bt_bb_grid_item_item_comments">';
|
63 |
+
$meta_output .= $item['comments'];
|
64 |
+
$meta_output .= '</span>';
|
65 |
+
}
|
66 |
+
|
67 |
+
$meta_output .= '</div>';
|
68 |
+
|
69 |
+
$output .= $meta_output;
|
70 |
+
|
71 |
+
}
|
72 |
+
|
73 |
+
$output .= '<h5 class="bt_bb_grid_item_post_title"><a href="' . esc_url_raw( $item['permalink'] ) . '" title="' . esc_attr( $item['title'] ) . '">' . $item['title'] . '</a></h5>';
|
74 |
+
|
75 |
+
if ( $show['excerpt'] ) {
|
76 |
+
$output .= '<div class="bt_bb_grid_item_post_excerpt">' . $item['excerpt'] . '</div>';
|
77 |
+
}
|
78 |
+
|
79 |
+
if ( $show['share'] ) {
|
80 |
+
$output .= '<div class="bt_bb_grid_item_post_share">' . $item['share'] . '</div>';
|
81 |
+
}
|
82 |
+
|
83 |
+
$output .= '</div></div>';
|
84 |
+
$output .= '</div>';
|
85 |
+
}
|
86 |
+
|
87 |
+
$allowed = array(
|
88 |
+
'a' => array(
|
89 |
+
'class' => true,
|
90 |
+
'data-ico-fa' => true,
|
91 |
+
'href' => true,
|
92 |
+
'rel' => true,
|
93 |
+
'title' => true,
|
94 |
+
'target' => true,
|
95 |
+
),
|
96 |
+
'div' => array(
|
97 |
+
'class' => true,
|
98 |
+
'data-hw' => true,
|
99 |
+
'data-src' => true,
|
100 |
+
'data-alt' => true,
|
101 |
+
'style' => true,
|
102 |
+
),
|
103 |
+
'span' => array(
|
104 |
+
'class' => true,
|
105 |
+
),
|
106 |
+
'img' => array(
|
107 |
+
'src' => true,
|
108 |
+
'alt' => true,
|
109 |
+
),
|
110 |
+
'h1' => array(
|
111 |
+
|
112 |
+
),
|
113 |
+
'h2' => array(
|
114 |
+
|
115 |
+
),
|
116 |
+
'h3' => array(
|
117 |
+
|
118 |
+
),
|
119 |
+
'h4' => array(
|
120 |
+
|
121 |
+
),
|
122 |
+
'h5' => array(
|
123 |
+
'class' => true,
|
124 |
+
),
|
125 |
+
'h6' => array(
|
126 |
+
|
127 |
+
),
|
128 |
+
'ul' => array(
|
129 |
+
'class' => true,
|
130 |
+
),
|
131 |
+
'li' => array(
|
132 |
+
|
133 |
+
)
|
134 |
+
);
|
135 |
+
|
136 |
+
echo wp_kses( $output, $allowed );
|
137 |
+
}
|
138 |
+
|
139 |
+
function handle_shortcode( $atts, $content ) {
|
140 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
141 |
+
'post_type' => 'post',
|
142 |
+
'number' => '',
|
143 |
+
'auto_loading' => '',
|
144 |
+
'columns' => '',
|
145 |
+
'gap' => '',
|
146 |
+
'category' => '',
|
147 |
+
'category_filter' => '',
|
148 |
+
'show_category' => '',
|
149 |
+
'show_date' => '',
|
150 |
+
'show_author' => '',
|
151 |
+
'show_comments' => '',
|
152 |
+
'show_excerpt' => '',
|
153 |
+
'show_share' => ''
|
154 |
+
) ), $atts, $this->shortcode ) );
|
155 |
+
|
156 |
+
wp_enqueue_script( 'jquery-masonry' );
|
157 |
+
|
158 |
+
wp_enqueue_script(
|
159 |
+
'bt_bb_post_grid',
|
160 |
+
plugin_dir_url( __FILE__ ) . 'bt_bb_post_grid.js',
|
161 |
+
array( 'jquery' ),
|
162 |
+
BT_BB_VERSION
|
163 |
+
);
|
164 |
+
|
165 |
+
wp_localize_script( 'bt_bb_post_grid', 'ajax_object', array( 'ajax_url' => admin_url( 'admin-ajax.php' ) ) );
|
166 |
+
|
167 |
+
$class = array( $this->shortcode, 'bt_bb_grid_container' );
|
168 |
+
|
169 |
+
if ( $el_class != '' ) {
|
170 |
+
$class[] = $el_class;
|
171 |
+
}
|
172 |
+
|
173 |
+
$id_attr = '';
|
174 |
+
if ( $el_id != '' ) {
|
175 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
176 |
+
}
|
177 |
+
|
178 |
+
$style_attr = '';
|
179 |
+
if ( $el_style != '' ) {
|
180 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
181 |
+
}
|
182 |
+
|
183 |
+
if ( $columns != '' ) {
|
184 |
+
$class[] = $this->prefix . 'columns' . '_' . $columns;
|
185 |
+
}
|
186 |
+
|
187 |
+
if ( $gap != '' ) {
|
188 |
+
$class[] = $this->prefix . 'gap' . '_' . $gap;
|
189 |
+
}
|
190 |
+
|
191 |
+
if ( $number > 1000 || $number == '' ) {
|
192 |
+
$number = 1000;
|
193 |
+
} else if ( $number < 1 ) {
|
194 |
+
$number = 1;
|
195 |
+
}
|
196 |
+
|
197 |
+
$category = str_replace( ' ', '', $category );
|
198 |
+
|
199 |
+
$show = array( 'category' => false, 'date' => false, 'author' => false, 'comments' => false, 'excerpt' => false, 'share' => false );
|
200 |
+
if ( $show_category == 'show_category' ) {
|
201 |
+
$show['category'] = true;
|
202 |
+
}
|
203 |
+
if ( $show_date == 'show_date' ) {
|
204 |
+
$show['date'] = true;
|
205 |
+
}
|
206 |
+
if ( $show_author == 'show_author' ) {
|
207 |
+
$show['author'] = true;
|
208 |
+
}
|
209 |
+
if ( $show_comments == 'show_comments' ) {
|
210 |
+
$show['comments'] = true;
|
211 |
+
}
|
212 |
+
if ( $show_excerpt == 'show_excerpt' ) {
|
213 |
+
$show['excerpt'] = true;
|
214 |
+
}
|
215 |
+
if ( $show_share == 'show_share' ) {
|
216 |
+
$show['share'] = true;
|
217 |
+
}
|
218 |
+
|
219 |
+
$output = '';
|
220 |
+
|
221 |
+
if ( $category_filter == 'yes' ) {
|
222 |
+
if ( $post_type == 'post' ) {
|
223 |
+
$cat_arr = get_categories();
|
224 |
+
$cats = array();
|
225 |
+
if ( $category != '' ) {
|
226 |
+
$cat_slug_arr = explode( ',', $category );
|
227 |
+
|
228 |
+
$cat_id_arr = get_terms( array( 'taxonomy' => 'category', 'fields' => 'ids' , 'slug' => $cat_slug_arr) );
|
229 |
+
foreach ( $cat_arr as $cat ) {
|
230 |
+
if ( in_array( $cat->slug, $cat_slug_arr ) || in_array( $cat->parent, $cat_id_arr ) ) {
|
231 |
+
$cats[] = $cat;
|
232 |
+
}
|
233 |
+
}
|
234 |
+
} else {
|
235 |
+
$cats = $cat_arr;
|
236 |
+
}
|
237 |
+
} else if ( $post_type == 'portfolio' ) {
|
238 |
+
$cat_arr = get_terms( 'portfolio_category' );
|
239 |
+
$cats = array();
|
240 |
+
if ( ! is_wp_error( $cat_arr ) ) {
|
241 |
+
if ( $category != '' ) {
|
242 |
+
$cat_slug_arr = explode( ',', $category );
|
243 |
+
foreach ( $cat_arr as $cat ) {
|
244 |
+
if ( in_array( $cat->slug, $cat_slug_arr ) ) {
|
245 |
+
$cats[] = $cat;
|
246 |
+
}
|
247 |
+
}
|
248 |
+
} else {
|
249 |
+
$cats = $cat_arr;
|
250 |
+
}
|
251 |
+
} else {
|
252 |
+
$output .= $cat_arr->get_error_message();
|
253 |
+
}
|
254 |
+
}
|
255 |
+
|
256 |
+
if ( ! is_wp_error( $cats ) ) {
|
257 |
+
if ( count( $cats ) > 0 ) {
|
258 |
+
$output .= '<div class="bt_bb_post_grid_filter">';
|
259 |
+
$output .= '<span class="bt_bb_post_grid_filter_item active" data-category="' . $category . '">' . esc_html__( 'All', 'bold-builder' ) . '</span>';
|
260 |
+
foreach ( $cats as $cat ) {
|
261 |
+
$output .= '<span class="bt_bb_post_grid_filter_item" data-category="' . esc_attr( $cat->slug ) . '">' . $cat->name . '</span>';
|
262 |
+
}
|
263 |
+
$output .= '</div>';
|
264 |
+
}
|
265 |
+
} else {
|
266 |
+
$output .= $cats->get_error_message();
|
267 |
+
}
|
268 |
+
}
|
269 |
+
|
270 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
271 |
+
|
272 |
+
$output .= '<div class="bt_bb_masonry_post_grid_content bt_bb_grid_hide" data-bt-bb-masonry-post-grid-nonce="' . esc_attr( wp_create_nonce( 'bt-bb-masonry-post-grid-nonce' ) ) . '" data-number="' . esc_attr( $number ) . '" data-category="' . esc_attr( $category ) . '" data-show="' . esc_attr( urlencode( json_encode( $show ) ) ) . '" data-auto-loading="' . esc_attr( $auto_loading ) . '" data-post-type="' . esc_attr( $post_type ) . '"><div class="bt_bb_grid_sizer"></div></div>';
|
273 |
+
|
274 |
+
$output .= '<div class="bt_bb_post_grid_loader"></div>';
|
275 |
+
|
276 |
+
$output = '<div' . $id_attr . ' class="' . esc_attr( implode( ' ', $class ) ) . '"' . $style_attr . ' data-columns="' . esc_attr( $columns ) . '">' . $output . '</div>';
|
277 |
+
|
278 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
279 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
280 |
+
|
281 |
+
return $output;
|
282 |
+
|
283 |
+
}
|
284 |
+
|
285 |
+
function map_shortcode() {
|
286 |
+
|
287 |
+
$array = array();
|
288 |
+
|
289 |
+
if ( post_type_exists( 'portfolio' ) ) {
|
290 |
+
$array = array( array( 'param_name' => 'post_type', 'type' => 'dropdown', 'heading' => esc_html__( 'Post Type', 'bold-builder' ), 'preview' => true,
|
291 |
+
'value' => array(
|
292 |
+
esc_html__( 'Post', 'bold-builder' ) => 'post',
|
293 |
+
esc_html__( 'Portfolio', 'bold-builder' ) => 'portfolio',
|
294 |
+
)
|
295 |
+
) );
|
296 |
+
}
|
297 |
+
|
298 |
+
$array = array_merge( $array, array(
|
299 |
+
array( 'param_name' => 'number', 'type' => 'textfield', 'heading' => esc_html__( 'Number of items', 'bold-builder' ), 'description' => esc_html__( 'Enter number of items or leave empty to show all (up to 1000)', 'bold-builder' ), 'preview' => true ),
|
300 |
+
array( 'param_name' => 'auto_loading', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'auto_loading' ), 'heading' => esc_html__( 'Load more items on scroll', 'bold-builder' ), 'preview' => true
|
301 |
+
),
|
302 |
+
array( 'param_name' => 'columns', 'type' => 'dropdown', 'heading' => esc_html__( 'Columns', 'bold-builder' ), 'preview' => true,
|
303 |
+
'value' => array(
|
304 |
+
esc_html__( '1', 'bold-builder' ) => '1',
|
305 |
+
esc_html__( '2', 'bold-builder' ) => '2',
|
306 |
+
esc_html__( '3', 'bold-builder' ) => '3',
|
307 |
+
esc_html__( '4', 'bold-builder' ) => '4',
|
308 |
+
esc_html__( '5', 'bold-builder' ) => '5',
|
309 |
+
esc_html__( '6', 'bold-builder' ) => '6'
|
310 |
+
)
|
311 |
+
),
|
312 |
+
array( 'param_name' => 'gap', 'type' => 'dropdown', 'heading' => esc_html__( 'Gap', 'bold-builder' ),
|
313 |
+
'value' => array(
|
314 |
+
esc_html__( 'No gap', 'bold-builder' ) => 'no_gap',
|
315 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
316 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
317 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
318 |
+
)
|
319 |
+
),
|
320 |
+
array( 'param_name' => 'category', 'type' => 'textfield', 'heading' => esc_html__( 'Category', 'bold-builder' ), 'description' => esc_html__( 'Enter category slug or leave empty to show all', 'bold-builder' ), 'preview' => true ),
|
321 |
+
array( 'param_name' => 'category_filter', 'type' => 'dropdown', 'heading' => esc_html__( 'Category filter', 'bold-builder' ),
|
322 |
+
'value' => array(
|
323 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
324 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
325 |
+
)
|
326 |
+
),
|
327 |
+
array( 'param_name' => 'show_category', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_category' ), 'heading' => esc_html__( 'Show category', 'bold-builder' ), 'preview' => true
|
328 |
+
),
|
329 |
+
array( 'param_name' => 'show_date', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_date' ), 'heading' => esc_html__( 'Show date', 'bold-builder' ), 'preview' => true
|
330 |
+
),
|
331 |
+
array( 'param_name' => 'show_author', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_author' ), 'heading' => esc_html__( 'Show author', 'bold-builder' ), 'preview' => true
|
332 |
+
),
|
333 |
+
array( 'param_name' => 'show_comments', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_comments' ), 'heading' => esc_html__( 'Show number of comments', 'bold-builder' ), 'preview' => true
|
334 |
+
),
|
335 |
+
array( 'param_name' => 'show_excerpt', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_excerpt' ), 'heading' => esc_html__( 'Show excerpt', 'bold-builder' ), 'preview' => true
|
336 |
+
),
|
337 |
+
array( 'param_name' => 'show_share', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'show_share' ), 'heading' => esc_html__( 'Show share icons', 'bold-builder' ), 'preview' => true
|
338 |
+
)
|
339 |
+
) );
|
340 |
+
|
341 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Masonry Post Grid', 'bold-builder' ), 'description' => esc_html__( 'Masonry grid with posts', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
342 |
+
'params' => $array
|
343 |
+
) );
|
344 |
+
}
|
345 |
+
}
|
content_elements/bt_bb_masonry_post_grid/bt_bb_post_grid.js
ADDED
@@ -0,0 +1,161 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function( $ ) {
|
2 |
+
"use strict";
|
3 |
+
|
4 |
+
var bt_bb_post_grid_resize = function( root ) {
|
5 |
+
root.each(function() {
|
6 |
+
$( this ).find( '.bt_bb_grid_item' ).each(function() {
|
7 |
+
$( this ).find( '.bt_bb_grid_item_post_thumbnail' ).height( Math.floor( $( this ).width() * $( this ).data( 'hw' ) ) );
|
8 |
+
});
|
9 |
+
});
|
10 |
+
}
|
11 |
+
|
12 |
+
var bt_bb_post_grid_load_images = function( root ) {
|
13 |
+
root.each(function() {
|
14 |
+
var page_bottom = $( window ).scrollTop() + $( window ).height();
|
15 |
+
$( this ).find( '.bt_bb_grid_item' ).each(function() {
|
16 |
+
var this_top = $( this ).offset().top;
|
17 |
+
if ( this_top < page_bottom + $( window ).height() ) {
|
18 |
+
var img_src = $( this ).data( 'src' );
|
19 |
+
if ( img_src !== '' && $( this ).find( '.bt_bb_grid_item_post_thumbnail a' ).html() == '' ) {
|
20 |
+
$( this ).find( '.bt_bb_grid_item_post_thumbnail a' ).html( '<img src="' + img_src + '" alt="' + $( this ).data( 'alt' ) + '">' );
|
21 |
+
}
|
22 |
+
}
|
23 |
+
});
|
24 |
+
});
|
25 |
+
}
|
26 |
+
|
27 |
+
var bt_bb_post_grid_load_items = function( root ) {
|
28 |
+
root.each(function() {
|
29 |
+
var loading = root.data( 'loading' );
|
30 |
+
if ( loading === undefined || ( loading != 'loading' && loading != 'no_more' ) ) {
|
31 |
+
var page_bottom = $( window ).scrollTop() + $( window ).height();
|
32 |
+
$( this ).find( '.bt_bb_grid_item' ).each(function() {
|
33 |
+
var this_top = $( this ).offset().top;
|
34 |
+
if ( this_top < page_bottom + $( window ).height() ) {
|
35 |
+
if ( $( this ).is( ':last-child' ) ) {
|
36 |
+
var root_data_offset = root.data( 'offset' );
|
37 |
+
var offset = parseInt( root_data_offset === undefined ? 0 : root_data_offset ) + parseInt( root.data( 'number' ) );
|
38 |
+
bt_bb_post_grid_load_posts( root, offset );
|
39 |
+
return false;
|
40 |
+
}
|
41 |
+
}
|
42 |
+
});
|
43 |
+
}
|
44 |
+
});
|
45 |
+
}
|
46 |
+
|
47 |
+
var bt_bb_post_grid_load_posts = function( root, offset ) {
|
48 |
+
|
49 |
+
if ( offset == 0 ) {
|
50 |
+
root.addClass( 'bt_bb_grid_hide' );
|
51 |
+
root.find( '.bt_bb_grid_item' ).remove();
|
52 |
+
if ( root.hasClass( 'masonry' ) ) {
|
53 |
+
root.masonry( 'destroy' );
|
54 |
+
}
|
55 |
+
}
|
56 |
+
|
57 |
+
root.parent().find( '.bt_bb_post_grid_loader' ).show();
|
58 |
+
|
59 |
+
var action = 'bt_bb_get_grid';
|
60 |
+
|
61 |
+
var root_data_number = root.data( 'number' );
|
62 |
+
|
63 |
+
var data = {
|
64 |
+
'action': action,
|
65 |
+
'number': root_data_number,
|
66 |
+
'category': root.data( 'category' ),
|
67 |
+
'show': root.data( 'show' ),
|
68 |
+
'bt-bb-masonry-post-grid-nonce': root.data( 'bt-bb-masonry-post-grid-nonce' ),
|
69 |
+
'post-type': root.data( 'post-type' ),
|
70 |
+
'offset': offset
|
71 |
+
};
|
72 |
+
|
73 |
+
root.data( 'loading', 'loading' );
|
74 |
+
|
75 |
+
$.ajax({
|
76 |
+
type: 'POST',
|
77 |
+
url: ajax_object.ajax_url,
|
78 |
+
data: data,
|
79 |
+
async: true,
|
80 |
+
success: function( response ) {
|
81 |
+
|
82 |
+
if ( response == '' ) {
|
83 |
+
root.data( 'loading', 'no_more' );
|
84 |
+
root.parent().find( '.bt_bb_post_grid_loader' ).hide();
|
85 |
+
return;
|
86 |
+
}
|
87 |
+
|
88 |
+
var $content = $( response );
|
89 |
+
root.append( $content );
|
90 |
+
bt_bb_post_grid_resize( root );
|
91 |
+
|
92 |
+
root.data( 'offset', offset );
|
93 |
+
|
94 |
+
if ( offset > 0 ) {
|
95 |
+
root.masonry( 'appended', $content );
|
96 |
+
} else {
|
97 |
+
if ( $( 'html' ).attr( 'dir' ) == 'rtl' ) {
|
98 |
+
root.masonry({
|
99 |
+
columnWidth: '.bt_bb_grid_sizer',
|
100 |
+
itemSelector: '.bt_bb_grid_item',
|
101 |
+
gutter: 0,
|
102 |
+
percentPosition: true,
|
103 |
+
isRTL: true
|
104 |
+
});
|
105 |
+
} else {
|
106 |
+
root.masonry({
|
107 |
+
columnWidth: '.bt_bb_grid_sizer',
|
108 |
+
itemSelector: '.bt_bb_grid_item',
|
109 |
+
gutter: 0,
|
110 |
+
percentPosition: true
|
111 |
+
});
|
112 |
+
}
|
113 |
+
}
|
114 |
+
root.parent().find( '.bt_bb_post_grid_loader' ).hide();
|
115 |
+
root.removeClass( 'bt_bb_grid_hide' );
|
116 |
+
$( '.bt_bb_grid_container' ).css( 'height', 'auto' );
|
117 |
+
|
118 |
+
bt_bb_post_grid_load_images( root );
|
119 |
+
|
120 |
+
if ( root.data( 'auto-loading' ) == 'auto_loading' ) {
|
121 |
+
root.data( 'loading', '' );
|
122 |
+
} else {
|
123 |
+
root.data( 'loading', 'no_more' );
|
124 |
+
}
|
125 |
+
|
126 |
+
},
|
127 |
+
error: function( response ) {
|
128 |
+
root.parent().find( '.bt_bb_post_grid_loader' ).hide();
|
129 |
+
root.removeClass( 'bt_bb_grid_hide' );
|
130 |
+
}
|
131 |
+
});
|
132 |
+
}
|
133 |
+
|
134 |
+
$( document ).ready(function() {
|
135 |
+
|
136 |
+
$( window ).on( 'resize', function() {
|
137 |
+
bt_bb_post_grid_resize( $( '.bt_bb_masonry_post_grid_content' ) );
|
138 |
+
});
|
139 |
+
|
140 |
+
$( window ).on( 'scroll', function() {
|
141 |
+
bt_bb_post_grid_load_images( $( '.bt_bb_masonry_post_grid_content' ) );
|
142 |
+
bt_bb_post_grid_load_items( $( '.bt_bb_masonry_post_grid_content' ) );
|
143 |
+
});
|
144 |
+
|
145 |
+
$( '.bt_bb_masonry_post_grid_content' ).each(function() {
|
146 |
+
var grid_content = $( this );
|
147 |
+
bt_bb_post_grid_load_posts( grid_content, 0 );
|
148 |
+
});
|
149 |
+
|
150 |
+
$( '.bt_bb_post_grid_filter_item' ).on( 'click', function() {
|
151 |
+
var root = $( this ).closest( '.bt_bb_grid_container' );
|
152 |
+
root.height( root.height() );
|
153 |
+
$( this ).parent().find( '.bt_bb_post_grid_filter_item' ).removeClass( 'active' );
|
154 |
+
$( this ).addClass( 'active' );
|
155 |
+
var grid_content = $( this ).closest( '.bt_bb_masonry_post_grid' ).find( '.bt_bb_masonry_post_grid_content' );
|
156 |
+
grid_content.data( 'category', $( this ).data( 'category' ) );
|
157 |
+
bt_bb_post_grid_load_posts( grid_content, 0 );
|
158 |
+
});
|
159 |
+
|
160 |
+
});
|
161 |
+
})( jQuery );
|
content_elements/bt_bb_price_list/bt_bb_price_list.php
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_price_list extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'title' => '',
|
8 |
+
'subtitle' => '',
|
9 |
+
'currency' => '',
|
10 |
+
'price' => '',
|
11 |
+
'items' => '',
|
12 |
+
'color_scheme' => ''
|
13 |
+
) ), $atts, $this->shortcode ) );
|
14 |
+
|
15 |
+
$class = array( $this->shortcode );
|
16 |
+
|
17 |
+
if ( $el_class != '' ) {
|
18 |
+
$class[] = $el_class;
|
19 |
+
}
|
20 |
+
|
21 |
+
$id_attr = '';
|
22 |
+
if ( $el_id != '' ) {
|
23 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
24 |
+
}
|
25 |
+
|
26 |
+
$style_attr = '';
|
27 |
+
if ( $el_style != '' ) {
|
28 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
29 |
+
}
|
30 |
+
|
31 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
32 |
+
|
33 |
+
$output = '<div class="' . esc_attr( $this->shortcode ) . '_title">' . $title . '</div>';
|
34 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_subtitle">' . $subtitle . '</div>';
|
35 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_price"><span class="' . esc_attr( $this->shortcode ) . '_currency">' . $currency . '</span><span class="' . esc_attr( $this->shortcode ) . '_amount">' . $price . '</span></div>';
|
36 |
+
|
37 |
+
if ( $items != '' ) {
|
38 |
+
|
39 |
+
if ( base64_encode(base64_decode($items, true)) === $items){
|
40 |
+
$items = base64_decode( $items );
|
41 |
+
}
|
42 |
+
|
43 |
+
$items_arr = preg_split( '/$\R?^/m', $items );
|
44 |
+
|
45 |
+
$output .= '<ul>';
|
46 |
+
foreach ( $items_arr as $item ) {
|
47 |
+
$output .= '<li>' . $item . '</li>';
|
48 |
+
}
|
49 |
+
$output .= '</ul>';
|
50 |
+
|
51 |
+
}
|
52 |
+
|
53 |
+
if ( $color_scheme != '' ) {
|
54 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
55 |
+
}
|
56 |
+
|
57 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>' . $output . '</div>';
|
58 |
+
|
59 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
60 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
61 |
+
|
62 |
+
return $output;
|
63 |
+
|
64 |
+
}
|
65 |
+
|
66 |
+
function map_shortcode() {
|
67 |
+
|
68 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
69 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
70 |
+
|
71 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Price List', 'bold-builder' ), 'description' => esc_html__( 'List of items with total price', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
72 |
+
'params' => array(
|
73 |
+
array( 'param_name' => 'title', 'type' => 'textfield', 'heading' => esc_html__( 'Title', 'bold-builder' ), 'preview' => true ),
|
74 |
+
array( 'param_name' => 'subtitle', 'type' => 'textfield', 'heading' => esc_html__( 'Subtitle', 'bold-builder' ) ),
|
75 |
+
array( 'param_name' => 'currency', 'type' => 'textfield', 'heading' => esc_html__( 'Currency', 'bold-builder' ) ),
|
76 |
+
array( 'param_name' => 'price', 'type' => 'textfield', 'heading' => esc_html__( 'Price', 'bold-builder' ) ),
|
77 |
+
array( 'param_name' => 'items', 'type' => 'textarea_object', 'heading' => esc_html__( 'Items', 'bold-builder' ) ),
|
78 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true ),
|
79 |
+
)
|
80 |
+
) );
|
81 |
+
}
|
82 |
+
}
|
content_elements/bt_bb_progress_bar/bt_bb_progress_bar.php
ADDED
@@ -0,0 +1,123 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_progress_bar extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
8 |
+
'text' => '',
|
9 |
+
'percentage' => '',
|
10 |
+
'color_scheme' => '',
|
11 |
+
'size' => '',
|
12 |
+
'align' => '',
|
13 |
+
'style' => '',
|
14 |
+
'shape' => ''
|
15 |
+
) ), $atts, $this->shortcode ) );
|
16 |
+
|
17 |
+
$class = array( $this->shortcode );
|
18 |
+
$data_override_class = array();
|
19 |
+
|
20 |
+
if ( $text == '' ) {
|
21 |
+
$text = $percentage . "%";
|
22 |
+
}
|
23 |
+
|
24 |
+
if ( $el_class != '' ) {
|
25 |
+
$class[] = $el_class;
|
26 |
+
}
|
27 |
+
|
28 |
+
$id_attr = '';
|
29 |
+
if ( $el_id != '' ) {
|
30 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
31 |
+
}
|
32 |
+
|
33 |
+
$style_attr = '';
|
34 |
+
if ( $el_style != '' ) {
|
35 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
36 |
+
}
|
37 |
+
|
38 |
+
if ( $color_scheme != '' ) {
|
39 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
40 |
+
}
|
41 |
+
|
42 |
+
$this->responsive_data_override_class(
|
43 |
+
$class, $data_override_class,
|
44 |
+
array(
|
45 |
+
'prefix' => $this->prefix,
|
46 |
+
'param' => 'align',
|
47 |
+
'value' => $align
|
48 |
+
)
|
49 |
+
);
|
50 |
+
|
51 |
+
$this->responsive_data_override_class(
|
52 |
+
$class, $data_override_class,
|
53 |
+
array(
|
54 |
+
'prefix' => $this->prefix,
|
55 |
+
'param' => 'size',
|
56 |
+
'value' => $size
|
57 |
+
)
|
58 |
+
);
|
59 |
+
|
60 |
+
if ( $style != '' ) {
|
61 |
+
$class[] = $this->prefix . 'style' . '_' . $style;
|
62 |
+
}
|
63 |
+
|
64 |
+
if ( $shape != '' ) {
|
65 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
66 |
+
}
|
67 |
+
|
68 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
69 |
+
|
70 |
+
$content = do_shortcode( $content );
|
71 |
+
|
72 |
+
$output = '';
|
73 |
+
|
74 |
+
$output .= '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . ' data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '"><div class="bt_bb_progress_bar_bg"></div><div class="bt_bb_progress_bar_inner animate" style="width:' . $percentage . '%"><span class="bt_bb_progress_bar_text">' . $text . '</span></div></div>';
|
75 |
+
|
76 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
77 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
78 |
+
|
79 |
+
return $output;
|
80 |
+
|
81 |
+
}
|
82 |
+
|
83 |
+
function map_shortcode() {
|
84 |
+
|
85 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
86 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
87 |
+
|
88 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Progress Bar', 'bold-builder' ), 'description' => esc_html__( 'Progress bar', 'bold-builder' ), 'container' => 'vertical', 'accept' => false, 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
89 |
+
'params' => array(
|
90 |
+
array( 'param_name' => 'percentage', 'type' => 'textfield', 'heading' => esc_html__( 'Percentage', 'bold-builder' ), 'preview' => true ),
|
91 |
+
array( 'param_name' => 'text', 'type' => 'textfield', 'heading' => esc_html__( 'Text', 'bold-builder' ), 'preview' => true ),
|
92 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Size', 'bold-builder' ), 'preview' => true, 'responsive_override' => true,
|
93 |
+
'value' => array(
|
94 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
95 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small'
|
96 |
+
)
|
97 |
+
),
|
98 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Text align', 'bold-builder' ), 'preview' => true, 'responsive_override' => true,
|
99 |
+
'value' => array(
|
100 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
101 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
102 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
103 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
104 |
+
)
|
105 |
+
),
|
106 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
107 |
+
array( 'param_name' => 'style', 'type' => 'dropdown', 'heading' => esc_html__( 'Style', 'bold-builder' ), 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ),
|
108 |
+
'value' => array(
|
109 |
+
esc_html__( 'Filled', 'bold-builder' ) => 'filled',
|
110 |
+
esc_html__( 'Line', 'bold-builder' ) => 'line',
|
111 |
+
esc_html__( 'Outline', 'bold-builder' ) => 'outline'
|
112 |
+
)
|
113 |
+
),
|
114 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Shape', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
115 |
+
'value' => array(
|
116 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
117 |
+
esc_html__( 'Rounded', 'bold-builder' ) => 'rounded',
|
118 |
+
)
|
119 |
+
)
|
120 |
+
)
|
121 |
+
) );
|
122 |
+
}
|
123 |
+
}
|
content_elements/bt_bb_raw_content/bt_bb_raw_content.php
ADDED
@@ -0,0 +1,28 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_raw_content extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'raw_content' => ''
|
8 |
+
) ), $atts, $this->shortcode ) );
|
9 |
+
|
10 |
+
$output = apply_filters( 'bt_bb_general_output', $raw_content, $atts );
|
11 |
+
$output = apply_filters( $this->shortcode . '_output', $raw_content, $atts );
|
12 |
+
|
13 |
+
return base64_decode( $raw_content );
|
14 |
+
|
15 |
+
}
|
16 |
+
|
17 |
+
function add_params() {
|
18 |
+
// removes default params from BT_BB_Element
|
19 |
+
}
|
20 |
+
|
21 |
+
function map_shortcode() {
|
22 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Raw Content', 'bold-builder' ), 'description' => esc_html__( 'Raw HTML/JS content', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
23 |
+
'params' => array(
|
24 |
+
array( 'param_name' => 'raw_content', 'type' => 'textarea_object', 'heading' => esc_html__( 'Raw content', 'bold-builder' ) )
|
25 |
+
)
|
26 |
+
) );
|
27 |
+
}
|
28 |
+
}
|
content_elements/bt_bb_row/bt_bb_row.php
ADDED
@@ -0,0 +1,134 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_row extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
8 |
+
'column_gap' => '',
|
9 |
+
'row_width' => '',
|
10 |
+
'color_scheme' => '',
|
11 |
+
'background_color' => '',
|
12 |
+
'opacity' => ''
|
13 |
+
) ), $atts, $this->shortcode ) );
|
14 |
+
|
15 |
+
$class = array( $this->shortcode );
|
16 |
+
$outer_class = array( 'bt_bb_row_wrapper' );
|
17 |
+
|
18 |
+
if ( $el_class != '' ) {
|
19 |
+
$class[] = $el_class;
|
20 |
+
}
|
21 |
+
|
22 |
+
$id_attr = '';
|
23 |
+
if ( $el_id != '' ) {
|
24 |
+
$id_attr = 'id="' . esc_attr( $el_id ) . '"';
|
25 |
+
}
|
26 |
+
|
27 |
+
if ( $background_color != '' ) {
|
28 |
+
if ( strpos( $background_color, '#' ) !== false ) {
|
29 |
+
$background_color = bt_bb_hex2rgb( $background_color );
|
30 |
+
if ( $opacity == '' ) {
|
31 |
+
$opacity = 1;
|
32 |
+
}
|
33 |
+
$el_style .= ' background-color: rgba(' . $background_color[0] . ', ' . $background_color[1] . ', ' . $background_color[2] . ', ' . $opacity . ');';
|
34 |
+
} else {
|
35 |
+
$el_style .= 'background-color:' . $background_color . ';';
|
36 |
+
}
|
37 |
+
}
|
38 |
+
|
39 |
+
$style_attr = '';
|
40 |
+
if ( $el_style != '' ) {
|
41 |
+
$style_attr = 'style="' . esc_attr( $el_style ) . '"';
|
42 |
+
}
|
43 |
+
|
44 |
+
if ( $color_scheme != '' ) {
|
45 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
46 |
+
}
|
47 |
+
|
48 |
+
if ( $column_gap != '' ) {
|
49 |
+
$class[] = $this->prefix . 'column_gap' . '_' . $column_gap;
|
50 |
+
}
|
51 |
+
|
52 |
+
if ( $row_width != '' && $row_width != 'default' ) {
|
53 |
+
// $outer_class[] = $this->prefix . 'row_width' . '_' . $row_width;
|
54 |
+
$outer_class[] = $this->prefix . 'row_width' . '_' . 'boxed_1200';
|
55 |
+
if ( $row_width == 'boxed_1200_left' ) { $outer_class[] = 'bt_bb_row_push_left'; }
|
56 |
+
if ( $row_width == 'boxed_1200_left_content_wide' ) { $outer_class[] = 'bt_bb_row_push_left'; $outer_class[] = 'bt_bb_content_wide'; }
|
57 |
+
if ( $row_width == 'boxed_1200_right' ) { $outer_class[] = 'bt_bb_row_push_right'; }
|
58 |
+
if ( $row_width == 'boxed_1200_right_content_wide' ) { $outer_class[] = 'bt_bb_row_push_right'; $outer_class[] = 'bt_bb_content_wide'; }
|
59 |
+
if ( $row_width == 'boxed_1200_left_right' ) { $outer_class[] = 'bt_bb_row_push_right'; $outer_class[] = 'bt_bb_row_push_left'; }
|
60 |
+
if ( $row_width == 'boxed_1200_left_right_content_wide' ) { $outer_class[] = 'bt_bb_row_push_right'; $outer_class[] = 'bt_bb_row_push_left'; $outer_class[] = 'bt_bb_content_wide'; }
|
61 |
+
}
|
62 |
+
|
63 |
+
$style_attr = apply_filters( $this->shortcode . '_style_attr', $style_attr, $atts );
|
64 |
+
|
65 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
66 |
+
$class_attr = implode( ' ', $class );
|
67 |
+
$outer_class_attr = implode( ' ', $outer_class );
|
68 |
+
|
69 |
+
$output = '<div class="' . esc_attr( $outer_class_attr ) . '">';
|
70 |
+
$output .= '<div ' . $id_attr . ' class="' . esc_attr( $class_attr ) . '" ' . $style_attr . '>';
|
71 |
+
$output .= do_shortcode( $content );
|
72 |
+
$output .= '</div>';
|
73 |
+
$output .= '</div>';
|
74 |
+
|
75 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
76 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
77 |
+
|
78 |
+
return $output;
|
79 |
+
|
80 |
+
}
|
81 |
+
|
82 |
+
function map_shortcode() {
|
83 |
+
|
84 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
85 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
86 |
+
|
87 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Row', 'bold-builder' ), 'description' => esc_html__( 'Row element', 'bold-builder' ), 'container' => 'horizontal', 'accept' => array( 'bt_bb_column' => true ), 'toggle' => true, 'auto_add' => 'bt_bb_column', 'show_settings_on_create' => false,
|
88 |
+
'params' => array(
|
89 |
+
array( 'param_name' => 'column_gap', 'type' => 'dropdown', 'heading' => esc_html__( 'Column gap', 'bold-builder' ), 'preview' => true,
|
90 |
+
'value' => array(
|
91 |
+
esc_html__( 'Default', 'bold-builder' ) => '',
|
92 |
+
esc_html__( '0px', 'bold-builder' ) => '0',
|
93 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extra_small',
|
94 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
95 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
96 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
97 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
98 |
+
esc_html__( '5px', 'bold-builder' ) => '5',
|
99 |
+
esc_html__( '10px', 'bold-builder' ) => '10',
|
100 |
+
esc_html__( '15px', 'bold-builder' ) => '15',
|
101 |
+
esc_html__( '20px', 'bold-builder' ) => '20',
|
102 |
+
esc_html__( '25px', 'bold-builder' ) => '25',
|
103 |
+
esc_html__( '30px', 'bold-builder' ) => '30',
|
104 |
+
esc_html__( '35px', 'bold-builder' ) => '35',
|
105 |
+
esc_html__( '40px', 'bold-builder' ) => '40',
|
106 |
+
esc_html__( '45px', 'bold-builder' ) => '45',
|
107 |
+
esc_html__( '50px', 'bold-builder' ) => '50',
|
108 |
+
esc_html__( '60px', 'bold-builder' ) => '60',
|
109 |
+
esc_html__( '70px', 'bold-builder' ) => '70',
|
110 |
+
esc_html__( '80px', 'bold-builder' ) => '80',
|
111 |
+
esc_html__( '90px', 'bold-builder' ) => '90',
|
112 |
+
esc_html__( '100px', 'bold-builder' ) => '100'
|
113 |
+
)
|
114 |
+
),
|
115 |
+
array( 'param_name' => 'row_width', 'type' => 'dropdown', 'heading' => esc_html__( 'Row width', 'bold-builder' ), 'description' => esc_html__( 'For the best experience set section width to wide.', 'bold-builder' ), 'preview' => true,
|
116 |
+
'value' => array(
|
117 |
+
esc_html__( 'Default', 'bold-builder' ) => 'default',
|
118 |
+
esc_html__( 'Boxed 1200px', 'bold-builder' ) => 'boxed_1200',
|
119 |
+
esc_html__( 'Boxed left 1200px', 'bold-builder' ) => 'boxed_1200_left',
|
120 |
+
esc_html__( 'Boxed left 1200px, wide content', 'bold-builder' ) => 'boxed_1200_left_content_wide',
|
121 |
+
esc_html__( 'Boxed right 1200px', 'bold-builder' ) => 'boxed_1200_right',
|
122 |
+
esc_html__( 'Boxed right 1200px, wide content', 'bold-builder' ) => 'boxed_1200_right_content_wide',
|
123 |
+
esc_html__( 'Boxed left and right 1200px', 'bold-builder' ) => 'boxed_1200_left_right',
|
124 |
+
esc_html__( 'Boxed left and right 1200px, wide content', 'bold-builder' ) => 'boxed_1200_left_right_content_wide'
|
125 |
+
)
|
126 |
+
),
|
127 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
128 |
+
array( 'param_name' => 'background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Background color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
129 |
+
array( 'param_name' => 'opacity', 'type' => 'textfield', 'heading' => esc_html__( 'Background color opacity (deprecated)', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) )
|
130 |
+
)
|
131 |
+
) );
|
132 |
+
}
|
133 |
+
|
134 |
+
}
|
content_elements/bt_bb_row_inner/bt_bb_row_inner.php
ADDED
@@ -0,0 +1,98 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_row_inner extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'column_gap' => '',
|
8 |
+
'row_width' => ''
|
9 |
+
) ), $atts, $this->shortcode ) );
|
10 |
+
|
11 |
+
$class = array( $this->shortcode );
|
12 |
+
|
13 |
+
if ( $el_class != '' ) {
|
14 |
+
$class[] = $el_class;
|
15 |
+
}
|
16 |
+
|
17 |
+
$id_attr = '';
|
18 |
+
if ( $el_id != '' ) {
|
19 |
+
$id_attr = 'id="' . esc_attr( $el_id ) . '"';
|
20 |
+
}
|
21 |
+
|
22 |
+
$style_attr = '';
|
23 |
+
if ( $el_style != '' ) {
|
24 |
+
$style_attr = 'style="' . esc_attr( $el_style ) . '"';
|
25 |
+
}
|
26 |
+
|
27 |
+
if ( $column_gap != '' ) {
|
28 |
+
$class[] = $this->prefix . 'column_inner_gap' . '_' . $column_gap;
|
29 |
+
}
|
30 |
+
|
31 |
+
if ( $row_width != '' && $row_width != 'default' ) {
|
32 |
+
// $outer_class[] = $this->prefix . 'row_width' . '_' . $row_width;
|
33 |
+
$class[] = $this->prefix . 'row_width' . '_' . 'boxed_1200';
|
34 |
+
if ( $row_width == 'boxed_1200_left' ) { $class[] = 'bt_bb_row_push_left'; }
|
35 |
+
if ( $row_width == 'boxed_1200_left_content_wide' ) { $class[] = 'bt_bb_row_push_left'; $class[] = 'bt_bb_content_wide'; }
|
36 |
+
if ( $row_width == 'boxed_1200_right' ) { $class[] = 'bt_bb_row_push_right'; }
|
37 |
+
if ( $row_width == 'boxed_1200_right_content_wide' ) { $class[] = 'bt_bb_row_push_right'; $class[] = 'bt_bb_content_wide'; }
|
38 |
+
if ( $row_width == 'boxed_1200_left_right' ) { $class[] = 'bt_bb_row_push_right'; $class[] = 'bt_bb_row_push_left'; }
|
39 |
+
if ( $row_width == 'boxed_1200_left_right_content_wide' ) { $class[] = 'bt_bb_row_push_right'; $class[] = 'bt_bb_row_push_left'; $class[] = 'bt_bb_content_wide'; }
|
40 |
+
}
|
41 |
+
|
42 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
43 |
+
|
44 |
+
$output = '<div ' . $id_attr . ' class="' . implode( ' ', $class ) . '" ' . $style_attr . '>';
|
45 |
+
$output .= do_shortcode( $content );
|
46 |
+
$output .= '</div>';
|
47 |
+
|
48 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
49 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
50 |
+
|
51 |
+
return $output;
|
52 |
+
|
53 |
+
}
|
54 |
+
|
55 |
+
function map_shortcode() {
|
56 |
+
|
57 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Inner Row', 'bold-builder' ), 'description' => esc_html__( 'Inner Row element', 'bold-builder' ), 'container' => 'horizontal',
|
58 |
+
'accept' => array( 'bt_bb_column_inner' => true ), 'toggle' => true, 'show_settings_on_create' => false, 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
59 |
+
'params' => array(
|
60 |
+
array( 'param_name' => 'column_gap', 'type' => 'dropdown', 'heading' => esc_html__( 'Column gap', 'bold-builder' ), 'preview' => true,
|
61 |
+
'value' => array(
|
62 |
+
esc_html__( 'Default', 'bold-builder' ) => '',
|
63 |
+
esc_html__( '0px', 'bold-builder' ) => '0',
|
64 |
+
esc_html__( '5px', 'bold-builder' ) => '5',
|
65 |
+
esc_html__( '10px', 'bold-builder' ) => '10',
|
66 |
+
esc_html__( '15px', 'bold-builder' ) => '15',
|
67 |
+
esc_html__( '20px', 'bold-builder' ) => '20',
|
68 |
+
esc_html__( '25px', 'bold-builder' ) => '25',
|
69 |
+
esc_html__( '30px', 'bold-builder' ) => '30',
|
70 |
+
esc_html__( '35px', 'bold-builder' ) => '35',
|
71 |
+
esc_html__( '40px', 'bold-builder' ) => '40',
|
72 |
+
esc_html__( '45px', 'bold-builder' ) => '45',
|
73 |
+
esc_html__( '50px', 'bold-builder' ) => '50',
|
74 |
+
esc_html__( '60px', 'bold-builder' ) => '60',
|
75 |
+
esc_html__( '70px', 'bold-builder' ) => '70',
|
76 |
+
esc_html__( '80px', 'bold-builder' ) => '80',
|
77 |
+
esc_html__( '90px', 'bold-builder' ) => '90',
|
78 |
+
esc_html__( '100px', 'bold-builder' ) => '100'
|
79 |
+
)
|
80 |
+
),
|
81 |
+
array( 'param_name' => 'row_width', 'type' => 'dropdown', 'heading' => esc_html__( 'Row width', 'bold-builder' ), 'description' => esc_html__( 'For the best experience set section width to wide.', 'bold-builder' ), 'preview' => true,
|
82 |
+
'value' => array(
|
83 |
+
esc_html__( 'Default', 'bold-builder' ) => 'default',
|
84 |
+
esc_html__( 'Boxed 1200px', 'bold-builder' ) => 'boxed_1200',
|
85 |
+
esc_html__( 'Boxed left 1200px', 'bold-builder' ) => 'boxed_1200_left',
|
86 |
+
esc_html__( 'Boxed left 1200px, wide content', 'bold-builder' ) => 'boxed_1200_left_content_wide',
|
87 |
+
esc_html__( 'Boxed right 1200px', 'bold-builder' ) => 'boxed_1200_right',
|
88 |
+
esc_html__( 'Boxed right 1200px, wide content', 'bold-builder' ) => 'boxed_1200_right_content_wide',
|
89 |
+
esc_html__( 'Boxed left and right 1200px', 'bold-builder' ) => 'boxed_1200_left_right',
|
90 |
+
esc_html__( 'Boxed left and right 1200px, wide content', 'bold-builder' ) => 'boxed_1200_left_right_content_wide'
|
91 |
+
)
|
92 |
+
)
|
93 |
+
)
|
94 |
+
)
|
95 |
+
);
|
96 |
+
}
|
97 |
+
|
98 |
+
}
|
content_elements/bt_bb_section/YTPlayer.css
ADDED
@@ -0,0 +1,297 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*___________________________________________________________________________________________________________________________________________________
|
2 |
+
_ jquery.mb.components _
|
3 |
+
_ _
|
4 |
+
_ file: YTPlayer.css _
|
5 |
+
_ last modified: 19/04/15 17.35 _
|
6 |
+
_ _
|
7 |
+
_ Open Lab s.r.l., Florence - Italy _
|
8 |
+
_ _
|
9 |
+
_ email: matteo@open-lab.com _
|
10 |
+
_ site: http://pupunzi.com _
|
11 |
+
_ http://open-lab.com _
|
12 |
+
_ blog: http://pupunzi.open-lab.com _
|
13 |
+
_ Q&A: http://jquery.pupunzi.com _
|
14 |
+
_ _
|
15 |
+
_ Licences: MIT, GPL _
|
16 |
+
_ http://www.opensource.org/licenses/mit-license.php _
|
17 |
+
_ http://www.gnu.org/licenses/gpl.html _
|
18 |
+
_ _
|
19 |
+
_ Copyright (c) 2001-2015. Matteo Bicocchi (Pupunzi); _
|
20 |
+
___________________________________________________________________________________________________________________________________________________*/
|
21 |
+
|
22 |
+
|
23 |
+
@charset"UTF-8";
|
24 |
+
|
25 |
+
@font-face {
|
26 |
+
font-family: 'ytpregular';
|
27 |
+
src: url('ytp-regular.eot');
|
28 |
+
}
|
29 |
+
|
30 |
+
@font-face {
|
31 |
+
font-family: 'ytpregular';
|
32 |
+
src: url(data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAA5sABEAAAAAFCAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABgAAAABwAAAAcZ9iuNUdERUYAAAGcAAAAHQAAACAAdAAET1MvMgAAAbwAAABJAAAAYHUMUrFjbWFwAAACCAAAAKkAAAGKn5XycWN2dCAAAAK0AAAANgAAADYNLQohZnBnbQAAAuwAAAGxAAACZVO0L6dnYXNwAAAEoAAAAAgAAAAIAAAAEGdseWYAAASoAAAGVQAAB4jz86dSaGVhZAAACwAAAAAzAAAANgbKONpoaGVhAAALNAAAACAAAAAkESQLXGhtdHgAAAtUAAAAVAAAARxOmwVwbG9jYQAAC6gAAAAjAAAAkFoEXRRtYXhwAAALzAAAACAAAAAgAWoB625hbWUAAAvsAAAA+wAAAeok3Eb+cG9zdAAADOgAAADAAAABN99tv1lwcmVwAAANqAAAALkAAAFY3I6ikndlYmYAAA5kAAAABgAAAAbHMlGnAAAAAQAAAADMPaLPAAAAAM3Nk7QAAAAAzc13sXjaY2BkYGDgA2IJBhBgYmAEQjcgZgHzGAAHTAB5AAAAeNpjYGbZwDiBgZWBhdWY5SwDA8MsCM10liGNKQ3IB0rBASMDEgj1DvdjcGDgfcDAlvYPqJJVldEZpoZVkuUZkFJgYAQAUUULewAAAHjaY2BgYGaAYBkGRgYQaAHyGMF8FoYMIC3GIAAUYQOyeBkUGKIYqhgWKHAp6CvEP2D4/x+sAyTuyJAIFGeAizP+//r/8f/D//f+n/HA8oHo/WcKblDzsQBGoOkwSUYmIMGErgDiRLyAhZWNnYOTi5uHl49fQFBIWERUTFxCUkpaRhYiLyevoKikrKKqpq6hqaWto6unb2BoZGxiambOQF1gQZYuAIQnH4IAAAAAAAAAAAABegEnAHEAswC9AOAA5QD+ARcBIwBdAHIBtgBcAGAAZgByAI8AogErAbIAUwBEBREAAHjaXVG7TltBEN0NDwOBxNggOdoUs5mQxnuhBQnE1Y1iZDuF5QhpN3KRi3EBH0CBRA3arxmgoaRImwYhF0h8Qj4hEjNriKI0Ozuzc86ZM0vKkap36WvPU+ckkMLdBs02/U5ItbMA96Tr642MtIMHWmxm9Mp1+/4LBpvRlDtqAOU9bykPGU07gVq0p/7R/AqG+/wf8zsYtDTT9NQ6CekhBOabcUuD7xnNussP+oLV4WIwMKSYpuIuP6ZS/rc052rLsLWR0byDMxH5yTRAU2ttBJr+1CHV83EUS5DLprE2mJiy/iQTwYXJdFVTtcz42sFdsrPoYIMqzYEH2MNWeQweDg8mFNK3JMosDRH2YqvECBGTHAo55dzJ/qRA+UgSxrxJSjvjhrUGxpHXwKA2T7P/PJtNbW8dwvhZHMF3vxlLOvjIhtoYEWI7YimACURCRlX5hhrPvSwG5FL7z0CUgOXxj3+dCLTu2EQ8l7V1DjFWCHp+29zyy4q7VrnOi0J3b6pqqNIpzftezr7HA54eC8NBY8Gbz/v+SoH6PCyuNGgOBEN6N3r/orXqiKu8Fz6yJ9O/sVoAAAAAAQAB//8AD3jaTZVrbBxXFcfvufNe72Nmdx77tmfHO2N76117784OTr154YAbR7RQuUQhttoSuXZKFQVKKYqgiFJAgkpIkVClIn8opSomjXY3VHHTFldEIYpay1hR+ID4Bha27FoIEQGpd8Idu4lY7c6eOfee//2f3+zeizAaQwif4iYRgwRUbgGqjLYFNvVxtcVzfxltM5iGqMUEaS5ItwU+vTPahiBPFFMpmoo5hnv8XnjFn+Um7/xmjF1GCLHoPf+fgsUVEYcSKIcGkYbaWYxKLZ3bgGa50qpACQ0NeyYoYILaDTqpurUK2FZBUYlJY8ukEc0egLpbo+kY8O/BQcx2dvwP2Fh6/Q+Gl19fyroubHmer7rpjHllPZ/NKB+tp2/4/TzxSx0zo/74uUY29vJZOEHIfng4lzz7cjyXzn/jJwqCwCOLdj2iPSP3F/hUAHF3v+Cviee5DIqhJDLRACLoPGpHECq1M7Sd5iDZ/W6zQW8mu9Ecql7SI6xYaiOpnxCydwPNWqWJ/tSSjY1mqtqU5ZYNpWal2pJiGy0XSi1bVuKX1Fyh1GuMoJYeUeJvy/GEVbTpfTOjHJRVzUim0tlcwekbKD1QrgR5M97OV8nIyMjQsKPUEKWGNEVFFBwqEs/yHMEVFMM1PIc4FhiWQVxHcxjD0zzXEkgbmHe5G1eA9T955453xd+B9tbpi6vj10+fvj6+evH0Fju7vPDU5szVY8euzmw+tXABv7kEov/v33WOv+v/C8LG9M2xD19/EquzCyuHVuY6R25Obz35+odw4NDKwuzWHAK86q9x21wKYYQkjFeZ3M5f/TUmw6Qo12P+38Wf0zEZpVABlVANfQu1owHXXMD1AdIyQhvNgeou2b1LAuhAkVwyExRps/ppAE230qrTX1MrEVXil5W4qlm9thMAMpR2MtVHAbXMnBJvZ8oVGjdZ5XK6u6cwNExqdNJ9dnm4D+8eIeYeM7hH0b3H9bcQuczdeH75ef+TxTveO/5tuDK2Mrs5d+HmzQtzm7MrbP6ZqxMrrz2+vf34aysTV5+5iN9YhMi51W93Tiz5/wFp+ujy/MntGXx+dfrjqflrO788Ob989MaMP716+Nr8FOpCjbvnw032BUrm82gKfQc10SJaAwwZGINHEUrksaEndI3XCppBavWaU7Nrda/u7QfPsnmBF1ReK4NjCxbkgVRJdW/MdmiyjHkhCgKvGkrNq+uGngPLUDXVioJTcGxONWguENOIYmkq1lQqaDu2q1AqKi6qRh6CN0uqhlkn1WIwt1Z3FTqH6lt2kWLkqZpQ2F1H4D3X1CzFUkCp1R8EVaeKGr3mgXpyd3OKZTcgioMi3qImqA2FaFSYrkHd7BYESnSMdqAx1HNgg/6pG0Bo95RAGehqoNAuaRHR90wGdXyJtkAJ1DxSDVQCfS8ocui+EohqagNjFroniyLAOYbBgvSQxuXxiUSCGQXReJBnjafhbf6xBs8P9ZclLLJdTJfdL3bLRsgd50Nf52P7JIWjInYqFuZhUGErucF0Qj/zNJtPGArDz7EYFi0chvSpw8C/mJRgRVLfgrEf7RvowhyjJ3JPfPlX/h8N/6fZryX7bh/pJsPj4QLX9Ra89NL3QQkljmOqnognU6HcxKkoI/JsaJ8cDcfCqZAMC2cfFeSoHu+WFEmWzIQqx8PVmCThSFqPKqLIsgxJx0QYZt1iocjgfrPbjIoiltkXxzxTlE5FVTL1zb7YmTOSzXGiEBU0ZgHzXexjd9HklDtTc2P7iR4/Wmqk/jGhfZXjZW1bYFVp3y01G+ocrh/K9VST3+05OUsaEnAYGKZRfWIpDQaXT2Ej2/vCl1S5nNe7jHq5eCAlM7rOpFx8PP1Zf/NzCUdkpXjUhHmdfdi/Xv31D6WccPAIDjNMmPnBzC+ErAipZzPf++LkQyGRhTDEpCNkbmLpz8892zmE3+8swq1YODIqf2Z7lO8RdJHn7RS8kpY6r0qhAg7xXIHnhViu+zBDbhcx16UOfGVgaGkoXe6LhwS+h7NgSa+vR7ESZvPyq6VUqN+SC0ZSTPm3oETGoxGIh/p60w3naIyJ/Gywf9CMnnAemR3524hT5DErxOwBhR55COMw3e+u0T0tOEsR0JMx+NBHftD/AJ+D/f7v/TW+9t+P+Bo9e/7vNYz+By6FsKkAAAB42mNgZGBgYGRwbI8IWhzPb/OVQZ6DAQTOni3fCKP/+/x7yrOBNRTI5WBgAokCAG3mDbAAeNpjYGRgYFX9t5eBgeftf5//WTwbGIAiKMAdAJycBph42mN6w+DCwcDAAMIsZ8D0HhBNLIap52D478fBwHQRyvbBpZ7nLYMtKeZjt5OJhxT1TKsYGFhDETTjcSAG0gyPoRgozigIpL0hNEiOBcgFAEBoNC142mNgYNCBwjoccALDBEY9RhsgPIMMmZcRhHtIhkcA9pQspAAAAQAAAEcBVAALAAAAAAACAAEAAgAWAAABAACTAAAAAHjalZCxTgJBFEXPApJoYYgF9VZUSIAFTdDCnmiIgsTKsASQuGiCu0YaCr4OfomKOzsTCHRmMzPn3blz38sCFyzJ4uXOgbKWZY+8KssZLqk7zkp9cJyjSOT4jD9WjvPSt46vKHoFx2txyfGGqnfPO18kyohSGjBjJPqRFmqPmWolWkZ9o0uHZ/EkfTNgTo0KVX017ujRps+TyDqvT7xW9U/UV1Vz9ZryrQn8o8QOL1JsdVA/5IwZpv7f/YsKTW50O1PqpzKNZyw1UnKov2c9dbkD7c1/zdhXFSrNdIz3HbuaJFH1KM9CZyDN3N3SoiFupfP66mbOYAd8k0EGAHjabc05TwJhHITxZ0BBBc/P4IkI7y4sh0dBsosHKiqHeLUiiTE0FH56Xdl/6TS/ZIoZUszzM+ad/3IOSilNmm122GWPfQ4ocEiRI0qUcXj4VKgSUKNOgybHnHDKGSER7Xjjgkuu6HDNDbd0ueOeB3r0GTDkkRFPPPPCK29a0KIyympJy1pRTnmtak3r2tCmtjLjz+/ph5edfU2cc2Fiy/3px4Xpmb5ZMatmYNbMutkwm2Yr0W8nBnOj+OcXVDk0PnjaRc67DoJAEAVQFuT9fqsJCSZ2+w12QkNjrCCx9w+sbSy19DsGK/9Ob3RZujk3k7nzZp8bsbvSkXXoR8Yew9gavN9QNHSUHTFch4oMfuoV0uqGNL4nv25emq3yHzzADwVcwOsFHMCtBWzAWQlYgJ0ImIA1rRmAeRbQAWM6vQD04A9GgXglRBo4Kh+19gJGYDgzBqOnZALGO8kUTLaSGZhWkjmYrSULMA8kS7CYi5ZgKTlQxr/W1F5aAAAAAAFRp8cxAAA=) format('woff'),
|
33 |
+
url('ytp-regular.ttf') format('truetype');
|
34 |
+
font-weight: normal;
|
35 |
+
font-style: normal;
|
36 |
+
|
37 |
+
}
|
38 |
+
.mb_YTPlayer :focus {
|
39 |
+
outline: 0;
|
40 |
+
}
|
41 |
+
|
42 |
+
.mb_YTPlayer{
|
43 |
+
display:block;
|
44 |
+
transform:translateZ(0);
|
45 |
+
transform-style: preserve-3d;
|
46 |
+
perspective: 1000;
|
47 |
+
backface-visibility: hidden;
|
48 |
+
box-sizing: border-box;
|
49 |
+
}
|
50 |
+
|
51 |
+
|
52 |
+
.mb_YTPlayer .loading {
|
53 |
+
position: absolute;
|
54 |
+
top: 10px;
|
55 |
+
right: 10px;
|
56 |
+
font-size: 12px;
|
57 |
+
color: #fff;
|
58 |
+
background: rgba(0, 0, 0, 0.51);
|
59 |
+
text-align: center;
|
60 |
+
padding: 2px 4px;
|
61 |
+
border-radius: 5px;
|
62 |
+
|
63 |
+
-webkit-animation: fade .1s infinite alternate; /* Chrome, Safari, Opera */
|
64 |
+
animation: fade .1s infinite alternate;
|
65 |
+
|
66 |
+
}
|
67 |
+
|
68 |
+
/* Chrome, Safari, Opera */
|
69 |
+
@-webkit-keyframes fade { 0% {opacity: .5;} 100% {opacity: 1;} }
|
70 |
+
|
71 |
+
/* Standard syntax */
|
72 |
+
@keyframes fade { 0% {opacity: .5;} 100% {opacity: 1;} }
|
73 |
+
|
74 |
+
.mb_YTPlayer.fullscreen{
|
75 |
+
display:block!important;
|
76 |
+
position: fixed!important;
|
77 |
+
width: 100%!important;
|
78 |
+
height: 100%!important;
|
79 |
+
top: 0!important;
|
80 |
+
left: 0!important;
|
81 |
+
margin: 0!important;
|
82 |
+
border: none !important;
|
83 |
+
}
|
84 |
+
|
85 |
+
.mb_YTPlayer.fullscreen .mbYTP_wrapper{
|
86 |
+
opacity:1 !important;
|
87 |
+
}
|
88 |
+
|
89 |
+
.mbYTP_wrapper iframe {
|
90 |
+
max-width: 4000px !important;
|
91 |
+
}
|
92 |
+
|
93 |
+
.inline_YTPlayer{
|
94 |
+
margin-bottom: 20px;
|
95 |
+
vertical-align:top;
|
96 |
+
position:relative;
|
97 |
+
left:0;
|
98 |
+
overflow: hidden;
|
99 |
+
border-radius: 4px;
|
100 |
+
box-shadow: 0 0 5px rgba(0,0,0,.7);
|
101 |
+
background: rgba(0,0,0,.5);
|
102 |
+
}
|
103 |
+
|
104 |
+
.inline_YTPlayer img{
|
105 |
+
border: none!important;
|
106 |
+
margin:0!important;
|
107 |
+
padding:0!important;
|
108 |
+
transform: none!important;
|
109 |
+
}
|
110 |
+
|
111 |
+
/*CONTROL BAR*/
|
112 |
+
|
113 |
+
.mb_YTPBar .ytpicon{
|
114 |
+
font-size: 20px;
|
115 |
+
font-family: 'ytpregular';
|
116 |
+
}
|
117 |
+
|
118 |
+
.mb_YTPBar .mb_YTPUrl.ytpicon{
|
119 |
+
font-size: 30px;
|
120 |
+
}
|
121 |
+
|
122 |
+
.mb_YTPBar{
|
123 |
+
transition: opacity .5s;
|
124 |
+
display:block;
|
125 |
+
width:100%;
|
126 |
+
height:10px;
|
127 |
+
padding:5px;
|
128 |
+
background:#333;
|
129 |
+
position:fixed;
|
130 |
+
bottom:0;
|
131 |
+
left:0;
|
132 |
+
text-align:left;
|
133 |
+
z-index: 1000;
|
134 |
+
font: 14px/16px sans-serif;
|
135 |
+
color:white;
|
136 |
+
opacity:.1;
|
137 |
+
|
138 |
+
box-sizing:border-box;
|
139 |
+
}
|
140 |
+
|
141 |
+
.mb_YTPBar.visible, .mb_YTPBar:hover{
|
142 |
+
opacity:1;
|
143 |
+
}
|
144 |
+
|
145 |
+
.mb_YTPBar .buttonBar{
|
146 |
+
transition: all .5s;
|
147 |
+
background:transparent;
|
148 |
+
font:12px/14px Calibri;
|
149 |
+
position:absolute;
|
150 |
+
top:-30px;
|
151 |
+
left:0;
|
152 |
+
padding: 5px;
|
153 |
+
width:100%;
|
154 |
+
box-sizing: border-box;
|
155 |
+
}
|
156 |
+
|
157 |
+
.mb_YTPBar:hover .buttonBar{
|
158 |
+
background: rgba(0,0,0,0.4);
|
159 |
+
}
|
160 |
+
|
161 |
+
.mb_YTPBar span{
|
162 |
+
display:inline-block;
|
163 |
+
font:16px/20px Calibri, sans-serif;
|
164 |
+
position:relative;
|
165 |
+
width: 30px;
|
166 |
+
height: 25px;
|
167 |
+
vertical-align: middle;
|
168 |
+
}
|
169 |
+
|
170 |
+
.mb_YTPBar span.mb_YTPTime{
|
171 |
+
width: 130px;
|
172 |
+
}
|
173 |
+
|
174 |
+
.mb_YTPBar span.mb_YTPUrl,.mb_YTPBar span.mb_OnlyYT {
|
175 |
+
position: absolute;
|
176 |
+
width: auto;
|
177 |
+
display:block;
|
178 |
+
top:6px;
|
179 |
+
right:10px;
|
180 |
+
cursor: pointer;
|
181 |
+
}
|
182 |
+
|
183 |
+
.mb_YTPBar span.mb_YTPUrl img{
|
184 |
+
width: 60px;
|
185 |
+
}
|
186 |
+
|
187 |
+
.mb_YTPBar span.mb_OnlyYT {
|
188 |
+
left:300px;
|
189 |
+
right: auto;
|
190 |
+
}
|
191 |
+
.mb_YTPBar span.mb_OnlyYT img{
|
192 |
+
width: 25px;
|
193 |
+
}
|
194 |
+
|
195 |
+
.mb_YTPBar span.mb_YTPUrl a{
|
196 |
+
color:white;
|
197 |
+
}
|
198 |
+
|
199 |
+
.mb_YTPBar .mb_YTPPlaypause, .mb_YTPlayer .mb_YTPBar .mb_YTPPlaypause img{
|
200 |
+
cursor:pointer;
|
201 |
+
}
|
202 |
+
|
203 |
+
.mb_YTPBar .mb_YTPMuteUnmute{
|
204 |
+
cursor:pointer;
|
205 |
+
}
|
206 |
+
|
207 |
+
/*PROGRESS BAR*/
|
208 |
+
.mb_YTPBar .mb_YTPProgress{
|
209 |
+
height:10px;
|
210 |
+
width:100%;
|
211 |
+
background:#222;
|
212 |
+
bottom:0;
|
213 |
+
left:0;
|
214 |
+
}
|
215 |
+
|
216 |
+
.mb_YTPBar .mb_YTPLoaded{
|
217 |
+
height:10px;
|
218 |
+
width:0;
|
219 |
+
background:#444;
|
220 |
+
left:0;
|
221 |
+
}
|
222 |
+
|
223 |
+
.mb_YTPBar .mb_YTPseekbar{
|
224 |
+
height:10px;
|
225 |
+
width:0;
|
226 |
+
background:#000;
|
227 |
+
bottom:0;
|
228 |
+
left:0;
|
229 |
+
box-shadow: rgba(82, 82, 82, 0.47) 1px 1px 3px;
|
230 |
+
}
|
231 |
+
|
232 |
+
.mb_YTPBar .YTPOverlay{
|
233 |
+
backface-visibility: hidden;
|
234 |
+
-webkit-backface-visibility: hidden;
|
235 |
+
-webkit-transform-style: "flat";
|
236 |
+
box-sizing: border-box;
|
237 |
+
}
|
238 |
+
|
239 |
+
/*RASTER OVERLAY*/
|
240 |
+
|
241 |
+
.YTPOverlay.raster{
|
242 |
+
background: url("../images/raster.png");
|
243 |
+
}
|
244 |
+
|
245 |
+
.YTPOverlay.raster.retina{
|
246 |
+
background: url("../images/raster@2x.png");
|
247 |
+
}
|
248 |
+
|
249 |
+
.YTPOverlay.raster-dot{
|
250 |
+
background: url("../images/raster_dot.png");
|
251 |
+
}
|
252 |
+
|
253 |
+
.YTPOverlay.raster-dot.retina{
|
254 |
+
background: url("../images/raster_dot@2x.png");
|
255 |
+
}
|
256 |
+
|
257 |
+
/*VOLUME SLIDER*/
|
258 |
+
|
259 |
+
.mb_YTPBar .simpleSlider {
|
260 |
+
position: relative;
|
261 |
+
width: 100px;
|
262 |
+
height: 10px;
|
263 |
+
border: 1px solid #fff;
|
264 |
+
overflow: hidden;
|
265 |
+
box-sizing: border-box;
|
266 |
+
margin-right: 10px;
|
267 |
+
cursor: pointer !important;
|
268 |
+
border-radius: 3px;
|
269 |
+
}
|
270 |
+
|
271 |
+
.mb_YTPBar.compact .simpleSlider {
|
272 |
+
width: 40px;
|
273 |
+
}
|
274 |
+
|
275 |
+
.mb_YTPBar .simpleSlider.muted {
|
276 |
+
opacity: .3;
|
277 |
+
}
|
278 |
+
|
279 |
+
.mb_YTPBar .level {
|
280 |
+
position: absolute;
|
281 |
+
left: 0;
|
282 |
+
bottom: 0;
|
283 |
+
background-color: #fff;
|
284 |
+
box-sizing: border-box;
|
285 |
+
}
|
286 |
+
|
287 |
+
.mb_YTPBar .level.horizontal {
|
288 |
+
height: 100%;
|
289 |
+
width: 0;
|
290 |
+
}
|
291 |
+
|
292 |
+
.mb_YTPBar .level.vertical {
|
293 |
+
height: auto;
|
294 |
+
width: 100%;
|
295 |
+
}
|
296 |
+
|
297 |
+
|
content_elements/bt_bb_section/bt_bb_elements.js
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function( $ ) {
|
2 |
+
"use strict";
|
3 |
+
function bt_bb_video_background() {
|
4 |
+
$( '.bt_bb_section.video' ).each(function() {
|
5 |
+
var video = $( this ).find( '.mbYTP_wrapper video' );
|
6 |
+
var w = $( this ).outerWidth();
|
7 |
+
var h = $( this ).outerHeight();
|
8 |
+
if ( w / h > 16 / 9 ) {
|
9 |
+
video.css( 'width', '105%' );
|
10 |
+
video.css( 'height', '' );
|
11 |
+
} else {
|
12 |
+
video.css( 'width', '' );
|
13 |
+
video.css( 'height', '105%' );
|
14 |
+
}
|
15 |
+
});
|
16 |
+
}
|
17 |
+
|
18 |
+
window.bt_bb_video_callback = function( v ) {
|
19 |
+
$( v ).parent().addClass( 'video_on' );
|
20 |
+
}
|
21 |
+
|
22 |
+
$( document ).ready(function () {
|
23 |
+
bt_bb_video_background();
|
24 |
+
});
|
25 |
+
|
26 |
+
$( window ).on( 'resize', function( e ) {
|
27 |
+
bt_bb_video_background();
|
28 |
+
});
|
29 |
+
|
30 |
+
$( window ).on( 'load', function( e ) {
|
31 |
+
$( 'a[href*="#"]:not([href="#"]):not([href*="#tab-"])' ).not( '.menu-scroll-down' ).on( 'click', function() { // .menu-scroll-down - 2017 theme, #tab- woocommerce tabs
|
32 |
+
if ( location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname ) {
|
33 |
+
var target = $( this.hash );
|
34 |
+
target = target.length ? target : $( '[name=' + this.hash.slice(1) +']' );
|
35 |
+
if ( target.length ) {
|
36 |
+
$( 'html, body' ).animate({
|
37 |
+
scrollTop: target.offset().top + parseFloat( window.bt_bb_scroll_nav_offset ? window.bt_bb_scroll_nav_offset : 0 )
|
38 |
+
}, 1000 );
|
39 |
+
if ( $( 'body' ).hasClass( 'btMenuVerticalOn' ) ) $( '.bt-vertical-menu-trigger, .btVerticalMenuTrigger' ).trigger( 'click' );
|
40 |
+
return false;
|
41 |
+
}
|
42 |
+
}
|
43 |
+
});
|
44 |
+
});
|
45 |
+
})( jQuery );
|
content_elements/bt_bb_section/bt_bb_section.php
ADDED
@@ -0,0 +1,291 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_section extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
8 |
+
'layout' => '',
|
9 |
+
'full_screen' => '',
|
10 |
+
'vertical_align' => '',
|
11 |
+
'top_spacing' => '',
|
12 |
+
'bottom_spacing' => '',
|
13 |
+
'color_scheme' => '',
|
14 |
+
'background_color' => '',
|
15 |
+
'background_image' => '',
|
16 |
+
'lazy_load' => 'no',
|
17 |
+
'background_overlay' => '',
|
18 |
+
'background_video_yt' => '',
|
19 |
+
'yt_video_settings' => '',
|
20 |
+
'background_video_mp4' => '',
|
21 |
+
'background_video_ogg' => '',
|
22 |
+
'background_video_webm' => '',
|
23 |
+
'show_video_on_mobile' => '',
|
24 |
+
'parallax' => '',
|
25 |
+
'parallax_offset' => ''
|
26 |
+
) ), $atts, $this->shortcode ) );
|
27 |
+
|
28 |
+
$class = array( $this->shortcode );
|
29 |
+
|
30 |
+
wp_enqueue_script(
|
31 |
+
'bt_bb_elements',
|
32 |
+
plugin_dir_url( __FILE__ ) . 'bt_bb_elements.js',
|
33 |
+
array( 'jquery' ),
|
34 |
+
BT_BB_VERSION,
|
35 |
+
true
|
36 |
+
);
|
37 |
+
|
38 |
+
$show_video_on_mobile = ( $show_video_on_mobile == 'show_video_on_mobile' || $show_video_on_mobile == 'yes' ) ? 1 : 0;
|
39 |
+
|
40 |
+
if ( $top_spacing != '' ) {
|
41 |
+
$class[] = $this->prefix . 'top_spacing' . '_' . $top_spacing;
|
42 |
+
}
|
43 |
+
|
44 |
+
if ( $bottom_spacing != '' ) {
|
45 |
+
$class[] = $this->prefix . 'bottom_spacing' . '_' . $bottom_spacing;
|
46 |
+
}
|
47 |
+
|
48 |
+
if ( $color_scheme != '' ) {
|
49 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
50 |
+
}
|
51 |
+
|
52 |
+
if ( $background_color != '' ) {
|
53 |
+
$el_style = $el_style . ';' . 'background-color:' . $background_color . ';';
|
54 |
+
}
|
55 |
+
|
56 |
+
if ( $layout != '' ) {
|
57 |
+
$class[] = $this->prefix . 'layout' . '_' . $layout;
|
58 |
+
}
|
59 |
+
|
60 |
+
if ( $full_screen == 'yes' ) {
|
61 |
+
$class[] = $this->prefix . 'full_screen';
|
62 |
+
}
|
63 |
+
|
64 |
+
if ( $vertical_align != '' ) {
|
65 |
+
$class[] = $this->prefix . 'vertical_align' . '_' . $vertical_align;
|
66 |
+
}
|
67 |
+
$background_data_attr = '';
|
68 |
+
|
69 |
+
if ( $background_image != '' ) {
|
70 |
+
$background_image = wp_get_attachment_image_src( $background_image, 'full' );
|
71 |
+
}
|
72 |
+
|
73 |
+
$background_image_url = '';
|
74 |
+
$data_parallax_attr = '';
|
75 |
+
|
76 |
+
if ( $background_image ) {
|
77 |
+
$background_image_url = isset($background_image[0]) ? $background_image[0] : '';
|
78 |
+
}
|
79 |
+
if ( $background_image_url != '' ) {
|
80 |
+
if ( $lazy_load == 'yes' ) {
|
81 |
+
$blank_image_src = BT_BB_Root::$path . 'img/blank.gif';
|
82 |
+
$background_image_style = 'background-image:url(\'' . $blank_image_src . '\');';
|
83 |
+
$background_data_attr .= ' data-background_image_src="\'' . $background_image_url . '\'"';
|
84 |
+
$class[] = 'btLazyLoadBackground';
|
85 |
+
} else {
|
86 |
+
$background_image_style = 'background-image:url(\'' . $background_image_url . '\');';
|
87 |
+
|
88 |
+
}
|
89 |
+
$el_style = $background_image_style . $el_style;
|
90 |
+
$class[] = $this->prefix . 'background_image';
|
91 |
+
|
92 |
+
if ( $parallax != '' ) {
|
93 |
+
$data_parallax_attr = 'data-parallax="' . esc_attr( $parallax ) . '" data-parallax-offset="' . esc_attr( intval( $parallax_offset ) ) . '"';
|
94 |
+
$class[] = $this->prefix . 'parallax';
|
95 |
+
}
|
96 |
+
}
|
97 |
+
|
98 |
+
if ( $background_overlay != '' ) {
|
99 |
+
$class[] = $this->prefix . 'background_overlay' . '_' . $background_overlay;
|
100 |
+
}
|
101 |
+
|
102 |
+
$id_attr = '';
|
103 |
+
if ( $el_id == '' ) {
|
104 |
+
$el_id = uniqid( 'bt_bb_section' );
|
105 |
+
}
|
106 |
+
$id_attr = 'id="' . esc_attr( $el_id ) . '"';
|
107 |
+
|
108 |
+
$background_video_attr = '';
|
109 |
+
|
110 |
+
$video_html = '';
|
111 |
+
|
112 |
+
if ( $background_video_yt != '' ) {
|
113 |
+
wp_enqueue_style( 'bt_bb_style_yt', plugin_dir_url( __FILE__ ) . 'jquery.mb.YTPlayer.min.css', array(), BT_BB_VERSION );
|
114 |
+
wp_enqueue_script(
|
115 |
+
'bt_bb_yt',
|
116 |
+
plugin_dir_url( __FILE__ ) . 'jquery.mb.YTPlayer.min.js',
|
117 |
+
array( 'jquery' ),
|
118 |
+
BT_BB_VERSION,
|
119 |
+
true
|
120 |
+
);
|
121 |
+
|
122 |
+
$class[] = $this->prefix . 'background_video_yt';
|
123 |
+
|
124 |
+
if ( $yt_video_settings == '' ) {
|
125 |
+
$yt_video_settings = 'showControls:false,showYTLogo:false,startAt:0,loop:true,mute:true,stopMovieOnBlur:false,opacity:1';
|
126 |
+
// $yt_video_settings = '';
|
127 |
+
}
|
128 |
+
|
129 |
+
$yt_video_settings .= $show_video_on_mobile ? ',useOnMobile:true' : ',useOnMobile:false';
|
130 |
+
|
131 |
+
$yt_video_settings .= '';
|
132 |
+
// $yt_video_settings .= ',cc_load_policy:false,showAnnotations:false,optimizeDisplay:true,anchor:\'center,center\'';
|
133 |
+
$yt_video_settings .= ',useNoCookie:false';
|
134 |
+
|
135 |
+
$background_video_attr = ' ' . 'data-property="{videoURL:\'' . $background_video_yt . '\',containment:\'#' . $el_id . '\',' . $yt_video_settings . '}"';
|
136 |
+
|
137 |
+
$video_html .= '<div class="' . $this->prefix . 'background_video_yt_inner" ' . $background_video_attr . ' ></div>';
|
138 |
+
|
139 |
+
$proxy = new BT_BB_YT_Video_Proxy( $this->prefix, $el_id );
|
140 |
+
add_action( 'wp_footer', array( $proxy, 'js_init' ) );
|
141 |
+
|
142 |
+
} else if ( ( $background_video_mp4 != '' || $background_video_ogg != '' || $background_video_webm != '' ) && ! ( wp_is_mobile() && ! $show_video_on_mobile ) ) {
|
143 |
+
$class[] = $this->prefix . 'video';
|
144 |
+
$video_html = '<video autoplay loop muted playsinline onplay="bt_bb_video_callback( this )">';
|
145 |
+
if ( $background_video_mp4 != '' ) {
|
146 |
+
$video_html .= '<source src="' . esc_url_raw( $background_video_mp4 ) . '" type="video/mp4">';
|
147 |
+
}
|
148 |
+
if ( $background_video_ogg != '' ) {
|
149 |
+
$video_html .= '<source src="' . esc_url_raw( $background_video_ogg ) . '" type="video/ogg">';
|
150 |
+
}
|
151 |
+
if ( $background_video_webm != '' ) {
|
152 |
+
$video_html .= '<source src="' . esc_url_raw( $background_video_webm ) . '" type="video/webm">';
|
153 |
+
}
|
154 |
+
$video_html .= '</video>';
|
155 |
+
}
|
156 |
+
|
157 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
158 |
+
$class_attr = implode( ' ', $class );
|
159 |
+
|
160 |
+
if ( $el_class != '' ) {
|
161 |
+
$class_attr = $class_attr . ' ' . $el_class;
|
162 |
+
}
|
163 |
+
|
164 |
+
$style_attr = '';
|
165 |
+
if ( $el_style != '' ) {
|
166 |
+
$style_attr = 'style="' . esc_attr( $el_style ) . '"';
|
167 |
+
}
|
168 |
+
|
169 |
+
$output = '<section ' . $id_attr . ' ' . $data_parallax_attr . $background_data_attr . ' class="' . esc_attr( $class_attr ) . '" ' . $style_attr . '>';
|
170 |
+
$output .= $video_html;
|
171 |
+
$output .= '<div class="' . esc_attr( $this->prefix ) . 'port">';
|
172 |
+
$output .= '<div class="' . esc_attr( $this->prefix ) . 'cell">';
|
173 |
+
$output .= '<div class="' . esc_attr( $this->prefix ) . 'cell_inner">';
|
174 |
+
$output .= do_shortcode( $content );
|
175 |
+
$output .= '</div>';
|
176 |
+
$output .= '</div>';
|
177 |
+
$output .= '</div>';
|
178 |
+
|
179 |
+
$output .= '</section>';
|
180 |
+
|
181 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
182 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
183 |
+
|
184 |
+
return $output;
|
185 |
+
|
186 |
+
}
|
187 |
+
|
188 |
+
function map_shortcode() {
|
189 |
+
|
190 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
191 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
192 |
+
|
193 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Section', 'bold-builder' ), 'description' => esc_html__( 'Basic root element', 'bold-builder' ), 'root' => true, 'container' => 'vertical', 'accept' => array( 'bt_bb_row' => true ), 'toggle' => true, 'auto_add' => 'bt_bb_row', 'show_settings_on_create' => false,
|
194 |
+
'params' => array(
|
195 |
+
array( 'param_name' => 'layout', 'type' => 'dropdown', 'default' => 'boxed_1200', 'heading' => esc_html__( 'Layout', 'bold-builder' ), 'group' => esc_html__( 'General', 'bold-builder' ), 'weight' => 0, 'preview' => true,
|
196 |
+
'value' => array(
|
197 |
+
esc_html__( 'Boxed (800px)', 'bold-builder' ) => 'boxed_800',
|
198 |
+
esc_html__( 'Boxed (900px)', 'bold-builder' ) => 'boxed_900',
|
199 |
+
esc_html__( 'Boxed (1000px)', 'bold-builder' ) => 'boxed_1000',
|
200 |
+
esc_html__( 'Boxed (1100px)', 'bold-builder' ) => 'boxed_1100',
|
201 |
+
esc_html__( 'Boxed (1200px)', 'bold-builder' ) => 'boxed_1200',
|
202 |
+
esc_html__( 'Boxed (1300px)', 'bold-builder' ) => 'boxed_1300',
|
203 |
+
esc_html__( 'Boxed (1400px)', 'bold-builder' ) => 'boxed_1400',
|
204 |
+
esc_html__( 'Boxed (1500px)', 'bold-builder' ) => 'boxed_1500',
|
205 |
+
esc_html__( 'Boxed (1600px)', 'bold-builder' ) => 'boxed_1600',
|
206 |
+
esc_html__( 'Wide', 'bold-builder' ) => 'wide'
|
207 |
+
)
|
208 |
+
),
|
209 |
+
array( 'param_name' => 'top_spacing', 'type' => 'dropdown', 'heading' => esc_html__( 'Top spacing', 'bold-builder' ), 'preview' => true,
|
210 |
+
'value' => array(
|
211 |
+
esc_html__( 'No spacing', 'bold-builder' ) => '',
|
212 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extra_small',
|
213 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
214 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
215 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
216 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
217 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'extra_large'
|
218 |
+
)
|
219 |
+
),
|
220 |
+
array( 'param_name' => 'bottom_spacing', 'type' => 'dropdown', 'heading' => esc_html__( 'Bottom spacing', 'bold-builder' ), 'preview' => true,
|
221 |
+
'value' => array(
|
222 |
+
esc_html__( 'No spacing', 'bold-builder' ) => '',
|
223 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extra_small',
|
224 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
225 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
226 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
227 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
228 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'extra_large'
|
229 |
+
)
|
230 |
+
),
|
231 |
+
array( 'param_name' => 'full_screen', 'type' => 'dropdown', 'heading' => esc_html__( 'Full screen', 'bold-builder' ),
|
232 |
+
'value' => array(
|
233 |
+
esc_html__( 'No', 'bold-builder' ) => '',
|
234 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
235 |
+
)
|
236 |
+
),
|
237 |
+
array( 'param_name' => 'vertical_align', 'type' => 'dropdown', 'heading' => esc_html__( 'Vertical align (for fullscreen section)', 'bold-builder' ), 'preview' => true,
|
238 |
+
'value' => array(
|
239 |
+
esc_html__( 'Top', 'bold-builder' ) => 'top',
|
240 |
+
esc_html__( 'Middle', 'bold-builder' ) => 'middle',
|
241 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom'
|
242 |
+
)
|
243 |
+
),
|
244 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
245 |
+
array( 'param_name' => 'background_color', 'type' => 'colorpicker', 'heading' => esc_html__( 'Background color', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ), 'preview' => true ),
|
246 |
+
array( 'param_name' => 'background_image', 'type' => 'attach_image', 'preview' => true, 'heading' => esc_html__( 'Background image', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
247 |
+
array( 'param_name' => 'lazy_load', 'type' => 'dropdown', 'default' => 'yes', 'heading' => esc_html__( 'Lazy load background image', 'bold-builder' ),
|
248 |
+
'value' => array(
|
249 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
250 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
251 |
+
)
|
252 |
+
),
|
253 |
+
array( 'param_name' => 'background_overlay', 'type' => 'dropdown', 'heading' => esc_html__( 'Background overlay', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
254 |
+
'value' => array(
|
255 |
+
esc_html__( 'No overlay', 'bold-builder' ) => '',
|
256 |
+
esc_html__( 'Light stripes', 'bold-builder' ) => 'light_stripes',
|
257 |
+
esc_html__( 'Dark stripes', 'bold-builder' ) => 'dark_stripes',
|
258 |
+
esc_html__( 'Light solid', 'bold-builder' ) => 'light_solid',
|
259 |
+
esc_html__( 'Dark solid', 'bold-builder' ) => 'dark_solid',
|
260 |
+
esc_html__( 'Light gradient', 'bold-builder' ) => 'light_gradient',
|
261 |
+
esc_html__( 'Dark gradient', 'bold-builder' ) => 'dark_gradient'
|
262 |
+
)
|
263 |
+
),
|
264 |
+
array( 'param_name' => 'parallax', 'type' => 'textfield', 'heading' => esc_html__( 'Parallax (e.g. 0.7)', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
265 |
+
array( 'param_name' => 'parallax_offset', 'type' => 'textfield', 'heading' => esc_html__( 'Parallax offset in px (e.g. -100)', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
266 |
+
array( 'param_name' => 'background_video_yt', 'type' => 'textfield', 'heading' => esc_html__( 'YouTube background video', 'bold-builder' ), 'group' => esc_html__( 'Video', 'bold-builder' ) ),
|
267 |
+
array( 'param_name' => 'yt_video_settings', 'type' => 'textfield', 'heading' => esc_html__( 'YouTube video settings (e.g. startAt:20, mute:true, stopMovieOnBlur:false)', 'bold-builder' ), 'group' => esc_html__( 'Video', 'bold-builder' ) ),
|
268 |
+
array( 'param_name' => 'background_video_mp4', 'type' => 'textfield', 'heading' => esc_html__( 'MP4 background video', 'bold-builder' ), 'group' => esc_html__( 'Video', 'bold-builder' ) ),
|
269 |
+
array( 'param_name' => 'background_video_ogg', 'type' => 'textfield', 'heading' => esc_html__( 'OGG background video', 'bold-builder' ), 'group' => esc_html__( 'Video', 'bold-builder' ) ),
|
270 |
+
array( 'param_name' => 'background_video_webm', 'type' => 'textfield', 'heading' => esc_html__( 'WEBM background video', 'bold-builder' ), 'group' => esc_html__( 'Video', 'bold-builder' ) ),
|
271 |
+
array( 'param_name' => 'show_video_on_mobile', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'yes' ), 'default' => '', 'heading' => esc_html__( 'Show Video on Mobile Devices', 'bold-builder' ), 'group' => esc_html__( 'Video', 'bold-builder' ) )
|
272 |
+
)
|
273 |
+
) );
|
274 |
+
|
275 |
+
}
|
276 |
+
|
277 |
+
}
|
278 |
+
|
279 |
+
class BT_BB_YT_Video_Proxy {
|
280 |
+
function __construct( $prefix, $el_id ) {
|
281 |
+
$this->prefix = $prefix;
|
282 |
+
$this->el_id = $el_id;
|
283 |
+
}
|
284 |
+
public function js_init() {
|
285 |
+
// wp_register_script( 'boldthemes-script-bt-bb-section-js-init', '' );
|
286 |
+
// wp_enqueue_script( 'boldthemes-script-bt-bb-section-js-init' );
|
287 |
+
// wp_add_inline_script( 'boldthemes-script-bt-bb-section-js-init', 'jQuery(function() { jQuery( "#' . esc_html( $this->el_id ) . ' .' . esc_html( $this->prefix ) . 'background_video_yt_inner" ).YTPlayer();});' );
|
288 |
+
wp_add_inline_script( 'bt_bb_yt', 'jQuery(function() { jQuery( "#' . esc_html( $this->el_id ) . ' .' . esc_html( $this->prefix ) . 'background_video_yt_inner" ).YTPlayer();});' );
|
289 |
+
}
|
290 |
+
|
291 |
+
}
|
content_elements/bt_bb_section/jquery.mb.YTPlayer.min.css
ADDED
@@ -0,0 +1 @@
|
|
|
1 |
+
@charset "UTF-8";@font-face{font-family:ytpregular;src:url(font/ytp-regular.eot)}@font-face{font-family:ytpregular;src:url(data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAAA5sABEAAAAAFCAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAABgAAAABwAAAAcZ9iuNUdERUYAAAGcAAAAHQAAACAAdAAET1MvMgAAAbwAAABJAAAAYHUMUrFjbWFwAAACCAAAAKkAAAGKn5XycWN2dCAAAAK0AAAANgAAADYNLQohZnBnbQAAAuwAAAGxAAACZVO0L6dnYXNwAAAEoAAAAAgAAAAIAAAAEGdseWYAAASoAAAGVQAAB4jz86dSaGVhZAAACwAAAAAzAAAANgbKONpoaGVhAAALNAAAACAAAAAkESQLXGhtdHgAAAtUAAAAVAAAARxOmwVwbG9jYQAAC6gAAAAjAAAAkFoEXRRtYXhwAAALzAAAACAAAAAgAWoB625hbWUAAAvsAAAA+wAAAeok3Eb+cG9zdAAADOgAAADAAAABN99tv1lwcmVwAAANqAAAALkAAAFY3I6ikndlYmYAAA5kAAAABgAAAAbHMlGnAAAAAQAAAADMPaLPAAAAAM3Nk7QAAAAAzc13sXjaY2BkYGDgA2IJBhBgYmAEQjcgZgHzGAAHTAB5AAAAeNpjYGbZwDiBgZWBhdWY5SwDA8MsCM10liGNKQ3IB0rBASMDEgj1DvdjcGDgfcDAlvYPqJJVldEZpoZVkuUZkFJgYAQAUUULewAAAHjaY2BgYGaAYBkGRgYQaAHyGMF8FoYMIC3GIAAUYQOyeBkUGKIYqhgWKHAp6CvEP2D4/x+sAyTuyJAIFGeAizP+//r/8f/D//f+n/HA8oHo/WcKblDzsQBGoOkwSUYmIMGErgDiRLyAhZWNnYOTi5uHl49fQFBIWERUTFxCUkpaRhYiLyevoKikrKKqpq6hqaWto6unb2BoZGxiambOQF1gQZYuAIQnH4IAAAAAAAAAAAABegEnAHEAswC9AOAA5QD+ARcBIwBdAHIBtgBcAGAAZgByAI8AogErAbIAUwBEBREAAHjaXVG7TltBEN0NDwOBxNggOdoUs5mQxnuhBQnE1Y1iZDuF5QhpN3KRi3EBH0CBRA3arxmgoaRImwYhF0h8Qj4hEjNriKI0Ozuzc86ZM0vKkap36WvPU+ckkMLdBs02/U5ItbMA96Tr642MtIMHWmxm9Mp1+/4LBpvRlDtqAOU9bykPGU07gVq0p/7R/AqG+/wf8zsYtDTT9NQ6CekhBOabcUuD7xnNussP+oLV4WIwMKSYpuIuP6ZS/rc052rLsLWR0byDMxH5yTRAU2ttBJr+1CHV83EUS5DLprE2mJiy/iQTwYXJdFVTtcz42sFdsrPoYIMqzYEH2MNWeQweDg8mFNK3JMosDRH2YqvECBGTHAo55dzJ/qRA+UgSxrxJSjvjhrUGxpHXwKA2T7P/PJtNbW8dwvhZHMF3vxlLOvjIhtoYEWI7YimACURCRlX5hhrPvSwG5FL7z0CUgOXxj3+dCLTu2EQ8l7V1DjFWCHp+29zyy4q7VrnOi0J3b6pqqNIpzftezr7HA54eC8NBY8Gbz/v+SoH6PCyuNGgOBEN6N3r/orXqiKu8Fz6yJ9O/sVoAAAAAAQAB//8AD3jaTZVrbBxXFcfvufNe72Nmdx77tmfHO2N76117784OTr154YAbR7RQuUQhttoSuXZKFQVKKYqgiFJAgkpIkVClIn8opSomjXY3VHHTFldEIYpay1hR+ID4Bha27FoIEQGpd8Idu4lY7c6eOfee//2f3+zeizAaQwif4iYRgwRUbgGqjLYFNvVxtcVzfxltM5iGqMUEaS5ItwU+vTPahiBPFFMpmoo5hnv8XnjFn+Um7/xmjF1GCLHoPf+fgsUVEYcSKIcGkYbaWYxKLZ3bgGa50qpACQ0NeyYoYILaDTqpurUK2FZBUYlJY8ukEc0egLpbo+kY8O/BQcx2dvwP2Fh6/Q+Gl19fyroubHmer7rpjHllPZ/NKB+tp2/4/TzxSx0zo/74uUY29vJZOEHIfng4lzz7cjyXzn/jJwqCwCOLdj2iPSP3F/hUAHF3v+Cviee5DIqhJDLRACLoPGpHECq1M7Sd5iDZ/W6zQW8mu9Ecql7SI6xYaiOpnxCydwPNWqWJ/tSSjY1mqtqU5ZYNpWal2pJiGy0XSi1bVuKX1Fyh1GuMoJYeUeJvy/GEVbTpfTOjHJRVzUim0tlcwekbKD1QrgR5M97OV8nIyMjQsKPUEKWGNEVFFBwqEs/yHMEVFMM1PIc4FhiWQVxHcxjD0zzXEkgbmHe5G1eA9T955453xd+B9tbpi6vj10+fvj6+evH0Fju7vPDU5szVY8euzmw+tXABv7kEov/v33WOv+v/C8LG9M2xD19/EquzCyuHVuY6R25Obz35+odw4NDKwuzWHAK86q9x21wKYYQkjFeZ3M5f/TUmw6Qo12P+38Wf0zEZpVABlVANfQu1owHXXMD1AdIyQhvNgeou2b1LAuhAkVwyExRps/ppAE230qrTX1MrEVXil5W4qlm9thMAMpR2MtVHAbXMnBJvZ8oVGjdZ5XK6u6cwNExqdNJ9dnm4D+8eIeYeM7hH0b3H9bcQuczdeH75ef+TxTveO/5tuDK2Mrs5d+HmzQtzm7MrbP6ZqxMrrz2+vf34aysTV5+5iN9YhMi51W93Tiz5/wFp+ujy/MntGXx+dfrjqflrO788Ob989MaMP716+Nr8FOpCjbvnw032BUrm82gKfQc10SJaAwwZGINHEUrksaEndI3XCppBavWaU7Nrda/u7QfPsnmBF1ReK4NjCxbkgVRJdW/MdmiyjHkhCgKvGkrNq+uGngPLUDXVioJTcGxONWguENOIYmkq1lQqaDu2q1AqKi6qRh6CN0uqhlkn1WIwt1Z3FTqH6lt2kWLkqZpQ2F1H4D3X1CzFUkCp1R8EVaeKGr3mgXpyd3OKZTcgioMi3qImqA2FaFSYrkHd7BYESnSMdqAx1HNgg/6pG0Bo95RAGehqoNAuaRHR90wGdXyJtkAJ1DxSDVQCfS8ocui+EohqagNjFroniyLAOYbBgvSQxuXxiUSCGQXReJBnjafhbf6xBs8P9ZclLLJdTJfdL3bLRsgd50Nf52P7JIWjInYqFuZhUGErucF0Qj/zNJtPGArDz7EYFi0chvSpw8C/mJRgRVLfgrEf7RvowhyjJ3JPfPlX/h8N/6fZryX7bh/pJsPj4QLX9Ra89NL3QQkljmOqnognU6HcxKkoI/JsaJ8cDcfCqZAMC2cfFeSoHu+WFEmWzIQqx8PVmCThSFqPKqLIsgxJx0QYZt1iocjgfrPbjIoiltkXxzxTlE5FVTL1zb7YmTOSzXGiEBU0ZgHzXexjd9HklDtTc2P7iR4/Wmqk/jGhfZXjZW1bYFVp3y01G+ocrh/K9VST3+05OUsaEnAYGKZRfWIpDQaXT2Ej2/vCl1S5nNe7jHq5eCAlM7rOpFx8PP1Zf/NzCUdkpXjUhHmdfdi/Xv31D6WccPAIDjNMmPnBzC+ErAipZzPf++LkQyGRhTDEpCNkbmLpz8892zmE3+8swq1YODIqf2Z7lO8RdJHn7RS8kpY6r0qhAg7xXIHnhViu+zBDbhcx16UOfGVgaGkoXe6LhwS+h7NgSa+vR7ESZvPyq6VUqN+SC0ZSTPm3oETGoxGIh/p60w3naIyJ/Gywf9CMnnAemR3524hT5DErxOwBhR55COMw3e+u0T0tOEsR0JMx+NBHftD/AJ+D/f7v/TW+9t+P+Bo9e/7vNYz+By6FsKkAAAB42mNgZGBgYGRwbI8IWhzPb/OVQZ6DAQTOni3fCKP/+/x7yrOBNRTI5WBgAokCAG3mDbAAeNpjYGRgYFX9t5eBgeftf5//WTwbGIAiKMAdAJycBph42mN6w+DCwcDAAMIsZ8D0HhBNLIap52D478fBwHQRyvbBpZ7nLYMtKeZjt5OJhxT1TKsYGFhDETTjcSAG0gyPoRgozigIpL0hNEiOBcgFAEBoNC142mNgYNCBwjoccALDBEY9RhsgPIMMmZcRhHtIhkcA9pQspAAAAQAAAEcBVAALAAAAAAACAAEAAgAWAAABAACTAAAAAHjalZCxTgJBFEXPApJoYYgF9VZUSIAFTdDCnmiIgsTKsASQuGiCu0YaCr4OfomKOzsTCHRmMzPn3blz38sCFyzJ4uXOgbKWZY+8KssZLqk7zkp9cJyjSOT4jD9WjvPSt46vKHoFx2txyfGGqnfPO18kyohSGjBjJPqRFmqPmWolWkZ9o0uHZ/EkfTNgTo0KVX017ujRps+TyDqvT7xW9U/UV1Vz9ZryrQn8o8QOL1JsdVA/5IwZpv7f/YsKTW50O1PqpzKNZyw1UnKov2c9dbkD7c1/zdhXFSrNdIz3HbuaJFH1KM9CZyDN3N3SoiFupfP66mbOYAd8k0EGAHjabc05TwJhHITxZ0BBBc/P4IkI7y4sh0dBsosHKiqHeLUiiTE0FH56Xdl/6TS/ZIoZUszzM+ad/3IOSilNmm122GWPfQ4ocEiRI0qUcXj4VKgSUKNOgybHnHDKGSER7Xjjgkuu6HDNDbd0ueOeB3r0GTDkkRFPPPPCK29a0KIyympJy1pRTnmtak3r2tCmtjLjz+/ph5edfU2cc2Fiy/3px4Xpmb5ZMatmYNbMutkwm2Yr0W8nBnOj+OcXVDk0PnjaRc67DoJAEAVQFuT9fqsJCSZ2+w12QkNjrCCx9w+sbSy19DsGK/9Ob3RZujk3k7nzZp8bsbvSkXXoR8Yew9gavN9QNHSUHTFch4oMfuoV0uqGNL4nv25emq3yHzzADwVcwOsFHMCtBWzAWQlYgJ0ImIA1rRmAeRbQAWM6vQD04A9GgXglRBo4Kh+19gJGYDgzBqOnZALGO8kUTLaSGZhWkjmYrSULMA8kS7CYi5ZgKTlQxr/W1F5aAAAAAAFRp8cxAAA=)format('woff'),url(font/ytp-regular.ttf)format('truetype');font-weight:400;font-style:normal}.mb_YTPlayer:focus{outline:0}.YTPWrapper{display:block;transform:translateZ(0)translate3d(0,0,0);transform-style:preserve-3d;perspective:1000;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box}.mb_YTPlayer .loading{position:absolute;top:10px;right:10px;font-size:12px;color:#fff;background:rgba(0,0,0,.51);text-align:center;padding:2px 4px;border-radius:5px;font-family:"Droid Sans",sans-serif;-webkit-animation:fade .1s infinite alternate;animation:fade .1s infinite alternate}.YTPFullscreen,.inline_YTPlayer img{border:none!important;padding:0!important}@-webkit-keyframes fade{0%{opacity:.5}100%{opacity:1}}@keyframes fade{0%{opacity:.5}100%{opacity:1}}.YTPFullscreen{display:block!important;position:fixed!important;width:100%!important;height:100%!important;top:0!important;left:0!important;margin:0!important;opacity:1!important;background-color:#000!important}.inlinePlayButton,.inlinePlayButtonMobile{font-family:ytpregular;font-size:45px;color:#fff;text-align:center;border-radius:100%;background-color:rgba(0,0,0,.4);position:absolute;width:80px;height:80px;line-height:80px;top:0;bottom:0;left:0;right:0;margin:auto;cursor:pointer;opacity:.8;transition:all .4s;transform:scale(1.3)}.inlinePlayButtonMobile{transform:scale(1)}.mb_YTPlayer:hover .inlinePlayButton{opacity:1;transform:scale(1)}.inlinePlayButton:hover{background-color:rgba(0,0,0,1);transform:scale(1.3)!important}.mbYTP_wrapper iframe{max-width:8000px!important}.inline_YTPlayer{margin-bottom:20px;vertical-align:top;position:relative;left:0;overflow:hidden;border-radius:4px;box-shadow:0 0 5px rgba(0,0,0,.7);background:rgba(0,0,0,.5)}.inline_YTPlayer img{margin:0!important;transform:none!important}.mb_YTPBar,.mb_YTPBar .buttonBar{box-sizing:border-box;left:0;padding:5px;width:100%}.mb_YTPBar .ytpicon{font-size:20px;font-family:ytpregular}.mb_YTPBar .mb_YTPUrl.ytpicon{font-size:30px}.mb_YTPBar{transition:opacity .5s;display:block;height:10px;background:#333;position:fixed;bottom:0;text-align:left;z-index:1000;font:14px/16px sans-serif;color:#fff;opacity:.1}.mb_YTPBar.visible,.mb_YTPBar:hover{opacity:1}.mb_YTPBar .buttonBar{transition:all .5s;background:0 0;font:12px/14px san-serif;position:absolute;top:-30px;height:40px}.mb_YTPBar:hover .buttonBar{background:rgba(0,0,0,.4)}.mb_YTPBar span{display:inline-block;font:16px/20px sans-serif;position:relative;width:30px;height:25px;vertical-align:middle}.mb_YTPBar span.mb_YTPTime{width:130px}.mb_YTPBar span.mb_OnlyYT,.mb_YTPBar span.mb_YTPUrl{position:absolute;width:auto;display:block;top:6px;right:10px;cursor:pointer}.mb_YTPBar span.mb_YTPUrl img{width:60px}.mb_YTPBar span.mb_OnlyYT{left:300px;right:auto}.mb_YTPBar span.mb_OnlyYT img{width:25px}.mb_YTPBar span.mb_YTPUrl a{color:#fff}.mb_YTPBar .mb_YTPMuteUnmute,.mb_YTPBar .mb_YTPPlayPause,.mb_YTPlayer .mb_YTPBar .mb_YTPPlayPause img{cursor:pointer}.mb_YTPBar .mb_YTPProgress{height:10px;width:100%;background:#222;bottom:0;left:0}.mb_YTPBar .mb_YTPLoaded{height:10px;width:0;background:#444;left:0}.mb_YTPBar .mb_YTPseekbar{height:10px;width:0;background:#bb110e;bottom:0;left:0;box-shadow:rgba(82,82,82,.47)1px 1px 3px}.mb_YTPBar .YTPOverlay{backface-visibility:hidden;-webkit-backface-visibility:hidden;-webkit-transform-style:"flat";box-sizing:border-box}.YTPOverlay.raster{background:url(images/raster.png)}.YTPOverlay.raster.retina{background:url(images/raster@2x.png)}.YTPOverlay.raster-dot{background:url(images/raster_dot.png)}.YTPOverlay.raster-dot.retina{background:url(images/raster_dot@2x.png)}.mb_YTPBar .simpleSlider{position:relative;width:100px;height:10px;border:1px solid #fff;overflow:hidden;box-sizing:border-box;margin-right:10px;cursor:pointer!important;border-radius:3px}.mb_YTPBar.compact .simpleSlider{width:40px}.mb_YTPBar.compact span.mb_OnlyYT{left:260px}.mb_YTPBar .simpleSlider.muted{opacity:.3}.mb_YTPBar .level{position:absolute;left:0;bottom:0;background-color:#fff;box-sizing:border-box}.mb_YTPBar .level.horizontal{height:100%;width:0}.mb_YTPBar .level.vertical{height:auto;width:100%}
|
content_elements/bt_bb_section/jquery.mb.YTPlayer.min.js
ADDED
@@ -0,0 +1,9 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*jquery.mb.YTPlayer 23-01-2021
|
2 |
+
_ jquery.mb.components
|
3 |
+
_ email: matbicoc@gmail.com
|
4 |
+
_ Copyright (c) 2001-2021. Matteo Bicocchi (Pupunzi);
|
5 |
+
_ blog: http://pupunzi.open-lab.com
|
6 |
+
_ Open Lab s.r.l., Florence - Italy
|
7 |
+
*/
|
8 |
+
|
9 |
+
var ytp=ytp||{};let YTPRndSuffix=(new Date).getTime(),YTPTimerLabels={init:"YTPlayerInit_"+YTPRndSuffix,startPlaying:"YTPlayerStartPlay_"+YTPRndSuffix};function onYouTubeIframeAPIReady(){ytp.YTAPIReady||(ytp.YTAPIReady=!0,jQuery(document).trigger("YTAPIReady"))}let getYTPVideoID=function(e){let r,t;return e.indexOf("youtu.be")>0||e.indexOf("youtube.com/embed")>0?r=(t=(r=e.substr(e.lastIndexOf("/")+1,e.length)).indexOf("?list=")>0?r.substr(r.lastIndexOf("="),r.length):null)?r.substr(0,r.lastIndexOf("?")):r:e.indexOf("http")>-1?(r=e.match(/[\\?&]v=([^&#]*)/)[1],t=e.indexOf("list=")>0?e.match(/[\\?&]list=([^&#]*)/)[1]:null):t=(r=e.length>15?null:e)?null:e,{videoID:r,playlistID:t}};!function(jQuery,ytp){jQuery.mbYTPlayer={name:"jquery.mb.YTPlayer",version:"3.3.9",build:"7581",author:"Matteo Bicocchi (pupunzi)",apiKey:"",defaults:{videoURL:null,containment:"body",ratio:"auto",fadeOnStartTime:1e3,startAt:0,stopAt:0,autoPlay:!0,delayAtStart:1e3,coverImage:!1,loop:!0,addRaster:!1,mask:!1,opacity:1,quality:"hd1080",vol:50,mute:!1,showControls:!0,anchor:"center,center",showAnnotations:!1,cc_load_policy:!1,showYTLogo:!0,useOnMobile:!0,playOnlyIfVisible:!1,onScreenPercentage:30,goFullScreenOnPlay:!1,stopMovieOnBlur:!0,realFullscreen:!0,optimizeDisplay:!0,abundance:.3,gaTrack:!0,remember_last_time:!1,addFilters:!1,useNoCookie:!0,onReady:function(e){},onError:function(e,r){},onEnd:function(){}},controls:{play:"P",pause:"p",mute:"M",unmute:"A",onlyYT:"O",showSite:"R",ytLogo:"Y"},controlBar:null,locationProtocol:"https:",defaultFilters:{grayscale:{value:0,unit:"%"},hue_rotate:{value:0,unit:"deg"},invert:{value:0,unit:"%"},opacity:{value:0,unit:"%"},saturate:{value:0,unit:"%"},sepia:{value:0,unit:"%"},brightness:{value:0,unit:"%"},contrast:{value:0,unit:"%"},blur:{value:0,unit:"px"}},buildPlayer:function(options){if(ytp.YTAPIReady||void 0!==window.YT)setTimeout(function(){jQuery(document).trigger("YTAPIReady"),ytp.YTAPIReady=!0},100);else{jQuery("#YTAPI").remove();let e=jQuery("<script>").attr({src:"https://www.youtube.com/iframe_api?v="+jQuery.mbYTPlayer.version,id:"YTAPI"});jQuery("head").prepend(e)}function isIframe(){let e=!1;try{self.location.href!==top.location.href&&(e=!0)}catch(r){e=!0}return e}return this.each(function(){let YTPlayer=this,$YTPlayer=jQuery(YTPlayer);$YTPlayer.hide(),YTPlayer.loop=0,YTPlayer.state=0,YTPlayer.filters=jQuery.extend(!0,{},jQuery.mbYTPlayer.defaultFilters),YTPlayer.filtersEnabled=!0,YTPlayer.id=YTPlayer.id||"YTP_"+(new Date).getTime(),$YTPlayer.addClass("mb_YTPlayer");let property=$YTPlayer.data("property")&&"string"==typeof $YTPlayer.data("property")?eval("("+$YTPlayer.data("property")+")"):$YTPlayer.data("property");"object"!=typeof property&&(property={}),YTPlayer.opt=jQuery.extend(!0,{},jQuery.mbYTPlayer.defaults,YTPlayer.opt,options,property),YTPRndSuffix=getYTPVideoID(YTPlayer.opt.videoURL).videoID,YTPTimerLabels={init:"YTPlayerInit_"+YTPRndSuffix,startPlaying:"YTPlayerStartPlay_"+YTPRndSuffix},console.time(YTPTimerLabels.init),console.time(YTPTimerLabels.startPlaying),YTPlayer.opt.elementId=YTPlayer.id,0===YTPlayer.opt.vol&&(YTPlayer.opt.vol=1,YTPlayer.opt.mute=!0),YTPlayer.opt.loop&&"boolean"==typeof YTPlayer.opt.loop&&(YTPlayer.opt.loop=9999);let fullScreenAvailable=document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled;YTPlayer.opt.realFullscreen=!(isIframe()||!fullScreenAvailable)&&YTPlayer.opt.realFullscreen,YTPlayer.opt.showAnnotations=YTPlayer.opt.showAnnotations?"1":"3",YTPlayer.opt.cc_load_policy=YTPlayer.opt.cc_load_policy?"1":"0",YTPlayer.opt.coverImage=YTPlayer.opt.coverImage||YTPlayer.opt.backgroundImage,YTPlayer.opt.quality="hd1080",jQuery.mbBrowser.msie&&jQuery.mbBrowser.version<9&&(YTPlayer.opt.opacity=1),YTPlayer.opt.containment="self"===YTPlayer.opt.containment?$YTPlayer:jQuery(YTPlayer.opt.containment),YTPlayer.isRetina=window.retina||window.devicePixelRatio>1,YTPlayer.opt.ratio="auto"===YTPlayer.opt.ratio?16/9:YTPlayer.opt.ratio,YTPlayer.opt.ratio=eval(YTPlayer.opt.ratio);let origContainmentBackground=YTPlayer.opt.containment.css("background-image");origContainmentBackground="none"===origContainmentBackground?null:origContainmentBackground,YTPlayer.orig_containment_background=origContainmentBackground,$YTPlayer.attr("id")||$YTPlayer.attr("id","ytp_"+(new Date).getTime()),YTPlayer.playerID="iframe_"+YTPlayer.id,YTPlayer.isAlone=!1,YTPlayer.hasFocus=!0,YTPlayer.videoID=YTPlayer.opt.videoURL?getYTPVideoID(YTPlayer.opt.videoURL).videoID:!!$YTPlayer.attr("href")&&getYTPVideoID($YTPlayer.attr("href")).videoID,YTPlayer.playlistID=YTPlayer.opt.videoURL?getYTPVideoID(YTPlayer.opt.videoURL).playlistID:!!$YTPlayer.attr("href")&&getYTPVideoID($YTPlayer.attr("href")).playlistID;let start_from_last=0;if(jQuery.mbCookie.get("YTPlayer_start_from"+YTPlayer.videoID)&&(start_from_last=parseFloat(jQuery.mbCookie.get("YTPlayer_start_from"+YTPlayer.videoID))),YTPlayer.opt.remember_last_time&&start_from_last&&(YTPlayer.start_from_last=start_from_last,jQuery.mbCookie.remove("YTPlayer_start_from"+YTPlayer.videoID)),YTPlayer.isPlayer=$YTPlayer.is(YTPlayer.opt.containment),YTPlayer.isBackground=YTPlayer.opt.containment.is("body"),YTPlayer.isBackground&&ytp.backgroundIsInited)return;if(YTPlayer.isPlayer&&$YTPlayer.show(),YTPlayer.overlay=jQuery("<div/>").css({position:"absolute",top:0,left:0,width:"100%",height:"100%"}).addClass("YTPOverlay"),$YTPlayer.changeCoverImage(),YTPlayer.wrapper=jQuery("<div/>").attr("id","wrapper_"+YTPlayer.id).css({position:"absolute",zIndex:0,minWidth:"100%",minHeight:"100%",left:0,top:0,overflow:"hidden",opacity:0}).addClass("mbYTP_wrapper"),YTPlayer.isPlayer){let e=jQuery.mbBrowser.mobile?"inlinePlayButtonMobile":"inlinePlayButton";YTPlayer.inlinePlayButton=jQuery("<div/>").addClass("inlinePlayButton").html(jQuery.mbYTPlayer.controls.play),$YTPlayer.append(YTPlayer.inlinePlayButton),YTPlayer.inlinePlayButton.on("click",function(e){$YTPlayer.YTPPlay(),YTPlayer.inlinePlayButton.hide(),YTPlayer.opt.goFullScreenOnPlay&&$YTPlayer.YTPFullscreen(),e.stopPropagation()}),YTPlayer.opt.autoPlay&&YTPlayer.inlinePlayButton.hide(),YTPlayer.overlay.on("click",function(){$YTPlayer.YTPTogglePlay(),YTPlayer.opt.goFullScreenOnPlay&&$YTPlayer.YTPFullscreen()}).css({cursor:"pointer"})}let playerBox=jQuery("<div/>").attr("id",YTPlayer.playerID).addClass("playerBox");if(playerBox.css({position:"absolute",zIndex:0,width:"100%",height:"100%",top:0,left:0,overflow:"hidden",opacity:1}),YTPlayer.wrapper.append(playerBox),playerBox.after(YTPlayer.overlay),YTPlayer.isPlayer&&(YTPlayer.inlineWrapper=jQuery("<div/>").addClass("inline-YTPlayer"),YTPlayer.inlineWrapper.css({position:"relative",maxWidth:YTPlayer.opt.containment.css("width")}),YTPlayer.opt.containment.css({position:"relative",paddingBottom:"56.25%",overflow:"hidden",height:0}),YTPlayer.opt.containment.wrap(YTPlayer.inlineWrapper)),YTPlayer.opt.containment.children().not("script, style").each(function(){"static"===jQuery(this).css("position")&&jQuery(this).css("position","relative")}),YTPlayer.isBackground?(jQuery("body").css({boxSizing:"border-box"}),YTPlayer.wrapper.css({position:"fixed",top:0,left:0,zIndex:0})):"static"===YTPlayer.opt.containment.css("position")&&(YTPlayer.opt.containment.css({position:"relative"}),$YTPlayer.show()),YTPlayer.opt.containment.prepend(YTPlayer.wrapper),YTPlayer.isBackground||YTPlayer.overlay.on("mouseenter",function(){YTPlayer.controlBar&&YTPlayer.controlBar.length&&YTPlayer.controlBar.addClass("visible")}).on("mouseleave",function(){YTPlayer.controlBar&&YTPlayer.controlBar.length&&YTPlayer.controlBar.removeClass("visible")}),jQuery.mbBrowser.mobile&&!YTPlayer.opt.useOnMobile)return YTPlayer.opt.coverImage&&(YTPlayer.wrapper.css({backgroundImage:"url("+YTPlayer.opt.coverImage+")",backgroundPosition:"center center",backgroundSize:"cover",backgroundRepeat:"no-repeat",opacity:1}),YTPlayer.wrapper.css({opacity:1})),$YTPlayer;jQuery.mbBrowser.mobile&&YTPlayer.opt.autoPlay&&YTPlayer.opt.useOnMobile&&jQuery("body").one("touchstart",function(){YTPlayer.player.playVideo()}),jQuery(document).one("YTAPIReady",function(){$YTPlayer.trigger("YTAPIReady_"+YTPlayer.id),ytp.YTAPIReady=!0}),YTPlayer.isOnScreen=jQuery.mbYTPlayer.isOnScreen(YTPlayer,YTPlayer.opt.onScreenPercentage),$YTPlayer.one("YTAPIReady_"+YTPlayer.id,function(){let e=this,r=jQuery(e);e.isBackground&&ytp.backgroundIsInited||e.isInit||(e.isBackground&&(ytp.backgroundIsInited=!0),e.opt.autoPlay=void 0===e.opt.autoPlay?!!e.isBackground:e.opt.autoPlay,e.opt.vol=e.opt.vol?e.opt.vol:100,jQuery.mbYTPlayer.getDataFromAPI(e),jQuery(e).on("YTPChanged",function(t){if(e.isInit)return;e.isInit=!0;let a={modestbranding:1,autoplay:0,controls:0,showinfo:0,rel:0,enablejsapi:1,version:3,playerapiid:e.playerID,origin:"*",allowfullscreen:!0,wmode:"transparent",iv_load_policy:e.opt.showAnnotations,cc_load_policy:e.opt.cc_load_policy,playsinline:jQuery.mbBrowser.mobile&&!e.isPlayer?1:0,html5:document.createElement("video").canPlayType?1:0};new YT.Player(e.playerID,{host:e.opt.useNoCookie?"https://www.youtube-nocookie.com":"https://www.youtube.com",playerVars:a,events:{onReady:function(t){e.player=t.target,e.player.loadVideoById({videoId:e.videoID.toString(),suggestedQuality:e.opt.quality}),r.trigger("YTPlayerIsReady_"+e.id)},onStateChange:function(r){if("function"!=typeof r.target.getPlayerState)return;let t,a=r.target.getPlayerState();if(e.preventTrigger||e.isStarting)return void(e.preventTrigger=!1);switch(e.state=a,r.data===YT.PlayerState.PLAYING&&r.target.setPlaybackQuality(e.opt.quality),a){case-1:t="YTPUnstarted";break;case 0:t="YTPRealEnd";break;case 1:t="YTPPlay",e.controlBar.length&&e.controlBar.find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.pause),e.isPlayer&&e.inlinePlayButton.hide(),jQuery(document).off("mousedown.YTPstart");break;case 2:t="YTPPause",e.controlBar.length&&e.controlBar.find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.play),e.isPlayer&&e.inlinePlayButton.show();break;case 3:e.player.setPlaybackQuality(e.opt.quality),t="YTPBuffering",e.controlBar.length&&e.controlBar.find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.play);break;case 5:t="YTPCued"}let o=jQuery.Event(t);o.time=e.currentTime,jQuery(e).trigger(o)},onPlaybackQualityChange:function(r){let t=r.target.getPlaybackQuality(),a=jQuery.Event("YTPQualityChange");a.quality=t,jQuery(e).trigger(a)},onError:function(t){switch("function"==typeof e.opt.onError&&e.opt.onError(r,t),console.debug("error:",t),t.data){case 2:console.error("video ID:: "+e.videoID+": The request contains an invalid parameter value. For example, this error occurs if you specify a video ID that does not have 11 characters, or if the video ID contains invalid characters, such as exclamation points or asterisks.");break;case 5:console.error("video ID:: "+e.videoID+": The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.");break;case 100:console.error("video ID:: "+e.videoID+": The video requested was not found. This error occurs when a video has been removed (for any reason) or has been marked as private.");break;case 101:case 150:console.error("video ID:: "+e.videoID+": The video doesn't exist or The owner does not allow it to be played in embedded players.")}e.isList&&jQuery(e).YTPPlayNext()}}}),r.on("YTPlayerIsReady_"+e.id,function(){if(e.isReady)return this;e.playerEl=e.player.getIframe(),jQuery(e.playerEl).unselectable(),r.optimizeDisplay(),jQuery(window).off("resize.YTP_"+e.id).on("resize.YTP_"+e.id,function(){r.optimizeDisplay()}),jQuery(window).off("orientationchange.YTP_"+e.id).on("orientationchange.YTP_"+e.id,function(){r.optimizeDisplay()}),e.opt.remember_last_time&&jQuery(window).on("unload.YTP_"+e.id,function(){let r=e.player.getCurrentTime();jQuery.mbCookie.set("YTPlayer_start_from"+e.videoID,r,0)}),r.YTPCheckForState()})}))}),$YTPlayer.off("YTPTime.mask"),jQuery.mbYTPlayer.applyMask(YTPlayer),console.timeEnd(YTPTimerLabels.init),setTimeout(function(){ytp.YTAPIReady||"object"!=typeof window.YT||(jQuery(document).trigger("YTAPIReady"),ytp.YTAPIReady=!0,console.error("YTPlayer: More then a call to the YT API has been detected"))},YTPlayer.opt.delayAtStart)})},isOnScreen:function(e,r){r=r||10;let t=e.wrapper,a=jQuery(window).scrollTop(),o=a+jQuery(window).height(),n=t.height()*r/100,i=t.offset().top+n;return t.offset().top+(t.height()-n)<=o&&i>=a},getDataFromAPI:function(e){e.videoData=jQuery.mbStorage.get("YTPlayer_data_"+e.videoID),e.videoData?(setTimeout(function(){e.dataReceived=!0;let r=jQuery.Event("YTPChanged");r.time=e.currentTime,r.videoId=e.videoID,r.opt=e.opt,jQuery(e).trigger(r);let t=jQuery.Event("YTPData");t.prop={};for(let r in e.videoData)e.videoData.hasOwnProperty(r)&&(t.prop[r]=e.videoData[r]);jQuery(e).trigger(t)},e.opt.fadeOnStartTime),e.hasData=!0):jQuery.mbYTPlayer.apiKey?jQuery.getJSON("https://www.googleapis.com/youtube/v3/videos?id="+e.videoID+"&key="+jQuery.mbYTPlayer.apiKey+"&part=snippet",function(r){e.dataReceived=!0;let t=jQuery.Event("YTPChanged");t.time=e.currentTime,t.videoId=e.videoID,jQuery(e).trigger(t),r.items[0]?(!function(r){e.videoData={},e.videoData.id=e.videoID,e.videoData.channelTitle=r.channelTitle,e.videoData.title=r.title,e.videoData.description=r.description.length<400?r.description:r.description.substring(0,400)+" ...",e.videoData.thumb_max=r.thumbnails.maxres?r.thumbnails.maxres.url:null,e.videoData.thumb_high=r.thumbnails.high?r.thumbnails.high.url:null,e.videoData.thumb_medium=r.thumbnails.medium?r.thumbnails.medium.url:null,jQuery.mbStorage.set("YTPlayer_data_"+e.videoID,e.videoData)}(r.items[0].snippet),e.hasData=!0):(e.videoData={},e.hasData=!1);let a=jQuery.Event("YTPData");a.prop={};for(let r in e.videoData)a.prop[r]=e.videoData[r];jQuery(e).trigger(a)}).fail(function(r){console.error("YT data error:: ",r),e.hasData=!1;let t=jQuery.Event("YTPChanged");t.time=e.currentTime,t.videoId=e.videoID,jQuery(e).trigger(t)}):(setTimeout(function(){let r=jQuery.Event("YTPChanged");r.time=e.currentTime,r.videoId=e.videoID,jQuery(e).trigger(r)},10),e.videoData=null),e.opt.ratio="auto"==e.opt.ratio?16/9:e.opt.ratio,e.isPlayer&&!e.opt.autoPlay&&(e.loading=jQuery("<div/>").addClass("loading").html("Loading").hide(),jQuery(e).append(e.loading),e.loading.fadeIn())},removeStoredData:function(){jQuery.mbStorage.remove()},getVideoData:function(){return this.get(0).videoData},getVideoID:function(){return this.get(0).videoID||!1},getPlaylistID:function(){return this.get(0).playlistID||!1},setVideoQuality:function(e){let r=this.get(0),t=r.player.getCurrentTime();return jQuery(r).YTPPause(),r.opt.quality=e,r.player.setPlaybackQuality(e),r.player.seekTo(t),jQuery(r).YTPPlay(),this},getVideoQuality:function(){return this.get(0).player.getPlaybackQuality()},playlist:function(e,r,t){let a=this.get(0);return a.isList=!0,r&&(e=jQuery.shuffle(e)),a.videoID||(a.videos=e,a.videoCounter=1,a.videoLength=e.length,jQuery(a).data("property",e[0]),jQuery(a).YTPlayer()),"function"==typeof t&&jQuery(a).on("YTPChanged",function(){t(a)}),jQuery(a).on("YTPEnd",function(){jQuery(a).YTPPlayNext()}),this},playNext:function(){let e=this.get(0);return e.videoCounter++,e.videoCounter>e.videoLength&&(e.videoCounter=1),jQuery(e).YTPPlayIndex(e.videoCounter),this},playPrev:function(){let e=this.get(0);return e.videoCounter--,e.videoCounter<=0&&(e.videoCounter=e.videoLength),jQuery(e).YTPPlayIndex(e.videoCounter),this},playIndex:function(e){let r=this.get(0);r.checkForStartAt&&(clearInterval(r.checkForStartAt),clearInterval(r.getState)),r.videoCounter=e,r.videoCounter>=r.videoLength&&(r.videoCounter=r.videoLength);let t=r.videos[r.videoCounter-1];return jQuery(r).YTPChangeVideo(t),this},changeVideo:function(e){let r=this,t=r.get(0);t.opt.startAt=0,t.opt.stopAt=0,t.opt.mask=!1,t.opt.mute=!0,t.opt.autoPlay=!0,t.opt.addFilters=!1,t.opt.coverImage=!1,t.hasData=!1,t.hasChanged=!0,t.player.loopTime=void 0,e&&jQuery.extend(t.opt,e),t.videoID=getYTPVideoID(t.opt.videoURL).videoID,t.opt.loop&&"boolean"==typeof t.opt.loop&&(t.opt.loop=9999),t.wrapper.css({background:"none"}),jQuery(t.playerEl).CSSAnimate({opacity:0},t.opt.fadeOnStartTime,function(){jQuery.mbYTPlayer.getDataFromAPI(t),r.YTPGetPlayer().loadVideoById({videoId:t.videoID,suggestedQuality:t.opt.quality}),r.YTPPause(),r.optimizeDisplay(),t.checkForStartAt&&(clearInterval(t.checkForStartAt),clearInterval(t.getState)),r.YTPCheckForState()});let a=jQuery.Event("YTPChangeVideo");return a.time=t.currentTime,jQuery(t).trigger(a),jQuery.mbYTPlayer.applyMask(t),this},getPlayer:function(){let e=this.get(0);return e.isReady?e.player:null},playerDestroy:function(){let e=this.get(0);return e.isReady?(ytp.YTAPIReady=!0,ytp.backgroundIsInited=!1,e.isInit=!1,e.videoID=null,e.isReady=!1,e.wrapper.remove(),jQuery("#controlBar_"+e.id).remove(),clearInterval(e.checkForStartAt),clearInterval(e.getState),this):this},fullscreen:function(real){let YTPlayer=this.get(0);void 0===real&&(real=eval(YTPlayer.opt.realFullscreen));let controls=jQuery("#controlBar_"+YTPlayer.id),fullScreenBtn=controls.find(".mb_OnlyYT"),videoWrapper=YTPlayer.isPlayer?YTPlayer.opt.containment:YTPlayer.wrapper;if(real){let e=jQuery.mbBrowser.mozilla?"mozfullscreenchange":jQuery.mbBrowser.webkit?"webkitfullscreenchange":"fullscreenchange";jQuery(document).off(e).on(e,function(){RunPrefixMethod(document,"IsFullScreen")||RunPrefixMethod(document,"FullScreen")?jQuery(YTPlayer).trigger("YTPFullScreenStart"):(YTPlayer.isAlone=!1,fullScreenBtn.html(jQuery.mbYTPlayer.controls.onlyYT),jQuery(YTPlayer).YTPSetVideoQuality(YTPlayer.opt.quality),videoWrapper.removeClass("YTPFullscreen"),videoWrapper.CSSAnimate({opacity:YTPlayer.opt.opacity},YTPlayer.opt.fadeOnStartTime),videoWrapper.css({zIndex:0}),YTPlayer.isBackground?jQuery("body").after(controls):YTPlayer.wrapper.before(controls),jQuery(window).resize(),jQuery(YTPlayer).trigger("YTPFullScreenEnd"))})}if(YTPlayer.isAlone)jQuery(document).off("mousemove.YTPlayer"),clearTimeout(YTPlayer.hideCursor),YTPlayer.overlay.css({cursor:"auto"}),real?cancelFullscreen():(videoWrapper.CSSAnimate({opacity:YTPlayer.opt.opacity},YTPlayer.opt.fadeOnStartTime),videoWrapper.css({zIndex:0})),fullScreenBtn.html(jQuery.mbYTPlayer.controls.onlyYT),YTPlayer.isAlone=!1;else{function hideMouse(){YTPlayer.overlay.css({cursor:"none"})}jQuery(document).on("mousemove.YTPlayer",function(e){YTPlayer.overlay.css({cursor:"auto"}),clearTimeout(YTPlayer.hideCursor),jQuery(e.target).parents().is(".mb_YTPBar")||(YTPlayer.hideCursor=setTimeout(hideMouse,3e3))}),hideMouse(),real?(videoWrapper.css({opacity:0}),videoWrapper.addClass("YTPFullscreen"),launchFullscreen(videoWrapper.get(0)),setTimeout(function(){videoWrapper.CSSAnimate({opacity:1},2*YTPlayer.opt.fadeOnStartTime),videoWrapper.append(controls),jQuery(YTPlayer).optimizeDisplay(),YTPlayer.player.seekTo(YTPlayer.player.getCurrentTime()+.1,!0)},YTPlayer.opt.fadeOnStartTime)):videoWrapper.css({zIndex:1e4}).CSSAnimate({opacity:1},2*YTPlayer.opt.fadeOnStartTime),fullScreenBtn.html(jQuery.mbYTPlayer.controls.showSite),YTPlayer.isAlone=!0}function RunPrefixMethod(e,r){let t,a,o=["webkit","moz","ms","o",""],n=0;for(;n<o.length&&!e[t];){if(t=r,""===o[n]&&(t=t.substr(0,1).toLowerCase()+t.substr(1)),"undefined"!=(a=typeof e[t=o[n]+t]))return o=[o[n]],"function"==a?e[t]():e[t];n++}}function launchFullscreen(e){RunPrefixMethod(e,"RequestFullScreen")}function cancelFullscreen(){(RunPrefixMethod(document,"FullScreen")||RunPrefixMethod(document,"IsFullScreen"))&&RunPrefixMethod(document,"CancelFullScreen")}return this},toggleLoops:function(){let e=this.get(0),r=e.opt;return 1==r.loop?r.loop=0:(r.startAt?e.player.seekTo(r.startAt):e.player.playVideo(),r.loop=1),this},play:function(){let e=this.get(0),r=jQuery(e);return e.isReady?(setTimeout(function(){r.YTPSetAbundance(e.opt.abundance)},300),e.player.playVideo(),jQuery(e.playerEl).css({opacity:1}),e.wrapper.css({backgroundImage:"none"}),e.wrapper.CSSAnimate({opacity:e.isAlone?1:e.opt.opacity},e.opt.fadeOnStartTime),jQuery("#controlBar_"+e.id).find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.pause),e.state=1,this):this},togglePlay:function(e){let r=this.get(0);return r.isReady?(1===r.state?this.YTPPause():this.YTPPlay(),"function"==typeof e&&e(r.state),this):this},stop:function(){let e=this.get(0);return e.isReady?(jQuery("#controlBar_"+e.id).find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.play),e.player.stopVideo(),this):this},pause:function(){let e=this.get(0);return e.isReady?(e.opt.abundance<.2&&this.YTPSetAbundance(.2),e.player.pauseVideo(),e.state=2,this):this},seekTo:function(e){let r=this.get(0);return r.isReady?(r.player.seekTo(e,!0),this):this},getPlaybackRate:function(){let e=this.get(0);return e.isReady?e.player.getPlaybackRate():this},setPlaybackRate:function(e){let r=this.get(0);return r.isReady?(r.player.setPlaybackRate(e),this):this},setVolume:function(e){let r=this.get(0);return r.isReady?(r.opt.vol=e,this.YTPUnmute(),r.player.setVolume(r.opt.vol),r.volumeBar&&r.volumeBar.length&&r.volumeBar.updateSliderVal(e),this):this},getVolume:function(){let e=this.get(0);return e.isReady?e.player.getVolume():this},toggleVolume:function(){let e=this.get(0);return e.isReady?(e.isMute?(jQuery.mbBrowser.mobile||this.YTPSetVolume(e.opt.vol),this.YTPUnmute()):this.YTPMute(),this):this},mute:function(){let e=this.get(0);if(!e.isReady)return this;if(e.isMute)return this;e.player.mute(),e.isMute=!0,e.player.setVolume(0),e.volumeBar&&e.volumeBar.length&&e.volumeBar.width()>10&&e.volumeBar.updateSliderVal(0),jQuery("#controlBar_"+e.id).find(".mb_YTPMuteUnmute").html(jQuery.mbYTPlayer.controls.unmute),jQuery(e).addClass("isMuted"),e.volumeBar&&e.volumeBar.length&&e.volumeBar.addClass("muted");let r=jQuery.Event("YTPMuted");return r.time=e.currentTime,e.preventTrigger||jQuery(e).trigger(r),this},unmute:function(){let e=this.get(0);if(!e.isReady)return this;if(!e.isMute)return this;e.player.unMute(),e.isMute=!1,jQuery(e).YTPSetVolume(e.opt.vol),e.volumeBar&&e.volumeBar.length&&e.volumeBar.updateSliderVal(e.opt.vol>10?e.opt.vol:10),jQuery("#controlBar_"+e.id).find(".mb_YTPMuteUnmute").html(jQuery.mbYTPlayer.controls.mute),jQuery(e).removeClass("isMuted"),e.volumeBar&&e.volumeBar.length&&e.volumeBar.removeClass("muted");let r=jQuery.Event("YTPUnmuted");return r.time=e.currentTime,e.preventTrigger||jQuery(e).trigger(r),this},applyFilter:function(e,r){let t=this.get(0);if(!t.isReady)return this;t.filters[e].value=r,t.filtersEnabled&&this.YTPEnableFilters()},applyFilters:function(e){let r=this,t=r.get(0);if(!t.isReady)return jQuery(t).on("YTPReady",function(){r.YTPApplyFilters(e)}),this;for(let t in e)r.YTPApplyFilter(t,e[t]);r.trigger("YTPFiltersApplied")},toggleFilter:function(e,r){let t=this.get(0);return t.isReady?(t.filters[e].value?t.filters[e].value=0:t.filters[e].value=r,t.filtersEnabled&&jQuery(t).YTPEnableFilters(),this):this},toggleFilters:function(e){let r=this.get(0);return r.isReady?(r.filtersEnabled?(jQuery(r).trigger("YTPDisableFilters"),jQuery(r).YTPDisableFilters()):(jQuery(r).YTPEnableFilters(),jQuery(r).trigger("YTPEnableFilters")),"function"==typeof e&&e(r.filtersEnabled),this):this},disableFilters:function(){let e=this.get(0);if(!e.isReady)return this;let r=jQuery(e.playerEl);return r.css("-webkit-filter",""),r.css("filter",""),e.filtersEnabled=!1,this},enableFilters:function(){let e=this.get(0);if(!e.isReady)return this;let r=jQuery(e.playerEl),t="";for(let r in e.filters)e.filters[r].value&&(t+=r.replace("_","-")+"("+e.filters[r].value+e.filters[r].unit+") ");return r.css("-webkit-filter",t),r.css("filter",t),e.filtersEnabled=!0,this},removeFilter:function(e,r){let t=this,a=t.get(0);if(!a.isReady)return this;if("function"==typeof e&&(r=e,e=null),e)t.YTPApplyFilter(e,0),"function"==typeof r&&r(e);else{for(let e in a.filters)a.filters.hasOwnProperty(e)&&(t.YTPApplyFilter(e,0),"function"==typeof r&&r(e));a.filters=jQuery.extend(!0,{},jQuery.mbYTPlayer.defaultFilters)}let o=jQuery.Event("YTPFiltersApplied");return t.trigger(o),this},getFilters:function(){let e=this.get(0);return e.isReady?e.filters:this},addMask:function(e){let r=this.get(0);e||(e=r.actualMask);let t=jQuery("<img/>").attr("src",e).on("load",function(){r.overlay.CSSAnimate({opacity:0},r.opt.fadeOnStartTime,function(){r.hasMask=!0,t.remove(),r.overlay.css({backgroundImage:"url("+e+")",backgroundRepeat:"no-repeat",backgroundPosition:"center center",backgroundSize:"cover"}),r.overlay.CSSAnimate({opacity:1},r.opt.fadeOnStartTime)})});return this},removeMask:function(){let e=this.get(0);return e.overlay.CSSAnimate({opacity:0},e.opt.fadeOnStartTime,function(){e.hasMask=!1,e.overlay.css({backgroundImage:"",backgroundRepeat:"",backgroundPosition:"",backgroundSize:""}),e.overlay.CSSAnimate({opacity:1},e.opt.fadeOnStartTime)}),this},applyMask:function(e){let r=jQuery(e);if(r.off("YTPTime.mask"),e.opt.mask)if("string"==typeof e.opt.mask)r.YTPAddMask(e.opt.mask),e.actualMask=e.opt.mask;else if("object"==typeof e.opt.mask){for(let r in e.opt.mask)e.opt.mask[r]&&(img=jQuery("<img/>").attr("src",e.opt.mask[r]));e.opt.mask[0]&&r.YTPAddMask(e.opt.mask[0]),r.on("YTPTime.mask",function(t){for(let a in e.opt.mask)t.time===a&&(e.opt.mask[a]?(r.YTPAddMask(e.opt.mask[a]),e.actualMask=e.opt.mask[a]):r.YTPRemoveMask())})}},toggleMask:function(){let e=this.get(0),r=jQuery(e);return e.hasMask?r.YTPRemoveMask():r.YTPAddMask(),this},manageProgress:function(){let e=this.get(0),r=jQuery("#controlBar_"+e.id),t=r.find(".mb_YTPProgress"),a=r.find(".mb_YTPLoaded"),o=r.find(".mb_YTPseekbar"),n=t.outerWidth(),i=Math.floor(e.player.getCurrentTime()),l=Math.floor(e.player.getDuration()),s=i*n/l,u=100*e.player.getVideoLoadedFraction();return a.css({left:0,width:u+"%"}),o.css({left:0,width:s}),{totalTime:l,currentTime:i}},buildControls:function(YTPlayer){if(jQuery("#controlBar_"+YTPlayer.id).remove(),!YTPlayer.opt.showControls)return void(YTPlayer.controlBar=!1);if(YTPlayer.opt.showYTLogo=YTPlayer.opt.showYTLogo||YTPlayer.opt.printUrl,jQuery("#controlBar_"+YTPlayer.id).length)return;YTPlayer.controlBar=jQuery("<div/>").attr("id","controlBar_"+YTPlayer.id).addClass("mb_YTPBar").css({whiteSpace:"noWrap",position:YTPlayer.isBackground?"fixed":"absolute",zIndex:YTPlayer.isBackground?1e4:1e3}).hide().on("click",function(e){e.stopPropagation()});let buttonBar=jQuery("<div/>").addClass("buttonBar"),playpause=jQuery("<span>"+jQuery.mbYTPlayer.controls.play+"</span>").addClass("mb_YTPPlayPause ytpicon").on("click",function(e){e.stopPropagation(),jQuery(YTPlayer).YTPTogglePlay()}),MuteUnmute=jQuery("<span>"+jQuery.mbYTPlayer.controls.mute+"</span>").addClass("mb_YTPMuteUnmute ytpicon").on("click",function(e){e.stopPropagation(),jQuery(YTPlayer).YTPToggleVolume()}),volumeBar=jQuery("<div/>").addClass("mb_YTPVolumeBar").css({display:"inline-block"});YTPlayer.volumeBar=volumeBar;let idx=jQuery("<span/>").addClass("mb_YTPTime"),vURL=YTPlayer.opt.videoURL?YTPlayer.opt.videoURL:"";vURL.indexOf("http")<0&&(vURL="https://www.youtube.com/watch?v="+YTPlayer.opt.videoURL);let movieUrl=jQuery("<span/>").html(jQuery.mbYTPlayer.controls.ytLogo).addClass("mb_YTPUrl ytpicon").attr("title","view on YouTube").on("click",function(){window.open(vURL,"viewOnYT")}),onlyVideo=jQuery("<span/>").html(jQuery.mbYTPlayer.controls.onlyYT).addClass("mb_OnlyYT ytpicon").on("click",function(e){e.stopPropagation(),jQuery(YTPlayer).YTPFullscreen(YTPlayer.opt.realFullscreen)}),progressBar=jQuery("<div/>").addClass("mb_YTPProgress").css("position","absolute").on("click",function(e){e.stopPropagation(),timeBar.css({width:e.clientX-timeBar.offset().left}),YTPlayer.timeW=e.clientX-timeBar.offset().left,YTPlayer.controlBar.find(".mb_YTPLoaded").css({width:0});let r=Math.floor(YTPlayer.player.getDuration());YTPlayer.goto=timeBar.outerWidth()*r/progressBar.outerWidth(),YTPlayer.player.seekTo(parseFloat(YTPlayer.goto),!0),YTPlayer.controlBar.find(".mb_YTPLoaded").css({width:0})}),loadedBar=jQuery("<div/>").addClass("mb_YTPLoaded").css("position","absolute"),timeBar=jQuery("<div/>").addClass("mb_YTPseekbar").css("position","absolute");progressBar.append(loadedBar).append(timeBar),buttonBar.append(playpause).append(MuteUnmute).append(volumeBar).append(idx),YTPlayer.opt.showYTLogo&&buttonBar.append(movieUrl),(YTPlayer.isBackground||eval(YTPlayer.opt.realFullscreen)&&!YTPlayer.isBackground)&&buttonBar.append(onlyVideo),YTPlayer.controlBar.append(buttonBar).append(progressBar),YTPlayer.isBackground?jQuery("body").after(YTPlayer.controlBar):(YTPlayer.controlBar.addClass("inlinePlayer"),YTPlayer.wrapper.before(YTPlayer.controlBar)),volumeBar.simpleSlider({initialval:YTPlayer.opt.vol,scale:100,orientation:"h",callback:function(e){0==e.value?jQuery(YTPlayer).YTPMute():jQuery(YTPlayer).YTPUnmute(),YTPlayer.player.setVolume(e.value),YTPlayer.isMute||(YTPlayer.opt.vol=e.value)}})},changeCoverImage:function(e){let r=this.get(0);if(r.opt.coverImage||r.orig_containment_background){let t=e||(r.opt.coverImage?"url("+r.opt.coverImage+") center center":r.orig_containment_background);t&&r.opt.containment.css({background:t,backgroundSize:"cover",backgroundRepeat:"no-repeat",backgroundAttachment:"fixed"})}return this},checkForState:function(){let YTPlayer=this.get(0),$YTPlayer=jQuery(YTPlayer);clearInterval(YTPlayer.getState);let interval=100;if(!jQuery.contains(document,YTPlayer))return $YTPlayer.YTPPlayerDestroy(),clearInterval(YTPlayer.getState),void clearInterval(YTPlayer.checkForStartAt);jQuery.mbYTPlayer.checkForStart(YTPlayer),YTPlayer.getState=setInterval(function(){let $YTPlayer=jQuery(YTPlayer);if(!YTPlayer.isReady)return;let prog=jQuery(YTPlayer).YTPManageProgress(),stopAt=YTPlayer.opt.stopAt>YTPlayer.opt.startAt?YTPlayer.opt.stopAt:0;if(stopAt=stopAt<YTPlayer.player.getDuration()?stopAt:0,YTPlayer.currentTime!=prog.currentTime){let e=jQuery.Event("YTPTime");e.time=YTPlayer.currentTime,jQuery(YTPlayer).trigger(e)}if(YTPlayer.currentTime=prog.currentTime,YTPlayer.totalTime=YTPlayer.player.getDuration(),0==YTPlayer.player.getVolume()?$YTPlayer.addClass("isMuted"):$YTPlayer.removeClass("isMuted"),YTPlayer.opt.showControls&&(prog.totalTime?YTPlayer.controlBar.find(".mb_YTPTime").html(jQuery.mbYTPlayer.formatTime(prog.currentTime)+" / "+jQuery.mbYTPlayer.formatTime(prog.totalTime)):YTPlayer.controlBar.find(".mb_YTPTime").html("-- : -- / -- : --")),eval(YTPlayer.opt.stopMovieOnBlur)&&(document.hasFocus()?document.hasFocus()&&!YTPlayer.hasFocus&&-1!=YTPlayer.state&&0!=YTPlayer.state&&(YTPlayer.hasFocus=!0,YTPlayer.preventTrigger=!0,$YTPlayer.YTPPlay()):1==YTPlayer.state&&(YTPlayer.hasFocus=!1,YTPlayer.preventTrigger=!0,$YTPlayer.YTPPause())),YTPlayer.opt.playOnlyIfVisible){let e=jQuery.mbYTPlayer.isOnScreen(YTPlayer,YTPlayer.opt.onScreenPercentage);e||1!=YTPlayer.state?e&&!YTPlayer.isOnScreen&&(YTPlayer.isOnScreen=!0,YTPlayer.player.playVideo()):(YTPlayer.isOnScreen=!1,$YTPlayer.YTPPause())}if(YTPlayer.controlBar.length&&YTPlayer.controlBar.outerWidth()<=400&&!YTPlayer.isCompact?(YTPlayer.controlBar.addClass("compact"),YTPlayer.isCompact=!0,!YTPlayer.isMute&&YTPlayer.volumeBar&&YTPlayer.volumeBar.updateSliderVal(YTPlayer.opt.vol)):YTPlayer.controlBar.length&&YTPlayer.controlBar.outerWidth()>400&&YTPlayer.isCompact&&(YTPlayer.controlBar.removeClass("compact"),YTPlayer.isCompact=!1,!YTPlayer.isMute&&YTPlayer.volumeBar&&YTPlayer.volumeBar.updateSliderVal(YTPlayer.opt.vol)),YTPlayer.player.getPlayerState()>0&&(parseFloat(YTPlayer.player.getDuration()-YTPlayer.opt.fadeOnStartTime/1e3)<YTPlayer.player.getCurrentTime()||stopAt>0&&parseFloat(YTPlayer.player.getCurrentTime())>=stopAt)){if(YTPlayer.isEnded)return;if(YTPlayer.isEnded=!0,setTimeout(function(){YTPlayer.isEnded=!1},1e3),YTPlayer.isList){if(!YTPlayer.opt.loop||YTPlayer.opt.loop>0&&YTPlayer.player.loopTime===YTPlayer.opt.loop-1){YTPlayer.player.loopTime=void 0,clearInterval(YTPlayer.getState);let e=jQuery.Event("YTPEnd");return e.time=YTPlayer.currentTime,void jQuery(YTPlayer).trigger(e)}}else if(!YTPlayer.opt.loop||YTPlayer.opt.loop>0&&YTPlayer.player.loopTime===YTPlayer.opt.loop-1)return YTPlayer.player.loopTime=void 0,YTPlayer.state=2,$YTPlayer.changeCoverImage(YTPlayer),jQuery(YTPlayer).YTPPause(),void YTPlayer.wrapper.CSSAnimate({opacity:0},YTPlayer.opt.fadeOnStartTime,function(){YTPlayer.controlBar.length&&YTPlayer.controlBar.find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.play),$YTPlayer.changeCoverImage();let e=jQuery.Event("YTPEnd");e.time=YTPlayer.currentTime,jQuery(YTPlayer).trigger(e),YTPlayer.player.seekTo(YTPlayer.opt.startAt,!0)});YTPlayer.player.loopTime=YTPlayer.player.loopTime?++YTPlayer.player.loopTime:1,YTPlayer.opt.startAt=YTPlayer.opt.startAt||1,YTPlayer.preventTrigger=!0,YTPlayer.state=2,YTPlayer.player.seekTo(YTPlayer.opt.startAt,!0)}},interval)},checkForStart:function(YTPlayer){let $YTPlayer=jQuery(YTPlayer);if(!jQuery.contains(document,YTPlayer))return void $YTPlayer.YTPPlayerDestroy();if(jQuery.mbYTPlayer.buildControls(YTPlayer),YTPlayer.overlay)if(YTPlayer.opt.addRaster){let e="dot"==YTPlayer.opt.addRaster?"raster-dot":"raster";YTPlayer.overlay.addClass(YTPlayer.isRetina?e+" retina":e)}else YTPlayer.overlay.removeClass(function(e,r){let t=r.split(" "),a=[];return jQuery.each(t,function(e,r){/raster.*/.test(r)&&a.push(r)}),a.push("retina"),a.join(" ")});YTPlayer.preventTrigger=!0,YTPlayer.state=2,YTPlayer.preventTrigger=!0,YTPlayer.player.mute(),YTPlayer.player.playVideo(),YTPlayer.isStarting=!0;let startAt=YTPlayer.start_from_last?YTPlayer.start_from_last:YTPlayer.opt.startAt?YTPlayer.opt.startAt:1;return YTPlayer.preventTrigger=!0,YTPlayer.checkForStartAt=setInterval(function(){YTPlayer.player.mute(),YTPlayer.player.seekTo(startAt,!0);let canPlayVideo=YTPlayer.player.getVideoLoadedFraction()>=startAt/YTPlayer.player.getDuration();if(jQuery.mbBrowser.mobile&&(canPlayVideo=!0),YTPlayer.player.getDuration()>0&&YTPlayer.player.getCurrentTime()>=startAt&&canPlayVideo){YTPlayer.start_from_last=null,YTPlayer.preventTrigger=!0,$YTPlayer.YTPPause(),clearInterval(YTPlayer.checkForStartAt),"function"==typeof YTPlayer.opt.onReady&&YTPlayer.opt.onReady(YTPlayer),YTPlayer.isReady=!0,$YTPlayer.YTPRemoveFilter(),YTPlayer.opt.addFilters?$YTPlayer.YTPApplyFilters(YTPlayer.opt.addFilters):$YTPlayer.YTPApplyFilters(),$YTPlayer.YTPEnableFilters();let YTPready=jQuery.Event("YTPReady");if(YTPready.time=YTPlayer.currentTime,$YTPlayer.trigger(YTPready),YTPlayer.state=2,YTPlayer.opt.mute?$YTPlayer.YTPMute():YTPlayer.opt.autoPlay?(console.debug("We muted the audio to make the video 'auto-play' according with the latest vendor policy. The audio will unmute at the first user interaction with the page"),YTPlayer.player.mute(),YTPlayer.forcedMuted=!0,jQuery(document).on("mousedown.YTPstartAudio",function(){YTPlayer.forcedMuted&&(console.debug("AAAAAAA"),YTPlayer.player.unMute(),YTPlayer.forcedMuted=!1,jQuery(document).off("mousedown.YTPstartAudio"))}),jQuery(window).on("scroll",function(){console.debug("AAAAA")})):YTPlayer.player.unMute(),"undefined"!=typeof _gaq&&eval(YTPlayer.opt.gaTrack)?_gaq.push(["_trackEvent","YTPlayer","Play",YTPlayer.hasData?YTPlayer.videoData.title:YTPlayer.videoID.toString()]):"undefined"!=typeof ga&&eval(YTPlayer.opt.gaTrack)&&ga("send","event","YTPlayer","play",YTPlayer.hasData?YTPlayer.videoData.title:YTPlayer.videoID.toString()),YTPlayer.opt.autoPlay){let e=jQuery.Event("YTPStart");e.time=YTPlayer.currentTime,jQuery(YTPlayer).trigger(e),YTPlayer.isStarting=!1,"mac"===jQuery.mbBrowser.os.name&&jQuery.mbBrowser.safari&&jQuery("body").one("mousedown.YTPstart",function(){$YTPlayer.YTPPlay()}),$YTPlayer.YTPPlay(),console.timeEnd(YTPTimerLabels.startPlaying)}else YTPlayer.preventTrigger=!0,$YTPlayer.YTPPause(),YTPlayer.start_from_last&&YTPlayer.player.seekTo(startAt,!0),setTimeout(function(){YTPlayer.preventTrigger=!0,$YTPlayer.YTPPause(),YTPlayer.isPlayer||(YTPlayer.opt.coverImage?(YTPlayer.wrapper.css({opacity:0}),setTimeout(function(){$YTPlayer.changeCoverImage()},YTPlayer.opt.fadeOnStartTime)):(jQuery(YTPlayer.playerEl).CSSAnimate({opacity:1},YTPlayer.opt.fadeOnStartTime),YTPlayer.wrapper.CSSAnimate({opacity:YTPlayer.isAlone?1:YTPlayer.opt.opacity},YTPlayer.opt.fadeOnStartTime))),YTPlayer.isStarting=!1},500),YTPlayer.controlBar.length&&YTPlayer.controlBar.find(".mb_YTPPlayPause").html(jQuery.mbYTPlayer.controls.play);YTPlayer.isPlayer&&!YTPlayer.opt.autoPlay&&YTPlayer.loading&&YTPlayer.loading.length&&(YTPlayer.loading.html("Ready"),setTimeout(function(){YTPlayer.loading.fadeOut()},100)),YTPlayer.controlBar&&YTPlayer.controlBar.length&&YTPlayer.controlBar.slideDown(1e3)}"mac"===jQuery.mbBrowser.os.name&&jQuery.mbBrowser.safari&&(YTPlayer.player.playVideo(),startAt>=0&&YTPlayer.player.seekTo(startAt,!0))},100),$YTPlayer},getTime:function(){let e=this.get(0);return jQuery.mbYTPlayer.formatTime(e.currentTime)},getTotalTime:function(){let e=this.get(0);return jQuery.mbYTPlayer.formatTime(e.totalTime)},formatTime:function(e){let r=Math.floor(e/60),t=Math.floor(e-60*r);return(r<=9?"0"+r:r)+" : "+(t<=9?"0"+t:t)},setAnchor:function(e){this.optimizeDisplay(e)},getAnchor:function(){return this.get(0).opt.anchor},setAbundance:function(e,r){let t=this.get(0);return r&&(t.opt.abundance=e),this.optimizeDisplay(t.opt.anchor,e),this},getAbundance:function(){return this.get(0).opt.abundance},setOption:function(e,r){return this.get(0).opt[e]=r,this}},jQuery.fn.optimizeDisplay=function(anchor,abundanceX){let YTPlayer=this.get(0),vid={},el=YTPlayer.wrapper,iframe=jQuery(YTPlayer.playerEl);YTPlayer.opt.anchor=anchor||YTPlayer.opt.anchor,YTPlayer.opt.anchor="undefined "!=typeof YTPlayer.opt.anchor?YTPlayer.opt.anchor:"center,center";let YTPAlign=YTPlayer.opt.anchor.split(","),ab=abundanceX||YTPlayer.opt.abundance;if(YTPlayer.opt.optimizeDisplay){let abundance=el.height()*ab,win={};win.width=el.outerWidth(),win.height=el.outerHeight()+abundance,YTPlayer.opt.ratio="auto"===YTPlayer.opt.ratio?16/9:YTPlayer.opt.ratio,YTPlayer.opt.ratio=eval(YTPlayer.opt.ratio),vid.width=win.width+abundance,vid.height=Math.ceil(vid.width/YTPlayer.opt.ratio),vid.marginTop=Math.ceil(-(vid.height-win.height+abundance)/2),vid.marginLeft=-abundance/2;let lowest=vid.height<win.height;lowest&&(vid.height=win.height+abundance,vid.width=Math.ceil(vid.height*YTPlayer.opt.ratio),vid.marginTop=-abundance/2,vid.marginLeft=Math.ceil(-(vid.width-win.width)/2));for(let e in YTPAlign)if(YTPAlign.hasOwnProperty(e)){let r=YTPAlign[e].replace(/ /g,"");switch(r){case"top":vid.marginTop=-abundance;break;case"bottom":vid.marginTop=Math.ceil(-(vid.height-win.height)-abundance/2);break;case"left":vid.marginLeft=-abundance;break;case"right":vid.marginLeft=Math.ceil(-(vid.width-win.width)+abundance/2)}}}else vid.width="100%",vid.height="100%",vid.marginTop=0,vid.marginLeft=0;iframe.css({width:vid.width,height:vid.height,marginTop:vid.marginTop,marginLeft:vid.marginLeft,maxWidth:"initial"})},jQuery.shuffle=function(e){let r=e.slice(),t=r.length,a=t;for(;a--;){let e=parseInt(Math.random()*t),o=r[a];r[a]=r[e],r[e]=o}return r},jQuery.fn.unselectable=function(){return this.each(function(){jQuery(this).css({"-moz-user-select":"none","-webkit-user-select":"none","user-select":"none"}).attr("unselectable","on")})},jQuery.fn.YTPlayer=jQuery.mbYTPlayer.buildPlayer,jQuery.fn.mb_YTPlayer=jQuery.mbYTPlayer.buildPlayer,jQuery.fn.YTPCheckForState=jQuery.mbYTPlayer.checkForState,jQuery.fn.YTPGetPlayer=jQuery.mbYTPlayer.getPlayer,jQuery.fn.YTPGetVideoID=jQuery.mbYTPlayer.getVideoID,jQuery.fn.YTPGetPlaylistID=jQuery.mbYTPlayer.getPlaylistID,jQuery.fn.YTPChangeVideo=jQuery.fn.YTPChangeMovie=jQuery.mbYTPlayer.changeVideo,jQuery.fn.YTPPlayerDestroy=jQuery.mbYTPlayer.playerDestroy,jQuery.fn.YTPPlay=jQuery.mbYTPlayer.play,jQuery.fn.YTPTogglePlay=jQuery.mbYTPlayer.togglePlay,jQuery.fn.YTPStop=jQuery.mbYTPlayer.stop,jQuery.fn.YTPPause=jQuery.mbYTPlayer.pause,jQuery.fn.YTPSeekTo=jQuery.mbYTPlayer.seekTo,jQuery.fn.YTPGetPlaybackRate=jQuery.mbYTPlayer.getPlaybackRate,jQuery.fn.YTPSetPlaybackRate=jQuery.mbYTPlayer.setPlaybackRate,jQuery.fn.changeCoverImage=jQuery.mbYTPlayer.changeCoverImage,jQuery.fn.YTPlaylist=jQuery.mbYTPlayer.playlist,jQuery.fn.YTPPlayNext=jQuery.mbYTPlayer.playNext,jQuery.fn.YTPPlayPrev=jQuery.mbYTPlayer.playPrev,jQuery.fn.YTPPlayIndex=jQuery.mbYTPlayer.playIndex,jQuery.fn.YTPMute=jQuery.mbYTPlayer.mute,jQuery.fn.YTPUnmute=jQuery.mbYTPlayer.unmute,jQuery.fn.YTPToggleVolume=jQuery.mbYTPlayer.toggleVolume,jQuery.fn.YTPSetVolume=jQuery.mbYTPlayer.setVolume,jQuery.fn.YTPGetVolume=jQuery.mbYTPlayer.getVolume,jQuery.fn.YTPGetVideoData=jQuery.mbYTPlayer.getVideoData,jQuery.fn.YTPFullscreen=jQuery.mbYTPlayer.fullscreen,jQuery.fn.YTPToggleLoops=jQuery.mbYTPlayer.toggleLoops,jQuery.fn.YTPManageProgress=jQuery.mbYTPlayer.manageProgress,jQuery.fn.YTPSetVideoQuality=jQuery.mbYTPlayer.setVideoQuality,jQuery.fn.YTPGetVideoQuality=jQuery.mbYTPlayer.getVideoQuality,jQuery.fn.YTPApplyFilter=jQuery.mbYTPlayer.applyFilter,jQuery.fn.YTPApplyFilters=jQuery.mbYTPlayer.applyFilters,jQuery.fn.YTPToggleFilter=jQuery.mbYTPlayer.toggleFilter,jQuery.fn.YTPToggleFilters=jQuery.mbYTPlayer.toggleFilters,jQuery.fn.YTPRemoveFilter=jQuery.mbYTPlayer.removeFilter,jQuery.fn.YTPDisableFilters=jQuery.mbYTPlayer.disableFilters,jQuery.fn.YTPEnableFilters=jQuery.mbYTPlayer.enableFilters,jQuery.fn.YTPGetFilters=jQuery.mbYTPlayer.getFilters,jQuery.fn.YTPGetTime=jQuery.mbYTPlayer.getTime,jQuery.fn.YTPGetTotalTime=jQuery.mbYTPlayer.getTotalTime,jQuery.fn.YTPAddMask=jQuery.mbYTPlayer.addMask,jQuery.fn.YTPRemoveMask=jQuery.mbYTPlayer.removeMask,jQuery.fn.YTPToggleMask=jQuery.mbYTPlayer.toggleMask,jQuery.fn.YTPGetAbundance=jQuery.mbYTPlayer.getAbundance,jQuery.fn.YTPSetAbundance=jQuery.mbYTPlayer.setAbundance,jQuery.fn.YTPSetAnchor=jQuery.mbYTPlayer.setAnchor,jQuery.fn.YTPGetAnchor=jQuery.mbYTPlayer.getAnchor,jQuery.fn.YTPSetOption=jQuery.mbYTPlayer.setOption}(jQuery,ytp);var nAgt=navigator.userAgent;function isTouchSupported(){var e=nAgt.msMaxTouchPoints,r="ontouchstart"in document.createElement("div");return!(!e&&!r)}jQuery.browser=jQuery.browser||{},jQuery.browser.mozilla=!1,jQuery.browser.webkit=!1,jQuery.browser.opera=!1,jQuery.browser.safari=!1,jQuery.browser.chrome=!1,jQuery.browser.androidStock=!1,jQuery.browser.msie=!1,jQuery.browser.edge=!1,jQuery.browser.ua=nAgt;var getOS=function(){var e={version:"Unknown version",name:"Unknown OS"};return-1!=navigator.appVersion.indexOf("Win")&&(e.name="Windows"),-1!=navigator.appVersion.indexOf("Mac")&&0>navigator.appVersion.indexOf("Mobile")&&(e.name="Mac"),-1!=navigator.appVersion.indexOf("Linux")&&(e.name="Linux"),/Mac OS X/.test(nAgt)&&!/Mobile/.test(nAgt)&&(e.version=/Mac OS X ([\._\d]+)/.exec(nAgt)[1],e.version=e.version.replace(/_/g,".").substring(0,5)),/Windows/.test(nAgt)&&(e.version="Unknown.Unknown"),/Windows NT 5.1/.test(nAgt)&&(e.version="5.1"),/Windows NT 6.0/.test(nAgt)&&(e.version="6.0"),/Windows NT 6.1/.test(nAgt)&&(e.version="6.1"),/Windows NT 6.2/.test(nAgt)&&(e.version="6.2"),/Windows NT 10.0/.test(nAgt)&&(e.version="10.0"),/Linux/.test(nAgt)&&/Linux/.test(nAgt)&&(e.version="Unknown.Unknown"),e.name=e.name.toLowerCase(),e.major_version="Unknown",e.minor_version="Unknown","Unknown.Unknown"!=e.version&&(e.major_version=parseFloat(e.version.split(".")[0]),e.minor_version=parseFloat(e.version.split(".")[1])),e},nameOffset,verOffset,ix;if(jQuery.browser.os=getOS(),jQuery.browser.hasTouch=isTouchSupported(),jQuery.browser.name=navigator.appName,jQuery.browser.fullVersion=""+parseFloat(navigator.appVersion),jQuery.browser.majorVersion=parseInt(navigator.appVersion,10),-1!=(verOffset=nAgt.indexOf("Opera")))jQuery.browser.opera=!0,jQuery.browser.name="Opera",jQuery.browser.fullVersion=nAgt.substring(verOffset+6),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.browser.fullVersion=nAgt.substring(verOffset+8));else if(-1!=(verOffset=nAgt.indexOf("OPR")))jQuery.browser.opera=!0,jQuery.browser.name="Opera",jQuery.browser.fullVersion=nAgt.substring(verOffset+4);else if(-1!=(verOffset=nAgt.indexOf("MSIE")))jQuery.browser.msie=!0,jQuery.browser.name="Microsoft Internet Explorer",jQuery.browser.fullVersion=nAgt.substring(verOffset+5);else if(-1!=nAgt.indexOf("Trident")){jQuery.browser.msie=!0,jQuery.browser.name="Microsoft Internet Explorer";var start=nAgt.indexOf("rv:")+3,end=start+4;jQuery.browser.fullVersion=nAgt.substring(start,end)}else-1!=(verOffset=nAgt.indexOf("Edge"))?(jQuery.browser.edge=!0,jQuery.browser.name="Microsoft Edge",jQuery.browser.fullVersion=nAgt.substring(verOffset+5)):-1!=(verOffset=nAgt.indexOf("Chrome"))?(jQuery.browser.webkit=!0,jQuery.browser.chrome=!0,jQuery.browser.name="Chrome",jQuery.browser.fullVersion=nAgt.substring(verOffset+7)):-1<nAgt.indexOf("mozilla/5.0")&&-1<nAgt.indexOf("android ")&&-1<nAgt.indexOf("applewebkit")&&!(-1<nAgt.indexOf("chrome"))?(verOffset=nAgt.indexOf("Chrome"),jQuery.browser.webkit=!0,jQuery.browser.androidStock=!0,jQuery.browser.name="androidStock",jQuery.browser.fullVersion=nAgt.substring(verOffset+7)):-1!=(verOffset=nAgt.indexOf("Safari"))?(jQuery.browser.webkit=!0,jQuery.browser.safari=!0,jQuery.browser.name="Safari",jQuery.browser.fullVersion=nAgt.substring(verOffset+7),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.browser.fullVersion=nAgt.substring(verOffset+8))):-1!=(verOffset=nAgt.indexOf("AppleWebkit"))?(jQuery.browser.webkit=!0,jQuery.browser.safari=!0,jQuery.browser.name="Safari",jQuery.browser.fullVersion=nAgt.substring(verOffset+7),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.browser.fullVersion=nAgt.substring(verOffset+8))):-1!=(verOffset=nAgt.indexOf("Firefox"))?(jQuery.browser.mozilla=!0,jQuery.browser.name="Firefox",jQuery.browser.fullVersion=nAgt.substring(verOffset+8)):(nameOffset=nAgt.lastIndexOf(" ")+1)<(verOffset=nAgt.lastIndexOf("/"))&&(jQuery.browser.name=nAgt.substring(nameOffset,verOffset),jQuery.browser.fullVersion=nAgt.substring(verOffset+1),jQuery.browser.name.toLowerCase()==jQuery.browser.name.toUpperCase()&&(jQuery.browser.name=navigator.appName));function uncamel(e){return e.replace(/([A-Z])/g,function(e){return"-"+e.toLowerCase()})}function setUnit(e,r){return"string"!=typeof e||e.match(/^[\-0-9\.]+jQuery/)?""+e+r:e}function setFilter(e,r,t){var a=uncamel(r),o=jQuery.browser.mozilla?"":jQuery.CSS.sfx;e[o+"filter"]=e[o+"filter"]||"",t=setUnit(t>jQuery.CSS.filters[r].max?jQuery.CSS.filters[r].max:t,jQuery.CSS.filters[r].unit),e[o+"filter"]+=a+"("+t+") ",delete e[r]}-1!=(ix=jQuery.browser.fullVersion.indexOf(";"))&&(jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(0,ix)),-1!=(ix=jQuery.browser.fullVersion.indexOf(" "))&&(jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(0,ix)),jQuery.browser.majorVersion=parseInt(""+jQuery.browser.fullVersion,10),isNaN(jQuery.browser.majorVersion)&&(jQuery.browser.fullVersion=""+parseFloat(navigator.appVersion),jQuery.browser.majorVersion=parseInt(navigator.appVersion,10)),jQuery.browser.version=jQuery.browser.majorVersion,jQuery.browser.android=/Android/i.test(nAgt),jQuery.browser.blackberry=/BlackBerry|BB|PlayBook/i.test(nAgt),jQuery.browser.ios=/iPhone|iPad|iPod|webOS/i.test(nAgt),jQuery.browser.operaMobile=/Opera Mini/i.test(nAgt),jQuery.browser.windowsMobile=/IEMobile|Windows Phone/i.test(nAgt),jQuery.browser.kindle=/Kindle|Silk/i.test(nAgt),jQuery.browser.mobile=jQuery.browser.android||jQuery.browser.blackberry||jQuery.browser.ios||jQuery.browser.windowsMobile||jQuery.browser.operaMobile||jQuery.browser.kindle,jQuery.isMobile=jQuery.browser.mobile,jQuery.isTablet=jQuery.browser.mobile&&765<jQuery(window).width(),jQuery.isAndroidDefault=jQuery.browser.android&&!/chrome/i.test(nAgt),jQuery.mbBrowser=jQuery.browser,jQuery.browser.versionCompare=function(e,r){if("stringstring"!=typeof e+typeof r)return!1;for(var t=e.split("."),a=r.split("."),o=0,n=Math.max(t.length,a.length);o<n;o++){if(t[o]&&!a[o]&&0<parseInt(t[o])||parseInt(t[o])>parseInt(a[o]))return 1;if(a[o]&&!t[o]&&0<parseInt(a[o])||parseInt(t[o])<parseInt(a[o]))return-1}return 0},jQuery.support.CSStransition=function(){var e=(document.body||document.documentElement).style;return void 0!==e.transition||void 0!==e.WebkitTransition||void 0!==e.MozTransition||void 0!==e.MsTransition||void 0!==e.OTransition}(),jQuery.CSS={name:"mb.CSSAnimate",author:"Matteo Bicocchi",version:"2.0.0",transitionEnd:"transitionEnd",sfx:"",filters:{blur:{min:0,max:100,unit:"px"},brightness:{min:0,max:400,unit:"%"},contrast:{min:0,max:400,unit:"%"},grayscale:{min:0,max:100,unit:"%"},hueRotate:{min:0,max:360,unit:"deg"},invert:{min:0,max:100,unit:"%"},saturate:{min:0,max:400,unit:"%"},sepia:{min:0,max:100,unit:"%"}},normalizeCss:function(e){var r=jQuery.extend(!0,{},e);for(var t in jQuery.browser.webkit||jQuery.browser.opera?jQuery.CSS.sfx="-webkit-":jQuery.browser.mozilla?jQuery.CSS.sfx="-moz-":jQuery.browser.msie&&(jQuery.CSS.sfx="-ms-"),jQuery.CSS.sfx="",r){if("transform"===t&&(r[jQuery.CSS.sfx+"transform"]=r[t],delete r[t]),"transform-origin"===t&&(r[jQuery.CSS.sfx+"transform-origin"]=e[t],delete r[t]),"filter"!==t||jQuery.browser.mozilla||(r[jQuery.CSS.sfx+"filter"]=e[t],delete r[t]),"blur"===t&&setFilter(r,"blur",e[t]),"brightness"===t&&setFilter(r,"brightness",e[t]),"contrast"===t&&setFilter(r,"contrast",e[t]),"grayscale"===t&&setFilter(r,"grayscale",e[t]),"hueRotate"===t&&setFilter(r,"hueRotate",e[t]),"invert"===t&&setFilter(r,"invert",e[t]),"saturate"===t&&setFilter(r,"saturate",e[t]),"sepia"===t&&setFilter(r,"sepia",e[t]),"x"===t){var a=jQuery.CSS.sfx+"transform";r[a]=r[a]||"",r[a]+=" translateX("+setUnit(e[t],"px")+")",delete r[t]}"y"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" translateY("+setUnit(e[t],"px")+")",delete r[t]),"z"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" translateZ("+setUnit(e[t],"px")+")",delete r[t]),"rotate"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" rotate("+setUnit(e[t],"deg")+")",delete r[t]),"rotateX"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" rotateX("+setUnit(e[t],"deg")+")",delete r[t]),"rotateY"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" rotateY("+setUnit(e[t],"deg")+")",delete r[t]),"rotateZ"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" rotateZ("+setUnit(e[t],"deg")+")",delete r[t]),"scale"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" scale("+setUnit(e[t],"")+")",delete r[t]),"scaleX"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" scaleX("+setUnit(e[t],"")+")",delete r[t]),"scaleY"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" scaleY("+setUnit(e[t],"")+")",delete r[t]),"scaleZ"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" scaleZ("+setUnit(e[t],"")+")",delete r[t]),"skew"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" skew("+setUnit(e[t],"deg")+")",delete r[t]),"skewX"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" skewX("+setUnit(e[t],"deg")+")",delete r[t]),"skewY"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" skewY("+setUnit(e[t],"deg")+")",delete r[t]),"perspective"===t&&(r[a=jQuery.CSS.sfx+"transform"]=r[a]||"",r[a]+=" perspective("+setUnit(e[t],"px")+")",delete r[t])}return r},getProp:function(e){var r,t=[];for(r in e)0>t.indexOf(r)&&t.push(uncamel(r));return t.join(",")},animate:function(e,r,t,a,o){return this.each(function(){function n(){i.called=!0,i.CSSAIsRunning=!1,l.off(jQuery.CSS.transitionEnd+"."+i.id),clearTimeout(i.timeout),l.css(jQuery.CSS.sfx+"transition",""),"function"==typeof o&&o.apply(i),"function"==typeof i.CSSqueue&&(i.CSSqueue(),i.CSSqueue=null)}var i=this,l=jQuery(this);i.id=i.id||"CSSA_"+(new Date).getTime();var s=s||{type:"noEvent"};if(i.CSSAIsRunning&&i.eventType==s.type&&!jQuery.browser.msie&&9>=jQuery.browser.version)i.CSSqueue=function(){l.CSSAnimate(e,r,t,a,o)};else if(i.CSSqueue=null,i.eventType=s.type,0!==l.length&&e){if(e=jQuery.normalizeCss(e),i.CSSAIsRunning=!0,"function"==typeof r&&(o=r,r=jQuery.fx.speeds._default),"function"==typeof t&&(a=t,t=0),"string"==typeof t&&(o=t,t=0),"function"==typeof a&&(o=a,a="cubic-bezier(0.65,0.03,0.36,0.72)"),"string"==typeof r)for(var u in jQuery.fx.speeds){if(r==u){r=jQuery.fx.speeds[u];break}r=jQuery.fx.speeds._default}if(r||(r=jQuery.fx.speeds._default),"string"==typeof o&&(a=o,o=null),jQuery.support.CSStransition){var y={default:"ease",in:"ease-in",out:"ease-out","in-out":"ease-in-out",snap:"cubic-bezier(0,1,.5,1)",easeOutCubic:"cubic-bezier(.215,.61,.355,1)",easeInOutCubic:"cubic-bezier(.645,.045,.355,1)",easeInCirc:"cubic-bezier(.6,.04,.98,.335)",easeOutCirc:"cubic-bezier(.075,.82,.165,1)",easeInOutCirc:"cubic-bezier(.785,.135,.15,.86)",easeInExpo:"cubic-bezier(.95,.05,.795,.035)",easeOutExpo:"cubic-bezier(.19,1,.22,1)",easeInOutExpo:"cubic-bezier(1,0,0,1)",easeInQuad:"cubic-bezier(.55,.085,.68,.53)",easeOutQuad:"cubic-bezier(.25,.46,.45,.94)",easeInOutQuad:"cubic-bezier(.455,.03,.515,.955)",easeInQuart:"cubic-bezier(.895,.03,.685,.22)",easeOutQuart:"cubic-bezier(.165,.84,.44,1)",easeInOutQuart:"cubic-bezier(.77,0,.175,1)",easeInQuint:"cubic-bezier(.755,.05,.855,.06)",easeOutQuint:"cubic-bezier(.23,1,.32,1)",easeInOutQuint:"cubic-bezier(.86,0,.07,1)",easeInSine:"cubic-bezier(.47,0,.745,.715)",easeOutSine:"cubic-bezier(.39,.575,.565,1)",easeInOutSine:"cubic-bezier(.445,.05,.55,.95)",easeInBack:"cubic-bezier(.6,-.28,.735,.045)",easeOutBack:"cubic-bezier(.175, .885,.32,1.275)",easeInOutBack:"cubic-bezier(.68,-.55,.265,1.55)"};y[a]&&(a=y[a]),l.off(jQuery.CSS.transitionEnd+"."+i.id),y=jQuery.CSS.getProp(e);var d={};jQuery.extend(d,e),d[jQuery.CSS.sfx+"transition-property"]=y,d[jQuery.CSS.sfx+"transition-duration"]=r+"ms",d[jQuery.CSS.sfx+"transition-delay"]=t+"ms",d[jQuery.CSS.sfx+"transition-timing-function"]=a,setTimeout(function(){l.one(jQuery.CSS.transitionEnd+"."+i.id,n),l.css(d)},1),i.timeout=setTimeout(function(){i.called||!o?(i.called=!1,i.CSSAIsRunning=!1):(l.css(jQuery.CSS.sfx+"transition",""),o.apply(i),i.CSSAIsRunning=!1,"function"==typeof i.CSSqueue&&(i.CSSqueue(),i.CSSqueue=null))},r+t+10)}else{for(y in e)"transform"===y&&delete e[y],"filter"===y&&delete e[y],"transform-origin"===y&&delete e[y],"auto"===e[y]&&delete e[y],"x"===y&&(s=e[y],e[u="left"]=s,delete e[y]),"y"===y&&(s=e[y],e[u="top"]=s,delete e[y]),"-ms-transform"!==y&&"-ms-filter"!==y||delete e[y];l.delay(t).animate(e,r,o)}}})}},jQuery.fn.CSSAnimate=jQuery.CSS.animate,jQuery.normalizeCss=jQuery.CSS.normalizeCss,jQuery.fn.css3=function(e){return this.each(function(){var r=jQuery(this),t=jQuery.normalizeCss(e);r.css(t)})},function(e){e.simpleSlider={defaults:{initialval:0,maxval:100,orientation:"h",readonly:!1,callback:!1},events:{start:e.browser.mobile?"touchstart":"mousedown",end:e.browser.mobile?"touchend":"mouseup",move:e.browser.mobile?"touchmove":"mousemove"},init:function(r){return this.each(function(){var t=this,a=e(t);a.addClass("simpleSlider"),t.opt={},e.extend(t.opt,e.simpleSlider.defaults,r),e.extend(t.opt,a.data());var o="h"===t.opt.orientation?"horizontal":"vertical";o=e("<div/>").addClass("level").addClass(o),a.prepend(o),t.level=o,a.css({cursor:"default"}),"auto"==t.opt.maxval&&(t.opt.maxval=e(t).outerWidth()),a.updateSliderVal(),t.opt.readonly||(a.on(e.simpleSlider.events.start,function(r){e.browser.mobile&&(r=r.changedTouches[0]),t.canSlide=!0,a.updateSliderVal(r),"h"===t.opt.orientation?a.css({cursor:"col-resize"}):a.css({cursor:"row-resize"}),t.lastVal=t.val,e.browser.mobile||(r.preventDefault(),r.stopPropagation())}),e(document).on(e.simpleSlider.events.move,function(r){e.browser.mobile&&(r=r.changedTouches[0]),t.canSlide&&(e(document).css({cursor:"default"}),a.updateSliderVal(r),e.browser.mobile||(r.preventDefault(),r.stopPropagation()))}).on(e.simpleSlider.events.end,function(){e(document).css({cursor:"auto"}),t.canSlide=!1,a.css({cursor:"auto"})}))})},updateSliderVal:function(r){var t=this.get(0);if(t.opt){t.opt.initialval="number"==typeof t.opt.initialval?t.opt.initialval:t.opt.initialval(t);var a=e(t).outerWidth(),o=e(t).outerHeight();t.x="object"==typeof r?r.clientX+document.body.scrollLeft-this.offset().left:"number"==typeof r?r*a/t.opt.maxval:t.opt.initialval*a/t.opt.maxval,t.y="object"==typeof r?r.clientY+document.body.scrollTop-this.offset().top:"number"==typeof r?(t.opt.maxval-t.opt.initialval-r)*o/t.opt.maxval:t.opt.initialval*o/t.opt.maxval,t.y=this.outerHeight()-t.y,t.scaleX=t.x*t.opt.maxval/a,t.scaleY=t.y*t.opt.maxval/o,t.outOfRangeX=t.scaleX>t.opt.maxval?t.scaleX-t.opt.maxval:0>t.scaleX?t.scaleX:0,t.outOfRangeY=t.scaleY>t.opt.maxval?t.scaleY-t.opt.maxval:0>t.scaleY?t.scaleY:0,t.outOfRange="h"===t.opt.orientation?t.outOfRangeX:t.outOfRangeY,t.value=void 0!==r?"h"===t.opt.orientation?t.x>=this.outerWidth()?t.opt.maxval:0>=t.x?0:t.scaleX:t.y>=this.outerHeight()?t.opt.maxval:0>=t.y?0:t.scaleY:"h"===t.opt.orientation?t.scaleX:t.scaleY,"h"===t.opt.orientation?t.level.width(Math.floor(100*t.x/a)+"%"):t.level.height(Math.floor(100*t.y/o)),t.lastVal===t.value&&("h"===t.opt.orientation&&(t.x>=this.outerWidth()||0>=t.x)||"h"!==t.opt.orientation&&(t.y>=this.outerHeight()||0>=t.y))||("function"==typeof t.opt.callback&&t.opt.callback(t),t.lastVal=t.value)}}},e.fn.simpleSlider=e.simpleSlider.init,e.fn.updateSliderVal=e.simpleSlider.updateSliderVal}(jQuery),function(e){e.mbCookie={set:function(e,r,t,a){"object"==typeof r&&(r=JSON.stringify(r)),a=a?"; domain="+a:"";var o=new Date,n="";0<t&&(o.setTime(o.getTime()+864e5*t),n="; expires="+o.toGMTString()),document.cookie=e+"="+r+n+"; path=/"+a},get:function(e){e+="=";for(var r=document.cookie.split(";"),t=0;t<r.length;t++){for(var a=r[t];" "==a.charAt(0);)a=a.substring(1,a.length);if(0==a.indexOf(e))try{return JSON.parse(a.substring(e.length,a.length))}catch(r){return a.substring(e.length,a.length)}}return null},remove:function(r){e.mbCookie.set(r,"",-1)}},e.mbStorage={set:function(e,r){"object"==typeof r&&(r=JSON.stringify(r)),localStorage.setItem(e,r)},get:function(e){if(!localStorage[e])return null;try{return JSON.parse(localStorage[e])}catch(r){return localStorage[e]}},remove:function(e){e?localStorage.removeItem(e):localStorage.clear()}}}(jQuery);var nAgt=navigator.userAgent;function isTouchSupported(){var e=nAgt.msMaxTouchPoints,r="ontouchstart"in document.createElement("div");return!(!e&&!r)}jQuery.mbBrowser={},jQuery.mbBrowser.mozilla=!1,jQuery.mbBrowser.webkit=!1,jQuery.mbBrowser.opera=!1,jQuery.mbBrowser.safari=!1,jQuery.mbBrowser.chrome=!1,jQuery.mbBrowser.androidStock=!1,jQuery.mbBrowser.msie=!1,jQuery.mbBrowser.edge=!1,jQuery.mbBrowser.ua=nAgt;var getOS=function(){var e={version:"Unknown version",name:"Unknown OS"};return-1!=navigator.appVersion.indexOf("Win")&&(e.name="Windows"),-1!=navigator.appVersion.indexOf("Mac")&&0>navigator.appVersion.indexOf("Mobile")&&(e.name="Mac"),-1!=navigator.appVersion.indexOf("Linux")&&(e.name="Linux"),/Mac OS X/.test(nAgt)&&!/Mobile/.test(nAgt)&&(e.version=/Mac OS X ([\._\d]+)/.exec(nAgt)[1],e.version=e.version.replace(/_/g,".").substring(0,5)),/Windows/.test(nAgt)&&(e.version="Unknown.Unknown"),/Windows NT 5.1/.test(nAgt)&&(e.version="5.1"),/Windows NT 6.0/.test(nAgt)&&(e.version="6.0"),/Windows NT 6.1/.test(nAgt)&&(e.version="6.1"),/Windows NT 6.2/.test(nAgt)&&(e.version="6.2"),/Windows NT 10.0/.test(nAgt)&&(e.version="10.0"),/Linux/.test(nAgt)&&/Linux/.test(nAgt)&&(e.version="Unknown.Unknown"),e.name=e.name.toLowerCase(),e.major_version="Unknown",e.minor_version="Unknown","Unknown.Unknown"!=e.version&&(e.major_version=parseFloat(e.version.split(".")[0]),e.minor_version=parseFloat(e.version.split(".")[1])),e},nameOffset,verOffset,ix;if(jQuery.mbBrowser.os=getOS(),jQuery.mbBrowser.hasTouch=isTouchSupported(),jQuery.mbBrowser.name=navigator.appName,jQuery.mbBrowser.fullVersion=""+parseFloat(navigator.appVersion),jQuery.mbBrowser.majorVersion=parseInt(navigator.appVersion,10),-1!=(verOffset=nAgt.indexOf("Opera")))jQuery.mbBrowser.opera=!0,jQuery.mbBrowser.name="Opera",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+6),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+8));else if(-1!=(verOffset=nAgt.indexOf("OPR")))jQuery.mbBrowser.opera=!0,jQuery.mbBrowser.name="Opera",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+4);else if(-1!=(verOffset=nAgt.indexOf("MSIE")))jQuery.mbBrowser.msie=!0,jQuery.mbBrowser.name="Microsoft Internet Explorer",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+5);else if(-1!=nAgt.indexOf("Trident")){jQuery.mbBrowser.msie=!0,jQuery.mbBrowser.name="Microsoft Internet Explorer";var start=nAgt.indexOf("rv:")+3,end=start+4;jQuery.mbBrowser.fullVersion=nAgt.substring(start,end)}else-1!=(verOffset=nAgt.indexOf("Edge"))?(jQuery.mbBrowser.edge=!0,jQuery.mbBrowser.name="Microsoft Edge",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+5)):-1!=(verOffset=nAgt.indexOf("Chrome"))?(jQuery.mbBrowser.webkit=!0,jQuery.mbBrowser.chrome=!0,jQuery.mbBrowser.name="Chrome",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+7)):-1<nAgt.indexOf("mozilla/5.0")&&-1<nAgt.indexOf("android ")&&-1<nAgt.indexOf("applewebkit")&&!(-1<nAgt.indexOf("chrome"))?(verOffset=nAgt.indexOf("Chrome"),jQuery.mbBrowser.webkit=!0,jQuery.mbBrowser.androidStock=!0,jQuery.mbBrowser.name="androidStock",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+7)):-1!=(verOffset=nAgt.indexOf("Safari"))?(jQuery.mbBrowser.webkit=!0,jQuery.mbBrowser.safari=!0,jQuery.mbBrowser.name="Safari",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+7),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+8))):-1!=(verOffset=nAgt.indexOf("AppleWebkit"))?(jQuery.mbBrowser.webkit=!0,jQuery.mbBrowser.safari=!0,jQuery.mbBrowser.name="Safari",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+7),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+8))):-1!=(verOffset=nAgt.indexOf("Firefox"))?(jQuery.mbBrowser.mozilla=!0,jQuery.mbBrowser.name="Firefox",jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+8)):(nameOffset=nAgt.lastIndexOf(" ")+1)<(verOffset=nAgt.lastIndexOf("/"))&&(jQuery.mbBrowser.name=nAgt.substring(nameOffset,verOffset),jQuery.mbBrowser.fullVersion=nAgt.substring(verOffset+1),jQuery.mbBrowser.name.toLowerCase()==jQuery.mbBrowser.name.toUpperCase()&&(jQuery.mbBrowser.name=navigator.appName));-1!=(ix=jQuery.mbBrowser.fullVersion.indexOf(";"))&&(jQuery.mbBrowser.fullVersion=jQuery.mbBrowser.fullVersion.substring(0,ix)),-1!=(ix=jQuery.mbBrowser.fullVersion.indexOf(" "))&&(jQuery.mbBrowser.fullVersion=jQuery.mbBrowser.fullVersion.substring(0,ix)),jQuery.mbBrowser.majorVersion=parseInt(""+jQuery.mbBrowser.fullVersion,10),isNaN(jQuery.mbBrowser.majorVersion)&&(jQuery.mbBrowser.fullVersion=""+parseFloat(navigator.appVersion),jQuery.mbBrowser.majorVersion=parseInt(navigator.appVersion,10)),jQuery.mbBrowser.version=jQuery.mbBrowser.majorVersion,jQuery.mbBrowser.android=/Android/i.test(nAgt),jQuery.mbBrowser.blackberry=/BlackBerry|BB|PlayBook/i.test(nAgt),jQuery.mbBrowser.ios=/iPhone|iPad|iPod|webOS/i.test(nAgt),jQuery.mbBrowser.operaMobile=/Opera Mini/i.test(nAgt),jQuery.mbBrowser.windowsMobile=/IEMobile|Windows Phone/i.test(nAgt),jQuery.mbBrowser.kindle=/Kindle|Silk/i.test(nAgt),jQuery.mbBrowser.mobile=jQuery.mbBrowser.android||jQuery.mbBrowser.blackberry||jQuery.mbBrowser.ios||jQuery.mbBrowser.windowsMobile||jQuery.mbBrowser.operaMobile||jQuery.mbBrowser.kindle,jQuery.isMobile=jQuery.mbBrowser.mobile,jQuery.isTablet=jQuery.mbBrowser.mobile&&765<jQuery(window).width(),jQuery.isAndroidDefault=jQuery.mbBrowser.android&&!/chrome/i.test(nAgt),jQuery.mbBrowser=jQuery.mbBrowser,jQuery.mbBrowser.versionCompare=function(e,r){if("stringstring"!=typeof e+typeof r)return!1;for(var t=e.split("."),a=r.split("."),o=0,n=Math.max(t.length,a.length);o<n;o++){if(t[o]&&!a[o]&&0<parseInt(t[o])||parseInt(t[o])>parseInt(a[o]))return 1;if(a[o]&&!t[o]&&0<parseInt(a[o])||parseInt(t[o])<parseInt(a[o]))return-1}return 0};
|
content_elements/bt_bb_section/jquery.mb.YTPlayer.src.js
ADDED
@@ -0,0 +1,2968 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**********************************************
|
2 |
+
* @File Name: jquery.mb.YTPlayer.src.js
|
3 |
+
* @Author: Matteo Bicocchi
|
4 |
+
* @Date: 2020-03-16
|
5 |
+
* @Email: matbicoc@gmail.com
|
6 |
+
*
|
7 |
+
* @Last Modified by: Matteo Bicocchi
|
8 |
+
* @Last Modified time: 2020-03-18
|
9 |
+
* @Copyright: 2020. Matteo Bicocchi
|
10 |
+
*
|
11 |
+
* Open Lab s.r.l., Florence - Italy
|
12 |
+
* @blog: http://pupunzi.open-lab.com
|
13 |
+
* @site: http://pupunzi.com
|
14 |
+
****************************************************/
|
15 |
+
/**********************************************
|
16 |
+
* @File Name: jquery.mb.YTPlayer.src.js
|
17 |
+
* @Author: Matteo Bicocchi
|
18 |
+
* @Date: 2020-01-11
|
19 |
+
* @Email: matbicoc@gmail.com
|
20 |
+
*
|
21 |
+
* @Last Modified by: Matteo Bicocchi
|
22 |
+
* @Last Modified time: 2020-03-14
|
23 |
+
* @Copyright: 2020. Matteo Bicocchi
|
24 |
+
****************************************************/
|
25 |
+
|
26 |
+
|
27 |
+
var ytp = ytp || {};
|
28 |
+
|
29 |
+
function onYouTubeIframeAPIReady() {
|
30 |
+
if (ytp.YTAPIReady)
|
31 |
+
return;
|
32 |
+
ytp.YTAPIReady = true;
|
33 |
+
jQuery(document).trigger('YTAPIReady')
|
34 |
+
}
|
35 |
+
|
36 |
+
let getYTPVideoID = function (url) {
|
37 |
+
let videoID, playlistID;
|
38 |
+
if (url.indexOf('youtu.be') > 0 || url.indexOf('youtube.com/embed') > 0) {
|
39 |
+
videoID = url.substr(url.lastIndexOf('/') + 1, url.length);
|
40 |
+
playlistID = videoID.indexOf('?list=') > 0 ? videoID.substr(videoID.lastIndexOf('='), videoID.length) : null;
|
41 |
+
videoID = playlistID ? videoID.substr(0, videoID.lastIndexOf('?')) : videoID
|
42 |
+
} else if (url.indexOf('http') > -1) {
|
43 |
+
//videoID = url.match( /([\/&]v\/([^&#]*))|([\\?&]v=([^&#]*))/ )[ 1 ];
|
44 |
+
videoID = url.match(/[\\?&]v=([^&#]*)/)[1];
|
45 |
+
playlistID = url.indexOf('list=') > 0 ? url.match(/[\\?&]list=([^&#]*)/)[1] : null
|
46 |
+
} else {
|
47 |
+
videoID = url.length > 15 ? null : url;
|
48 |
+
playlistID = videoID ? null : url
|
49 |
+
}
|
50 |
+
return {
|
51 |
+
videoID : videoID,
|
52 |
+
playlistID: playlistID
|
53 |
+
}
|
54 |
+
};
|
55 |
+
|
56 |
+
function iOSversion() {
|
57 |
+
if (/iP(hone|od|ad)/.test(navigator.platform)) {
|
58 |
+
let v = (navigator.appVersion).match(/OS (\d+)_(\d+)_?(\d+)?/);
|
59 |
+
return [parseInt(v[1], 10), parseInt(v[2], 10), parseInt(v[3] || 0, 10)]
|
60 |
+
}
|
61 |
+
}
|
62 |
+
|
63 |
+
(function (jQuery, ytp) {
|
64 |
+
|
65 |
+
jQuery.mbYTPlayer = {
|
66 |
+
name : 'jquery.mb.YTPlayer',
|
67 |
+
version: '3.3.2',
|
68 |
+
build : '7501',
|
69 |
+
author : 'Matteo Bicocchi (pupunzi)',
|
70 |
+
apiKey : '',
|
71 |
+
|
72 |
+
/*
|
73 |
+
* Default options for the player
|
74 |
+
*/
|
75 |
+
defaults : {
|
76 |
+
/**
|
77 |
+
videoURL (string)
|
78 |
+
the complete Youtube video URL or the short url or the videoID
|
79 |
+
*/
|
80 |
+
videoURL: null,
|
81 |
+
|
82 |
+
/**
|
83 |
+
containment (string)
|
84 |
+
default containment for the player
|
85 |
+
*/
|
86 |
+
containment: 'body',
|
87 |
+
|
88 |
+
/**
|
89 |
+
ratio (string or number)
|
90 |
+
"auto", "16/9", "4/3" or number: 4/3, 16/9
|
91 |
+
*/
|
92 |
+
ratio: 'auto',
|
93 |
+
|
94 |
+
/**
|
95 |
+
fadeOnStartTime (int)
|
96 |
+
fade in timing at video start
|
97 |
+
*/
|
98 |
+
fadeOnStartTime: 1000,
|
99 |
+
|
100 |
+
/**
|
101 |
+
startAt (int)
|
102 |
+
start second
|
103 |
+
*/
|
104 |
+
startAt: 0,
|
105 |
+
|
106 |
+
/**
|
107 |
+
stopAt (int)
|
108 |
+
stop second
|
109 |
+
*/
|
110 |
+
stopAt: 0,
|
111 |
+
|
112 |
+
/**
|
113 |
+
autoPlay (bool)
|
114 |
+
on page load video should start or pause
|
115 |
+
*/
|
116 |
+
autoPlay: true,
|
117 |
+
|
118 |
+
/**
|
119 |
+
coverImage (string)
|
120 |
+
The path to the image to be used as cover if the autoPlay option is set to false
|
121 |
+
*/
|
122 |
+
coverImage: false,
|
123 |
+
|
124 |
+
/**
|
125 |
+
loop (bool or int)
|
126 |
+
video should loop or not; if number it will loop for the specified times
|
127 |
+
*/
|
128 |
+
loop: true,
|
129 |
+
|
130 |
+
/**
|
131 |
+
addRaster (bool)
|
132 |
+
shows a raster image over the video (added via CSS)
|
133 |
+
You can change the raster image via CSS:
|
134 |
+
.YTPOverlay.raster { background: url(images/raster.png)}
|
135 |
+
*/
|
136 |
+
addRaster: false,
|
137 |
+
|
138 |
+
/**
|
139 |
+
mask (bool or object) the key is the second and the value is the path to the image
|
140 |
+
Ex: mask:{ 0:'assets/mask-1.png', 5:'assets/mask-2.png', 30: false, 50:'assets/mask-3.png'}
|
141 |
+
*/
|
142 |
+
mask: false,
|
143 |
+
|
144 |
+
/**
|
145 |
+
opacity (int)
|
146 |
+
0 to 1
|
147 |
+
*/
|
148 |
+
opacity: 1,
|
149 |
+
|
150 |
+
/**
|
151 |
+
quality (string)
|
152 |
+
“small”, “medium”, “large”, “hd720”, “hd1080”, “highres”, "default"
|
153 |
+
*/
|
154 |
+
quality: 'default',
|
155 |
+
|
156 |
+
/**
|
157 |
+
vol (int)
|
158 |
+
0 to 100
|
159 |
+
*/
|
160 |
+
vol: 50,
|
161 |
+
|
162 |
+
/**
|
163 |
+
mute (bool)
|
164 |
+
mute the video at start
|
165 |
+
*/
|
166 |
+
mute: false,
|
167 |
+
|
168 |
+
/**
|
169 |
+
showControls (bool)
|
170 |
+
shows the control bar at the bottom of the containment
|
171 |
+
*/
|
172 |
+
showControls: true,
|
173 |
+
|
174 |
+
/**
|
175 |
+
anchor (string)
|
176 |
+
center,top,bottom,left,right combined in pair
|
177 |
+
*/
|
178 |
+
anchor: 'center,center',
|
179 |
+
|
180 |
+
/**
|
181 |
+
showAnnotations (bool)
|
182 |
+
display the annotations on video
|
183 |
+
*/
|
184 |
+
showAnnotations: false,
|
185 |
+
|
186 |
+
/**
|
187 |
+
cc_load_policy (bool)
|
188 |
+
display the subtitles
|
189 |
+
*/
|
190 |
+
cc_load_policy: false,
|
191 |
+
|
192 |
+
/**
|
193 |
+
showYTLogo (bool)
|
194 |
+
display the Youtube logotype inside the button bar
|
195 |
+
*/
|
196 |
+
showYTLogo: true,
|
197 |
+
|
198 |
+
/**
|
199 |
+
useOnMobile (bool)
|
200 |
+
activate the player also on mobile
|
201 |
+
*/
|
202 |
+
useOnMobile: true,
|
203 |
+
|
204 |
+
/**
|
205 |
+
playOnlyIfVisible (bool)
|
206 |
+
play the video only if the containment is on screen
|
207 |
+
*/
|
208 |
+
playOnlyIfVisible: false,
|
209 |
+
|
210 |
+
/**
|
211 |
+
onScreenPercentage (bool)
|
212 |
+
percentage of the player height the video should stop or start when visible
|
213 |
+
*/
|
214 |
+
onScreenPercentage: 30,
|
215 |
+
|
216 |
+
/**
|
217 |
+
stopMovieOnBlur (bool)
|
218 |
+
stop the video if the window loose the focus
|
219 |
+
*/
|
220 |
+
stopMovieOnBlur: true,
|
221 |
+
|
222 |
+
/**
|
223 |
+
realfullscreen (bool)
|
224 |
+
the video when in full screen covers all the display
|
225 |
+
*/
|
226 |
+
realFullscreen: true,
|
227 |
+
|
228 |
+
/**
|
229 |
+
optimizeDisplay (bool)
|
230 |
+
The video always fit the containment without displaying the black strips
|
231 |
+
*/
|
232 |
+
optimizeDisplay: true,
|
233 |
+
|
234 |
+
/**
|
235 |
+
abundance (bool)
|
236 |
+
the abudance of the video size
|
237 |
+
*/
|
238 |
+
abundance: 0.3,
|
239 |
+
|
240 |
+
/**
|
241 |
+
gaTrack (bool)
|
242 |
+
track the video plays on GA
|
243 |
+
*/
|
244 |
+
gaTrack: true,
|
245 |
+
|
246 |
+
/**
|
247 |
+
remember_last_time (bool)
|
248 |
+
when the page is reloaded the video will start from the last position
|
249 |
+
*/
|
250 |
+
remember_last_time: false,
|
251 |
+
|
252 |
+
/**
|
253 |
+
addFilters (bool or string)
|
254 |
+
add one or more CSS filters as object to the video
|
255 |
+
Ex: {sepia: 50, hue_rotate : 220}
|
256 |
+
*/
|
257 |
+
addFilters: false,
|
258 |
+
|
259 |
+
/**
|
260 |
+
onReady (function)
|
261 |
+
a callback function fired once the player is ready
|
262 |
+
*/
|
263 |
+
onReady: function (player) {
|
264 |
+
},
|
265 |
+
|
266 |
+
/**
|
267 |
+
onReady (function)
|
268 |
+
a callback function fired if there's an error
|
269 |
+
*/
|
270 |
+
onError: function (player, err) {
|
271 |
+
},
|
272 |
+
|
273 |
+
/**
|
274 |
+
onEnd (function)
|
275 |
+
a callback function fired when the video ends
|
276 |
+
*/
|
277 |
+
onEnd: function () {}
|
278 |
+
},
|
279 |
+
/**
|
280 |
+
* @fontface icons
|
281 |
+
* */
|
282 |
+
controls : {
|
283 |
+
play : 'P',
|
284 |
+
pause : 'p',
|
285 |
+
mute : 'M',
|
286 |
+
unmute : 'A',
|
287 |
+
onlyYT : 'O',
|
288 |
+
showSite: 'R',
|
289 |
+
ytLogo : 'Y'
|
290 |
+
},
|
291 |
+
controlBar : null,
|
292 |
+
locationProtocol: 'https:',
|
293 |
+
|
294 |
+
/**
|
295 |
+
* Applicable filters
|
296 |
+
*/
|
297 |
+
defaultFilters: {
|
298 |
+
grayscale : {value: 0, unit: '%'},
|
299 |
+
hue_rotate: {value: 0, unit: 'deg'},
|
300 |
+
invert : {value: 0, unit: '%'},
|
301 |
+
opacity : {value: 0, unit: '%'},
|
302 |
+
saturate : {value: 0, unit: '%'},
|
303 |
+
sepia : {value: 0, unit: '%'},
|
304 |
+
brightness: {value: 0, unit: '%'},
|
305 |
+
contrast : {value: 0, unit: '%'},
|
306 |
+
blur : {value: 0, unit: 'px'}
|
307 |
+
},
|
308 |
+
|
309 |
+
/**
|
310 |
+
* build the player
|
311 |
+
* @param options
|
312 |
+
* @returns [players]
|
313 |
+
*/
|
314 |
+
buildPlayer: function (options) {
|
315 |
+
|
316 |
+
if (!ytp.YTAPIReady && typeof window.YT === 'undefined') {
|
317 |
+
jQuery('#YTAPI').remove();
|
318 |
+
let tag = jQuery('<script>').attr({
|
319 |
+
'src': 'https://www.youtube.com/iframe_api?v=' + jQuery.mbYTPlayer.version,
|
320 |
+
'id' : 'YTAPI'
|
321 |
+
});
|
322 |
+
jQuery('head').prepend(tag)
|
323 |
+
} else {
|
324 |
+
setTimeout(function () {
|
325 |
+
jQuery(document).trigger('YTAPIReady');
|
326 |
+
ytp.YTAPIReady = true
|
327 |
+
}, 100)
|
328 |
+
}
|
329 |
+
|
330 |
+
function isIframe() {
|
331 |
+
let isIfr = false;
|
332 |
+
try {
|
333 |
+
if (self.location.href !== top.location.href) isIfr = true
|
334 |
+
} catch (e) {
|
335 |
+
isIfr = true
|
336 |
+
}
|
337 |
+
return isIfr
|
338 |
+
}
|
339 |
+
|
340 |
+
console.time('YTPlayerInit');
|
341 |
+
console.time('YTPlayerStartPlay');
|
342 |
+
|
343 |
+
return this.each(function () {
|
344 |
+
let YTPlayer = this;
|
345 |
+
let $YTPlayer = jQuery(YTPlayer);
|
346 |
+
$YTPlayer.hide();
|
347 |
+
YTPlayer.loop = 0;
|
348 |
+
YTPlayer.state = 0;
|
349 |
+
YTPlayer.filters = jQuery.extend(true, {}, jQuery.mbYTPlayer.defaultFilters);
|
350 |
+
YTPlayer.filtersEnabled = true;
|
351 |
+
YTPlayer.id = YTPlayer.id || 'YTP_' + new Date().getTime();
|
352 |
+
$YTPlayer.addClass('mb_YTPlayer');
|
353 |
+
|
354 |
+
/**
|
355 |
+
Set properties
|
356 |
+
*/
|
357 |
+
let property = $YTPlayer.data('property') && typeof $YTPlayer.data('property') == 'string' ?
|
358 |
+
eval('(' + $YTPlayer.data('property') + ')') :
|
359 |
+
$YTPlayer.data('property');
|
360 |
+
|
361 |
+
if (typeof property !== 'object')
|
362 |
+
property = {};
|
363 |
+
|
364 |
+
YTPlayer.opt = jQuery.extend(true, {}, jQuery.mbYTPlayer.defaults, YTPlayer.opt, options, property);
|
365 |
+
|
366 |
+
YTPlayer.opt.elementId = YTPlayer.id;
|
367 |
+
|
368 |
+
if (YTPlayer.opt.vol === 0) {
|
369 |
+
YTPlayer.opt.vol = 1;
|
370 |
+
YTPlayer.opt.mute = true
|
371 |
+
}
|
372 |
+
|
373 |
+
/**
|
374 |
+
* If autoPlay is set to true and mute is set to false
|
375 |
+
* Webkit browser will not auto-play
|
376 |
+
* Start playing after the first click
|
377 |
+
*/
|
378 |
+
if (YTPlayer.opt.autoPlay && YTPlayer.opt.mute === false && jQuery.mbBrowser.chrome) {
|
379 |
+
//YTPlayer.opt.mute = true;
|
380 |
+
jQuery(document).one('mousedown.YTPstart', function () {
|
381 |
+
$YTPlayer.YTPPlay()
|
382 |
+
});
|
383 |
+
console.info('YTPlayer info: On Webkit browsers you can not autoplay the video if the audio is on.')
|
384 |
+
}
|
385 |
+
|
386 |
+
if (YTPlayer.opt.loop && typeof YTPlayer.opt.loop === 'boolean') {
|
387 |
+
YTPlayer.opt.loop = 9999
|
388 |
+
}
|
389 |
+
|
390 |
+
/**
|
391 |
+
Disable fullScreen if is in an iframe or full-screen API is not available
|
392 |
+
*/
|
393 |
+
let fullScreenAvailable = document.fullscreenEnabled || document.webkitFullscreenEnabled || document.mozFullScreenEnabled || document.msFullscreenEnabled;
|
394 |
+
YTPlayer.opt.realFullscreen = isIframe() || !fullScreenAvailable ? false : YTPlayer.opt.realFullscreen;
|
395 |
+
|
396 |
+
/**
|
397 |
+
Manage annotations
|
398 |
+
*/
|
399 |
+
YTPlayer.opt.showAnnotations = YTPlayer.opt.showAnnotations ? '1' : '3';
|
400 |
+
|
401 |
+
/**
|
402 |
+
Manage show subtitle and caption
|
403 |
+
*/
|
404 |
+
YTPlayer.opt.cc_load_policy = YTPlayer.opt.cc_load_policy ? '1' : '0';
|
405 |
+
|
406 |
+
/**
|
407 |
+
Manage cover image
|
408 |
+
*/
|
409 |
+
YTPlayer.opt.coverImage = YTPlayer.opt.coverImage || YTPlayer.opt.backgroundImage;
|
410 |
+
|
411 |
+
/**
|
412 |
+
* todo: remove
|
413 |
+
Manage Opacity for IE < 10
|
414 |
+
*/
|
415 |
+
if (jQuery.mbBrowser.msie && jQuery.mbBrowser.version < 9)
|
416 |
+
YTPlayer.opt.opacity = 1;
|
417 |
+
|
418 |
+
YTPlayer.opt.containment = YTPlayer.opt.containment === 'self' ? $YTPlayer : jQuery(YTPlayer.opt.containment);
|
419 |
+
YTPlayer.isRetina = (window.retina || window.devicePixelRatio > 1);
|
420 |
+
|
421 |
+
YTPlayer.opt.ratio = YTPlayer.opt.ratio === 'auto' ? 16 / 9 : YTPlayer.opt.ratio;
|
422 |
+
YTPlayer.opt.ratio = eval(YTPlayer.opt.ratio);
|
423 |
+
|
424 |
+
let origContainmentBackground = YTPlayer.opt.containment.css('background-image');
|
425 |
+
origContainmentBackground = (origContainmentBackground === 'none') ? null : origContainmentBackground;
|
426 |
+
YTPlayer.orig_containment_background = origContainmentBackground;
|
427 |
+
|
428 |
+
if (!$YTPlayer.attr('id'))
|
429 |
+
$YTPlayer.attr('id', 'ytp_' + new Date().getTime());
|
430 |
+
|
431 |
+
YTPlayer.playerID = 'iframe_' + YTPlayer.id;
|
432 |
+
|
433 |
+
YTPlayer.isAlone = false;
|
434 |
+
YTPlayer.hasFocus = true;
|
435 |
+
YTPlayer.videoID = YTPlayer.opt.videoURL ?
|
436 |
+
getYTPVideoID(YTPlayer.opt.videoURL).videoID : $YTPlayer.attr('href') ?
|
437 |
+
getYTPVideoID($YTPlayer.attr('href')).videoID :
|
438 |
+
false;
|
439 |
+
|
440 |
+
/**
|
441 |
+
Check if it is a video list
|
442 |
+
*/
|
443 |
+
YTPlayer.playlistID = YTPlayer.opt.videoURL ?
|
444 |
+
getYTPVideoID(YTPlayer.opt.videoURL).playlistID : $YTPlayer.attr('href') ?
|
445 |
+
getYTPVideoID($YTPlayer.attr('href')).playlistID :
|
446 |
+
false;
|
447 |
+
|
448 |
+
let start_from_last = 0;
|
449 |
+
if (jQuery.mbCookie.get('YTPlayer_start_from' + YTPlayer.videoID))
|
450 |
+
start_from_last = parseFloat(jQuery.mbCookie.get('YTPlayer_start_from' + YTPlayer.videoID));
|
451 |
+
if (YTPlayer.opt.remember_last_time && start_from_last) {
|
452 |
+
YTPlayer.start_from_last = start_from_last;
|
453 |
+
jQuery.mbCookie.remove('YTPlayer_start_from' + YTPlayer.videoID)
|
454 |
+
}
|
455 |
+
|
456 |
+
YTPlayer.isPlayer = $YTPlayer.is(YTPlayer.opt.containment);
|
457 |
+
YTPlayer.isBackground = YTPlayer.opt.containment.is('body');
|
458 |
+
|
459 |
+
if (YTPlayer.isBackground && ytp.backgroundIsInited)
|
460 |
+
return;
|
461 |
+
|
462 |
+
/**
|
463 |
+
Hide the placeholder if it's not the target of the player
|
464 |
+
*/
|
465 |
+
if (YTPlayer.isPlayer)
|
466 |
+
$YTPlayer.show();
|
467 |
+
|
468 |
+
/**
|
469 |
+
create the overlay
|
470 |
+
*/
|
471 |
+
YTPlayer.overlay = jQuery('<div/>').css({
|
472 |
+
position: 'absolute',
|
473 |
+
top : 0,
|
474 |
+
left : 0,
|
475 |
+
width : '100%',
|
476 |
+
height : '100%'
|
477 |
+
}).addClass('YTPOverlay');
|
478 |
+
|
479 |
+
$YTPlayer.changeCoverImage();
|
480 |
+
/*
|
481 |
+
if (YTPlayer.opt.coverImage || YTPlayer.orig_containment_background) {
|
482 |
+
let bgndURL = YTPlayer.opt.coverImage ? 'url(' + YTPlayer.opt.coverImage + ') center center' : YTPlayer.orig_containment_background
|
483 |
+
if (bgndURL)
|
484 |
+
YTPlayer.opt.containment.css({
|
485 |
+
background : bgndURL,
|
486 |
+
backgroundSize : 'cover',
|
487 |
+
backgroundRepeat: 'no-repeat'
|
488 |
+
})
|
489 |
+
}
|
490 |
+
*/
|
491 |
+
|
492 |
+
/**
|
493 |
+
create the wrapper
|
494 |
+
*/
|
495 |
+
YTPlayer.wrapper = jQuery('<div/>').attr('id', 'wrapper_' + YTPlayer.id).css({
|
496 |
+
position : 'absolute',
|
497 |
+
zIndex : 0,
|
498 |
+
minWidth : '100%',
|
499 |
+
minHeight: '100%',
|
500 |
+
left : 0,
|
501 |
+
top : 0,
|
502 |
+
overflow : 'hidden',
|
503 |
+
opacity : 0
|
504 |
+
}).addClass('mbYTP_wrapper');
|
505 |
+
|
506 |
+
/**
|
507 |
+
If is an inline player toggle play if the overlay is clicked
|
508 |
+
*/
|
509 |
+
if (YTPlayer.isPlayer) {
|
510 |
+
YTPlayer.inlinePlayButton = jQuery('<div/>').addClass('inlinePlayButton').html(jQuery.mbYTPlayer.controls.play);
|
511 |
+
$YTPlayer.append(YTPlayer.inlinePlayButton);
|
512 |
+
YTPlayer.inlinePlayButton.on('click', function (e) {
|
513 |
+
$YTPlayer.YTPPlay();
|
514 |
+
e.stopPropagation()
|
515 |
+
});
|
516 |
+
|
517 |
+
if (YTPlayer.opt.autoPlay)
|
518 |
+
YTPlayer.inlinePlayButton.hide();
|
519 |
+
|
520 |
+
YTPlayer.overlay.on('click', function () {
|
521 |
+
$YTPlayer.YTPTogglePlay()
|
522 |
+
}).css({cursor: 'pointer'})
|
523 |
+
}
|
524 |
+
|
525 |
+
/**
|
526 |
+
create the playerBox where the YT iframe will be placed
|
527 |
+
*/
|
528 |
+
let playerBox = jQuery('<div/>').attr('id', YTPlayer.playerID).addClass('playerBox');
|
529 |
+
playerBox.css({
|
530 |
+
position: 'absolute',
|
531 |
+
zIndex : 0,
|
532 |
+
width : '100%',
|
533 |
+
height : '100%',
|
534 |
+
top : 0,
|
535 |
+
left : 0,
|
536 |
+
overflow: 'hidden',
|
537 |
+
opacity : 1
|
538 |
+
});
|
539 |
+
|
540 |
+
YTPlayer.wrapper.append(playerBox);
|
541 |
+
playerBox.after(YTPlayer.overlay);
|
542 |
+
|
543 |
+
if (YTPlayer.isPlayer) {
|
544 |
+
YTPlayer.inlineWrapper = jQuery('<div/>').addClass('inline-YTPlayer');
|
545 |
+
|
546 |
+
YTPlayer.inlineWrapper.css({
|
547 |
+
position: 'relative',
|
548 |
+
maxWidth: YTPlayer.opt.containment.css('width')
|
549 |
+
});
|
550 |
+
|
551 |
+
YTPlayer.opt.containment.css({
|
552 |
+
position : 'relative',
|
553 |
+
paddingBottom: '56.25%',
|
554 |
+
overflow : 'hidden',
|
555 |
+
height : 0
|
556 |
+
});
|
557 |
+
YTPlayer.opt.containment.wrap(YTPlayer.inlineWrapper)
|
558 |
+
}
|
559 |
+
|
560 |
+
/**
|
561 |
+
Loop all the elements inside the container and check if their position is not "static"
|
562 |
+
*/
|
563 |
+
YTPlayer.opt.containment.children().not('script, style').each(function () {
|
564 |
+
if (jQuery(this).css('position') === 'static')
|
565 |
+
jQuery(this).css('position', 'relative')
|
566 |
+
});
|
567 |
+
|
568 |
+
if (YTPlayer.isBackground) {
|
569 |
+
jQuery('body').css({
|
570 |
+
boxSizing: 'border-box'
|
571 |
+
});
|
572 |
+
|
573 |
+
YTPlayer.wrapper.css({
|
574 |
+
position: 'fixed',
|
575 |
+
top : 0,
|
576 |
+
left : 0,
|
577 |
+
zIndex : 0
|
578 |
+
})
|
579 |
+
|
580 |
+
} else if (YTPlayer.opt.containment.css('position') === 'static') {
|
581 |
+
|
582 |
+
YTPlayer.opt.containment.css({
|
583 |
+
position: 'relative'
|
584 |
+
});
|
585 |
+
$YTPlayer.show()
|
586 |
+
}
|
587 |
+
YTPlayer.opt.containment.prepend(YTPlayer.wrapper);
|
588 |
+
|
589 |
+
if (!YTPlayer.isBackground) {
|
590 |
+
YTPlayer.overlay.on('mouseenter', function () {
|
591 |
+
if (YTPlayer.controlBar && YTPlayer.controlBar.length)
|
592 |
+
YTPlayer.controlBar.addClass('visible')
|
593 |
+
}).on('mouseleave', function () {
|
594 |
+
if (YTPlayer.controlBar && YTPlayer.controlBar.length)
|
595 |
+
YTPlayer.controlBar.removeClass('visible')
|
596 |
+
})
|
597 |
+
}
|
598 |
+
|
599 |
+
if (jQuery.mbBrowser.mobile && !YTPlayer.opt.useOnMobile) {
|
600 |
+
if (YTPlayer.opt.coverImage) {
|
601 |
+
YTPlayer.wrapper.css({
|
602 |
+
backgroundImage : 'url(' + YTPlayer.opt.coverImage + ')',
|
603 |
+
backgroundPosition: 'center center',
|
604 |
+
backgroundSize : 'cover',
|
605 |
+
backgroundRepeat : 'no-repeat',
|
606 |
+
opacity : 1
|
607 |
+
});
|
608 |
+
|
609 |
+
YTPlayer.wrapper.css({opacity: 1})
|
610 |
+
}
|
611 |
+
return $YTPlayer
|
612 |
+
}
|
613 |
+
|
614 |
+
/**
|
615 |
+
If is on device start playing on first touch
|
616 |
+
*/
|
617 |
+
if (jQuery.mbBrowser.mobile && YTPlayer.opt.autoPlay && YTPlayer.opt.useOnMobile)
|
618 |
+
jQuery('body').one('touchstart', function () {
|
619 |
+
YTPlayer.player.playVideo()
|
620 |
+
});
|
621 |
+
|
622 |
+
jQuery(document).one('YTAPIReady', function () {
|
623 |
+
$YTPlayer.trigger('YTAPIReady_' + YTPlayer.id);
|
624 |
+
ytp.YTAPIReady = true
|
625 |
+
});
|
626 |
+
|
627 |
+
YTPlayer.isOnScreen = jQuery.mbYTPlayer.isOnScreen(YTPlayer, YTPlayer.opt.onScreenPercentage);
|
628 |
+
|
629 |
+
$YTPlayer.one('YTAPIReady_' + YTPlayer.id, function () {
|
630 |
+
|
631 |
+
let YTPlayer = this;
|
632 |
+
let $YTPlayer = jQuery(YTPlayer);
|
633 |
+
|
634 |
+
if ((YTPlayer.isBackground && ytp.backgroundIsInited) || YTPlayer.isInit)
|
635 |
+
return;
|
636 |
+
|
637 |
+
if (YTPlayer.isBackground)
|
638 |
+
ytp.backgroundIsInited = true;
|
639 |
+
|
640 |
+
YTPlayer.opt.autoPlay = typeof YTPlayer.opt.autoPlay == 'undefined' ? (!!YTPlayer.isBackground) : YTPlayer.opt.autoPlay;
|
641 |
+
YTPlayer.opt.vol = YTPlayer.opt.vol ? YTPlayer.opt.vol : 100;
|
642 |
+
|
643 |
+
jQuery.mbYTPlayer.getDataFromAPI(YTPlayer);
|
644 |
+
|
645 |
+
jQuery(YTPlayer).on('YTPChanged', function (e) {
|
646 |
+
|
647 |
+
if (YTPlayer.isInit)
|
648 |
+
return;
|
649 |
+
|
650 |
+
YTPlayer.isInit = true;
|
651 |
+
|
652 |
+
/** Initialize the YT player ------------------------------------
|
653 |
+
* Youtube player variables
|
654 |
+
* @type {{modestbranding: number, autoplay: number, controls: number, showinfo: number, rel: number, enablejsapi: number, version: number, playerapiid: string, origin: string, allowfullscreen: boolean, iv_load_policy: (string|*|jQuery.mbYTPlayer.opt.showAnnotations), playsinline: number}}
|
655 |
+
*/
|
656 |
+
let playerVars = {
|
657 |
+
'modestbranding' : 1,
|
658 |
+
'autoplay' : 0,
|
659 |
+
'controls' : 0,
|
660 |
+
'showinfo' : 0,
|
661 |
+
'rel' : 0,
|
662 |
+
'enablejsapi' : 1,
|
663 |
+
'version' : 3,
|
664 |
+
'playerapiid' : YTPlayer.playerID,
|
665 |
+
'origin' : '*',
|
666 |
+
'allowfullscreen': true,
|
667 |
+
'wmode' : 'transparent',
|
668 |
+
'iv_load_policy' : YTPlayer.opt.showAnnotations,
|
669 |
+
'cc_load_policy' : YTPlayer.opt.cc_load_policy,
|
670 |
+
'playsinline' : jQuery.mbBrowser.mobile ? 1 : 0,
|
671 |
+
|
672 |
+
/**
|
673 |
+
Check if the browser can play HTML5 videos
|
674 |
+
*/
|
675 |
+
'html5': document.createElement('video').canPlayType ? 1 : 0
|
676 |
+
};
|
677 |
+
|
678 |
+
new YT.Player(YTPlayer.playerID, {
|
679 |
+
//videoId: YTPlayer.videoID.toString(),
|
680 |
+
playerVars: playerVars,
|
681 |
+
events : {
|
682 |
+
'onReady' : function (event) {
|
683 |
+
|
684 |
+
YTPlayer.player = event.target;
|
685 |
+
|
686 |
+
//todo: make playlist works
|
687 |
+
/* if (YTPlayer.playlistID && YTPlayer.apiKey) {
|
688 |
+
YTPlayer.isList = true;
|
689 |
+
YTPlayer.videos = [];
|
690 |
+
YTPlayer.player.cuePlaylist({
|
691 |
+
listType: 'playlist',
|
692 |
+
list: YTPlayer.playlistID.toString(),
|
693 |
+
startSeconds: YTPlayer.opt.startAt,
|
694 |
+
endSeconds: YTPlayer.opt.stopAt,
|
695 |
+
suggestedQuality: YTPlayer.opt.quality
|
696 |
+
});
|
697 |
+
}
|
698 |
+
else { */
|
699 |
+
|
700 |
+
YTPlayer.player.loadVideoById({
|
701 |
+
videoId : YTPlayer.videoID.toString(),
|
702 |
+
// startSeconds: YTPlayer.start_from_last || YTPlayer.opt.startAt,
|
703 |
+
// endSeconds: YTPlayer.opt.stopAt,
|
704 |
+
suggestedQuality: YTPlayer.opt.quality
|
705 |
+
});
|
706 |
+
|
707 |
+
/*}*/
|
708 |
+
|
709 |
+
$YTPlayer.trigger('YTPlayerIsReady_' + YTPlayer.id)
|
710 |
+
},
|
711 |
+
/**
|
712 |
+
* on State Change
|
713 |
+
* @param event
|
714 |
+
*
|
715 |
+
* -1 (unstarted)
|
716 |
+
* 0 (ended)
|
717 |
+
* 1 (playing)
|
718 |
+
* 2 (paused)
|
719 |
+
* 3 (buffering)
|
720 |
+
* 5 (video cued)
|
721 |
+
*/
|
722 |
+
'onStateChange' : function (event) {
|
723 |
+
|
724 |
+
if (typeof event.target.getPlayerState != 'function')
|
725 |
+
return;
|
726 |
+
|
727 |
+
let state = event.target.getPlayerState();
|
728 |
+
|
729 |
+
if (YTPlayer.preventTrigger || YTPlayer.isStarting) {
|
730 |
+
YTPlayer.preventTrigger = false;
|
731 |
+
return
|
732 |
+
}
|
733 |
+
|
734 |
+
YTPlayer.state = state;
|
735 |
+
// console.debug(YTPlayer.state);
|
736 |
+
|
737 |
+
if (event.data === YT.PlayerState.PLAYING) {
|
738 |
+
// console.debug('YTPlayer.opt.quality', YTPlayer.opt.quality)
|
739 |
+
event.target.setPlaybackQuality(YTPlayer.opt.quality)
|
740 |
+
}
|
741 |
+
|
742 |
+
// console.debug('YTPGetVideoQuality', jQuery(YTPlayer).YTPGetVideoQuality());
|
743 |
+
|
744 |
+
let eventType;
|
745 |
+
switch (state) {
|
746 |
+
|
747 |
+
/** unstarted */
|
748 |
+
case -1:
|
749 |
+
eventType = 'YTPUnstarted';
|
750 |
+
break;
|
751 |
+
|
752 |
+
/** unstarted */
|
753 |
+
case 0:
|
754 |
+
eventType = 'YTPRealEnd';
|
755 |
+
break;
|
756 |
+
|
757 |
+
/** play */
|
758 |
+
case 1:
|
759 |
+
eventType = 'YTPPlay';
|
760 |
+
if (YTPlayer.controlBar.length)
|
761 |
+
YTPlayer.controlBar.find('.mb_YTPPlayPause').html(jQuery.mbYTPlayer.controls.pause);
|
762 |
+
|
763 |
+
if (YTPlayer.isPlayer)
|
764 |
+
YTPlayer.inlinePlayButton.hide();
|
765 |
+
|
766 |
+
jQuery(document).off('mousedown.YTPstart');
|
767 |
+
break;
|
768 |
+
|
769 |
+
/** pause */
|
770 |
+
case 2:
|
771 |
+
eventType = 'YTPPause';
|
772 |
+
if (YTPlayer.controlBar.length)
|
773 |
+
YTPlayer.controlBar.find('.mb_YTPPlayPause').html(jQuery.mbYTPlayer.controls.play);
|
774 |
+
|
775 |
+
if (YTPlayer.isPlayer)
|
776 |
+
YTPlayer.inlinePlayButton.show();
|
777 |
+
break;
|
778 |
+
|
779 |
+
/** buffer */
|
780 |
+
case 3:
|
781 |
+
YTPlayer.player.setPlaybackQuality(YTPlayer.opt.quality);
|
782 |
+
eventType = 'YTPBuffering';
|
783 |
+
if (YTPlayer.controlBar.length)
|
784 |
+
YTPlayer.controlBar.find('.mb_YTPPlayPause').html(jQuery.mbYTPlayer.controls.play);
|
785 |
+
break;
|
786 |
+
|
787 |
+
/** cued */
|
788 |
+
case 5:
|
789 |
+
eventType = 'YTPCued';
|
790 |
+
break;
|
791 |
+
|
792 |
+
default:
|
793 |
+
break
|
794 |
+
}
|
795 |
+
|
796 |
+
/**
|
797 |
+
Trigger state events
|
798 |
+
*/
|
799 |
+
let YTPEvent = jQuery.Event(eventType);
|
800 |
+
YTPEvent.time = YTPlayer.currentTime;
|
801 |
+
jQuery(YTPlayer).trigger(YTPEvent)
|
802 |
+
},
|
803 |
+
/**
|
804 |
+
* onPlaybackQualityChange
|
805 |
+
* @param e
|
806 |
+
*/
|
807 |
+
'onPlaybackQualityChange': function (e) {
|
808 |
+
let quality = e.target.getPlaybackQuality();
|
809 |
+
let YTPQualityChange = jQuery.Event('YTPQualityChange');
|
810 |
+
YTPQualityChange.quality = quality;
|
811 |
+
jQuery(YTPlayer).trigger(YTPQualityChange)
|
812 |
+
},
|
813 |
+
/**
|
814 |
+
* onError
|
815 |
+
* @param err
|
816 |
+
*
|
817 |
+
2 – The request contains an invalid parameter value. For example, this error occurs if you specify a video ID that does not have 11 characters, or if the video ID contains invalid characters, such as exclamation points or asterisks.
|
818 |
+
5 – The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.
|
819 |
+
100 – The video requested was not found. This error occurs when a video has been removed (for any reason) or has been marked as private.
|
820 |
+
101 – The owner of the requested video does not allow it to be played in embedded players.
|
821 |
+
150 – This error is the same as 101. It's just a 101 error in disguise!
|
822 |
+
*/
|
823 |
+
'onError' : function (err) {
|
824 |
+
|
825 |
+
if (typeof YTPlayer.opt.onError == 'function')
|
826 |
+
YTPlayer.opt.onError($YTPlayer, err);
|
827 |
+
|
828 |
+
console.debug("error:", err);
|
829 |
+
|
830 |
+
switch (err.data) {
|
831 |
+
case 2:
|
832 |
+
console.error('video ID:: ' + YTPlayer.videoID + ': The request contains an invalid parameter value. For example, this error occurs if you specify a video ID that does not have 11 characters, or if the video ID contains invalid characters, such as exclamation points or asterisks.');
|
833 |
+
break;
|
834 |
+
case 5:
|
835 |
+
console.error('video ID:: ' + YTPlayer.videoID + ': The requested content cannot be played in an HTML5 player or another error related to the HTML5 player has occurred.');
|
836 |
+
break;
|
837 |
+
case 100:
|
838 |
+
console.error('video ID:: ' + YTPlayer.videoID + ': The video requested was not found. This error occurs when a video has been removed (for any reason) or has been marked as private.');
|
839 |
+
break;
|
840 |
+
case 101:
|
841 |
+
case 150:
|
842 |
+
console.error('video ID:: ' + YTPlayer.videoID + ': The video doesn\'t exist or The owner does not allow it to be played in embedded players.');
|
843 |
+
break
|
844 |
+
}
|
845 |
+
|
846 |
+
if (YTPlayer.isList)
|
847 |
+
jQuery(YTPlayer).YTPPlayNext()
|
848 |
+
|
849 |
+
}
|
850 |
+
}
|
851 |
+
});
|
852 |
+
|
853 |
+
$YTPlayer.on('YTPlayerIsReady_' + YTPlayer.id, function () {
|
854 |
+
|
855 |
+
if (YTPlayer.isReady)
|
856 |
+
return this;
|
857 |
+
|
858 |
+
YTPlayer.playerEl = YTPlayer.player.getIframe();
|
859 |
+
jQuery(YTPlayer.playerEl).unselectable();
|
860 |
+
$YTPlayer.optimizeDisplay();
|
861 |
+
|
862 |
+
/**
|
863 |
+
* Optimize display on resize
|
864 |
+
*/
|
865 |
+
jQuery(window).off('resize.YTP_' + YTPlayer.id).on('resize.YTP_' + YTPlayer.id, function () {
|
866 |
+
$YTPlayer.optimizeDisplay()
|
867 |
+
});
|
868 |
+
|
869 |
+
/**
|
870 |
+
* Optimize display on orientation change
|
871 |
+
*/
|
872 |
+
jQuery(window).off('orientationchange.YTP_' + YTPlayer.id).on('orientationchange.YTP_' + YTPlayer.id, function () {
|
873 |
+
// setTimeout(function (){
|
874 |
+
//console.debug('orientationchange')
|
875 |
+
$YTPlayer.optimizeDisplay()
|
876 |
+
// },1)
|
877 |
+
});
|
878 |
+
|
879 |
+
/**
|
880 |
+
* Set the time of the last visit progress
|
881 |
+
*/
|
882 |
+
if (YTPlayer.opt.remember_last_time) {
|
883 |
+
jQuery(window).on('unload.YTP_' + YTPlayer.id, function () {
|
884 |
+
let current_time = YTPlayer.player.getCurrentTime();
|
885 |
+
jQuery.mbCookie.set('YTPlayer_start_from' + YTPlayer.videoID, current_time, 0)
|
886 |
+
})
|
887 |
+
}
|
888 |
+
|
889 |
+
$YTPlayer.YTPCheckForState()
|
890 |
+
|
891 |
+
})
|
892 |
+
})
|
893 |
+
});
|
894 |
+
|
895 |
+
$YTPlayer.off('YTPTime.mask');
|
896 |
+
jQuery.mbYTPlayer.applyMask(YTPlayer);
|
897 |
+
|
898 |
+
console.timeEnd('YTPlayerInit')
|
899 |
+
})
|
900 |
+
},
|
901 |
+
|
902 |
+
/**
|
903 |
+
*
|
904 |
+
* @param YTPlayer
|
905 |
+
* @param perc
|
906 |
+
* @returns {boolean}
|
907 |
+
*/
|
908 |
+
isOnScreen: function (YTPlayer, perc) {
|
909 |
+
perc = perc || 10;
|
910 |
+
let playerBox = YTPlayer.wrapper;
|
911 |
+
let winTop = jQuery(window).scrollTop();
|
912 |
+
let winBottom = winTop + jQuery(window).height();
|
913 |
+
|
914 |
+
let margin = (playerBox.height() * perc) / 100;
|
915 |
+
let elTop = playerBox.offset().top + margin;
|
916 |
+
let elBottom = playerBox.offset().top + (playerBox.height() - margin);
|
917 |
+
|
918 |
+
return ((elBottom <= winBottom) && (elTop >= winTop))
|
919 |
+
},
|
920 |
+
|
921 |
+
/**
|
922 |
+
* getDataFromAPI
|
923 |
+
* @param YTPlayer
|
924 |
+
*/
|
925 |
+
getDataFromAPI: function (YTPlayer) {
|
926 |
+
|
927 |
+
YTPlayer.videoData = jQuery.mbStorage.get('YTPlayer_data_' + YTPlayer.videoID);
|
928 |
+
if (YTPlayer.videoData) {
|
929 |
+
setTimeout(function () {
|
930 |
+
YTPlayer.dataReceived = true;
|
931 |
+
|
932 |
+
let YTPChanged = jQuery.Event('YTPChanged');
|
933 |
+
YTPChanged.time = YTPlayer.currentTime;
|
934 |
+
YTPChanged.videoId = YTPlayer.videoID;
|
935 |
+
YTPChanged.opt = YTPlayer.opt;
|
936 |
+
|
937 |
+
//console.debug("videoData:",YTPlayer.videoData)
|
938 |
+
|
939 |
+
jQuery(YTPlayer).trigger(YTPChanged);
|
940 |
+
|
941 |
+
let YTPData = jQuery.Event('YTPData');
|
942 |
+
YTPData.prop = {};
|
943 |
+
|
944 |
+
for (let x in YTPlayer.videoData)
|
945 |
+
if (YTPlayer.videoData.hasOwnProperty(x))
|
946 |
+
YTPData.prop[x] = YTPlayer.videoData[x];
|
947 |
+
|
948 |
+
jQuery(YTPlayer).trigger(YTPData)
|
949 |
+
|
950 |
+
}, YTPlayer.opt.fadeOnStartTime);
|
951 |
+
|
952 |
+
YTPlayer.hasData = true
|
953 |
+
|
954 |
+
} else if (jQuery.mbYTPlayer.apiKey) {
|
955 |
+
|
956 |
+
/**
|
957 |
+
* Get video info from API3 (needs api key)
|
958 |
+
* snippet,player,contentDetails,statistics,status
|
959 |
+
*/
|
960 |
+
jQuery.getJSON('https://www.googleapis.com/youtube/v3/videos?id=' + YTPlayer.videoID + '&key=' + jQuery.mbYTPlayer.apiKey + '&part=snippet', function (data) {
|
961 |
+
YTPlayer.dataReceived = true;
|
962 |
+
|
963 |
+
let YTPChanged = jQuery.Event('YTPChanged');
|
964 |
+
YTPChanged.time = YTPlayer.currentTime;
|
965 |
+
YTPChanged.videoId = YTPlayer.videoID;
|
966 |
+
jQuery(YTPlayer).trigger(YTPChanged);
|
967 |
+
|
968 |
+
function parseYTPlayer_data(data) {
|
969 |
+
YTPlayer.videoData = {};
|
970 |
+
YTPlayer.videoData.id = YTPlayer.videoID;
|
971 |
+
YTPlayer.videoData.channelTitle = data.channelTitle;
|
972 |
+
YTPlayer.videoData.title = data.title;
|
973 |
+
YTPlayer.videoData.description = data.description.length < 400 ? data.description : data.description.substring(0, 400) + ' ...';
|
974 |
+
YTPlayer.videoData.thumb_max = data.thumbnails.maxres ? data.thumbnails.maxres.url : null;
|
975 |
+
YTPlayer.videoData.thumb_high = data.thumbnails.high ? data.thumbnails.high.url : null;
|
976 |
+
YTPlayer.videoData.thumb_medium = data.thumbnails.medium ? data.thumbnails.medium.url : null;
|
977 |
+
jQuery.mbStorage.set('YTPlayer_data_' + YTPlayer.videoID, YTPlayer.videoData)
|
978 |
+
}
|
979 |
+
|
980 |
+
if (!data.items[0]) {
|
981 |
+
YTPlayer.videoData = {};
|
982 |
+
YTPlayer.hasData = false
|
983 |
+
} else {
|
984 |
+
parseYTPlayer_data(data.items[0].snippet);
|
985 |
+
YTPlayer.hasData = true
|
986 |
+
}
|
987 |
+
|
988 |
+
let YTPData = jQuery.Event('YTPData');
|
989 |
+
YTPData.prop = {};
|
990 |
+
for (let x in YTPlayer.videoData) YTPData.prop[x] = YTPlayer.videoData[x];
|
991 |
+
jQuery(YTPlayer).trigger(YTPData)
|
992 |
+
})
|
993 |
+
|
994 |
+
} else {
|
995 |
+
|
996 |
+
setTimeout(function () {
|
997 |
+
let YTPChanged = jQuery.Event('YTPChanged');
|
998 |
+
YTPChanged.time = YTPlayer.currentTime;
|
999 |
+
YTPChanged.videoId = YTPlayer.videoID;
|
1000 |
+
jQuery(YTPlayer).trigger(YTPChanged)
|
1001 |
+
}, 10);
|
1002 |
+
YTPlayer.videoData = null
|
1003 |
+
|
1004 |
+
}
|
1005 |
+
|
1006 |
+
YTPlayer.opt.ratio = YTPlayer.opt.ratio == 'auto' ? 16 / 9 : YTPlayer.opt.ratio;
|
1007 |
+
|
1008 |
+
if (YTPlayer.isPlayer && !YTPlayer.opt.autoPlay) { //&& ( !jQuery.mbBrowser.mobile && !jQuery.isTablet )
|
1009 |
+
YTPlayer.loading = jQuery('<div/>').addClass('loading').html('Loading').hide();
|
1010 |
+
jQuery(YTPlayer).append(YTPlayer.loading);
|
1011 |
+
YTPlayer.loading.fadeIn()
|
1012 |
+
}
|
1013 |
+
},
|
1014 |
+
|
1015 |
+
/**
|
1016 |
+
* removeStoredData
|
1017 |
+
*/
|
1018 |
+
removeStoredData: function () {
|
1019 |
+
jQuery.mbStorage.remove()
|
1020 |
+
},
|
1021 |
+
|
1022 |
+
/**
|
1023 |
+
* getVideoData
|
1024 |
+
* @returns {*|YTPlayer.videoData}
|
1025 |
+
*/
|
1026 |
+
getVideoData: function () {
|
1027 |
+
let YTPlayer = this.get(0);
|
1028 |
+
return YTPlayer.videoData
|
1029 |
+
},
|
1030 |
+
|
1031 |
+
/**
|
1032 |
+
* getVideoID
|
1033 |
+
* @returns {*|YTPlayer.videoID|boolean}
|
1034 |
+
*/
|
1035 |
+
getVideoID: function () {
|
1036 |
+
let YTPlayer = this.get(0);
|
1037 |
+
return YTPlayer.videoID || false
|
1038 |
+
},
|
1039 |
+
|
1040 |
+
/**
|
1041 |
+
* getPlaylistID
|
1042 |
+
* @returns {*|YTPlayer.videoID|boolean}
|
1043 |
+
*/
|
1044 |
+
getPlaylistID : function () {
|
1045 |
+
let YTPlayer = this.get(0);
|
1046 |
+
return YTPlayer.playlistID || false
|
1047 |
+
},
|
1048 |
+
/**
|
1049 |
+
* setVideoQuality
|
1050 |
+
* @param quality
|
1051 |
+
* @returns {jQuery.mbYTPlayer}
|
1052 |
+
*/
|
1053 |
+
setVideoQuality: function (quality) {
|
1054 |
+
let YTPlayer = this.get(0);
|
1055 |
+
jQuery(YTPlayer).YTPPause();
|
1056 |
+
YTPlayer.opt.quality = quality;
|
1057 |
+
YTPlayer.player.setPlaybackQuality(quality);
|
1058 |
+
jQuery(YTPlayer).YTPPlay();
|
1059 |
+
return this
|
1060 |
+
},
|
1061 |
+
|
1062 |
+
/**
|
1063 |
+
* getVideoQuality
|
1064 |
+
* @returns {jQuery.mbYTPlayer}
|
1065 |
+
*/
|
1066 |
+
getVideoQuality: function () {
|
1067 |
+
let YTPlayer = this.get(0);
|
1068 |
+
let quality = YTPlayer.player.getPlaybackQuality();
|
1069 |
+
return quality
|
1070 |
+
},
|
1071 |
+
|
1072 |
+
/**
|
1073 |
+
* playlist
|
1074 |
+
* @param videos -> Array or String (videoList ID)
|
1075 |
+
* @param shuffle
|
1076 |
+
* @param callback
|
1077 |
+
* @returns {jQuery.mbYTPlayer}
|
1078 |
+
*
|
1079 |
+
* To retrieve a Youtube playlist the Youtube API key is required:
|
1080 |
+
* https://console.developers.google.com/
|
1081 |
+
* jQuery.mbYTPlayer.apiKey
|
1082 |
+
*/
|
1083 |
+
playlist: function (videos, shuffle, callback) {
|
1084 |
+
|
1085 |
+
let $YTPlayer = this;
|
1086 |
+
let YTPlayer = $YTPlayer.get(0);
|
1087 |
+
|
1088 |
+
/*
|
1089 |
+
if (typeof videos == "String" && jQuery.mbYTPlayer.apiKey != "") {
|
1090 |
+
function getVideoListFromYoutube(playListID, page) {
|
1091 |
+
page = page || '';
|
1092 |
+
let youtubeAPI = "https://www.googleapis.com/youtube/v3/playlistItems";
|
1093 |
+
jQuery.getJSON(youtubeAPI, {
|
1094 |
+
part : "snippet,contentDetails",
|
1095 |
+
playlistId: playListID, //You have to enter the PlaylistID
|
1096 |
+
maxResults: 50,
|
1097 |
+
pageToken : page,
|
1098 |
+
key : jQuery.mbYTPlayer.apiKey //You have to enter your own YoutubeAPIKey
|
1099 |
+
}).done(function (response) {
|
1100 |
+
CreateVideosArray(response);
|
1101 |
+
if (response.nextPageToken) {
|
1102 |
+
page = response.nextPageToken;
|
1103 |
+
getVideoListFromYoutube(plID, page, videos);
|
1104 |
+
} else {
|
1105 |
+
$YTPlayer.YTPlaylist(YTPlayer.videos, shuffle, callback)
|
1106 |
+
}
|
1107 |
+
;
|
1108 |
+
});
|
1109 |
+
};
|
1110 |
+
|
1111 |
+
function CreateVideosArray(response) {
|
1112 |
+
let k = response.items.length;
|
1113 |
+
for (let i = 0; i < k; i++) {
|
1114 |
+
YTPlayer.videos.push({
|
1115 |
+
"videoURL": response.items[i].contentDetails.videoId
|
1116 |
+
});
|
1117 |
+
}
|
1118 |
+
;
|
1119 |
+
};
|
1120 |
+
|
1121 |
+
getVideoListFromYoutube(videos);
|
1122 |
+
return this;
|
1123 |
+
}
|
1124 |
+
*/
|
1125 |
+
|
1126 |
+
YTPlayer.isList = true;
|
1127 |
+
|
1128 |
+
if (shuffle)
|
1129 |
+
videos = jQuery.shuffle(videos);
|
1130 |
+
|
1131 |
+
if (!YTPlayer.videoID) {
|
1132 |
+
YTPlayer.videos = videos;
|
1133 |
+
YTPlayer.videoCounter = 1;
|
1134 |
+
YTPlayer.videoLength = videos.length;
|
1135 |
+
jQuery(YTPlayer).data('property', videos[0]);
|
1136 |
+
jQuery(YTPlayer).YTPlayer()
|
1137 |
+
}
|
1138 |
+
|
1139 |
+
if (typeof callback == 'function')
|
1140 |
+
jQuery(YTPlayer).on('YTPChanged', function () {
|
1141 |
+
callback(YTPlayer)
|
1142 |
+
});
|
1143 |
+
|
1144 |
+
jQuery(YTPlayer).on('YTPEnd', function () {
|
1145 |
+
jQuery(YTPlayer).YTPPlayNext()
|
1146 |
+
});
|
1147 |
+
return this
|
1148 |
+
},
|
1149 |
+
|
1150 |
+
/**
|
1151 |
+
* playNext
|
1152 |
+
* @returns {jQuery.mbYTPlayer}
|
1153 |
+
*/
|
1154 |
+
playNext: function () {
|
1155 |
+
let YTPlayer = this.get(0);
|
1156 |
+
YTPlayer.videoCounter++;
|
1157 |
+
if (YTPlayer.videoCounter > YTPlayer.videoLength)
|
1158 |
+
YTPlayer.videoCounter = 1;
|
1159 |
+
jQuery(YTPlayer).YTPPlayIndex(YTPlayer.videoCounter);
|
1160 |
+
return this
|
1161 |
+
},
|
1162 |
+
|
1163 |
+
/**
|
1164 |
+
* playPrev
|
1165 |
+
* @returns {jQuery.mbYTPlayer}
|
1166 |
+
*/
|
1167 |
+
playPrev: function () {
|
1168 |
+
let YTPlayer = this.get(0);
|
1169 |
+
YTPlayer.videoCounter--;
|
1170 |
+
if (YTPlayer.videoCounter <= 0)
|
1171 |
+
YTPlayer.videoCounter = YTPlayer.videoLength;
|
1172 |
+
jQuery(YTPlayer).YTPPlayIndex(YTPlayer.videoCounter);
|
1173 |
+
return this
|
1174 |
+
},
|
1175 |
+
|
1176 |
+
/**
|
1177 |
+
* playIndex
|
1178 |
+
* @param idx
|
1179 |
+
* @returns {jQuery.mbYTPlayer}
|
1180 |
+
*/
|
1181 |
+
playIndex: function (idx) {
|
1182 |
+
let YTPlayer = this.get(0);
|
1183 |
+
if (YTPlayer.checkForStartAt) {
|
1184 |
+
clearInterval(YTPlayer.checkForStartAt);
|
1185 |
+
clearInterval(YTPlayer.getState)
|
1186 |
+
}
|
1187 |
+
YTPlayer.videoCounter = idx;
|
1188 |
+
|
1189 |
+
if (YTPlayer.videoCounter >= YTPlayer.videoLength)
|
1190 |
+
YTPlayer.videoCounter = YTPlayer.videoLength;
|
1191 |
+
|
1192 |
+
let video = YTPlayer.videos[YTPlayer.videoCounter - 1];
|
1193 |
+
|
1194 |
+
jQuery(YTPlayer).YTPChangeVideo(video);
|
1195 |
+
return this
|
1196 |
+
},
|
1197 |
+
|
1198 |
+
/**
|
1199 |
+
* changeVideo
|
1200 |
+
* @param opt
|
1201 |
+
* @returns {jQuery.mbYTPlayer}
|
1202 |
+
*/
|
1203 |
+
changeVideo: function (opt) {
|
1204 |
+
let $YTPlayer = this;
|
1205 |
+
let YTPlayer = $YTPlayer.get(0);
|
1206 |
+
|
1207 |
+
YTPlayer.opt.startAt = 0;
|
1208 |
+
YTPlayer.opt.stopAt = 0;
|
1209 |
+
YTPlayer.opt.mask = false;
|
1210 |
+
YTPlayer.opt.mute = true;
|
1211 |
+
YTPlayer.opt.autoPlay = true;
|
1212 |
+
YTPlayer.opt.addFilters = false;
|
1213 |
+
YTPlayer.opt.coverImage = false;
|
1214 |
+
|
1215 |
+
YTPlayer.hasData = false;
|
1216 |
+
YTPlayer.hasChanged = true;
|
1217 |
+
|
1218 |
+
YTPlayer.player.loopTime = undefined;
|
1219 |
+
|
1220 |
+
if (opt)
|
1221 |
+
jQuery.extend(YTPlayer.opt, opt);
|
1222 |
+
|
1223 |
+
YTPlayer.videoID = getYTPVideoID(YTPlayer.opt.videoURL).videoID;
|
1224 |
+
|
1225 |
+
if (YTPlayer.opt.loop && typeof YTPlayer.opt.loop == 'boolean')
|
1226 |
+
YTPlayer.opt.loop = 9999;
|
1227 |
+
|
1228 |
+
YTPlayer.wrapper.css({
|
1229 |
+
background: 'none'
|
1230 |
+
});
|
1231 |
+
|
1232 |
+
jQuery(YTPlayer.playerEl).CSSAnimate({
|
1233 |
+
opacity: 0
|
1234 |
+
}, YTPlayer.opt.fadeOnStartTime, function () {
|
1235 |
+
|
1236 |
+
jQuery.mbYTPlayer.getDataFromAPI(YTPlayer);
|
1237 |
+
|
1238 |
+
$YTPlayer.YTPGetPlayer().loadVideoById({
|
1239 |
+
videoId : YTPlayer.videoID,
|
1240 |
+
// startSeconds: YTPlayer.opt.startAt,
|
1241 |
+
// endSeconds: YTPlayer.opt.stopAt,
|
1242 |
+
suggestedQuality: YTPlayer.opt.quality
|
1243 |
+
});
|
1244 |
+
|
1245 |
+
$YTPlayer.YTPPause();
|
1246 |
+
$YTPlayer.optimizeDisplay();
|
1247 |
+
|
1248 |
+
if (YTPlayer.checkForStartAt) {
|
1249 |
+
clearInterval(YTPlayer.checkForStartAt);
|
1250 |
+
clearInterval(YTPlayer.getState)
|
1251 |
+
}
|
1252 |
+
$YTPlayer.YTPCheckForState()
|
1253 |
+
});
|
1254 |
+
|
1255 |
+
let YTPChangeVideo = jQuery.Event('YTPChangeVideo');
|
1256 |
+
YTPChangeVideo.time = YTPlayer.currentTime;
|
1257 |
+
jQuery(YTPlayer).trigger(YTPChangeVideo);
|
1258 |
+
|
1259 |
+
jQuery.mbYTPlayer.applyMask(YTPlayer);
|
1260 |
+
|
1261 |
+
return this
|
1262 |
+
},
|
1263 |
+
|
1264 |
+
/**
|
1265 |
+
* getPlayer
|
1266 |
+
* @returns {player}
|
1267 |
+
*/
|
1268 |
+
getPlayer: function () {
|
1269 |
+
let YTPlayer = this.get(0);
|
1270 |
+
|
1271 |
+
if (!YTPlayer.isReady)
|
1272 |
+
return null;
|
1273 |
+
|
1274 |
+
return YTPlayer.player || null
|
1275 |
+
},
|
1276 |
+
|
1277 |
+
/**
|
1278 |
+
* playerDestroy
|
1279 |
+
* @returns {jQuery.mbYTPlayer}
|
1280 |
+
*/
|
1281 |
+
playerDestroy: function () {
|
1282 |
+
let YTPlayer = this.get(0);
|
1283 |
+
|
1284 |
+
if (!YTPlayer.isReady)
|
1285 |
+
return this;
|
1286 |
+
|
1287 |
+
ytp.YTAPIReady = true;
|
1288 |
+
ytp.backgroundIsInited = false;
|
1289 |
+
YTPlayer.isInit = false;
|
1290 |
+
YTPlayer.videoID = null;
|
1291 |
+
YTPlayer.isReady = false;
|
1292 |
+
YTPlayer.wrapper.remove();
|
1293 |
+
jQuery('#controlBar_' + YTPlayer.id).remove();
|
1294 |
+
clearInterval(YTPlayer.checkForStartAt);
|
1295 |
+
clearInterval(YTPlayer.getState);
|
1296 |
+
return this
|
1297 |
+
},
|
1298 |
+
|
1299 |
+
/**
|
1300 |
+
* fullscreen
|
1301 |
+
* @param real
|
1302 |
+
* @returns {jQuery.mbYTPlayer}
|
1303 |
+
*/
|
1304 |
+
fullscreen: function (real) {
|
1305 |
+
let YTPlayer = this.get(0);
|
1306 |
+
|
1307 |
+
if (typeof real == 'undefined')
|
1308 |
+
real = eval(YTPlayer.opt.realFullscreen);
|
1309 |
+
|
1310 |
+
let controls = jQuery('#controlBar_' + YTPlayer.id);
|
1311 |
+
let fullScreenBtn = controls.find('.mb_OnlyYT');
|
1312 |
+
let videoWrapper = YTPlayer.isPlayer ? YTPlayer.opt.containment : YTPlayer.wrapper;
|
1313 |
+
|
1314 |
+
if (real) {
|
1315 |
+
let fullscreenchange = jQuery.mbBrowser.mozilla ? 'mozfullscreenchange' : jQuery.mbBrowser.webkit ? 'webkitfullscreenchange' : 'fullscreenchange';
|
1316 |
+
jQuery(document).off(fullscreenchange).on(fullscreenchange, function () {
|
1317 |
+
let isFullScreen = RunPrefixMethod(document, 'IsFullScreen') || RunPrefixMethod(document, 'FullScreen');
|
1318 |
+
if (!isFullScreen) {
|
1319 |
+
YTPlayer.isAlone = false;
|
1320 |
+
fullScreenBtn.html(jQuery.mbYTPlayer.controls.onlyYT);
|
1321 |
+
jQuery(YTPlayer).YTPSetVideoQuality(YTPlayer.opt.quality);
|
1322 |
+
videoWrapper.removeClass('YTPFullscreen');
|
1323 |
+
videoWrapper.CSSAnimate({
|
1324 |
+
opacity: YTPlayer.opt.opacity
|
1325 |
+
}, YTPlayer.opt.fadeOnStartTime);
|
1326 |
+
|
1327 |
+
videoWrapper.css({
|
1328 |
+
zIndex: 0
|
1329 |
+
});
|
1330 |
+
|
1331 |
+
if (YTPlayer.isBackground) {
|
1332 |
+
jQuery('body').after(controls)
|
1333 |
+
} else {
|
1334 |
+
YTPlayer.wrapper.before(controls)
|
1335 |
+
}
|
1336 |
+
jQuery(window).resize();
|
1337 |
+
jQuery(YTPlayer).trigger('YTPFullScreenEnd')
|
1338 |
+
|
1339 |
+
} else {
|
1340 |
+
|
1341 |
+
jQuery(YTPlayer).YTPSetVideoQuality('default');
|
1342 |
+
jQuery(YTPlayer).trigger('YTPFullScreenStart')
|
1343 |
+
|
1344 |
+
}
|
1345 |
+
})
|
1346 |
+
}
|
1347 |
+
if (!YTPlayer.isAlone) {
|
1348 |
+
function hideMouse() {
|
1349 |
+
YTPlayer.overlay.css({
|
1350 |
+
cursor: 'none'
|
1351 |
+
})
|
1352 |
+
}
|
1353 |
+
|
1354 |
+
jQuery(document).on('mousemove.YTPlayer', function (e) {
|
1355 |
+
YTPlayer.overlay.css({
|
1356 |
+
cursor: 'auto'
|
1357 |
+
});
|
1358 |
+
clearTimeout(YTPlayer.hideCursor);
|
1359 |
+
if (!jQuery(e.target).parents().is('.mb_YTPBar'))
|
1360 |
+
YTPlayer.hideCursor = setTimeout(hideMouse, 3000)
|
1361 |
+
});
|
1362 |
+
|
1363 |
+
hideMouse();
|
1364 |
+
|
1365 |
+
if (real) {
|
1366 |
+
videoWrapper.css({
|
1367 |
+
opacity: 0
|
1368 |
+
});
|
1369 |
+
videoWrapper.addClass('YTPFullscreen');
|
1370 |
+
launchFullscreen(videoWrapper.get(0));
|
1371 |
+
|
1372 |
+
setTimeout(function () {
|
1373 |
+
videoWrapper.CSSAnimate({
|
1374 |
+
opacity: 1
|
1375 |
+
}, YTPlayer.opt.fadeOnStartTime * 2);
|
1376 |
+
|
1377 |
+
videoWrapper.append(controls);
|
1378 |
+
jQuery(YTPlayer).optimizeDisplay();
|
1379 |
+
YTPlayer.player.seekTo(YTPlayer.player.getCurrentTime() + .1, true)
|
1380 |
+
|
1381 |
+
}, YTPlayer.opt.fadeOnStartTime)
|
1382 |
+
} else
|
1383 |
+
videoWrapper.css({
|
1384 |
+
zIndex: 10000
|
1385 |
+
}).CSSAnimate({
|
1386 |
+
opacity: 1
|
1387 |
+
}, YTPlayer.opt.fadeOnStartTime * 2);
|
1388 |
+
fullScreenBtn.html(jQuery.mbYTPlayer.controls.showSite);
|
1389 |
+
YTPlayer.isAlone = true
|
1390 |
+
} else {
|
1391 |
+
jQuery(document).off('mousemove.YTPlayer');
|
1392 |
+
clearTimeout(YTPlayer.hideCursor);
|
1393 |
+
YTPlayer.overlay.css({
|
1394 |
+
cursor: 'auto'
|
1395 |
+
});
|
1396 |
+
if (real) {
|
1397 |
+
cancelFullscreen()
|
1398 |
+
} else {
|
1399 |
+
videoWrapper.CSSAnimate({
|
1400 |
+
opacity: YTPlayer.opt.opacity
|
1401 |
+
}, YTPlayer.opt.fadeOnStartTime);
|
1402 |
+
videoWrapper.css({
|
1403 |
+
zIndex: 0
|
1404 |
+
})
|
1405 |
+
}
|
1406 |
+
fullScreenBtn.html(jQuery.mbYTPlayer.controls.onlyYT);
|
1407 |
+
YTPlayer.isAlone = false
|
1408 |
+
}
|
1409 |
+
|
1410 |
+
function RunPrefixMethod(obj, method) {
|
1411 |
+
let pfx = ['webkit', 'moz', 'ms', 'o', ''];
|
1412 |
+
let p = 0,
|
1413 |
+
m, t;
|
1414 |
+
while (p < pfx.length && !obj[m]) {
|
1415 |
+
m = method;
|
1416 |
+
if (pfx[p] == '') {
|
1417 |
+
m = m.substr(0, 1).toLowerCase() + m.substr(1)
|
1418 |
+
}
|
1419 |
+
m = pfx[p] + m;
|
1420 |
+
t = typeof obj[m];
|
1421 |
+
if (t != 'undefined') {
|
1422 |
+
pfx = [pfx[p]];
|
1423 |
+
return (t == 'function' ? obj[m]() : obj[m])
|
1424 |
+
}
|
1425 |
+
p++
|
1426 |
+
}
|
1427 |
+
}
|
1428 |
+
|
1429 |
+
function launchFullscreen(element) {
|
1430 |
+
RunPrefixMethod(element, 'RequestFullScreen')
|
1431 |
+
}
|
1432 |
+
|
1433 |
+
function cancelFullscreen() {
|
1434 |
+
if (RunPrefixMethod(document, 'FullScreen') || RunPrefixMethod(document, 'IsFullScreen')) {
|
1435 |
+
RunPrefixMethod(document, 'CancelFullScreen')
|
1436 |
+
}
|
1437 |
+
}
|
1438 |
+
|
1439 |
+
return this
|
1440 |
+
},
|
1441 |
+
|
1442 |
+
/**
|
1443 |
+
* toggleLoops
|
1444 |
+
* @returns {jQuery.mbYTPlayer}
|
1445 |
+
*/
|
1446 |
+
toggleLoops: function () {
|
1447 |
+
let YTPlayer = this.get(0);
|
1448 |
+
let data = YTPlayer.opt;
|
1449 |
+
if (data.loop == 1) {
|
1450 |
+
data.loop = 0
|
1451 |
+
} else {
|
1452 |
+
if (data.startAt) {
|
1453 |
+
YTPlayer.player.seekTo(data.startAt)
|
1454 |
+
} else {
|
1455 |
+
YTPlayer.player.playVideo()
|
1456 |
+
}
|
1457 |
+
data.loop = 1
|
1458 |
+
}
|
1459 |
+
return this
|
1460 |
+
},
|
1461 |
+
|
1462 |
+
/**
|
1463 |
+
* play
|
1464 |
+
* @returns {jQuery.mbYTPlayer}
|
1465 |
+
*/
|
1466 |
+
play: function () {
|
1467 |
+
let YTPlayer = this.get(0);
|
1468 |
+
let $YTPlayer = jQuery(YTPlayer);
|
1469 |
+
|
1470 |
+
if (!YTPlayer.isReady)
|
1471 |
+
return this;
|
1472 |
+
|
1473 |
+
setTimeout(function () {
|
1474 |
+
$YTPlayer.YTPSetAbundance(YTPlayer.opt.abundance)
|
1475 |
+
}, 300);
|
1476 |
+
|
1477 |
+
YTPlayer.player.playVideo();
|
1478 |
+
|
1479 |
+
jQuery(YTPlayer.playerEl).css({
|
1480 |
+
opacity: 1
|
1481 |
+
});
|
1482 |
+
|
1483 |
+
YTPlayer.wrapper.css({
|
1484 |
+
backgroundImage: 'none'
|
1485 |
+
});
|
1486 |
+
|
1487 |
+
YTPlayer.wrapper.CSSAnimate({
|
1488 |
+
opacity: YTPlayer.isAlone ? 1 : YTPlayer.opt.opacity
|
1489 |
+
}, YTPlayer.opt.fadeOnStartTime);
|
1490 |
+
|
1491 |
+
let controls = jQuery('#controlBar_' + YTPlayer.id);
|
1492 |
+
let playBtn = controls.find('.mb_YTPPlayPause');
|
1493 |
+
playBtn.html(jQuery.mbYTPlayer.controls.pause);
|
1494 |
+
YTPlayer.state = 1;
|
1495 |
+
|
1496 |
+
return this
|
1497 |
+
},
|
1498 |
+
|
1499 |
+
/**
|
1500 |
+
* togglePlay
|
1501 |
+
* @param callback
|
1502 |
+
* @returns {jQuery.mbYTPlayer}
|
1503 |
+
*/
|
1504 |
+
togglePlay: function (callback) {
|
1505 |
+
let YTPlayer = this.get(0);
|
1506 |
+
|
1507 |
+
if (!YTPlayer.isReady)
|
1508 |
+
return this;
|
1509 |
+
|
1510 |
+
if (YTPlayer.state == 1)
|
1511 |
+
this.YTPPause();
|
1512 |
+
else
|
1513 |
+
this.YTPPlay();
|
1514 |
+
|
1515 |
+
if (typeof callback == 'function')
|
1516 |
+
callback(YTPlayer.state);
|
1517 |
+
|
1518 |
+
return this
|
1519 |
+
},
|
1520 |
+
|
1521 |
+
/**
|
1522 |
+
* stop
|
1523 |
+
* @returns {jQuery.mbYTPlayer}
|
1524 |
+
*/
|
1525 |
+
stop: function () {
|
1526 |
+
let YTPlayer = this.get(0);
|
1527 |
+
|
1528 |
+
if (!YTPlayer.isReady)
|
1529 |
+
return this;
|
1530 |
+
|
1531 |
+
let controls = jQuery('#controlBar_' + YTPlayer.id);
|
1532 |
+
let playBtn = controls.find('.mb_YTPPlayPause');
|
1533 |
+
playBtn.html(jQuery.mbYTPlayer.controls.play);
|
1534 |
+
YTPlayer.player.stopVideo();
|
1535 |
+
return this
|
1536 |
+
},
|
1537 |
+
|
1538 |
+
/**
|
1539 |
+
* pause
|
1540 |
+
* @returns {jQuery.mbYTPlayer}
|
1541 |
+
*/
|
1542 |
+
pause: function () {
|
1543 |
+
let YTPlayer = this.get(0);
|
1544 |
+
|
1545 |
+
if (!YTPlayer.isReady)
|
1546 |
+
return this;
|
1547 |
+
|
1548 |
+
if (YTPlayer.opt.abundance < .2)
|
1549 |
+
this.YTPSetAbundance(.2);
|
1550 |
+
|
1551 |
+
YTPlayer.player.pauseVideo();
|
1552 |
+
YTPlayer.state = 2;
|
1553 |
+
return this
|
1554 |
+
},
|
1555 |
+
|
1556 |
+
/**
|
1557 |
+
* seekTo
|
1558 |
+
* @param sec
|
1559 |
+
* @returns {jQuery.mbYTPlayer}
|
1560 |
+
*/
|
1561 |
+
seekTo: function (sec) {
|
1562 |
+
let YTPlayer = this.get(0);
|
1563 |
+
|
1564 |
+
if (!YTPlayer.isReady)
|
1565 |
+
return this;
|
1566 |
+
|
1567 |
+
YTPlayer.player.seekTo(sec, true);
|
1568 |
+
return this
|
1569 |
+
},
|
1570 |
+
|
1571 |
+
/**
|
1572 |
+
*
|
1573 |
+
* @returns {*}
|
1574 |
+
*/
|
1575 |
+
getPlaybackRate: function () {
|
1576 |
+
let YTPlayer = this.get(0);
|
1577 |
+
|
1578 |
+
if (!YTPlayer.isReady)
|
1579 |
+
return this;
|
1580 |
+
|
1581 |
+
return YTPlayer.player.getPlaybackRate()
|
1582 |
+
},
|
1583 |
+
|
1584 |
+
/**
|
1585 |
+
* setPlaybackRate
|
1586 |
+
* @param val:Number
|
1587 |
+
* 0.25, 0.5, 1, 1.5, 2
|
1588 |
+
* @returns {jQuery.mbYTPlayer}
|
1589 |
+
*/
|
1590 |
+
setPlaybackRate: function (val) {
|
1591 |
+
let YTPlayer = this.get(0);
|
1592 |
+
|
1593 |
+
if (!YTPlayer.isReady)
|
1594 |
+
return this;
|
1595 |
+
|
1596 |
+
YTPlayer.player.setPlaybackRate(val);
|
1597 |
+
return this
|
1598 |
+
},
|
1599 |
+
|
1600 |
+
/**
|
1601 |
+
* setVolume
|
1602 |
+
* @param val
|
1603 |
+
* @returns {jQuery.mbYTPlayer}
|
1604 |
+
*/
|
1605 |
+
setVolume: function (val) {
|
1606 |
+
let YTPlayer = this.get(0);
|
1607 |
+
|
1608 |
+
if (!YTPlayer.isReady)
|
1609 |
+
return this;
|
1610 |
+
|
1611 |
+
YTPlayer.opt.vol = val;
|
1612 |
+
this.YTPUnmute();
|
1613 |
+
YTPlayer.player.setVolume(YTPlayer.opt.vol);
|
1614 |
+
|
1615 |
+
if (YTPlayer.volumeBar && YTPlayer.volumeBar.length)
|
1616 |
+
YTPlayer.volumeBar.updateSliderVal(val);
|
1617 |
+
|
1618 |
+
return this
|
1619 |
+
},
|
1620 |
+
/**
|
1621 |
+
* getVolume
|
1622 |
+
* @returns {*}
|
1623 |
+
*/
|
1624 |
+
getVolume: function () {
|
1625 |
+
let YTPlayer = this.get(0);
|
1626 |
+
|
1627 |
+
if (!YTPlayer.isReady)
|
1628 |
+
return this;
|
1629 |
+
|
1630 |
+
return YTPlayer.player.getVolume()
|
1631 |
+
},
|
1632 |
+
|
1633 |
+
/**
|
1634 |
+
* toggleVolume
|
1635 |
+
* @returns {jQuery.mbYTPlayer}
|
1636 |
+
*/
|
1637 |
+
toggleVolume: function () {
|
1638 |
+
|
1639 |
+
let YTPlayer = this.get(0);
|
1640 |
+
|
1641 |
+
if (!YTPlayer.isReady)
|
1642 |
+
return this;
|
1643 |
+
|
1644 |
+
if (YTPlayer.isMute) {
|
1645 |
+
if (!jQuery.mbBrowser.mobile)
|
1646 |
+
this.YTPSetVolume(YTPlayer.opt.vol);
|
1647 |
+
this.YTPUnmute()
|
1648 |
+
} else {
|
1649 |
+
this.YTPMute()
|
1650 |
+
}
|
1651 |
+
return this
|
1652 |
+
},
|
1653 |
+
|
1654 |
+
/**
|
1655 |
+
* mute
|
1656 |
+
* @returns {jQuery.mbYTPlayer}
|
1657 |
+
*/
|
1658 |
+
mute: function () {
|
1659 |
+
let YTPlayer = this.get(0);
|
1660 |
+
|
1661 |
+
if (!YTPlayer.isReady)
|
1662 |
+
return this;
|
1663 |
+
|
1664 |
+
if (YTPlayer.isMute)
|
1665 |
+
return this;
|
1666 |
+
YTPlayer.player.mute();
|
1667 |
+
YTPlayer.isMute = true;
|
1668 |
+
YTPlayer.player.setVolume(0);
|
1669 |
+
if (YTPlayer.volumeBar && YTPlayer.volumeBar.length && YTPlayer.volumeBar.width() > 10) {
|
1670 |
+
YTPlayer.volumeBar.updateSliderVal(0)
|
1671 |
+
}
|
1672 |
+
let controls = jQuery('#controlBar_' + YTPlayer.id);
|
1673 |
+
let muteBtn = controls.find('.mb_YTPMuteUnmute');
|
1674 |
+
muteBtn.html(jQuery.mbYTPlayer.controls.unmute);
|
1675 |
+
jQuery(YTPlayer).addClass('isMuted');
|
1676 |
+
if (YTPlayer.volumeBar && YTPlayer.volumeBar.length) YTPlayer.volumeBar.addClass('muted');
|
1677 |
+
let YTPEvent = jQuery.Event('YTPMuted');
|
1678 |
+
YTPEvent.time = YTPlayer.currentTime;
|
1679 |
+
|
1680 |
+
if (!YTPlayer.preventTrigger)
|
1681 |
+
jQuery(YTPlayer).trigger(YTPEvent);
|
1682 |
+
|
1683 |
+
return this
|
1684 |
+
},
|
1685 |
+
|
1686 |
+
/**
|
1687 |
+
* unmute
|
1688 |
+
* @returns {jQuery.mbYTPlayer}
|
1689 |
+
*/
|
1690 |
+
unmute: function () {
|
1691 |
+
let YTPlayer = this.get(0);
|
1692 |
+
|
1693 |
+
if (!YTPlayer.isReady)
|
1694 |
+
return this;
|
1695 |
+
|
1696 |
+
// console.debug("unmute::", YTPlayer.isMute,"Vol::", YTPlayer.opt.vol)
|
1697 |
+
|
1698 |
+
if (!YTPlayer.isMute)
|
1699 |
+
return this;
|
1700 |
+
|
1701 |
+
YTPlayer.player.unMute();
|
1702 |
+
YTPlayer.isMute = false;
|
1703 |
+
jQuery(YTPlayer).YTPSetVolume(YTPlayer.opt.vol);
|
1704 |
+
if (YTPlayer.volumeBar && YTPlayer.volumeBar.length)
|
1705 |
+
YTPlayer.volumeBar.updateSliderVal(YTPlayer.opt.vol > 10 ? YTPlayer.opt.vol : 10);
|
1706 |
+
let controls = jQuery('#controlBar_' + YTPlayer.id);
|
1707 |
+
let muteBtn = controls.find('.mb_YTPMuteUnmute');
|
1708 |
+
muteBtn.html(jQuery.mbYTPlayer.controls.mute);
|
1709 |
+
jQuery(YTPlayer).removeClass('isMuted');
|
1710 |
+
if (YTPlayer.volumeBar && YTPlayer.volumeBar.length)
|
1711 |
+
YTPlayer.volumeBar.removeClass('muted');
|
1712 |
+
let YTPEvent = jQuery.Event('YTPUnmuted');
|
1713 |
+
YTPEvent.time = YTPlayer.currentTime;
|
1714 |
+
|
1715 |
+
if (!YTPlayer.preventTrigger)
|
1716 |
+
jQuery(YTPlayer).trigger(YTPEvent);
|
1717 |
+
|
1718 |
+
return this
|
1719 |
+
},
|
1720 |
+
|
1721 |
+
/* FILTERS ---------------------------------------------------------------------------------------------------------*/
|
1722 |
+
|
1723 |
+
/**
|
1724 |
+
* applyFilter
|
1725 |
+
* @param filter
|
1726 |
+
* @param value
|
1727 |
+
* @returns {jQuery.mbYTPlayer}
|
1728 |
+
*/
|
1729 |
+
applyFilter: function (filter, value) {
|
1730 |
+
let $YTPlayer = this;
|
1731 |
+
let YTPlayer = $YTPlayer.get(0);
|
1732 |
+
|
1733 |
+
if (!YTPlayer.isReady)
|
1734 |
+
return this;
|
1735 |
+
|
1736 |
+
YTPlayer.filters[filter].value = value;
|
1737 |
+
if (YTPlayer.filtersEnabled)
|
1738 |
+
$YTPlayer.YTPEnableFilters()
|
1739 |
+
},
|
1740 |
+
|
1741 |
+
/**
|
1742 |
+
* applyFilters
|
1743 |
+
* @param filters
|
1744 |
+
* @returns {jQuery.mbYTPlayer}
|
1745 |
+
*/
|
1746 |
+
applyFilters: function (filters) {
|
1747 |
+
let $YTPlayer = this;
|
1748 |
+
let YTPlayer = $YTPlayer.get(0);
|
1749 |
+
|
1750 |
+
if (!YTPlayer.isReady) {
|
1751 |
+
jQuery(YTPlayer).on('YTPReady', function () {
|
1752 |
+
$YTPlayer.YTPApplyFilters(filters)
|
1753 |
+
});
|
1754 |
+
return this
|
1755 |
+
}
|
1756 |
+
|
1757 |
+
for (let key in filters) {
|
1758 |
+
$YTPlayer.YTPApplyFilter(key, filters[key])
|
1759 |
+
}
|
1760 |
+
|
1761 |
+
$YTPlayer.trigger('YTPFiltersApplied')
|
1762 |
+
},
|
1763 |
+
|
1764 |
+
/**
|
1765 |
+
* toggleFilter
|
1766 |
+
* @param filter
|
1767 |
+
* @param value
|
1768 |
+
* @returns {jQuery.mbYTPlayer}
|
1769 |
+
*/
|
1770 |
+
toggleFilter: function (filter, value) {
|
1771 |
+
let $YTPlayer = this;
|
1772 |
+
let YTPlayer = $YTPlayer.get(0);
|
1773 |
+
|
1774 |
+
if (!YTPlayer.isReady)
|
1775 |
+
return this;
|
1776 |
+
|
1777 |
+
if (!YTPlayer.filters[filter].value)
|
1778 |
+
YTPlayer.filters[filter].value = value;
|
1779 |
+
else
|
1780 |
+
YTPlayer.filters[filter].value = 0;
|
1781 |
+
|
1782 |
+
if (YTPlayer.filtersEnabled)
|
1783 |
+
jQuery(YTPlayer).YTPEnableFilters();
|
1784 |
+
|
1785 |
+
return this
|
1786 |
+
},
|
1787 |
+
|
1788 |
+
/**
|
1789 |
+
* toggleFilters
|
1790 |
+
* @param callback
|
1791 |
+
* @returns {jQuery.mbYTPlayer}
|
1792 |
+
*/
|
1793 |
+
toggleFilters: function (callback) {
|
1794 |
+
let $YTPlayer = this;
|
1795 |
+
let YTPlayer = $YTPlayer.get(0);
|
1796 |
+
|
1797 |
+
if (!YTPlayer.isReady)
|
1798 |
+
return this;
|
1799 |
+
|
1800 |
+
if (YTPlayer.filtersEnabled) {
|
1801 |
+
jQuery(YTPlayer).trigger('YTPDisableFilters');
|
1802 |
+
jQuery(YTPlayer).YTPDisableFilters()
|
1803 |
+
} else {
|
1804 |
+
jQuery(YTPlayer).YTPEnableFilters();
|
1805 |
+
jQuery(YTPlayer).trigger('YTPEnableFilters')
|
1806 |
+
}
|
1807 |
+
if (typeof callback == 'function')
|
1808 |
+
callback(YTPlayer.filtersEnabled);
|
1809 |
+
|
1810 |
+
return this
|
1811 |
+
},
|
1812 |
+
|
1813 |
+
/**
|
1814 |
+
* disableFilters
|
1815 |
+
* @returns {jQuery.mbYTPlayer}
|
1816 |
+
*/
|
1817 |
+
disableFilters: function () {
|
1818 |
+
let $YTPlayer = this;
|
1819 |
+
let YTPlayer = $YTPlayer.get(0);
|
1820 |
+
|
1821 |
+
if (!YTPlayer.isReady)
|
1822 |
+
return this;
|
1823 |
+
|
1824 |
+
let iframe = jQuery(YTPlayer.playerEl);
|
1825 |
+
iframe.css('-webkit-filter', '');
|
1826 |
+
iframe.css('filter', '');
|
1827 |
+
YTPlayer.filtersEnabled = false;
|
1828 |
+
|
1829 |
+
return this
|
1830 |
+
},
|
1831 |
+
|
1832 |
+
/**
|
1833 |
+
* enableFilters
|
1834 |
+
* @returns {jQuery.mbYTPlayer}
|
1835 |
+
*/
|
1836 |
+
enableFilters: function () {
|
1837 |
+
let $YTPlayer = this;
|
1838 |
+
let YTPlayer = $YTPlayer.get(0);
|
1839 |
+
|
1840 |
+
if (!YTPlayer.isReady)
|
1841 |
+
return this;
|
1842 |
+
|
1843 |
+
let iframe = jQuery(YTPlayer.playerEl);
|
1844 |
+
let filterStyle = '';
|
1845 |
+
for (let key in YTPlayer.filters) {
|
1846 |
+
if (YTPlayer.filters[key].value)
|
1847 |
+
filterStyle += key.replace('_', '-') + '(' + YTPlayer.filters[key].value + YTPlayer.filters[key].unit + ') '
|
1848 |
+
}
|
1849 |
+
iframe.css('-webkit-filter', filterStyle);
|
1850 |
+
iframe.css('filter', filterStyle);
|
1851 |
+
YTPlayer.filtersEnabled = true;
|
1852 |
+
|
1853 |
+
return this
|
1854 |
+
},
|
1855 |
+
|
1856 |
+
/**
|
1857 |
+
* removeFilter
|
1858 |
+
* @param filter
|
1859 |
+
* @param callback
|
1860 |
+
* @returns {jQuery.mbYTPlayer}
|
1861 |
+
*/
|
1862 |
+
removeFilter: function (filter, callback) {
|
1863 |
+
let $YTPlayer = this;
|
1864 |
+
let YTPlayer = $YTPlayer.get(0);
|
1865 |
+
|
1866 |
+
if (!YTPlayer.isReady)
|
1867 |
+
return this;
|
1868 |
+
|
1869 |
+
if (typeof filter == 'function') {
|
1870 |
+
callback = filter;
|
1871 |
+
filter = null
|
1872 |
+
}
|
1873 |
+
|
1874 |
+
if (!filter) {
|
1875 |
+
for (let key in YTPlayer.filters) {
|
1876 |
+
if (YTPlayer.filters.hasOwnProperty(key)) {
|
1877 |
+
$YTPlayer.YTPApplyFilter(key, 0);
|
1878 |
+
if (typeof callback == 'function')
|
1879 |
+
callback(key);
|
1880 |
+
}
|
1881 |
+
}
|
1882 |
+
|
1883 |
+
YTPlayer.filters = jQuery.extend(true, {}, jQuery.mbYTPlayer.defaultFilters)
|
1884 |
+
|
1885 |
+
} else {
|
1886 |
+
$YTPlayer.YTPApplyFilter(filter, 0);
|
1887 |
+
if (typeof callback == 'function') callback(filter)
|
1888 |
+
}
|
1889 |
+
|
1890 |
+
let YTPEvent = jQuery.Event('YTPFiltersApplied');
|
1891 |
+
$YTPlayer.trigger(YTPEvent);
|
1892 |
+
|
1893 |
+
return this
|
1894 |
+
},
|
1895 |
+
|
1896 |
+
/**
|
1897 |
+
* getFilters
|
1898 |
+
* @returns {filters}
|
1899 |
+
*/
|
1900 |
+
getFilters: function () {
|
1901 |
+
let YTPlayer = this.get(0);
|
1902 |
+
|
1903 |
+
if (!YTPlayer.isReady)
|
1904 |
+
return this;
|
1905 |
+
|
1906 |
+
return YTPlayer.filters
|
1907 |
+
},
|
1908 |
+
|
1909 |
+
/* MASK ---------------------------------------------------------------------------------------------------------*/
|
1910 |
+
|
1911 |
+
/**
|
1912 |
+
* addMask
|
1913 |
+
* @param mask
|
1914 |
+
* @returns {jQuery.mbYTPlayer}
|
1915 |
+
*/
|
1916 |
+
addMask: function (mask) {
|
1917 |
+
let YTPlayer = this.get(0);
|
1918 |
+
|
1919 |
+
/*
|
1920 |
+
if (!YTPlayer.isReady)
|
1921 |
+
return this;
|
1922 |
+
*/
|
1923 |
+
|
1924 |
+
if (!mask)
|
1925 |
+
mask = YTPlayer.actualMask;
|
1926 |
+
|
1927 |
+
let tempImg = jQuery('<img/>').attr('src', mask).on('load', function () {
|
1928 |
+
YTPlayer.overlay.CSSAnimate({
|
1929 |
+
opacity: 0
|
1930 |
+
}, YTPlayer.opt.fadeOnStartTime, function () {
|
1931 |
+
YTPlayer.hasMask = true;
|
1932 |
+
tempImg.remove();
|
1933 |
+
YTPlayer.overlay.css({
|
1934 |
+
backgroundImage : 'url(' + mask + ')',
|
1935 |
+
backgroundRepeat : 'no-repeat',
|
1936 |
+
backgroundPosition: 'center center',
|
1937 |
+
backgroundSize : 'cover'
|
1938 |
+
});
|
1939 |
+
YTPlayer.overlay.CSSAnimate({
|
1940 |
+
opacity: 1
|
1941 |
+
}, YTPlayer.opt.fadeOnStartTime)
|
1942 |
+
})
|
1943 |
+
});
|
1944 |
+
|
1945 |
+
return this
|
1946 |
+
},
|
1947 |
+
|
1948 |
+
/**
|
1949 |
+
* removeMask
|
1950 |
+
* @returns {jQuery.mbYTPlayer}
|
1951 |
+
*/
|
1952 |
+
removeMask: function () {
|
1953 |
+
let YTPlayer = this.get(0);
|
1954 |
+
|
1955 |
+
/*
|
1956 |
+
if (!YTPlayer.isReady)
|
1957 |
+
return this;
|
1958 |
+
*/
|
1959 |
+
|
1960 |
+
YTPlayer.overlay.CSSAnimate({
|
1961 |
+
opacity: 0
|
1962 |
+
}, YTPlayer.opt.fadeOnStartTime, function () {
|
1963 |
+
YTPlayer.hasMask = false;
|
1964 |
+
YTPlayer.overlay.css({
|
1965 |
+
backgroundImage : '',
|
1966 |
+
backgroundRepeat : '',
|
1967 |
+
backgroundPosition: '',
|
1968 |
+
backgroundSize : ''
|
1969 |
+
});
|
1970 |
+
YTPlayer.overlay.CSSAnimate({
|
1971 |
+
opacity: 1
|
1972 |
+
}, YTPlayer.opt.fadeOnStartTime)
|
1973 |
+
});
|
1974 |
+
|
1975 |
+
return this
|
1976 |
+
},
|
1977 |
+
|
1978 |
+
/**
|
1979 |
+
* Apply mask
|
1980 |
+
* @param YTPlayer
|
1981 |
+
*/
|
1982 |
+
applyMask: function (YTPlayer) {
|
1983 |
+
let $YTPlayer = jQuery(YTPlayer);
|
1984 |
+
|
1985 |
+
/*
|
1986 |
+
if (!YTPlayer.isReady)
|
1987 |
+
return this;
|
1988 |
+
*/
|
1989 |
+
|
1990 |
+
$YTPlayer.off('YTPTime.mask');
|
1991 |
+
|
1992 |
+
if (YTPlayer.opt.mask) {
|
1993 |
+
if (typeof YTPlayer.opt.mask == 'string') {
|
1994 |
+
|
1995 |
+
$YTPlayer.YTPAddMask(YTPlayer.opt.mask);
|
1996 |
+
YTPlayer.actualMask = YTPlayer.opt.mask
|
1997 |
+
|
1998 |
+
} else if (typeof YTPlayer.opt.mask == 'object') {
|
1999 |
+
|
2000 |
+
//console.debug(YTPlayer.opt.mask)
|
2001 |
+
|
2002 |
+
for (let time in YTPlayer.opt.mask) {
|
2003 |
+
|
2004 |
+
if (YTPlayer.opt.mask[time])
|
2005 |
+
img = jQuery('<img/>').attr('src', YTPlayer.opt.mask[time])
|
2006 |
+
|
2007 |
+
}
|
2008 |
+
|
2009 |
+
if (YTPlayer.opt.mask[0])
|
2010 |
+
$YTPlayer.YTPAddMask(YTPlayer.opt.mask[0]);
|
2011 |
+
|
2012 |
+
$YTPlayer.on('YTPTime.mask', function (e) {
|
2013 |
+
|
2014 |
+
for (let time in YTPlayer.opt.mask) {
|
2015 |
+
if (e.time == time)
|
2016 |
+
if (!YTPlayer.opt.mask[time]) {
|
2017 |
+
$YTPlayer.YTPRemoveMask()
|
2018 |
+
} else {
|
2019 |
+
$YTPlayer.YTPAddMask(YTPlayer.opt.mask[time]);
|
2020 |
+
YTPlayer.actualMask = YTPlayer.opt.mask[time]
|
2021 |
+
}
|
2022 |
+
}
|
2023 |
+
})
|
2024 |
+
}
|
2025 |
+
}
|
2026 |
+
},
|
2027 |
+
|
2028 |
+
/**
|
2029 |
+
* toggleMask
|
2030 |
+
* @returns {jQuery.mbYTPlayer}
|
2031 |
+
*/
|
2032 |
+
toggleMask: function () {
|
2033 |
+
let YTPlayer = this.get(0);
|
2034 |
+
|
2035 |
+
/*
|
2036 |
+
if (!YTPlayer.isReady)
|
2037 |
+
return this;
|
2038 |
+
*/
|
2039 |
+
|
2040 |
+
let $YTPlayer = jQuery(YTPlayer);
|
2041 |
+
if (YTPlayer.hasMask)
|
2042 |
+
$YTPlayer.YTPRemoveMask();
|
2043 |
+
else
|
2044 |
+
$YTPlayer.YTPAddMask();
|
2045 |
+
return this
|
2046 |
+
},
|
2047 |
+
|
2048 |
+
/* CONTROLS --------------------------------------------------------------------------------------------------------*/
|
2049 |
+
|
2050 |
+
/**
|
2051 |
+
* manageProgress
|
2052 |
+
* @returns {{totalTime: number, currentTime: number}}
|
2053 |
+
*/
|
2054 |
+
manageProgress: function () {
|
2055 |
+
let YTPlayer = this.get(0);
|
2056 |
+
let controls = jQuery('#controlBar_' + YTPlayer.id);
|
2057 |
+
let progressBar = controls.find('.mb_YTPProgress');
|
2058 |
+
let loadedBar = controls.find('.mb_YTPLoaded');
|
2059 |
+
let timeBar = controls.find('.mb_YTPseekbar');
|
2060 |
+
let totW = progressBar.outerWidth();
|
2061 |
+
let currentTime = Math.floor(YTPlayer.player.getCurrentTime());
|
2062 |
+
let totalTime = Math.floor(YTPlayer.player.getDuration());
|
2063 |
+
let timeW = (currentTime * totW) / totalTime;
|
2064 |
+
let startLeft = 0;
|
2065 |
+
let loadedW = YTPlayer.player.getVideoLoadedFraction() * 100;
|
2066 |
+
loadedBar.css({
|
2067 |
+
left : startLeft,
|
2068 |
+
width: loadedW + '%'
|
2069 |
+
});
|
2070 |
+
timeBar.css({
|
2071 |
+
left : 0,
|
2072 |
+
width: timeW
|
2073 |
+
});
|
2074 |
+
return {
|
2075 |
+
totalTime : totalTime,
|
2076 |
+
currentTime: currentTime
|
2077 |
+
}
|
2078 |
+
},
|
2079 |
+
|
2080 |
+
/**
|
2081 |
+
* buildControls
|
2082 |
+
* @param YTPlayer
|
2083 |
+
*/
|
2084 |
+
buildControls: function (YTPlayer) {
|
2085 |
+
|
2086 |
+
jQuery('#controlBar_' + YTPlayer.id).remove();
|
2087 |
+
if (!YTPlayer.opt.showControls) {
|
2088 |
+
YTPlayer.controlBar = false;
|
2089 |
+
return
|
2090 |
+
}
|
2091 |
+
|
2092 |
+
// @YTPlayer.opt.printUrl: is deprecated; use YTPlayer.opt.showYTLogo
|
2093 |
+
YTPlayer.opt.showYTLogo = YTPlayer.opt.showYTLogo || YTPlayer.opt.printUrl;
|
2094 |
+
if (jQuery('#controlBar_' + YTPlayer.id).length)
|
2095 |
+
return;
|
2096 |
+
YTPlayer.controlBar = jQuery('<div/>').attr('id', 'controlBar_' + YTPlayer.id).addClass('mb_YTPBar').css({
|
2097 |
+
whiteSpace: 'noWrap',
|
2098 |
+
position : YTPlayer.isBackground ? 'fixed' : 'absolute',
|
2099 |
+
zIndex : YTPlayer.isBackground ? 10000 : 1000
|
2100 |
+
}).hide().on('click', function (e) {
|
2101 |
+
e.stopPropagation()
|
2102 |
+
});
|
2103 |
+
let buttonBar = jQuery('<div/>').addClass('buttonBar');
|
2104 |
+
/**
|
2105 |
+
* play/pause button
|
2106 |
+
* */
|
2107 |
+
let playpause = jQuery('<span>' + jQuery.mbYTPlayer.controls.play + '</span>').addClass('mb_YTPPlayPause ytpicon').on('click', function (e) {
|
2108 |
+
e.stopPropagation();
|
2109 |
+
jQuery(YTPlayer).YTPTogglePlay()
|
2110 |
+
});
|
2111 |
+
/**
|
2112 |
+
* mute/unmute button
|
2113 |
+
* */
|
2114 |
+
let MuteUnmute = jQuery('<span>' + jQuery.mbYTPlayer.controls.mute + '</span>').addClass('mb_YTPMuteUnmute ytpicon').on('click', function (e) {
|
2115 |
+
e.stopPropagation();
|
2116 |
+
jQuery(YTPlayer).YTPToggleVolume()
|
2117 |
+
});
|
2118 |
+
/**
|
2119 |
+
* volume bar
|
2120 |
+
* */
|
2121 |
+
let volumeBar = jQuery('<div/>').addClass('mb_YTPVolumeBar').css({
|
2122 |
+
display: 'inline-block'
|
2123 |
+
});
|
2124 |
+
YTPlayer.volumeBar = volumeBar;
|
2125 |
+
|
2126 |
+
/**
|
2127 |
+
* time elapsed
|
2128 |
+
* */
|
2129 |
+
let idx = jQuery('<span/>').addClass('mb_YTPTime');
|
2130 |
+
let vURL = YTPlayer.opt.videoURL ? YTPlayer.opt.videoURL : '';
|
2131 |
+
if (vURL.indexOf('http') < 0) vURL = 'https://www.youtube.com/watch?v=' + YTPlayer.opt.videoURL;
|
2132 |
+
let movieUrl = jQuery('<span/>').html(jQuery.mbYTPlayer.controls.ytLogo).addClass('mb_YTPUrl ytpicon').attr('title', 'view on YouTube').on('click', function () {
|
2133 |
+
window.open(vURL, 'viewOnYT')
|
2134 |
+
});
|
2135 |
+
let onlyVideo = jQuery('<span/>').html(jQuery.mbYTPlayer.controls.onlyYT).addClass('mb_OnlyYT ytpicon').on('click', function (e) {
|
2136 |
+
e.stopPropagation();
|
2137 |
+
jQuery(YTPlayer).YTPFullscreen(YTPlayer.opt.realFullscreen)
|
2138 |
+
});
|
2139 |
+
let progressBar = jQuery('<div/>').addClass('mb_YTPProgress').css('position', 'absolute').on('click', function (e) {
|
2140 |
+
e.stopPropagation();
|
2141 |
+
timeBar.css({
|
2142 |
+
width: (e.clientX - timeBar.offset().left)
|
2143 |
+
});
|
2144 |
+
YTPlayer.timeW = e.clientX - timeBar.offset().left;
|
2145 |
+
YTPlayer.controlBar.find('.mb_YTPLoaded').css({
|
2146 |
+
width: 0
|
2147 |
+
});
|
2148 |
+
let totalTime = Math.floor(YTPlayer.player.getDuration());
|
2149 |
+
YTPlayer.goto = (timeBar.outerWidth() * totalTime) / progressBar.outerWidth();
|
2150 |
+
YTPlayer.player.seekTo(parseFloat(YTPlayer.goto), true);
|
2151 |
+
YTPlayer.controlBar.find('.mb_YTPLoaded').css({
|
2152 |
+
width: 0
|
2153 |
+
})
|
2154 |
+
});
|
2155 |
+
let loadedBar = jQuery('<div/>').addClass('mb_YTPLoaded').css('position', 'absolute');
|
2156 |
+
let timeBar = jQuery('<div/>').addClass('mb_YTPseekbar').css('position', 'absolute');
|
2157 |
+
progressBar.append(loadedBar).append(timeBar);
|
2158 |
+
buttonBar.append(playpause).append(MuteUnmute).append(volumeBar).append(idx);
|
2159 |
+
|
2160 |
+
if (YTPlayer.opt.showYTLogo) {
|
2161 |
+
buttonBar.append(movieUrl)
|
2162 |
+
}
|
2163 |
+
|
2164 |
+
/**
|
2165 |
+
* Full screen button
|
2166 |
+
*/
|
2167 |
+
if (YTPlayer.isBackground || (eval(YTPlayer.opt.realFullscreen) && !YTPlayer.isBackground))
|
2168 |
+
buttonBar.append(onlyVideo);
|
2169 |
+
|
2170 |
+
YTPlayer.controlBar.append(buttonBar).append(progressBar);
|
2171 |
+
|
2172 |
+
if (!YTPlayer.isBackground) {
|
2173 |
+
YTPlayer.controlBar.addClass('inlinePlayer');
|
2174 |
+
YTPlayer.wrapper.before(YTPlayer.controlBar)
|
2175 |
+
} else {
|
2176 |
+
jQuery('body').after(YTPlayer.controlBar)
|
2177 |
+
}
|
2178 |
+
|
2179 |
+
/**
|
2180 |
+
* Volume slider
|
2181 |
+
*/
|
2182 |
+
volumeBar.simpleSlider({
|
2183 |
+
initialval : YTPlayer.opt.vol,
|
2184 |
+
scale : 100,
|
2185 |
+
orientation: 'h',
|
2186 |
+
callback : function (el) {
|
2187 |
+
|
2188 |
+
if (el.value == 0) {
|
2189 |
+
jQuery(YTPlayer).YTPMute()
|
2190 |
+
} else {
|
2191 |
+
jQuery(YTPlayer).YTPUnmute()
|
2192 |
+
}
|
2193 |
+
YTPlayer.player.setVolume(el.value);
|
2194 |
+
if (!YTPlayer.isMute)
|
2195 |
+
YTPlayer.opt.vol = el.value
|
2196 |
+
|
2197 |
+
// console.debug(jQuery(YTPlayer).YTPGetVolume())
|
2198 |
+
|
2199 |
+
}
|
2200 |
+
|
2201 |
+
})
|
2202 |
+
},
|
2203 |
+
|
2204 |
+
/**
|
2205 |
+
* changeCoverImage
|
2206 |
+
*
|
2207 |
+
* @param imageURL
|
2208 |
+
* @returns {jQuery.mbYTPlayer}
|
2209 |
+
*/
|
2210 |
+
changeCoverImage: function (imageURL) {
|
2211 |
+
let YTPlayer = this.get(0);
|
2212 |
+
if (YTPlayer.opt.coverImage || YTPlayer.orig_containment_background) {
|
2213 |
+
let bgndURL = imageURL || (YTPlayer.opt.coverImage ? 'url(' + YTPlayer.opt.coverImage + ') center center' : YTPlayer.orig_containment_background);
|
2214 |
+
|
2215 |
+
// console.debug(YTPlayer.wrapper);
|
2216 |
+
|
2217 |
+
if (bgndURL)
|
2218 |
+
YTPlayer.opt.containment.css({
|
2219 |
+
background : bgndURL,
|
2220 |
+
// backgroundSize : 'cover',
|
2221 |
+
// backgroundRepeat : 'no-repeat',
|
2222 |
+
// backgroundAttachment: 'fixed'
|
2223 |
+
|
2224 |
+
})
|
2225 |
+
}
|
2226 |
+
return this;
|
2227 |
+
},
|
2228 |
+
|
2229 |
+
/* MANAGE PLAYER STATE ------------------------------------------------------------------------------------------*/
|
2230 |
+
|
2231 |
+
/**
|
2232 |
+
* checkForState
|
2233 |
+
*/
|
2234 |
+
checkForState: function () {
|
2235 |
+
let YTPlayer = this.get(0);
|
2236 |
+
let $YTPlayer = jQuery(YTPlayer);
|
2237 |
+
|
2238 |
+
clearInterval(YTPlayer.getState);
|
2239 |
+
let interval = 100;
|
2240 |
+
//Checking if player has been removed from the scene
|
2241 |
+
if (!jQuery.contains(document, YTPlayer)) {
|
2242 |
+
$YTPlayer.YTPPlayerDestroy();
|
2243 |
+
clearInterval(YTPlayer.getState);
|
2244 |
+
clearInterval(YTPlayer.checkForStartAt);
|
2245 |
+
return
|
2246 |
+
}
|
2247 |
+
|
2248 |
+
jQuery.mbYTPlayer.checkForStart(YTPlayer);
|
2249 |
+
|
2250 |
+
YTPlayer.getState = setInterval(function () {
|
2251 |
+
let $YTPlayer = jQuery(YTPlayer);
|
2252 |
+
|
2253 |
+
if (!YTPlayer.isReady)
|
2254 |
+
return;
|
2255 |
+
|
2256 |
+
let prog = jQuery(YTPlayer).YTPManageProgress();
|
2257 |
+
|
2258 |
+
let stopAt = YTPlayer.opt.stopAt > YTPlayer.opt.startAt ? YTPlayer.opt.stopAt : 0;
|
2259 |
+
stopAt = stopAt < YTPlayer.player.getDuration() ? stopAt : 0;
|
2260 |
+
|
2261 |
+
if (YTPlayer.currentTime != prog.currentTime) {
|
2262 |
+
let YTPEvent = jQuery.Event('YTPTime');
|
2263 |
+
YTPEvent.time = YTPlayer.currentTime;
|
2264 |
+
jQuery(YTPlayer).trigger(YTPEvent)
|
2265 |
+
}
|
2266 |
+
|
2267 |
+
YTPlayer.currentTime = prog.currentTime;
|
2268 |
+
YTPlayer.totalTime = YTPlayer.player.getDuration();
|
2269 |
+
if (YTPlayer.player.getVolume() == 0) $YTPlayer.addClass('isMuted');
|
2270 |
+
else $YTPlayer.removeClass('isMuted');
|
2271 |
+
|
2272 |
+
if (YTPlayer.opt.showControls)
|
2273 |
+
if (prog.totalTime) {
|
2274 |
+
YTPlayer.controlBar.find('.mb_YTPTime').html(jQuery.mbYTPlayer.formatTime(prog.currentTime) + ' / ' + jQuery.mbYTPlayer.formatTime(prog.totalTime))
|
2275 |
+
} else {
|
2276 |
+
YTPlayer.controlBar.find('.mb_YTPTime').html('-- : -- / -- : --')
|
2277 |
+
}
|
2278 |
+
|
2279 |
+
/**
|
2280 |
+
* Manage video pause on window blur
|
2281 |
+
*/
|
2282 |
+
if (eval(YTPlayer.opt.stopMovieOnBlur)) {
|
2283 |
+
if (!document.hasFocus()) {
|
2284 |
+
if (YTPlayer.state == 1) {
|
2285 |
+
YTPlayer.hasFocus = false;
|
2286 |
+
YTPlayer.preventTrigger = true;
|
2287 |
+
$YTPlayer.YTPPause()
|
2288 |
+
}
|
2289 |
+
} else if (document.hasFocus() && !YTPlayer.hasFocus && !(YTPlayer.state == -1 || YTPlayer.state == 0)) {
|
2290 |
+
YTPlayer.hasFocus = true;
|
2291 |
+
YTPlayer.preventTrigger = true;
|
2292 |
+
$YTPlayer.YTPPlay()
|
2293 |
+
}
|
2294 |
+
}
|
2295 |
+
|
2296 |
+
/**
|
2297 |
+
* Manage video pause if not on screen
|
2298 |
+
*/
|
2299 |
+
if (YTPlayer.opt.playOnlyIfVisible) {
|
2300 |
+
let isOnScreen = jQuery.mbYTPlayer.isOnScreen(YTPlayer, YTPlayer.opt.onScreenPercentage);
|
2301 |
+
if (!isOnScreen && YTPlayer.state == 1) {
|
2302 |
+
YTPlayer.isOnScreen = false;
|
2303 |
+
$YTPlayer.YTPPause()
|
2304 |
+
} else if (isOnScreen && !YTPlayer.isOnScreen) {
|
2305 |
+
YTPlayer.isOnScreen = true;
|
2306 |
+
YTPlayer.player.playVideo()
|
2307 |
+
}
|
2308 |
+
}
|
2309 |
+
|
2310 |
+
if (YTPlayer.controlBar.length && YTPlayer.controlBar.outerWidth() <= 400 && !YTPlayer.isCompact) {
|
2311 |
+
YTPlayer.controlBar.addClass('compact');
|
2312 |
+
YTPlayer.isCompact = true;
|
2313 |
+
if (!YTPlayer.isMute && YTPlayer.volumeBar) YTPlayer.volumeBar.updateSliderVal(YTPlayer.opt.vol)
|
2314 |
+
} else if (YTPlayer.controlBar.length && YTPlayer.controlBar.outerWidth() > 400 && YTPlayer.isCompact) {
|
2315 |
+
YTPlayer.controlBar.removeClass('compact');
|
2316 |
+
YTPlayer.isCompact = false;
|
2317 |
+
|
2318 |
+
if (!YTPlayer.isMute && YTPlayer.volumeBar)
|
2319 |
+
YTPlayer.volumeBar.updateSliderVal(YTPlayer.opt.vol)
|
2320 |
+
}
|
2321 |
+
// the video is ended
|
2322 |
+
if (YTPlayer.player.getPlayerState() > 0 && ((parseFloat(YTPlayer.player.getDuration() - (YTPlayer.opt.fadeOnStartTime / 1000)) < YTPlayer.player.getCurrentTime()) || (stopAt > 0 && parseFloat(YTPlayer.player.getCurrentTime()) >= stopAt))) {
|
2323 |
+
|
2324 |
+
if (YTPlayer.isEnded)
|
2325 |
+
return;
|
2326 |
+
|
2327 |
+
YTPlayer.isEnded = true;
|
2328 |
+
|
2329 |
+
setTimeout(function () {
|
2330 |
+
YTPlayer.isEnded = false
|
2331 |
+
}, 1000);
|
2332 |
+
|
2333 |
+
if (YTPlayer.isList) {
|
2334 |
+
if (!YTPlayer.opt.loop || (YTPlayer.opt.loop > 0 && YTPlayer.player.loopTime === YTPlayer.opt.loop - 1)) {
|
2335 |
+
YTPlayer.player.loopTime = undefined;
|
2336 |
+
clearInterval(YTPlayer.getState);
|
2337 |
+
let YTPEnd = jQuery.Event('YTPEnd');
|
2338 |
+
YTPEnd.time = YTPlayer.currentTime;
|
2339 |
+
jQuery(YTPlayer).trigger(YTPEnd);
|
2340 |
+
return
|
2341 |
+
}
|
2342 |
+
} else if (!YTPlayer.opt.loop || (YTPlayer.opt.loop > 0 && YTPlayer.player.loopTime === YTPlayer.opt.loop - 1)) {
|
2343 |
+
YTPlayer.player.loopTime = undefined;
|
2344 |
+
|
2345 |
+
YTPlayer.state = 2;
|
2346 |
+
|
2347 |
+
$YTPlayer.changeCoverImage(YTPlayer);
|
2348 |
+
|
2349 |
+
jQuery(YTPlayer).YTPPause();
|
2350 |
+
YTPlayer.wrapper.CSSAnimate({
|
2351 |
+
opacity: 0
|
2352 |
+
}, YTPlayer.opt.fadeOnStartTime, function () {
|
2353 |
+
|
2354 |
+
if (YTPlayer.controlBar.length)
|
2355 |
+
YTPlayer.controlBar.find('.mb_YTPPlayPause').html(jQuery.mbYTPlayer.controls.play);
|
2356 |
+
|
2357 |
+
$YTPlayer.changeCoverImage();
|
2358 |
+
/*
|
2359 |
+
if (YTPlayer.opt.coverImage || YTPlayer.orig_containment_background) {
|
2360 |
+
let bgndURL = YTPlayer.opt.coverImage ? 'url(' + YTPlayer.opt.coverImage + ') center center' : YTPlayer.orig_containment_background
|
2361 |
+
if (bgndURL)
|
2362 |
+
YTPlayer.opt.containment.css({
|
2363 |
+
background : bgndURL,
|
2364 |
+
backgroundSize : 'cover',
|
2365 |
+
backgroundRepeat: 'no-repeat'
|
2366 |
+
})
|
2367 |
+
}
|
2368 |
+
*/
|
2369 |
+
|
2370 |
+
let YTPEnd = jQuery.Event('YTPEnd');
|
2371 |
+
YTPEnd.time = YTPlayer.currentTime;
|
2372 |
+
jQuery(YTPlayer).trigger(YTPEnd);
|
2373 |
+
YTPlayer.player.seekTo(YTPlayer.opt.startAt, true);
|
2374 |
+
|
2375 |
+
|
2376 |
+
});
|
2377 |
+
return
|
2378 |
+
}
|
2379 |
+
|
2380 |
+
YTPlayer.player.loopTime = YTPlayer.player.loopTime ? ++YTPlayer.player.loopTime : 1;
|
2381 |
+
YTPlayer.opt.startAt = YTPlayer.opt.startAt || 1;
|
2382 |
+
YTPlayer.preventTrigger = true;
|
2383 |
+
YTPlayer.state = 2;
|
2384 |
+
//YTPlayer.player.pauseVideo();
|
2385 |
+
YTPlayer.player.seekTo(YTPlayer.opt.startAt, true)
|
2386 |
+
//YTPlayer.player.playVideo();
|
2387 |
+
}
|
2388 |
+
}, interval)
|
2389 |
+
},
|
2390 |
+
|
2391 |
+
/**
|
2392 |
+
* checkForStart
|
2393 |
+
* @param YTPlayer
|
2394 |
+
*/
|
2395 |
+
checkForStart: function (YTPlayer) {
|
2396 |
+
let $YTPlayer = jQuery(YTPlayer);
|
2397 |
+
|
2398 |
+
/* If the player has been removed from scene destroy it */
|
2399 |
+
if (!jQuery.contains(document, YTPlayer)) {
|
2400 |
+
$YTPlayer.YTPPlayerDestroy();
|
2401 |
+
return
|
2402 |
+
}
|
2403 |
+
|
2404 |
+
/* CREATE CONTROL BAR */
|
2405 |
+
jQuery.mbYTPlayer.buildControls(YTPlayer);
|
2406 |
+
|
2407 |
+
if (YTPlayer.overlay)
|
2408 |
+
if (YTPlayer.opt.addRaster) {
|
2409 |
+
let classN = YTPlayer.opt.addRaster == 'dot' ? 'raster-dot' : 'raster';
|
2410 |
+
YTPlayer.overlay.addClass(YTPlayer.isRetina ? classN + ' retina' : classN)
|
2411 |
+
} else {
|
2412 |
+
YTPlayer.overlay.removeClass(function (index, classNames) {
|
2413 |
+
// change the list into an array
|
2414 |
+
let current_classes = classNames.split(' '),
|
2415 |
+
// array of classes which are to be removed
|
2416 |
+
classes_to_remove = [];
|
2417 |
+
jQuery.each(current_classes, function (index, class_name) {
|
2418 |
+
// if the classname begins with bg add it to the classes_to_remove array
|
2419 |
+
if (/raster.*/.test(class_name)) {
|
2420 |
+
classes_to_remove.push(class_name)
|
2421 |
+
}
|
2422 |
+
});
|
2423 |
+
classes_to_remove.push('retina');
|
2424 |
+
// turn the array back into a string
|
2425 |
+
return classes_to_remove.join(' ')
|
2426 |
+
})
|
2427 |
+
}
|
2428 |
+
|
2429 |
+
YTPlayer.preventTrigger = true;
|
2430 |
+
YTPlayer.state = 2;
|
2431 |
+
YTPlayer.preventTrigger = true;
|
2432 |
+
|
2433 |
+
YTPlayer.player.mute();
|
2434 |
+
YTPlayer.player.playVideo();
|
2435 |
+
YTPlayer.isStarting = true;
|
2436 |
+
|
2437 |
+
let startAt = YTPlayer.start_from_last ? YTPlayer.start_from_last : YTPlayer.opt.startAt ? YTPlayer.opt.startAt : 1;
|
2438 |
+
|
2439 |
+
YTPlayer.preventTrigger = true;
|
2440 |
+
YTPlayer.checkForStartAt = setInterval(function () {
|
2441 |
+
|
2442 |
+
YTPlayer.player.mute();
|
2443 |
+
YTPlayer.player.seekTo(startAt, true);
|
2444 |
+
|
2445 |
+
let canPlayVideo = YTPlayer.player.getVideoLoadedFraction() >= startAt / YTPlayer.player.getDuration();
|
2446 |
+
if (YTPlayer.player.getDuration() > 0 && YTPlayer.player.getCurrentTime() >= startAt && canPlayVideo) {
|
2447 |
+
YTPlayer.start_from_last = null;
|
2448 |
+
|
2449 |
+
YTPlayer.preventTrigger = true;
|
2450 |
+
$YTPlayer.YTPPause();
|
2451 |
+
|
2452 |
+
clearInterval(YTPlayer.checkForStartAt);
|
2453 |
+
|
2454 |
+
if (typeof YTPlayer.opt.onReady == 'function')
|
2455 |
+
YTPlayer.opt.onReady(YTPlayer);
|
2456 |
+
|
2457 |
+
YTPlayer.isReady = true;
|
2458 |
+
|
2459 |
+
$YTPlayer.YTPRemoveFilter();
|
2460 |
+
|
2461 |
+
if (YTPlayer.opt.addFilters) {
|
2462 |
+
$YTPlayer.YTPApplyFilters(YTPlayer.opt.addFilters)
|
2463 |
+
} else {
|
2464 |
+
$YTPlayer.YTPApplyFilters()
|
2465 |
+
}
|
2466 |
+
$YTPlayer.YTPEnableFilters();
|
2467 |
+
let YTPready = jQuery.Event('YTPReady');
|
2468 |
+
YTPready.time = YTPlayer.currentTime;
|
2469 |
+
$YTPlayer.trigger(YTPready);
|
2470 |
+
|
2471 |
+
YTPlayer.state = 2;
|
2472 |
+
|
2473 |
+
if (!YTPlayer.opt.mute) {
|
2474 |
+
|
2475 |
+
if (YTPlayer.opt.autoPlay) {
|
2476 |
+
console.debug('To make the video \'auto-play\' you must mute the audio according with the latest vendor policy');
|
2477 |
+
YTPlayer.player.mute()
|
2478 |
+
}
|
2479 |
+
|
2480 |
+
YTPlayer.player.unMute()
|
2481 |
+
|
2482 |
+
} else {
|
2483 |
+
$YTPlayer.YTPMute()
|
2484 |
+
}
|
2485 |
+
|
2486 |
+
if (typeof _gaq != 'undefined' && eval(YTPlayer.opt.gaTrack))
|
2487 |
+
_gaq.push(['_trackEvent', 'YTPlayer', 'Play', (YTPlayer.hasData ? YTPlayer.videoData.title : YTPlayer.videoID.toString())]);
|
2488 |
+
else if (typeof ga != 'undefined' && eval(YTPlayer.opt.gaTrack))
|
2489 |
+
ga('send', 'event', 'YTPlayer', 'play', (YTPlayer.hasData ? YTPlayer.videoData.title : YTPlayer.videoID.toString()));
|
2490 |
+
|
2491 |
+
if (YTPlayer.opt.autoPlay) {
|
2492 |
+
|
2493 |
+
let YTPStart = jQuery.Event('YTPStart');
|
2494 |
+
YTPStart.time = YTPlayer.currentTime;
|
2495 |
+
jQuery(YTPlayer).trigger(YTPStart);
|
2496 |
+
|
2497 |
+
YTPlayer.isStarting = false;
|
2498 |
+
|
2499 |
+
/* Fix for Safari freeze */
|
2500 |
+
if (jQuery.mbBrowser.os.name === 'mac' && jQuery.mbBrowser.safari) {
|
2501 |
+
jQuery('body').one('mousedown.YTPstart', function () {
|
2502 |
+
$YTPlayer.YTPPlay()
|
2503 |
+
})
|
2504 |
+
}
|
2505 |
+
$YTPlayer.YTPPlay();
|
2506 |
+
console.timeEnd('YTPlayerStartPlay')
|
2507 |
+
|
2508 |
+
} else {
|
2509 |
+
|
2510 |
+
YTPlayer.preventTrigger = true;
|
2511 |
+
$YTPlayer.YTPPause();
|
2512 |
+
|
2513 |
+
if (YTPlayer.start_from_last)
|
2514 |
+
YTPlayer.player.seekTo(startAt, true);
|
2515 |
+
|
2516 |
+
setTimeout(function () {
|
2517 |
+
YTPlayer.preventTrigger = true;
|
2518 |
+
$YTPlayer.YTPPause();
|
2519 |
+
|
2520 |
+
if (!YTPlayer.isPlayer) {
|
2521 |
+
if (!YTPlayer.opt.coverImage) {
|
2522 |
+
jQuery(YTPlayer.playerEl).CSSAnimate({
|
2523 |
+
opacity: 1
|
2524 |
+
}, YTPlayer.opt.fadeOnStartTime);
|
2525 |
+
YTPlayer.wrapper.CSSAnimate({
|
2526 |
+
opacity: YTPlayer.isAlone ? 1 : YTPlayer.opt.opacity
|
2527 |
+
}, YTPlayer.opt.fadeOnStartTime)
|
2528 |
+
} else {
|
2529 |
+
YTPlayer.wrapper.css({opacity: 0});
|
2530 |
+
setTimeout(function () {
|
2531 |
+
$YTPlayer.changeCoverImage()
|
2532 |
+
/*
|
2533 |
+
if (YTPlayer.opt.coverImage || YTPlayer.orig_containment_background) {
|
2534 |
+
let bgndURL = YTPlayer.opt.coverImage ? 'url(' + YTPlayer.opt.coverImage + ') center center' : YTPlayer.orig_containment_background
|
2535 |
+
if (bgndURL)
|
2536 |
+
YTPlayer.wrapper.css({
|
2537 |
+
background : bgndURL,
|
2538 |
+
backgroundSize : 'cover',
|
2539 |
+
backgroundRepeat: 'no-repeat'
|
2540 |
+
})
|
2541 |
+
}
|
2542 |
+
*/
|
2543 |
+
}, YTPlayer.opt.fadeOnStartTime)
|
2544 |
+
}
|
2545 |
+
}
|
2546 |
+
YTPlayer.isStarting = false
|
2547 |
+
}, 500);
|
2548 |
+
|
2549 |
+
if (YTPlayer.controlBar.length)
|
2550 |
+
YTPlayer.controlBar.find('.mb_YTPPlayPause').html(jQuery.mbYTPlayer.controls.play)
|
2551 |
+
}
|
2552 |
+
|
2553 |
+
if (YTPlayer.isPlayer && !YTPlayer.opt.autoPlay && (YTPlayer.loading && YTPlayer.loading.length)) {
|
2554 |
+
YTPlayer.loading.html('Ready');
|
2555 |
+
setTimeout(function () {
|
2556 |
+
YTPlayer.loading.fadeOut()
|
2557 |
+
}, 100)
|
2558 |
+
}
|
2559 |
+
|
2560 |
+
if (YTPlayer.controlBar && YTPlayer.controlBar.length)
|
2561 |
+
YTPlayer.controlBar.slideDown(1000)
|
2562 |
+
}
|
2563 |
+
|
2564 |
+
if (jQuery.mbBrowser.os.name === 'mac' && jQuery.mbBrowser.safari) {
|
2565 |
+
YTPlayer.player.playVideo();
|
2566 |
+
if (startAt >= 0)
|
2567 |
+
YTPlayer.player.seekTo(startAt, true)
|
2568 |
+
}
|
2569 |
+
|
2570 |
+
}, 100);
|
2571 |
+
|
2572 |
+
return $YTPlayer
|
2573 |
+
},
|
2574 |
+
|
2575 |
+
/* TIME METHODS -------------------------------------------------------------------------------------------*/
|
2576 |
+
|
2577 |
+
/**
|
2578 |
+
* getTime
|
2579 |
+
* @returns {string} time
|
2580 |
+
*/
|
2581 |
+
getTime: function () {
|
2582 |
+
let YTPlayer = this.get(0);
|
2583 |
+
return jQuery.mbYTPlayer.formatTime(YTPlayer.currentTime)
|
2584 |
+
},
|
2585 |
+
|
2586 |
+
/**
|
2587 |
+
* getTotalTime
|
2588 |
+
* @returns {string} total time
|
2589 |
+
*/
|
2590 |
+
getTotalTime: function () {
|
2591 |
+
let YTPlayer = this.get(0);
|
2592 |
+
return jQuery.mbYTPlayer.formatTime(YTPlayer.totalTime)
|
2593 |
+
},
|
2594 |
+
|
2595 |
+
/**
|
2596 |
+
* formatTime
|
2597 |
+
* @param s
|
2598 |
+
* @returns {string}
|
2599 |
+
*/
|
2600 |
+
formatTime: function (s) {
|
2601 |
+
let min = Math.floor(s / 60);
|
2602 |
+
let sec = Math.floor(s - (60 * min));
|
2603 |
+
return (min <= 9 ? '0' + min : min) + ' : ' + (sec <= 9 ? '0' + sec : sec)
|
2604 |
+
},
|
2605 |
+
|
2606 |
+
/* PLAYER POSITION AND SIZE OPTIMIZATION-------------------------------------------------------------------------------------------*/
|
2607 |
+
|
2608 |
+
/**
|
2609 |
+
* setAnchor
|
2610 |
+
* @param anchor
|
2611 |
+
*/
|
2612 |
+
setAnchor: function (anchor) {
|
2613 |
+
let $YTplayer = this;
|
2614 |
+
$YTplayer.optimizeDisplay(anchor)
|
2615 |
+
},
|
2616 |
+
|
2617 |
+
/**
|
2618 |
+
* getAnchor
|
2619 |
+
*/
|
2620 |
+
getAnchor: function () {
|
2621 |
+
let YTPlayer = this.get(0);
|
2622 |
+
return YTPlayer.opt.anchor
|
2623 |
+
},
|
2624 |
+
|
2625 |
+
/**
|
2626 |
+
* setAbundance
|
2627 |
+
* @param val
|
2628 |
+
* @param updateOptions
|
2629 |
+
* @returns {jQuery.mbYTPlayer}
|
2630 |
+
*/
|
2631 |
+
setAbundance: function (val, updateOptions) {
|
2632 |
+
let YTPlayer = this.get(0);
|
2633 |
+
let $YTPlayer = this;
|
2634 |
+
if (updateOptions)
|
2635 |
+
YTPlayer.opt.abundance = val;
|
2636 |
+
$YTPlayer.optimizeDisplay(YTPlayer.opt.anchor, val);
|
2637 |
+
return $YTPlayer
|
2638 |
+
},
|
2639 |
+
|
2640 |
+
/**
|
2641 |
+
* getAbundance
|
2642 |
+
* @returns {*}
|
2643 |
+
*/
|
2644 |
+
getAbundance: function () {
|
2645 |
+
let YTPlayer = this.get(0);
|
2646 |
+
return YTPlayer.opt.abundance
|
2647 |
+
},
|
2648 |
+
|
2649 |
+
/**
|
2650 |
+
* setOption
|
2651 |
+
* @param opt
|
2652 |
+
* @param val
|
2653 |
+
* @returns {jQuery.mbYTPlayer}
|
2654 |
+
*/
|
2655 |
+
setOption: function (opt, val) {
|
2656 |
+
let YTPlayer = this.get(0);
|
2657 |
+
let $YTPlayer = this;
|
2658 |
+
YTPlayer.opt[opt] = val;
|
2659 |
+
return $YTPlayer
|
2660 |
+
}
|
2661 |
+
};
|
2662 |
+
|
2663 |
+
/**
|
2664 |
+
* optimizeDisplay
|
2665 |
+
* @param anchor
|
2666 |
+
* @param abundanceX
|
2667 |
+
*/
|
2668 |
+
jQuery.fn.optimizeDisplay = function (anchor, abundanceX) {
|
2669 |
+
|
2670 |
+
let YTPlayer = this.get(0);
|
2671 |
+
let vid = {};
|
2672 |
+
let el = YTPlayer.wrapper;
|
2673 |
+
let iframe = jQuery(YTPlayer.playerEl);
|
2674 |
+
|
2675 |
+
YTPlayer.opt.anchor = anchor || YTPlayer.opt.anchor;
|
2676 |
+
|
2677 |
+
// console.debug(YTPlayer.opt.anchor);
|
2678 |
+
|
2679 |
+
YTPlayer.opt.anchor = typeof YTPlayer.opt.anchor != 'undefined ' ? YTPlayer.opt.anchor : 'center,center';
|
2680 |
+
let YTPAlign = YTPlayer.opt.anchor.split(',');
|
2681 |
+
let ab = abundanceX ? abundanceX : YTPlayer.opt.abundance;
|
2682 |
+
|
2683 |
+
if (YTPlayer.opt.optimizeDisplay) {
|
2684 |
+
let abundance = el.height() * ab;
|
2685 |
+
let win = {};
|
2686 |
+
win.width = el.outerWidth();
|
2687 |
+
win.height = el.outerHeight() + abundance;
|
2688 |
+
|
2689 |
+
YTPlayer.opt.ratio = YTPlayer.opt.ratio === 'auto' ? 16 / 9 : YTPlayer.opt.ratio;
|
2690 |
+
YTPlayer.opt.ratio = eval(YTPlayer.opt.ratio);
|
2691 |
+
|
2692 |
+
vid.width = win.width + abundance;
|
2693 |
+
vid.height = Math.ceil(vid.width / YTPlayer.opt.ratio);
|
2694 |
+
vid.marginTop = Math.ceil(-((vid.height - win.height + abundance) / 2));
|
2695 |
+
vid.marginLeft = -(abundance / 2);
|
2696 |
+
let lowest = vid.height < win.height;
|
2697 |
+
|
2698 |
+
if (lowest) {
|
2699 |
+
vid.height = win.height + abundance;
|
2700 |
+
vid.width = Math.ceil(vid.height * YTPlayer.opt.ratio);
|
2701 |
+
vid.marginTop = -(abundance / 2);
|
2702 |
+
vid.marginLeft = Math.ceil(-((vid.width - win.width) / 2))
|
2703 |
+
}
|
2704 |
+
|
2705 |
+
for (let a in YTPAlign) {
|
2706 |
+
if (YTPAlign.hasOwnProperty(a)) {
|
2707 |
+
let al = YTPAlign[a].replace(/ /g, '');
|
2708 |
+
|
2709 |
+
switch (al) {
|
2710 |
+
case 'top':
|
2711 |
+
vid.marginTop = -abundance;
|
2712 |
+
break;
|
2713 |
+
case 'bottom':
|
2714 |
+
vid.marginTop = Math.ceil(-(vid.height - win.height) - (abundance / 2));
|
2715 |
+
break;
|
2716 |
+
case 'left':
|
2717 |
+
vid.marginLeft = -(abundance);
|
2718 |
+
break;
|
2719 |
+
case 'right':
|
2720 |
+
vid.marginLeft = Math.ceil(-(vid.width - win.width) + (abundance / 2));
|
2721 |
+
break
|
2722 |
+
}
|
2723 |
+
|
2724 |
+
}
|
2725 |
+
}
|
2726 |
+
|
2727 |
+
} else {
|
2728 |
+
vid.width = '100%';
|
2729 |
+
vid.height = '100%';
|
2730 |
+
vid.marginTop = 0;
|
2731 |
+
vid.marginLeft = 0
|
2732 |
+
}
|
2733 |
+
|
2734 |
+
iframe.css({
|
2735 |
+
width : vid.width,
|
2736 |
+
height : vid.height,
|
2737 |
+
marginTop : vid.marginTop,
|
2738 |
+
marginLeft: vid.marginLeft,
|
2739 |
+
maxWidth : 'initial'
|
2740 |
+
})
|
2741 |
+
|
2742 |
+
|
2743 |
+
};
|
2744 |
+
|
2745 |
+
|
2746 |
+
/* UTILITIES -----------------------------------------------------------------------------------------------------------------------*/
|
2747 |
+
|
2748 |
+
/**
|
2749 |
+
* shuffle
|
2750 |
+
* @param arr
|
2751 |
+
* @returns {Array|string|Blob|*}
|
2752 |
+
*
|
2753 |
+
*/
|
2754 |
+
jQuery.shuffle = function (arr) {
|
2755 |
+
let newArray = arr.slice();
|
2756 |
+
let len = newArray.length;
|
2757 |
+
let i = len;
|
2758 |
+
while (i--) {
|
2759 |
+
let p = parseInt(Math.random() * len);
|
2760 |
+
let t = newArray[i];
|
2761 |
+
newArray[i] = newArray[p];
|
2762 |
+
newArray[p] = t
|
2763 |
+
}
|
2764 |
+
return newArray
|
2765 |
+
};
|
2766 |
+
|
2767 |
+
/**
|
2768 |
+
* Unselectable
|
2769 |
+
* @returns {*}
|
2770 |
+
*/
|
2771 |
+
jQuery.fn.unselectable = function () {
|
2772 |
+
return this.each(function () {
|
2773 |
+
jQuery(this).css({
|
2774 |
+
'-moz-user-select' : 'none',
|
2775 |
+
'-webkit-user-select': 'none',
|
2776 |
+
'user-select' : 'none'
|
2777 |
+
}).attr('unselectable', 'on')
|
2778 |
+
})
|
2779 |
+
};
|
2780 |
+
|
2781 |
+
/* EXTERNAL METHODS -----------------------------------------------------------------------------------------------------------------------*/
|
2782 |
+
|
2783 |
+
jQuery.fn.YTPlayer = jQuery.mbYTPlayer.buildPlayer;
|
2784 |
+
jQuery.fn.mb_YTPlayer = jQuery.mbYTPlayer.buildPlayer;
|
2785 |
+
|
2786 |
+
jQuery.fn.YTPCheckForState = jQuery.mbYTPlayer.checkForState;
|
2787 |
+
|
2788 |
+
jQuery.fn.YTPGetPlayer = jQuery.mbYTPlayer.getPlayer;
|
2789 |
+
jQuery.fn.YTPGetVideoID = jQuery.mbYTPlayer.getVideoID;
|
2790 |
+
jQuery.fn.YTPGetPlaylistID = jQuery.mbYTPlayer.getPlaylistID;
|
2791 |
+
jQuery.fn.YTPChangeVideo = jQuery.fn.YTPChangeMovie = jQuery.mbYTPlayer.changeVideo;
|
2792 |
+
jQuery.fn.YTPPlayerDestroy = jQuery.mbYTPlayer.playerDestroy;
|
2793 |
+
|
2794 |
+
jQuery.fn.YTPPlay = jQuery.mbYTPlayer.play;
|
2795 |
+
jQuery.fn.YTPTogglePlay = jQuery.mbYTPlayer.togglePlay;
|
2796 |
+
jQuery.fn.YTPStop = jQuery.mbYTPlayer.stop;
|
2797 |
+
jQuery.fn.YTPPause = jQuery.mbYTPlayer.pause;
|
2798 |
+
jQuery.fn.YTPSeekTo = jQuery.mbYTPlayer.seekTo;
|
2799 |
+
|
2800 |
+
jQuery.fn.YTPGetPlaybackRate = jQuery.mbYTPlayer.getPlaybackRate;
|
2801 |
+
jQuery.fn.YTPSetPlaybackRate = jQuery.mbYTPlayer.setPlaybackRate;
|
2802 |
+
|
2803 |
+
jQuery.fn.changeCoverImage = jQuery.mbYTPlayer.changeCoverImage;
|
2804 |
+
|
2805 |
+
jQuery.fn.YTPlaylist = jQuery.mbYTPlayer.playlist;
|
2806 |
+
jQuery.fn.YTPPlayNext = jQuery.mbYTPlayer.playNext;
|
2807 |
+
jQuery.fn.YTPPlayPrev = jQuery.mbYTPlayer.playPrev;
|
2808 |
+
jQuery.fn.YTPPlayIndex = jQuery.mbYTPlayer.playIndex;
|
2809 |
+
|
2810 |
+
jQuery.fn.YTPMute = jQuery.mbYTPlayer.mute;
|
2811 |
+
jQuery.fn.YTPUnmute = jQuery.mbYTPlayer.unmute;
|
2812 |
+
jQuery.fn.YTPToggleVolume = jQuery.mbYTPlayer.toggleVolume;
|
2813 |
+
jQuery.fn.YTPSetVolume = jQuery.mbYTPlayer.setVolume;
|
2814 |
+
jQuery.fn.YTPGetVolume = jQuery.mbYTPlayer.getVolume;
|
2815 |
+
|
2816 |
+
jQuery.fn.YTPGetVideoData = jQuery.mbYTPlayer.getVideoData;
|
2817 |
+
jQuery.fn.YTPFullscreen = jQuery.mbYTPlayer.fullscreen;
|
2818 |
+
jQuery.fn.YTPToggleLoops = jQuery.mbYTPlayer.toggleLoops;
|
2819 |
+
jQuery.fn.YTPManageProgress = jQuery.mbYTPlayer.manageProgress;
|
2820 |
+
|
2821 |
+
jQuery.fn.YTPSetVideoQuality = jQuery.mbYTPlayer.setVideoQuality;
|
2822 |
+
jQuery.fn.YTPGetVideoQuality = jQuery.mbYTPlayer.getVideoQuality;
|
2823 |
+
|
2824 |
+
jQuery.fn.YTPApplyFilter = jQuery.mbYTPlayer.applyFilter;
|
2825 |
+
jQuery.fn.YTPApplyFilters = jQuery.mbYTPlayer.applyFilters;
|
2826 |
+
jQuery.fn.YTPToggleFilter = jQuery.mbYTPlayer.toggleFilter;
|
2827 |
+
jQuery.fn.YTPToggleFilters = jQuery.mbYTPlayer.toggleFilters;
|
2828 |
+
jQuery.fn.YTPRemoveFilter = jQuery.mbYTPlayer.removeFilter;
|
2829 |
+
jQuery.fn.YTPDisableFilters = jQuery.mbYTPlayer.disableFilters;
|
2830 |
+
jQuery.fn.YTPEnableFilters = jQuery.mbYTPlayer.enableFilters;
|
2831 |
+
jQuery.fn.YTPGetFilters = jQuery.mbYTPlayer.getFilters;
|
2832 |
+
|
2833 |
+
jQuery.fn.YTPGetTime = jQuery.mbYTPlayer.getTime;
|
2834 |
+
jQuery.fn.YTPGetTotalTime = jQuery.mbYTPlayer.getTotalTime;
|
2835 |
+
|
2836 |
+
jQuery.fn.YTPAddMask = jQuery.mbYTPlayer.addMask;
|
2837 |
+
jQuery.fn.YTPRemoveMask = jQuery.mbYTPlayer.removeMask;
|
2838 |
+
jQuery.fn.YTPToggleMask = jQuery.mbYTPlayer.toggleMask;
|
2839 |
+
|
2840 |
+
jQuery.fn.YTPGetAbundance = jQuery.mbYTPlayer.getAbundance;
|
2841 |
+
jQuery.fn.YTPSetAbundance = jQuery.mbYTPlayer.setAbundance;
|
2842 |
+
|
2843 |
+
jQuery.fn.YTPSetAnchor = jQuery.mbYTPlayer.setAnchor;
|
2844 |
+
jQuery.fn.YTPGetAnchor = jQuery.mbYTPlayer.getAnchor;
|
2845 |
+
|
2846 |
+
jQuery.fn.YTPSetOption = jQuery.mbYTPlayer.setOption
|
2847 |
+
|
2848 |
+
})(jQuery, ytp);
|
2849 |
+
;/*___________________________________________________________________________________________________________________________________________________
|
2850 |
+
_ jquery.mb.components _
|
2851 |
+
_ _
|
2852 |
+
_ file: jquery.mb.browser.min.js _
|
2853 |
+
_ last modified: 24/05/17 19.56 _
|
2854 |
+
_ _
|
2855 |
+
_ Open Lab s.r.l., Florence - Italy _
|
2856 |
+
_ _
|
2857 |
+
_ email: matbicoc@gmail.com _
|
2858 |
+
_ site: http://pupunzi.com _
|
2859 |
+
_ http://open-lab.com _
|
2860 |
+
_ blog: http://pupunzi.open-lab.com _
|
2861 |
+
_ Q&A: http://jquery.pupunzi.com _
|
2862 |
+
_ _
|
2863 |
+
_ Licences: MIT, GPL _
|
2864 |
+
_ http://www.opensource.org/licenses/mit-license.php _
|
2865 |
+
_ http://www.gnu.org/licenses/gpl.html _
|
2866 |
+
_ _
|
2867 |
+
_ Copyright (c) 2001-2017. Matteo Bicocchi (Pupunzi); _
|
2868 |
+
___________________________________________________________________________________________________________________________________________________*/
|
2869 |
+
|
2870 |
+
var nAgt=navigator.userAgent;jQuery.browser=jQuery.browser||{};jQuery.browser.mozilla=!1;jQuery.browser.webkit=!1;jQuery.browser.opera=!1;jQuery.browser.safari=!1;jQuery.browser.chrome=!1;jQuery.browser.androidStock=!1;jQuery.browser.msie=!1;jQuery.browser.edge=!1;jQuery.browser.ua=nAgt;function isTouchSupported(){var a=nAgt.msMaxTouchPoints,e="ontouchstart"in document.createElement("div");return a||e?!0:!1}
|
2871 |
+
var getOS=function(){var a={version:"Unknown version",name:"Unknown OS"};-1!=navigator.appVersion.indexOf("Win")&&(a.name="Windows");-1!=navigator.appVersion.indexOf("Mac")&&0>navigator.appVersion.indexOf("Mobile")&&(a.name="Mac");-1!=navigator.appVersion.indexOf("Linux")&&(a.name="Linux");/Mac OS X/.test(nAgt)&&!/Mobile/.test(nAgt)&&(a.version=/Mac OS X (10[\.\_\d]+)/.exec(nAgt)[1],a.version=a.version.replace(/_/g,".").substring(0,5));/Windows/.test(nAgt)&&(a.version="Unknown.Unknown");/Windows NT 5.1/.test(nAgt)&&
|
2872 |
+
(a.version="5.1");/Windows NT 6.0/.test(nAgt)&&(a.version="6.0");/Windows NT 6.1/.test(nAgt)&&(a.version="6.1");/Windows NT 6.2/.test(nAgt)&&(a.version="6.2");/Windows NT 10.0/.test(nAgt)&&(a.version="10.0");/Linux/.test(nAgt)&&/Linux/.test(nAgt)&&(a.version="Unknown.Unknown");a.name=a.name.toLowerCase();a.major_version="Unknown";a.minor_version="Unknown";"Unknown.Unknown"!=a.version&&(a.major_version=parseFloat(a.version.split(".")[0]),a.minor_version=parseFloat(a.version.split(".")[1]));return a};
|
2873 |
+
jQuery.browser.os=getOS();jQuery.browser.hasTouch=isTouchSupported();jQuery.browser.name=navigator.appName;jQuery.browser.fullVersion=""+parseFloat(navigator.appVersion);jQuery.browser.majorVersion=parseInt(navigator.appVersion,10);var nameOffset,verOffset,ix;
|
2874 |
+
if(-1!=(verOffset=nAgt.indexOf("Opera")))jQuery.browser.opera=!0,jQuery.browser.name="Opera",jQuery.browser.fullVersion=nAgt.substring(verOffset+6),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.browser.fullVersion=nAgt.substring(verOffset+8));else if(-1!=(verOffset=nAgt.indexOf("OPR")))jQuery.browser.opera=!0,jQuery.browser.name="Opera",jQuery.browser.fullVersion=nAgt.substring(verOffset+4);else if(-1!=(verOffset=nAgt.indexOf("MSIE")))jQuery.browser.msie=!0,jQuery.browser.name="Microsoft Internet Explorer",
|
2875 |
+
jQuery.browser.fullVersion=nAgt.substring(verOffset+5);else if(-1!=nAgt.indexOf("Trident")){jQuery.browser.msie=!0;jQuery.browser.name="Microsoft Internet Explorer";var start=nAgt.indexOf("rv:")+3,end=start+4;jQuery.browser.fullVersion=nAgt.substring(start,end)}else-1!=(verOffset=nAgt.indexOf("Edge"))?(jQuery.browser.edge=!0,jQuery.browser.name="Microsoft Edge",jQuery.browser.fullVersion=nAgt.substring(verOffset+5)):-1!=(verOffset=nAgt.indexOf("Chrome"))?(jQuery.browser.webkit=!0,jQuery.browser.chrome=
|
2876 |
+
!0,jQuery.browser.name="Chrome",jQuery.browser.fullVersion=nAgt.substring(verOffset+7)):-1<nAgt.indexOf("mozilla/5.0")&&-1<nAgt.indexOf("android ")&&-1<nAgt.indexOf("applewebkit")&&!(-1<nAgt.indexOf("chrome"))?(verOffset=nAgt.indexOf("Chrome"),jQuery.browser.webkit=!0,jQuery.browser.androidStock=!0,jQuery.browser.name="androidStock",jQuery.browser.fullVersion=nAgt.substring(verOffset+7)):-1!=(verOffset=nAgt.indexOf("Safari"))?(jQuery.browser.webkit=!0,jQuery.browser.safari=!0,jQuery.browser.name=
|
2877 |
+
"Safari",jQuery.browser.fullVersion=nAgt.substring(verOffset+7),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.browser.fullVersion=nAgt.substring(verOffset+8))):-1!=(verOffset=nAgt.indexOf("AppleWebkit"))?(jQuery.browser.webkit=!0,jQuery.browser.safari=!0,jQuery.browser.name="Safari",jQuery.browser.fullVersion=nAgt.substring(verOffset+7),-1!=(verOffset=nAgt.indexOf("Version"))&&(jQuery.browser.fullVersion=nAgt.substring(verOffset+8))):-1!=(verOffset=nAgt.indexOf("Firefox"))?(jQuery.browser.mozilla=
|
2878 |
+
!0,jQuery.browser.name="Firefox",jQuery.browser.fullVersion=nAgt.substring(verOffset+8)):(nameOffset=nAgt.lastIndexOf(" ")+1)<(verOffset=nAgt.lastIndexOf("/"))&&(jQuery.browser.name=nAgt.substring(nameOffset,verOffset),jQuery.browser.fullVersion=nAgt.substring(verOffset+1),jQuery.browser.name.toLowerCase()==jQuery.browser.name.toUpperCase()&&(jQuery.browser.name=navigator.appName));
|
2879 |
+
-1!=(ix=jQuery.browser.fullVersion.indexOf(";"))&&(jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(0,ix));-1!=(ix=jQuery.browser.fullVersion.indexOf(" "))&&(jQuery.browser.fullVersion=jQuery.browser.fullVersion.substring(0,ix));jQuery.browser.majorVersion=parseInt(""+jQuery.browser.fullVersion,10);isNaN(jQuery.browser.majorVersion)&&(jQuery.browser.fullVersion=""+parseFloat(navigator.appVersion),jQuery.browser.majorVersion=parseInt(navigator.appVersion,10));
|
2880 |
+
jQuery.browser.version=jQuery.browser.majorVersion;jQuery.browser.android=/Android/i.test(nAgt);jQuery.browser.blackberry=/BlackBerry|BB|PlayBook/i.test(nAgt);jQuery.browser.ios=/iPhone|iPad|iPod|webOS/i.test(nAgt);jQuery.browser.operaMobile=/Opera Mini/i.test(nAgt);jQuery.browser.windowsMobile=/IEMobile|Windows Phone/i.test(nAgt);jQuery.browser.kindle=/Kindle|Silk/i.test(nAgt);
|
2881 |
+
jQuery.browser.mobile=jQuery.browser.android||jQuery.browser.blackberry||jQuery.browser.ios||jQuery.browser.windowsMobile||jQuery.browser.operaMobile||jQuery.browser.kindle;jQuery.isMobile=jQuery.browser.mobile;jQuery.isTablet=jQuery.browser.mobile&&765<jQuery(window).width();jQuery.isAndroidDefault=jQuery.browser.android&&!/chrome/i.test(nAgt);jQuery.mbBrowser=jQuery.browser;
|
2882 |
+
jQuery.browser.versionCompare=function(a,e){if("stringstring"!=typeof a+typeof e)return!1;for(var c=a.split("."),d=e.split("."),b=0,f=Math.max(c.length,d.length);b<f;b++){if(c[b]&&!d[b]&&0<parseInt(c[b])||parseInt(c[b])>parseInt(d[b]))return 1;if(d[b]&&!c[b]&&0<parseInt(d[b])||parseInt(c[b])<parseInt(d[b]))return-1}return 0};
|
2883 |
+
;
|
2884 |
+
/*
|
2885 |
+
* ******************************************************************************
|
2886 |
+
* jquery.mb.components
|
2887 |
+
* file: jquery.mb.CSSAnimate.min.js
|
2888 |
+
*
|
2889 |
+
* Copyright (c) 2001-2014. Matteo Bicocchi (Pupunzi);
|
2890 |
+
* Open lab srl, Firenze - Italy
|
2891 |
+
* email: matbicoc@gmail.com
|
2892 |
+
* site: http://pupunzi.com
|
2893 |
+
* blog: http://pupunzi.open-lab.com
|
2894 |
+
* http://open-lab.com
|
2895 |
+
*
|
2896 |
+
* Licences: MIT, GPL
|
2897 |
+
* http://www.opensource.org/licenses/mit-license.php
|
2898 |
+
* http://www.gnu.org/licenses/gpl.html
|
2899 |
+
*
|
2900 |
+
* last modified: 26/03/14 21.40
|
2901 |
+
* *****************************************************************************
|
2902 |
+
*/
|
2903 |
+
|
2904 |
+
jQuery.support.CSStransition=function(){var d=(document.body||document.documentElement).style;return void 0!==d.transition||void 0!==d.WebkitTransition||void 0!==d.MozTransition||void 0!==d.MsTransition||void 0!==d.OTransition}();function uncamel(d){return d.replace(/([A-Z])/g,function(a){return"-"+a.toLowerCase()})}function setUnit(d,a){return"string"!==typeof d||d.match(/^[\-0-9\.]+jQuery/)?""+d+a:d}
|
2905 |
+
function setFilter(d,a,b){var c=uncamel(a),g=jQuery.browser.mozilla?"":jQuery.CSS.sfx;d[g+"filter"]=d[g+"filter"]||"";b=setUnit(b>jQuery.CSS.filters[a].max?jQuery.CSS.filters[a].max:b,jQuery.CSS.filters[a].unit);d[g+"filter"]+=c+"("+b+") ";delete d[a]}
|
2906 |
+
jQuery.CSS={name:"mb.CSSAnimate",author:"Matteo Bicocchi",version:"2.0.0",transitionEnd:"transitionEnd",sfx:"",filters:{blur:{min:0,max:100,unit:"px"},brightness:{min:0,max:400,unit:"%"},contrast:{min:0,max:400,unit:"%"},grayscale:{min:0,max:100,unit:"%"},hueRotate:{min:0,max:360,unit:"deg"},invert:{min:0,max:100,unit:"%"},saturate:{min:0,max:400,unit:"%"},sepia:{min:0,max:100,unit:"%"}},normalizeCss:function(d){var a=jQuery.extend(!0,{},d);jQuery.browser.webkit||jQuery.browser.opera?jQuery.CSS.sfx=
|
2907 |
+
"-webkit-":jQuery.browser.mozilla?jQuery.CSS.sfx="-moz-":jQuery.browser.msie&&(jQuery.CSS.sfx="-ms-");jQuery.CSS.sfx="";for(var b in a){"transform"===b&&(a[jQuery.CSS.sfx+"transform"]=a[b],delete a[b]);"transform-origin"===b&&(a[jQuery.CSS.sfx+"transform-origin"]=d[b],delete a[b]);"filter"!==b||jQuery.browser.mozilla||(a[jQuery.CSS.sfx+"filter"]=d[b],delete a[b]);"blur"===b&&setFilter(a,"blur",d[b]);"brightness"===b&&setFilter(a,"brightness",d[b]);"contrast"===b&&setFilter(a,"contrast",d[b]);"grayscale"===
|
2908 |
+
b&&setFilter(a,"grayscale",d[b]);"hueRotate"===b&&setFilter(a,"hueRotate",d[b]);"invert"===b&&setFilter(a,"invert",d[b]);"saturate"===b&&setFilter(a,"saturate",d[b]);"sepia"===b&&setFilter(a,"sepia",d[b]);if("x"===b){var c=jQuery.CSS.sfx+"transform";a[c]=a[c]||"";a[c]+=" translateX("+setUnit(d[b],"px")+")";delete a[b]}"y"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" translateY("+setUnit(d[b],"px")+")",delete a[b]);"z"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" translateZ("+
|
2909 |
+
setUnit(d[b],"px")+")",delete a[b]);"rotate"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" rotate("+setUnit(d[b],"deg")+")",delete a[b]);"rotateX"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" rotateX("+setUnit(d[b],"deg")+")",delete a[b]);"rotateY"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" rotateY("+setUnit(d[b],"deg")+")",delete a[b]);"rotateZ"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" rotateZ("+setUnit(d[b],"deg")+")",delete a[b]);"scale"===b&&
|
2910 |
+
(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" scale("+setUnit(d[b],"")+")",delete a[b]);"scaleX"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" scaleX("+setUnit(d[b],"")+")",delete a[b]);"scaleY"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" scaleY("+setUnit(d[b],"")+")",delete a[b]);"scaleZ"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" scaleZ("+setUnit(d[b],"")+")",delete a[b]);"skew"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" skew("+setUnit(d[b],
|
2911 |
+
"deg")+")",delete a[b]);"skewX"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" skewX("+setUnit(d[b],"deg")+")",delete a[b]);"skewY"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" skewY("+setUnit(d[b],"deg")+")",delete a[b]);"perspective"===b&&(c=jQuery.CSS.sfx+"transform",a[c]=a[c]||"",a[c]+=" perspective("+setUnit(d[b],"px")+")",delete a[b])}return a},getProp:function(d){var a=[],b;for(b in d)0>a.indexOf(b)&&a.push(uncamel(b));return a.join(",")},animate:function(d,a,b,c,g){return this.each(function(){function n(){e.called=
|
2912 |
+
!0;e.CSSAIsRunning=!1;h.off(jQuery.CSS.transitionEnd+"."+e.id);clearTimeout(e.timeout);h.css(jQuery.CSS.sfx+"transition","");"function"==typeof g&&g.apply(e);"function"==typeof e.CSSqueue&&(e.CSSqueue(),e.CSSqueue=null)}var e=this,h=jQuery(this);e.id=e.id||"CSSA_"+(new Date).getTime();var k=k||{type:"noEvent"};if(e.CSSAIsRunning&&e.eventType==k.type&&!jQuery.browser.msie&&9>=jQuery.browser.version)e.CSSqueue=function(){h.CSSAnimate(d,a,b,c,g)};else if(e.CSSqueue=null,e.eventType=k.type,0!==h.length&&
|
2913 |
+
d){d=jQuery.normalizeCss(d);e.CSSAIsRunning=!0;"function"==typeof a&&(g=a,a=jQuery.fx.speeds._default);"function"==typeof b&&(c=b,b=0);"string"==typeof b&&(g=b,b=0);"function"==typeof c&&(g=c,c="cubic-bezier(0.65,0.03,0.36,0.72)");if("string"==typeof a)for(var l in jQuery.fx.speeds)if(a==l){a=jQuery.fx.speeds[l];break}else a=jQuery.fx.speeds._default;a||(a=jQuery.fx.speeds._default);"string"===typeof g&&(c=g,g=null);if(jQuery.support.CSStransition){var f={"default":"ease","in":"ease-in",out:"ease-out",
|
2914 |
+
"in-out":"ease-in-out",snap:"cubic-bezier(0,1,.5,1)",easeOutCubic:"cubic-bezier(.215,.61,.355,1)",easeInOutCubic:"cubic-bezier(.645,.045,.355,1)",easeInCirc:"cubic-bezier(.6,.04,.98,.335)",easeOutCirc:"cubic-bezier(.075,.82,.165,1)",easeInOutCirc:"cubic-bezier(.785,.135,.15,.86)",easeInExpo:"cubic-bezier(.95,.05,.795,.035)",easeOutExpo:"cubic-bezier(.19,1,.22,1)",easeInOutExpo:"cubic-bezier(1,0,0,1)",easeInQuad:"cubic-bezier(.55,.085,.68,.53)",easeOutQuad:"cubic-bezier(.25,.46,.45,.94)",easeInOutQuad:"cubic-bezier(.455,.03,.515,.955)",
|
2915 |
+
easeInQuart:"cubic-bezier(.895,.03,.685,.22)",easeOutQuart:"cubic-bezier(.165,.84,.44,1)",easeInOutQuart:"cubic-bezier(.77,0,.175,1)",easeInQuint:"cubic-bezier(.755,.05,.855,.06)",easeOutQuint:"cubic-bezier(.23,1,.32,1)",easeInOutQuint:"cubic-bezier(.86,0,.07,1)",easeInSine:"cubic-bezier(.47,0,.745,.715)",easeOutSine:"cubic-bezier(.39,.575,.565,1)",easeInOutSine:"cubic-bezier(.445,.05,.55,.95)",easeInBack:"cubic-bezier(.6,-.28,.735,.045)",easeOutBack:"cubic-bezier(.175, .885,.32,1.275)",easeInOutBack:"cubic-bezier(.68,-.55,.265,1.55)"};
|
2916 |
+
f[c]&&(c=f[c]);h.off(jQuery.CSS.transitionEnd+"."+e.id);f=jQuery.CSS.getProp(d);var m={};jQuery.extend(m,d);m[jQuery.CSS.sfx+"transition-property"]=f;m[jQuery.CSS.sfx+"transition-duration"]=a+"ms";m[jQuery.CSS.sfx+"transition-delay"]=b+"ms";m[jQuery.CSS.sfx+"transition-timing-function"]=c;setTimeout(function(){h.one(jQuery.CSS.transitionEnd+"."+e.id,n);h.css(m)},1);e.timeout=setTimeout(function(){e.called||!g?(e.called=!1,e.CSSAIsRunning=!1):(h.css(jQuery.CSS.sfx+"transition",""),g.apply(e),e.CSSAIsRunning=
|
2917 |
+
!1,"function"==typeof e.CSSqueue&&(e.CSSqueue(),e.CSSqueue=null))},a+b+10)}else{for(f in d)"transform"===f&&delete d[f],"filter"===f&&delete d[f],"transform-origin"===f&&delete d[f],"auto"===d[f]&&delete d[f],"x"===f&&(k=d[f],l="left",d[l]=k,delete d[f]),"y"===f&&(k=d[f],l="top",d[l]=k,delete d[f]),"-ms-transform"!==f&&"-ms-filter"!==f||delete d[f];h.delay(b).animate(d,a,g)}}})}};jQuery.fn.CSSAnimate=jQuery.CSS.animate;jQuery.normalizeCss=jQuery.CSS.normalizeCss;
|
2918 |
+
jQuery.fn.css3=function(d){return this.each(function(){var a=jQuery(this),b=jQuery.normalizeCss(d);a.css(b)})};
|
2919 |
+
;/*___________________________________________________________________________________________________________________________________________________
|
2920 |
+
_ jquery.mb.components _
|
2921 |
+
_ _
|
2922 |
+
_ file: jquery.mb.simpleSlider.min.js _
|
2923 |
+
_ last modified: 09/05/17 19.31 _
|
2924 |
+
_ _
|
2925 |
+
_ Open Lab s.r.l., Florence - Italy _
|
2926 |
+
_ _
|
2927 |
+
_ email: matteo@open-lab.com _
|
2928 |
+
_ site: http://pupunzi.com _
|
2929 |
+
_ http://open-lab.com _
|
2930 |
+
_ blog: http://pupunzi.open-lab.com _
|
2931 |
+
_ Q&A: http://jquery.pupunzi.com _
|
2932 |
+
_ _
|
2933 |
+
_ Licences: MIT, GPL _
|
2934 |
+
_ http://www.opensource.org/licenses/mit-license.php _
|
2935 |
+
_ http://www.gnu.org/licenses/gpl.html _
|
2936 |
+
_ _
|
2937 |
+
_ Copyright (c) 2001-2017. Matteo Bicocchi (Pupunzi); _
|
2938 |
+
___________________________________________________________________________________________________________________________________________________*/
|
2939 |
+
|
2940 |
+
(function(b){b.simpleSlider={defaults:{initialval:0,maxVal:100,orientation:"h",readonly:!1,callback:!1},events:{start:b.browser.mobile?"touchstart":"mousedown",end:b.browser.mobile?"touchend":"mouseup",move:b.browser.mobile?"touchmove":"mousemove"},init:function(c){return this.each(function(){var a=this,d=b(a);d.addClass("simpleSlider");a.opt={};b.extend(a.opt,b.simpleSlider.defaults,c);b.extend(a.opt,d.data());var e="h"==a.opt.orientation?"horizontal":"vertical";e=b("<div/>").addClass("level").addClass(e);
|
2941 |
+
d.prepend(e);a.level=e;d.css({cursor:"default"});"auto"==a.opt.maxVal&&(a.opt.maxVal=b(a).outerWidth());d.updateSliderVal();a.opt.readonly||(d.on(b.simpleSlider.events.start,function(c){b.browser.mobile&&(c=c.changedTouches[0]);a.canSlide=!0;d.updateSliderVal(c);"h"==a.opt.orientation?d.css({cursor:"col-resize"}):d.css({cursor:"row-resize"});b.browser.mobile||(c.preventDefault(),c.stopPropagation())}),b(document).on(b.simpleSlider.events.move,function(c){b.browser.mobile&&(c=c.changedTouches[0]);
|
2942 |
+
a.canSlide&&(b(document).css({cursor:"default"}),d.updateSliderVal(c),b.browser.mobile||(c.preventDefault(),c.stopPropagation()))}).on(b.simpleSlider.events.end,function(){b(document).css({cursor:"auto"});a.canSlide=!1;d.css({cursor:"auto"})}))})},updateSliderVal:function(c){var a=this.get(0);if(a.opt){a.opt.initialval="number"==typeof a.opt.initialval?a.opt.initialval:a.opt.initialval(a);var d=b(a).outerWidth(),e=b(a).outerHeight();a.x="object"==typeof c?c.clientX+document.body.scrollLeft-this.offset().left:
|
2943 |
+
"number"==typeof c?c*d/a.opt.maxVal:a.opt.initialval*d/a.opt.maxVal;a.y="object"==typeof c?c.clientY+document.body.scrollTop-this.offset().top:"number"==typeof c?(a.opt.maxVal-a.opt.initialval-c)*e/a.opt.maxVal:a.opt.initialval*e/a.opt.maxVal;a.y=this.outerHeight()-a.y;a.scaleX=a.x*a.opt.maxVal/d;a.scaleY=a.y*a.opt.maxVal/e;a.outOfRangeX=a.scaleX>a.opt.maxVal?a.scaleX-a.opt.maxVal:0>a.scaleX?a.scaleX:0;a.outOfRangeY=a.scaleY>a.opt.maxVal?a.scaleY-a.opt.maxVal:0>a.scaleY?a.scaleY:0;a.outOfRange="h"==
|
2944 |
+
a.opt.orientation?a.outOfRangeX:a.outOfRangeY;a.value="undefined"!=typeof c?"h"==a.opt.orientation?a.x>=this.outerWidth()?a.opt.maxVal:0>=a.x?0:a.scaleX:a.y>=this.outerHeight()?a.opt.maxVal:0>=a.y?0:a.scaleY:"h"==a.opt.orientation?a.scaleX:a.scaleY;"h"==a.opt.orientation?a.level.width(Math.floor(100*a.x/d)+"%"):a.level.height(Math.floor(100*a.y/e));"h"===a.opt.orientation&&(a.x>=this.outerWidth()||0>=a.x)||"h"!==a.opt.orientation&&(a.y>=this.outerHeight()||0>=a.y)||"function"===typeof a.opt.callback&&
|
2945 |
+
a.opt.callback(a)}}};b.fn.simpleSlider=b.simpleSlider.init;b.fn.updateSliderVal=b.simpleSlider.updateSliderVal})(jQuery);
|
2946 |
+
;/*___________________________________________________________________________________________________________________________________________________
|
2947 |
+
_ jquery.mb.components _
|
2948 |
+
_ _
|
2949 |
+
_ file: jquery.mb.storage.min.js _
|
2950 |
+
_ last modified: 24/05/15 16.08 _
|
2951 |
+
_ _
|
2952 |
+
_ Open Lab s.r.l., Florence - Italy _
|
2953 |
+
_ _
|
2954 |
+
_ email: matteo@open-lab.com _
|
2955 |
+
_ site: http://pupunzi.com _
|
2956 |
+
_ http://open-lab.com _
|
2957 |
+
_ blog: http://pupunzi.open-lab.com _
|
2958 |
+
_ Q&A: http://jquery.pupunzi.com _
|
2959 |
+
_ _
|
2960 |
+
_ Licences: MIT, GPL _
|
2961 |
+
_ http://www.opensource.org/licenses/mit-license.php _
|
2962 |
+
_ http://www.gnu.org/licenses/gpl.html _
|
2963 |
+
_ _
|
2964 |
+
_ Copyright (c) 2001-2015. Matteo Bicocchi (Pupunzi); _
|
2965 |
+
___________________________________________________________________________________________________________________________________________________*/
|
2966 |
+
|
2967 |
+
(function(d){d.mbCookie={set:function(a,c,f,b){"object"==typeof c&&(c=JSON.stringify(c));b=b?"; domain="+b:"";var e=new Date,d="";0<f&&(e.setTime(e.getTime()+864E5*f),d="; expires="+e.toGMTString());document.cookie=a+"="+c+d+"; path=/"+b},get:function(a){a+="=";for(var c=document.cookie.split(";"),d=0;d<c.length;d++){for(var b=c[d];" "==b.charAt(0);)b=b.substring(1,b.length);if(0==b.indexOf(a))try{return JSON.parse(b.substring(a.length,b.length))}catch(e){return b.substring(a.length,b.length)}}return null},
|
2968 |
+
remove:function(a){d.mbCookie.set(a,"",-1)}};d.mbStorage={set:function(a,c){"object"==typeof c&&(c=JSON.stringify(c));localStorage.setItem(a,c)},get:function(a){if(localStorage[a])try{return JSON.parse(localStorage[a])}catch(c){return localStorage[a]}else return null},remove:function(a){a?localStorage.removeItem(a):localStorage.clear()}}})(jQuery);
|
content_elements/bt_bb_separator/bt_bb_separator.php
ADDED
@@ -0,0 +1,96 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_separator extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'top_spacing' => '',
|
8 |
+
'bottom_spacing' => '',
|
9 |
+
'border_style' => '',
|
10 |
+
'border_width' => '',
|
11 |
+
) ), $atts, $this->shortcode ) );
|
12 |
+
|
13 |
+
$class = array( $this->shortcode );
|
14 |
+
|
15 |
+
if ( $el_class != '' ) {
|
16 |
+
$class[] = $el_class;
|
17 |
+
}
|
18 |
+
|
19 |
+
$id_attr = '';
|
20 |
+
if ( $el_id != '' ) {
|
21 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
22 |
+
}
|
23 |
+
|
24 |
+
if ( $top_spacing != '' ) {
|
25 |
+
$class[] = $this->prefix . 'top_spacing' . '_' . $top_spacing;
|
26 |
+
}
|
27 |
+
|
28 |
+
if ( $bottom_spacing != '' ) {
|
29 |
+
$class[] = $this->prefix . 'bottom_spacing' . '_' . $bottom_spacing;
|
30 |
+
}
|
31 |
+
|
32 |
+
if ( $border_style != '' ) {
|
33 |
+
$class[] = $this->prefix . 'border_style' . '_' . $border_style;
|
34 |
+
}
|
35 |
+
|
36 |
+
if ( $border_width != '' ) {
|
37 |
+
$el_style = $el_style . '; border-width: ' . $border_width;
|
38 |
+
if ( $border_style == 'none' ) {
|
39 |
+
$el_style = $el_style . '; border-color: transparent; border-style: solid;';
|
40 |
+
}
|
41 |
+
}
|
42 |
+
|
43 |
+
$style_attr = '';
|
44 |
+
if ( $el_style != '' ) {
|
45 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
46 |
+
}
|
47 |
+
|
48 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
49 |
+
|
50 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '></div>';
|
51 |
+
|
52 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
53 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
54 |
+
|
55 |
+
return $output;
|
56 |
+
|
57 |
+
}
|
58 |
+
|
59 |
+
function map_shortcode() {
|
60 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Separator', 'bold-builder' ), 'description' => esc_html__( 'Separator line', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
61 |
+
'params' => array(
|
62 |
+
array( 'param_name' => 'top_spacing', 'type' => 'dropdown', 'heading' => esc_html__( 'Top spacing', 'bold-builder' ), 'preview' => true,
|
63 |
+
'value' => array(
|
64 |
+
esc_html__( 'No spacing', 'bold-builder' ) => '',
|
65 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extra_small',
|
66 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
67 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
68 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
69 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
70 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'extra_large'
|
71 |
+
)
|
72 |
+
),
|
73 |
+
array( 'param_name' => 'bottom_spacing', 'type' => 'dropdown', 'heading' => esc_html__( 'Bottom spacing', 'bold-builder' ), 'preview' => true,
|
74 |
+
'value' => array(
|
75 |
+
esc_html__( 'No spacing', 'bold-builder' ) => '',
|
76 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'extra_small',
|
77 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
78 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
79 |
+
esc_html__( 'Medium', 'bold-builder' ) => 'medium',
|
80 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
81 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'extra_large'
|
82 |
+
)
|
83 |
+
),
|
84 |
+
array( 'param_name' => 'border_style', 'type' => 'dropdown', 'heading' => esc_html__( 'Border style', 'bold-builder' ), 'preview' => true,
|
85 |
+
'value' => array(
|
86 |
+
esc_html__( 'None', 'bold-builder' ) => 'none',
|
87 |
+
esc_html__( 'Solid', 'bold-builder' ) => 'solid',
|
88 |
+
esc_html__( 'Dotted', 'bold-builder' ) => 'dotted',
|
89 |
+
esc_html__( 'Dashed', 'bold-builder' ) => 'dashed'
|
90 |
+
)
|
91 |
+
),
|
92 |
+
array( 'param_name' => 'border_width', 'type' => 'textfield', 'heading' => esc_html__( 'Border width', 'bold-builder' ), 'description' => esc_html__( 'E.g. 5px or 1em', 'bold-builder' ) )
|
93 |
+
)
|
94 |
+
) );
|
95 |
+
}
|
96 |
+
}
|
content_elements/bt_bb_service/bt_bb_service.php
ADDED
@@ -0,0 +1,154 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_service extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'icon' => '',
|
8 |
+
'title' => '',
|
9 |
+
'text' => '',
|
10 |
+
'url' => '',
|
11 |
+
'target' => '',
|
12 |
+
'color_scheme' => '',
|
13 |
+
'style' => '',
|
14 |
+
'size' => '',
|
15 |
+
'shape' => '',
|
16 |
+
'align' => ''
|
17 |
+
) ), $atts, $this->shortcode ) );
|
18 |
+
|
19 |
+
$class = array( $this->shortcode );
|
20 |
+
$data_override_class = array();
|
21 |
+
|
22 |
+
if ( $el_class != '' ) {
|
23 |
+
$class[] = $el_class;
|
24 |
+
}
|
25 |
+
|
26 |
+
$id_attr = '';
|
27 |
+
if ( $el_id != '' ) {
|
28 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
29 |
+
}
|
30 |
+
|
31 |
+
$style_attr = '';
|
32 |
+
if ( $el_style != '' ) {
|
33 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
34 |
+
}
|
35 |
+
|
36 |
+
if ( $color_scheme != '' ) {
|
37 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
38 |
+
}
|
39 |
+
|
40 |
+
if ( $style != '' ) {
|
41 |
+
$class[] = $this->prefix . 'style' . '_' . $style;
|
42 |
+
}
|
43 |
+
|
44 |
+
$this->responsive_data_override_class(
|
45 |
+
$class, $data_override_class,
|
46 |
+
array(
|
47 |
+
'prefix' => $this->prefix,
|
48 |
+
'param' => 'size',
|
49 |
+
'value' => $size
|
50 |
+
)
|
51 |
+
);
|
52 |
+
|
53 |
+
if ( $shape != '' ) {
|
54 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
55 |
+
}
|
56 |
+
|
57 |
+
$this->responsive_data_override_class(
|
58 |
+
$class, $data_override_class,
|
59 |
+
array(
|
60 |
+
'prefix' => $this->prefix,
|
61 |
+
'param' => 'align',
|
62 |
+
'value' => $align
|
63 |
+
)
|
64 |
+
);
|
65 |
+
|
66 |
+
$link = bt_bb_get_url( $url );
|
67 |
+
|
68 |
+
$icon_title = wp_strip_all_tags($title);
|
69 |
+
|
70 |
+
$icon = bt_bb_icon::get_html( $icon, '', $link, $icon_title, $target );
|
71 |
+
|
72 |
+
if ( $link != '' ) {
|
73 |
+
if ( $title != '' ) $title = '<a href="' . esc_url( $link ) . '" target="' . esc_attr( $target ) . '">' . $title . '</a>';
|
74 |
+
}
|
75 |
+
|
76 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
77 |
+
|
78 |
+
$output = $icon;
|
79 |
+
|
80 |
+
$output .= '<div class="' . esc_attr( $this->shortcode ) . '_content">';
|
81 |
+
if ( $title != '' ) $output .= '<div class="' . esc_attr( $this->shortcode ) . '_content_title">' . $title . '</div>';
|
82 |
+
if ( $text != '' ) $output .= '<div class="' . esc_attr( $this->shortcode ) . '_content_text">' . nl2br( $text ) . '</div>';
|
83 |
+
$output .= '</div>';
|
84 |
+
|
85 |
+
$output = '<div' . $id_attr . ' class="' . esc_attr( implode( ' ', $class ) ) . '"' . $style_attr . ' data-bt-override-class="' . htmlspecialchars( json_encode( $data_override_class, JSON_FORCE_OBJECT ), ENT_QUOTES, 'UTF-8' ) . '">' . $output . '</div>';
|
86 |
+
|
87 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
88 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
89 |
+
|
90 |
+
return $output;
|
91 |
+
|
92 |
+
}
|
93 |
+
|
94 |
+
function map_shortcode() {
|
95 |
+
|
96 |
+
if ( function_exists('boldthemes_get_icon_fonts_bb_array') ) {
|
97 |
+
$icon_arr = boldthemes_get_icon_fonts_bb_array();
|
98 |
+
} else {
|
99 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/fa_icons.php' );
|
100 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/s7_icons.php' );
|
101 |
+
$icon_arr = array( 'Font Awesome' => bt_bb_fa_icons(), 'S7' => bt_bb_s7_icons() );
|
102 |
+
}
|
103 |
+
|
104 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
105 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
106 |
+
|
107 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Service', 'bold-builder' ), 'description' => esc_html__( 'Icon with text', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
108 |
+
'params' => array(
|
109 |
+
array( 'param_name' => 'icon', 'type' => 'iconpicker', 'heading' => esc_html__( 'Icon', 'bold-builder' ), 'value' => $icon_arr, 'preview' => true ),
|
110 |
+
array( 'param_name' => 'title', 'type' => 'textfield', 'heading' => esc_html__( 'Title', 'bold-builder' ), 'preview' => true ),
|
111 |
+
array( 'param_name' => 'text', 'type' => 'textarea', 'heading' => esc_html__( 'Text', 'bold-builder' ) ),
|
112 |
+
array( 'param_name' => 'url', 'type' => 'link', 'heading' => esc_html__( 'URL', 'bold-builder' ), 'description' => esc_html__( 'Enter full or local URL (e.g. https://www.bold-themes.com or /pages/about-us) or post slug (e.g. about-us) or search for existing content.', 'bold-builder' ) ),
|
113 |
+
array( 'param_name' => 'target', 'type' => 'dropdown', 'heading' => esc_html__( 'Target', 'bold-builder' ),
|
114 |
+
'value' => array(
|
115 |
+
esc_html__( 'Self (open in same tab)', 'bold-builder' ) => '_self',
|
116 |
+
esc_html__( 'Blank (open in new tab)', 'bold-builder' ) => '_blank',
|
117 |
+
)
|
118 |
+
),
|
119 |
+
array( 'param_name' => 'align', 'type' => 'dropdown', 'heading' => esc_html__( 'Icon position', 'bold-builder' ), 'responsive_override' => true,
|
120 |
+
'value' => array(
|
121 |
+
esc_html__( 'Inherit', 'bold-builder' ) => 'inherit',
|
122 |
+
esc_html__( 'Left', 'bold-builder' ) => 'left',
|
123 |
+
esc_html__( 'Center', 'bold-builder' ) => 'center',
|
124 |
+
esc_html__( 'Right', 'bold-builder' ) => 'right'
|
125 |
+
)
|
126 |
+
),
|
127 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Icon size', 'bold-builder' ), 'responsive_override' => true, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ),
|
128 |
+
'value' => array(
|
129 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
130 |
+
esc_html__( 'Extra small', 'bold-builder' ) => 'xsmall',
|
131 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
132 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large',
|
133 |
+
esc_html__( 'Extra large', 'bold-builder' ) => 'xlarge'
|
134 |
+
)
|
135 |
+
),
|
136 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ) ),
|
137 |
+
array( 'param_name' => 'style', 'type' => 'dropdown', 'heading' => esc_html__( 'Icon style', 'bold-builder' ), 'preview' => true, 'group' => esc_html__( 'Design', 'bold-builder' ),
|
138 |
+
'value' => array(
|
139 |
+
esc_html__( 'Outline', 'bold-builder' ) => 'outline',
|
140 |
+
esc_html__( 'Filled', 'bold-builder' ) => 'filled',
|
141 |
+
esc_html__( 'Borderless', 'bold-builder' ) => 'borderless'
|
142 |
+
)
|
143 |
+
),
|
144 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Icon shape', 'bold-builder' ), 'group' => esc_html__( 'Design', 'bold-builder' ),
|
145 |
+
'value' => array(
|
146 |
+
esc_html__( 'Circle', 'bold-builder' ) => 'circle',
|
147 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
148 |
+
esc_html__( 'Rounded Square', 'bold-builder' ) => 'round'
|
149 |
+
)
|
150 |
+
)
|
151 |
+
)
|
152 |
+
) );
|
153 |
+
}
|
154 |
+
}
|
content_elements/bt_bb_slider/bt_bb_slider.php
ADDED
@@ -0,0 +1,202 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_slider extends BT_BB_Element {
|
4 |
+
|
5 |
+
public $auto_play = '';
|
6 |
+
|
7 |
+
function handle_shortcode( $atts, $content ) {
|
8 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
9 |
+
'images' => '',
|
10 |
+
'height' => '',
|
11 |
+
'size' => 'full',
|
12 |
+
'show_arrows' => '',
|
13 |
+
'show_dots' => '',
|
14 |
+
'animation' => '',
|
15 |
+
'slides_to_show' => '',
|
16 |
+
'auto_play' => '',
|
17 |
+
'pause_on_hover' => '',
|
18 |
+
'use_lightbox' => ''
|
19 |
+
) ), $atts, $this->shortcode ) );
|
20 |
+
|
21 |
+
$slider_class = array( 'slick-slider' );
|
22 |
+
$class = array( $this->shortcode );
|
23 |
+
|
24 |
+
if ( $el_class != '' ) {
|
25 |
+
$class[] = $el_class;
|
26 |
+
}
|
27 |
+
|
28 |
+
$id_attr = '';
|
29 |
+
if ( $el_id != '' ) {
|
30 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
31 |
+
}
|
32 |
+
|
33 |
+
$style_attr = '';
|
34 |
+
if ( $el_style != '' ) {
|
35 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
36 |
+
}
|
37 |
+
|
38 |
+
if ( $height != '' ) {
|
39 |
+
$class[] = $this->prefix . 'height' . '_' . $height;
|
40 |
+
}
|
41 |
+
|
42 |
+
$data_slick = ' ' . 'data-slick=\'{ "lazyLoad": "progressive", "cssEase": "ease-out", "speed": "300"';
|
43 |
+
|
44 |
+
if ( $animation == 'fade' ) {
|
45 |
+
$data_slick .= ', "fade": true';
|
46 |
+
$slider_class[] = 'fade';
|
47 |
+
$slides_to_show = 1;
|
48 |
+
}
|
49 |
+
|
50 |
+
if ( $height != 'keep-height' ) {
|
51 |
+
$data_slick .= ', "adaptiveHeight": true';
|
52 |
+
}
|
53 |
+
|
54 |
+
if ( $show_dots != 'hide' ) {
|
55 |
+
$data_slick .= ', "dots": true' ;
|
56 |
+
$class[] = $this->prefix . 'show_dots' . '_' . $show_dots;
|
57 |
+
}
|
58 |
+
|
59 |
+
if ( $show_arrows != 'hide' ) {
|
60 |
+
$data_slick .= ', "prevArrow": "<button type=\"button\" class=\"slick-prev\">", "nextArrow": "<button type=\"button\" class=\"slick-next\">"';
|
61 |
+
} else {
|
62 |
+
$data_slick .= ', "prevArrow": "", "nextArrow": ""';
|
63 |
+
}
|
64 |
+
|
65 |
+
if ( $slides_to_show > 1 ) {
|
66 |
+
$data_slick .= ',"slidesToShow": ' . intval( $slides_to_show );
|
67 |
+
$class[] = $this->prefix . 'multiple_slides';
|
68 |
+
}
|
69 |
+
|
70 |
+
if ( $auto_play != '' ) {
|
71 |
+
$data_slick .= ',"autoplay": true, "autoplaySpeed": ' . intval( $auto_play );
|
72 |
+
}
|
73 |
+
|
74 |
+
if ( $pause_on_hover == 'no' ) {
|
75 |
+
$data_slick .= ',"pauseOnHover": false';
|
76 |
+
}
|
77 |
+
|
78 |
+
if ( is_rtl() ) {
|
79 |
+
$data_slick .= ', "rtl": true' ;
|
80 |
+
}
|
81 |
+
|
82 |
+
if ( $slides_to_show > 1 ) {
|
83 |
+
$data_slick .= ', "responsive": [';
|
84 |
+
if ( $slides_to_show > 1 ) {
|
85 |
+
$data_slick .= '{ "breakpoint": 480, "settings": { "slidesToShow": 1, "slidesToScroll": 1 } }';
|
86 |
+
}
|
87 |
+
if ( $slides_to_show > 2 ) {
|
88 |
+
$data_slick .= ',{ "breakpoint": 768, "settings": { "slidesToShow": 2, "slidesToScroll": 2 } }';
|
89 |
+
}
|
90 |
+
if ( $slides_to_show > 3 ) {
|
91 |
+
$data_slick .= ',{ "breakpoint": 920, "settings": { "slidesToShow": 3, "slidesToScroll": 3 } }';
|
92 |
+
}
|
93 |
+
if ( $slides_to_show > 4 ) {
|
94 |
+
$data_slick .= ',{ "breakpoint": 1024, "settings": { "slidesToShow": 3, "slidesToScroll": 3 } }';
|
95 |
+
}
|
96 |
+
$data_slick .= ']';
|
97 |
+
}
|
98 |
+
|
99 |
+
$data_slick = $data_slick . '}\' ';
|
100 |
+
|
101 |
+
if ( $use_lightbox == 'use_lightbox' ) {
|
102 |
+
$class[] = $this->prefix . 'use_lightbox';
|
103 |
+
}
|
104 |
+
|
105 |
+
// $class[] = $this->prefix . 'use_lightbox';
|
106 |
+
|
107 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
108 |
+
|
109 |
+
$output = '';
|
110 |
+
|
111 |
+
if ( $images != '' ) {
|
112 |
+
$image_array = explode( ',', $images );
|
113 |
+
foreach( $image_array as $image ) {
|
114 |
+
$alt = '';
|
115 |
+
$title = '';
|
116 |
+
$image_thumb_src = plugins_url( 'placeholder.png', __FILE__ );
|
117 |
+
$image_full_src = plugins_url( 'placeholder.png', __FILE__ );
|
118 |
+
if ( is_numeric( $image ) ) {
|
119 |
+
$post_image = get_post( $image );
|
120 |
+
if ( is_object( $post_image ) ) {
|
121 |
+
$alt = get_post_meta( $post_image->ID, '_wp_attachment_image_alt', true );
|
122 |
+
if ( $alt == '' ) {
|
123 |
+
$alt = $post_image->post_excerpt;
|
124 |
+
}
|
125 |
+
if ( $alt == '' ) {
|
126 |
+
$alt = $post_image->post_title;
|
127 |
+
}
|
128 |
+
$title = $post_image->post_title;
|
129 |
+
if ( $title != '' ) {
|
130 |
+
$title = ' title="' . esc_attr( $title ) . '"';
|
131 |
+
}
|
132 |
+
$image_thumb = wp_get_attachment_image_src( $image, $size );
|
133 |
+
$image_full = wp_get_attachment_image_src( $image, 'full' );
|
134 |
+
$image_thumb_src = $image_thumb[0];
|
135 |
+
$image_full_src = $image_full[0];
|
136 |
+
}
|
137 |
+
}
|
138 |
+
if ( $height == 'auto' || $height == 'keep-height' ) {
|
139 |
+
$output .= '<div class="bt_bb_slider_item" data-src-full="' . esc_url_raw( $image_full_src ) . '"><img src="' . esc_url_raw( $image_thumb_src ) . '" alt="' . esc_attr( $alt ) . '" ' . ( $title ) . '></div>';
|
140 |
+
} else {
|
141 |
+
$output .= '<div class="bt_bb_slider_item" style="background-image:url(\'' . esc_url_raw( $image_thumb_src ) . '\')" data-src-full="' . esc_url_raw( $image_full_src ) . '"></div>';
|
142 |
+
}
|
143 |
+
|
144 |
+
}
|
145 |
+
}
|
146 |
+
|
147 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '><div class="' . esc_attr( implode( ' ', $slider_class ) ) . '" ' . $data_slick . '>' . $output . '</div></div>';
|
148 |
+
|
149 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
150 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
151 |
+
|
152 |
+
return $output;
|
153 |
+
|
154 |
+
}
|
155 |
+
|
156 |
+
function map_shortcode() {
|
157 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Image Slider', 'bold-builder' ), 'description' => esc_html__( 'Slider with images', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
158 |
+
'params' => array(
|
159 |
+
array( 'param_name' => 'images', 'type' => 'attach_images', 'heading' => esc_html__( 'Images', 'bold-builder' ) ),
|
160 |
+
array( 'param_name' => 'height', 'type' => 'dropdown', 'heading' => esc_html__( 'Height', 'bold-builder' ),
|
161 |
+
'value' => array(
|
162 |
+
esc_html__( 'Auto', 'bold-builder' ) => 'auto',
|
163 |
+
esc_html__( 'Keep height', 'bold-builder' ) => 'keep-height',
|
164 |
+
esc_html__( 'Half screen', 'bold-builder' ) => 'half_screen',
|
165 |
+
esc_html__( 'Full screen', 'bold-builder' ) => 'full_screen'
|
166 |
+
)
|
167 |
+
),
|
168 |
+
array( 'param_name' => 'size', 'type' => 'dropdown', 'heading' => esc_html__( 'Images size', 'bold-builder' ), 'preview' => true,
|
169 |
+
'value' => bt_bb_get_image_sizes()
|
170 |
+
),
|
171 |
+
array( 'param_name' => 'animation', 'type' => 'dropdown', 'heading' => esc_html__( 'Animation', 'bold-builder' ), 'description' => esc_html__( 'If fade is selected, number of slides to show will be 1', 'bold-builder' ),
|
172 |
+
'value' => array(
|
173 |
+
esc_html__( 'Default', 'bold-builder' ) => 'slide',
|
174 |
+
esc_html__( 'Fade', 'bold-builder' ) => 'fade'
|
175 |
+
)
|
176 |
+
),
|
177 |
+
array( 'param_name' => 'show_arrows', 'default' => 'show', 'type' => 'dropdown', 'heading' => esc_html__( 'Navigation arrows', 'bold-builder' ),
|
178 |
+
'value' => array(
|
179 |
+
esc_html__( 'Show', 'bold-builder' ) => 'show',
|
180 |
+
esc_html__( 'Hide', 'bold-builder' ) => 'hide'
|
181 |
+
)
|
182 |
+
),
|
183 |
+
array( 'param_name' => 'show_dots', 'type' => 'dropdown', 'heading' => esc_html__( 'Dots navigation', 'bold-builder' ),
|
184 |
+
'value' => array(
|
185 |
+
esc_html__( 'Bottom', 'bold-builder' ) => 'bottom',
|
186 |
+
esc_html__( 'Below', 'bold-builder' ) => 'below',
|
187 |
+
esc_html__( 'Hide', 'bold-builder' ) => 'hide'
|
188 |
+
)
|
189 |
+
),
|
190 |
+
array( 'param_name' => 'slides_to_show', 'type' => 'textfield', 'preview' => true, 'default' => 1, 'heading' => esc_html__( 'Number of slides to show', 'bold-builder' ), 'description' => esc_html__( 'E.g. 3, but if fade animation is selected, number will be 1 anyway', 'bold-builder' ) ),
|
191 |
+
array( 'param_name' => 'auto_play', 'type' => 'textfield', 'heading' => esc_html__( 'Autoplay interval (ms)', 'bold-builder' ), 'description' => esc_html__( 'e.g. 2000', 'bold-builder' ),
|
192 |
+
array( 'param_name' => 'pause_on_hover', 'default' => 'yes', 'type' => 'dropdown', 'heading' => esc_html__( 'Pause slideshow on hover', 'bold-builder' ),
|
193 |
+
'value' => array(
|
194 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes',
|
195 |
+
esc_html__( 'No', 'bold-builder' ) => 'no'
|
196 |
+
)
|
197 |
+
) ),
|
198 |
+
array( 'param_name' => 'use_lightbox', 'type' => 'checkbox', 'value' => array( esc_html__( 'Yes', 'bold-builder' ) => 'use_lightbox', esc_html__( 'No', 'bold-builder' ) => 'dont_use_lightbox' ), 'heading' => esc_html__( 'Use lightbox (opens image in full size on click)', 'bold-builder' ) )
|
199 |
+
)
|
200 |
+
) );
|
201 |
+
}
|
202 |
+
}
|
content_elements/bt_bb_slider/placeholder.png
ADDED
Binary file
|
content_elements/bt_bb_tab_item/bt_bb_tab_item.php
ADDED
@@ -0,0 +1,46 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_tab_item extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'title' => ''
|
8 |
+
) ), $atts, $this->shortcode ) );
|
9 |
+
|
10 |
+
$class = array( $this->shortcode );
|
11 |
+
|
12 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
13 |
+
|
14 |
+
$output = '';
|
15 |
+
|
16 |
+
$output1 = '<li><span>' . $title . '</span></li>';
|
17 |
+
|
18 |
+
if ( strpos( $content, 'bt_bb_image' ) ) {
|
19 |
+
$class[] = 'has_bt_bb_image';
|
20 |
+
}
|
21 |
+
|
22 |
+
$output2 = '<div class="' . implode( ' ', $class ) . '">
|
23 |
+
<div class="bt_bb_tab_content">' . wptexturize( do_shortcode( $content ) ) . '</div>
|
24 |
+
</div>';
|
25 |
+
|
26 |
+
$output .= $output1 . '%$%' . $output2 . '%$%';
|
27 |
+
|
28 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
29 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
30 |
+
|
31 |
+
return $output;
|
32 |
+
|
33 |
+
}
|
34 |
+
|
35 |
+
function add_params() {
|
36 |
+
// removes default params from BT_BB_Element
|
37 |
+
}
|
38 |
+
|
39 |
+
function map_shortcode() {
|
40 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Tab', 'bold-builder' ), 'description' => esc_html__( 'Tab item', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_section' => false, 'bt_bb_row' => false, 'bt_bb_column' => false, 'bt_bb_column_inner' => false, 'bt_bb_tabs' => false, 'bt_bb_tab_item' => false, 'bt_bb_accordion' => false, 'bt_bb_accordion_item' => false, 'bt_bb_cost_calculator_item' => false, 'bt_cc_group' => false, 'bt_cc_multiply' => false, 'bt_cc_item' => false, 'bt_bb_content_slider_item' => false, 'bt_bb_google_maps_location' => false, '_content' => false ), 'accept_all' => true, 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
41 |
+
'params' => array(
|
42 |
+
array( 'param_name' => 'title', 'type' => 'textfield', 'heading' => esc_html__( 'Title', 'bold-builder' ), 'preview' => true )
|
43 |
+
)
|
44 |
+
) );
|
45 |
+
}
|
46 |
+
}
|
content_elements/bt_bb_tabs/bt_bb_tabs.js
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
(function( $ ) {
|
2 |
+
"use strict";
|
3 |
+
|
4 |
+
$( '.bt_bb_tabs li' ).click(function() {
|
5 |
+
$( this ).siblings().removeClass( 'on' );
|
6 |
+
$( this ).addClass( 'on' );
|
7 |
+
$( this ).closest( '.bt_bb_tabs' ).find( '.bt_bb_tab_item' ).removeClass( 'on' );
|
8 |
+
$( this ).closest( '.bt_bb_tabs' ).find( '.bt_bb_tab_item' ).eq( $( this ).index() ).addClass( 'on' );
|
9 |
+
});
|
10 |
+
$( '.bt_bb_tabs' ).each(function() {
|
11 |
+
$( this ).find( 'li' ).first().click();
|
12 |
+
});
|
13 |
+
})( jQuery );
|
content_elements/bt_bb_tabs/bt_bb_tabs.php
ADDED
@@ -0,0 +1,92 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_tabs extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'color_scheme' => '',
|
8 |
+
'style' => '',
|
9 |
+
'shape' => ''
|
10 |
+
) ), $atts, $this->shortcode ) );
|
11 |
+
|
12 |
+
$class = array( $this->shortcode );
|
13 |
+
|
14 |
+
if ( $el_class != '' ) {
|
15 |
+
$class[] = $el_class;
|
16 |
+
}
|
17 |
+
|
18 |
+
$id_attr = '';
|
19 |
+
if ( $el_id != '' ) {
|
20 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
21 |
+
}
|
22 |
+
|
23 |
+
$style_attr = '';
|
24 |
+
if ( $el_style != '' ) {
|
25 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
26 |
+
}
|
27 |
+
|
28 |
+
if ( $color_scheme != '' ) {
|
29 |
+
$class[] = $this->prefix . 'color_scheme_' . bt_bb_get_color_scheme_id( $color_scheme );
|
30 |
+
}
|
31 |
+
|
32 |
+
if ( $style != '' ) {
|
33 |
+
$class[] = $this->prefix . 'style' . '_' . $style;
|
34 |
+
}
|
35 |
+
|
36 |
+
if ( $shape != '' ) {
|
37 |
+
$class[] = $this->prefix . 'shape' . '_' . $shape;
|
38 |
+
}
|
39 |
+
|
40 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
41 |
+
|
42 |
+
$content = do_shortcode( $content );
|
43 |
+
$content = explode( '%$%', $content );
|
44 |
+
|
45 |
+
$output = '';
|
46 |
+
|
47 |
+
$output .='<ul class="bt_bb_tabs_header">';
|
48 |
+
for ( $i = 0; $i < count( $content ); $i = $i + 2 ) {
|
49 |
+
$output .= wptexturize( $content[ $i ] );
|
50 |
+
}
|
51 |
+
$output .='</ul>';
|
52 |
+
$output .='<div class="bt_bb_tabs_tabs">';
|
53 |
+
for ( $i = 1; $i < count( $content ); $i = $i + 2 ) {
|
54 |
+
$output .= wptexturize( $content[ $i ] );
|
55 |
+
}
|
56 |
+
$output .='</div>';
|
57 |
+
|
58 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>' . $output . '</div>';
|
59 |
+
|
60 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
61 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
62 |
+
|
63 |
+
return $output;
|
64 |
+
|
65 |
+
}
|
66 |
+
|
67 |
+
function map_shortcode() {
|
68 |
+
|
69 |
+
require_once( dirname(__FILE__) . '/../../content_elements_misc/misc.php' );
|
70 |
+
$color_scheme_arr = bt_bb_get_color_scheme_param_array();
|
71 |
+
|
72 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Tabs', 'bold-builder' ), 'description' => esc_html__( 'Tabs container', 'bold-builder' ), 'container' => 'vertical', 'accept' => array( 'bt_bb_tab_item' => true ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
73 |
+
'params' => array(
|
74 |
+
array( 'param_name' => 'color_scheme', 'type' => 'dropdown', 'heading' => esc_html__( 'Color scheme', 'bold-builder' ), 'description' => esc_html__( 'Define color schemes in Bold Builder settings or define accent and alternate colors in theme customizer (if avaliable)', 'bold-builder' ), 'value' => $color_scheme_arr, 'preview' => true ),
|
75 |
+
array( 'param_name' => 'style', 'type' => 'dropdown', 'heading' => esc_html__( 'Style', 'bold-builder' ), 'preview' => true,
|
76 |
+
'value' => array(
|
77 |
+
esc_html__( 'Outline', 'bold-builder' ) => 'outline',
|
78 |
+
esc_html__( 'Filled', 'bold-builder' ) => 'filled',
|
79 |
+
esc_html__( 'Simple', 'bold-builder' ) => 'simple'
|
80 |
+
)
|
81 |
+
),
|
82 |
+
array( 'param_name' => 'shape', 'type' => 'dropdown', 'heading' => esc_html__( 'Shape', 'bold-builder' ),
|
83 |
+
'value' => array(
|
84 |
+
esc_html__( 'Square', 'bold-builder' ) => 'square',
|
85 |
+
esc_html__( 'Rounded', 'bold-builder' ) => 'rounded',
|
86 |
+
esc_html__( 'Round', 'bold-builder' ) => 'round'
|
87 |
+
)
|
88 |
+
)
|
89 |
+
)
|
90 |
+
) );
|
91 |
+
}
|
92 |
+
}
|
content_elements/bt_bb_text/bt_bb_text.php
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_text extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
|
7 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array() ), $atts, $this->shortcode ) );
|
8 |
+
|
9 |
+
$class = array( $this->shortcode );
|
10 |
+
|
11 |
+
if ( $el_class != '' ) {
|
12 |
+
$class[] = $el_class;
|
13 |
+
}
|
14 |
+
|
15 |
+
$id_attr = '';
|
16 |
+
if ( $el_id != '' ) {
|
17 |
+
$id_attr = 'id="' . esc_attr( $el_id ) . '"';
|
18 |
+
}
|
19 |
+
|
20 |
+
$style_attr = '';
|
21 |
+
if ( $el_style != '' ) {
|
22 |
+
$style_attr = 'style="' . esc_attr( $el_style ) . '"';
|
23 |
+
}
|
24 |
+
|
25 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
26 |
+
|
27 |
+
if ( strpos( $content, '[' ) == 0 && substr( $content, -1 ) == ']' ) {
|
28 |
+
$output = '<div ' . $id_attr . ' class="' . implode( ' ', $class ) . '" ' . $style_attr . '>' . do_shortcode( $content ) . '</div>';
|
29 |
+
} else {
|
30 |
+
$output = '<div ' . $id_attr . ' class="' . implode( ' ', $class ) . '" ' . $style_attr . '>' . wptexturize( wpautop ( do_shortcode( $content ) ) ) . '</div>';
|
31 |
+
}
|
32 |
+
|
33 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
34 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
35 |
+
|
36 |
+
return $output;
|
37 |
+
|
38 |
+
}
|
39 |
+
|
40 |
+
function map_shortcode() {
|
41 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Text', 'bold-builder' ), 'description' => esc_html__( 'Text element', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode, 'container' => 'vertical', 'params' => array(), 'accept' => array( '_content' => true ), 'toggle' => true, 'show_settings_on_create' => false ) );
|
42 |
+
}
|
43 |
+
|
44 |
+
}
|
content_elements/bt_bb_twitter/bt_bb_twitter.php
ADDED
@@ -0,0 +1,158 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_twitter extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'number' => '',
|
8 |
+
'display_type' => '',
|
9 |
+
'slides_to_show' => '',
|
10 |
+
'gap' => '',
|
11 |
+
'auto_play' => '',
|
12 |
+
'show_avatar' => '',
|
13 |
+
'cache' => '',
|
14 |
+
'cache_id' => '',
|
15 |
+
'username' => '',
|
16 |
+
'consumer_key' => '',
|
17 |
+
'consumer_secret' => '',
|
18 |
+
'access_token' => '',
|
19 |
+
'access_token_secret' => ''
|
20 |
+
) ), $atts, $this->shortcode ) );
|
21 |
+
|
22 |
+
$class = array( $this->shortcode, 'bt_bb_gap_large' );
|
23 |
+
|
24 |
+
if ( $el_class != '' ) {
|
25 |
+
$class[] = $el_class;
|
26 |
+
}
|
27 |
+
|
28 |
+
$data_slick = '';
|
29 |
+
if ( $display_type == 'slider' ) {
|
30 |
+
$data_slick = ' ' . 'data-slick=\'{ "lazyLoad": "progressive", "cssEase": "ease-out", "speed": "300", "prevArrow": "<button type=\"button\" class=\"slick-prev\">", "nextArrow": "<button type=\"button\" class=\"slick-next\">" ';
|
31 |
+
if ( $auto_play != '' ) {
|
32 |
+
$data_slick .= ', "autoplay": true, "autoplaySpeed": ' . intval( $auto_play );
|
33 |
+
}
|
34 |
+
if ( $gap != '' ) {
|
35 |
+
$data_slick .= ', "gap": "' . $gap . '"';
|
36 |
+
}
|
37 |
+
if ( is_rtl() ) {
|
38 |
+
$data_slick .= ', "rtl": true' ;
|
39 |
+
}
|
40 |
+
if ( $slides_to_show != '' ) {
|
41 |
+
$data_slick .= ', "slidesToShow": ' . intval( $slides_to_show );
|
42 |
+
}
|
43 |
+
if ( $slides_to_show > 1 ) {
|
44 |
+
$data_slick .= ', "responsive": [';
|
45 |
+
if ( $slides_to_show > 1 ) {
|
46 |
+
$data_slick .= '{ "breakpoint": 480, "settings": { "slidesToShow": 1, "slidesToScroll": 1 } }';
|
47 |
+
}
|
48 |
+
if ( $slides_to_show > 2 ) {
|
49 |
+
$data_slick .= ',{ "breakpoint": 768, "settings": { "slidesToShow": 2, "slidesToScroll": 2 } }';
|
50 |
+
}
|
51 |
+
if ( $slides_to_show > 3 ) {
|
52 |
+
$data_slick .= ',{ "breakpoint": 920, "settings": { "slidesToShow": 3, "slidesToScroll": 3 } }';
|
53 |
+
}
|
54 |
+
if ( $slides_to_show > 4 ) {
|
55 |
+
$data_slick .= ',{ "breakpoint": 1024, "settings": { "slidesToShow": 3, "slidesToScroll": 3 } }';
|
56 |
+
}
|
57 |
+
$data_slick .= ']';
|
58 |
+
}
|
59 |
+
$data_slick = $data_slick . '}\' ';
|
60 |
+
$class[] = $this->prefix . 'display_slider';
|
61 |
+
} else {
|
62 |
+
$class[] = $this->prefix . 'display_regular';
|
63 |
+
}
|
64 |
+
|
65 |
+
$id_attr = '';
|
66 |
+
if ( $el_id != '' ) {
|
67 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
68 |
+
}
|
69 |
+
|
70 |
+
$style_attr = '';
|
71 |
+
if ( $el_style != '' ) {
|
72 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
73 |
+
}
|
74 |
+
|
75 |
+
if ( $slides_to_show != '' ) {
|
76 |
+
if ( $display_type == 'slider' ) {
|
77 |
+
$class[] = $this->prefix . 'multiple_slides';
|
78 |
+
} else {
|
79 |
+
$class[] = $this->prefix . 'columns_' . $slides_to_show;
|
80 |
+
}
|
81 |
+
}
|
82 |
+
|
83 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
84 |
+
|
85 |
+
$twitter_data = bt_bb_get_twitter_data( $number, $cache, $cache_id, $username, $consumer_key, $consumer_secret, $access_token, $access_token_secret );
|
86 |
+
|
87 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . $data_slick . '>';
|
88 |
+
if ( $display_type == 'slider' ) {
|
89 |
+
$output .= '<div class="slick-slider"' . $data_slick . '>';
|
90 |
+
} else {
|
91 |
+
$output .= '<div class="bt_bb_twitter_inner">';
|
92 |
+
}
|
93 |
+
if ( is_array( $twitter_data ) ) {
|
94 |
+
foreach ( $twitter_data as $data ) {
|
95 |
+
$user_avatar = str_replace( '_normal', '_bigger', $data->user->profile_image_url_https );
|
96 |
+
$user = $data->user->screen_name;
|
97 |
+
$profile_link = 'https://twitter.com/' . $user ;
|
98 |
+
$link = 'https://twitter.com/' . $user . '/status/' . $data->id_str;
|
99 |
+
$text = mb_convert_encoding( utf8_encode( $data->text ), 'HTML-ENTITIES', 'UTF-8' );
|
100 |
+
$time = human_time_diff( strtotime( $data->created_at ) );
|
101 |
+
|
102 |
+
$output .= '<div class="bt_bb_twitter_item">';
|
103 |
+
$output .= '<div class="content">';
|
104 |
+
if( $show_avatar == 'yes' ) {
|
105 |
+
$output .= '<a href="' . esc_url( $profile_link ) . '" target="_blank" title="@' . esc_attr( $user ) . '"><img src="' . esc_url_raw( $user_avatar ) . '" class="bt_bb_twitter_avatar" alt="@' . esc_attr( $user ) . '" title="@' . esc_attr( $user ) . '"/></a>';
|
106 |
+
}
|
107 |
+
$output .= '<small class="bt_bb_twitter_username"><a href="' . esc_url( $link ) . '" target="_blank" title="@' . esc_attr( $user ) . '">@' . $user . ' - ' . $time . '</a></small>';
|
108 |
+
$output .= '<p class="bt_bb_twitter_content">' . BB_Twitter_Widget::parse( $data->text ) . '</p>';
|
109 |
+
$output .= '</div>';
|
110 |
+
$output .= '</div>';
|
111 |
+
}
|
112 |
+
}
|
113 |
+
$output .= '</div>';
|
114 |
+
$output .= '</div>';
|
115 |
+
|
116 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
117 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
118 |
+
|
119 |
+
return $output;
|
120 |
+
|
121 |
+
}
|
122 |
+
|
123 |
+
function map_shortcode() {
|
124 |
+
|
125 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Twitter (deprecated)', 'bold-builder' ), 'description' => esc_html__( 'Twitter posts', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
126 |
+
'params' => array(
|
127 |
+
array( 'param_name' => 'number', 'type' => 'textfield', 'heading' => esc_html__( 'Number of Tweets', 'bold-builder' ), 'preview' => true ),
|
128 |
+
array( 'param_name' => 'display_type', 'type' => 'dropdown', 'heading' => esc_html__( 'Type', 'bold-builder' ), 'preview' => true,
|
129 |
+
'value' => array(
|
130 |
+
esc_html__( 'Slider', 'bold-builder' ) => 'slider',
|
131 |
+
esc_html__( 'Regular grid', 'bold-builder' ) => 'regular'
|
132 |
+
) ),
|
133 |
+
array( 'param_name' => 'show_avatar', 'type' => 'dropdown', 'heading' => esc_html__( 'Show avatar', 'bold-builder' ),
|
134 |
+
'value' => array(
|
135 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
136 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
137 |
+
) ),
|
138 |
+
array( 'param_name' => 'slides_to_show', 'type' => 'textfield', 'preview' => true, 'default' => 1, 'heading' => esc_html__( 'Number of slides to show', 'bold-builder' ), 'description' => esc_html__( '(1-6) e.g. 3', 'bold-builder' ) ),
|
139 |
+
array( 'param_name' => 'gap', 'type' => 'dropdown', 'default' => 'small', 'heading' => esc_html__( 'Gap', 'bold-builder' ),
|
140 |
+
'value' => array(
|
141 |
+
esc_html__( 'No gap', 'bold-builder' ) => 'no_gap',
|
142 |
+
esc_html__( 'Small', 'bold-builder' ) => 'small',
|
143 |
+
esc_html__( 'Normal', 'bold-builder' ) => 'normal',
|
144 |
+
esc_html__( 'Large', 'bold-builder' ) => 'large'
|
145 |
+
)
|
146 |
+
),
|
147 |
+
array( 'param_name' => 'auto_play', 'type' => 'textfield', 'heading' => esc_html__( 'Autoplay interval (ms)', 'bold-builder' ), 'description' => esc_html__( 'e.g. 2000', 'bold-builder' ) ),
|
148 |
+
array( 'param_name' => 'username', 'type' => 'textfield', 'heading' => esc_html__( 'Username (or #hashtag)', 'bold-builder' ) ),
|
149 |
+
array( 'param_name' => 'cache', 'type' => 'textfield', 'heading' => esc_html__( 'Cache (minutes)', 'bold-builder' ) ),
|
150 |
+
array( 'param_name' => 'cache_id', 'type' => 'hidden', 'value' => uniqid() ),
|
151 |
+
array( 'param_name' => 'consumer_key', 'type' => 'textfield', 'heading' => esc_html__( 'Consumer Key', 'bold-builder' ), 'group' => esc_html__( 'API', 'bold-builder' ) ),
|
152 |
+
array( 'param_name' => 'consumer_secret', 'type' => 'textfield', 'heading' => esc_html__( 'Consumer Secret', 'bold-builder' ), 'group' => esc_html__( 'API', 'bold-builder' ) ),
|
153 |
+
array( 'param_name' => 'access_token', 'type' => 'textfield', 'heading' => esc_html__( 'Access Token', 'bold-builder' ), 'group' => esc_html__( 'API', 'bold-builder' ) ),
|
154 |
+
array( 'param_name' => 'access_token_secret', 'type' => 'textfield', 'heading' => esc_html__( 'Access Token Secret', 'bold-builder' ), 'group' => esc_html__( 'API', 'bold-builder' ) )
|
155 |
+
) )
|
156 |
+
);
|
157 |
+
}
|
158 |
+
}
|
content_elements/bt_bb_video/bt_bb_video.php
ADDED
@@ -0,0 +1,63 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class bt_bb_video extends BT_BB_Element {
|
4 |
+
|
5 |
+
function handle_shortcode( $atts, $content ) {
|
6 |
+
extract( shortcode_atts( apply_filters( 'bt_bb_extract_atts_' . $this->shortcode, array(
|
7 |
+
'video' => '',
|
8 |
+
'disable_controls' => ''
|
9 |
+
) ), $atts, $this->shortcode ) );
|
10 |
+
|
11 |
+
$class = array( $this->shortcode );
|
12 |
+
|
13 |
+
if ( $el_class != '' ) {
|
14 |
+
$class[] = $el_class;
|
15 |
+
}
|
16 |
+
|
17 |
+
$id_attr = '';
|
18 |
+
if ( $el_id != '' ) {
|
19 |
+
$id_attr = ' ' . 'id="' . esc_attr( $el_id ) . '"';
|
20 |
+
}
|
21 |
+
|
22 |
+
$style_attr = '';
|
23 |
+
if ( $el_style != '' ) {
|
24 |
+
$style_attr = ' ' . 'style="' . esc_attr( $el_style ) . '"';
|
25 |
+
}
|
26 |
+
|
27 |
+
if ( $disable_controls != '' ) {
|
28 |
+
$class[] = $this->prefix . 'disable_controls' . '_' . $disable_controls;
|
29 |
+
}
|
30 |
+
|
31 |
+
$class = apply_filters( $this->shortcode . '_class', $class, $atts );
|
32 |
+
|
33 |
+
$attr = array(
|
34 |
+
'src' => $video
|
35 |
+
);
|
36 |
+
|
37 |
+
$output = '[video src="' . $video . '"]';
|
38 |
+
// $output = wp_video_shortcode( $attr ); ;
|
39 |
+
// $output = '' ;
|
40 |
+
|
41 |
+
$output = '<div' . $id_attr . ' class="' . implode( ' ', $class ) . '"' . $style_attr . '>' . do_shortcode( $output ) . '</div>';
|
42 |
+
|
43 |
+
$output = apply_filters( 'bt_bb_general_output', $output, $atts );
|
44 |
+
$output = apply_filters( $this->shortcode . '_output', $output, $atts );
|
45 |
+
|
46 |
+
return $output;
|
47 |
+
|
48 |
+
}
|
49 |
+
|
50 |
+
function map_shortcode() {
|
51 |
+
bt_bb_map( $this->shortcode, array( 'name' => esc_html__( 'Video', 'bold-builder' ), 'description' => esc_html__( 'Video player', 'bold-builder' ), 'icon' => $this->prefix_backend . 'icon' . '_' . $this->shortcode,
|
52 |
+
'params' => array(
|
53 |
+
array( 'param_name' => 'video', 'type' => 'textfield', 'heading' => esc_html__( 'Video', 'bold-builder' ) ),
|
54 |
+
array( 'param_name' => 'disable_controls', 'type' => 'dropdown', 'heading' => esc_html__( 'Disable player controls', 'bold-builder' ),
|
55 |
+
'value' => array(
|
56 |
+
esc_html__( 'No', 'bold-builder' ) => 'no',
|
57 |
+
esc_html__( 'Yes', 'bold-builder' ) => 'yes'
|
58 |
+
),
|
59 |
+
'description' => esc_html__( 'Useful when embedded video has its own controls, e.g. Vimeo', 'bold-builder' ) )
|
60 |
+
)
|
61 |
+
) );
|
62 |
+
}
|
63 |
+
}
|
content_elements_misc/color_scheme_template.php
ADDED
@@ -0,0 +1,256 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! isset( $color_scheme[2] ) ) {
|
4 |
+
|
5 |
+
$custom_css = '';
|
6 |
+
|
7 |
+
} else {
|
8 |
+
|
9 |
+
$custom_css = "
|
10 |
+
|
11 |
+
/* Proggress bar */
|
12 |
+
|
13 |
+
.bt_bb_progress_bar.bt_bb_style_outline.bt_bb_color_scheme_{$scheme_id} .bt_bb_progress_bar_bg,
|
14 |
+
.bt_bb_progress_bar.bt_bb_style_line.bt_bb_color_scheme_{$scheme_id} .bt_bb_progress_bar_bg {
|
15 |
+
background: {$color_scheme[2]};
|
16 |
+
}
|
17 |
+
|
18 |
+
.bt_bb_progress_bar.bt_bb_style_outline.bt_bb_color_scheme_{$scheme_id} .bt_bb_progress_bar_inner,
|
19 |
+
.bt_bb_progress_bar.bt_bb_style_line.bt_bb_color_scheme_{$scheme_id} .bt_bb_progress_bar_inner {
|
20 |
+
border-color: {$color_scheme[1]};
|
21 |
+
color: {$color_scheme[1]};
|
22 |
+
}
|
23 |
+
|
24 |
+
.bt_bb_progress_bar.bt_bb_style_filled.bt_bb_color_scheme_{$scheme_id} .bt_bb_progress_bar_bg {
|
25 |
+
background: {$color_scheme[1]};
|
26 |
+
}
|
27 |
+
|
28 |
+
.bt_bb_progress_bar.bt_bb_style_filled.bt_bb_color_scheme_{$scheme_id} .bt_bb_progress_bar_inner {
|
29 |
+
background: {$color_scheme[2]};
|
30 |
+
color: {$color_scheme[1]};
|
31 |
+
}
|
32 |
+
|
33 |
+
/* Icons */
|
34 |
+
|
35 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon .bt_bb_icon_holder { color: {$color_scheme[1]}; }
|
36 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon:hover a.bt_bb_icon_holder { color: {$color_scheme[2]}; }
|
37 |
+
|
38 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_outline .bt_bb_icon_holder:before {
|
39 |
+
background-color: transparent;
|
40 |
+
box-shadow: 0 0 0 1px {$color_scheme[1]} inset;
|
41 |
+
color: {$color_scheme[1]};
|
42 |
+
}
|
43 |
+
|
44 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_outline:hover a.bt_bb_icon_holder:before {
|
45 |
+
background-color: {$color_scheme[1]};
|
46 |
+
box-shadow: 0 0 0 1em {$color_scheme[1]} inset;
|
47 |
+
color: {$color_scheme[2]};
|
48 |
+
}
|
49 |
+
|
50 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_filled .bt_bb_icon_holder:before {
|
51 |
+
box-shadow: 0 0 0 1em {$color_scheme[2]} inset;
|
52 |
+
color: {$color_scheme[1]};
|
53 |
+
}
|
54 |
+
|
55 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_filled:hover a.bt_bb_icon_holder:before {
|
56 |
+
box-shadow: 0 0 0 1px {$color_scheme[2]} inset;
|
57 |
+
background-color: {$color_scheme[1]};
|
58 |
+
color: {$color_scheme[2]};
|
59 |
+
}
|
60 |
+
|
61 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_borderless .bt_bb_icon_holder:before {
|
62 |
+
color: {$color_scheme[1]};
|
63 |
+
}
|
64 |
+
|
65 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_borderless:hover a.bt_bb_icon_holder:before {
|
66 |
+
color: {$color_scheme[2]};
|
67 |
+
}
|
68 |
+
|
69 |
+
|
70 |
+
/* Buttons */
|
71 |
+
|
72 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_button.bt_bb_style_outline a {
|
73 |
+
box-shadow: 0 0 0 1px {$color_scheme[1]} inset;
|
74 |
+
color: {$color_scheme[1]};
|
75 |
+
background-color: transparent;
|
76 |
+
}
|
77 |
+
|
78 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_button.bt_bb_style_outline a:hover {
|
79 |
+
box-shadow: 0 0 0 2em {$color_scheme[1]} inset;
|
80 |
+
color: {$color_scheme[2]};
|
81 |
+
}
|
82 |
+
|
83 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_button.bt_bb_style_filled a {
|
84 |
+
box-shadow: 0 0 0 2em {$color_scheme[2]} inset;
|
85 |
+
color: {$color_scheme[1]};
|
86 |
+
}
|
87 |
+
|
88 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_button.bt_bb_style_filled a:hover {
|
89 |
+
box-shadow: 0 0 0 0px {$color_scheme[2]} inset;
|
90 |
+
background-color: {$color_scheme[1]};
|
91 |
+
color: {$color_scheme[2]};
|
92 |
+
}
|
93 |
+
|
94 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_button.bt_bb_style_clean a,
|
95 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_borderless a {
|
96 |
+
color: {$color_scheme[1]};
|
97 |
+
}
|
98 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_button.bt_bb_style_clean a:hover,
|
99 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_icon.bt_bb_style_borderless:hover a {
|
100 |
+
color: {$color_scheme[2]};
|
101 |
+
}
|
102 |
+
|
103 |
+
/* Services */
|
104 |
+
|
105 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline.bt_bb_service .bt_bb_icon_holder {
|
106 |
+
box-shadow: 0 0 0 1px {$color_scheme[1]} inset;
|
107 |
+
color: {$color_scheme[1]};
|
108 |
+
background-color: transparent;
|
109 |
+
}
|
110 |
+
|
111 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline.bt_bb_service:hover .bt_bb_icon_holder {
|
112 |
+
box-shadow: 0 0 0 1em {$color_scheme[1]} inset;
|
113 |
+
background-color: {$color_scheme[1]};
|
114 |
+
color: {$color_scheme[2]};
|
115 |
+
}
|
116 |
+
|
117 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled.bt_bb_service .bt_bb_icon_holder {
|
118 |
+
box-shadow: 0 0 0 1em {$color_scheme[2]} inset;
|
119 |
+
color: {$color_scheme[1]};
|
120 |
+
}
|
121 |
+
|
122 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled.bt_bb_service:hover .bt_bb_icon_holder {
|
123 |
+
box-shadow: 0 0 0 1px {$color_scheme[2]} inset;
|
124 |
+
background-color: {$color_scheme[1]};
|
125 |
+
color: {$color_scheme[2]};
|
126 |
+
}
|
127 |
+
|
128 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_borderless.bt_bb_service .bt_bb_icon_holder {
|
129 |
+
color: {$color_scheme[1]};
|
130 |
+
}
|
131 |
+
|
132 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_borderless.bt_bb_service:hover .bt_bb_icon_holder {
|
133 |
+
color: {$color_scheme[2]};
|
134 |
+
}
|
135 |
+
|
136 |
+
/* Headline */
|
137 |
+
|
138 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_headline
|
139 |
+
{
|
140 |
+
color: {$color_scheme[1]};
|
141 |
+
}
|
142 |
+
.bt_bb_color_scheme_{$scheme_id}.bt_bb_headline .bt_bb_headline_superheadline
|
143 |
+
{
|
144 |
+
color: {$color_scheme[2]};
|
145 |
+
}
|
146 |
+
|
147 |
+
/* Tabs */
|
148 |
+
|
149 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_tabs_header,
|
150 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_tabs_header {
|
151 |
+
border-color: {$color_scheme[1]};
|
152 |
+
}
|
153 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_tabs_header li,
|
154 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_tabs_header li:hover,
|
155 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_tabs_header li.on {
|
156 |
+
border-color: {$color_scheme[1]};
|
157 |
+
color: {$color_scheme[1]};
|
158 |
+
background-color: transparent;
|
159 |
+
}
|
160 |
+
|
161 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_tabs_header li:hover,
|
162 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_tabs_header li.on,
|
163 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_tabs_header li {
|
164 |
+
background-color: {$color_scheme[1]};
|
165 |
+
color: {$color_scheme[2]};
|
166 |
+
border-color: {$color_scheme[1]};
|
167 |
+
}
|
168 |
+
|
169 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_simple .bt_bb_tabs_header li {
|
170 |
+
color: {$color_scheme[2]};
|
171 |
+
}
|
172 |
+
|
173 |
+
.bt_bb_tabs.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_simple .bt_bb_tabs_header li.on {
|
174 |
+
color: {$color_scheme[1]};
|
175 |
+
border-color: {$color_scheme[1]};
|
176 |
+
}
|
177 |
+
|
178 |
+
/* Accordion */
|
179 |
+
|
180 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id} .bt_bb_accordion_item {
|
181 |
+
border-color: {$color_scheme[1]};
|
182 |
+
}
|
183 |
+
|
184 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_accordion_item_title {
|
185 |
+
border-color: {$color_scheme[1]};
|
186 |
+
color: {$color_scheme[1]};
|
187 |
+
background-color: transparent;
|
188 |
+
}
|
189 |
+
|
190 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_accordion_item.on .bt_bb_accordion_item_title,
|
191 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_outline .bt_bb_accordion_item .bt_bb_accordion_item_title:hover {
|
192 |
+
color: {$color_scheme[2]};
|
193 |
+
background-color: {$color_scheme[1]};
|
194 |
+
}
|
195 |
+
|
196 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_accordion_item .bt_bb_accordion_item_title {
|
197 |
+
color: {$color_scheme[2]};
|
198 |
+
background-color: {$color_scheme[1]};
|
199 |
+
}
|
200 |
+
|
201 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_accordion_item.on .bt_bb_accordion_item_title,
|
202 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_filled .bt_bb_accordion_item .bt_bb_accordion_item_title:hover {
|
203 |
+
color: {$color_scheme[1]};
|
204 |
+
background-color: transparent;
|
205 |
+
}
|
206 |
+
|
207 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_simple .bt_bb_accordion_item .bt_bb_accordion_item_title {
|
208 |
+
color: {$color_scheme[1]};
|
209 |
+
border-color: {$color_scheme[1]};
|
210 |
+
}
|
211 |
+
|
212 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_simple .bt_bb_accordion_item .bt_bb_accordion_item_title:hover,
|
213 |
+
.bt_bb_accordion.bt_bb_color_scheme_{$scheme_id}.bt_bb_style_simple .bt_bb_accordion_item.on .bt_bb_accordion_item_title {
|
214 |
+
color: {$color_scheme[2]};
|
215 |
+
border-color: {$color_scheme[2]};
|
216 |
+
}
|
217 |
+
|
218 |
+
|
219 |
+
/* Price List */
|
220 |
+
|
221 |
+
.bt_bb_price_list.bt_bb_color_scheme_{$scheme_id} {
|
222 |
+
border-color: {$color_scheme[2]};
|
223 |
+
}
|
224 |
+
.bt_bb_price_list.bt_bb_color_scheme_{$scheme_id} .bt_bb_price_list_title {
|
225 |
+
color: {$color_scheme[1]};
|
226 |
+
background-color: {$color_scheme[2]};
|
227 |
+
}
|
228 |
+
|
229 |
+
.bt_bb_price_list.bt_bb_color_scheme_{$scheme_id} ul li {
|
230 |
+
border-color: {$color_scheme[2]};
|
231 |
+
}
|
232 |
+
|
233 |
+
/* Section */
|
234 |
+
|
235 |
+
.bt_bb_section.bt_bb_color_scheme_{$scheme_id} {
|
236 |
+
color: {$color_scheme[1]};
|
237 |
+
background-color: {$color_scheme[2]};
|
238 |
+
}
|
239 |
+
|
240 |
+
/* Row */
|
241 |
+
|
242 |
+
.bt_bb_row.bt_bb_color_scheme_{$scheme_id} {
|
243 |
+
color: {$color_scheme[1]};
|
244 |
+
background-color: {$color_scheme[2]};
|
245 |
+
}
|
246 |
+
|
247 |
+
/* Column */
|
248 |
+
|
249 |
+
.bt_bb_column.bt_bb_color_scheme_{$scheme_id} {
|
250 |
+
color: {$color_scheme[1]};
|
251 |
+
background-color: {$color_scheme[2]};
|
252 |
+
}
|
253 |
+
|
254 |
+
";
|
255 |
+
|
256 |
+
}
|
content_elements_misc/css/dummy.css
ADDED
File without changes
|
content_elements_misc/fa_icons.php
ADDED
@@ -0,0 +1,526 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
function bt_bb_fa_icons() {
|
3 |
+
$arr = array(
|
4 |
+
'adjust (fa)' => 'fa_' . 'f042',
|
5 |
+
'adn (fa)' => 'fa_' . 'f170',
|
6 |
+
'align-center (fa)' => 'fa_' . 'f037',
|
7 |
+
'align-justify (fa)' => 'fa_' . 'f039',
|
8 |
+
'align-left (fa)' => 'fa_' . 'f036',
|
9 |
+
'align-right (fa)' => 'fa_' . 'f038',
|
10 |
+
'ambulance (fa)' => 'fa_' . 'f0f9',
|
11 |
+
'anchor (fa)' => 'fa_' . 'f13d',
|
12 |
+
'android (fa)' => 'fa_' . 'f17b',
|
13 |
+
'angellist (fa)' => 'fa_' . 'f209',
|
14 |
+
'angle-double-down (fa)' => 'fa_' . 'f103',
|
15 |
+
'angle-double-left (fa)' => 'fa_' . 'f100',
|
16 |
+
'angle-double-right (fa)' => 'fa_' . 'f101',
|
17 |
+
'angle-double-up (fa)' => 'fa_' . 'f102',
|
18 |
+
'angle-down (fa)' => 'fa_' . 'f107',
|
19 |
+
'angle-left (fa)' => 'fa_' . 'f104',
|
20 |
+
'angle-right (fa)' => 'fa_' . 'f105',
|
21 |
+
'angle-up (fa)' => 'fa_' . 'f106',
|
22 |
+
'apple (fa)' => 'fa_' . 'f179',
|
23 |
+
'archive (fa)' => 'fa_' . 'f187',
|
24 |
+
'area-chart (fa)' => 'fa_' . 'f1fe',
|
25 |
+
'arrow-circle-down (fa)' => 'fa_' . 'f0ab',
|
26 |
+
'arrow-circle-left (fa)' => 'fa_' . 'f0a8',
|
27 |
+
'arrow-circle-o-down (fa)' => 'fa_' . 'f01a',
|
28 |
+
'arrow-circle-o-left (fa)' => 'fa_' . 'f190',
|
29 |
+
'arrow-circle-o-right (fa)' => 'fa_' . 'f18e',
|
30 |
+
'arrow-circle-o-up (fa)' => 'fa_' . 'f01b',
|
31 |
+
'arrow-circle-right (fa)' => 'fa_' . 'f0a9',
|
32 |
+
'arrow-circle-up (fa)' => 'fa_' . 'f0aa',
|
33 |
+
'arrow-down (fa)' => 'fa_' . 'f063',
|
34 |
+
'arrow-left (fa)' => 'fa_' . 'f060',
|
35 |
+
'arrow-right (fa)' => 'fa_' . 'f061',
|
36 |
+
'arrow-up (fa)' => 'fa_' . 'f062',
|
37 |
+
'arrows (fa)' => 'fa_' . 'f047',
|
38 |
+
'arrows-alt (fa)' => 'fa_' . 'f0b2',
|
39 |
+
'arrows-h (fa)' => 'fa_' . 'f07e',
|
40 |
+
'arrows-v (fa)' => 'fa_' . 'f07d',
|
41 |
+
'asterisk (fa)' => 'fa_' . 'f069',
|
42 |
+
'at (fa)' => 'fa_' . 'f1fa',
|
43 |
+
'backward (fa)' => 'fa_' . 'f04a',
|
44 |
+
'ban (fa)' => 'fa_' . 'f05e',
|
45 |
+
'bar-chart (fa)' => 'fa_' . 'f080',
|
46 |
+
'barcode (fa)' => 'fa_' . 'f02a',
|
47 |
+
'bars (fa)' => 'fa_' . 'f0c9',
|
48 |
+
'bed (fa)' => 'fa_' . 'f236',
|
49 |
+
'beer (fa)' => 'fa_' . 'f0fc',
|
50 |
+
'behance (fa)' => 'fa_' . 'f1b4',
|
51 |
+
'behance-square (fa)' => 'fa_' . 'f1b5',
|
52 |
+
'bell (fa)' => 'fa_' . 'f0f3',
|
53 |
+
'bell-o (fa)' => 'fa_' . 'f0a2',
|
54 |
+
'bell-slash (fa)' => 'fa_' . 'f1f6',
|
55 |
+
'bell-slash-o (fa)' => 'fa_' . 'f1f7',
|
56 |
+
'bicycle (fa)' => 'fa_' . 'f206',
|
57 |
+
'binoculars (fa)' => 'fa_' . 'f1e5',
|
58 |
+
'birthday-cake (fa)' => 'fa_' . 'f1fd',
|
59 |
+
'bitbucket (fa)' => 'fa_' . 'f171',
|
60 |
+
'bitbucket-square (fa)' => 'fa_' . 'f172',
|
61 |
+
'bold (fa)' => 'fa_' . 'f032',
|
62 |
+
'bolt (fa)' => 'fa_' . 'f0e7',
|
63 |
+
'bomb (fa)' => 'fa_' . 'f1e2',
|
64 |
+
'book (fa)' => 'fa_' . 'f02d',
|
65 |
+
'bookmark (fa)' => 'fa_' . 'f02e',
|
66 |
+
'bookmark-o (fa)' => 'fa_' . 'f097',
|
67 |
+
'briefcase (fa)' => 'fa_' . 'f0b1',
|
68 |
+
'btc (fa)' => 'fa_' . 'f15a',
|
69 |
+
'bug (fa)' => 'fa_' . 'f188',
|
70 |
+
'building (fa)' => 'fa_' . 'f1ad',
|
71 |
+
'building-o (fa)' => 'fa_' . 'f0f7',
|
72 |
+
'bullhorn (fa)' => 'fa_' . 'f0a1',
|
73 |
+
'bullseye (fa)' => 'fa_' . 'f140',
|
74 |
+
'bus (fa)' => 'fa_' . 'f207',
|
75 |
+
'buysellads (fa)' => 'fa_' . 'f20d',
|
76 |
+
'calculator (fa)' => 'fa_' . 'f1ec',
|
77 |
+
'calendar (fa)' => 'fa_' . 'f073',
|
78 |
+
'calendar-o (fa)' => 'fa_' . 'f133',
|
79 |
+
'camera (fa)' => 'fa_' . 'f030',
|
80 |
+
'camera-retro (fa)' => 'fa_' . 'f083',
|
81 |
+
'car (fa)' => 'fa_' . 'f1b9',
|
82 |
+
'caret-down (fa)' => 'fa_' . 'f0d7',
|
83 |
+
'caret-left (fa)' => 'fa_' . 'f0d9',
|
84 |
+
'caret-right (fa)' => 'fa_' . 'f0da',
|
85 |
+
'caret-square-o-down (fa)' => 'fa_' . 'f150',
|
86 |
+
'caret-square-o-left (fa)' => 'fa_' . 'f191',
|
87 |
+
'caret-square-o-right (fa)' => 'fa_' . 'f152',
|
88 |
+
'caret-square-o-up (fa)' => 'fa_' . 'f151',
|
89 |
+
'caret-up (fa)' => 'fa_' . 'f0d8',
|
90 |
+
'cart-arrow-down (fa)' => 'fa_' . 'f218',
|
91 |
+
'cart-plus (fa)' => 'fa_' . 'f217',
|
92 |
+
'cc (fa)' => 'fa_' . 'f20a',
|
93 |
+
'cc-amex (fa)' => 'fa_' . 'f1f3',
|
94 |
+
'cc-discover (fa)' => 'fa_' . 'f1f2',
|
95 |
+
'cc-mastercard (fa)' => 'fa_' . 'f1f1',
|
96 |
+
'cc-paypal (fa)' => 'fa_' . 'f1f4',
|
97 |
+
'cc-stripe (fa)' => 'fa_' . 'f1f5',
|
98 |
+
'cc-visa (fa)' => 'fa_' . 'f1f0',
|
99 |
+
'certificate (fa)' => 'fa_' . 'f0a3',
|
100 |
+
'chain-broken (fa)' => 'fa_' . 'f127',
|
101 |
+
'check (fa)' => 'fa_' . 'f00c',
|
102 |
+
'check-circle (fa)' => 'fa_' . 'f058',
|
103 |
+
'check-circle-o (fa)' => 'fa_' . 'f05d',
|
104 |
+
'check-square (fa)' => 'fa_' . 'f14a',
|
105 |
+
'check-square-o (fa)' => 'fa_' . 'f046',
|
106 |
+
'chevron-circle-down (fa)' => 'fa_' . 'f13a',
|
107 |
+
'chevron-circle-left (fa)' => 'fa_' . 'f137',
|
108 |
+
'chevron-circle-right (fa)' => 'fa_' . 'f138',
|
109 |
+
'chevron-circle-up (fa)' => 'fa_' . 'f139',
|
110 |
+
'chevron-down (fa)' => 'fa_' . 'f078',
|
111 |
+
'chevron-left (fa)' => 'fa_' . 'f053',
|
112 |
+
'chevron-right (fa)' => 'fa_' . 'f054',
|
113 |
+
'chevron-up (fa)' => 'fa_' . 'f077',
|
114 |
+
'child (fa)' => 'fa_' . 'f1ae',
|
115 |
+
'circle (fa)' => 'fa_' . 'f111',
|
116 |
+
'circle-o (fa)' => 'fa_' . 'f10c',
|
117 |
+
'circle-o-notch (fa)' => 'fa_' . 'f1ce',
|
118 |
+
'circle-thin (fa)' => 'fa_' . 'f1db',
|
119 |
+
'clipboard (fa)' => 'fa_' . 'f0ea',
|
120 |
+
'clock-o (fa)' => 'fa_' . 'f017',
|
121 |
+
'cloud (fa)' => 'fa_' . 'f0c2',
|
122 |
+
'cloud-download (fa)' => 'fa_' . 'f0ed',
|
123 |
+
'cloud-upload (fa)' => 'fa_' . 'f0ee',
|
124 |
+
'code (fa)' => 'fa_' . 'f121',
|
125 |
+
'code-fork (fa)' => 'fa_' . 'f126',
|
126 |
+
'codepen (fa)' => 'fa_' . 'f1cb',
|
127 |
+
'coffee (fa)' => 'fa_' . 'f0f4',
|
128 |
+
'cog (fa)' => 'fa_' . 'f013',
|
129 |
+
'cogs (fa)' => 'fa_' . 'f085',
|
130 |
+
'columns (fa)' => 'fa_' . 'f0db',
|
131 |
+
'comment (fa)' => 'fa_' . 'f075',
|
132 |
+
'comment-o (fa)' => 'fa_' . 'f0e5',
|
133 |
+
'comments (fa)' => 'fa_' . 'f086',
|
134 |
+
'comments-o (fa)' => 'fa_' . 'f0e6',
|
135 |
+
'compass (fa)' => 'fa_' . 'f14e',
|
136 |
+
'compress (fa)' => 'fa_' . 'f066',
|
137 |
+
'connectdevelop (fa)' => 'fa_' . 'f20e',
|
138 |
+
'copyright (fa)' => 'fa_' . 'f1f9',
|
139 |
+
'credit-card (fa)' => 'fa_' . 'f09d',
|
140 |
+
'crop (fa)' => 'fa_' . 'f125',
|
141 |
+
'crosshairs (fa)' => 'fa_' . 'f05b',
|
142 |
+
'cube (fa)' => 'fa_' . 'f1b2',
|
143 |
+
'cubes (fa)' => 'fa_' . 'f1b3',
|
144 |
+
'cutlery (fa)' => 'fa_' . 'f0f5',
|
145 |
+
'dashcube (fa)' => 'fa_' . 'f210',
|
146 |
+
'database (fa)' => 'fa_' . 'f1c0',
|
147 |
+
'delicious (fa)' => 'fa_' . 'f1a5',
|
148 |
+
'desktop (fa)' => 'fa_' . 'f108',
|
149 |
+
'deviantart (fa)' => 'fa_' . 'f1bd',
|
150 |
+
'diamond (fa)' => 'fa_' . 'f219',
|
151 |
+
'digg (fa)' => 'fa_' . 'f1a6',
|
152 |
+
'dot-circle-o (fa)' => 'fa_' . 'f192',
|
153 |
+
'download (fa)' => 'fa_' . 'f019',
|
154 |
+
'dribbble (fa)' => 'fa_' . 'f17d',
|
155 |
+
'dropbox (fa)' => 'fa_' . 'f16b',
|
156 |
+
'drupal (fa)' => 'fa_' . 'f1a9',
|
157 |
+
'eject (fa)' => 'fa_' . 'f052',
|
158 |
+
'ellipsis-h (fa)' => 'fa_' . 'f141',
|
159 |
+
'ellipsis-v (fa)' => 'fa_' . 'f142',
|
160 |
+
'empire (fa)' => 'fa_' . 'f1d1',
|
161 |
+
'envelope (fa)' => 'fa_' . 'f0e0',
|
162 |
+
'envelope-o (fa)' => 'fa_' . 'f003',
|
163 |
+
'envelope-square (fa)' => 'fa_' . 'f199',
|
164 |
+
'eraser (fa)' => 'fa_' . 'f12d',
|
165 |
+
'eur (fa)' => 'fa_' . 'f153',
|
166 |
+
'exchange (fa)' => 'fa_' . 'f0ec',
|
167 |
+
'exclamation (fa)' => 'fa_' . 'f12a',
|
168 |
+
'exclamation-circle (fa)' => 'fa_' . 'f06a',
|
169 |
+
'exclamation-triangle (fa)' => 'fa_' . 'f071',
|
170 |
+
'expand (fa)' => 'fa_' . 'f065',
|
171 |
+
'external-link (fa)' => 'fa_' . 'f08e',
|
172 |
+
'external-link-square (fa)' => 'fa_' . 'f14c',
|
173 |
+
'eye (fa)' => 'fa_' . 'f06e',
|
174 |
+
'eye-slash (fa)' => 'fa_' . 'f070',
|
175 |
+
'eyedropper (fa)' => 'fa_' . 'f1fb',
|
176 |
+
'facebook (fa)' => 'fa_' . 'f09a',
|
177 |
+
'facebook-official (fa)' => 'fa_' . 'f230',
|
178 |
+
'facebook-square (fa)' => 'fa_' . 'f082',
|
179 |
+
'fast-backward (fa)' => 'fa_' . 'f049',
|
180 |
+
'fast-forward (fa)' => 'fa_' . 'f050',
|
181 |
+
'fax (fa)' => 'fa_' . 'f1ac',
|
182 |
+
'female (fa)' => 'fa_' . 'f182',
|
183 |
+
'fighter-jet (fa)' => 'fa_' . 'f0fb',
|
184 |
+
'file (fa)' => 'fa_' . 'f15b',
|
185 |
+
'file-archive-o (fa)' => 'fa_' . 'f1c6',
|
186 |
+
'file-audio-o (fa)' => 'fa_' . 'f1c7',
|
187 |
+
'file-code-o (fa)' => 'fa_' . 'f1c9',
|
188 |
+
'file-excel-o (fa)' => 'fa_' . 'f1c3',
|
189 |
+
'file-image-o (fa)' => 'fa_' . 'f1c5',
|
190 |
+
'file-o (fa)' => 'fa_' . 'f016',
|
191 |
+
'file-pdf-o (fa)' => 'fa_' . 'f1c1',
|
192 |
+
'file-powerpoint-o (fa)' => 'fa_' . 'f1c4',
|
193 |
+
'file-text (fa)' => 'fa_' . 'f15c',
|
194 |
+
'file-text-o (fa)' => 'fa_' . 'f0f6',
|
195 |
+
'file-video-o (fa)' => 'fa_' . 'f1c8',
|
196 |
+
'file-word-o (fa)' => 'fa_' . 'f1c2',
|
197 |
+
'files-o (fa)' => 'fa_' . 'f0c5',
|
198 |
+
'film (fa)' => 'fa_' . 'f008',
|
199 |
+
'filter (fa)' => 'fa_' . 'f0b0',
|
200 |
+
'fire (fa)' => 'fa_' . 'f06d',
|
201 |
+
'fire-extinguisher (fa)' => 'fa_' . 'f134',
|
202 |
+
'flag (fa)' => 'fa_' . 'f024',
|
203 |
+
'flag-checkered (fa)' => 'fa_' . 'f11e',
|
204 |
+
'flag-o (fa)' => 'fa_' . 'f11d',
|
205 |
+
'flask (fa)' => 'fa_' . 'f0c3',
|
206 |
+
'flickr (fa)' => 'fa_' . 'f16e',
|
207 |
+
'floppy-o (fa)' => 'fa_' . 'f0c7',
|
208 |
+
'folder (fa)' => 'fa_' . 'f07b',
|
209 |
+
'folder-o (fa)' => 'fa_' . 'f114',
|
210 |
+
'folder-open (fa)' => 'fa_' . 'f07c',
|
211 |
+
'folder-open-o (fa)' => 'fa_' . 'f115',
|
212 |
+
'font (fa)' => 'fa_' . 'f031',
|
213 |
+
'forumbee (fa)' => 'fa_' . 'f211',
|
214 |
+
'forward (fa)' => 'fa_' . 'f04e',
|
215 |
+
'foursquare (fa)' => 'fa_' . 'f180',
|
216 |
+
'frown-o (fa)' => 'fa_' . 'f119',
|
217 |
+
'futbol-o (fa)' => 'fa_' . 'f1e3',
|
218 |
+
'gamepad (fa)' => 'fa_' . 'f11b',
|
219 |
+
'gavel (fa)' => 'fa_' . 'f0e3',
|
220 |
+
'gbp (fa)' => 'fa_' . 'f154',
|
221 |
+
'gift (fa)' => 'fa_' . 'f06b',
|
222 |
+
'git (fa)' => 'fa_' . 'f1d3',
|
223 |
+
'git-square (fa)' => 'fa_' . 'f1d2',
|
224 |
+
'github (fa)' => 'fa_' . 'f09b',
|
225 |
+
'github-alt (fa)' => 'fa_' . 'f113',
|
226 |
+
'github-square (fa)' => 'fa_' . 'f092',
|
227 |
+
'glass (fa)' => 'fa_' . 'f000',
|
228 |
+
'globe (fa)' => 'fa_' . 'f0ac',
|
229 |
+
'google (fa)' => 'fa_' . 'f1a0',
|
230 |
+
'google-plus (fa)' => 'fa_' . 'f0d5',
|
231 |
+
'google-plus-square (fa)' => 'fa_' . 'f0d4',
|
232 |
+
'google-wallet (fa)' => 'fa_' . 'f1ee',
|
233 |
+
'graduation-cap (fa)' => 'fa_' . 'f19d',
|
234 |
+
'gratipay (fa)' => 'fa_' . 'f184',
|
235 |
+
'h-square (fa)' => 'fa_' . 'f0fd',
|
236 |
+
'hacker-news (fa)' => 'fa_' . 'f1d4',
|
237 |
+
'hand-o-down (fa)' => 'fa_' . 'f0a7',
|
238 |
+
'hand-o-left (fa)' => 'fa_' . 'f0a5',
|
239 |
+
'hand-o-right (fa)' => 'fa_' . 'f0a4',
|
240 |
+
'hand-o-up (fa)' => 'fa_' . 'f0a6',
|
241 |
+
'hdd-o (fa)' => 'fa_' . 'f0a0',
|
242 |
+
'header (fa)' => 'fa_' . 'f1dc',
|
243 |
+
'headphones (fa)' => 'fa_' . 'f025',
|
244 |
+
'heart (fa)' => 'fa_' . 'f004',
|
245 |
+
'heart-o (fa)' => 'fa_' . 'f08a',
|
246 |
+
'heartbeat (fa)' => 'fa_' . 'f21e',
|
247 |
+
'history (fa)' => 'fa_' . 'f1da',
|
248 |
+
'home (fa)' => 'fa_' . 'f015',
|
249 |
+
'hospital-o (fa)' => 'fa_' . 'f0f8',
|
250 |
+
'ils (fa)' => 'fa_' . 'f20b',
|
251 |
+
'inbox (fa)' => 'fa_' . 'f01c',
|
252 |
+
'indent (fa)' => 'fa_' . 'f03c',
|
253 |
+
'info (fa)' => 'fa_' . 'f129',
|
254 |
+
'info-circle (fa)' => 'fa_' . 'f05a',
|
255 |
+
'inr (fa)' => 'fa_' . 'f156',
|
256 |
+
'instagram (fa)' => 'fa_' . 'f16d',
|
257 |
+
'ioxhost (fa)' => 'fa_' . 'f208',
|
258 |
+
'italic (fa)' => 'fa_' . 'f033',
|
259 |
+
'joomla (fa)' => 'fa_' . 'f1aa',
|
260 |
+
'jpy (fa)' => 'fa_' . 'f157',
|
261 |
+
'jsfiddle (fa)' => 'fa_' . 'f1cc',
|
262 |
+
'key (fa)' => 'fa_' . 'f084',
|
263 |
+
'keyboard-o (fa)' => 'fa_' . 'f11c',
|
264 |
+
'krw (fa)' => 'fa_' . 'f159',
|
265 |
+
'language (fa)' => 'fa_' . 'f1ab',
|
266 |
+
'laptop (fa)' => 'fa_' . 'f109',
|
267 |
+
'lastfm (fa)' => 'fa_' . 'f202',
|
268 |
+
'lastfm-square (fa)' => 'fa_' . 'f203',
|
269 |
+
'leaf (fa)' => 'fa_' . 'f06c',
|
270 |
+
'leanpub (fa)' => 'fa_' . 'f212',
|
271 |
+
'lemon-o (fa)' => 'fa_' . 'f094',
|
272 |
+
'level-down (fa)' => 'fa_' . 'f149',
|
273 |
+
'level-up (fa)' => 'fa_' . 'f148',
|
274 |
+
'life-ring (fa)' => 'fa_' . 'f1cd',
|
275 |
+
'lightbulb-o (fa)' => 'fa_' . 'f0eb',
|
276 |
+
'line-chart (fa)' => 'fa_' . 'f201',
|
277 |
+
'link (fa)' => 'fa_' . 'f0c1',
|
278 |
+
'linkedin (fa)' => 'fa_' . 'f0e1',
|
279 |
+
'linkedin-square (fa)' => 'fa_' . 'f08c',
|
280 |
+
'linux (fa)' => 'fa_' . 'f17c',
|
281 |
+
'list (fa)' => 'fa_' . 'f03a',
|
282 |
+
'list-alt (fa)' => 'fa_' . 'f022',
|
283 |
+
'list-ol (fa)' => 'fa_' . 'f0cb',
|
284 |
+
'list-ul (fa)' => 'fa_' . 'f0ca',
|
285 |
+
'location-arrow (fa)' => 'fa_' . 'f124',
|
286 |
+
'lock (fa)' => 'fa_' . 'f023',
|
287 |
+
'long-arrow-down (fa)' => 'fa_' . 'f175',
|
288 |
+
'long-arrow-left (fa)' => 'fa_' . 'f177',
|
289 |
+
'long-arrow-right (fa)' => 'fa_' . 'f178',
|
290 |
+
'long-arrow-up (fa)' => 'fa_' . 'f176',
|
291 |
+
'magic (fa)' => 'fa_' . 'f0d0',
|
292 |
+
'magnet (fa)' => 'fa_' . 'f076',
|
293 |
+
'male (fa)' => 'fa_' . 'f183',
|
294 |
+
'map-marker (fa)' => 'fa_' . 'f041',
|
295 |
+
'mars (fa)' => 'fa_' . 'f222',
|
296 |
+
'mars-double (fa)' => 'fa_' . 'f227',
|
297 |
+
'mars-stroke (fa)' => 'fa_' . 'f229',
|
298 |
+
'mars-stroke-h (fa)' => 'fa_' . 'f22b',
|
299 |
+
'mars-stroke-v (fa)' => 'fa_' . 'f22a',
|
300 |
+
'maxcdn (fa)' => 'fa_' . 'f136',
|
301 |
+
'meanpath (fa)' => 'fa_' . 'f20c',
|
302 |
+
'medium (fa)' => 'fa_' . 'f23a',
|
303 |
+
'medkit (fa)' => 'fa_' . 'f0fa',
|
304 |
+
'meh-o (fa)' => 'fa_' . 'f11a',
|
305 |
+
'mercury (fa)' => 'fa_' . 'f223',
|
306 |
+
'microphone (fa)' => 'fa_' . 'f130',
|
307 |
+
'microphone-slash (fa)' => 'fa_' . 'f131',
|
308 |
+
'minus (fa)' => 'fa_' . 'f068',
|
309 |
+
'minus-circle (fa)' => 'fa_' . 'f056',
|
310 |
+
'minus-square (fa)' => 'fa_' . 'f146',
|
311 |
+
'minus-square-o (fa)' => 'fa_' . 'f147',
|
312 |
+
'mobile (fa)' => 'fa_' . 'f10b',
|
313 |
+
'money (fa)' => 'fa_' . 'f0d6',
|
314 |
+
'moon-o (fa)' => 'fa_' . 'f186',
|
315 |
+
'motorcycle (fa)' => 'fa_' . 'f21c',
|
316 |
+
'music (fa)' => 'fa_' . 'f001',
|
317 |
+
'neuter (fa)' => 'fa_' . 'f22c',
|
318 |
+
'newspaper-o (fa)' => 'fa_' . 'f1ea',
|
319 |
+
'openid (fa)' => 'fa_' . 'f19b',
|
320 |
+
'outdent (fa)' => 'fa_' . 'f03b',
|
321 |
+
'pagelines (fa)' => 'fa_' . 'f18c',
|
322 |
+
'paint-brush (fa)' => 'fa_' . 'f1fc',
|
323 |
+
'paper-plane (fa)' => 'fa_' . 'f1d8',
|
324 |
+
'paper-plane-o (fa)' => 'fa_' . 'f1d9',
|
325 |
+
'paperclip (fa)' => 'fa_' . 'f0c6',
|
326 |
+
'paragraph (fa)' => 'fa_' . 'f1dd',
|
327 |
+
'pause (fa)' => 'fa_' . 'f04c',
|
328 |
+
'paw (fa)' => 'fa_' . 'f1b0',
|
329 |
+
'paypal (fa)' => 'fa_' . 'f1ed',
|
330 |
+
'pencil (fa)' => 'fa_' . 'f040',
|
331 |
+
'pencil-square (fa)' => 'fa_' . 'f14b',
|
332 |
+
'pencil-square-o (fa)' => 'fa_' . 'f044',
|
333 |
+
'phone (fa)' => 'fa_' . 'f095',
|
334 |
+
'phone-square (fa)' => 'fa_' . 'f098',
|
335 |
+
'picture-o (fa)' => 'fa_' . 'f03e',
|
336 |
+
'pie-chart (fa)' => 'fa_' . 'f200',
|
337 |
+
'pied-piper (fa)' => 'fa_' . 'f1a7',
|
338 |
+
'pied-piper-alt (fa)' => 'fa_' . 'f1a8',
|
339 |
+
'pinterest (fa)' => 'fa_' . 'f0d2',
|
340 |
+
'pinterest-p (fa)' => 'fa_' . 'f231',
|
341 |
+
'pinterest-square (fa)' => 'fa_' . 'f0d3',
|
342 |
+
'plane (fa)' => 'fa_' . 'f072',
|
343 |
+
'play (fa)' => 'fa_' . 'f04b',
|
344 |
+
'play-circle (fa)' => 'fa_' . 'f144',
|
345 |
+
'play-circle-o (fa)' => 'fa_' . 'f01d',
|
346 |
+
'plug (fa)' => 'fa_' . 'f1e6',
|
347 |
+
'plus (fa)' => 'fa_' . 'f067',
|
348 |
+
'plus-circle (fa)' => 'fa_' . 'f055',
|
349 |
+
'plus-square (fa)' => 'fa_' . 'f0fe',
|
350 |
+
'plus-square-o (fa)' => 'fa_' . 'f196',
|
351 |
+
'power-off (fa)' => 'fa_' . 'f011',
|
352 |
+
'print (fa)' => 'fa_' . 'f02f',
|
353 |
+
'puzzle-piece (fa)' => 'fa_' . 'f12e',
|
354 |
+
'qq (fa)' => 'fa_' . 'f1d6',
|
355 |
+
'qrcode (fa)' => 'fa_' . 'f029',
|
356 |
+
'question (fa)' => 'fa_' . 'f128',
|
357 |
+
'question-circle (fa)' => 'fa_' . 'f059',
|
358 |
+
'quote-left (fa)' => 'fa_' . 'f10d',
|
359 |
+
'quote-right (fa)' => 'fa_' . 'f10e',
|
360 |
+
'random (fa)' => 'fa_' . 'f074',
|
361 |
+
'rebel (fa)' => 'fa_' . 'f1d0',
|
362 |
+
'recycle (fa)' => 'fa_' . 'f1b8',
|
363 |
+
'reddit (fa)' => 'fa_' . 'f1a1',
|
364 |
+
'reddit-square (fa)' => 'fa_' . 'f1a2',
|
365 |
+
'refresh (fa)' => 'fa_' . 'f021',
|
366 |
+
'renren (fa)' => 'fa_' . 'f18b',
|
367 |
+
'repeat (fa)' => 'fa_' . 'f01e',
|
368 |
+
'reply (fa)' => 'fa_' . 'f112',
|
369 |
+
'reply-all (fa)' => 'fa_' . 'f122',
|
370 |
+
'retweet (fa)' => 'fa_' . 'f079',
|
371 |
+
'road (fa)' => 'fa_' . 'f018',
|
372 |
+
'rocket (fa)' => 'fa_' . 'f135',
|
373 |
+
'rss (fa)' => 'fa_' . 'f09e',
|
374 |
+
'rss-square (fa)' => 'fa_' . 'f143',
|
375 |
+
'rub (fa)' => 'fa_' . 'f158',
|
376 |
+
'scissors (fa)' => 'fa_' . 'f0c4',
|
377 |
+
'search (fa)' => 'fa_' . 'f002',
|
378 |
+
'search-minus (fa)' => 'fa_' . 'f010',
|
379 |
+
'search-plus (fa)' => 'fa_' . 'f00e',
|
380 |
+
'sellsy (fa)' => 'fa_' . 'f213',
|
381 |
+
'server (fa)' => 'fa_' . 'f233',
|
382 |
+
'share (fa)' => 'fa_' . 'f064',
|
383 |
+
'share-alt (fa)' => 'fa_' . 'f1e0',
|
384 |
+
'share-alt-square (fa)' => 'fa_' . 'f1e1',
|
385 |
+
'share-square (fa)' => 'fa_' . 'f14d',
|
386 |
+
'share-square-o (fa)' => 'fa_' . 'f045',
|
387 |
+
'shield (fa)' => 'fa_' . 'f132',
|
388 |
+
'ship (fa)' => 'fa_' . 'f21a',
|
389 |
+
'shirtsinbulk (fa)' => 'fa_' . 'f214',
|
390 |
+
'shopping-cart (fa)' => 'fa_' . 'f07a',
|
391 |
+
'sign-in (fa)' => 'fa_' . 'f090',
|
392 |
+
'sign-out (fa)' => 'fa_' . 'f08b',
|
393 |
+
'signal (fa)' => 'fa_' . 'f012',
|
394 |
+
'simplybuilt (fa)' => 'fa_' . 'f215',
|
395 |
+
'sitemap (fa)' => 'fa_' . 'f0e8',
|
396 |
+
'skyatlas (fa)' => 'fa_' . 'f216',
|
397 |
+
'skype (fa)' => 'fa_' . 'f17e',
|
398 |
+
'slack (fa)' => 'fa_' . 'f198',
|
399 |
+
'sliders (fa)' => 'fa_' . 'f1de',
|
400 |
+
'slideshare (fa)' => 'fa_' . 'f1e7',
|
401 |
+
'smile-o (fa)' => 'fa_' . 'f118',
|
402 |
+
'sort (fa)' => 'fa_' . 'f0dc',
|
403 |
+
'sort-alpha-asc (fa)' => 'fa_' . 'f15d',
|
404 |
+
'sort-alpha-desc (fa)' => 'fa_' . 'f15e',
|
405 |
+
'sort-amount-asc (fa)' => 'fa_' . 'f160',
|
406 |
+
'sort-amount-desc (fa)' => 'fa_' . 'f161',
|
407 |
+
'sort-asc (fa)' => 'fa_' . 'f0de',
|
408 |
+
'sort-desc (fa)' => 'fa_' . 'f0dd',
|
409 |
+
'sort-numeric-asc (fa)' => 'fa_' . 'f162',
|
410 |
+
'sort-numeric-desc (fa)' => 'fa_' . 'f163',
|
411 |
+
'soundcloud (fa)' => 'fa_' . 'f1be',
|
412 |
+
'space-shuttle (fa)' => 'fa_' . 'f197',
|
413 |
+
'spinner (fa)' => 'fa_' . 'f110',
|
414 |
+
'spoon (fa)' => 'fa_' . 'f1b1',
|
415 |
+
'spotify (fa)' => 'fa_' . 'f1bc',
|
416 |
+
'square (fa)' => 'fa_' . 'f0c8',
|
417 |
+
'square-o (fa)' => 'fa_' . 'f096',
|
418 |
+
'stack-exchange (fa)' => 'fa_' . 'f18d',
|
419 |
+
'stack-overflow (fa)' => 'fa_' . 'f16c',
|
420 |
+
'star (fa)' => 'fa_' . 'f005',
|
421 |
+
'star-half (fa)' => 'fa_' . 'f089',
|
422 |
+
'star-half-o (fa)' => 'fa_' . 'f123',
|
423 |
+
'star-o (fa)' => 'fa_' . 'f006',
|
424 |
+
'steam (fa)' => 'fa_' . 'f1b6',
|
425 |
+
'steam-square (fa)' => 'fa_' . 'f1b7',
|
426 |
+
'step-backward (fa)' => 'fa_' . 'f048',
|
427 |
+
'step-forward (fa)' => 'fa_' . 'f051',
|
428 |
+
'stethoscope (fa)' => 'fa_' . 'f0f1',
|
429 |
+
'stop (fa)' => 'fa_' . 'f04d',
|
430 |
+
'street-view (fa)' => 'fa_' . 'f21d',
|
431 |
+
'strikethrough (fa)' => 'fa_' . 'f0cc',
|
432 |
+
'stumbleupon (fa)' => 'fa_' . 'f1a4',
|
433 |
+
'stumbleupon-circle (fa)' => 'fa_' . 'f1a3',
|
434 |
+
'subscript (fa)' => 'fa_' . 'f12c',
|
435 |
+
'subway (fa)' => 'fa_' . 'f239',
|
436 |
+
'suitcase (fa)' => 'fa_' . 'f0f2',
|
437 |
+
'sun-o (fa)' => 'fa_' . 'f185',
|
438 |
+
'superscript (fa)' => 'fa_' . 'f12b',
|
439 |
+
'table (fa)' => 'fa_' . 'f0ce',
|
440 |
+
'tablet (fa)' => 'fa_' . 'f10a',
|
441 |
+
'tachometer (fa)' => 'fa_' . 'f0e4',
|
442 |
+
'tag (fa)' => 'fa_' . 'f02b',
|
443 |
+
'tags (fa)' => 'fa_' . 'f02c',
|
444 |
+
'tasks (fa)' => 'fa_' . 'f0ae',
|
445 |
+
'taxi (fa)' => 'fa_' . 'f1ba',
|
446 |
+
'tencent-weibo (fa)' => 'fa_' . 'f1d5',
|
447 |
+
'terminal (fa)' => 'fa_' . 'f120',
|
448 |
+
'text-height (fa)' => 'fa_' . 'f034',
|
449 |
+
'text-width (fa)' => 'fa_' . 'f035',
|
450 |
+
'th (fa)' => 'fa_' . 'f00a',
|
451 |
+
'th-large (fa)' => 'fa_' . 'f009',
|
452 |
+
'th-list (fa)' => 'fa_' . 'f00b',
|
453 |
+
'thumb-tack (fa)' => 'fa_' . 'f08d',
|
454 |
+
'thumbs-down (fa)' => 'fa_' . 'f165',
|
455 |
+
'thumbs-o-down (fa)' => 'fa_' . 'f088',
|
456 |
+
'thumbs-o-up (fa)' => 'fa_' . 'f087',
|
457 |
+
'thumbs-up (fa)' => 'fa_' . 'f164',
|
458 |
+
'ticket (fa)' => 'fa_' . 'f145',
|
459 |
+
'times (fa)' => 'fa_' . 'f00d',
|
460 |
+
'times-circle (fa)' => 'fa_' . 'f057',
|
461 |
+
'times-circle-o (fa)' => 'fa_' . 'f05c',
|
462 |
+
'tint (fa)' => 'fa_' . 'f043',
|
463 |
+
'toggle-off (fa)' => 'fa_' . 'f204',
|
464 |
+
'toggle-on (fa)' => 'fa_' . 'f205',
|
465 |
+
'train (fa)' => 'fa_' . 'f238',
|
466 |
+
'transgender (fa)' => 'fa_' . 'f224',
|
467 |
+
'transgender-alt (fa)' => 'fa_' . 'f225',
|
468 |
+
'trash (fa)' => 'fa_' . 'f1f8',
|
469 |
+
'trash-o (fa)' => 'fa_' . 'f014',
|
470 |
+
'tree (fa)' => 'fa_' . 'f1bb',
|
471 |
+
'trello (fa)' => 'fa_' . 'f181',
|
472 |
+
'trophy (fa)' => 'fa_' . 'f091',
|
473 |
+
'truck (fa)' => 'fa_' . 'f0d1',
|
474 |
+
'try (fa)' => 'fa_' . 'f195',
|
475 |
+
'tty (fa)' => 'fa_' . 'f1e4',
|
476 |
+
'tumblr (fa)' => 'fa_' . 'f173',
|
477 |
+
'tumblr-square (fa)' => 'fa_' . 'f174',
|
478 |
+
'twitch (fa)' => 'fa_' . 'f1e8',
|
479 |
+
'twitter (fa)' => 'fa_' . 'f099',
|
480 |
+
'twitter-square (fa)' => 'fa_' . 'f081',
|
481 |
+
'umbrella (fa)' => 'fa_' . 'f0e9',
|
482 |
+
'underline (fa)' => 'fa_' . 'f0cd',
|
483 |
+
'undo (fa)' => 'fa_' . 'f0e2',
|
484 |
+
'university (fa)' => 'fa_' . 'f19c',
|
485 |
+
'unlock (fa)' => 'fa_' . 'f09c',
|
486 |
+
'unlock-alt (fa)' => 'fa_' . 'f13e',
|
487 |
+
'upload (fa)' => 'fa_' . 'f093',
|
488 |
+
'usd (fa)' => 'fa_' . 'f155',
|
489 |
+
'user (fa)' => 'fa_' . 'f007',
|
490 |
+
'user-md (fa)' => 'fa_' . 'f0f0',
|
491 |
+
'user-plus (fa)' => 'fa_' . 'f234',
|
492 |
+
'user-secret (fa)' => 'fa_' . 'f21b',
|
493 |
+
'user-times (fa)' => 'fa_' . 'f235',
|
494 |
+
'users (fa)' => 'fa_' . 'f0c0',
|
495 |
+
'venus (fa)' => 'fa_' . 'f221',
|
496 |
+
'venus-double (fa)' => 'fa_' . 'f226',
|
497 |
+
'venus-mars (fa)' => 'fa_' . 'f228',
|
498 |
+
'viacoin (fa)' => 'fa_' . 'f237',
|
499 |
+
'video-camera (fa)' => 'fa_' . 'f03d',
|
500 |
+
'vimeo-square (fa)' => 'fa_' . 'f194',
|
501 |
+
'vine (fa)' => 'fa_' . 'f1ca',
|
502 |
+
'vk (fa)' => 'fa_' . 'f189',
|
503 |
+
'volume-down (fa)' => 'fa_' . 'f027',
|
504 |
+
'volume-off (fa)' => 'fa_' . 'f026',
|
505 |
+
'volume-up (fa)' => 'fa_' . 'f028',
|
506 |
+
'weibo (fa)' => 'fa_' . 'f18a',
|
507 |
+
'weixin (fa)' => 'fa_' . 'f1d7',
|
508 |
+
'whatsapp (fa)' => 'fa_' . 'f232',
|
509 |
+
'wheelchair (fa)' => 'fa_' . 'f193',
|
510 |
+
'wifi (fa)' => 'fa_' . 'f1eb',
|
511 |
+
'windows (fa)' => 'fa_' . 'f17a',
|
512 |
+
'wordpress (fa)' => 'fa_' . 'f19a',
|
513 |
+
'wrench (fa)' => 'fa_' . 'f0ad',
|
514 |
+
'xing (fa)' => 'fa_' . 'f168',
|
515 |
+
'xing-square (fa)' => 'fa_' . 'f169',
|
516 |
+
'yahoo (fa)' => 'fa_' . 'f19e',
|
517 |
+
'yelp (fa)' => 'fa_' . 'f1e9',
|
518 |
+
'youtube (fa)' => 'fa_' . 'f167',
|
519 |
+
'youtube-play (fa)' => 'fa_' . 'f16a',
|
520 |
+
'youtube-square (fa)' => 'fa_' . 'f166'
|
521 |
+
);
|
522 |
+
|
523 |
+
ksort( $arr );
|
524 |
+
|
525 |
+
return $arr;
|
526 |
+
}
|
content_elements_misc/fonts.php
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
require( 'google_fonts.php' );
|
4 |
+
|
5 |
+
foreach ( $fonts as $item ) {
|
6 |
+
$font_arr[ $item['font-name'] ] = $item['css-name'];
|
7 |
+
}
|
8 |
+
|
9 |
+
if ( property_exists( 'BoldThemesFramework', 'custom_fonts' ) ) {
|
10 |
+
foreach ( BoldThemesFramework::$custom_fonts as $font ) {
|
11 |
+
$font_arr[ $font['font'] . ' ' . esc_html__( '(custom font)', 'bold-builder' ) ] = $font['font'];
|
12 |
+
}
|
13 |
+
}
|
14 |
+
|
15 |
+
ksort( $font_arr );
|
content_elements_misc/fonts/FontAwesome.otf
ADDED
Binary file
|
content_elements_misc/fonts/Pe-icon-7-stroke.eot
ADDED
Binary file
|
content_elements_misc/fonts/Pe-icon-7-stroke.svg
ADDED
@@ -0,0 +1,212 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" standalone="no"?>
|
2 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
+
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
+
<metadata>Generated by IcoMoon</metadata>
|
5 |
+
<defs>
|
6 |
+
<font id="Pe-icon-7-stroke" horiz-adv-x="512">
|
7 |
+
<font-face units-per-em="512" ascent="480" descent="-32" />
|
8 |
+
<missing-glyph horiz-adv-x="512" />
|
9 |
+
<glyph unicode=" " d="" horiz-adv-x="256" />
|
10 |
+
<glyph unicode="" d="M447.892 343.42h-55.412v46.814c0 21.25-17.219 38.486-38.485 38.486h-264.23c-21.241 0-38.485-17.236-38.485-38.486v-358.126c0-7.089 5.739-12.828 12.828-12.828h383.783c7.081 0 12.828 5.739 12.828 12.828v298.483c0.001 7.089-5.746 12.829-12.827 12.829zM89.765 411.66h264.23c11.811 0 21.425-9.613 21.425-21.426v-46.814h-307.080v46.814c0 11.813 9.612 21.426 21.425 21.426zM443.66 36.34h-375.32v290.020h375.32v-290.020zM324.24 181.341c0-23.55 19.101-42.634 42.659-42.634s42.641 19.084 42.641 42.634c0 23.557-19.084 42.65-42.641 42.65s-42.659-19.092-42.659-42.65zM392.48 181.341c0-14.103-11.479-25.574-25.581-25.574-14.111 0-25.599 11.471-25.599 25.574 0 14.111 11.487 25.59 25.599 25.59 14.102 0 25.581-11.478 25.581-25.59z" />
|
11 |
+
<glyph unicode="" d="M179.23 266.65v-85.3h69.948l58.002-57.995v201.297l-58.002-58.002h-69.948zM261.24 254.588l28.88 28.88v-118.928l-33.878 33.87h-59.952v51.18h59.953l4.997 4.998zM256 437.25c-117.77 0-213.25-95.48-213.25-213.25 0-117.771 95.48-213.25 213.25-213.25 117.771 0 213.25 95.479 213.25 213.25 0 117.77-95.479 213.25-213.25 213.25zM256 27.81c-108.183 0-196.19 88.015-196.19 196.19 0 108.174 88.007 196.19 196.19 196.19s196.19-88.016 196.19-196.19c0-108.175-88.007-196.19-196.19-196.19z" />
|
12 |
+
<glyph unicode="" d="M179.23 266.65v-85.3h69.948l58.002-57.995v201.297l-58.002-58.002h-69.948zM261.24 254.588l28.88 28.88v-118.928l-33.879 33.87h-59.951v51.18h59.952l4.998 4.998zM427.050 351.358l-13.753-10.238c24.415-32.712 38.893-73.255 38.893-117.12s-14.478-84.409-38.893-117.113l13.753-10.238c26.507 35.536 42.2 79.611 42.2 127.35s-15.694 91.823-42.2 127.359zM385.791 127.363c20.167 27.022 32.271 60.401 32.271 96.637s-12.103 69.614-32.271 96.637l-13.661-10.171c18.043-24.174 28.871-54.046 28.871-86.466s-10.82-62.284-28.871-86.467l13.661-10.17zM344.807 157.875c13.803 18.493 22.083 41.326 22.083 66.125s-8.28 47.639-22.083 66.124l-13.661-10.171c11.678-15.644 18.684-34.97 18.684-55.953s-7.006-40.309-18.684-55.953l13.661-10.172zM255.991 27.81c-108.174 0-196.181 88.007-196.181 196.19s88.007 196.19 196.181 196.19c53.912 0 102.752-21.917 138.254-57.228l12.12 12.12c-38.567 38.386-91.671 62.168-150.374 62.168-117.761 0-213.241-95.471-213.241-213.25 0-117.771 95.48-213.25 213.241-213.25 58.703 0 111.807 23.782 150.375 62.167l-12.12 12.129c-35.503-35.32-84.342-57.236-138.255-57.236z" />
|
13 |
+
<glyph unicode="" d="M396.745 339.155c-63.592 0-115.155-51.554-115.155-115.155 0-41.55 22.075-77.844 55.062-98.095h-161.304c32.987 20.251 55.062 56.545 55.062 98.095 0 63.601-51.563 115.155-115.155 115.155s-115.155-51.554-115.155-115.155c0-63.6 51.563-115.155 115.155-115.155h281.49c63.592 0 115.155 51.555 115.155 115.155s-51.563 115.155-115.155 115.155zM17.16 224c0 54.087 44.008 98.095 98.095 98.095s98.095-44.008 98.095-98.095-44.008-98.095-98.095-98.095-98.095 44.008-98.095 98.095zM396.745 125.905c-54.087 0-98.095 44.008-98.095 98.095s44.008 98.095 98.095 98.095 98.095-44.008 98.095-98.095-44.008-98.095-98.095-98.095z" />
|
14 |
+
<glyph unicode="" d="M450.974 334.89l-109.674-65.957v74.487c0 14.127-11.463 25.59-25.59 25.59h-272.96c-14.144 0-25.59-11.463-25.59-25.59v-238.84c0-14.128 11.446-25.59 25.59-25.59h272.96c14.127 0 25.59 11.462 25.59 25.59v75.903l112.089-67.373h41.451v221.78h-43.866zM324.24 104.58c0-4.707-3.833-8.53-8.53-8.53h-272.96c-4.715 0-8.53 3.823-8.53 8.53v238.84c0 4.706 3.815 8.53 8.53 8.53h272.96c4.697 0 8.53-3.824 8.53-8.53v-238.84zM477.78 130.17h-19.659l-116.821 70.222v48.631l114.405 68.806h22.075v-187.659z" />
|
15 |
+
<glyph unicode="" d="M256 428.722c-113.073 0-204.72-91.647-204.72-204.72s91.647-204.723 204.72-204.723 204.72 91.651 204.72 204.723c0 113.073-91.647 204.72-204.72 204.72zM256 411.662c103.477 0 187.66-84.183 187.66-187.66 0-45.524-16.31-87.307-43.383-119.836-18.71 7.813-62.875 23.141-90.215 31.213-2.332 0.733-2.699 0.85-2.699 10.554 0 8.014 3.299 16.085 6.514 22.916 3.482 7.422 7.613 19.901 9.096 31.096 4.148 4.815 9.796 14.312 13.428 32.412 3.182 15.953 1.699 21.758-0.416 27.206-0.217 0.575-0.45 1.141-0.617 1.708-0.8 3.74 0.299 23.174 3.032 38.252 1.883 10.346-0.484 32.346-14.728 50.546-8.997 11.504-26.207 25.623-57.644 27.589l-17.243-0.016c-30.905-1.95-48.131-16.069-57.128-27.573-14.244-18.2-16.61-40.2-14.727-50.539 2.748-15.085 3.832-34.519 3.049-38.185-0.166-0.641-0.4-1.208-0.633-1.783-2.099-5.448-3.599-11.254-0.4-27.206 3.615-18.101 9.263-27.597 13.428-32.412 1.466-11.196 5.598-23.674 9.096-31.096 2.549-5.431 3.749-12.82 3.749-23.266 0-9.705-0.367-9.821-2.55-10.512-28.272-8.347-73.271-24.607-90.048-31.954-27.604 32.679-44.281 74.862-44.281 120.886 0 103.476 84.183 187.66 187.66 187.66zM124.984 89.817c19.21 7.842 57.511 21.504 82.668 28.935 14.628 4.615 14.628 16.935 14.628 26.831 0 8.205-0.566 20.301-5.365 30.53-3.299 7.006-7.065 19.018-7.897 28.422-0.183 2.199-1.216 4.232-2.882 5.681-2.416 2.116-7.331 9.863-10.463 25.49-2.482 12.37-1.432 15.078-0.416 17.693 0.433 1.117 0.85 2.216 1.183 3.457 2.049 7.488-0.234 32.087-2.716 45.732-1.082 5.931 0.283 22.783 11.379 36.978 9.946 12.72 25.007 19.809 44.216 21.033l16.177 0.017c19.726-1.241 34.786-8.33 44.749-21.050 11.096-14.195 12.445-31.047 11.362-36.985-2.466-13.637-4.765-38.236-2.716-45.716 0.351-1.25 0.75-2.349 1.183-3.466 1.017-2.615 2.066-5.323-0.4-17.693-3.131-15.627-8.063-23.374-10.479-25.49-1.649-1.449-2.682-3.482-2.882-5.681-0.816-9.404-4.581-21.416-7.88-28.422-3.782-8.039-8.13-18.743-8.13-30.18 0-9.897 0-22.216 14.777-26.873 24.074-7.114 62.559-20.334 82.884-28.326-33.936-33.604-80.567-54.396-131.964-54.396-50.93 0-97.162 20.425-131.016 53.479z" />
|
16 |
+
<glyph unicode="" d="M330.638 180.083l12.062 12.061-86.7 86.7-86.7-86.7 12.063-12.061 66.107 66.107v-270.036h17.060v270.036zM213.35 61.454v17.060h-110.89v290.020h307.080v-290.020h-110.89v-17.060h127.95v324.14h-341.2v-324.14z" />
|
17 |
+
<glyph unicode="" d="M375.42 232.53h-213.25v102.36c0 51.738 42.1 93.83 93.847 93.83 51.729 0 93.813-42.092 93.813-93.83v-34.12h17.060v34.12c0 61.234-49.647 110.89-110.873 110.89-61.251 0-110.907-49.656-110.907-110.89v-102.36h-59.71v-230.31h341.2v230.31h-51.18zM409.54 19.28h-307.080v196.19h307.080v-196.19z" />
|
18 |
+
<glyph unicode="" d="M264.53 437.042v25.798h-17.060v-25.798c-137.163-4.499-247.37-116.763-247.37-254.217 0-9.047 0.5-18.31 1.5-27.556l16.993 0.608c1.033 28.63 24.257 51.063 52.896 51.063 29.205 0 52.979-23.774 52.979-52.988h17.060c0 29.214 23.774 52.988 52.996 52.988 28.889 0 52.413-23.241 52.946-52.005v-132.082c0-20.783 16.894-37.693 37.686-37.693s37.702 16.91 37.702 37.693h-17.060c0-11.378-9.263-20.633-20.642-20.633s-20.626 9.255-20.626 20.633v131.099h0.050c0 29.214 23.757 52.988 52.979 52.988s52.996-23.774 52.996-52.988h17.060c0 29.214 23.774 52.988 52.979 52.988 28.39 0 51.613-22.225 52.863-50.597l17.011-0.517c0.949 9.047 1.432 18.126 1.432 26.998 0 137.455-110.207 249.719-247.37 254.218zM440.594 224c-26.506 0-49.614-14.803-61.509-36.569-11.895 21.766-35.020 36.569-61.526 36.569s-49.614-14.803-61.509-36.569c-11.895 21.766-35.020 36.569-61.526 36.569s-49.631-14.803-61.526-36.569c-11.895 21.766-35.003 36.569-61.509 36.569-21.658 0-40.968-9.696-53.796-25.082 8.364 123.418 112.040 221.281 238.307 221.281 126.235 0 229.91-97.845 238.291-221.231-12.846 15.344-32.138 25.032-53.697 25.032z" />
|
19 |
+
<glyph unicode="" d="M418.070 386.070h-85.3v17.060c0 18.842-15.277 34.12-34.12 34.12h-85.3c-18.843 0-34.12-15.278-34.12-34.12v-17.060h-85.3v-17.060h17.577l17.076-324.14c0-18.843 15.277-34.12 34.12-34.12h187.66c18.843 0 34.12 15.277 34.12 34.12l16.777 324.14h16.81v17.060zM196.29 403.13c0 9.413 7.664 17.060 17.060 17.060h85.3c9.413 0 17.060-7.647 17.060-17.060v-17.060h-119.42v17.060zM367.456 45.753l-0.033-0.433v-0.45c0-9.397-7.647-17.060-17.060-17.060h-187.66c-9.396 0-17.060 7.663-17.060 17.060v0.45l-0.016 0.45-17.044 323.24h255.601l-16.728-323.257zM247.47 334.89h17.060v-272.96h-17.060v272.96zM213.733 62.479l-17.459 272.427-17.027-1.082 17.46-272.427zM332.887 334.357l-17.027 1.066-17.21-272.96 17.027-1.066z" />
|
20 |
+
<glyph unicode="" d="M472.52 67.84l-90.473 90.473 12.070 12.071-12.062 12.061-36.177-36.177-60.334 60.318 72.488 72.505c9.655-3.44 19.751-5.181 30.105-5.181 23.891 0 46.357 9.305 63.258 26.19 26.074 26.090 33.471 64.866 18.843 98.778l-4.973 11.545-38.876-38.876-31.304-0.425 0.416 29.855 39.635 39.626-11.521 4.989c-11.304 4.89-23.307 7.372-35.669 7.372-23.899 0-46.357-9.305-63.234-26.198-24.74-24.723-32.688-60.834-20.984-93.438l-72.463-72.463-102.552 102.535 12.071 12.062-66.325 66.332-36.219-36.169 66.357-66.349 12.054 12.061 102.551-102.535-72.472-72.472c-9.679 3.466-19.817 5.215-30.205 5.215-23.891 0-46.356-9.305-63.241-26.198-26.132-26.115-33.513-64.941-18.81-98.895l4.989-11.512 39.627 39.626 29.846 0.4-0.425-31.304-38.876-38.876 11.545-4.974c11.271-4.856 23.224-7.322 35.536-7.322 23.899 0 46.349 9.297 63.234 26.182 24.699 24.707 32.654 60.776 21.025 93.33l72.505 72.514 60.335-60.31-36.203-36.203 12.062-12.061 12.061 12.061 90.465-90.465c8.055-8.063 18.776-12.503 30.163-12.503s22.1 4.44 30.164 12.503c16.629 16.619 16.62 43.676-0.007 60.302zM62.381 405.625l12.070 12.045 42.208-42.208-12.061-12.062-42.217 42.225zM183.167 120.711c11.829-27.464 5.831-58.86-15.277-79.977-13.662-13.661-31.829-21.183-51.171-21.183-5.556 0-11.021 0.617-16.343 1.849l25.099 25.099 0.757 55.761-54.304-0.733-25.908-25.906c-5.698 24.157 1.299 49.647 19.326 67.665 13.67 13.669 31.846 21.2 51.18 21.2 10.021 0 19.734-2.008 28.889-5.973l5.324-2.3 173.107 173.108-2.299 5.323c-11.904 27.497-5.923 58.918 15.227 80.060 13.662 13.67 31.838 21.2 51.172 21.2 5.606 0 11.112-0.633 16.485-1.874l-25.89-25.89-0.75-54.312 55.761 0.758 25.124 25.115c5.631-24.115-1.375-49.555-19.343-67.54-13.678-13.662-31.854-21.192-51.197-21.192-9.988 0-19.675 1.999-28.813 5.931l-5.315 2.291-173.132-173.165 2.291-5.315zM460.467 19.601c-4.84-4.84-11.271-7.506-18.102-7.506-6.839 0-13.261 2.666-18.101 7.506l-90.465 90.465 36.186 36.186 90.473-90.473c9.98-9.98 9.98-26.207 0.009-36.178z" />
|
21 |
+
<glyph unicode="" d="M234.975 209.206c0.333-0.416 0.799-0.767 1.166-1.166 4.698-5.831 11.795-9.63 19.859-9.63 14.127 0 25.59 11.446 25.59 25.59 0 7.513-3.299 14.194-8.43 18.875-0.666 0.75-1.283 1.517-2.266 2.266l-103.41 78.686c-3.015 2.316-7.347 2.432-10.495 0-3.765-2.899-4.466-8.297-1.566-12.062l79.552-102.559zM256 437.233c-2.799 0-5.531-0.316-8.297-0.416v-8.846h-0.233v-93.064h17.060v84.833c104.225-4.515 187.66-90.448 187.66-195.74 0-108.175-87.999-196.174-196.19-196.174s-196.19 88-196.19 196.174c0 54.096 22.008 103.143 57.544 138.662l-12.129 12.129c-38.601-38.584-62.475-91.897-62.475-150.791 0-117.771 95.463-213.234 213.25-213.234s213.25 95.463 213.25 213.234c0 117.771-95.463 213.233-213.25 213.233z" />
|
22 |
+
<glyph unicode="" d="M396.504 454.31h-112.406l-258.408-257.732 202.454-202.888 258.166 257.483v113.539l-89.806 89.598zM469.25 258.254l-241.072-240.439-178.356 178.738 241.331 240.697h98.295l79.802-79.618v-99.378zM349.88 352.009c0-18.776 15.302-34.045 34.12-34.045s34.12 15.269 34.12 34.045c0 18.784-15.303 34.061-34.12 34.061s-34.12-15.277-34.12-34.061zM401.060 352.009c0-9.363-7.656-16.985-17.060-16.985s-17.060 7.622-17.060 16.985c0 9.371 7.655 17.001 17.060 17.001s17.060-7.63 17.060-17.001z" />
|
23 |
+
<glyph unicode="" d="M256.9 294.91c-37.686 0-68.249-30.547-68.249-68.249 0-37.685 30.563-68.248 68.249-68.248 37.693 0 68.231 30.563 68.231 68.248 0 37.702-30.538 68.249-68.231 68.249zM256.9 175.474c-28.222 0-51.189 22.965-51.189 51.188s22.966 51.189 51.189 51.189c28.214 0 51.171-22.966 51.171-51.189s-22.957-51.188-51.171-51.188zM256.891 363.141c-75.379 0-136.48-61.093-136.48-136.48 0-75.379 61.101-136.48 136.48-136.48s136.48 61.101 136.48 136.48c0 75.388-61.101 136.48-136.48 136.48zM256.891 107.241c-65.849 0-119.42 53.571-119.42 119.42s53.571 119.42 119.42 119.42 119.42-53.57 119.42-119.42c0-65.849-53.571-119.42-119.42-119.42zM460.72 226.661c0 113.073-91.656 204.72-204.72 204.72s-204.72-91.647-204.72-204.72c0-62.309 27.873-118.078 71.788-155.622l-34.919-43.774 13.344-10.646 34.995 43.875c33.636-24.233 74.887-38.552 119.511-38.552 44.424 0 85.508 14.195 119.062 38.235l34.795-43.558 13.328 10.646-34.669 43.407c44.158 37.553 72.205 93.481 72.205 155.989zM68.34 226.661c0 103.477 84.184 187.66 187.66 187.66s187.66-84.183 187.66-187.66c0-103.476-84.183-187.66-187.66-187.66-103.476 0-187.66 84.185-187.66 187.66z" />
|
24 |
+
<glyph unicode="" d="M256 351.834c-70.673 0-127.95-57.303-127.95-127.967 0-70.647 57.277-127.933 127.95-127.933 70.664 0 127.95 57.286 127.95 127.933 0 70.664-57.286 127.967-127.95 127.967zM256 112.994c-61.143 0-110.89 49.738-110.89 110.873 0 61.152 49.747 110.907 110.89 110.907s110.89-49.755 110.89-110.907c0-61.135-49.747-110.873-110.89-110.873zM247.537 479.9h17.060v-102.476h-17.060v102.476zM247.537 70.344h17.060v-102.244h-17.060v102.244zM0.1 232.53h102.36v-17.060h-102.36v17.060zM409.54 232.53h102.36v-17.060h-102.36v17.060zM430.971 411.514l12.063-12.063-71.322-71.322-12.063 12.063 71.322 71.322zM81.15 37.545l-12.063 12.063 71.322 71.322 12.063-12.063-71.322-71.322zM81.16 411.511l71.323-71.322-12.061-12.062-71.323 71.323 12.061 12.061zM430.995 37.543l-71.322 71.322 12.063 12.063 71.322-71.322-12.063-12.063z" />
|
25 |
+
<glyph unicode="" d="M504.224 301.17l-248.22 119.47-248.228-119.479 34.978-21.091v-184.47h17.060v174.182l51.18-30.862v-211.56h290.020v211.509l103.21 62.301zM256.004 401.714l212.401-102.244-212.276-128.133-212.517 128.142 212.392 102.235zM383.954 44.42h-255.9v184.22l128.075-77.228 127.825 77.162v-184.154z" />
|
26 |
+
<glyph unicode="" d="M400.618 339.505l14.436 14.428 14.627-14.628 18.093 18.093-41.317 41.318-18.093-18.093 14.627-14.628-14.436-14.428c-31.979 29.322-73.704 48.131-119.761 51.113v34.57h-25.59v-34.57c-102.384-6.597-183.394-91.681-183.394-195.74 0-108.358 87.833-196.19 196.19-196.19s196.19 87.832 196.19 196.19c0 51.113-19.559 97.645-51.572 132.565zM256 27.81c-98.77 0-179.13 80.368-179.13 179.13 0 98.777 80.36 179.13 179.13 179.13s179.13-80.353 179.13-179.13c0-98.762-80.36-179.13-179.13-179.13zM264.53 230.964v112.456h-17.060v-112.456c-9.913-3.532-17.060-12.896-17.060-24.024 0-11.129 7.147-20.492 17.060-24.025v-35.685h17.060v35.685c9.913 3.532 17.060 12.896 17.060 24.025s-7.147 20.492-17.060 24.024z" />
|
27 |
+
<glyph unicode="" d="M310.078 275.148l-54.078 166.369-54.095-166.368h-176.215l142.794-102.351-54.828-166.314 142.344 103.171 142.327-103.172-54.811 166.314 142.794 102.351h-176.232zM327.306 167.457l38.301-116.175-109.607 79.44-109.624-79.44 42.233 128.079-10.196 7.297-99.645 71.43h135.531l41.701 128.259 41.684-128.259h135.531l-109.824-78.727 3.915-11.904z" />
|
28 |
+
<glyph unicode="" d="M-0.329 282.944v-119.42h51.18v-102.36h17.060v102.36h131.232l124.601-100.827v324.139l-125.392-103.892h-198.681zM16.731 180.584v85.3h68.24v-85.3h-68.24zM209.239 269.807l97.445 80.743v-252.102l-101.502 82.134h-103.151v85.3h102.469l4.739 3.925zM441.815 371.317l-12.27-12.278c39.926-31.255 65.724-79.752 65.724-134.272 0-55.97-27.214-105.583-68.981-136.705l12.345-12.345c44.783 34.295 73.697 88.29 73.697 149.050-0.001 59.301-27.549 112.155-70.515 146.55zM386.986 316.48l-12.404-12.403c26.332-16.635 43.917-45.924 43.917-79.31 0-34.861-19.151-65.283-47.457-81.46l12.428-12.429c31.255 19.61 52.088 54.271 52.088 93.889 0.001 38.143-19.258 71.763-48.572 91.713z" />
|
29 |
+
<glyph unicode="" d="M255.512 185.611c-37.627 0-68.24-30.613-68.24-68.24s30.613-68.24 68.24-68.24c37.627 0 68.24 30.613 68.24 68.24s-30.612 68.24-68.24 68.24zM255.512 66.191c-28.223 0-51.18 22.958-51.18 51.18s22.957 51.18 51.18 51.18c28.222 0 51.18-22.958 51.18-51.18s-22.958-51.18-51.18-51.18zM255.512 262.381c-57.586 0-107.291-33.82-130.682-82.576l12.77-12.762c19.434 45.949 64.966 78.277 117.912 78.277s98.478-32.329 117.913-78.277l12.769 12.762c-23.391 48.756-73.096 82.576-130.682 82.576zM256.345 398.869c-95.213 0-179.48-47.565-230.443-120.128l12.228-12.229c47.682 69.557 127.701 115.297 218.215 115.297 90.090 0 169.758-45.316 217.524-114.322l12.229 12.229c-51.039 72.013-134.964 119.153-229.753 119.153zM256.345 330.629c-76.454 0-143.603-40.467-181.254-101.077l12.42-12.412c34.204 57.661 97.062 96.429 168.834 96.429 71.339 0 133.89-38.285 168.226-95.379l12.378 12.378c-37.768 60.044-104.583 100.061-180.604 100.061z" />
|
30 |
+
<glyph unicode="" d="M380.985 177.497l55.911-55.936h-100.743l-208.186 221.78h-85.517v-17.060h78.137l208.185-221.78h108.124l-55.761-55.778 12.062-12.062 76.353 76.378-76.503 76.52zM120.587 121.561h-78.137v-17.060h85.517l82.601 87.999-12.445 11.679zM336.169 326.281h100.727l-55.761-55.778 12.062-12.062 76.353 76.378-76.503 76.52-12.062-12.062 55.911-55.936h-108.124l-82.967-88.716 12.461-11.645z" />
|
31 |
+
<glyph unicode="" d="M51.28 428.72v-409.44h409.44v409.44h-409.44zM443.66 36.34h-375.32v375.32h375.32v-375.32zM145.093 266.65c0-61.251 49.656-110.89 110.899-110.89s110.881 49.639 110.881 110.89v59.71h17.077v17.060h-51.18v-17.060h17.043v-59.71c0-51.738-42.091-93.83-93.821-93.83-51.746 0-93.839 42.092-93.839 93.83v59.71h17.077v17.060h-51.18v-17.060h17.043v-59.71z" />
|
32 |
+
<glyph unicode="" d="M418.070 445.78c-37.685 0-68.24-30.563-68.24-68.24 0-6.539 0.975-12.853 2.691-18.842l-199.497-83.618c-11.795 20.434-33.821 34.22-59.094 34.22-37.677 0-68.24-30.563-68.24-68.24 0-37.685 30.563-68.24 68.24-68.24 19.743 0 37.486 8.439 49.947 21.85l128.55-92.389c-5.022-9.504-7.897-20.317-7.897-31.813 0-37.693 30.563-68.249 68.24-68.249s68.24 30.555 68.24 68.249c0 37.677-30.563 68.231-68.24 68.231-20.042 0-38.018-8.705-50.505-22.465l-128.375 92.239c5.282 9.688 8.28 20.784 8.28 32.587 0 6.339-0.932 12.454-2.549 18.285l199.647 83.684c11.853-20.158 33.72-33.736 58.802-33.736 37.686 0 68.24 30.554 68.24 68.248 0 37.676-30.554 68.239-68.24 68.239zM332.77 121.64c28.222 0 51.18-22.958 51.18-51.171 0-28.222-22.958-51.189-51.18-51.189s-51.18 22.966-51.18 51.189c0 28.213 22.958 51.171 51.18 51.171zM93.93 189.88c-28.222 0-51.18 22.958-51.18 51.18s22.958 51.18 51.18 51.18 51.18-22.958 51.18-51.18c0-28.221-22.958-51.18-51.18-51.18zM418.070 326.352c-28.222 0-51.18 22.966-51.18 51.188s22.958 51.18 51.18 51.18c28.222 0 51.18-22.958 51.18-51.18s-22.958-51.188-51.18-51.188z" />
|
33 |
+
<glyph unicode="" d="M256 445.78c-108.358 0-196.19-42.009-196.19-93.839v-255.9c0-51.813 87.832-93.821 196.19-93.821 108.34 0 196.19 42.009 196.19 93.821v255.9c0 51.83-87.85 93.839-196.19 93.839zM256 428.72c105.559 0 179.13-40.459 179.13-76.779 0-36.303-73.571-76.761-179.13-76.761-105.576 0-179.13 40.459-179.13 76.761 0 36.32 73.554 76.779 179.13 76.779zM435.13 113.101v-17.060c0-36.303-73.571-76.761-179.13-76.761-105.576 0-179.13 40.459-179.13 76.761v47.049c30.621-32.737 99.277-55.57 179.13-55.57 79.835 0 148.508 22.832 179.13 55.57v-29.989zM435.13 181.341c0-36.303-73.571-76.761-179.13-76.761-105.576 0-179.13 40.459-179.13 76.761v47.049c30.621-32.737 99.277-55.57 179.13-55.57 79.835 0 148.508 22.832 179.13 55.57v-47.049zM435.13 266.641c0-36.303-73.571-76.761-179.13-76.761-105.576 0-179.13 40.459-179.13 76.761v47.049c30.621-32.737 99.277-55.57 179.13-55.57 79.835 0 148.508 22.832 179.13 55.57v-47.049z" />
|
34 |
+
<glyph unicode="" d="M457.463 43.639l-116.205 116.217c23.358 28.089 37.419 64.167 37.419 103.543 0 89.515-72.554 162.070-162.070 162.070-89.498 0-162.070-72.555-162.070-162.070 0-89.498 72.572-162.070 162.070-162.070 39.385 0 75.454 14.061 103.543 37.419l116.205-116.217 21.108 21.108zM71.597 263.399c0 79.96 65.041 145.010 145.010 145.010 79.953 0 145.010-65.050 145.010-145.010s-65.057-145.010-145.010-145.010c-79.969 0-145.010 65.050-145.010 145.010z" />
|
35 |
+
<glyph unicode="" d="M393.425 224c41.867 43.033 60.601 84.908 44.899 110.748-6.256 10.304-20.676 22.582-53.812 22.582-18.168 0-39.41-3.682-62.326-10.462-15.22 54.995-40.576 90.382-69.848 90.382-28.913 0-54.012-34.537-69.289-88.399-20.25 5.515-39.051 8.48-55.37 8.48-33.137 0-47.556-12.278-53.821-22.582-12.587-20.709-4.148-51.622 23.758-87.041 6.223-7.897 13.32-15.844 21.075-23.775-41.834-43-60.535-84.858-44.833-110.698 6.264-10.296 20.684-22.575 53.812-22.575 16.319 0 35.128 2.974 55.387 8.481 15.269-53.854 40.367-88.39 69.281-88.39 29.272 0 54.629 35.386 69.848 90.373 22.908-6.781 44.158-10.463 62.334-10.463 33.129 0 47.549 12.279 53.805 22.575 15.701 25.847-3.033 67.739-44.9 110.764zM384.512 340.271c13.911 0 32.012-2.499 39.235-14.386 10.404-17.118-5.256-51.755-42.484-89.957-13.578 12.704-29.063 25.39-46.198 37.668-1.849 20.201-4.807 39.21-8.722 56.628 21.649 6.481 41.567 10.047 58.169 10.047zM291.357 165.964c-11.679-7.097-23.491-13.636-35.261-19.6-11.762 5.964-23.574 12.503-35.253 19.6-12.295 7.472-24.049 15.311-35.22 23.366-0.725 11.179-1.192 22.692-1.192 34.67 0 11.995 0.467 23.516 1.199 34.711 10.93 7.897 22.658 15.711 35.186 23.324 11.687 7.097 23.499 13.636 35.278 19.609 11.778-5.973 23.591-12.512 35.278-19.609 9.638-5.857 18.668-11.854 27.364-17.893 0.975-12.837 1.517-26.214 1.517-40.142 0-13.92-0.542-27.306-1.517-40.134-8.695-6.040-17.734-12.046-27.379-17.902zM316.563 161.733c-1.674-13.77-3.923-26.64-6.555-38.652-11.288 3.982-22.916 8.689-34.703 14.036 8.306 4.482 16.627 9.229 24.915 14.27 5.58 3.389 11.020 6.855 16.343 10.346zM236.886 137.125c-14.228-6.464-28.222-11.954-41.659-16.402-3.232 14.228-5.856 29.764-7.705 46.516 7.939-5.415 16.044-10.738 24.457-15.852 8.289-5.041 16.602-9.789 24.907-14.262zM167.772 202.891c-8.738 6.931-17.018 13.978-24.674 21.084 7.514 7.006 15.81 14.078 24.674 21.142-0.259-6.938-0.4-13.977-0.4-21.116-0.001-7.141 0.141-14.18 0.4-21.11zM187.539 280.87c1.841 16.702 4.465 32.203 7.688 46.407 13.436-4.448 27.423-9.938 41.65-16.394-8.305-4.482-16.635-9.229-24.923-14.269-8.439-5.132-16.568-10.397-24.415-15.744zM275.312 310.882c11.787 5.348 23.407 10.046 34.695 14.028 2.632-12.003 4.881-24.865 6.555-38.635-5.323 3.499-10.754 6.948-16.326 10.338-8.288 5.040-16.619 9.788-24.924 14.269zM336.63 251.139c11.862-9.046 22.774-18.143 32.421-27.139-9.647-8.989-20.559-18.085-32.421-27.131 0.433 8.871 0.683 17.918 0.683 27.131 0.001 9.212-0.249 18.259-0.683 27.139zM252.338 420.19c19.435 0 40.168-29.639 53.546-78.553-16.094-5.598-32.829-12.629-49.789-20.9-19.393 9.455-38.469 17.268-56.645 23.199 13.396 47.532 33.763 76.254 52.888 76.254zM88.436 325.885c7.222 11.887 25.323 14.386 39.243 14.386 14.777 0 32.204-2.832 51.114-8.022-4.524-19.642-7.848-41.334-9.705-64.533-13.987-10.447-26.79-21.125-38.219-31.838-7.305 7.481-14.003 14.961-19.85 22.391-22.85 28.998-31.080 53.638-22.583 67.616zM127.67 107.72c-13.912 0-32.012 2.499-39.235 14.378-10.404 17.127 5.248 51.755 42.458 89.957 11.562-10.771 24.399-21.375 38.185-31.671 1.849-23.241 5.181-44.966 9.713-64.641-18.908-5.183-36.335-8.023-51.121-8.023zM252.338 27.81c-19.125 0-39.492 28.721-52.888 76.245 18.177 5.939 37.261 13.745 56.645 23.208 16.96-8.272 33.695-15.302 49.789-20.908-13.378-48.915-34.111-78.545-53.546-78.545zM423.746 122.098c-7.222-11.879-25.315-14.378-39.227-14.378-16.61 0-36.527 3.566-58.177 10.047 3.915 17.426 6.873 36.435 8.73 56.644 17.127 12.287 32.612 24.965 46.19 37.668 37.228-38.21 52.888-72.854 42.484-89.981z" />
|
36 |
+
<glyph unicode="" d="M93.926 428.72v-409.44l162.070 119.42 162.078-119.42v409.44h-324.148zM401.014 53.042l-145.018 106.85-145.010-106.85v358.618h290.028v-358.618zM170.696 326.36h170.604v-17.060h-170.604v17.060zM170.696 258.12h170.604v-17.060h-170.604v17.060z" />
|
37 |
+
<glyph unicode="" d="M434.888 112.818h-359.959l71.872 71.897-12.062 12.062-91.881-91.905 91.881-91.89 12.062 12.063-70.706 70.713h375.853v153.54h-17.060zM76.695 334.598h359.81l-71.289-71.305 12.061-12.062 91.865 91.88-91.881 91.907-12.062-12.063 71.272-71.297h-376.836v-153.54h17.060z" />
|
38 |
+
<glyph unicode="" d="M443.66 181.371c0-103.477-84.183-187.66-187.66-187.66-103.476 0-187.66 84.183-187.66 187.66 0 103.234 83.8 187.251 186.952 187.643v-85.325l162.070 93.839-162.070 93.821v-85.275c-112.756-0.383-204.012-91.855-204.012-204.703 0-113.047 91.639-204.72 204.72-204.72 113.064 0 204.72 91.673 204.72 204.72h-17.060zM272.352 441.761l110.957-64.233-110.957-64.25v128.483z" />
|
39 |
+
<glyph unicode="" d="M418.316 249.682c0.033 1.366 0.2 2.682 0.2 4.048 0 73.021-59.194 132.215-132.215 132.215-52.613 0-97.912-30.804-119.196-75.287-9.205 4.632-19.567 7.297-30.572 7.297-33.769 0-61.742-24.574-67.207-56.794-40.216-13.795-69.18-51.847-69.18-96.763 0-56.494 45.79-102.293 102.268-102.343l316.102 0.016c51.596 0.267 93.338 42.15 93.338 93.797 0 51.73-41.841 93.664-93.538 93.814zM418.424 79.131l-3.723-0.016h-312.27c-46.99 0.049-85.225 38.301-85.225 85.283 0 36.403 23.174 68.806 57.653 80.636l9.596 3.281 1.691 9.996c4.182 24.674 25.373 42.583 50.388 42.583 7.972 0 15.677-1.849 22.9-5.481l15.553-7.813 7.505 15.693c19.068 39.851 59.818 65.591 103.81 65.591 63.5 0 115.155-51.647 115.155-115.155 0-0.35-0.042-0.717-0.067-1.066-0.049-0.85-0.107-1.699-0.125-2.566l-0.433-17.41 17.435-0.067c42.2-0.117 76.528-34.553 76.528-76.754-0.001-42.082-34.263-76.518-76.371-76.735zM255.996 138.825c-32.92 0-59.71 26.773-59.71 59.71 0 32.921 26.79 59.71 59.71 59.71v-31.505l64.2 37.069-64.2 37.086v-25.59c-42.4 0-76.77-34.37-76.77-76.77s34.37-76.77 76.77-76.77c42.392 0 76.77 34.37 76.77 76.77h-17.060c0-32.937-26.79-59.71-59.71-59.71z" />
|
40 |
+
<glyph unicode="" d="M449.825 334.434c-0.175 0.058-0.308 0.191-0.491 0.233l-361.976 85.3c-4.589 1.058-9.188-1.766-10.262-6.347-1.075-4.59 1.766-9.18 6.348-10.263l290.536-68.464h-307.314c-13.204 0-23.916-10.704-23.916-23.916v-259.257c0-13.203 10.713-23.907 23.916-23.907h378.668c13.212 0 23.916 10.704 23.916 23.907v259.256c0 11.67-8.363 21.358-19.425 23.458zM452.19 51.719c0-3.774-3.073-6.847-6.856-6.847h-378.668c-3.782 0-6.856 3.073-6.856 6.847v259.257c0 3.781 3.074 6.856 6.856 6.856h378.668c3.782 0 6.856-3.074 6.856-6.856v-259.257zM196.223 198.419c-7.064 0-12.811-5.73-12.811-12.795 0-7.047 5.748-12.795 12.811-12.795 7.047 0 12.779 5.748 12.779 12.795 0 7.065-5.731 12.795-12.779 12.795zM102.46 185.624c0 7.065-5.748 12.795-12.803 12.795-7.048 0-12.787-5.73-12.787-12.795 0-7.047 5.74-12.795 12.787-12.795 7.055 0 12.803 5.749 12.803 12.795zM302.924 198.419c-7.047 0-12.804-5.73-12.804-12.795 0-7.047 5.757-12.795 12.804-12.795 7.072 0 12.786 5.748 12.786 12.795 0 7.065-5.714 12.795-12.786 12.795zM149.367 173.538c-7.048 0-12.787-5.731-12.787-12.787s5.74-12.803 12.787-12.803c7.055 0 12.803 5.747 12.803 12.803s-5.748 12.787-12.803 12.787zM256 160.034c0 7.056-5.73 12.787-12.795 12.787-7.047 0-12.795-5.731-12.795-12.787s5.748-12.803 12.795-12.803c7.065 0.001 12.795 5.748 12.795 12.803zM149.367 224.002c-7.048 0-12.787-5.74-12.787-12.787 0-7.072 5.74-12.803 12.787-12.803 7.055 0 12.803 5.73 12.803 12.803 0 7.047-5.748 12.787-12.803 12.787zM243.205 198.412c7.065 0 12.795 5.73 12.795 12.803 0 7.047-5.73 12.787-12.795 12.787-7.047 0-12.795-5.74-12.795-12.787 0-7.073 5.748-12.803 12.795-12.803zM106.725 146.998c-7.055 0-12.795-5.73-12.795-12.795s5.74-12.795 12.795-12.795c7.047 0 12.795 5.731 12.795 12.795s-5.748 12.795-12.795 12.795zM285.864 146.998c-7.072 0-12.804-5.73-12.804-12.795s5.731-12.795 12.804-12.795c7.056 0 12.786 5.731 12.786 12.795s-5.73 12.795-12.786 12.795zM106.725 249.592c-7.055 0-12.795-5.748-12.795-12.804s5.74-12.786 12.795-12.786c7.047 0 12.795 5.73 12.795 12.786 0 7.055-5.748 12.804-12.795 12.804zM285.864 224.002c7.056 0 12.786 5.73 12.786 12.786 0 7.055-5.73 12.804-12.786 12.804-7.072 0-12.804-5.748-12.804-12.804s5.731-12.786 12.804-12.786zM140.196 113.112c-7.039 0-12.795-5.731-12.795-12.787s5.756-12.803 12.795-12.803c7.081 0 12.795 5.748 12.795 12.803s-5.714 12.787-12.795 12.787zM251.402 113.112c-7.056 0-12.795-5.731-12.795-12.787s5.739-12.803 12.795-12.803c7.064 0 12.795 5.748 12.795 12.803s-5.731 12.787-12.795 12.787zM140.845 258.122c7.081 0 12.795 5.73 12.795 12.786 0 7.072-5.714 12.804-12.795 12.804-7.038 0-12.795-5.731-12.795-12.804 0-7.056 5.757-12.786 12.795-12.786zM251.402 283.712c-7.056 0-12.795-5.731-12.795-12.804 0-7.056 5.739-12.786 12.795-12.786 7.064 0 12.795 5.73 12.795 12.786 0 7.072-5.731 12.804-12.795 12.804zM196.216 146.998c-7.056 0-12.804-5.73-12.804-12.795 0-7.047 5.748-12.795 12.804-12.795 7.055 0 12.786 5.748 12.786 12.795 0 7.064-5.731 12.795-12.786 12.795zM196.216 96.068c-7.056 0-12.804-5.748-12.804-12.804s5.748-12.803 12.804-12.803c7.055 0 12.786 5.748 12.786 12.803s-5.731 12.804-12.786 12.804zM196.216 249.592c-7.056 0-12.804-5.748-12.804-12.804s5.748-12.786 12.804-12.786c7.055 0 12.786 5.73 12.786 12.786 0 7.055-5.731 12.804-12.786 12.804zM196.216 300.772c-7.056 0-12.804-5.731-12.804-12.787s5.748-12.803 12.804-12.803c7.055 0 12.786 5.748 12.786 12.803s-5.731 12.787-12.786 12.787zM392.497 283.712c-14.128 0-25.607-11.454-25.607-25.582s11.479-25.581 25.607-25.581c14.111 0 25.573 11.454 25.573 25.581 0 14.128-11.462 25.582-25.573 25.582zM392.497 249.608c-4.715 0-8.547 3.824-8.547 8.521s3.833 8.522 8.547 8.522c4.698 0 8.513-3.824 8.513-8.522s-3.815-8.521-8.513-8.521zM392.497 215.472c-14.128 0-25.607-11.454-25.607-25.582s11.479-25.581 25.607-25.581c14.111 0 25.573 11.454 25.573 25.581s-11.462 25.582-25.573 25.582zM392.497 181.368c-4.715 0-8.547 3.824-8.547 8.521s3.833 8.522 8.547 8.522c4.698 0 8.513-3.824 8.513-8.522s-3.815-8.521-8.513-8.521z" />
|
41 |
+
<glyph unicode="" d="M119.52 283.71c-9.43 0-17.060-7.639-17.060-17.060s7.63-17.060 17.060-17.060c9.413 0 17.060 7.639 17.060 17.060s-7.647 17.060-17.060 17.060zM170.7 283.71c-9.43 0-17.060-7.639-17.060-17.060s7.63-17.060 17.060-17.060c9.413 0 17.060 7.639 17.060 17.060s-7.647 17.060-17.060 17.060zM469.25 351.95h-93.83v85.3h-238.84v-85.3h-93.83c-4.715 0-8.53-3.815-8.53-8.53v-255.9c0-4.715 3.815-8.53 8.53-8.53h93.83v-68.24h238.84v68.24h93.83c4.714 0 8.53 3.815 8.53 8.53v255.9c0 4.715-3.816 8.53-8.53 8.53zM153.64 420.19h204.72v-68.24h-204.72v68.24zM358.36 27.81h-204.72v153.54h204.72v-153.54zM460.72 96.050h-85.3v102.36h-238.84v-102.36h-85.3v238.84h409.44v-238.84z" />
|
42 |
+
<glyph unicode="" d="M256 224.009l238.84-136.489v272.96l-238.84-136.471zM477.78 116.917l-187.394 107.092 187.394 107.074v-214.166zM17.16 224.009l238.84-136.489v272.96l-238.84-136.471zM238.94 116.917l-187.394 107.092 187.394 107.074v-214.166z" />
|
43 |
+
<glyph unicode="" d="M244.888 437.25h17.060v-204.72h-17.060v204.72zM338.718 402.731v-18.868c62.101-30.63 104.942-94.596 104.942-168.392 0-103.476-84.183-187.66-187.66-187.66-103.476 0-187.66 84.184-187.66 187.66 0 71.739 40.477 134.173 99.778 165.744v19.183c-69.081-32.888-116.838-103.318-116.838-184.928 0-113.064 91.657-204.72 204.72-204.72s204.72 91.656 204.72 204.72c0 83.618-50.155 155.481-122.002 187.261z" />
|
44 |
+
<glyph unicode="" d="M315.71 364.745v42.65h-119.42v-42.65h-145.010v-324.14h409.44v324.14h-145.010zM213.35 390.335h85.3v-25.59h-85.3v25.59zM196.29 347.685h247.37v-136.48h-127.95v34.12h-119.42v-34.12h-127.95v136.48h127.95zM298.65 228.265v-51.18h-85.3v51.18h85.3zM68.34 57.665v136.48h127.95v-34.12h119.42v34.12h127.95v-136.48h-375.32z" />
|
45 |
+
<glyph unicode="" d="M256 437.248c-117.787 0-213.25-95.463-213.25-213.25s95.463-213.246 213.25-213.246c117.788 0 213.25 95.458 213.25 213.246s-95.462 213.25-213.25 213.25zM256 27.812c-108.174 0-196.19 88.012-196.19 196.186s88.016 196.19 196.19 196.19c108.174 0 196.19-88.015 196.19-196.19 0-108.174-88.016-196.186-196.19-196.186zM264.53 351.948h-17.060v-119.42h-118.854v-17.060h118.854v-118.854h17.060v118.854h119.42v17.060h-119.42z" />
|
46 |
+
<glyph unicode="" d="M119.52 373.425l256.158-149.425-256.158-149.424v298.849zM102.46 403.13v-358.26l307.080 179.13-307.080 179.13z" />
|
47 |
+
<glyph unicode="" d="M145.974-7.426l-21.276 100.294-101.084 22.349 20.65 39.593 92.555 5.057c4.749 6.181 15.361 19.742 21.992 26.365l84.334 84.342-175.823 86.208 44.516 44.507 222.913-39.102 78.928 78.928c9.355 9.363 23.932 14.311 42.15 14.311 12.42 0 22.316-2.283 22.732-2.382l4.798-1.124 1.424-4.715c7.497-24.807 2.99-52.771-10.713-66.482l-79.302-79.303 38.951-222.004-44.508-44.516-85.866 175.115-78.769-78.786c-8.28-8.28-25.964-24.574-32.529-30.589l-6.889-86.807-39.184-21.259zM49.037 127.063l90.073-19.901 18.81-88.699 10.962 5.948 6.689 84.284 2.482 2.266c0.25 0.225 24.674 22.541 34.453 32.321l95.655 95.671 85.866-175.115 21.35 21.358-38.951 222.021 85.583 85.567c7.43 7.43 11.928 25.564 7.738 44.524-3.449 0.516-8.413 1.058-13.919 1.058-9.48 0-22.391-1.616-30.089-9.313l-85.192-85.208-222.928 39.101-21.358-21.35 175.823-86.208-101.211-101.22c-7.721-7.713-22.691-27.547-22.841-27.739l-2.391-3.165-90.748-4.964-5.856-11.237z" />
|
48 |
+
<glyph unicode="" d="M426.598 343.42v68.24h-400.906v-307.080h59.71v-68.24h400.906v307.080h-59.71zM42.752 121.64v272.96h366.786v-51.18h-324.136v-221.78h-42.65zM469.248 53.4h-366.786v272.96h366.786v-272.96z" />
|
49 |
+
<glyph unicode="" d="M369.381 454.31h-226.761c-12.754 0-23.1-10.355-23.1-23.108v-414.413c0-12.77 10.346-23.099 23.1-23.099h226.761c12.754 0 23.099 10.329 23.099 23.099v414.413c0 12.753-10.345 23.108-23.099 23.108zM375.42 16.789c0-3.332-2.707-6.039-6.039-6.039h-226.761c-3.333 0-6.040 2.707-6.040 6.039v79.202h238.84v-79.202zM375.42 113.051h-238.84v272.669h238.84v-272.669zM375.42 402.78h-238.84v28.422c0 3.332 2.707 6.048 6.040 6.048h226.761c3.333 0 6.039-2.716 6.039-6.048v-28.422zM230.41 61.93h51.18v-17.060h-51.18v17.060z" />
|
50 |
+
<glyph unicode="" d="M492.341 387.17l-68.023 68.015-16.644-16.651-23.291 23.274c-3.332 3.332-8.73 3.332-12.061 0l-138.214-138.222c-3.332-3.333-3.332-8.73 0-12.062 1.667-1.666 3.849-2.499 6.032-2.499 2.182 0 4.365 0.833 6.031 2.499l132.182 132.19 17.26-17.243-293.103-293.094 19.759-19.767c-8.313 4.115-17.376 6.214-26.44 6.214-15.31 0-30.621-5.84-42.3-17.527-1.199-1.183-2.349-2.466-3.449-3.807-0.549-0.641-1.066-1.308-1.566-1.974-0.6-0.75-1.166-1.541-1.715-2.333-0.417-0.583-0.833-1.15-1.216-1.732-24.807-37.294-25.923-108.624-25.923-108.624s2.599-0.133 7.097-0.133c20.492 0 80.152 2.807 111.373 34.020 18.593 18.601 22.341 46.398 11.295 68.748l21.108-21.1 321.808 321.808zM126.067 29.776c-19.042-19.034-52.446-25.606-76.27-27.856l38.836 38.835-12.063 12.062-37.202-37.202c3.032 22.757 9.063 50.33 20.476 67.465l0.483 0.682 0.416 0.592c0.367 0.533 0.75 1.082 1.416 1.924 0.283 0.374 0.566 0.749 1.066 1.349 0.75 0.899 1.517 1.766 2.366 2.607 8.080 8.080 18.81 12.529 30.238 12.529 11.412 0 22.158-4.448 30.238-12.529 16.661-16.667 16.661-43.79 0-60.458zM468.218 387.17l-101.178-101.178-43.9 43.891 101.178 101.178 43.9-43.891zM311.079 317.822l43.9-43.891-184.446-184.445-43.899 43.891 184.445 184.445z" />
|
51 |
+
<glyph unicode="" d="M198.064 164.206l76.262-153.456 194.899 426.5-426.45-204.67 155.289-68.374zM202.596 180.834l-119.045 52.413 326.938 156.905-207.893-209.318zM273.693 50.151l-59.002 118.738 209.743 211.166-150.741-329.904z" />
|
52 |
+
<glyph unicode="" d="M447.925 394.6v26.456c0 23.075-18.71 41.784-41.784 41.784h-274.676c-23.074 0-41.767-18.71-41.767-41.784v-26.456h-7.831c-19.259 0-34.853-15.611-34.853-34.862v-58.385c0-19.251 15.594-34.861 34.853-34.861l160.588 0.050c9.813 0 17.81-7.989 17.81-17.802v-58.86h-34.104v-204.72h85.3v204.72h-34.136v58.86c0 19.251-15.611 34.862-34.87 34.862h-21.125v-0.050h-139.462c-9.813 0-17.793 7.988-17.793 17.801v58.385c0 9.813 7.98 17.802 17.793 17.802h7.831v-26.465c0-23.075 18.693-41.775 41.767-41.775h274.675c23.075 0 41.784 18.7 41.784 41.775v26.465h17.060v17.060h-17.060zM294.401 2.22h-51.18v170.6h51.18v-170.6zM430.865 351.075c0-13.628-11.096-24.715-24.724-24.715h-274.676c-13.628 0-24.707 11.087-24.707 24.715v69.981c0 13.636 11.079 24.724 24.707 24.724h274.675c13.628 0 24.724-11.088 24.724-24.724v-69.981z" />
|
53 |
+
<glyph unicode="" d="M256 428.72h-136.48c-40.818 0-68.24-27.422-68.24-68.24v-283.731c0-13.477 5.022-57.469 69.705-57.469h339.735v409.44h-204.72zM238.94 411.66v-163.194l-41.784 38.051-46.39-39.034v164.177h88.174zM119.52 411.66h14.186v-200.829l63 53.012 59.294-53.987v201.804h187.66v-281.49h-324.14c-21.709 0-39.318-6.48-51.18-17.81v248.12c0 31.088 20.092 51.18 51.18 51.18zM120.985 36.34c-39.109 0-50.413 17.743-52.304 34.721 0.033 26.331 19.026 42.049 50.839 42.049h324.14v-76.77h-322.675z" />
|
54 |
+
<glyph unicode="" d="M444.473 412.837c-4.998 4.99-11.554 7.488-18.102 7.488-6.555 0-13.103-2.498-18.093-7.488l-75.295-75.287v14.261h-272.96v-324.136h324.14v272.956h-15.693l76.003 76.013c10.005 9.978 10.005 26.196 0 36.193zM367.103 44.735h-290.020v290.016h253.11l-133.69-133.681v-36.919h35.503l135.097 135.114v-254.53zM432.411 388.704l-207.469-207.493h-11.379v12.795l206.786 206.777c2.166 2.166 4.698 2.482 6.022 2.482s3.866-0.324 6.039-2.498c2.183-2.174 2.508-4.715 2.508-6.039 0.001-1.317-0.324-3.841-2.507-6.024z" />
|
55 |
+
<glyph unicode="" d="M17.16 360.48v-272.96l238.84 136.489-238.84 136.471zM34.22 331.083l187.394-107.075-187.394-107.091v214.166zM256 360.48v-272.96l238.84 136.489-238.84 136.471zM273.060 331.083l187.394-107.075-187.394-107.091v214.166z" />
|
56 |
+
<glyph unicode="" d="M145.11 437.25v-238.84h-102.36c0 0 0-105.425 0-139.495 0-34.078 31.721-48.165 55.228-48.165 23.499 0 260.165 0 320.092 0 25.857 0 51.18 25.149 51.18 51.18 0 18.793 0 375.32 0 375.32h-324.14zM97.978 27.81c-10.621 0-38.168 5.59-38.168 31.105v122.435h85.3v-115.080c0-11.42-14.927-38.46-38.459-38.46h-8.673zM452.19 61.93c0-16.576-17.534-34.12-34.12-34.12h-273.801c11.487 11.971 17.901 27.689 17.901 38.46v353.92h290.020v-358.26zM196.29 386.070h221.78v-17.060h-221.78v17.060zM196.29 155.76h221.78v-17.060h-221.78v17.060zM196.29 96.050h221.78v-17.060h-221.78v17.060zM418.070 326.36h-221.78v-127.95h221.78v127.95zM401.010 215.47h-187.66v93.83h187.66v-93.83z" />
|
57 |
+
<glyph unicode="" d="M42.75 343.408h221.78v-17.060h-221.78v17.060zM42.75 266.638h221.78v-17.060h-221.78v17.060zM42.75 189.868h221.78v-17.060h-221.78v17.060zM349.83 333.212l119.42-15.394c0 85.3-68.24 102.36-136.48 119.445v-324.165c-10.212 0-26.456 0-52.563 0-50.138 0-66.857-26.531-66.857-50.764 0-20.558 15.386-51.596 68.24-51.596 75.571 0 68.24 60.676 68.24 102.36v220.114zM450.657 337.419l-100.827 12.994v64.809c56.695-15.353 93.106-32.213 100.827-77.803zM320.275 39.535c-7.68-7.789-20.701-11.737-38.685-11.737-48.714 0-51.18 28.773-51.18 34.536 0 21.417 18.152 33.704 49.797 33.704h52.563v-13.103h0.042c-0.509-17.186-2.949-33.687-12.537-43.4z" />
|
58 |
+
<glyph unicode="" d="M460.72 456.721l-281.49-99.578v-246.679c-13.303 15.786-33.195 25.84-55.445 25.84-40.035 0-72.505-32.47-72.505-72.521 0-40.035 32.47-72.505 72.505-72.505 39.618 0 71.771 31.804 72.438 71.264h0.067v282.54l247.37 87.516v-228.311c-13.303 15.786-33.195 25.831-55.454 25.831-40.042 0-72.496-32.454-72.496-72.505 0-40.042 32.454-72.505 72.496-72.505s72.514 32.463 72.514 72.505c0 1.374-0.133 2.715-0.208 4.065h0.208v295.043zM123.785 8.339c-30.572 0-55.445 24.873-55.445 55.445 0 30.579 24.873 55.461 55.445 55.461s55.445-24.882 55.445-55.461c0-30.572-24.873-55.445-55.445-55.445zM388.206 102.169c-30.572 0-55.436 24.873-55.436 55.445s24.865 55.445 55.436 55.445c30.58 0 55.454-24.873 55.454-55.445s-24.873-55.445-55.454-55.445z" />
|
59 |
+
<glyph unicode="" d="M264.53 343.004v26.356c0 7.789 16.46 18.093 29.688 26.382 18.951 11.862 38.552 24.141 38.552 42.026v42.132h-17.060v-42.133c0-8.439-16.935-19.042-30.547-27.572-18.534-11.596-37.693-23.599-37.693-40.835v-26.356c-66.666-4.282-119.42-58.011-119.42-123.827v-126.833c0-68.615 57.286-124.244 127.95-124.244s127.95 55.628 127.95 124.244v126.833c0 65.816-52.755 119.545-119.42 123.827zM366.89 219.177v-12.237h-102.36v119.004c57.16-4.241 102.36-50.448 102.36-106.767zM145.11 219.177c0 56.319 45.199 102.526 102.36 106.767v-119.004h-102.36v12.237zM256-14.84c-61.143 0-110.89 48.081-110.89 107.184v97.536h221.78v-97.536c0-59.103-49.748-107.184-110.89-107.184z" />
|
60 |
+
<glyph unicode="" d="M51.28 275.18c-28.272 0-51.18-22.916-51.18-51.18s22.908-51.18 51.18-51.18c28.255 0 51.18 22.916 51.18 51.18s-22.925 51.18-51.18 51.18zM51.28 189.88c-18.826 0-34.12 15.302-34.12 34.12s15.294 34.12 34.12 34.12c18.809 0 34.12-15.303 34.12-34.12s-15.311-34.12-34.12-34.12zM460.72 275.18c-28.272 0-51.18-22.916-51.18-51.18s22.908-51.18 51.18-51.18c28.255 0 51.18 22.916 51.18 51.18s-22.925 51.18-51.18 51.18zM460.72 189.88c-18.809 0-34.12 15.302-34.12 34.12s15.311 34.12 34.12 34.12c18.809 0 34.12-15.303 34.12-34.12s-15.311-34.12-34.12-34.12zM256 275.18c-28.272 0-51.18-22.916-51.18-51.18s22.908-51.18 51.18-51.18c28.255 0 51.18 22.916 51.18 51.18s-22.925 51.18-51.18 51.18zM256 189.88c-18.809 0-34.12 15.302-34.12 34.12s15.311 34.12 34.12 34.12c18.809 0 34.12-15.303 34.12-34.12s-15.311-34.12-34.12-34.12z" />
|
61 |
+
<glyph unicode="" d="M158.105 399.169c-13.545-27.473-20.717-57.819-20.717-89.023 0-111.631 90.822-202.446 202.454-202.446 32.838 0 64.567 7.83 92.989 22.591-34.395-61.901-99.969-101.918-173.799-101.918-109.848 0-199.222 89.365-199.222 199.214 0 71.854 38.552 136.521 98.295 171.582zM204.645 436.687c-93.072-24.139-161.895-108.474-161.895-209.101 0-119.437 96.846-216.274 216.282-216.274 102.194 0 187.611 70.964 210.218 166.218-33.395-32.62-79.019-52.771-129.408-52.771-102.385 0-185.394 83-185.394 185.386 0.001 48.982 19.143 93.406 50.197 126.542v0z" />
|
62 |
+
<glyph unicode="" d="M477.78 113.11v307.080h-443.56v-307.080h213.25v-68.24h-59.71v-17.060h136.48v17.060h-59.71v68.24h213.25zM51.28 403.13h409.44v-272.96h-409.44v272.96z" />
|
63 |
+
<glyph unicode="" d="M256.042 121.971c51.691 0 93.61 41.91 93.61 93.61v170.217c0 51.7-41.919 93.602-93.61 93.602s-93.61-41.902-93.61-93.602v-170.216c0-51.7 41.918-93.611 93.61-93.611zM179.452 385.798c0 42.227 34.356 76.582 76.59 76.582s76.59-34.356 76.59-76.582v-170.216c0-42.234-34.356-76.59-76.59-76.59s-76.59 34.356-76.59 76.59v170.216zM383.65 300.69v-85.109c0-70.382-57.26-127.65-127.65-127.65s-127.65 57.268-127.65 127.65v85.109h-17.020v-85.109c0-77.28 60.958-140.415 137.291-144.296h-1.089v-85.665h-76.632v-17.020h170.2v17.020h-76.548v85.665h-1.172c76.333 3.881 137.29 67.016 137.29 144.296v85.109h-17.020z" />
|
64 |
+
<glyph unicode="" d="M51.28 369.010v-68.24h409.44v68.24h-409.44zM443.66 317.83h-375.32v34.12h375.32v-34.12zM51.28 189.88h409.44v68.24h-409.44v-68.24zM68.34 241.060h375.32v-34.12h-375.32v34.12zM51.28 78.99h409.44v68.24h-409.44v-68.24zM68.34 130.17h375.32v-34.12h-375.32v34.12z" />
|
65 |
+
<glyph unicode="" d="M368.872 425.596l-10.512 5.256-8.53-4.256v-0.009l-93.83-46.914-102.36 51.18-110.89-55.445v-358.26l110.89 55.445 102.36-51.18 102.36 51.18 110.89-55.445v358.26l-100.378 50.188zM145.11 87.404l-85.3-42.65v320.108l85.3 42.65v-320.108zM247.47 44.754l-85.3 42.65v320.108l85.3-42.65v-320.108zM349.83 87.404l-85.3-42.65v320.108l85.3 42.65v-320.108zM452.19 44.754l-85.3 42.65v320.108l85.3-42.65v-320.108z" />
|
66 |
+
<glyph unicode="" d="M256.009 462.848c84.659 0 153.531-68.881 153.531-153.548 0-26.923-7.13-53.463-20.633-76.779l-132.907-230.301-132.923 230.318c-13.487 23.3-20.617 49.839-20.617 76.762 0 84.667 68.881 153.548 153.549 153.548zM256.009 249.598c32.921 0 59.701 26.782 59.701 59.702 0 32.911-26.781 59.693-59.701 59.693-32.929 0-59.719-26.782-59.719-59.693 0-32.92 26.789-59.702 59.719-59.702zM256.009 479.908c-94.222 0-170.609-76.403-170.609-170.608 0-31.113 8.371-60.194 22.916-85.309l147.684-255.899 147.684 255.9c14.545 25.115 22.916 54.195 22.916 85.309 0 94.204-76.387 170.607-170.591 170.607v0zM256.009 266.658c-23.557 0-42.659 19.084-42.659 42.642 0 23.532 19.101 42.633 42.659 42.633 23.549 0 42.641-19.101 42.641-42.633 0-23.558-19.093-42.642-42.641-42.642v0z" />
|
67 |
+
<glyph unicode="" d="M451.898 360.482h-409.148v-272.963h426.5v272.963h-17.352zM434.838 343.422l-164.769-164.769c-7.513-7.513-20.626-7.513-28.139 0l-164.794 164.769h357.702zM59.81 336.625l110.773-110.757-110.773-110.773v221.53zM73.421 104.582l109.233 109.216 47.214-47.207c6.972-6.981 16.261-10.83 26.132-10.83s19.159 3.849 26.132 10.83l47.214 47.214 109.224-109.223h-365.149zM452.19 115.086l-110.773 110.782 110.773 110.782v-221.564z" />
|
68 |
+
<glyph unicode="" d="M467.659 266.529l-185.528 185.528c-6.972 6.981-16.26 10.829-26.132 10.829-9.871 0-19.158-3.848-26.131-10.829l-187.118-187.094v-279.849h426.5v279.824l-1.591 1.591zM70.073 268.162l171.858 171.833c7.514 7.514 20.626 7.514 28.14 0l179.938-179.946-122.62-122.62-45.257 45.266c-6.972 6.98-16.26 10.829-26.132 10.829-9.871 0-19.158-3.849-26.131-10.829l-45.932-45.924-122.627 122.628 8.763 8.763zM171.867 124.718l-1.267-1.283-0.016 0.017-110.774-110.765v224.087l112.057-112.056zM73.421 2.174l9.171 9.171h0.026l159.312 159.288c7.514 7.514 20.626 7.514 28.14 0l168.501-168.459h-365.15zM452.19 230.885v-218.207l-112.739 112.69 112.739 112.739v-7.222z" />
|
69 |
+
<glyph unicode="" d="M467.659 266.529l-185.527 185.527c-6.972 6.981-16.261 10.829-26.132 10.829s-19.159-3.848-26.132-10.829l-40.451-40.442h-61.359v-61.351l-85.308-85.3v-279.849h426.5v279.824l-1.591 1.591zM450.007 260.048l-66.057-66.057v132.115l66.057-66.058zM241.931 439.995c7.514 7.514 20.626 7.514 28.139 0l28.381-28.38h-84.908l28.388 28.38zM315.51 394.554l51.38-51.388v-166.235l-39.502-39.502-45.257 45.266c-6.972 6.98-16.261 10.829-26.132 10.829s-19.159-3.849-26.132-10.829l-45.931-45.924-38.818 38.818v218.965h170.392zM70.072 268.162l57.986 57.978v-133.49l-66.748 66.749 8.762 8.763zM59.81 223.072v13.702l112.056-112.056-1.266-1.283-0.017 0.017-110.773-110.765v210.385zM73.421 2.174l9.171 9.171h0.025l159.313 159.288c7.514 7.514 20.626 7.514 28.139 0l168.501-168.459h-365.149zM452.19 234.242v-221.564l-112.739 112.69 112.739 112.739v-3.865zM196.29 343.374h119.42v-17.060h-119.42v17.060zM196.29 241.014h119.42v-17.060h-119.42v17.060zM196.29 292.194h85.3v-17.060h-85.3v17.060z" />
|
70 |
+
<glyph unicode="" d="M341.517 437.25v-238.623c0-47.231-38.285-85.517-85.517-85.517-47.249 0-85.517 38.285-85.517 85.517v238.623h-102.143v-238.84c0-103.643 84.017-187.66 187.66-187.66s187.66 84.017 187.66 187.66v238.84h-102.143zM426.6 420.19v-51.18h-68.023v51.18h68.023zM153.423 420.19v-51.18h-68.023v51.18h68.023zM256 27.81c-94.080 0-170.6 76.528-170.6 170.6v153.54h68.023v-153.323c0-56.562 46.015-102.577 102.577-102.577 56.561 0 102.577 46.015 102.577 102.577v153.323h68.023v-153.54c0-94.072-76.537-170.6-170.6-170.6z" />
|
71 |
+
<glyph unicode="" d="M327.388 306.818l-148.242-147.143 12.046-12.094 148.242 147.142zM110.99 130.17c-51.738 0-93.83 42.092-93.83 93.83 0 51.739 42.092 93.83 93.83 93.83 25.057 0 47.789-9.929 64.634-25.982l0.008 0.092 0.867-0.758 33.212-33.062h-30.481v-17.060h59.71v59.71h-17.060v-30.696l-33.337 33.187-0.075-0.075c-20.009 19.584-47.34 31.704-77.478 31.704-61.143 0-110.89-49.747-110.89-110.89s49.747-110.89 110.89-110.89c31.529 0 59.96 13.295 80.177 34.495l-12.054 12.062c-17.118-18.118-41.292-29.497-68.123-29.497zM401.010 334.89c-28.239 0-53.962-10.696-73.554-28.139l12.053-12.054c16.486 14.361 37.969 23.133 61.501 23.133 51.738 0 93.83-42.091 93.83-93.83s-42.092-93.83-93.83-93.83c-24.966 0-47.623 9.863-64.45 25.815l-0.025-0.158-56.494 56.286-12.113-12.020 56.562-56.345 0.1 0.101c19.918-18.993 46.798-30.739 76.42-30.739 61.143 0 110.89 49.748 110.89 110.89s-49.747 110.89-110.89 110.89z" />
|
72 |
+
<glyph unicode="" d="M256 377.538c-93.547 0-166.468-58.552-255.9-153.481 77.053-81.169 141.711-153.595 255.9-153.595s198.114 91.686 255.9 151.878c-59.152 70.515-143.086 155.198-255.9 155.198zM256 87.522c-101.369 0-162.561 62.871-232.376 136.518 83.068 86.616 149.117 136.438 232.376 136.438 98.57 0 175.606-71.080 232.925-137.454-56.369-58.777-132.689-135.502-232.925-135.502zM256 326.35c-56.445 0-102.36-45.916-102.36-102.352s45.915-102.352 102.36-102.352 102.36 45.915 102.36 102.351-45.915 102.353-102.36 102.353zM256 138.706c-47.032 0-85.3 38.26-85.3 85.291s38.268 85.292 85.3 85.292 85.3-38.26 85.3-85.292c0-47.030-38.268-85.291-85.3-85.291zM256 283.708c-32.921 0-59.71-26.789-59.71-59.71s26.789-59.71 59.71-59.71c32.921 0 59.71 26.79 59.71 59.71 0 32.921-26.789 59.71-59.71 59.71zM256 181.348c-23.516 0-42.65 19.134-42.65 42.65s19.134 42.65 42.65 42.65 42.65-19.134 42.65-42.65c0-23.516-19.134-42.65-42.65-42.65z" />
|
73 |
+
<glyph unicode="" d="M366.89 232.53v102.36c0 61.234-49.647 110.89-110.874 110.89-61.251 0-110.906-49.656-110.906-110.89v-102.36h-59.71v-230.31h341.2v230.31h-59.71zM162.17 334.89c0 51.738 42.1 93.83 93.846 93.83 51.73 0 93.814-42.092 93.814-93.83v-102.36h-187.66v102.36zM409.54 19.28h-307.080v196.19h307.080v-196.19z" />
|
74 |
+
<glyph unicode="" d="M136.58 479.9v-51.18l59.71-102.36v-358.26h119.42v358.26l59.71 102.36v51.18h-238.84zM153.64 462.84h204.72v-29.505l-2.69-4.615h-199.34l-2.69 4.615v29.505zM213.35-14.84v34.195h85.3v-34.195h-85.3zM300.974 334.957l-2.324-3.982v-294.56h-85.3v294.56l-47.065 80.685h179.43l-44.741-76.703zM256 241.060c-14.128 0-25.59-11.462-25.59-25.59v-34.153c0-14.12 11.462-25.59 25.59-25.59 14.127 0 25.59 11.47 25.59 25.59v34.153c0 14.128-11.463 25.59-25.59 25.59zM264.53 181.317c0-4.706-3.823-8.53-8.53-8.53s-8.53 3.824-8.53 8.53v34.153c0 4.707 3.823 8.53 8.53 8.53s8.53-3.823 8.53-8.53v-34.153z" />
|
75 |
+
<glyph unicode="" d="M280.536 147.318c-20.812 0-41.63 7.914-57.473 23.766l12.062 12.061c25.048-25.048 65.787-25.040 90.844 0l107.446 107.45c25.040 25.041 25.040 65.783 0 90.831l-20.009 20.001c-25.041 25.040-65.791 25.040-90.836 0l-75.824-75.821-12.062 12.062 75.825 75.82c31.687 31.688 83.255 31.704 114.959 0l20.009-20c31.688-31.696 31.688-83.267 0-114.955l-107.447-107.448c-15.844-15.845-36.669-23.767-57.494-23.767zM144.010 10.739c-21.708 0-42.125 8.455-57.477 23.807l-20.009 20.001c-31.688 31.704-31.688 83.267 0 114.955l107.449 107.458c31.688 31.687 83.276 31.687 114.96 0l20.009-20.009-12.062-12.062-20.009 20.009c-25.036 25.041-65.795 25.032-90.835 0l-107.45-107.458c-25.032-25.032-25.032-65.783 0-90.832l20.009-20c12.129-12.129 28.264-18.81 45.415-18.81 17.161 0 33.287 6.681 45.416 18.81l71.505 71.505 12.061-12.062-71.505-71.505c-15.343-15.353-35.76-23.807-57.477-23.807z" />
|
76 |
+
<glyph unicode="" d="M350.171 398.161c56.336 0 102.019-45.674 102.019-102.019 0-28.938-12.070-55.019-31.43-73.596l-164.76-165.585-167.742 168.568c-17.602 18.334-28.448 43.191-28.448 70.613 0 56.345 45.682 102.019 102.019 102.019 42.425 0 78.794-25.915 94.171-62.776 15.377 36.861 51.746 62.776 94.171 62.776zM350.171 415.221c-37.527 0-71.988-17.427-94.171-46.148-22.183 28.721-56.644 46.148-94.171 46.148-65.658 0-119.079-53.421-119.079-119.079 0-30.854 11.787-60.126 33.204-82.425l180.046-180.938 176.856 177.731c23.366 22.425 36.394 52.93 36.394 85.633 0 65.657-53.421 119.078-119.079 119.078v0z" />
|
77 |
+
<glyph unicode="" d="M426.6 300.907c0 94.213-76.37 170.6-170.6 170.6s-170.6-76.387-170.6-170.6c0-55.487 26.573-104.667 67.607-135.797l-0.075-0.042c0.783-0.533 1.591-1.141 2.424-1.791 0.083-0.058 0.158-0.125 0.233-0.183 13.204-10.42 32.171-34.761 32.171-66.891v-119.711h136.48v119.712c0 34.12 19.709 58.603 34.12 68.332l-0.042 0.049c41.426 31.105 68.282 80.528 68.282 136.322zM204.82-6.447v51.471h102.36v-51.471h-102.36zM256 283.856c-9.404 0-17.060 7.647-17.060 17.051 0 9.413 7.656 17.069 17.060 17.069s17.060-7.656 17.060-17.069c0-9.404-7.656-17.051-17.060-17.051zM348.072 178.231c-0.224-0.175-0.449-0.351-0.666-0.533-18.876-13.429-40.226-42.342-40.226-81.494v-34.12h-42.65v205.92c14.686 3.807 25.59 17.034 25.59 32.904 0 18.843-15.277 34.129-34.12 34.129s-34.12-15.286-34.12-34.129c0-15.869 10.904-29.097 25.59-32.904v-205.92h-42.65v34.12c0 36.736-20.825 66.208-38.51 80.161-0.133 0.117-0.299 0.234-0.458 0.367-0.558 0.433-1.107 0.85-1.64 1.25-0.292 0.25-0.583 0.491-0.891 0.716-38.677 29.347-60.86 73.889-60.86 122.211 0 84.659 68.881 153.54 153.54 153.54s153.54-68.881 153.54-153.54c-0.001-48.641-22.401-93.349-61.469-122.678z" />
|
78 |
+
<glyph unicode="" d="M256 437.25c-117.787 0-213.25-95.464-213.25-213.25 0-117.787 95.463-213.25 213.25-213.25s213.25 95.463 213.25 213.25c0 117.786-95.463 213.25-213.25 213.25zM256 27.81c-108.174 0-196.19 88.015-196.19 196.19 0 108.174 88.016 196.19 196.19 196.19s196.19-88.016 196.19-196.19c0-108.175-88.016-196.19-196.19-196.19zM145.677 232.53h221.213v-17.060h-221.213v17.060z" />
|
79 |
+
<glyph unicode="" d="M110.99 130.166c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM110.99 44.874c-18.817 0-34.12 15.303-34.12 34.12 0 18.81 15.303 34.111 34.12 34.111 18.818 0 34.12-15.302 34.12-34.111 0-18.817-15.302-34.12-34.12-34.12zM110.99 420.186c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM110.99 334.894c-18.817 0-34.12 15.303-34.12 34.12 0 18.81 15.303 34.111 34.12 34.111 18.818 0 34.12-15.302 34.12-34.111 0-18.817-15.302-34.12-34.12-34.12zM110.99 275.534c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM110.99 190.243c-18.817 0-34.12 15.31-34.12 34.12s15.303 34.111 34.12 34.111c18.818 0 34.12-15.302 34.12-34.111s-15.302-34.12-34.12-34.12zM256 130.166c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM256 44.874c-18.817 0-34.12 15.303-34.12 34.12 0 18.81 15.303 34.111 34.12 34.111s34.12-15.302 34.12-34.111c0-18.817-15.302-34.12-34.12-34.12zM256 420.186c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM256 334.894c-18.817 0-34.12 15.303-34.12 34.12 0 18.81 15.303 34.111 34.12 34.111s34.12-15.302 34.12-34.111c0-18.817-15.302-34.12-34.12-34.12zM256 275.534c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM256 190.243c-18.817 0-34.12 15.31-34.12 34.12s15.303 34.111 34.12 34.111c18.818 0 34.12-15.302 34.12-34.111s-15.302-34.12-34.12-34.12zM401.010 130.166c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM401.010 44.874c-18.817 0-34.12 15.303-34.12 34.12 0 18.81 15.303 34.111 34.12 34.111s34.12-15.302 34.12-34.111c0-18.817-15.302-34.12-34.12-34.12zM401.010 317.834c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18zM401.010 403.126c18.818 0 34.12-15.302 34.12-34.111 0-18.817-15.302-34.12-34.12-34.12s-34.12 15.303-34.12 34.12c0 18.809 15.303 34.111 34.12 34.111zM401.010 275.534c-28.264 0-51.18-22.907-51.18-51.171s22.916-51.18 51.18-51.18c28.256 0 51.18 22.916 51.18 51.18s-22.924 51.171-51.18 51.171zM401.010 190.243c-18.817 0-34.12 15.31-34.12 34.12s15.303 34.111 34.12 34.111c18.818 0 34.12-15.302 34.12-34.111s-15.302-34.12-34.12-34.12z" />
|
80 |
+
<glyph unicode="" d="M319.375 241.377l-12.062 12.061-51.304-51.313-51.314 51.313-12.062-12.061 51.305-51.314-51.472-51.463 12.062-12.062 51.481 51.464 51.47-51.464 12.063 12.062-51.472 51.463zM469.25 368.993h-426.5v-17.060h12.537l4.523-34.12c0-13.611 8.022-25.256 19.542-30.738l30.088-175.498c3.149-17.86 14.586-32.571 32.571-32.571h227.978c17.976 0 28.889 14.445 32.57 32.571l30.089 175.498c11.521 5.481 19.542 17.127 19.542 30.738l4.523 34.12h12.537v17.060zM385.791 114.726c-1.474-7.081-5.464-18.659-15.802-18.659h-227.978c-11.612 0-15.003 14.144-15.76 18.393l-29.014 169.233h317.526l-28.972-168.967zM435.28 320.046l-0.15-1.116v-1.117c0-9.413-7.656-17.060-17.060-17.060h-324.14c-9.404 0-17.060 7.647-17.060 17.060v1.117l-0.15 1.116-4.223 31.888h367.007l-4.224-31.888z" />
|
81 |
+
<glyph unicode="" d="M257.066 301.503c14.127 0 25.59 11.463 25.59 25.59 0 14.144-11.463 25.574-25.59 25.574-14.128 0-25.59-11.429-25.59-25.574 0-14.128 11.462-25.59 25.59-25.59zM274.443 267.383v17.060h-51.18v-17.060h17.060v-145.010h-17.060v-17.060h68.24v17.060h-17.060zM256 437.25c-117.77 0-213.25-95.48-213.25-213.25 0-117.787 95.48-213.25 213.25-213.25s213.25 95.463 213.25 213.25c0 117.77-95.48 213.25-213.25 213.25zM256 27.81c-108.183 0-196.19 88.016-196.19 196.19s88.007 196.19 196.19 196.19c108.183 0 196.19-88.016 196.19-196.19s-88.007-196.19-196.19-196.19z" />
|
82 |
+
<glyph unicode="" d="M256 437.25l-85.3-85.3v34.12h-68.24v-102.36l-60.077-60.077 12.062-12.062 201.555 201.554 201.555-201.555 12.062 12.062-213.617 213.618zM119.52 369.010h34.12v-34.12l-34.12-34.12v68.24zM102.46 215.47v-204.72h119.42v119.42h68.24v-119.42h119.42v204.72l-153.54 153.54-153.54-153.54zM392.48 27.81h-85.3v119.42h-102.36v-119.42h-85.3v180.595l136.48 136.48 136.48-136.48v-180.595z" />
|
83 |
+
<glyph unicode="" d="M256 428.72c-113.056 0-204.72-91.647-204.72-204.72 0-113.063 91.656-204.711 204.72-204.72 113.073 0.009 204.72 91.664 204.72 204.72-0.008 113.064-91.656 204.72-204.72 204.72zM255.984 130.17c-51.73 0-93.814 42.092-93.814 93.83 0 51.739 42.092 93.83 93.83 93.83h0.017c51.729 0 93.813-42.091 93.813-93.83 0-51.729-42.091-93.821-93.846-93.83zM358.327 266.767l64.45 43.092c13.311-25.749 20.883-54.929 20.883-85.859 0-30.537-7.38-59.368-20.375-84.875l-64.567 43.183c5.232 12.879 8.172 26.932 8.172 41.692 0 15.161-3.057 29.605-8.563 42.767zM414.238 324.669l-63.842-42.683c-9.28 15.078-22.033 27.731-37.193 36.885l42.708 63.858c23.458-14.81 43.4-34.669 58.327-58.060zM341.050 391.193l-43.166-64.541c-12.92 5.282-27.039 8.238-41.867 8.238h-0.017c-14.828 0-28.939-2.956-41.867-8.238l-43.174 64.55c25.548 13.053 54.436 20.458 85.041 20.458s59.502-7.413 85.050-20.467zM156.097 382.747l42.717-63.867c-15.194-9.18-27.972-21.867-37.26-36.978l-63.85 42.7c14.936 23.417 34.911 43.308 58.393 58.145zM89.182 309.784l64.458-43.108c-5.481-13.145-8.53-27.548-8.53-42.676 0-14.719 2.933-28.747 8.138-41.591l-64.583-43.192c-12.961 25.482-20.325 54.287-20.325 84.783 0 30.897 7.556 60.052 20.842 85.784zM97.104 124.339l63.867 42.709c9.222-15.352 22.024-28.256 37.302-37.602l-42.699-63.842c-23.575 14.994-43.584 35.086-58.47 58.735zM170.401 57.091l43.117 64.475c13.086-5.432 27.414-8.456 42.467-8.456 0.009 0 0.016 0 0.016 0 15.061 0 29.406 3.032 42.5 8.472l43.117-64.483c-25.69-13.236-54.778-20.759-85.616-20.759-30.831 0-59.912 7.523-85.601 20.751zM356.444 65.612l-42.699 63.85c15.235 9.33 28.013 22.192 37.227 37.502l63.867-42.717c-14.878-23.598-34.862-43.658-58.395-58.635z" />
|
84 |
+
<glyph unicode="" d="M256 437.25c-117.779 0-213.25-95.471-213.25-213.25 0-117.771 95.471-213.25 213.25-213.25s213.25 95.479 213.25 213.25c0 117.779-95.471 213.25-213.25 213.25zM256 27.81c-108.183 0-196.19 88.007-196.19 196.19s88.007 196.19 196.19 196.19 196.19-88.007 196.19-196.19c0-108.183-88.007-196.19-196.19-196.19zM255.276 335.798c-43.3 0-67.474-26.756-67.782-69.148h18.809c-0.591 30.754 15.528 53.32 48.073 53.32 23.283 0 42.692-16.419 42.692-40.301 0-15.527-8.364-28.064-19.409-38.518-22.683-21.059-29.047-30.955-30.189-59.801h19.051c1.125 26.156 0.542 25.631 23.375 48.456 15.227 14.328 25.973 28.672 25.973 50.764 0 34.628-27.465 55.228-60.593 55.228zM256 147.221c-9.413 0-17.060-7.639-17.060-17.051 0-9.43 7.647-17.060 17.060-17.060 9.421 0 17.060 7.63 17.060 17.060 0 9.413-7.639 17.051-17.060 17.051z" />
|
85 |
+
<glyph unicode="" d="M452.19 249.59v-204.72h-85.3v375.32h-17.060v-375.32h-85.3v255.9h-17.060v-255.9h-85.3v102.36h-17.060v-102.36h-85.225v153.54h-17.060v-153.54h-0.075v-17.060h426.5v221.78z" />
|
86 |
+
<glyph unicode="" d="M51.28 428.72v-409.44h409.44v409.44h-409.44zM443.66 411.66v-73.497l-112.364-162.103-77.037 60.877-85.7-119.986-50.596 33.728-49.623-57.845v318.826h375.32zM68.34 36.34v30.296l52.738 61.468 51.763-34.512 84.9 118.854 77.237-61.026 108.682 156.797v-271.877h-375.32z" />
|
87 |
+
<glyph unicode="" d="M447.925 462.84c-23.516 0-42.65-19.126-42.65-42.634 0-14.819 7.614-27.88 19.118-35.527l-80.644-212.551c-2.232 0.367-4.481 0.692-6.805 0.692-10.221 0-19.484-3.765-26.84-9.78l-80.693 66.649c3.182 5.972 5.156 12.678 5.156 19.9 0 23.516-19.134 42.65-42.65 42.65s-42.65-19.135-42.65-42.65c0-12.704 5.698-24.008 14.544-31.83l-85.983-149.765c-4.339 1.491-8.904 2.474-13.744 2.474-23.524 0-42.659-19.126-42.659-42.633 0-23.533 19.134-42.675 42.659-42.675 23.516 0 42.641 19.142 42.641 42.675 0 12.537-5.539 23.707-14.185 31.521l86.075 149.925c4.215-1.4 8.63-2.341 13.303-2.341 10.122 0 19.301 3.69 26.623 9.596l80.777-66.716c-3.099-5.915-5.023-12.529-5.023-19.651 0-23.516 19.135-42.65 42.65-42.65 23.516 0 42.65 19.134 42.65 42.65 0 15.136-7.98 28.364-19.892 35.944l80.518 212.201c2.508-0.458 5.065-0.775 7.705-0.775 23.516 0 42.65 19.142 42.65 42.666-0.001 23.509-19.135 42.635-42.651 42.635zM64.084 2.22c-14.111 0-25.599 11.487-25.599 25.615 0 14.103 11.487 25.573 25.599 25.573 14.103 0 25.581-11.47 25.581-25.573 0-14.128-11.479-25.615-25.581-25.615zM191.917 224c-14.111 0-25.59 11.479-25.59 25.59s11.479 25.59 25.59 25.59 25.59-11.479 25.59-25.59-11.479-25.59-25.59-25.59zM336.944 104.58c-14.111 0-25.59 11.479-25.59 25.59s11.479 25.59 25.59 25.59 25.59-11.479 25.59-25.59c0-14.111-11.479-25.59-25.59-25.59zM447.925 394.6c-14.111 0-25.59 11.486-25.59 25.606 0 14.103 11.479 25.574 25.59 25.574s25.59-11.471 25.59-25.574c0-14.12-11.479-25.606-25.59-25.606z" />
|
88 |
+
<glyph unicode="" d="M469.254 224c0 114.897-90.915 208.552-204.728 213.033v0.217h-17.060v-0.217c-113.814-4.481-204.72-98.136-204.72-213.033 0-117.787 95.479-213.25 213.25-213.25 41.371 0 79.956 11.82 112.664 32.203l0.117-0.166 6.347 4.315c0.084 0.049 0.15 0.091 0.217 0.142l7.547 5.123-0.116 0.166c52.462 38.843 86.482 101.169 86.482 171.467zM435.484 303.094l-170.958-66.616v183.495c76.391-3.291 141.57-50.455 170.958-116.879zM255.996 27.81c-108.183 0-196.19 88.007-196.19 196.19 0 105.316 83.425 191.483 187.66 195.973v-198.598l111.565-164.243c-29.976-18.568-65.262-29.322-103.035-29.322zM373.142 66.711l-104.076 153.232 172.615 67.257c6.78-19.842 10.512-41.084 10.512-63.2 0.001-64.309-31.103-121.486-79.051-157.289z" />
|
89 |
+
<glyph unicode="" d="M256 437.25c-0.058 0-0.117 0-0.183 0-0.025 0-0.049 0-0.083 0-0.084 0-0.167-0.017-0.25-0.017-117.546-0.266-212.734-95.629-212.734-213.233 0-117.571 95.188-212.951 212.734-213.234 0.083 0 0.166-0.016 0.25-0.016 0.033 0 0.058 0 0.083 0 0.067 0 0.125 0 0.183 0 117.754 0 213.25 95.496 213.25 213.25 0 117.77-95.496 213.25-213.25 213.25zM264.53 309.633c22.608 0.617 44.608 3.599 65.791 8.764 6.389-25.14 10.346-54.113 10.97-85.866h-76.761v77.102zM264.53 326.693v92.148c22.999-6.364 46.291-37.019 61.143-84.034-19.701-4.749-40.143-7.515-61.143-8.114zM247.47 419.040v-92.347c-21.175 0.6-41.783 3.415-61.634 8.247 14.969 47.297 38.484 78.069 61.634 84.1zM247.47 309.65v-77.12h-77.295c0.624 31.804 4.598 60.81 10.988 85.966 21.35-5.214 43.516-8.247 66.307-8.846zM153.007 232.53h-92.98c1.883 43.849 18.218 84.033 44.374 115.854 18.993-10.463 39.143-19.026 60.252-25.424-6.89-27.205-11.022-57.876-11.646-90.43zM153.007 215.47c0.624-32.538 4.756-63.209 11.645-90.415-21.1-6.414-41.259-14.977-60.252-25.44-26.156 31.821-42.491 72.005-44.373 115.855h92.98zM170.175 215.47h77.295v-77.020c-22.791-0.601-44.966-3.649-66.316-8.881-6.389 25.141-10.354 54.129-10.979 85.901zM247.47 121.406v-92.447c-23.166 6.048-46.698 36.852-61.659 84.201 19.859 4.831 40.476 7.647 61.659 8.246zM264.53 29.159v92.247c21.009-0.6 41.451-3.382 61.159-8.13-14.844-47.048-38.151-77.752-61.159-84.117zM264.53 138.45v77.020h76.761c-0.624-31.721-4.581-60.66-10.946-85.784-21.199 5.165-43.199 8.164-65.815 8.764zM358.46 215.47h93.514c-1.883-43.85-18.209-84.018-44.366-115.838-19.151 10.529-39.467 19.159-60.759 25.59 6.872 27.172 10.986 57.777 11.611 90.248zM358.46 232.53c-0.624 32.521-4.748 63.142-11.629 90.331 21.276 6.431 41.592 15.044 60.727 25.573 26.181-31.82 42.525-72.021 44.416-115.904h-93.514zM395.804 361.463c-16.969-9.030-34.887-16.494-53.596-22.158-9.972 32.088-23.974 58.278-40.526 75.471 36.319-8.714 68.748-27.507 94.122-53.313zM209.643 414.609c-16.468-17.161-30.404-43.233-40.343-75.154-18.525 5.648-36.286 13.045-53.104 22.008 25.207 25.639 57.395 44.382 93.447 53.146zM116.138 86.603c16.836 8.98 34.604 16.378 53.146 22.025 9.937-31.954 23.874-58.061 40.359-75.237-36.078 8.779-68.281 27.539-93.505 53.212zM301.674 33.241c16.577 17.193 30.58 43.4 40.559 75.537 18.717-5.681 36.644-13.128 53.62-22.191-25.373-25.824-57.827-44.65-94.179-53.346z" />
|
90 |
+
<glyph unicode="" d="M299.616 419.624l-22.008-178.564h97.411l-162.635-212.684 22.009 178.563h-97.412l162.635 212.685zM324.24 479.9l-221.78-290.020h112.639l-27.339-221.78 221.78 290.020h-112.639l27.339 221.78z" />
|
91 |
+
<glyph unicode="" d="M499.105 236.786h-5.107c-6.322 52.847-51.238 93.83-105.783 93.83-50.68 0-93.014-35.386-103.851-82.776l-24.416 12.754c-2.465 1.282-5.431 1.282-7.896 0l-24.415-12.754c-10.837 47.399-53.171 82.785-103.851 82.785-54.554 0-99.453-40.984-105.784-93.83h-5.106c-7.065 0-12.795-5.731-12.795-12.804 0-7.055 5.73-12.786 12.795-12.786h5.106c6.331-52.846 51.23-93.83 105.784-93.83 58.885 0 106.625 47.731 106.625 106.625 0 1.982-0.192 3.924-0.3 5.881l25.889 13.528 25.889-13.528c-0.108-1.958-0.299-3.899-0.299-5.881 0-58.885 47.739-106.625 106.625-106.625 54.545 0 99.444 40.984 105.783 93.821h5.107c7.064 0 12.795 5.731 12.795 12.795s-5.731 12.795-12.795 12.795zM123.785 134.435c-49.39 0-89.565 40.176-89.565 89.565s40.175 89.565 89.565 89.565c49.389 0 89.565-40.175 89.565-89.565s-40.176-89.565-89.565-89.565zM388.215 134.435c-49.39 0-89.565 40.176-89.565 89.565 0 49.381 40.175 89.556 89.565 89.556s89.565-40.175 89.565-89.556c0-49.389-40.176-89.565-89.565-89.565z" />
|
92 |
+
<glyph unicode="" d="M360.7 326.368c14.22 12.512 23.25 30.788 23.25 51.164 0 37.627-30.613 68.24-68.24 68.24-25.673 0-48.064-14.27-59.71-35.278-11.645 21.009-34.037 35.278-59.71 35.278-37.627 0-68.24-30.613-68.24-68.24 0-20.376 9.030-38.652 23.249-51.164h-100.019v-324.14h409.44v324.14h-100.020zM443.66 309.308v-136.48h-179.13v136.48h10.896l41.409-72.472 14.811 8.463-36.578 64.008h148.592zM256 343.295l9.671-16.927h-19.343l9.672 16.927zM315.71 428.712c28.222 0 51.18-22.958 51.18-51.18 0-28.214-22.958-51.164-51.18-51.164s-51.18 22.95-51.18 51.164c0 28.222 22.957 51.18 51.18 51.18zM145.11 377.532c0 28.222 22.957 51.18 51.18 51.18 28.222 0 51.18-22.958 51.18-51.18 0-28.214-22.958-51.164-51.18-51.164-28.223 0-51.18 22.95-51.18 51.164zM216.932 309.308l-36.577-64.008 14.811-8.463 41.409 72.472h10.896v-136.48h-179.131v136.48h148.592zM68.34 155.768h179.13v-136.48h-179.13v136.48zM264.53 19.288v136.48h179.13v-136.48h-179.13z" />
|
93 |
+
<glyph unicode="" d="M426.6 356.215h-221.78v8.53c0 18.843-15.277 34.12-34.12 34.12h-85.3c-18.843 0-34.12-15.277-34.12-34.12v-281.49c0-18.842 15.277-34.12 34.12-34.12h341.2c18.843 0 34.12 15.278 34.12 34.12v238.84c0 18.843-15.277 34.12-34.12 34.12zM68.34 364.745c0 9.405 7.656 17.060 17.060 17.060h85.3c9.404 0 17.060-7.655 17.060-17.060v-25.59h238.84c9.404 0 17.060-7.655 17.060-17.060v-17.060h-375.32v59.71zM426.6 66.195h-341.2c-9.404 0-17.060 7.656-17.060 17.060v204.72h375.32v-204.72c0-9.404-7.656-17.060-17.060-17.060z" />
|
94 |
+
<glyph unicode="" d="M409.531 406.372l-11.346-3.956c-0.299-0.101-31.030-10.629-79.618-10.629-24.757 0-48.332 5.022-71.122 9.879-23.050 4.914-46.89 9.995-72.131 9.995-50.33 0-67.399-10.804-69.181-12.037l-3.674-2.54v-360.747h17.060v163.133c6.789 2.649 23.433 7.372 55.795 7.372 23.441 0 45.366-4.673 68.574-9.621 23.657-5.048 48.123-10.262 74.679-10.262 51.729 0 83.925 11.112 85.274 11.587l5.698 2.007-0.008 205.819zM392.48 212.948c-11.037-3.007-37.443-8.929-73.912-8.929-24.757 0-48.332 5.022-71.122 9.888-23.050 4.914-46.89 9.995-72.131 9.995-27.63 0-45.241-3.257-55.795-6.406v169.75c6.831 2.649 23.516 7.355 55.795 7.355 23.441 0 45.366-4.673 68.574-9.621 23.657-5.040 48.123-10.254 74.679-10.254 34.361 0 60.102 4.906 73.912 8.338v-170.116z" />
|
95 |
+
<glyph unicode="" d="M307.18 27.81h-102.452v166.361l-170.575 226.019h443.693l-170.666-226.019v-166.361zM221.788 44.87h68.332v155.015l153.473 203.245h-375.186l153.381-203.245v-155.015z" />
|
96 |
+
<glyph unicode="" d="M405.208 283.777l-144.943 144.943h-153.54v-409.44h298.55v264.471l-0.067 0.026zM260.265 404.595l112.356-112.355h-112.356v112.355zM123.785 36.34v375.32h119.42v-136.48h145.010v-238.84h-264.43z" />
|
97 |
+
<glyph unicode="" d="M179.23 411.66v17.060h-127.95v-127.95h17.060v98.829l121.411-121.411 12.062 12.061-121.411 121.411zM332.77 428.72v-17.060h98.828l-121.411-121.411 12.062-12.061 121.411 121.411v-98.829h17.060v127.95zM189.751 169.813l-121.411-121.411v98.828h-17.060v-127.95h127.95v17.060h-98.828l121.411 121.411zM443.66 48.402l-121.411 121.411-12.062-12.062 121.411-121.411h-98.828v-17.060h127.95v127.95h-17.060z" />
|
98 |
+
<glyph unicode="" d="M51.28 19.28h170.6v170.617h-170.6v-170.617zM68.34 172.837h136.48v-136.497h-136.48v136.497zM375.42 224h17.060v136.48h-136.48v-17.060h108.191l-126.076-126.075 12.062-12.062 125.243 125.242zM51.28 428.72v-204.72h17.060v187.66h375.32v-375.32h-187.66v-17.060h204.72v409.44z" />
|
99 |
+
<glyph unicode="" d="M452.19 386.078c0 23.558-19.1 42.642-42.65 42.642-23.557 0-42.65-19.084-42.65-42.642 0-20.625 14.653-37.835 34.12-41.792v-290.886h17.060v290.886c19.467 3.957 34.12 21.167 34.12 41.792zM409.54 360.488c-14.111 0-25.59 11.479-25.59 25.59 0 14.104 11.479 25.582 25.59 25.582s25.59-11.479 25.59-25.582c0-14.112-11.479-25.59-25.59-25.59zM110.99 103.722v290.878h-17.060v-290.878c-19.467-3.957-34.12-21.159-34.12-41.792 0-23.55 19.101-42.65 42.65-42.65 23.55 0 42.65 19.1 42.65 42.65 0 20.633-14.653 37.835-34.12 41.792zM102.46 36.34c-14.111 0-25.59 11.479-25.59 25.59s11.479 25.59 25.59 25.59 25.59-11.479 25.59-25.59-11.479-25.59-25.59-25.59zM264.53 265.792v128.808h-17.060v-128.808c-19.467-3.957-34.12-21.167-34.12-41.792s14.653-37.836 34.12-41.793v-128.807h17.060v128.807c19.467 3.957 34.12 21.167 34.12 41.793s-14.653 37.835-34.12 41.792zM256 198.41c-14.111 0-25.59 11.479-25.59 25.59s11.479 25.59 25.59 25.59 25.59-11.479 25.59-25.59-11.479-25.59-25.59-25.59z" />
|
100 |
+
<glyph unicode="" d="M397.428 226.362c-0.341 1.324-1 2.524-1.883 3.524l-139.545 232.733-19.934-33.237h0.025l-120.403-200.772c-0.299-0.5-0.541-1.016-0.725-1.549-13.761-24.324-21.033-51.813-21.033-79.61 0-89.365 72.705-162.070 162.079-162.070 89.365 0 162.061 72.705 162.061 162.070 0 27.531-7.13 54.753-20.642 78.911zM256.009 2.441c-79.96 0-145.019 65.050-145.019 145.010 0 25.34 6.764 50.413 19.559 72.496 0.242 0.409 0.433 0.833 0.6 1.267l124.851 208.202 124.835-208.177c0.167-0.442 0.374-0.875 0.617-1.291 12.795-22.083 19.558-47.156 19.558-72.496 0-79.961-65.049-145.011-145.001-145.011z" />
|
101 |
+
<glyph unicode="" d="M376.086 369.010h-239.506l-93.83-102.36v-187.66h426.5v187.66l-93.164 102.36zM144.086 351.95h224.462l77.637-85.3h-130.475c0-31.946-27.764-57.752-59.71-57.752s-59.71 25.807-59.71 57.752h-130.39l78.186 85.3zM452.19 96.050h-392.38v153.54h121.528c8.163-32.654 39.051-57.752 74.662-57.752s66.499 25.099 74.662 57.752h121.528v-153.54z" />
|
102 |
+
<glyph unicode="" d="M181.362 266.966l-12.062-12.062 86.7-86.7 86.7 86.7-12.062 12.062-66.108-66.108v270.036h-17.060v-270.036zM298.65 385.594v-17.060h110.89v-290.020h-307.080v290.020h110.89v17.060h-127.95v-324.14h341.2v324.14z" />
|
103 |
+
<glyph unicode="" d="M486.31 415.925h-460.62v-17.060h34.12v-307.080h187.66v-42.65h-136.48v-17.060h290.020v17.060h-136.48v42.65h187.66v307.080h34.12v17.060zM435.13 108.845h-358.26v290.020h358.26v-290.020zM230.41 347.685h-102.36v-102.36h102.36v102.36zM213.35 262.385h-68.24v68.24h68.24v-68.24zM264.53 262.385h119.42v-17.060h-119.42v17.060zM264.53 347.685h119.42v-17.060h-119.42v17.060zM264.53 305.035h119.42v-17.060h-119.42v17.060zM128.050 211.205h255.9v-17.060h-255.9v17.060zM128.050 160.025h255.9v-17.060h-255.9v17.060z" />
|
104 |
+
<glyph unicode="" d="M477.78 116.825v307.080h-443.56v-307.080h213.25v-32.996l-80.901-44.807 8.263-14.927 81.168 44.966 81.169-44.966 8.263 14.927-80.902 44.807v32.996h213.25zM51.28 406.845h409.44v-272.96h-409.44v272.96zM244.705 233.171l-50.589 70.556-33.853-65.641-53.229 107.408-38.86-143.435 16.46-4.466 27.097 100.003 48.231-97.312 36.536 70.84 54.621-76.171 47.173 158.272-16.344 4.881zM375.429 321.545c-28.222 0-51.189-22.958-51.189-51.18s22.966-51.18 51.189-51.18c28.214 0 51.171 22.958 51.171 51.18s-22.958 51.18-51.171 51.18zM375.429 236.245c-18.818 0-34.129 15.302-34.129 34.12s15.311 34.12 34.129 34.12c18.81 0 34.111-15.302 34.111-34.12s-15.302-34.12-34.111-34.12z" />
|
105 |
+
<glyph unicode="" d="M375.42 428.72h-324.14v-409.44h409.44v324.14l-85.3 85.3zM341.3 411.66v-119.42h-170.6v119.42h170.6zM443.66 36.34h-375.32v375.32h85.3v-136.48h204.72v136.48h9.996l75.304-75.304v-300.016zM290.454 377.54h17.060v-51.18h-17.060v51.18zM170.7 155.76h170.6v-17.060h-170.6v17.060zM170.7 104.58h170.6v-17.060h-170.6v17.060z" />
|
106 |
+
<glyph unicode="" d="M51.28 428.72v-409.44h409.44v409.44h-409.44zM443.66 411.66v-76.77h-375.32v76.77h375.32zM68.34 36.34v281.49h375.32v-281.49h-375.32zM179.222 386.070h25.598v-25.59h-25.598v25.59zM307.18 386.070h25.59v-25.59h-25.59v25.59zM197.564 257.136c-3.057-20.759-12.928-21.117-32.795-21.833l-3.082-0.117v-14.469h33.662v-94.622h17.859v133.774h-15.244l-0.4-2.733zM298.267 216.928c-7.93 0-16.077-2.591-22.533-6.931l6.073 31.279h56.237v16.953h-69.548l-13.57-72.447h15.435l0.942 1.474c5.398 8.405 15.235 13.628 25.69 13.628 17.018 0 29.372-12.587 29.372-29.922 0-15.677-9.839-31.554-28.639-31.554-16.069 0-27.622 10.845-28.097 26.381l-0.1 3.099h-17.843l0.075-3.274c0.574-25.274 18.676-42.25 45.049-42.25 26.59 0 47.415 20.35 47.415 46.324-0.001 28.255-18.468 47.24-45.958 47.24z" />
|
107 |
+
<glyph unicode="" d="M452.19 437.208c-0.624 0-1.199-0.15-1.816-0.183h-49.364v0.183l-339.384-0.183c-0.617 0.033-1.192 0.183-1.816 0.183-18.843 0-34.12-15.277-34.12-34.12 0-9.479 3.873-18.043 10.112-24.223l75.188-75.188v5.573c0-77.203 60.385-140.145 136.48-144.577v-136.821h-68.24v-17.060h153.54v17.060h-68.24v136.821c76.095 4.431 136.48 67.373 136.48 144.577v-5.573l75.187 75.188c6.24 6.181 10.113 14.744 10.113 24.223 0 18.843-15.277 34.12-34.12 34.12zM110.99 327.801l-63.183 63.184c-3.258 3.232-5.057 7.53-5.057 12.103 0 9.171 7.272 16.677 16.361 17.043 0.525-0.067 1.049-0.116 1.591-0.142l0.467-0.025h49.822v-92.163zM383.95 309.25c0-70.556-57.403-127.95-127.95-127.95s-127.95 57.394-127.95 127.95v110.898h255.9v-110.898zM464.193 390.985l-63.183-63.184v92.164l50.289 0.025c0.542 0.026 1.066 0.075 1.591 0.142 9.089-0.366 16.361-7.871 16.361-17.043-0.001-4.574-1.8-8.872-5.058-12.104z" />
|
108 |
+
<glyph unicode="" d="M431.923 287.267h68.123l-247.311 146.426-240.781-146.426h61.709v-255.9h-34.12v-17.060h426.5v17.060h-34.12v255.9zM72.847 304.327l180.004 109.474 184.903-109.474h-364.907zM90.723 31.367v255.9h51.18v-255.9h-51.18zM158.963 31.367v255.9h51.18v-255.9h-51.18zM227.203 31.367v255.9h51.18v-255.9h-51.18zM295.443 31.367v255.9h51.18v-255.9h-51.18zM363.683 31.367v255.9h51.18v-255.9h-51.18z" />
|
109 |
+
<glyph unicode="" d="M401.010 87.587v276.933l31.055 30.946-12.045 12.078-30.105-30.004h-278.824v51.18h-17.060v-51.18h-51.281v-17.060h51.281v-289.953h289.919v-51.247h17.060v51.247h68.24v17.060h-68.24zM372.805 360.48l-261.714-260.874v260.874h261.714zM123.203 87.587l260.747 259.922v-259.923h-260.747z" />
|
110 |
+
<glyph unicode="" d="M460.72 377.54h-409.44c-14.127 0-25.59-11.463-25.59-25.59v-255.9c0-14.144 11.463-25.59 25.59-25.59h409.44c14.128 0 25.59 11.446 25.59 25.59v255.9c0 14.127-11.462 25.59-25.59 25.59zM42.75 309.3h426.5v-34.12h-426.5v34.12zM469.25 96.050c0-4.707-3.823-8.53-8.53-8.53h-409.44c-4.706 0-8.53 3.823-8.53 8.53v162.070h426.5v-162.070zM42.75 326.36v25.59c0 4.706 3.824 8.53 8.53 8.53h409.44c4.707 0 8.53-3.824 8.53-8.53v-25.59h-426.5zM76.87 138.7h170.6v-17.060h-170.6v17.060zM76.87 189.88h102.36v-17.060h-102.36v17.060zM383.7 121.64h34.637c9.271 0 16.793 7.397 16.793 16.543v1.024c0 9.138-7.522 16.552-16.793 16.552h-34.637c-9.287 0-16.81-7.414-16.81-16.552v-1.024c0-9.146 7.523-16.543 16.81-16.543z" />
|
111 |
+
<glyph unicode="" d="M445.523 361.835l-86.147 86.147h-189.523v-68.918h-103.376v-379.047h275.67v68.918h103.376v292.9zM359.376 423.618l61.784-61.783h-61.784v61.783zM83.706 17.247v344.588h155.065v-86.147h86.147v-258.441h-241.212zM256 354.7l61.784-61.783h-61.784v61.783zM342.147 86.165v206.753l-86.147 86.147h-68.918v51.688h155.065v-86.147h86.147v-258.441h-86.147z" />
|
112 |
+
<glyph unicode="" d="M281.59 420.19v-41.576l12.795-3.307c14.478-3.74 28.289-9.554 41.051-17.301l11.446-6.947 29.755 29.754 36.186-36.185-30.213-30.205 6.506-11.329c7.214-12.561 12.612-26.165 16.027-40.425l3.14-13.078h43.909v-51.18h-44.891l-3.457-12.52c-3.732-13.503-9.329-26.457-16.643-38.502l-6.948-11.454 32.571-32.562-36.186-36.185-33.029 33.021-11.32-6.506c-11.746-6.756-24.499-11.921-37.894-15.378l-12.804-3.299v-47.215h-51.18v47.215l-12.804 3.299c-13.395 3.457-26.148 8.622-37.894 15.378l-11.329 6.506-33.020-33.029-36.186 36.194 32.571 32.562-6.948 11.454c-7.314 12.045-12.911 24.999-16.643 38.502l-3.457 12.52h-44.891v51.18h43.909l3.14 13.078c3.415 14.26 8.813 27.864 16.027 40.425l6.506 11.329-30.213 30.205 36.186 36.185 29.755-29.754 11.446 6.947c12.762 7.747 26.573 13.562 41.051 17.301l12.795 3.307v41.575h51.178zM256 147.213c42.334 0 76.77 34.445 76.77 76.787 0 42.333-34.436 76.778-76.77 76.778s-76.77-34.445-76.77-76.778c0-42.342 34.436-76.787 76.77-76.787zM298.65 437.25h-85.3v-45.424c-16.294-4.207-31.605-10.721-45.632-19.234l-32.354 32.353-60.31-60.317 33.038-33.038c-7.972-13.877-13.995-28.964-17.827-44.94h-47.515v-85.3h48.964c4.216-15.253 10.479-29.597 18.502-42.817l-35.162-35.161 60.31-60.326 35.852 35.861c13.062-7.506 27.198-13.253 42.134-17.102v-51.055h85.3v51.055c14.936 3.849 29.072 9.596 42.134 17.102l35.853-35.852 60.31 60.317-35.162 35.161c8.022 13.22 14.286 27.565 18.502 42.817h48.964v85.3h-47.515c-3.832 15.977-9.855 31.063-17.827 44.94l33.038 33.038-60.31 60.317-32.354-32.353c-14.028 8.513-29.338 15.027-45.632 19.234v45.424h-0.001zM256 164.273c-32.987 0-59.71 26.74-59.71 59.727 0 32.986 26.723 59.718 59.71 59.718s59.71-26.731 59.71-59.718c0-32.987-26.723-59.727-59.71-59.727v0z" />
|
113 |
+
<glyph unicode="" d="M287.871 392.118c6.631 7.513 10.779 17.277 10.779 28.081 0 23.549-19.084 42.641-42.65 42.641-23.557 0-42.65-19.093-42.65-42.641 0-10.804 4.148-20.568 10.779-28.081-97.92-15.311-172.849-100.011-172.849-202.238 0-113.073 91.664-204.72 204.72-204.72s204.72 91.647 204.72 204.72c0 102.218-74.929 186.927-172.849 202.238zM256 445.78c14.111 0 25.59-11.479 25.59-25.581s-11.479-25.582-25.59-25.582-25.59 11.479-25.59 25.581 11.479 25.582 25.59 25.582zM256 2.22c-103.477 0-187.66 84.183-187.66 187.66s84.183 187.66 187.66 187.66 187.66-84.183 187.66-187.66-84.183-187.66-187.66-187.66zM153.682 87.387l138.804 65.741 65.75 138.812-139.263-65.299-65.291-139.254zM227.953 205.599l43.542-43.541-82.21-38.935 38.668 82.476zM283.556 174.119l-43.541 43.541 82.484 38.677-38.943-82.218z" />
|
114 |
+
<glyph unicode="" d="M426.625 402.876h-341.25c-18.843 0-34.12-15.277-34.12-34.12v-221.896c0-18.843 15.277-34.12 34.12-34.12h239.49l67.615-67.616v67.616h34.146c18.842 0 34.12 15.277 34.12 34.12v221.896c-0.001 18.843-15.279 34.12-34.121 34.12zM443.685 146.86c0-9.405-7.656-17.060-17.060-17.060h-51.205v-43.492l-43.491 43.492h-246.554c-9.404 0-17.060 7.655-17.060 17.060v221.896c0 9.405 7.656 17.060 17.060 17.060h341.25c9.404 0 17.060-7.655 17.060-17.060v-221.896zM256 274.81c-9.421 0-17.060-7.647-17.060-17.060 0-9.421 7.639-17.060 17.060-17.060s17.060 7.639 17.060 17.060c0 9.413-7.639 17.060-17.060 17.060zM324.24 274.81c-9.421 0-17.060-7.647-17.060-17.060 0-9.421 7.639-17.060 17.060-17.060s17.060 7.639 17.060 17.060c0 9.413-7.639 17.060-17.060 17.060zM189.367 274.81c-9.421 0-17.060-7.647-17.060-17.060 0-9.421 7.639-17.060 17.060-17.060s17.060 7.639 17.060 17.060c0 9.413-7.638 17.060-17.060 17.060z" />
|
115 |
+
<glyph unicode="" d="M383.517 164.29h68.673v136.48h-392.38v-127.95c0-89.507 72.563-162.070 162.070-162.070 86.625 0 157.181 68.023 161.637 153.54zM383.95 283.71h51.18v-102.36h-51.18v102.36zM221.88 27.81c-79.96 0-145.010 65.049-145.010 145.010v110.89h290.020v-110.89c0-79.961-65.050-145.010-145.010-145.010zM59.81-6.31h324.14v17.060h-324.14zM145.11 428.72h17.060v-76.77h-17.060v76.77zM281.59 428.72h17.060v-76.77h-17.060v76.77zM213.35 454.31h17.060v-102.36h-17.060v102.36z" />
|
116 |
+
<glyph unicode="" d="M286.301 368.885c63.5 0 115.155-51.647 115.155-115.155 0-0.35-0.042-0.717-0.067-1.066-0.049-0.85-0.108-1.699-0.125-2.566l-0.433-17.41 17.435-0.067c42.2-0.117 76.528-34.553 76.528-76.754 0-42.084-34.262-76.52-76.37-76.737l-3.723-0.016h-312.27c-46.99 0.049-85.225 38.301-85.225 85.283 0 36.403 23.174 68.806 57.653 80.636l9.596 3.281 1.691 9.996c4.181 24.674 25.373 42.583 50.388 42.583 7.972 0 15.677-1.849 22.9-5.481l15.553-7.813 7.505 15.693c19.067 39.853 59.817 65.593 103.809 65.593zM286.301 385.945c-52.613 0-97.912-30.804-119.196-75.287-9.205 4.632-19.567 7.297-30.572 7.297-33.769 0-61.742-24.574-67.207-56.794-40.216-13.795-69.18-51.847-69.18-96.763 0-56.494 45.79-102.293 102.268-102.343l316.102 0.016c51.596 0.267 93.338 42.15 93.338 93.797 0 51.73-41.841 93.664-93.538 93.814 0.033 1.366 0.2 2.682 0.2 4.048 0 73.021-59.194 132.215-132.215 132.215v0z" />
|
117 |
+
<glyph unicode="" d="M256 428.72c-113.056 0-204.72-91.664-204.72-204.72 0-113.057 91.664-204.72 204.72-204.72s204.72 91.663 204.72 204.72c0 113.056-91.664 204.72-204.72 204.72zM256 36.34c-103.477 0-187.66 84.183-187.66 187.66 0 103.476 84.183 187.66 187.66 187.66s187.66-84.184 187.66-187.66c0-103.477-84.183-187.66-187.66-187.66zM256 206.94h-102.36v-17.060h119.42v169.9h-17.060z" />
|
118 |
+
<glyph unicode="" d="M256 437.25c-117.77 0-213.25-95.471-213.25-213.25s95.48-213.25 213.25-213.25c117.771 0 213.25 95.471 213.25 213.25s-95.479 213.25-213.25 213.25zM256 27.81c-108.183 0-196.19 88.015-196.19 196.19 0 108.174 88.007 196.19 196.19 196.19s196.19-88.016 196.19-196.19c0-108.175-88.007-196.19-196.19-196.19zM362.675 300.137l-136.938-132.79-47.973 47.964c-4.999 4.999-13.095 4.999-18.093 0-4.999-4.998-4.999-13.094 0-18.093l56.877-56.877c2.499-2.499 5.773-3.749 9.047-3.749 3.207 0 6.422 1.199 8.904 3.607l145.985 141.561c5.073 4.923 5.198 13.019 0.283 18.093-4.938 5.082-13.027 5.198-18.092 0.284z" />
|
119 |
+
<glyph unicode="" d="M341.3 309.296v127.95h-298.55v-230.31h127.95v-127.95h177.015l68.24-68.231h10.645v68.231h42.65v230.31h-127.95zM59.81 223.996v196.19h264.43v-110.89h-153.54v-85.3h-110.89zM452.19 96.046h-42.65v-54.754l-54.762 54.754h-167.018v196.19h264.43v-196.19z" />
|
120 |
+
<glyph unicode="" d="M489.946 326.36h-358.519l-28.946 119.42h-80.427v-17.060h67.015l83.176-343.091c-17.735-5.165-30.771-21.351-30.771-40.759 0-23.55 19.092-42.65 42.65-42.65 23.557 0 42.65 19.1 42.65 42.65 0 9.646-3.324 18.45-8.722 25.59h119.794c-5.398-7.14-8.713-15.944-8.713-25.59 0-23.55 19.084-42.65 42.641-42.65 23.566 0 42.659 19.1 42.659 42.65 0 23.565-19.093 42.641-42.65 42.65v0h-182.453l-8.272 34.12h239.489l69.399 204.72zM209.714 44.87c0-14.111-11.48-25.59-25.59-25.59s-25.59 11.479-25.59 25.59c0 14.11 11.479 25.59 25.59 25.59 14.11 0 25.59-11.48 25.59-25.59zM397.374 44.87c0-14.111-11.48-25.59-25.599-25.59-14.103 0-25.581 11.479-25.581 25.59s11.479 25.59 25.581 25.59c14.119 0 25.599-11.48 25.599-25.59zM176.926 138.7l-41.359 170.6h330.587l-57.834-170.6h-231.394z" />
|
121 |
+
<glyph unicode="" d="M435.126 334.89h-70.556l-41.017 41.117c-0.049 0.049-0.091 0.083-0.133 0.133l-0.075 0.067c-6.164 6.097-14.627 9.863-23.982 9.863h-85.3c-9.913 0-18.751-4.282-24.99-11.029l-0.033 0.1-40.168-40.251h-72.006c-18.843 0-34.12-15.278-34.12-34.12v-204.72c0-18.843 15.277-34.12 34.12-34.12h358.26c18.851 0 34.129 15.277 34.129 34.12v204.72c-0.001 18.842-15.278 34.12-34.129 34.12zM452.194 96.050c0-9.397-7.664-17.060-17.069-17.060h-358.259c-9.404 0-17.060 7.663-17.060 17.060v204.72c0 9.413 7.656 17.060 17.060 17.060h79.077l25.656 25.706 0.417-1.25 19.584 21.176c3.315 3.582 7.738 5.548 12.461 5.548h85.3c4.506 0 8.771-1.75 12.112-5.048l46.015-46.132h77.637c9.404 0 17.069-7.647 17.069-17.060v-204.72zM255.996 317.83c-61.243 0-110.89-49.631-110.89-110.874s49.647-110.906 110.89-110.906 110.89 49.663 110.89 110.906-49.647 110.874-110.89 110.874zM255.996 113.11c-51.738 0-93.83 42.1-93.83 93.846 0 51.73 42.092 93.814 93.83 93.814s93.83-42.084 93.83-93.814c0-51.746-42.092-93.846-93.83-93.846zM255.996 283.71c-42.409 0-76.77-34.354-76.77-76.754s34.361-76.786 76.77-76.786 76.77 34.386 76.77 76.786-34.362 76.754-76.77 76.754zM255.996 147.23c-32.921 0-59.71 26.806-59.71 59.726s26.789 59.694 59.71 59.694 59.71-26.773 59.71-59.694-26.79-59.726-59.71-59.726z" />
|
122 |
+
<glyph unicode="" d="M374.511-6.31c-38.902 0-133.448 49.748-212.85 156.523-74.263 99.869-110.365 172.016-110.365 220.564 0 38.226 26.398 56.469 40.576 66.265l3.499 2.441c15.669 11.203 40.034 14.827 49.372 14.827 16.377 0 23.283-9.588 27.464-17.943 3.548-7.064 32.97-70.247 35.952-78.102 4.574-12.078 3.066-29.68-11.079-39.801l-2.482-1.733c-7.023-4.865-20.084-13.911-21.891-24.907-0.883-5.347 0.908-10.937 5.473-17.093 22.774-30.688 95.488-120.794 108.599-133.031 10.271-9.596 23.283-10.962 32.146-3.49 9.171 7.731 13.245 12.295 13.286 12.345l0.941 0.908c0.775 0.65 7.939 6.331 19.651 6.331 8.446 0 17.043-2.916 25.531-8.655 22.050-14.894 71.797-48.173 71.797-48.173l0.808-0.608c6.364-5.456 15.561-21.166 4.84-41.617-11.112-21.226-45.607-65.051-81.268-65.051zM144.743 437.25c-8.080 0-27.939-3.415-39.46-11.645l-3.707-2.591c-13.228-9.147-33.22-22.958-33.22-52.238 0-44.749 35.003-113.564 106.999-210.385 78.628-105.75 168.509-149.642 199.156-149.642 26.064 0 55.945 36.411 66.157 55.904 6.273 11.97 1.141 18.717-0.633 20.542-5.756 3.856-50.621 33.87-71.247 47.806-5.623 3.806-11.005 5.73-15.985 5.73-4.523 0-7.497-1.607-8.505-2.241-1.666-1.783-6.247-6.473-14.378-13.328-15.218-12.811-38.368-11.271-54.786 4.065-14.77 13.786-89.365 106.658-110.649 135.339-7.364 9.921-10.262 20.026-8.614 30.030 2.991 18.135 19.918 29.855 29.014 36.153l2.266 1.591c8.122 5.806 6.406 16.319 5.057 19.876-2.516 6.623-31.563 69.156-35.244 76.503-3.016 6.016-5.382 8.531-12.221 8.531z" />
|
123 |
+
<glyph unicode="" d="M136.58 317.83h238.84v68.24h-238.84v-68.24zM153.64 369.010h204.72v-34.12h-204.72v34.12zM375.42 428.72h-238.84c-18.843 0-34.12-15.277-34.12-34.12v-341.2c0-18.843 15.277-34.12 34.12-34.12h238.84c18.843 0 34.12 15.277 34.12 34.12v341.2c0 18.843-15.277 34.12-34.12 34.12zM392.48 53.4c0-9.413-7.655-17.060-17.060-17.060h-238.84c-9.404 0-17.060 7.647-17.060 17.060v341.2c0 9.397 7.656 17.060 17.060 17.060h238.84c9.405 0 17.060-7.663 17.060-17.060v-341.2zM153.64 241.060v51.18h-17.060v-68.24h68.24v17.060h-17.060zM153.64 155.76v51.18h-17.060v-68.24h68.24v17.060h-17.060zM153.64 70.46v51.18h-17.060v-68.24h68.24v17.060h-17.060zM238.94 241.060v51.18h-17.060v-68.24h68.24v17.060h-17.060zM324.24 241.060v51.18h-17.060v-68.24h68.24v17.060h-17.060zM238.94 155.76v51.18h-17.060v-68.24h68.24v17.060h-17.060zM238.94 70.46v51.18h-17.060v-68.24h68.24v17.060h-17.060zM324.24 70.46v136.48h-17.060v-153.54h68.24v17.060h-17.060z" />
|
124 |
+
<glyph unicode="" d="M42.746 437.25v-426.5h426.508v426.5h-426.508zM452.194 420.19v-68.24h-392.388v68.24h392.388zM59.806 27.81v307.080h392.388v-307.080h-392.388zM153.636 394.6h264.438v-17.060h-264.438v17.060zM85.396 394.6h17.060v-17.060h-17.060v17.060zM119.516 394.6h17.060v-17.060h-17.060v17.060z" />
|
125 |
+
<glyph unicode="" d="M477.93 383.592l-221.93 81.593-230.31-84.533v-314.278l230.31-83.559 230.31 83.559v314.144l-8.38 3.074zM247.47 4.065l-204.72 74.272v283.947l204.72-74.272v-283.947zM256 303.074l-197.222 71.554 197.222 72.381 197.040-72.447-197.040-71.488zM469.25 78.337l-204.72-74.272v283.948l204.72 73.971v-283.647z" />
|
126 |
+
<glyph unicode="" d="M460.72 415.925h-409.44v-110.89h17.069v-272.96h375.311v272.96h17.060v110.89zM426.6 49.135h-341.191v255.9h341.191v-255.9zM443.66 322.095h-375.32v76.77h375.32v-76.77zM194.299 194.071h123.818c17.627 0 31.93 13.886 31.93 31.030v6.181c0 17.143-14.303 31.030-31.93 31.030h-123.818c-17.635 0-31.913-13.887-31.913-31.030v-6.181c0.001-17.144 14.278-31.030 31.913-31.030zM179.447 231.281c0 7.705 6.664 13.97 14.853 13.97h123.818c8.197 0 14.87-6.264 14.87-13.97v-6.181c0-7.706-6.672-13.97-14.87-13.97h-123.819c-8.189 0-14.853 6.264-14.853 13.97v6.181z" />
|
127 |
+
<glyph unicode="" d="M435.155 420.248h-153.54c-10.262 0-19.359-4.623-25.606-11.804-6.264 7.181-15.361 11.804-25.623 11.804h-153.541c-18.843 0-34.12-15.277-34.12-34.12v-290.137c0-18.843 15.277-34.12 34.12-34.12h153.54c0.166 0 0.333 0.050 0.5 0.050 9.079-0.217 16.393-7.539 16.61-16.602v-17.568h17.060v9.463h0.167v7.689c0 9.221 7.363 16.718 16.527 17.010 0.116 0 0.25-0.042 0.366-0.042h153.54c18.843 0 34.12 15.277 34.12 34.12v290.137c0 18.843-15.278 34.12-34.12 34.12zM59.785 95.992v290.136c0 9.404 7.663 17.060 17.060 17.060h153.54c9.413 0 17.060-7.656 17.060-17.060v-290.137c0-9.404-7.647-17.060-17.060-17.060h-153.54c-9.396 0.001-17.060 7.656-17.060 17.061zM452.215 95.992c0-9.404-7.647-17.060-17.060-17.060h-153.54c-9.396 0-17.060 7.656-17.060 17.060v290.136c0 9.404 7.664 17.060 17.060 17.060h153.54c9.413 0 17.060-7.656 17.060-17.060v-290.136z" />
|
128 |
+
<glyph unicode="" d="M418.070 270.927c-11.795 0-23.040-2.283-33.445-6.264l-41.983 83.026h32.778v17.060h-60.518l17.252-34.12h-147.775l-8.614 17.060h29.055v17.060h-56.777l19.184-37.993c-0.1-0.142-0.233-0.258-0.316-0.408l-36.169-62.959c-11.313 4.84-23.749 7.539-36.811 7.539-51.738 0-93.83-42.092-93.83-93.839 0-51.738 42.092-93.83 93.83-93.83 48.856 0 89.074 37.552 93.398 85.3h69.831c3.040 0 5.847 1.616 7.38 4.249l78.769 135.755 26.015-51.446c-26.981-16.494-45.083-46.149-45.083-80.028 0-51.746 42.092-93.838 93.83-93.838s93.83 42.091 93.83 93.838-42.092 93.838-93.831 93.838zM176.39 308.604l62.101-122.986h-51.163c-2.632 29.047-18.526 54.296-41.584 69.631l30.646 53.355zM170.2 185.619h-64.466l31.496 54.821c17.968-12.329 30.438-32.088 32.97-54.821zM93.93 100.319c-42.334 0-76.77 34.436-76.77 76.77s34.436 76.779 76.77 76.779c9.972 0 19.468-1.966 28.215-5.44l-38.544-67.090c-1.516-2.641-1.508-5.889 0.017-8.521s4.339-4.257 7.38-4.257h79.202c-4.265-38.327-36.826-68.241-76.27-68.241zM255.109 190.559l-62.117 123.010h133.498l-71.381-123.010zM418.070 100.311c-42.334 0-76.77 34.444-76.77 76.778 0 27.231 14.295 51.139 35.737 64.775l36.119-71.439 15.227 7.697-36.011 71.222c8.047 2.875 16.677 4.523 25.698 4.523 42.334 0 76.77-34.445 76.77-76.779s-34.436-76.777-76.77-76.777z" />
|
129 |
+
<glyph unicode="" d="M401.177 138.004v137.089c0 71.388-51.664 130.599-119.587 142.644v10.896c0 9.421-7.647 17.060-17.060 17.060h-17.060c-9.429 0-17.060-7.639-17.060-17.060v-10.946c-67.79-12.178-119.253-71.322-119.253-142.594v-137.088l-59.877-48.465v-27.656h409.44v27.656l-59.543 48.464zM443.66 78.944h-375.32v2.457l59.877 48.464v145.228c0 70.556 57.394 127.95 127.95 127.95 70.539 0 127.95-57.394 127.95-127.95v-145.202l59.543-48.464v-2.483zM255.984 2.307c23.573 0 42.699 19.076 42.699 42.65h-85.366c0.017-23.574 19.126-42.65 42.667-42.65z" />
|
130 |
+
<glyph unicode="" d="M0.325 309.616v-171.225c0-13.961 11.321-25.281 25.274-25.281h213.566v221.78h-213.567c-13.952 0-25.273-11.312-25.273-25.274zM222.105 130.17h-196.507c-4.531 0-8.214 3.69-8.214 8.221v171.225c0 4.531 3.682 8.214 8.214 8.214h196.506v-187.66zM511.675 224c0 28.114-22.675 50.922-50.731 51.154v34.462c0 13.961-11.312 25.274-25.274 25.274h-179.445v-17.060h179.446c4.532 0 8.214-3.682 8.214-8.214v-171.225c0-4.531-3.682-8.221-8.214-8.221h-179.446v-17.060h179.446c13.962 0 25.274 11.32 25.274 25.281v34.454c28.056 0.233 50.73 23.032 50.73 51.155zM460.945 189.921v68.157c18.601-0.25 33.671-15.411 33.671-34.078-0.001-18.668-15.070-33.829-33.671-34.079z" />
|
131 |
+
<glyph unicode="" d="M255.983 437.25c-117.77 0-213.233-95.488-213.233-213.267 0-117.77 95.462-213.233 213.233-213.233s213.267 95.463 213.267 213.233c0 117.779-95.496 213.267-213.267 213.267zM451.973 232.513h-152.99c1.633 58.61 19.975 114.305 53.396 162.27 57.194-32.413 96.595-92.681 99.594-162.27zM255.983 420.19c28.822 0 56.162-6.298 80.835-17.493-34.57-50.397-53.462-108.824-55.062-170.184h-51.513c-1.616 61.36-20.492 119.795-55.079 170.184 24.674 11.204 52.014 17.493 80.819 17.493zM159.621 394.783c33.42-47.948 51.763-103.651 53.395-162.27h-152.989c2.982 69.589 42.4 129.866 99.594 162.27zM60.027 215.453h153.157c-1.633-58.652-19.942-114.405-53.38-162.353-57.295 32.379-96.779 92.697-99.777 162.353zM255.983 27.81c-28.805 0-56.144 6.289-80.818 17.493 34.587 50.38 53.463 108.774 55.079 170.15h51.513c1.6-61.392 20.492-119.77 55.062-170.15-24.675-11.195-52.014-17.493-80.836-17.493zM352.146 53.084c-33.421 47.948-51.713 103.701-53.33 162.369h153.157c-2.999-69.665-42.5-129.99-99.827-162.369z" />
|
132 |
+
<glyph unicode="" d="M230.231 352.708v-69.99l16.894-0.166c117.354-1.133 183.462-53.33 200.68-159.105-64.467 74.571-138.805 74.605-200.506 74.622h-17.069v-69.39l-158.145 112.023 158.146 112.006zM247.291 385.712l-204.72-145.010 204.72-145.010v85.317c81.935-0.033 157.897-4.165 222.138-118.721 0 72.755-12.020 235.292-222.138 237.324v86.1z" />
|
133 |
+
<glyph unicode="" d="M255.992 424.455l-230.302-400.91h460.62l-230.318 400.91zM255.992 390.202l200.846-349.597h-401.676l200.83 349.597zM247.462 262.385h17.060v-119.42h-17.060v119.42zM255.975 117.375c-7.064 0-12.77-5.73-12.77-12.795 0-7.047 5.707-12.778 12.77-12.778 7.089 0 12.82 5.731 12.82 12.778 0 7.065-5.73 12.795-12.82 12.795z" />
|
134 |
+
<glyph unicode="" d="M480.383 87.57l-34.744 70.564-75.329-30.738 6.448-15.794 50.422 20.567c-23.216-67.906-85.958-117.52-160.762-121.061v307.323c33.646 4.206 59.71 32.853 59.71 67.648 0 37.686-30.563 68.231-68.248 68.231-37.677 0-68.232-30.546-68.232-68.231 0-34.795 26.065-63.45 59.71-67.648v-307.322c-74.154 3.515-136.471 52.28-160.162 119.278l46.048-18.784 6.448 15.794-75.329 30.738-34.746-70.565 15.31-7.53 24.415 49.581c25.5-78.761 99.404-135.931 186.544-135.931 85.417 0 158.222 54.879 185.095 131.216l22.091-44.866 15.311 7.53zM206.706 386.079c0 28.214 22.958 51.171 51.172 51.171 28.222 0 51.188-22.958 51.188-51.171 0-28.222-22.965-51.18-51.188-51.18-28.213 0-51.172 22.957-51.172 51.18z" />
|
135 |
+
<glyph unicode="" d="M25.69 360.48v-341.2h460.62v341.2h-460.62zM469.25 36.34h-426.5v307.080h426.5v-307.080zM59.81 394.6h392.38v-17.060h-392.38v17.060zM93.93 428.72h324.14v-17.060h-324.14v17.060z" />
|
136 |
+
<glyph unicode="" d="M255.875 386.053c-103.66 0-187.66-84.017-187.66-187.66 0-47.032 17.351-89.998 45.949-122.935l-43.9-53.812 13.211-10.779 42.542 52.13c33.712-32.338 79.444-52.246 129.858-52.246 50.53 0 96.362 20.009 130.107 52.496l42.517-52.447 13.261 10.746-43.932 54.195c28.455 32.904 45.707 75.754 45.707 122.652 0 103.643-84.034 187.66-187.66 187.66zM255.875 27.81c-94.072 0-170.6 76.52-170.6 170.583 0 94.080 76.528 170.6 170.6 170.6s170.6-76.52 170.6-170.6c0-94.063-76.528-170.583-170.6-170.583zM178.73 437.25h-50.68c-47.115 0-85.3-38.185-85.3-85.3v-51.33h24.257l111.723 112.356v24.274zM161.67 420.007l-101.86-102.327v34.27c0 37.618 30.613 68.24 68.24 68.24h33.62v-0.183zM383.95 437.25h-50.713v-24.274l111.74-112.356h24.274v51.33c-0.001 47.115-38.203 85.3-85.301 85.3zM452.19 317.68h-0.117l-101.776 102.327v0.183h33.653c37.627 0 68.24-30.622 68.24-68.24v-34.27zM247.47 198.41h-94.047v-17.060h111.107v153.54h-17.060z" />
|
137 |
+
<glyph unicode="" d="M460.72 403.13h-409.44v-255.9h138.913l-87.733-102.36h307.080l-87.74 102.36h138.92v255.9zM139.554 61.93l116.438 135.856 116.454-135.856h-232.892zM443.66 164.29h-136.489l-51.18 59.71-51.18-59.71h-136.471v221.78h375.32v-221.78z" />
|
138 |
+
<glyph unicode="" d="M171.559 320.504l-12.063-12.063 84.442-84.442-84.042-84.043 12.063-12.063 84.042 84.042 84.043-84.042 12.063 12.063-84.042 84.043 84.442 84.442-12.063 12.063-84.443-84.442z" />
|
139 |
+
<glyph unicode="" d="M105.211 374.789c-83.288-83.288-83.288-218.293 0-301.581s218.29-83.285 301.578 0.003c83.288 83.288 83.291 218.29 0.003 301.578s-218.293 83.288-301.581 0zM394.726 85.274c-76.491-76.491-200.961-76.494-277.452-0.003s-76.491 200.964 0 277.455c76.491 76.491 200.963 76.491 277.455 0 76.49-76.491 76.487-200.961-0.003-277.452zM171.559 320.504l-12.063-12.063 84.442-84.442-84.042-84.043 12.063-12.063 84.042 84.042 84.043-84.042 12.063 12.063-84.042 84.043 84.442 84.442-12.063 12.063-84.443-84.442z" />
|
140 |
+
<glyph unicode="" d="M268.271 275.051l-12.071 12.071-96.565-96.566 12.069-12.069 84.496 84.495 84.096-84.096 12.069 12.071-48.203 48.203z" />
|
141 |
+
<glyph unicode="" d="M255.608 10.736c117.862 0 213.386 95.523 213.386 213.386s-95.523 213.386-213.386 213.386-213.385-95.524-213.385-213.386 95.523-213.386 213.385-213.386zM255.608 420.437c108.243 0 196.315-88.070 196.315-196.315 0-108.243-88.072-196.315-196.315-196.315s-196.315 88.072-196.315 196.315c0 108.245 88.072 196.315 196.315 196.315zM267.795 275.051l-12.071 12.071-96.564-96.566 12.069-12.069 84.495 84.495 84.097-84.096 12.069 12.071-48.203 48.203z" />
|
142 |
+
<glyph unicode="" d="M306.538 211.729l12.070 12.071-96.566 96.565-12.069-12.069 84.496-84.496-84.097-84.096 12.071-12.069 48.203 48.203z" />
|
143 |
+
<glyph unicode="" d="M42.223 224.122c0-117.862 95.523-213.386 213.386-213.386s213.386 95.523 213.386 213.386-95.524 213.386-213.387 213.386-213.385-95.524-213.385-213.386zM451.923 224.122c0-108.243-88.070-196.315-196.315-196.315-108.243 0-196.315 88.072-196.315 196.315s88.072 196.315 196.315 196.315c108.245 0 196.315-88.072 196.315-196.315zM306.538 211.935l12.070 12.071-96.566 96.565-12.069-12.069 84.496-84.496-84.097-84.096 12.071-12.069 48.203 48.203z" />
|
144 |
+
<glyph unicode="" d="M204.679 236.271l-12.071-12.071 96.567-96.565 12.069 12.069-84.496 84.496 84.096 84.096-12.070 12.069-48.203-48.203z" />
|
145 |
+
<glyph unicode="" d="M468.994 224.122c0 117.862-95.523 213.386-213.386 213.386s-213.385-95.524-213.385-213.386 95.523-213.386 213.386-213.386 213.385 95.524 213.385 213.386zM59.293 224.122c0 108.243 88.070 196.315 196.315 196.315 108.243 0 196.315-88.072 196.315-196.315s-88.072-196.315-196.315-196.315c-108.244 0-196.315 88.072-196.315 196.315zM204.679 236.309l-12.071-12.071 96.567-96.565 12.069 12.070-84.496 84.495 84.096 84.096-12.070 12.069-48.203-48.203z" />
|
146 |
+
<glyph unicode="" d="M243.729 173.193l12.071-12.071 96.565 96.567-12.069 12.069-84.496-84.496-84.096 84.096-12.069-12.071 48.203-48.203z" />
|
147 |
+
<glyph unicode="" d="M255.608 437.508c-117.862 0-213.386-95.523-213.386-213.386s95.523-213.386 213.386-213.386 213.386 95.523 213.386 213.386-95.523 213.386-213.386 213.386zM255.608 27.807c-108.243 0-196.315 88.070-196.315 196.315 0 108.243 88.072 196.315 196.315 196.315s196.315-88.072 196.315-196.315c0-108.245-88.072-196.315-196.315-196.315zM243.421 173.193l12.071-12.071 96.565 96.567-12.069 12.069-84.496-84.496-84.096 84.096-12.069-12.071 48.203-48.203z" />
|
148 |
+
<glyph unicode="" d="M192.4 221.5l-12.1 12.1 76.4 76.4 76.4-76.4-12.1-12.1-55.8 55.8v-223.3h-17.1v223.3l-55.7-55.8zM419.1 326.9c0 1.4 0.2 2.7 0.2 4 0 73.1-59.2 132.3-132.3 132.3-52.6 0-97.9-30.8-119.2-75.3-9.2 4.6-19.6 7.3-30.6 7.3-33.8 0-61.8-24.6-67.2-56.8-40.2-13.8-69.2-51.9-69.2-96.8 0-56.5 45.8-102.3 102.3-102.3h111v17.1h-111c-47 0-85.2 38.3-85.2 85.3 0 36.4 23.2 68.8 57.7 80.7l9.6 3.3 1.7 10c4.2 24.7 25.4 42.6 50.4 42.6 8 0 15.7-1.9 22.9-5.5l15.6-7.8 7.5 15.7c19 39.7 59.7 65.4 103.7 65.4 63.5 0 115.2-51.7 115.2-115.2 0-0.3 0-0.7-0.1-1.1-0.1-0.8-0.1-1.7-0.1-2.6l-0.4-17.4 17.4-0.1c42.2-0.1 76.6-34.6 76.6-76.8 0-42.1-34.3-76.5-76.4-76.7h-119.8v-17.1h119.9c51.6 0.3 93.4 42.2 93.4 93.8-0.1 51.9-41.9 93.9-93.6 94z" />
|
149 |
+
<glyph unicode="" d="M320.8 74.2l12.1-12.1-76.4-76.4-76.4 76.4 12.1 12.1 55.8-55.8v223.3h17v-223.3l55.8 55.8zM418.8 326.9c0 1.4 0.2 2.7 0.2 4 0 73.1-59.2 132.3-132.2 132.3-52.6 0-97.9-30.8-119.2-75.3-9.2 4.6-19.6 7.3-30.6 7.3-33.8 0-61.8-24.6-67.2-56.8-40.2-13.8-69.2-51.9-69.2-96.8 0-56.5 45.8-102.3 102.3-102.3h111v17.1h-111c-47 0-85.2 38.3-85.2 85.3 0 36.4 23.2 68.8 57.7 80.7l9.6 3.3 1.7 10c4.2 24.7 25.4 42.6 50.4 42.6 8 0 15.7-1.9 22.9-5.5l15.6-7.8 7.5 15.7c19.1 39.9 59.8 65.6 103.8 65.6 63.4-0.2 115.1-51.8 115.1-115.3 0-0.3 0-0.7-0.1-1.1-0.1-0.8-0.1-1.7-0.1-2.6l-0.4-17.4 17.4-0.1c42.2-0.1 76.6-34.6 76.6-76.8 0-42.1-34.3-76.5-76.4-76.7h-119.9v-17.1h119.9c51.6 0.3 93.4 42.2 93.4 93.8 0 51.8-41.9 93.8-93.6 93.9z" />
|
150 |
+
<glyph unicode="" d="M268.548 307.922c-27.797 0-50.351-22.542-50.351-50.346 0-27.811 22.554-50.362 50.351-50.362 27.818 0 50.354 22.55 50.354 50.362 0 27.803-22.538 50.345-50.354 50.345zM268.548 224c-18.504 0-33.567 15.064-33.567 33.577 0 18.505 15.064 33.56 33.567 33.56 18.522 0 33.57-15.055 33.57-33.56 0-18.514-15.048-33.577-33.57-33.577zM67.136 383.452v-251.765h402.824v251.765h-402.824zM453.178 326.668v-178.198h-369.256v218.197h369.256v-39.998zM379.942 114.902h-329.589v234.98h-16.785v-251.765h402.825v16.786h-16.784zM346.373 81.332h-329.589v234.981h-16.784v-251.766h402.825v16.784h-16.786zM109.098 349.358h50.354v-16.784h-50.353v16.784zM109.098 182.039h50.354v-16.784h-50.353v16.784zM377.649 349.358h50.353v-16.784h-50.353v16.784zM377.649 182.039h50.353v-16.784h-50.353v16.784z" horiz-adv-x="470" />
|
151 |
+
<glyph unicode="" d="M118.982-31.232v233.236l-101.787-101.731-11.867 11.875 107.804 107.736-113.13 113.036 11.867 11.875 107.115-107.037v241.476l138.684-138.611-120.8-120.74 116.704-116.618-134.586-134.496zM135.766 197.25v-187.98l94.067 93.994-94.067 93.986zM135.766 438.73v-196.217l98.165 98.109-98.166 98.108z" horiz-adv-x="258" />
|
152 |
+
<glyph unicode="" d="M184.708 299.464h117.475l50.353 59.175-50.353 58.315h-117.476v33.63h-16.784v-33.63h-151.142v-117.49h151.142v-16.723h-117.573l-50.352-58.315 50.352-59.171h117.573v-167.844h16.784v167.844h151.043v117.486h-151.042v16.722zM33.569 316.249v83.921h260.928l35.93-41.608-35.995-42.313h-260.864zM318.967 265.957v-83.918h-260.846l-36.011 42.305 35.929 41.613 260.926-0zM50.23 383.452h83.922v-16.784h-83.922v16.784zM218.114 249.087h83.922v-16.785h-83.922v16.785z" horiz-adv-x="353" />
|
153 |
+
<glyph unicode="" d="M268.567 282.745h117.476v-16.784h-117.476v16.784zM268.55 182.039h117.492v-16.784h-117.492v16.784zM268.55 232.393h83.792v-16.785h-83.792v16.785zM251.766 383.452v50.353h-67.138v-50.353h-184.628v-369.257h436.394v369.257h-184.627zM419.61 366.666v-33.568h-167.844v33.569h167.844zM201.412 417.020h33.57v-83.922h-33.57v83.922zM16.785 366.666h167.845v-33.568h-167.845v33.569zM16.785 30.979v285.334h402.825v-285.334h-402.825zM247.406 105.575c-12.113 5.046-40.716 14.981-58.435 20.209-1.508 0.474-1.736 0.558-1.736 6.851 0 5.18 2.129 10.408 4.21 14.834 2.244 4.812 4.934 12.89 5.884 20.144 2.689 3.13 6.343 9.277 8.72 21.005 2.049 10.327 1.097 14.088-0.279 17.628-0.148 0.37-0.296 0.729-0.41 1.098-0.524 2.428 0.196 15.012 1.968 24.786 1.212 6.696-0.311 20.952-9.54 32.743-5.82 7.452-16.964 16.6-37.341 17.87l-11.178-0.008c-20.014-1.262-31.177-10.413-36.995-17.862-9.228-11.792-10.767-26.048-9.555-32.743 1.787-9.774 2.49-22.358 1.984-24.736-0.097-0.42-0.263-0.779-0.408-1.149-1.361-3.541-2.328-7.301-0.264-17.628 2.344-11.728 6-17.874 8.704-21.005 0.933-7.254 3.623-15.334 5.884-20.144 1.654-3.516 2.442-8.303 2.442-15.065 0-6.293-0.246-6.37-1.656-6.82-18.308-5.409-47.468-15.94-58.334-20.694-8.622-3.697-10.72-10.334-10.72-16.318 0-1.673 0-4.293 0-7.245h16.785v7.248c0 0.269 0.016 0.476 0.032 0.639 0.147 0.082 0.344 0.18 0.624 0.293 10.326 4.524 38.928 14.834 56.696 20.079 13.357 4.245 13.357 16.784 13.357 22.817 0 9.293-1.279 16.358-4.031 22.228-1.688 3.582-3.754 9.93-4.428 15.137l-0.654 5.007-3.293 3.82c-0.508 0.574-3.066 3.902-4.951 13.326-1.278 6.358-0.82 7.54-0.558 8.228 0.442 1.082 0.82 2.163 1.163 3.688 1.476 6.786-0.475 23.73-1.85 31.282-0.459 2.475 0.197 11.677 6.245 19.419 5.31 6.794 13.506 10.634 24.357 11.412l10.064 0.008c11.048-0.786 19.341-4.625 24.653-11.424 6.065-7.738 6.704-16.94 6.262-19.403-1.377-7.548-3.328-24.486-1.869-31.313l0.146-0.652 0.18-0.64c0.231-0.73 0.476-1.442 0.838-2.377 0.279-0.697 0.736-1.87-0.524-8.209-1.903-9.433-4.476-12.793-4.986-13.375l-3.262-3.788-0.656-4.966c-0.689-5.22-2.752-11.603-4.426-15.178-2.72-5.753-5.82-13.459-5.82-21.996 0-6.033 0-18.589 13.769-22.948 16.768-4.952 44.879-14.654 56.564-19.541 1.77-0.754 2.41-1.686 2.593-2.033v-6.786h16.785c0 2.952 0 5.572 0 7.245-0 5.988-4.149 13.298-12.754 17.002z" horiz-adv-x="437" />
|
154 |
+
<glyph unicode="" d="M210.149 306.852h-16.786v-95.784l52.813-52.812 11.868 11.868-47.896 47.894zM439.13 324.875l-118.686 118.687-89.397-89.405c-9.458 1.983-19.244 3.049-29.291 3.049-78.66 0-142.667-63.999-142.667-142.664 0-10.033 1.082-19.832 3.048-29.291l-62.138-62.138 24.718-95.928 93.969-22.75 68.22 68.219c4.884-0.491 9.834-0.77 14.85-0.77 78.676 0 142.667 64 142.667 142.658 0 5.015-0.264 9.97-0.771 14.855l95.478 95.48zM320.445 419.824l94.952-94.949-75.463-75.456c-11.688 46.288-45.978 83.562-90.48 99.411l70.99 70.993zM113.474 22.957l-75.004 18.161-19.834 76.9 48.828 48.827c15.867-44.502 53.139-78.784 99.429-90.469l-53.422-53.418zM201.756 88.668c-69.4 0-125.882 56.459-125.882 125.875 0 69.412 56.483 125.877 125.882 125.877 69.415 0 125.883-56.466 125.883-125.877 0-69.416-56.467-125.875-125.882-125.875z" horiz-adv-x="439" />
|
155 |
+
<glyph unicode="" d="M50.434 253.398c0-88.061 71.382-159.444 159.434-159.444 88.089 0 159.468 71.382 159.468 159.444 0 88.076-71.379 159.458-159.468 159.458-88.050-0.002-159.434-71.38-159.434-159.458zM209.871 396.068c78.677 0 142.682-64.002 142.682-142.671 0-78.659-64.007-142.657-142.682-142.657-78.66 0-142.653 63.998-142.653 142.657 0.001 78.669 63.99 142.672 142.653 142.672zM304.94 66.204l8.079-16.324 15.048 7.442-22.818 46.074-15.046-7.458 7.277-14.67c-26.995-13.752-57.058-21.046-87.611-21.046-106.474 0-193.084 86.658-193.084 193.176 0 72.563 41.109 139.118 105.312 171.99l7.802-15.752 15.031 7.45-22.818 46.063-15.030-7.451 7.573-15.28c-69.891-35.692-114.654-108.082-114.654-187.022 0-112.959 89.642-205.32 201.494-209.747v-25.538c-38.75-1.507-74.841-13.457-105.46-33.257h35.109c24.030 10.752 50.632 16.784 78.628 16.784 27.506 0 54.139-5.966 78.447-16.784h35.258c-30.995 19.964-67.219 31.7-105.197 33.257v25.603c30.224 1.214 59.826 8.868 86.659 22.49z" horiz-adv-x="370" />
|
156 |
+
<glyph unicode="" d="M218.166 395.616l-122.983-98.038h-95.183v-75.878l-0.066-0.044 0.066-0.044v-75.091h95.674l122.49-96.126v96.125h0.032v151.060h-0.032v98.038h0.002zM201.414 163.303h-0.032v-78.399l-99.904 78.399h-84.692v117.491h84.266l100.329 79.98v-63.196l0.032-16.784v-117.49h0.001zM257.389 308.339c18.26-24.329 27.914-53.322 27.914-83.851 0-31.163-10.030-60.652-28.995-85.278l13.308-10.236c21.243 27.587 32.471 60.615 32.471 95.516 0 34.191-10.818 66.67-31.274 93.924l-13.425-10.074zM325 369.173l-12.948-10.686c31.536-38.188 48.91-86.553 48.91-136.192 0-49.050-16.144-95.19-46.666-133.425l13.13-10.474c32.913 41.24 50.32 90.995 50.32 143.899 0.002 53.529-18.733 105.692-52.745 146.88zM377.255 423.669l-12.59-11.088c46.289-52.566 71.776-120.163 71.776-190.346 0-68.76-24.601-135.332-69.267-187.438l12.736-10.916c47.289 55.139 73.318 125.588 73.318 198.356-0.002 74.267-26.98 145.806-75.974 201.433z" horiz-adv-x="454" />
|
157 |
+
<glyph unicode="" d="M0.001 128.040c0-7.344 0-29.12 0-33.922s2.852-13.014 13.146-13.014c7.9 0 71.006 0 99.918 0 8.754 0 14.406 0 14.406 0h2.476c0 0 1.656 0 4.328 0 0-7.736 0-14.786 0-17.483 0-5.94 3.524-16.088 16.276-16.088 9.786 0 88.15 0 123.93 0 10.834 0 17.85 0 17.85 0h3.065c0 0 6.884 0 17.555 0 35.666 0 114.149 0 123.951 0 12.735 0 16.274 10.147 16.274 16.088s0 32.874 0 41.961-3.212 19.161-16.274 24.776c-16.508 7.228-60.78 23.226-88.596 31.438-2.147 0.68-2.508 0.793-2.508 10.342 0 10.277 1.18 17.548 3.688 22.89 3.442 7.302 7.507 19.579 8.95 30.594 4.096 4.737 9.654 14.080 13.209 31.888 3.149 15.695 1.673 21.406-0.394 26.766-0.229 0.566-0.459 1.123-0.623 1.754-0.771 3.606 0.294 22.726 3 37.568 1.85 10.171-0.476 31.815-14.49 49.723-8.849 11.317-25.798 25.208-56.204 27.126l-16.964 0.016c-30.93-1.934-47.861-15.826-56.712-27.142-14.012-17.908-16.34-39.552-14.488-49.731 2.688-14.834 3.769-33.955 2.983-37.634-0.164-0.558-0.393-1.115-0.607-1.68-2.082-5.36-3.541-11.072-0.41-26.766 3.572-17.808 9.13-27.152 13.21-31.888 1.459-11.014 5.524-23.292 8.951-30.594 3.162-6.72 6.407-14.662 6.407-22.546 0-9.546-0.361-9.661-2.654-10.382-5.721-1.68-12.21-3.705-19.030-5.892-16.063 5.966-36.272 12.95-50.928 17.286-1.737 0.546-2.031 0.639-2.031 8.36 0 8.31 0.966 14.185 2.982 18.505 2.788 5.909 6.066 15.825 7.246 24.734 3.294 3.827 7.786 11.384 10.671 25.784 2.542 12.686 1.344 17.3-0.328 21.636-0.18 0.458-0.361 0.909-0.49 1.418-0.624 2.918 0.23 18.375 2.407 30.374 1.492 8.22-0.375 25.717-11.702 40.207-7.146 9.138-20.849 20.374-45.404 21.93h-13.701c-24.998-1.556-38.666-12.793-45.83-21.93-11.326-14.49-13.21-31.986-11.704-40.207 2.164-11.998 3.049-27.456 2.409-30.438-0.13-0.442-0.328-0.894-0.492-1.352-1.689-4.335-2.868-8.95-0.328-21.636 2.885-14.399 7.376-21.956 10.671-25.784 1.18-8.907 4.458-18.823 7.228-24.734 2.556-5.433 5.18-11.851 5.18-18.226 0-7.72-0.296-7.812-2.147-8.401-21.734-6.418-56.844-18.605-71.71-24.824-10.553-4.534-15.62-13.515-15.62-20.866zM151.061 105.584c0 2.491 2.49 7.515 9.18 10.384 17.653 7.375 60.892 22.284 87.167 30.038 14.685 4.613 14.685 17.252 14.685 26.479 0 11.18-4.048 21.286-8.014 29.692-2.738 5.86-6.263 16.4-7.49 25.653l-0.655 4.958-3.278 3.794c-1.804 2.094-6.345 8.654-9.459 24.234-2.426 12.17-1.359 14.94-0.409 17.387l0.017 0.024 0.146 0.414c0.347 0.861 0.656 1.726 0.904 2.582l0.18 0.606 0.131 0.623c1.72 8.024-0.524 31.114-2.884 44.133-1.066 5.86 0.279 22.439 11.194 36.396 9.72 12.416 24.52 19.378 44.028 20.702l15.882-0.016c23.882-1.639 36.848-12.134 43.536-20.68 10.932-13.961 12.26-30.536 11.194-36.376-2.31-12.688-4.589-36.166-2.901-44.084l0.082-0.356 0.098-0.357c0.346-1.356 0.786-2.574 1.277-3.786 0.87-2.258 1.952-5.065-0.474-17.214-3.115-15.592-7.654-22.124-9.459-24.206l-3.294-3.811-0.639-4.99c-1.229-9.26-4.736-19.767-7.507-25.618-3.606-7.697-5.279-17.236-5.279-30.046 0-9.212 0-21.832 14.209-26.34 27.078-7.998 71.039-23.858 86.938-30.817 4.736-2.032 6.229-4.31 6.229-9.4v-41.264h-285.25l-0.082 41.262zM16.785 128.040c0.032 0.654 1.066 3.557 5.459 5.44 14.392 6.024 49.058 18.014 69.842 24.152 14.178 4.508 14.178 17.022 14.178 24.497 0 9.652-3.426 18.241-6.786 25.373-2.18 4.663-4.868 12.981-5.77 19.792l-0.656 4.958-3.262 3.786c-1.016 1.173-4.492 5.946-6.933 18.129-1.786 8.917-1.066 10.765-0.492 12.252l0.098 0.221 0.066 0.221c0.344 0.869 0.573 1.558 0.77 2.234l0.197 0.62 0.13 0.63c1.656 7.736-0.722 28.209-2.311 36.945-0.737 4.106 0.344 16.538 8.424 26.881 7.245 9.252 18.391 14.465 33.142 15.481h12.604c18.030-1.274 27.75-9.106 32.734-15.486 8.064-10.326 9.162-22.779 8.424-26.874-1.689-9.228-3.901-29.458-2.328-36.872l0.082-0.347 0.082-0.346c0.314-1.18 0.689-2.246 1.099-3.307 0.574-1.471 1.294-3.356-0.476-12.256-2.442-12.186-5.917-16.944-6.934-18.112l-3.262-3.794-0.655-4.964c-0.918-6.844-3.607-15.147-5.803-19.801-3.113-6.671-4.572-14.808-4.572-25.642 0-7.485 0-20.014 13.751-24.368 8.686-2.572 19.506-6.128 30.192-9.849-17.654-6.048-34.487-12.18-44.208-16.243-13.081-5.614-19.341-16.719-19.341-25.808 0-1.894 0-4.598 0-7.695h-117.492v30.151z" horiz-adv-x="453" />
|
158 |
+
<glyph unicode="" d="M201.34 425.413c-111.246 0-201.412-90.183-201.412-201.413s90.166-201.412 201.412-201.412c111.23 0 201.411 90.182 201.411 201.412s-90.183 201.413-201.411 201.413zM90.864 76.152c12.326 4.534 25.848 9.106 37.88 13.147 41.093 13.81 47.419 15.93 47.419 29.791v32.413l-14.031 2.336c-1 0.173-24.636 4.072-40.518 4.072-8.195 0-12.85 0.204-17.343 3.154 11.556 25.292 23.505 64.86 28.029 96.162l0.869-0.298 1.246 22.181c1.968 35.54 31.356 63.38 66.924 63.38 35.552 0 64.941-27.84 66.924-63.38l1.459-22.1 0.639 0.217c4.524-31.302 16.473-70.87 28.029-96.162-4.474-2.95-9.146-3.154-17.325-3.154-16.112 0-38.944-5.080-41.484-5.663l-13.066-2.966v-30.192c0-13.71 6.556-16.031 49.238-31.11 11.064-3.918 23.438-8.302 34.913-12.647-30.634-22.578-68.45-35.962-109.327-35.962-41.387-0.002-79.644 13.685-110.475 36.779zM325.582 87.553c-34.24 13.548-82.281 28.438-82.281 31.538 0 3.846 0 16.792 0 16.792s23.078 5.244 37.764 5.244 25.178 0.918 37.766 16.652c-15.736 27.798-33.57 90.347-33.57 122.343l-0.245-0.082c-2.442 44.157-38.912 79.234-83.676 79.234s-81.234-35.077-83.692-79.234l-0.23 0.082c0-31.996-17.834-94.543-33.57-122.343 12.59-15.736 23.078-16.652 37.764-16.652s37.766-3.844 37.766-3.844 0-14.348 0-18.194c0-3.147-49.141-17.301-83.299-30.576-36.486 33.757-59.368 81.986-59.368 135.486 0 101.805 82.824 184.628 184.628 184.628s184.626-82.824 184.626-184.628c0.002-53.998-23.304-102.654-60.382-136.446z" horiz-adv-x="403" />
|
159 |
+
<glyph unicode="" d="M419.541 224c0 115.884-93.936 209.804-209.804 209.804s-209.804-93.92-209.804-209.804c0-115.868 93.936-209.804 209.805-209.804 115.867 0 209.804 93.937 209.804 209.804zM16.715 224c0 106.435 86.594 193.020 193.020 193.020 106.442 0 193.020-86.585 193.020-193.020s-86.578-193.020-193.020-193.020c-106.427 0-193.020 86.586-193.020 193.020zM299.934 236.736l11.868 11.868-102.065 102.058-102.052-102.058 11.87-11.868 81.791 81.799v-203.632h16.782v203.632z" horiz-adv-x="420" />
|
160 |
+
<glyph unicode="" d="M302.118 224c0 83.43-67.629 151.060-151.059 151.060s-151.060-67.628-151.060-151.060c0-83.43 67.629-151.060 151.060-151.060s151.059 67.63 151.059 151.060zM151.060 89.724c-74.038 0-134.274 60.238-134.274 134.276s60.237 134.275 134.274 134.275c74.038 0 134.274-60.237 134.274-134.275s-60.237-134.275-134.274-134.275zM352.471 375.060h-128.734c9.769-4.721 18.998-10.343 27.602-16.784h101.132c74.041 0 134.274-60.236 134.274-134.275s-60.236-134.275-134.274-134.275h-101.132c-8.606-6.442-17.834-12.063-27.602-16.784h128.734c83.43 0 151.060 67.63 151.060 151.060s-67.63 151.060-151.060 151.060z" horiz-adv-x="504" />
|
161 |
+
<glyph unicode="" d="M216.555 189.514l250.438-1.902-14.39 14.466c-1.067 1.067-106.788 104.5-248.242 5.35l-44.877 65.916c5.689 4.728 10.606 10.597 14.31 17.534 15.276 28.639 4.441 64.216-24.178 79.484-28.636 15.276-64.22 4.454-79.48-24.176-15.276-28.626-4.459-64.207 24.177-79.488 16.374-8.728 34.994-8.892 50.829-2.114l39.518-58.042-67.597 0.51c-2.228 18.406-13.064 35.46-30.651 44.841-28.636 15.272-64.204 4.446-79.48-24.19-15.277-28.618-4.458-64.202 24.177-79.479 28.619-15.26 64.22-4.442 79.48 24.178 3.082 5.755 5.032 11.786 6.066 17.866l78.464-0.591c-1.904-41.96 5.671-75.399 18.078-102.18h-28.57v-16.784h50.352v8.392h1.049c-0.361 0.606-0.689 1.279-1.049 1.902v6.49h-3.572c-10.802 21.021-18.358 46.993-19.653 79.226l53.958-79.226h-13.95v-16.784h50.354v16.784h-16.113l-69.448 102.019zM406.591 214.396c6.096-3.262 11.442-6.565 15.982-9.673l-189.201 1.452c75.792 44.124 137.373 27.332 173.219 8.221zM102.212 281.508c-20.406 10.891-28.16 36.362-17.276 56.77 10.884 20.414 36.355 28.168 56.778 17.276 20.406-10.884 28.16-36.356 17.26-56.774-10.884-20.416-36.355-28.16-56.761-17.272zM95.786 180.301c-10.884-20.406-36.355-28.144-56.778-17.26-20.407 10.882-28.16 36.354-17.276 56.762 10.9 20.419 36.355 28.168 56.779 17.276 20.407-10.887 28.159-36.356 17.276-56.779zM117.488 87.496h50.353v-16.784h-50.353v16.784zM318.9 87.496h50.353v-16.784h-50.353v16.784zM50.35 87.496h50.353v-16.784h-50.353v16.784zM386.038 87.496h50.351v-16.784h-50.351v16.784z" horiz-adv-x="467" />
|
162 |
+
<glyph unicode="" d="M209.804 299.529c-38.862 0-70.858-29.372-75.038-67.137h-17.276v-16.784h17.276c4.18-37.764 36.174-67.138 75.038-67.138 41.716 0 75.53 33.815 75.53 75.53s-33.814 75.53-75.53 75.53zM209.804 165.255c-29.536 0-53.975 21.93-58.072 50.353h58.072v16.785h-58.072c4.097 28.422 28.538 50.352 58.072 50.352 32.389 0 58.744-26.356 58.744-58.745s-26.356-58.745-58.745-58.745zM50.353 147.421v50.353h-16.784v-67.137h16.784zM50.353 265.961v50.353h-16.784v-67.137h16.784zM67.138 366.666v-285.336h285.334v285.336h-285.334zM335.688 98.118h-251.766v251.766h251.766v-251.766h0zM0.001 417.020v-386.041h419.608v386.041h-419.608zM402.825 47.764h-386.041v352.472h386.042v-352.472h-0.002z" horiz-adv-x="420" />
|
163 |
+
<glyph unicode="" d="M209.766 14.195c115.884 0 209.804 93.936 209.804 209.805s-93.921 209.804-209.804 209.804c-115.868 0-209.804-93.936-209.804-209.804s93.938-209.804 209.804-209.804zM209.766 417.020c106.427 0 193.022-86.594 193.022-193.020 0-106.435-86.594-193.020-193.020-193.020-106.442 0-193.020 86.586-193.020 193.020-0 106.427 86.576 193.020 193.019 193.020zM222.5 133.8l11.868-11.866 102.050 102.067-102.050 102.058-11.868-11.868 81.792-81.798h-203.626v-16.784h203.626z" horiz-adv-x="420" />
|
164 |
+
<glyph unicode="" d="M300.87 184.695l-132.29-132.292-0.065 0.084c-0.492-0.51-0.904-1.067-1.41-1.558-34.356-34.354-90.264-34.354-124.621 0-33.355 33.356-34.224 86.957-2.819 121.49l17.654-17.637 27.88 27.865c37.421-17.849 83.544-11.392 114.541 19.603l47.487 47.472 11.867-11.868 11.868 11.868-47.486 47.468 71.217 71.211-11.868 11.867-71.219-71.21-47.469 47.476 71.202 71.211-11.85 11.875-71.22-71.219-47.466 47.476-11.868-11.867 11.868-11.868-47.486-47.476c-30.996-30.995-37.454-77.119-19.587-114.548l-27.881-27.869 17.948-17.964c-37.946-41.092-37.077-105.327 2.82-145.224 40.895-40.912 107.459-40.912 148.354 0l133.768 133.767c29.306 29.308 77.004 29.308 106.327 0l11.868 11.868c-35.863 35.851-94.216 35.851-130.064-0zM69.186 332.799l47.484 47.469 118.671-118.68-47.468-47.471c-32.718-32.718-85.956-32.718-118.688 0-32.717 32.719-32.717 85.957-0.001 118.682zM46.517 215.18c3.228-4.522 6.752-8.884 10.801-12.932 4.065-4.064 8.424-7.589 12.932-10.8l-12.932-12.932-23.734 23.735 12.934 12.93z" horiz-adv-x="431" />
|
165 |
+
<glyph unicode="" d="M0 315.462l8.081-5.752c1.427-1.017 14.72-9.934 41.666-9.934 4.328 0 8.802 0.246 13.374 0.705 60.025-69.53 102.574-119.556 112.966-132.783-19.636-43.764-22.718-92.921-8.589-138.98l4.097-13.342 122.081 122.096 132.948-132.947 11.866 11.868-132.947 132.948 122.097 122.096-13.342 4.082c-45.272 13.882-95.772 10.75-138.98-8.59-13.195 10.375-63.072 52.795-132.472 112.706 1.754 10.704 3.688 34.93-9.196 55.058l-5.638 8.786-128.012-128.016zM27.668 319.38l96.511 96.526c6.162-17.948 1.442-37.109 1.376-37.339l-1.278-5.032 3.916-3.425c118.54-102.363 138.095-118.246 143.864-120.737l-0.034-0.097 3.115-0.934 2.967 1.393c36.11 17.261 78.447 22.046 117.49 13.375l-215.704-215.69c-8.802 39.519-4.197 80.726 13.391 117.474l1.672 3.491-1.571 3.541-0.492-0.212c-5.148 10.113-29.291 38.074-119.966 143.108l-2.966 3.442-4.508-0.607c-5.41-0.721-10.687-1.098-15.703-1.098-9.524-0.002-16.85 1.326-22.080 2.817z" horiz-adv-x="439" />
|
166 |
+
<glyph unicode="" d="M33.574 385.55c20.948 20.947 48.796 32.486 78.431 32.486v0c29.633 0 57.483-11.539 78.43-32.486l224.558-224.572c29.913-29.914 29.913-78.612 0-108.526-14.49-14.506-33.767-22.486-54.272-22.486-20.504 0-39.78 7.982-54.268 22.486l-99.151 99.134 0.082 0.080-118.507 118.524c-8.047 8.032-12.474 18.736-12.474 30.094 0 11.375 4.426 22.062 12.474 30.11 8.032 8.031 18.718 12.474 30.094 12.474 11.375 0 22.063-4.442 30.095-12.474l189.938-189.922-11.868-11.868-189.94 189.922c-9.736 9.736-26.716 9.736-36.453 0-4.868-4.868-7.556-11.342-7.556-18.242 0-6.885 2.688-13.36 7.556-18.228l217.574-217.738c11.324-11.342 26.374-17.57 42.403-17.57 16.014 0 31.078 6.229 42.404 17.57 23.374 23.375 23.374 61.416 0 84.792l-224.555 224.572c-17.786 17.784-41.42 27.569-66.564 27.569-25.144 0-48.78-9.785-66.564-27.569s-27.586-41.42-27.586-66.564c0-25.144 9.802-48.796 27.586-66.582l196.823-196.821-11.868-11.868-196.822 196.825c-20.964 20.964-32.504 48.812-32.504 78.447s11.54 57.483 32.504 78.432z" horiz-adv-x="439" />
|
167 |
+
<glyph unicode="" d="M100.707 253.373h201.413v-16.784h-201.412v16.784zM100.707 186.236h201.413v-16.784h-201.412v16.784zM100.707 119.090h134.274v-16.786h-134.274v16.786zM251.012 421.216c-4 23.804-24.654 41.962-49.599 41.962-24.939 0-45.593-18.158-49.598-41.962h-151.816v-436.394h402.824v436.394h-151.811zM167.845 382.685v30.139c0 18.51 15.063 33.57 33.57 33.57 18.514 0 33.57-15.060 33.57-33.57v-30.142l8.488-4.827c16.482-9.38 29.119-23.636 36.372-40.56h-156.845c7.251 16.928 19.889 31.18 36.372 40.56l8.474 4.832zM386.040 1.606h-369.256v402.825h134.275v-11.989c-26.201-14.916-45.19-41.064-50.352-71.932h201.412c-5.148 30.872-24.144 57.015-50.352 71.932v11.989h134.274v-402.825z" horiz-adv-x="403" />
|
168 |
+
<glyph unicode="" d="M327.296 190.432v41.972h-117.49v25.172h75.53v167.824h-167.844v-167.824h75.53v-25.172h-117.492v-41.973h-75.53v-167.836h167.843v167.836h-75.528v25.192h218.197v-25.192h-75.53v-167.837h167.846v167.837h-75.531zM134.274 408.616h134.276v-134.255h-134.276v134.255zM151.058 39.38h-134.274v134.267h134.275l-0.001-134.267zM386.040 39.38h-134.274v134.267h134.274v-134.267z" horiz-adv-x="403" />
|
169 |
+
<glyph unicode="" d="M388.795 406.53l-11.868 11.868-114.279-114.294v93.15l-122.998-98.035h-95.182v-75.882l-0.050-0.041 0.050-0.048v-75.088h62.22l-106.689-106.688 11.867-11.868 118.556 118.556h0.426l16.047 16.039-0.246 0.188 99.231 99.231v-0.427l16.786 16.785v0.426l126.128 126.129zM61.252 164.943v117.49h84.282l100.329 79.972v-63.188l0.016-11.884-122.407-122.391h-62.22zM245.882 164.943h-0.018v-78.414l-85.675 67.236-11.95-11.957 114.409-89.782v96.132h0.017v108.082l-16.784-16.785z" horiz-adv-x="389" />
|
170 |
+
<glyph unicode="" d="M217.721 275.48c10.226 24.312 42.433 102.128 42.433 118.625v64.876h-218.195v-64.875c0-16.538 31.995-94.83 41.978-118.851-49.699-24.734-83.939-75.889-83.939-135.176 0-83.43 67.628-151.060 151.060-151.060 83.43 0 151.060 67.628 151.060 151.060-0 59.464-34.454 110.762-84.397 135.401zM58.744 394.106v48.091h83.626v-114.827h16.784v114.827h84.219v-48.091c0-9.2-20.588-63.36-41.108-112.062-16.014 5.778-33.208 9.089-51.206 9.089-18.178 0-35.535-3.381-51.68-9.268-17.44 41.978-40.634 102.12-40.634 112.242zM151.059 5.803c-74.038 0-134.275 60.236-134.275 134.276 0 74.038 60.237 134.27 134.275 134.27 74.038 0 134.275-60.234 134.275-134.27 0-74.038-60.238-134.276-134.275-134.276zM151.059 240.78c-55.614 0-100.707-45.087-100.707-100.701 0-55.625 45.092-100.708 100.707-100.708 55.631 0 100.706 45.084 100.706 100.708-0 55.615-45.076 100.702-100.706 100.702zM151.059 56.156c-46.272 0-83.922 37.651-83.922 83.923 0 46.271 37.65 83.916 83.922 83.916 46.288 0 83.922-37.646 83.922-83.916 0-46.272-37.634-83.923-83.923-83.923z" horiz-adv-x="302" />
|
171 |
+
<glyph unicode="" d="M436.394 229.794c0 20.612-16.325 36.511-37.98 36.511h-136.57c8.721 20.234 24.39 62.704 24.39 106.541 0 50.042-25.111 60.544-46.175 60.544-13.064 0-31.928-9.896-31.928-27.79 0-7.548-1.196-74.731-42.222-109.152-43.716-36.666-56.139-46.255-80.087-46.255-27.93 0-77.546-0.614-77.546-0.614l-8.277-0.106v-195.299h91.396c5.933 0 23.734-7.932 39.453-14.916 25.947-11.556 55.336-24.652 75.137-24.652l131.995 0.050c21.488 0 38.98 16.899 38.98 37.666 0 8.458-3.017 16.195-7.902 22.486 15.752 4.507 27.375 18.882 27.375 36.060 0 8.63-3.033 16.498-7.933 22.868 15.49 4.95 26.832 19.317 26.832 36.435 0 8.606-2.95 16.49-7.752 22.9 16.503 4.13 28.815 18.964 28.815 36.724zM398.416 208.608h-29.159v-16.784h7.638c11.932 0 21.652-9.712 21.652-21.652 0-11.932-9.72-21.644-21.652-21.644h-24.423v-16.786h6.312c11.507 0 20.866-9.368 20.866-20.875 0-11.522-9.36-20.88-20.866-20.88h-23.092v-16.786h2.292c12.23 0 22.194-9.375 22.194-20.88 0-11.522-9.964-20.882-22.194-20.882h-21.438v-0.050h-110.558c-16.227 0-45.108 12.868-68.319 23.193-22.799 10.146-37.224 16.375-46.272 16.375h-74.611v161.935c15.276 0.172 48.206 0.516 69.040 0.516 31.043 0 47.336 13.671 90.871 50.18 45.894 38.495 48.221 108.39 48.221 122.012 0 6.848 10.508 11.006 15.146 11.006 8.787 0 29.388 0 29.388-43.76 0-55.303-27.912-110.558-28.191-111.115l-6.244-12.21h102.82c0.296-0.214 0.476 0 0.476 0h60.106c12.277 0 21.192-8.507 21.192-19.727-0.002-11.68-9.509-21.187-21.195-21.187z" horiz-adv-x="437" />
|
172 |
+
<glyph unicode="" d="M209.82 433.8c-115.884 0-209.82-93.933-209.82-209.8s93.936-209.804 209.82-209.804c115.868 0 209.79 93.937 209.79 209.804s-93.921 209.801-209.79 209.801zM209.82 30.979c-106.442 0-193.036 86.594-193.036 193.021 0 106.43 86.594 193.016 193.036 193.016 106.428 0 193.006-86.585 193.006-193.016-0-106.428-86.579-193.020-193.006-193.020zM197.084 314.196l-11.865 11.867-102.066-102.062 102.066-102.066 11.865 11.866-81.806 81.808h203.624v16.785h-203.624z" horiz-adv-x="420" />
|
173 |
+
<glyph unicode="" d="M109.099 383.452h16.784v-67.138h-16.784v67.138zM234.982 333.099c0 64.892-52.615 117.49-117.49 117.49-64.892 0-117.492-52.599-117.492-117.49 0-49.976 31.259-92.56 75.268-109.541v-226.147h83.922v58.483l25.438 25.438-25.438 25.438v33.043l42.222 42.224-41.567 41.57c43.928 17.014 75.138 59.565 75.138 109.492zM153.78 239.26l-11.375-4.393v-17.556l35.256-35.274-35.257-35.272v-46.944l18.472-18.49-18.472-18.488v-48.649h-50.354v220.884l-10.752 4.148c-39.191 15.113-64.514 51.959-64.514 93.872 0 55.532 45.174 100.706 100.707 100.706 55.516 0 100.708-45.173 100.708-100.706-0-41.863-25.292-78.694-64.418-93.839z" horiz-adv-x="235" />
|
174 |
+
<glyph unicode="" d="M348.161 276.394c-32.041 0-65.513-28.962-104.786-33.077v16.736c0.23 41.108 31.029 83.48 82.495 83.48h9.752c47.354 0 96.052 37.486 101.248 100.706h-16.802c-5.031-52.73-45.288-83.922-84.447-83.922h-9.752c-60.892 0-98.704-51.534-99.246-99.658h-0.032v-0.639c0-0.131-0.017-0.279-0.017-0.41h0.017v-16.292c-39.256 4.114-72.744 33.078-104.772 33.078-34.502 0-121.817-68.431-121.817-202.56 0-67.924 45.846-70.070 51.681-70.070 0.394 0 0.606 0 0.606 0 28.471 0 54.746 13.687 87.594 46.536 32.847 32.847 45.976 41.469 69.793 41.469 9.489 0 20.899 0 24.636 0 0.786 0 1.361 0 1.361 0 3.736 0 15.146 0 24.636 0 23.818 0 36.945-8.623 69.792-41.469 32.847-32.847 59.125-46.536 87.596-46.536 0 0 0.209 0 0.604 0 5.82 0 51.664 2.149 51.664 70.070 0 134.126-87.313 202.56-121.802 202.56zM418.479 20.53l-0.394 0.017h-0.394c-23.899 0-46.55 12.44-75.728 41.617-32.24 32.24-49.712 46.387-81.659 46.387h-50.632c-31.946 0-49.418-14.146-81.661-46.387-29.176-29.176-51.828-41.616-75.726-41.616l0.032 0.048-0.639-0.048c-8.195 0-34.897 3.836-34.897 53.286 0 128.161 83.48 185.776 105.034 185.776 12.669 0 27.702-6.754 43.616-13.899 20.308-9.114 43.32-19.458 69.694-19.671 26.096 0.214 49.106 10.556 69.416 19.671 15.914 7.146 30.945 13.899 43.615 13.899 21.541 0 105.018-57.615 105.018-185.776 0.002-49.45-26.697-53.286-34.697-53.303zM134.343 209.257h-16.786v-33.57h-33.569v-16.784h33.569v-33.568h16.786v33.568h33.566v16.784h-33.566zM310.512 192.521c-13.9 0-25.178-11.262-25.178-25.178 0-13.899 11.277-25.176 25.178-25.176 13.916 0 25.176 11.277 25.176 25.176 0 13.918-11.26 25.178-25.176 25.178zM310.512 158.952c-4.623 0-8.392 3.769-8.392 8.392 0 4.639 3.769 8.394 8.392 8.394 4.638 0 8.392-3.755 8.392-8.394 0-4.623-3.754-8.392-8.392-8.392zM377.65 175.736c-13.901 0-25.178-11.262-25.178-25.178 0-13.901 11.276-25.176 25.178-25.176 13.916 0 25.176 11.276 25.176 25.176 0 13.918-11.26 25.178-25.176 25.178zM377.65 142.168c-4.624 0-8.394 3.77-8.394 8.392 0 4.638 3.769 8.392 8.394 8.392 4.638 0 8.39-3.754 8.39-8.392 0-4.623-3.752-8.392-8.39-8.392z" horiz-adv-x="470" />
|
175 |
+
<glyph unicode="" d="M0 400.236v-352.472h419.61v352.472h-419.61zM67.138 64.548h-50.353v67.137h50.353v-67.137zM67.138 148.47h-50.353v67.138h50.353v-67.138zM67.138 232.388h-50.353v67.138h50.353v-67.137zM67.138 316.31h-50.353v67.138h50.353v-67.138zM335.688 288.339v-223.791h-251.764v318.899h251.764v-95.108zM402.825 64.548h-50.353v67.137h50.353v-67.137zM402.825 148.47h-50.353v67.138h50.353v-67.138zM402.825 232.388h-50.353v67.138h50.353v-67.137zM402.825 316.31h-50.353v67.138h50.353v-67.138zM167.845 291.838v-135.664l117.489 67.822-117.49 67.842zM184.629 262.76l67.138-38.764-67.138-38.762v77.525z" horiz-adv-x="420" />
|
176 |
+
<glyph unicode="" d="M209.804 182.055c23.179 0 41.962 18.784 41.962 41.948 0 23.178-18.785 41.953-41.962 41.953-23.168 0-41.96-18.774-41.96-41.952-0-23.164 18.791-41.949 41.96-41.949zM209.804 249.173c13.882 0 25.178-11.292 25.178-25.168 0-13.87-11.293-25.164-25.178-25.164s-25.177 11.293-25.177 25.165c0 13.875 11.293 25.168 25.177 25.168zM417.945 197.971c1.058 8.539 1.663 17.209 1.663 26.032 0 115.876-93.93 209.804-209.794 209.804v0c-0.010 0-0.010 0-0.010 0-79.57 0-148.79-44.297-184.358-109.573-0.032-0.074-0.082-0.148-0.122-0.221-0.672-1.23-1.278-2.508-1.926-3.754-2.466-4.769-4.803-9.613-6.909-14.587-0.32-0.754-0.598-1.524-0.902-2.287-10.023-24.496-15.588-51.279-15.588-79.381 0-115.872 93.93-209.808 209.805-209.808 104.248 0 190.692 76.055 206.993 175.68 0.443 2.686 0.812 5.39 1.147 8.094zM402.456 212.608c-0.067-1.148-0.173-2.296-0.264-3.426-0.197-2.673-0.452-5.344-0.764-7.984-0.149-1.229-0.303-2.474-0.466-3.704-0.377-2.721-0.82-5.409-1.312-8.098-0.172-0.983-0.328-1.964-0.524-2.95-0.73-3.673-1.541-7.327-2.474-10.932-0.010-0.034-0.017-0.050-0.034-0.082-0.918-3.557-1.966-7.048-3.080-10.508-0.279-0.884-0.592-1.754-0.894-2.639-0.902-2.673-1.86-5.312-2.876-7.918-0.352-0.918-0.712-1.836-1.082-2.753-1.148-2.82-2.352-5.589-3.623-8.326-0.256-0.572-0.5-1.148-0.764-1.705-1.615-3.409-3.32-6.769-5.13-10.064l-100.476 60.68c4.442 9.638 6.99 20.325 6.99 31.63 0 41.805-33.898 75.702-75.709 75.702-0.024 0-0.048-0.008-0.083-0.008-0.032 0-0.065 0.008-0.089 0.008-0.294 0-0.582-0.050-0.876-0.058-2.51-0.032-4.984-0.172-7.426-0.442-0.262-0.032-0.514-0.090-0.779-0.123-14.268-1.745-27.298-7.434-37.978-15.982l-83.287 83.293c16.719 15.342 36.159 27.75 57.484 36.478v-0.008c11.236 4.597 22.996 8.18 35.159 10.613 0.172 0.033 0.351 0.058 0.524 0.090 2.851 0.562 5.72 1.069 8.613 1.504 0.631 0.094 1.27 0.152 1.91 0.242 2.458 0.344 4.932 0.672 7.424 0.922 1.293 0.13 2.623 0.196 3.933 0.299 1.861 0.148 3.713 0.324 5.59 0.418 3.097 0.156 6.22 0.23 9.359 0.238 0.114 0 0.236 0.008 0.361 0.008 96.445 0 176.603-71.112 190.784-163.664 1.467-9.572 2.229-19.382 2.229-29.356-0.002-3.828-0.14-7.627-0.37-11.396zM357.224 99.608c-2.072-2.459-4.204-4.851-6.382-7.195-0.394-0.409-0.795-0.82-1.188-1.23-1.992-2.098-4.026-4.163-6.106-6.163-0.466-0.442-0.934-0.885-1.409-1.327-2.123-2.016-4.293-3.966-6.507-5.868-0.394-0.346-0.795-0.707-1.197-1.048-2.533-2.148-5.114-4.228-7.745-6.244-0.082-0.050-0.154-0.115-0.236-0.18-5.688-4.327-11.622-8.344-17.776-12.031l-55.674 103.245c6.499 4.509 12.211 10.015 17.014 16.276l100.444-60.661c-3.959-5.952-8.245-11.638-12.818-17.098-0.13-0.163-0.278-0.312-0.418-0.474zM272.606 41.536c-2.483-0.868-4.984-1.688-7.507-2.442-0.966-0.293-1.959-0.558-2.934-0.836-2.312-0.654-4.639-1.262-6.982-1.836-1.107-0.262-2.22-0.524-3.336-0.77-2.269-0.509-4.556-0.966-6.859-1.394-1.149-0.212-2.303-0.426-3.458-0.623-2.361-0.394-4.736-0.722-7.123-1.033-1.097-0.132-2.188-0.296-3.286-0.409-2.673-0.296-5.351-0.526-8.047-0.707-0.828-0.048-1.648-0.128-2.476-0.18-3.572-0.196-7.162-0.312-10.786-0.312-103.108 0-187.596 81.25-192.775 183.088-0.172 3.296-0.254 6.594-0.254 9.921 0 3.27 0.090 6.516 0.246 9.744 0.122 2.468 0.336 4.917 0.549 7.36 0.066 0.721 0.099 1.442 0.165 2.148 1.901 18.932 6.572 37.060 13.556 53.992 0.017 0.091 0.041 0.172 0.066 0.254 8.711 21.079 21.038 40.289 36.224 56.852l83.29-83.291c-9.269-11.58-15.17-25.938-16.319-41.625-0.139-1.803-0.286-3.597-0.286-5.434 0-0.025 0.008-0.057 0.008-0.090s-0.008-0.058-0.008-0.082c0-41.81 33.896-75.708 75.701-75.708 9.998 0 19.506 1.985 28.242 5.491l55.696-103.313c-6.197-3-12.58-5.688-19.12-8.032-0.717-0.257-1.464-0.488-2.184-0.733zM268.55 224.004c0-32.393-26.347-58.732-58.745-58.732-32.364 0-58.688 26.291-58.736 58.642 0.048 32.422 26.404 58.778 58.826 58.827 32.348-0.049 58.655-26.374 58.655-58.738z" horiz-adv-x="420" />
|
177 |
+
<glyph unicode="" d="M299.563 131.392c-18.408 7.688-62.139 22.766-89.038 30.708-2.293 0.721-2.654 0.837-2.654 10.382 0 7.884 3.244 15.826 6.408 22.546 3.427 7.302 7.49 19.579 8.95 30.594 4.081 4.737 9.636 14.080 13.21 31.888 3.13 15.695 1.672 21.406-0.41 26.766-0.212 0.566-0.444 1.123-0.607 1.68-0.786 3.679 0.294 22.8 2.984 37.634 1.852 10.178-0.476 31.822-14.489 49.731-8.85 11.317-25.782 25.209-56.71 27.142l-16.965-0.016c-30.404-1.917-47.353-15.809-56.206-27.126-14.014-17.908-16.341-39.552-14.488-49.722 2.704-14.842 3.769-33.962 3-37.568-0.164-0.632-0.394-1.189-0.624-1.754-2.066-5.36-3.54-11.072-0.394-26.766 3.558-17.809 9.114-27.152 13.212-31.888 1.442-11.014 5.508-23.292 8.95-30.594 2.508-5.344 3.688-12.613 3.688-22.89 0-9.548-0.361-9.662-2.508-10.342-27.816-8.212-72.087-24.209-88.594-31.438-13.080-5.615-16.276-15.687-16.276-24.776s0-36.019 0-41.961c0-5.94 3.524-16.088 16.276-16.088 9.802 0 88.282 0 123.931 0 10.686 0 17.57 0 17.57 0h3.066c0 0 7 0 17.833 0 35.797 0 114.163 0 123.95 0 12.736 0 16.276 10.147 16.276 16.088s0 32.874 0 41.961-6.276 20.195-19.339 25.808zM302.020 64.32h-285.236v41.264c0 5.090 1.491 7.368 6.229 9.4 15.883 6.959 59.86 22.819 86.921 30.817 14.228 4.508 14.228 17.127 14.228 26.34 0 12.81-1.672 22.349-5.293 30.046-2.754 5.849-6.278 16.358-7.49 25.619l-0.656 4.99-3.294 3.811c-1.802 2.082-6.326 8.613-9.441 24.206-2.442 12.15-1.361 14.958-0.492 17.214 0.492 1.213 0.951 2.43 1.294 3.786l0.097 0.356 0.067 0.356c1.689 7.918-0.59 31.397-2.903 44.084-1.066 5.839 0.278 22.414 11.212 36.375 6.671 8.548 19.653 19.042 43.534 20.68l15.867 0.017c19.506-1.324 34.322-8.286 44.042-20.702 10.918-13.958 12.244-30.537 11.18-36.397-2.361-13.018-4.59-36.109-2.869-44.132l0.132-0.624 0.18-0.606c0.244-0.856 0.556-1.721 0.884-2.582l0.165-0.414v-0.024c0.951-2.446 2.031-5.216-0.394-17.387-3.13-15.58-7.671-22.141-9.474-24.234l-3.263-3.794-0.654-4.958c-1.231-9.253-4.755-19.792-7.508-25.653-3.95-8.408-8-18.514-8-29.692 0-9.228 0-21.866 14.686-26.479 26.258-7.753 69.514-22.661 87.167-30.038 6.688-2.868 9.18-7.892 9.18-10.384l-0.099-41.262zM372.731 240.554l43.878 43.874-11.882 11.868-43.863-43.875-43.88 43.875-11.866-11.868 43.878-43.875-43.879-43.878 11.866-11.868 43.88 43.874 43.878-43.874 11.866 11.868z" horiz-adv-x="417" />
|
178 |
+
<glyph unicode="" d="M0 224c0-115.884 93.936-209.804 209.805-209.804 115.868 0 209.804 93.921 209.804 209.804 0 115.868-93.936 209.804-209.805 209.804-115.868 0-209.804-93.936-209.804-209.804zM402.825 224c0-106.435-86.594-193.020-193.022-193.020-106.442 0-193.020 86.586-193.020 193.020s86.578 193.020 193.020 193.020c106.428 0 193.022-86.586 193.022-193.020zM119.605 211.264l-11.868-11.866 102.066-102.058 102.052 102.058-11.868 11.866-81.791-81.799v203.634h-16.784v-203.634z" horiz-adv-x="420" />
|
179 |
+
<glyph unicode="" d="M299.562 131.392c-18.406 7.688-62.138 22.766-89.037 30.708-2.293 0.721-2.654 0.837-2.654 10.382 0 7.884 3.246 15.826 6.41 22.546 3.424 7.302 7.488 19.579 8.948 30.594 4.082 4.737 9.639 14.080 13.21 31.888 3.13 15.695 1.672 21.406-0.41 26.766-0.212 0.566-0.44 1.123-0.605 1.68-0.788 3.679 0.293 22.8 2.983 37.634 1.851 10.178-0.476 31.822-14.489 49.731-8.85 11.317-25.782 25.209-56.712 27.142l-16.965-0.016c-30.404-1.917-47.352-15.809-56.204-27.126-14.014-17.908-16.342-39.552-14.489-49.722 2.704-14.842 3.77-33.962 2.999-37.568-0.164-0.632-0.394-1.189-0.623-1.754-2.066-5.36-3.54-11.072-0.394-26.766 3.556-17.809 9.114-27.152 13.212-31.888 1.442-11.014 5.507-23.292 8.95-30.594 2.507-5.344 3.688-12.613 3.688-22.89 0-9.548-0.361-9.662-2.508-10.342-27.816-8.212-72.088-24.209-88.594-31.438-13.082-5.614-16.277-15.686-16.277-24.774s0-36.019 0-41.961c0-5.94 3.524-16.088 16.276-16.088 9.802 0 88.282 0 123.932 0 10.686 0 17.57 0 17.57 0h3.067c0 0 6.999 0 17.834 0 35.798 0 114.162 0 123.95 0 12.736 0 16.276 10.147 16.276 16.088s0 32.874 0 41.961-6.278 20.194-19.341 25.808zM302.021 64.32h-285.236v41.264c0 5.090 1.476 7.368 6.212 9.4 15.899 6.959 59.86 22.819 86.936 30.817 14.228 4.508 14.228 17.127 14.228 26.34 0 12.81-1.689 22.349-5.294 30.046-2.754 5.849-6.278 16.358-7.49 25.619l-0.654 4.99-3.294 3.811c-1.803 2.082-6.328 8.613-9.442 24.206-2.442 12.15-1.361 14.958-0.492 17.214 0.492 1.213 0.934 2.43 1.296 3.786l0.082 0.356 0.082 0.356c1.688 7.918-0.591 31.397-2.903 44.084-1.066 5.839 0.278 22.414 11.195 36.375 6.688 8.548 19.67 19.042 43.55 20.68l15.866 0.017c19.506-1.324 34.322-8.286 44.026-20.702 10.916-13.958 12.262-30.537 11.196-36.397-2.361-13.018-4.59-36.109-2.886-44.132l0.131-0.624 0.18-0.606c0.263-0.856 0.572-1.721 0.903-2.582l0.148-0.414 0.016-0.024c0.952-2.446 2.034-5.216-0.392-17.387-3.131-15.58-7.672-22.141-9.476-24.234l-3.262-3.794-0.672-4.958c-1.214-9.253-4.736-19.792-7.488-25.653-3.952-8.408-7.999-18.514-7.999-29.692 0-9.228 0-21.866 14.684-26.479 26.26-7.753 69.514-22.661 87.168-30.038 6.686-2.868 9.18-7.892 9.18-10.384l-0.099-41.262zM369.256 248.947v66.961h-16.784v-66.961h-66.974v-16.785h66.974v-66.956h16.784v66.957h66.956v16.785z" horiz-adv-x="436" />
|
180 |
+
<glyph unicode="" d="M0 428.8v-409.6h460.8v409.6h-460.8zM17.067 411.733h42.666v-375.466h-42.666v375.466zM443.733 36.267h-366.933v375.466h366.933v-375.466zM264.534 61.866c89.6 0 162.134 72.534 162.134 162.134s-72.534 162.134-162.134 162.134c-89.6 0-162.133-72.534-162.133-162.134s72.534-162.134 162.133-162.134zM264.534 369.067c80.214 0 145.067-64.853 145.067-145.067s-64.853-145.067-145.067-145.067c-80.214 0-145.066 64.853-145.066 145.067s64.853 145.067 145.066 145.067zM264.534 172.8c28.16 0 51.2 23.040 51.2 51.2s-23.040 51.2-51.2 51.2c-28.16 0-51.2-23.040-51.2-51.2s23.040-51.2 51.2-51.2zM264.534 258.134c18.774 0 34.134-15.36 34.134-34.134s-15.36-34.134-34.134-34.134-34.133 15.36-34.133 34.134c0 18.774 15.36 34.134 34.133 34.134zM273.067 224c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.821 8.534-8.534z" horiz-adv-x="461" />
|
181 |
+
<glyph unicode="" d="M359.253 358.827l47.786 47.786v-39.253h17.067v68.266h-68.267v-17.067h39.253l-47.786-47.786c-43.52 40.96-100.694 65.707-164.694 65.707-69.974 0-136.534-30.72-182.613-82.774l12.8-11.094c1.707 1.707 3.413 3.413 5.12 5.12l152.747-153.6-57.173-57.173h-42.666l-59.733-59.733h54.614v-54.613l59.733 59.733v42.666l57.173 57.173 152.747-152.746c-1.707-1.707-3.413-3.413-5.12-5.12l11.094-12.8c52.906 46.080 82.774 112.64 82.774 182.613 0.853 64-23.894 122.026-64.853 164.693zM108.374 90.026l-25.6-25.6v30.72h-29.867l25.6 25.6h30.72v-30.72zM29.866 359.68c40.96 38.4 95.573 59.733 152.746 59.733 58.88 0 112.64-23.040 152.747-59.733l-152.746-152.747-152.746 152.746zM347.307 346.88c37.546-40.106 59.733-93.867 59.733-152.746 0-57.173-21.334-110.933-59.733-152.746l-152.746 152.746 152.746 152.746z" horiz-adv-x="425" />
|
182 |
+
<glyph unicode="" d="M85.334 279.466v-283.307h392.534v392.534h-307.2v64l-170.667-116.053 85.334-57.173zM153.6 387.84c0 0 0-0.854 0 0v0-17.067h16.214c0 0 0 0 0.853 0 0 0 0.853 0 0.853 0h0.853c80.213 0 133.12-44.374 156.16-100.694-48.64 40.96-111.786 46.080-142.506 46.080-0.853 0-0.853 0-1.707 0h-30.72v-17.067c0 0 0 0 0 0v-45.226l-122.88 82.774 122.88 83.626v-32.426zM102.4 267.52l68.266-46.080v76.8c3.413 0 8.534 0.853 15.36 0.853 42.666 0 133.974-11.094 172.373-98.133 0 71.68-36.693 139.094-104.96 169.813h207.36v-358.4h-358.4v255.147z" horiz-adv-x="478" />
|
183 |
+
<glyph unicode="" d="M469.334 347.733l-108.373 108.373c-3.413 3.413-7.68 5.12-11.947 5.12s-8.534-1.706-11.947-5.12l-331.947-331.947c-6.827-6.827-6.827-17.067 0-23.894l108.374-108.374c3.413-3.413 7.68-5.12 11.947-5.12s8.533 1.707 11.947 5.12l331.947 331.947c6.827 5.974 6.827 17.067 0 23.894zM240.64 119.040l-108.374 108.374 96.427 96.427 108.374-108.374-96.427-96.427zM125.44 3.84l-108.374 108.373 103.254 103.254 108.374-108.374-103.254-103.254zM349.014 227.413l-108.374 108.374 108.374 108.373c0 0 0 0 0 0v0l108.374-108.373-108.374-108.374zM345.6 372.48c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.821 8.534-8.534zM394.24 323.84c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.821 8.534-8.534zM309.76 335.786c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.82 8.534-8.534zM357.546 288c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.821-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.821 8.534-8.534zM128.853 154.88c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.82 8.534-8.534zM176.64 107.094c0-4.713-3.821-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.821 8.534 8.534 8.534s8.534-3.82 8.534-8.534zM92.16 119.040c0-4.713-3.82-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.82 8.534-8.534zM140.8 70.4c0-4.713-3.821-8.534-8.534-8.534s-8.534 3.82-8.534 8.534c0 4.713 3.82 8.534 8.534 8.534s8.534-3.82 8.534-8.534z" horiz-adv-x="475" />
|
184 |
+
<glyph unicode="" d="M93.867 232.534c-18.773 0-34.133-15.36-34.133-34.134s15.36-34.134 34.133-34.134 34.133 15.36 34.133 34.134-15.36 34.133-34.133 34.133zM93.867 181.334c-9.386 0-17.067 7.68-17.067 17.067s7.68 17.067 17.067 17.067c9.386 0 17.067-7.68 17.067-17.067s-7.68-17.067-17.067-17.067zM366.933 232.534c-18.774 0-34.134-15.36-34.134-34.134s15.36-34.134 34.134-34.134c18.774 0 34.134 15.36 34.134 34.134s-15.36 34.133-34.134 34.133zM366.933 181.334c-9.387 0-17.067 7.68-17.067 17.067s7.68 17.067 17.067 17.067c9.387 0 17.067-7.68 17.067-17.067s-7.68-17.067-17.067-17.067zM401.92 300.8l-14.507 68.267c-5.974 22.186-23.040 34.133-46.080 34.133h-221.867c-23.894 0-37.547-11.946-44.374-34.133l-15.36-68.267h-59.733v-17.066h55.467v-0.854c-26.453-1.707-46.934-23.893-46.934-51.2v-118.613h25.6v-25.6c0-23.894 18.773-42.666 42.666-42.666s42.666 18.774 42.666 42.666v25.6h221.866v-25.6c0-23.894 18.774-42.666 42.666-42.666s42.666 18.774 42.666 42.666v25.6h25.6v118.613c0 26.454-20.48 48.64-46.080 51.2v0.853h54.613v17.066h-58.88zM91.306 363.947c5.12 15.36 12.8 22.186 28.16 22.186h221.866c16.214 0 25.6-6.826 29.866-21.334l17.067-81.92h-315.733l18.773 81.067zM102.4 87.466c0-14.507-11.094-25.6-25.6-25.6s-25.6 11.094-25.6 25.6v25.6h51.2v-25.6zM409.6 87.466c0-14.507-11.094-25.6-25.6-25.6s-25.6 11.094-25.6 25.6v25.6h51.2v-25.6zM435.2 231.68v-101.546h-409.6v101.546c0 18.774 15.36 34.133 34.133 34.133h341.334c18.774 0 34.134-15.36 34.134-34.133z" horiz-adv-x="461" />
|
185 |
+
<glyph unicode="" d="M439.466 309.333l-100.693 119.466h-230.4l-100.694-119.466-7.68-8.534 6.827-8.534 216.746-273.067 223.573 281.6-7.68 8.534zM417.28 309.333h-171.52l85.333 101.547 86.187-101.547zM222.72 309.333l-88.746 102.4h175.786l-87.040-102.4zM114.347 409.173l86.187-99.84h-170.667l84.48 99.84zM215.040 292.267v-234.666l-186.88 234.667h186.88zM232.107 57.6v234.667h186.027l-186.026-234.667z" horiz-adv-x="447" />
|
186 |
+
<glyph unicode="" d="M213.333 437.334c-117.76 0-213.333-95.574-213.333-213.334s95.573-213.333 213.333-213.333c117.76 0 213.333 95.573 213.333 213.333s-95.574 213.333-213.333 213.333zM213.333 27.733c-108.374 0-196.267 87.894-196.267 196.267s87.894 196.267 196.267 196.267c108.374 0 196.267-87.894 196.267-196.267s-87.894-196.267-196.267-196.267zM281.6 275.2c0 37.546-30.72 68.267-68.267 68.267s-68.267-30.72-68.267-68.267c0-25.6 14.506-48.64 35.84-59.733l-35.84-102.4h136.534l-34.987 102.4c20.48 11.947 34.987 34.133 34.987 59.733zM257.707 130.134h-88.746l27.306 79.36 5.12 13.654-12.8 6.827c-16.214 9.387-26.453 26.453-26.453 45.226 0 28.16 23.040 51.2 51.2 51.2s51.2-23.040 51.2-51.2c0-18.774-10.24-35.84-26.453-44.374l-12.8-6.827 4.267-13.653 28.16-80.214z" horiz-adv-x="427" />
|
187 |
+
<glyph unicode="" d="M395.094 410.88c-13.654 13.654-32.426 20.48-50.346 20.48s-36.694-6.827-50.346-20.48l-61.44-61.44-34.987 34.987-11.946-11.947 40.96-40.96-185.173-184.32c-22.186-22.187-24.747-58.026-5.974-82.774l-35.84-35.84 11.947-11.947 35.84 35.84c11.093-8.534 24.746-12.8 38.4-12.8 16.213 0 32.427 5.974 44.374 18.774l185.173 184.32 38.4-38.4 11.947 11.947-33.28 33.28 61.44 61.44c28.16 27.306 28.16 71.68 0.853 99.84zM118.614 69.546c-8.534-8.534-20.48-13.654-32.426-13.654s-23.894 5.12-32.426 13.654c-17.92 17.92-17.92 46.933 0 64.853l185.173 185.173 64.854-64.853-185.173-185.173zM321.707 260.693l-76.8 76.8 61.44 61.44c10.24 10.24 23.894 16.214 38.4 16.214s28.16-5.974 38.4-16.214c10.24-10.24 16.214-23.894 16.214-38.4s-5.974-28.16-16.214-38.4l-61.44-61.44z" horiz-adv-x="416" />
|
188 |
+
<glyph unicode="" d="M248.32 197.546c57.173 57.173 57.173 148.48 0 205.654-28.16 28.16-65.707 42.666-102.4 42.666-37.547 0-75.094-13.654-103.254-42.666-57.173-57.173-57.173-148.48 0-205.654 26.453-26.454 59.733-40.106 93.867-41.813v-68.267h-68.266v-17.067h68.266v-68.267h17.066v68.267h68.267v17.067h-68.267v68.267c34.133 1.707 68.267 16.214 94.72 41.813zM54.614 391.254c23.894 24.746 56.32 37.546 90.454 37.546s66.56-13.654 90.454-37.546c50.346-50.346 50.346-131.413 0-181.76-23.893-23.894-56.32-36.693-90.454-36.693s-66.56 13.654-90.454 37.546c-50.346 49.493-50.346 131.413 0 180.906z" horiz-adv-x="291" />
|
189 |
+
<glyph unicode="" d="M512 232.534h-50.346v102.4h-51.2v42.667h-68.267v-145.067h-170.667v145.067h-68.266v-42.667h-51.2v-102.4h-52.053v-17.066h52.053v-102.4h51.2v-42.666h68.266v145.066h170.667v-145.067h68.267v42.666h51.2v102.4h50.346v17.066zM69.12 130.134v187.733h34.133v-187.733h-34.133zM154.453 87.466h-34.133v273.067h34.133v-273.067zM393.387 87.466h-34.133v273.067h34.134v-273.067zM444.587 130.134h-34.134v187.733h34.134v-187.733z" />
|
190 |
+
<glyph unicode="" d="M455.68 247.040l-11.947-12.8-199.68 199.68 12.8 11.947-11.947 11.947-12.8-11.947-128.853-129.707 11.947-11.947 8.534 8.534 93.866-93.866-217.6-216.746 11.947-11.947 217.6 217.6 93.867-93.866-8.534-8.534 11.947-11.947 141.654 141.654-12.8 11.947zM334.507 125.866l-29.866 29.866 96.426 97.28 29.866-29.867-96.427-97.28zM292.693 168.534l-114.346 114.346 96.427 96.427 114.346-114.347-96.427-96.426zM232.107 421.974l29.867-29.867-95.573-97.28-29.867 29.866 95.573 97.28z" horiz-adv-x="468" />
|
191 |
+
<glyph unicode="" d="M426.666 249.6c0 117.76-95.574 213.333-213.333 213.333s-213.333-95.573-213.333-213.333v-87.040h0.854c0-2.56 0-5.12 0-6.827 0-56.32 45.227-102.4 101.546-102.4v0 204.8h-0.853c-35.84 0-66.56-17.92-84.48-46.080v37.547c0 108.374 87.894 196.266 196.267 196.266s196.267-87.893 196.267-196.266v-37.547c-17.92 27.306-49.493 46.080-84.48 46.080h-0.853v-204.8h0.853c8.534 0 16.214 0.853 24.747 3.413-25.6-24.747-57.173-41.813-93.013-50.346v29.866h-86.186v-51.2h85.333v3.413c54.613 11.094 101.546 42.666 132.267 87.040 23.040 18.774 38.4 47.786 38.4 80.214 0 2.56 0 5.12 0 6.827v0 87.040zM85.334 239.36v-167.254c-38.4 7.68-68.266 42.666-68.266 83.626s29.867 75.947 68.266 83.626zM238.934 2.134h-51.2v17.067h51.2v-17.067zM341.334 72.106v167.254c39.253-7.68 68.267-42.667 68.267-83.626s-29.014-75.947-68.267-83.627z" horiz-adv-x="427" />
|
192 |
+
<glyph unicode="" d="M494.933 215.466v17.066h-59.733c-1.707 46.080-19.627 87.040-48.64 119.467l42.666 42.666-11.947 11.946-42.666-42.666c-31.574 29.014-72.534 46.934-117.76 48.64v58.88h-17.066v-58.88c-45.227-1.707-86.186-20.48-117.76-48.64l-42.666 42.666-11.947-11.946 42.666-42.666c-29.867-32.427-48.64-73.387-50.346-119.467h-59.733v-17.066h59.733c2.56-45.226 20.48-86.187 48.64-116.906l-42.666-42.666 11.947-11.947 42.666 42.666c31.574-29.014 72.533-46.933 117.76-48.64v-61.44h17.066v60.587c45.226 1.707 87.040 20.48 117.76 48.64l42.666-42.666 11.947 11.947-42.666 42.666c28.16 31.574 46.933 71.68 48.64 116.906h61.44zM418.134 232.534h-102.4c-1.707 12.8-6.827 24.746-14.507 34.134l72.534 72.534c25.6-28.16 41.813-65.707 44.373-106.667zM247.466 172.8c-28.16 0-51.2 23.040-51.2 51.2s23.040 51.2 51.2 51.2c28.16 0 51.2-23.040 51.2-51.2s-23.040-51.2-51.2-51.2zM361.813 351.147l-73.387-73.387c-9.387 6.827-20.48 11.947-32.426 13.654v104.106c40.96-2.56 77.654-18.774 105.813-44.373zM238.934 395.52v-103.253c-11.946-1.707-23.040-5.974-32.427-13.654l-73.387 73.387c28.16 24.746 64.853 40.96 105.814 43.52zM121.174 339.2l72.533-72.534c-7.68-9.387-12.8-21.334-14.506-34.133h-102.4c2.56 40.96 18.773 78.506 44.374 106.667zM77.653 215.466h102.4c1.707-11.947 5.974-23.040 13.654-32.426l-71.68-71.68c-26.453 27.307-42.666 64-44.374 104.106zM133.12 98.56l71.68 71.68c9.387-7.68 21.334-12.8 34.133-14.507v-101.546c-40.96 2.56-77.653 18.774-105.814 44.373zM256 55.040v101.546c12.8 1.707 24.747 6.827 34.134 14.507l71.68-71.68c-28.16-26.454-64.853-42.666-105.814-44.373zM373.76 110.507l-71.68 71.68c6.827 9.387 11.947 20.48 13.654 32.426h102.4c-2.56-39.253-18.774-75.947-44.373-104.106z" horiz-adv-x="495" />
|
193 |
+
<glyph unicode="" d="M255.147 318.72v101.546h43.52v17.066h-298.666v-17.066h42.666v-101.546c0-28.16 11.093-62.293 86.187-98.987-64-30.72-86.186-58.026-86.186-103.253v-88.746h-42.666v-17.067h298.666v17.067h-43.52v88.746c0 45.226-22.186 72.534-86.186 104.106 75.094 35.84 86.186 69.974 86.186 98.134zM238.080 116.48v-88.746h-178.346v88.746c0 35.84 14.507 60.587 89.6 94.72 74.24-34.986 88.746-59.733 88.746-94.72zM148.48 229.12c-78.507 35.84-88.746 65.707-88.746 89.6v101.546h178.346v-101.546c0-23.894-11.094-53.76-89.6-89.6z" horiz-adv-x="299" />
|
194 |
+
<glyph unicode="" d="M273.067 212.906c0 114.346-76.8 197.974-136.534 267.094-59.733-69.12-136.534-152.746-136.534-267.094 0-107.52 79.36-135.68 128-151.040v-93.866h17.066v93.866c48.64 15.36 128 43.52 128 151.040zM145.066 79.786v66.56l53.76 53.76-11.946 11.947-41.814-41.813v173.226h-17.067v-81.92l-44.373 44.373-11.947-11.946 56.32-56.32v-157.866c-46.934 15.36-110.933 41.813-110.933 133.12 0 99.84 62.294 174.933 119.467 240.64 57.173-65.707 119.466-140.8 119.466-240.64 0-91.307-64-117.76-110.933-133.12z" horiz-adv-x="273" />
|
195 |
+
<glyph unicode="" d="M-0.113 28.229l222.651 222.651 12.068-12.068-222.651-222.652-12.068 12.068zM159.573 312.746h68.266v-17.066h-68.267v17.066zM347.307 312.746h68.267v-17.066h-68.267v17.066zM279.040 244.48h17.067v-68.266h-17.067v68.267zM279.040 432.214h17.067v-68.267h-17.067v68.267zM383.854 388.529l-48.278-48.264-12.066 12.070 48.278 48.264 12.066-12.070zM371.935 207.325l-48.278 48.264 12.066 12.070 48.278-48.264-12.066-12.070zM239.773 340.148l-48.278 48.264 12.066 12.069 48.278-48.264-12.066-12.069z" horiz-adv-x="416" />
|
196 |
+
<glyph unicode="" d="M236.374 388.693l3.413-16.213 130.56 29.866-128.853-129.707c-25.6 23.040-58.88 36.693-96.427 36.693-80.213 0-145.066-64.853-145.066-145.066s64.853-145.066 145.066-145.066c80.213 0 145.066 64.853 145.066 145.067 0 36.693-13.654 70.827-36.694 96.427l129.706 129.707-30.72-130.56 16.214-4.266 40.96 173.227-173.226-40.107zM145.066 36.267c-70.826 0-128 57.173-128 128s57.173 128 128 128c70.826 0 128-57.173 128-128s-57.173-128-128-128z" horiz-adv-x="410" />
|
197 |
+
<glyph unicode="" d="M256 202.666l-51.2 29.013v104.107c29.013 4.267 51.2 29.013 51.2 58.88 0 33.28-26.453 59.733-59.733 59.733s-59.733-26.453-59.733-59.733c0-29.867 22.186-54.613 51.2-58.88v-93.867l-51.2 29.013-136.534-55.466v-209.067l136.534 55.466 119.466-68.267 136.534 68.267v209.067l-136.534-68.267zM119.466 72.96l-102.4-40.96v172.374l102.4 41.814v-173.227zM153.6 394.666c0 23.894 18.773 42.666 42.667 42.666s42.666-18.773 42.666-42.666c0-23.893-18.774-42.666-42.666-42.666s-42.666 18.774-42.666 42.666zM256 12.373l-119.466 68.267v170.667l51.2-29.013v-75.094h17.066v65.707l51.2-29.014v-171.52zM375.466 72.106l-102.4-51.2v170.666l102.4 51.2v-170.666z" horiz-adv-x="393" />
|
198 |
+
<glyph unicode="" d="M477.866 336.64l-170.667 116.053v-64h-307.2v-392.534h392.534v283.307l85.334 57.173zM324.267 420.267l122.88-82.774-122.88-83.626v45.227c0 0 0 0 0 0v17.066h-30.72c-0.853 0-0.853 0-1.707 0-30.72 0-93.867-5.973-142.506-46.080 23.040 56.32 75.946 100.694 156.16 100.694v0c0 0 0.853 0 0.853 0s0 0 0.853 0h17.067v16.213c0 0 0 0 0 0.853v32.427zM375.466 12.373h-358.4v358.4h207.36c-68.267-29.867-104.96-98.133-104.96-168.96 39.253 87.040 130.56 98.134 172.373 98.134 5.974 0 11.094 0 15.36-0.854v-76.8l68.267 46.080v-256z" horiz-adv-x="478" />
|
199 |
+
<glyph unicode="" d="M357.546 242.774v0l-166.4 167.254-3.413-2.56v4.267c0 28.16-23.040 51.2-51.2 51.2s-51.2-23.040-51.2-51.2v-106.666l-70.826-70.827c-19.627-19.627-19.627-51.2 0-70.827l96.427-96.427c9.386-10.24 23.040-14.507 35.84-14.507s25.6 5.12 35.84 14.507l122.027 122.88h104.96l-52.053 52.906zM102.4 411.733c0 18.774 15.36 34.134 34.133 34.134s34.133-15.36 34.133-34.134v-21.334l-68.266-68.266v89.6zM297.813 206.933l-128-128c-5.974-5.974-14.506-9.387-23.893-9.387-8.534 0-17.066 3.413-23.040 9.387l-96.427 96.427c-12.8 12.8-12.8 34.134 0 46.933l144.214 143.36v-107.52h17.066v124.587l2.56 2.56 178.346-178.346h-70.827zM451.413 48.214c-5.12 46.080-54.613 107.52-54.613 107.52s-50.346-62.293-54.613-108.373c0-2.56 0-4.267 0-6.827 0-30.72 24.747-55.466 55.466-55.466s55.466 24.747 55.466 55.466c-0.853 2.56-0.853 5.12-1.707 7.68zM396.8 2.134c-21.334 0-38.4 17.067-38.4 38.4 0 1.707 0 2.56 0 4.267v0 0c2.56 25.6 22.187 58.88 37.546 81.92 15.36-22.187 34.986-56.32 38.4-81.067 0-1.707 0-3.413 0-5.12 0.853-21.334-16.214-38.4-37.546-38.4z" horiz-adv-x="453" />
|
200 |
+
<glyph unicode="" d="M187.733 317.866v136.534h-136.534v-136.534h-51.2v-277.333c0-25.6 21.334-46.933 46.934-46.933h145.066c25.6 0 46.934 21.334 46.934 46.933v277.334h-51.2zM68.266 437.334h102.4v-119.466h-102.4v119.466zM221.867 40.534c0-16.214-13.654-29.866-29.867-29.866h-145.066c-16.213 0-29.866 13.654-29.866 29.866v260.267h204.8v-260.267zM85.334 411.733h17.067v-42.666h-17.067v42.666zM136.534 411.733h17.066v-42.666h-17.066v42.666z" horiz-adv-x="239" />
|
201 |
+
<glyph unicode="" d="M0 428.8v-409.6h426.666v409.6h-426.666zM17.067 171.094l119.466 125.44 118.614-118.613 59.733 51.2 88.746-90.454h-386.56v32.426zM409.6 36.267h-392.534v85.334h392.534v-85.334zM409.6 156.587l-93.014 96.427-59.733-51.2-120.32 119.466-119.466-125.44v215.893h392.534v-255.146zM315.733 292.267c23.894 0 42.666 18.774 42.666 42.666s-18.774 42.666-42.666 42.666c-23.894 0-42.666-18.773-42.666-42.666s18.774-42.666 42.666-42.666zM315.733 360.534c14.507 0 25.6-11.094 25.6-25.6s-11.094-25.6-25.6-25.6c-14.507 0-25.6 11.094-25.6 25.6s11.094 25.6 25.6 25.6z" horiz-adv-x="427" />
|
202 |
+
<glyph unicode="" d="M444.587 241.066h-9.387c-12.8 33.28-38.4 61.44-72.534 81.92 0 45.226 4.267 55.466 13.654 84.48-34.986-5.12-69.974-26.454-87.894-57.173-11.947 2.56-23.894 3.413-35.84 4.266 1.707 6.827 3.413 14.507 3.413 23.040 0 42.666-34.133 76.8-76.8 76.8s-76.8-34.134-76.8-76.8c0-21.334 8.534-40.106 23.040-54.613-33.28-19.626-58.88-46.933-72.534-79.36-23.040 8.534-35.84 21.334-35.84 37.547 0 17.92 14.507 34.133 27.306 38.4l-5.12 16.214c-21.334-5.974-39.254-29.867-39.254-52.906 0-13.654 5.973-39.254 46.934-54.613-3.413-11.094-4.267-22.187-4.267-34.133 0-42.666 21.334-81.92 55.467-110.933l-10.24-29.866c-6.826-20.48 3.413-41.813 23.894-48.64l23.894-8.534c4.267-1.707 8.534-2.56 12.8-2.56 16.214 0 30.72 10.24 36.694 25.6l6.827 19.627c17.066-3.413 34.133-5.974 52.906-5.974 11.946 0 23.893 0.853 34.987 2.56l10.24-21.334c6.827-13.654 20.48-21.334 34.986-21.334 5.974 0 11.094 0.853 17.067 4.267l22.187 11.094c18.774 9.387 27.307 32.426 17.92 51.2l-5.974 12.8c23.040 15.36 40.96 34.986 53.76 58.026h17.067c23.040 0 41.813 18.774 41.813 41.813v27.306c-2.56 23.040-21.334 41.814-44.373 41.814zM119.466 377.6c0 33.28 26.453 59.733 59.733 59.733s59.733-26.454 59.733-59.733c0-8.534-1.707-16.214-5.12-23.894-34.133-0.853-65.707-9.387-93.013-22.187-12.8 11.094-21.334 27.307-21.334 46.080zM469.334 171.947c0-13.654-11.094-24.747-24.747-24.747h-27.307l-5.12-8.534c-11.094-19.627-27.307-37.546-47.786-52.053l-11.947-8.534 6.827-12.8 5.974-12.8c5.12-10.24 0.853-23.894-10.24-29.014l-22.187-10.24c-2.56-1.707-5.974-2.56-9.387-2.56-8.534 0-15.36 4.267-19.627 11.947l-10.24 21.334-5.12 11.094-12.8-1.707c-11.094-1.707-22.186-2.56-32.427-2.56-16.214 0-33.28 1.707-49.494 5.12l-14.506 3.413-4.267-14.507-6.827-19.627c-3.413-8.534-11.094-14.507-20.48-14.507-2.56 0-5.12 0-6.827 0.853l-23.894 8.534c-11.094 4.267-17.067 16.214-12.8 27.306l10.24 30.72 4.266 11.094-9.386 7.68c-32.426 26.454-49.493 60.587-49.493 97.28 0 78.507 82.774 143.36 183.466 143.36 13.654 0 28.16-1.707 41.813-3.413l11.947-2.56 5.974 10.24c10.24 17.92 28.16 32.426 47.786 40.96-3.413-14.506-5.12-30.72-5.974-59.733v-9.387l8.534-5.12c30.72-18.773 54.613-44.373 65.707-73.386l4.267-11.094h21.334c13.654 0 24.747-11.094 24.747-24.747v-27.307zM375.466 228.267c0-11.782-9.551-21.334-21.334-21.334s-21.334 9.551-21.334 21.334c0 11.782 9.551 21.334 21.334 21.334s21.334-9.552 21.334-21.334z" horiz-adv-x="487" />
|
203 |
+
<glyph unicode="" d="M230.4 326.4c-37.547 0-68.266-18.773-68.266-42.666s30.72-42.666 68.267-42.666c37.546 0 68.267 18.774 68.267 42.666s-30.72 42.666-68.267 42.666zM230.4 258.134c-29.013 0-51.2 13.654-51.2 25.6s22.186 25.6 51.2 25.6 51.2-13.654 51.2-25.6-22.187-25.6-51.2-25.6zM429.226 317.866c4.267 5.12 5.974 11.094 5.974 17.92 0 23.894-30.72 42.666-68.267 42.666-19.627 0-36.693-5.12-48.64-12.8l-22.187 9.386c1.707 3.413 2.56 7.68 2.56 11.947 0 23.894-30.72 42.666-68.267 42.666s-68.267-18.773-68.267-42.666c0-4.267 0.853-7.68 2.56-11.947l-17.066-7.68c-11.946 6.826-28.16 11.093-45.227 11.093-37.546 0-68.266-18.773-68.266-42.666 0-5.12 1.706-10.24 4.267-15.36l-38.4-17.066v-168.96l230.4-98.134 230.4 98.986v168.106l-31.574 14.507zM230.4 212.053l-200.534 86.187 21.334 8.534c12.8-8.534 30.72-14.507 51.2-14.507 37.547 0 68.266 18.774 68.266 42.666 0 6.827-2.56 13.654-7.68 19.626l12.8 5.12c12.8-10.24 32.427-17.066 54.613-17.066s41.813 6.827 54.613 17.067l19.627-8.534c-3.413-5.12-5.974-11.094-5.974-17.066 0-23.894 30.72-42.667 68.267-42.667 18.774 0 35.84 4.267 47.786 11.947l16.214-6.827-200.534-84.48zM418.134 335.786c0-11.947-22.187-25.6-51.2-25.6s-51.2 13.654-51.2 25.6 22.187 25.6 51.2 25.6c29.014 0 51.2-13.654 51.2-25.6zM230.4 411.733c29.013 0 51.2-13.653 51.2-25.6s-22.187-25.6-51.2-25.6-51.2 13.654-51.2 25.6 22.186 25.6 51.2 25.6zM102.4 361.387c29.013 0 51.2-13.654 51.2-25.6s-22.186-25.6-51.2-25.6c-29.014 0-51.2 13.654-51.2 25.6s22.186 25.6 51.2 25.6zM17.067 285.44l204.8-87.894v-139.094l-204.8 87.894v139.094zM238.934 58.454v139.094l204.8 87.894v-139.094l-204.8-87.894z" horiz-adv-x="461" />
|
204 |
+
<glyph unicode="" d="M327.68 182.187l-17.92-125.44 122.026 18.774-47.786 48.64c16.214 29.866 25.6 63.147 25.6 99.84 0 113.494-91.307 204.8-204.8 204.8v-17.067c103.253 0 187.733-84.48 187.733-187.733 0-31.574-7.68-60.587-21.334-87.040l-43.52 45.226zM329.387 77.226l10.24 68.267 56.32-58.026-66.56-10.24zM17.067 224c0 45.226 16.213 86.187 42.666 118.613l52.053-52.906 17.92 125.44-122.026-19.627 39.254-40.96c-29.014-34.987-46.934-81.067-46.934-130.56 0-113.493 91.306-204.8 204.8-204.8v17.067c-103.254 0-187.733 84.48-187.733 187.733zM109.227 393.813l-10.24-68.266-56.32 58.026 66.56 10.24z" horiz-adv-x="431" />
|
205 |
+
<glyph unicode="" d="M170.667 360.534c-23.893 0-42.667-18.774-42.667-42.666s18.774-42.666 42.666-42.666c23.893 0 42.666 18.774 42.666 42.666s-18.774 42.666-42.666 42.666zM170.667 292.267c-14.506 0-25.6 11.094-25.6 25.6s11.094 25.6 25.6 25.6c14.506 0 25.6-11.094 25.6-25.6s-11.094-25.6-25.6-25.6zM256 177.067c0 61.44 0 131.413 0 157.014 0 47.786-31.573 112.64-85.334 145.92-53.76-33.28-85.334-98.134-85.334-146.774 0-25.6 0-95.573 0-157.014l-85.334-105.813h341.333l-85.334 106.666zM85.334 87.466h-49.493l49.493 62.293v-62.293zM238.934 87.466h-136.534v245.76c0 38.4 23.894 93.866 68.266 126.293 44.374-32.426 68.267-87.040 68.267-126.293v-245.76zM256 149.76l49.493-62.293h-49.493c0 14.507 0 36.693 0 62.293zM162.133 53.334h17.066v-85.334h-17.066v85.334zM204.8 53.334h17.066v-51.2h-17.066v51.2zM119.466 53.334h17.066v-51.2h-17.067v51.2z" horiz-adv-x="342" />
|
206 |
+
<glyph unicode="" d="M409.6 184.747l68.267 6.827v64l-68.267 6.827c-4.267 20.48-12.8 39.253-23.040 55.466l38.4 51.2-39.253 39.254-51.2-38.4c-16.214 10.24-34.986 18.773-54.613 23.040l-7.68 68.267h-64l-7.68-68.267c-19.626-4.267-37.547-11.947-53.76-22.187l-52.906 37.547-39.254-39.254 37.547-52.906c-10.24-16.214-17.92-34.134-22.186-53.76l-68.266-7.68v-64l68.266-7.68c4.266-19.627 12.8-38.4 23.040-55.466l-38.4-51.2 39.253-39.254 51.2 38.4c16.214-10.24 34.987-18.774 54.613-23.040l8.534-68.267h64l8.534 68.267c19.627 4.267 37.546 11.947 53.76 22.187l52.053-37.546 39.253 39.254-38.4 53.76c10.24 17.067 17.92 34.986 22.187 54.613zM460.8 241.066v-33.28l-51.2-5.12c0.853 6.827 1.707 14.507 1.707 22.186s-0.853 14.506-1.707 22.186l51.2-5.974zM383.147 387.84l18.774-18.774-28.16-38.4c-8.534 11.093-17.92 20.48-29.014 29.013l38.4 28.16zM221.867 445.866h34.133l5.974-51.2c-7.68 0.853-15.36 1.707-22.186 1.707-7.68 0-15.36-0.853-22.186-1.707l4.267 51.2zM75.094 368.214l19.626 19.627 39.254-27.307c-5.974-4.267-11.094-9.387-16.213-14.506s-10.24-10.24-14.507-16.214l-28.16 38.4zM17.067 206.933v34.133l51.2 5.974c-0.853-7.68-1.707-15.36-1.707-23.040s0.853-15.36 1.707-22.187l-51.2 5.12zM94.72 61.014l-18.773 17.92 28.16 38.4c8.534-10.24 17.92-20.48 28.16-28.16l-37.547-28.16zM256 2.134h-34.133l-5.974 51.2c7.68-0.853 15.36-1.707 23.040-1.707v0 0c7.68 0 15.36 0.853 23.040 1.707l-5.974-51.2zM238.934 69.546c-85.333 0-154.453 69.12-154.453 154.454 0 40.96 16.213 80.214 45.226 109.226s68.267 45.226 109.226 45.226v0c85.334 0 154.453-69.12 154.453-154.453 0-40.96-16.214-80.214-45.226-109.226s-67.413-45.226-109.226-45.226zM402.774 79.786l-18.774-18.774-39.254 28.16c5.974 4.267 11.094 9.387 16.214 14.507s9.387 10.24 14.507 16.214l27.307-40.106z" horiz-adv-x="478" />
|
207 |
+
<glyph unicode="" d="M162.133 437.334l-162.133-30.72c0 0 0-194.56 0-229.546 0-55.466 48.64-127.147 162.133-166.4 113.494 39.254 162.133 110.933 162.133 166.4 0 34.986 0 229.547 0 229.547l-162.133 30.72zM307.2 177.067c0-47.786-45.226-111.786-145.066-148.48-99.84 36.693-145.066 100.693-145.066 148.48v215.040l145.066 28.16 145.066-27.306v-215.894zM113.493 307.626l-12.8-11.946 51.2-51.2-51.2-51.2 12.8-11.947 50.346 51.2 51.2-51.2 11.947 11.947-51.2 51.2 51.2 51.2-11.947 11.947-51.2-51.2z" horiz-adv-x="325" />
|
208 |
+
<glyph unicode="" d="M204.8 428.8c-113.493 0-204.8-91.307-204.8-204.8s91.306-204.8 204.8-204.8c113.493 0 204.8 91.306 204.8 204.8s-91.307 204.8-204.8 204.8zM204.8 36.267c-103.254 0-187.733 84.48-187.733 187.733s84.48 187.733 187.733 187.733c103.253 0 187.733-84.48 187.733-187.733s-84.48-187.733-187.733-187.733zM311.466 175.36c-4.267 1.707-9.387 0.853-11.094-3.413-18.774-36.693-55.466-58.88-95.573-58.88-40.96 0-76.8 22.187-95.573 58.88-1.707 4.267-6.826 5.974-11.094 3.413-4.266-1.707-5.974-6.827-4.266-11.094 21.334-41.813 63.146-68.267 110.933-68.267 46.934 0 89.6 26.454 110.080 68.267 2.56 4.267 0.853 9.387-3.413 11.094zM162.133 266.667c0-14.139-11.462-25.6-25.6-25.6s-25.6 11.462-25.6 25.6c0 14.138 11.462 25.6 25.6 25.6s25.6-11.462 25.6-25.6zM298.666 266.667c0-14.139-11.462-25.6-25.6-25.6s-25.6 11.462-25.6 25.6c0 14.138 11.461 25.6 25.6 25.6s25.6-11.462 25.6-25.6z" horiz-adv-x="410" />
|
209 |
+
<glyph unicode="" d="M229.547 377.6h-58.88v-58.88h25.6v-40.96c0-9.387 0-15.36-9.387-24.746l-58.88-58.027v238.080l11.947-19.627 14.506 8.534-34.987 58.026-34.987-58.026 14.507-8.534 11.947 19.627v-308.053l-53.76 53.76c-9.386 9.387-14.507 17.067-14.507 23.040v40.106c14.507 3.413 25.6 17.066 25.6 33.28 0 18.773-15.36 34.133-34.133 34.133s-34.133-15.36-34.133-34.133c0-16.214 11.094-29.014 25.6-33.28v-40.106c0-14.507 10.24-26.454 19.627-34.986l66.56-66.56v-47.786c-19.626-4.267-34.133-21.334-34.133-41.813 0-23.894 18.773-42.666 42.666-42.666s42.666 18.774 42.666 42.666c0 20.48-14.506 37.546-34.133 41.813v117.76l70.826 70.827c14.506 14.506 14.506 26.454 14.506 36.694v40.96h16.214v58.88zM17.067 275.2c0 9.387 7.68 17.066 17.067 17.066s17.066-7.68 17.066-17.066c0-9.387-7.68-17.066-17.067-17.066s-17.067 7.68-17.067 17.066zM145.066 10.666c0-14.507-11.094-25.6-25.6-25.6s-25.6 11.094-25.6 25.6c0 14.507 11.094 25.6 25.6 25.6s25.6-11.094 25.6-25.6zM187.733 360.534h24.746v-24.746h-24.746v24.746z" horiz-adv-x="230" />
|
210 |
+
<glyph unicode="" d="M426.666 322.134l-15.36-15.36c-33.28 29.014-75.947 45.226-120.32 45.226-29.866 0-59.733-7.68-85.334-21.333l64.853 64.853c5.12-3.413 11.094-5.12 17.067-5.12 8.534 0 17.067 3.413 23.894 10.24 13.654 13.654 13.654 34.987 0 48.64-6.827 6.827-15.36 10.24-23.894 10.24s-17.067-3.413-23.894-10.24c-11.094-11.946-12.8-29.013-5.12-41.813l-81.92-81.92-15.36 15.36-41.814-41.814 15.36-15.36-83.626-83.627c-5.12 3.413-11.093 5.12-17.067 5.12-8.534 0-17.067-3.413-23.893-10.24-13.653-13.654-13.653-34.986 0-48.64 6.826-5.974 15.36-9.387 23.893-9.387s17.067 3.413 23.894 10.24c11.094 11.094 12.8 28.16 5.12 41.813l64.853 64.853c-34.133-65.707-26.453-147.626 23.893-205.654l-15.36-16.214 42.666-41.813 41.814 41.813-41.814 41.813-14.506-14.507c-49.493 58.026-52.053 141.654-10.24 203.094l6.827-6.827 42.667 41.814-7.68 6.827c27.306 19.626 60.587 29.866 94.72 29.866 40.106 0 77.654-14.506 108.374-40.106l-15.36-14.506 42.666-41.814 41.813 41.814-41.813 42.666zM197.12 32l-17.92-17.92-17.92 17.92 17.92 17.92 17.92-17.92zM275.627 436.48c3.413 3.413 7.68 5.12 11.947 5.12s8.534-1.707 11.947-5.12c6.827-6.827 6.827-17.067 0-23.894-3.413-3.413-7.68-5.12-11.947-5.12s-8.534 1.707-11.947 5.12c-6.827 5.974-6.827 17.067 0 23.894zM46.080 159.147c-3.413-3.413-7.68-5.12-11.947-5.12s-8.534 1.707-11.947 5.12c-3.413 2.56-5.12 6.827-5.12 11.947 0 4.267 1.706 8.534 5.12 11.947s7.68 5.12 11.947 5.12c4.267 0 8.534-1.707 11.947-5.12 6.827-6.827 6.827-17.92 0-23.894zM160.427 279.466l-17.92 17.92 17.92 17.92 17.92-17.92-17.92-17.92zM426.666 261.547l-17.92 17.92 17.92 17.92 17.92-17.92-17.92-17.92z" horiz-adv-x="469" />
|
211 |
+
<glyph unicode="" d="M253.44 453.546v0l-89.6-89.6c-54.614-54.613-56.32-141.654-5.974-198.827l-72.534-72.534-72.534 72.534-12.8-13.654 157.013-157.014 11.947 11.947-72.534 72.534 72.534 72.534c57.173-50.346 144.214-48.64 198.827 5.974l47.786 47.786h1.707v1.707l40.96 40.96-204.8 205.654zM355.84 169.387c-49.493-49.493-131.413-49.493-180.906 0-11.094 11.094-18.774 23.040-25.6 35.84h242.346l-35.84-35.84zM408.747 223.147h-265.387c-13.654 43.52-2.56 93.013 31.573 128l78.506 77.654 180.906-180.906-25.6-24.747z" horiz-adv-x="458" />
|
212 |
+
</font></defs></svg>
|
content_elements_misc/fonts/Pe-icon-7-stroke.ttf
ADDED
Binary file
|
content_elements_misc/fonts/Pe-icon-7-stroke.woff
ADDED
Binary file
|
content_elements_misc/fonts/fontawesome-webfont.eot
ADDED
Binary file
|
content_elements_misc/fonts/fontawesome-webfont.svg
ADDED
@@ -0,0 +1,565 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" standalone="no"?>
|
2 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
+
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
|
4 |
+
<metadata></metadata>
|
5 |
+
<defs>
|
6 |
+
<font id="fontawesomeregular" horiz-adv-x="1536" >
|
7 |
+
<font-face units-per-em="1792" ascent="1536" descent="-256" />
|
8 |
+
<missing-glyph horiz-adv-x="448" />
|
9 |
+
<glyph unicode=" " horiz-adv-x="448" />
|
10 |
+
<glyph unicode="	" horiz-adv-x="448" />
|
11 |
+
<glyph unicode=" " horiz-adv-x="448" />
|
12 |
+
<glyph unicode="¨" horiz-adv-x="1792" />
|
13 |
+
<glyph unicode="©" horiz-adv-x="1792" />
|
14 |
+
<glyph unicode="®" horiz-adv-x="1792" />
|
15 |
+
<glyph unicode="´" horiz-adv-x="1792" />
|
16 |
+
<glyph unicode="Æ" horiz-adv-x="1792" />
|
17 |
+
<glyph unicode="Ø" horiz-adv-x="1792" />
|
18 |
+
<glyph unicode=" " horiz-adv-x="768" />
|
19 |
+
<glyph unicode=" " horiz-adv-x="1537" />
|
20 |
+
<glyph unicode=" " horiz-adv-x="768" />
|
21 |
+
<glyph unicode=" " horiz-adv-x="1537" />
|
22 |
+
<glyph unicode=" " horiz-adv-x="512" />
|
23 |
+
<glyph unicode=" " horiz-adv-x="384" />
|
24 |
+
<glyph unicode=" " horiz-adv-x="256" />
|
25 |
+
<glyph unicode=" " horiz-adv-x="256" />
|
26 |
+
<glyph unicode=" " horiz-adv-x="192" />
|
27 |
+
<glyph unicode=" " horiz-adv-x="307" />
|
28 |
+
<glyph unicode=" " horiz-adv-x="85" />
|
29 |
+
<glyph unicode=" " horiz-adv-x="307" />
|
30 |
+
<glyph unicode=" " horiz-adv-x="384" />
|
31 |
+
<glyph unicode="™" horiz-adv-x="1792" />
|
32 |
+
<glyph unicode="∞" horiz-adv-x="1792" />
|
33 |
+
<glyph unicode="≠" horiz-adv-x="1792" />
|
34 |
+
<glyph unicode="◼" horiz-adv-x="500" d="M0 0z" />
|
35 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1699 1350q0 -35 -43 -78l-632 -632v-768h320q26 0 45 -19t19 -45t-19 -45t-45 -19h-896q-26 0 -45 19t-19 45t19 45t45 19h320v768l-632 632q-43 43 -43 78q0 23 18 36.5t38 17.5t43 4h1408q23 0 43 -4t38 -17.5t18 -36.5z" />
|
36 |
+
<glyph unicode="" d="M1536 1312v-1120q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v537l-768 -237v-709q0 -50 -34 -89t-86 -60.5t-103.5 -32t-96.5 -10.5t-96.5 10.5t-103.5 32t-86 60.5t-34 89 t34 89t86 60.5t103.5 32t96.5 10.5q105 0 192 -39v967q0 31 19 56.5t49 35.5l832 256q12 4 28 4q40 0 68 -28t28 -68z" />
|
37 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -52 -38 -90t-90 -38q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5 t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" />
|
38 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1664 32v768q-32 -36 -69 -66q-268 -206 -426 -338q-51 -43 -83 -67t-86.5 -48.5t-102.5 -24.5h-1h-1q-48 0 -102.5 24.5t-86.5 48.5t-83 67q-158 132 -426 338q-37 30 -69 66v-768q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1664 1083v11v13.5t-0.5 13 t-3 12.5t-5.5 9t-9 7.5t-14 2.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5q0 -168 147 -284q193 -152 401 -317q6 -5 35 -29.5t46 -37.5t44.5 -31.5t50.5 -27.5t43 -9h1h1q20 0 43 9t50.5 27.5t44.5 31.5t46 37.5t35 29.5q208 165 401 317q54 43 100.5 115.5t46.5 131.5z M1792 1120v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47t47 -113z" />
|
39 |
+
<glyph unicode="" horiz-adv-x="1792" d="M896 -128q-26 0 -44 18l-624 602q-10 8 -27.5 26t-55.5 65.5t-68 97.5t-53.5 121t-23.5 138q0 220 127 344t351 124q62 0 126.5 -21.5t120 -58t95.5 -68.5t76 -68q36 36 76 68t95.5 68.5t120 58t126.5 21.5q224 0 351 -124t127 -344q0 -221 -229 -450l-623 -600 q-18 -18 -44 -18z" />
|
40 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -21 -10.5 -35.5t-30.5 -14.5q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455 l502 -73q56 -9 56 -46z" />
|
41 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1137 532l306 297l-422 62l-189 382l-189 -382l-422 -62l306 -297l-73 -421l378 199l377 -199zM1664 889q0 -22 -26 -48l-363 -354l86 -500q1 -7 1 -20q0 -50 -41 -50q-19 0 -40 12l-449 236l-449 -236q-22 -12 -40 -12q-21 0 -31.5 14.5t-10.5 35.5q0 6 2 20l86 500 l-364 354q-25 27 -25 48q0 37 56 46l502 73l225 455q19 41 49 41t49 -41l225 -455l502 -73q56 -9 56 -46z" />
|
42 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1408 131q0 -120 -73 -189.5t-194 -69.5h-874q-121 0 -194 69.5t-73 189.5q0 53 3.5 103.5t14 109t26.5 108.5t43 97.5t62 81t85.5 53.5t111.5 20q9 0 42 -21.5t74.5 -48t108 -48t133.5 -21.5t133.5 21.5t108 48t74.5 48t42 21.5q61 0 111.5 -20t85.5 -53.5t62 -81 t43 -97.5t26.5 -108.5t14 -109t3.5 -103.5zM1088 1024q0 -159 -112.5 -271.5t-271.5 -112.5t-271.5 112.5t-112.5 271.5t112.5 271.5t271.5 112.5t271.5 -112.5t112.5 -271.5z" />
|
43 |
+
<glyph unicode="" horiz-adv-x="1920" d="M384 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 320v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM384 704v128q0 26 -19 45t-45 19h-128 q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 -64v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM384 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45 t45 -19h128q26 0 45 19t19 45zM1792 -64v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1408 704v512q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-512q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1792 320v128 q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 704v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1792 1088v128q0 26 -19 45t-45 19h-128q-26 0 -45 -19 t-19 -45v-128q0 -26 19 -45t45 -19h128q26 0 45 19t19 45zM1920 1248v-1344q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1344q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" />
|
44 |
+
<glyph unicode="" horiz-adv-x="1664" d="M768 512v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM768 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 512v-384q0 -52 -38 -90t-90 -38 h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90zM1664 1280v-384q0 -52 -38 -90t-90 -38h-512q-52 0 -90 38t-38 90v384q0 52 38 90t90 38h512q52 0 90 -38t38 -90z" />
|
45 |
+
<glyph unicode="" horiz-adv-x="1792" d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 288v-192q0 -40 -28 -68t-68 -28h-320 q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28 h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1152 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192 q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68z" />
|
46 |
+
<glyph unicode="" horiz-adv-x="1792" d="M512 288v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM512 800v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 288v-192q0 -40 -28 -68t-68 -28h-960 q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68zM512 1312v-192q0 -40 -28 -68t-68 -28h-320q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h320q40 0 68 -28t28 -68zM1792 800v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28 h960q40 0 68 -28t28 -68zM1792 1312v-192q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h960q40 0 68 -28t28 -68z" />
|
47 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1671 970q0 -40 -28 -68l-724 -724l-136 -136q-28 -28 -68 -28t-68 28l-136 136l-362 362q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -295l656 657q28 28 68 28t68 -28l136 -136q28 -28 28 -68z" />
|
48 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1298 214q0 -40 -28 -68l-136 -136q-28 -28 -68 -28t-68 28l-294 294l-294 -294q-28 -28 -68 -28t-68 28l-136 136q-28 28 -28 68t28 68l294 294l-294 294q-28 28 -28 68t28 68l136 136q28 28 68 28t68 -28l294 -294l294 294q28 28 68 28t68 -28l136 -136q28 -28 28 -68 t-28 -68l-294 -294l294 -294q28 -28 28 -68z" />
|
49 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-224q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v224h-224q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h224v224q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5v-224h224 q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5zM1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5 t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z" />
|
50 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1024 736v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-576q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h576q13 0 22.5 -9.5t9.5 -22.5zM1152 704q0 185 -131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5t316.5 131.5t131.5 316.5z M1664 -128q0 -53 -37.5 -90.5t-90.5 -37.5q-54 0 -90 38l-343 342q-179 -124 -399 -124q-143 0 -273.5 55.5t-225 150t-150 225t-55.5 273.5t55.5 273.5t150 225t225 150t273.5 55.5t273.5 -55.5t225 -150t150 -225t55.5 -273.5q0 -220 -124 -399l343 -343q37 -37 37 -90z " />
|
51 |
+
<glyph unicode="" d="M1536 640q0 -156 -61 -298t-164 -245t-245 -164t-298 -61t-298 61t-245 164t-164 245t-61 298q0 182 80.5 343t226.5 270q43 32 95.5 25t83.5 -50q32 -42 24.5 -94.5t-49.5 -84.5q-98 -74 -151.5 -181t-53.5 -228q0 -104 40.5 -198.5t109.5 -163.5t163.5 -109.5 t198.5 -40.5t198.5 40.5t163.5 109.5t109.5 163.5t40.5 198.5q0 121 -53.5 228t-151.5 181q-42 32 -49.5 84.5t24.5 94.5q31 43 84 50t95 -25q146 -109 226.5 -270t80.5 -343zM896 1408v-640q0 -52 -38 -90t-90 -38t-90 38t-38 90v640q0 52 38 90t90 38t90 -38t38 -90z" />
|
52 |
+
<glyph unicode="" horiz-adv-x="1792" d="M256 96v-192q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM640 224v-320q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1024 480v-576q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23 v576q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1408 864v-960q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v960q0 14 9 23t23 9h192q14 0 23 -9t9 -23zM1792 1376v-1472q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v1472q0 14 9 23t23 9h192q14 0 23 -9t9 -23z" />
|
53 |
+
<glyph unicode="" d="M1024 640q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1536 749v-222q0 -12 -8 -23t-20 -13l-185 -28q-19 -54 -39 -91q35 -50 107 -138q10 -12 10 -25t-9 -23q-27 -37 -99 -108t-94 -71q-12 0 -26 9l-138 108q-44 -23 -91 -38 q-16 -136 -29 -186q-7 -28 -36 -28h-222q-14 0 -24.5 8.5t-11.5 21.5l-28 184q-49 16 -90 37l-141 -107q-10 -9 -25 -9q-14 0 -25 11q-126 114 -165 168q-7 10 -7 23q0 12 8 23q15 21 51 66.5t54 70.5q-27 50 -41 99l-183 27q-13 2 -21 12.5t-8 23.5v222q0 12 8 23t19 13 l186 28q14 46 39 92q-40 57 -107 138q-10 12 -10 24q0 10 9 23q26 36 98.5 107.5t94.5 71.5q13 0 26 -10l138 -107q44 23 91 38q16 136 29 186q7 28 36 28h222q14 0 24.5 -8.5t11.5 -21.5l28 -184q49 -16 90 -37l142 107q9 9 24 9q13 0 25 -10q129 -119 165 -170q7 -8 7 -22 q0 -12 -8 -23q-15 -21 -51 -66.5t-54 -70.5q26 -50 41 -98l183 -28q13 -2 21 -12.5t8 -23.5z" />
|
54 |
+
<glyph unicode="" horiz-adv-x="1408" d="M512 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM768 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1024 800v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576 q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1152 76v948h-896v-948q0 -22 7 -40.5t14.5 -27t10.5 -8.5h832q3 0 10.5 8.5t14.5 27t7 40.5zM480 1152h448l-48 117q-7 9 -17 11h-317q-10 -2 -17 -11zM1408 1120v-64q0 -14 -9 -23t-23 -9h-96v-948q0 -83 -47 -143.5t-113 -60.5h-832 q-66 0 -113 58.5t-47 141.5v952h-96q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h309l70 167q15 37 54 63t79 26h320q40 0 79 -26t54 -63l70 -167h309q14 0 23 -9t9 -23z" />
|
55 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1408 544v-480q0 -26 -19 -45t-45 -19h-384v384h-256v-384h-384q-26 0 -45 19t-19 45v480q0 1 0.5 3t0.5 3l575 474l575 -474q1 -2 1 -6zM1631 613l-62 -74q-8 -9 -21 -11h-3q-13 0 -21 7l-692 577l-692 -577q-12 -8 -24 -7q-13 2 -21 11l-62 74q-8 10 -7 23.5t11 21.5 l719 599q32 26 76 26t76 -26l244 -204v195q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-408l219 -182q10 -8 11 -21.5t-7 -23.5z" />
|
56 |
+
<glyph unicode="" d="M1468 1156q28 -28 48 -76t20 -88v-1152q0 -40 -28 -68t-68 -28h-1344q-40 0 -68 28t-28 68v1600q0 40 28 68t68 28h896q40 0 88 -20t76 -48zM1024 1400v-376h376q-10 29 -22 41l-313 313q-12 12 -41 22zM1408 -128v1024h-416q-40 0 -68 28t-28 68v416h-768v-1536h1280z " />
|
57 |
+
<glyph unicode="" d="M896 992v-448q0 -14 -9 -23t-23 -9h-320q-14 0 -23 9t-9 23v64q0 14 9 23t23 9h224v352q0 14 9 23t23 9h64q14 0 23 -9t9 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
58 |
+
<glyph unicode="" horiz-adv-x="1920" d="M1111 540v4l-24 320q-1 13 -11 22.5t-23 9.5h-186q-13 0 -23 -9.5t-11 -22.5l-24 -320v-4q-1 -12 8 -20t21 -8h244q12 0 21 8t8 20zM1870 73q0 -73 -46 -73h-704q13 0 22 9.5t8 22.5l-20 256q-1 13 -11 22.5t-23 9.5h-272q-13 0 -23 -9.5t-11 -22.5l-20 -256 q-1 -13 8 -22.5t22 -9.5h-704q-46 0 -46 73q0 54 26 116l417 1044q8 19 26 33t38 14h339q-13 0 -23 -9.5t-11 -22.5l-15 -192q-1 -14 8 -23t22 -9h166q13 0 22 9t8 23l-15 192q-1 13 -11 22.5t-23 9.5h339q20 0 38 -14t26 -33l417 -1044q26 -62 26 -116z" />
|
59 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1280 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1536 192q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 416v-320q0 -40 -28 -68t-68 -28h-1472q-40 0 -68 28t-28 68v320q0 40 28 68t68 28h465l135 -136 q58 -56 136 -56t136 56l136 136h464q40 0 68 -28t28 -68zM1339 985q17 -41 -14 -70l-448 -448q-18 -19 -45 -19t-45 19l-448 448q-31 29 -14 70q17 39 59 39h256v448q0 26 19 45t45 19h256q26 0 45 -19t19 -45v-448h256q42 0 59 -39z" />
|
60 |
+
<glyph unicode="" d="M1120 608q0 -12 -10 -24l-319 -319q-11 -9 -23 -9t-23 9l-320 320q-15 16 -7 35q8 20 30 20h192v352q0 14 9 23t23 9h192q14 0 23 -9t9 -23v-352h192q14 0 23 -9t9 -23zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273 t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
61 |
+
<glyph unicode="" d="M1118 660q-8 -20 -30 -20h-192v-352q0 -14 -9 -23t-23 -9h-192q-14 0 -23 9t-9 23v352h-192q-14 0 -23 9t-9 23q0 12 10 24l319 319q11 9 23 9t23 -9l320 -320q15 -16 7 -35zM768 1184q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198 t73 273t-73 273t-198 198t-273 73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
62 |
+
<glyph unicode="" d="M1023 576h316q-1 3 -2.5 8t-2.5 8l-212 496h-708l-212 -496q-1 -2 -2.5 -8t-2.5 -8h316l95 -192h320zM1536 546v-482q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v482q0 62 25 123l238 552q10 25 36.5 42t52.5 17h832q26 0 52.5 -17t36.5 -42l238 -552 q25 -61 25 -123z" />
|
63 |
+
<glyph unicode="" d="M1184 640q0 -37 -32 -55l-544 -320q-15 -9 -32 -9q-16 0 -32 8q-32 19 -32 56v640q0 37 32 56q33 18 64 -1l544 -320q32 -18 32 -55zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640 q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
64 |
+
<glyph unicode="" d="M1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-42 0 -59 40q-17 39 14 69l138 138q-148 137 -349 137q-104 0 -198.5 -40.5t-163.5 -109.5t-109.5 -163.5t-40.5 -198.5t40.5 -198.5t109.5 -163.5t163.5 -109.5t198.5 -40.5q119 0 225 52t179 147q7 10 23 12q14 0 25 -9 l137 -138q9 -8 9.5 -20.5t-7.5 -22.5q-109 -132 -264 -204.5t-327 -72.5q-156 0 -298 61t-245 164t-164 245t-61 298t61 298t164 245t245 164t298 61q147 0 284.5 -55.5t244.5 -156.5l130 129q29 31 70 14q39 -17 39 -59z" />
|
65 |
+
<glyph unicode="" d="M1511 480q0 -5 -1 -7q-64 -268 -268 -434.5t-478 -166.5q-146 0 -282.5 55t-243.5 157l-129 -129q-19 -19 -45 -19t-45 19t-19 45v448q0 26 19 45t45 19h448q26 0 45 -19t19 -45t-19 -45l-137 -137q71 -66 161 -102t187 -36q134 0 250 65t186 179q11 17 53 117 q8 23 30 23h192q13 0 22.5 -9.5t9.5 -22.5zM1536 1280v-448q0 -26 -19 -45t-45 -19h-448q-26 0 -45 19t-19 45t19 45l138 138q-148 137 -349 137q-134 0 -250 -65t-186 -179q-11 -17 -53 -117q-8 -23 -30 -23h-199q-13 0 -22.5 9.5t-9.5 22.5v7q65 268 270 434.5t480 166.5 q146 0 284 -55.5t245 -156.5l130 129q19 19 45 19t45 -19t19 -45z" />
|
66 |
+
<glyph unicode="" horiz-adv-x="1792" d="M384 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM384 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5z M384 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h64q13 0 22.5 -9.5t9.5 -22.5zM1536 352v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5z M1536 608v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5t9.5 -22.5zM1536 864v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-960q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h960q13 0 22.5 -9.5 t9.5 -22.5zM1664 160v832q0 13 -9.5 22.5t-22.5 9.5h-1472q-13 0 -22.5 -9.5t-9.5 -22.5v-832q0 -13 9.5 -22.5t22.5 -9.5h1472q13 0 22.5 9.5t9.5 22.5zM1792 1248v-1088q0 -66 -47 -113t-113 -47h-1472q-66 0 -113 47t-47 113v1088q0 66 47 113t113 47h1472q66 0 113 -47 t47 -113z" />
|
67 |
+
<glyph unicode="" horiz-adv-x="1152" d="M320 768h512v192q0 106 -75 181t-181 75t-181 -75t-75 -181v-192zM1152 672v-576q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68v576q0 40 28 68t68 28h32v192q0 184 132 316t316 132t316 -132t132 -316v-192h32q40 0 68 -28t28 -68z" />
|
68 |
+
<glyph unicode="" horiz-adv-x="1792" d="M320 1280q0 -72 -64 -110v-1266q0 -13 -9.5 -22.5t-22.5 -9.5h-64q-13 0 -22.5 9.5t-9.5 22.5v1266q-64 38 -64 110q0 53 37.5 90.5t90.5 37.5t90.5 -37.5t37.5 -90.5zM1792 1216v-763q0 -25 -12.5 -38.5t-39.5 -27.5q-215 -116 -369 -116q-61 0 -123.5 22t-108.5 48 t-115.5 48t-142.5 22q-192 0 -464 -146q-17 -9 -33 -9q-26 0 -45 19t-19 45v742q0 32 31 55q21 14 79 43q236 120 421 120q107 0 200 -29t219 -88q38 -19 88 -19q54 0 117.5 21t110 47t88 47t54.5 21q26 0 45 -19t19 -45z" />
|
69 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1664 650q0 -166 -60 -314l-20 -49l-185 -33q-22 -83 -90.5 -136.5t-156.5 -53.5v-32q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v576q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-32q71 0 130 -35.5t93 -95.5l68 12q29 95 29 193q0 148 -88 279t-236.5 209t-315.5 78 t-315.5 -78t-236.5 -209t-88 -279q0 -98 29 -193l68 -12q34 60 93 95.5t130 35.5v32q0 14 9 23t23 9h64q14 0 23 -9t9 -23v-576q0 -14 -9 -23t-23 -9h-64q-14 0 -23 9t-9 23v32q-88 0 -156.5 53.5t-90.5 136.5l-185 33l-20 49q-60 148 -60 314q0 151 67 291t179 242.5 t266 163.5t320 61t320 -61t266 -163.5t179 -242.5t67 -291z" />
|
70 |
+
<glyph unicode="" horiz-adv-x="768" d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45z" />
|
71 |
+
<glyph unicode="" horiz-adv-x="1152" d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 35.5 t12 57t-12 57t-29 35.5t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142z" />
|
72 |
+
<glyph unicode="" horiz-adv-x="1664" d="M768 1184v-1088q0 -26 -19 -45t-45 -19t-45 19l-333 333h-262q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h262l333 333q19 19 45 19t45 -19t19 -45zM1152 640q0 -76 -42.5 -141.5t-112.5 -93.5q-10 -5 -25 -5q-26 0 -45 18.5t-19 45.5q0 21 12 35.5t29 25t34 23t29 35.5 t12 57t-12 57t-29 35.5t-34 23t-29 25t-12 35.5q0 27 19 45.5t45 18.5q15 0 25 -5q70 -27 112.5 -93t42.5 -142zM1408 640q0 -153 -85 -282.5t-225 -188.5q-13 -5 -25 -5q-27 0 -46 19t-19 45q0 39 39 59q56 29 76 44q74 54 115.5 135.5t41.5 173.5t-41.5 173.5 t-115.5 135.5q-20 15 -76 44q-39 20 -39 59q0 26 19 45t45 19q13 0 26 -5q140 -59 225 -188.5t85 -282.5zM1664 640q0 -230 -127 -422.5t-338 -283.5q-13 -5 -26 -5q-26 0 -45 19t-19 45q0 36 39 59q7 4 22.5 10.5t22.5 10.5q46 25 82 51q123 91 192 227t69 289t-69 289 t-192 227q-36 26 -82 51q-7 4 -22.5 10.5t-22.5 10.5q-39 23 -39 59q0 26 19 45t45 19q13 0 26 -5q211 -91 338 -283.5t127 -422.5z" />
|
73 |
+
<glyph unicode="" horiz-adv-x="1408" d="M384 384v-128h-128v128h128zM384 1152v-128h-128v128h128zM1152 1152v-128h-128v128h128zM128 129h384v383h-384v-383zM128 896h384v384h-384v-384zM896 896h384v384h-384v-384zM640 640v-640h-640v640h640zM1152 128v-128h-128v128h128zM1408 128v-128h-128v128h128z M1408 640v-384h-384v128h-128v-384h-128v640h384v-128h128v128h128zM640 1408v-640h-640v640h640zM1408 1408v-640h-640v640h640z" />
|
74 |
+
<glyph unicode="" horiz-adv-x="1792" d="M63 0h-63v1408h63v-1408zM126 1h-32v1407h32v-1407zM220 1h-31v1407h31v-1407zM377 1h-31v1407h31v-1407zM534 1h-62v1407h62v-1407zM660 1h-31v1407h31v-1407zM723 1h-31v1407h31v-1407zM786 1h-31v1407h31v-1407zM943 1h-63v1407h63v-1407zM1100 1h-63v1407h63v-1407z M1226 1h-63v1407h63v-1407zM1352 1h-63v1407h63v-1407zM1446 1h-63v1407h63v-1407zM1635 1h-94v1407h94v-1407zM1698 1h-32v1407h32v-1407zM1792 0h-63v1408h63v-1408z" />
|
75 |
+
<glyph unicode="" d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5 l715 -714q37 -39 37 -91z" />
|
76 |
+
<glyph unicode="" horiz-adv-x="1920" d="M448 1088q0 53 -37.5 90.5t-90.5 37.5t-90.5 -37.5t-37.5 -90.5t37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1515 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-53 0 -90 37l-715 716q-38 37 -64.5 101t-26.5 117v416q0 52 38 90t90 38h416q53 0 117 -26.5t102 -64.5 l715 -714q37 -39 37 -91zM1899 512q0 -53 -37 -90l-491 -492q-39 -37 -91 -37q-36 0 -59 14t-53 45l470 470q37 37 37 90q0 52 -37 91l-715 714q-38 38 -102 64.5t-117 26.5h224q53 0 117 -26.5t102 -64.5l715 -714q37 -39 37 -91z" />
|
77 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1639 1058q40 -57 18 -129l-275 -906q-19 -64 -76.5 -107.5t-122.5 -43.5h-923q-77 0 -148.5 53.5t-99.5 131.5q-24 67 -2 127q0 4 3 27t4 37q1 8 -3 21.5t-3 19.5q2 11 8 21t16.5 23.5t16.5 23.5q23 38 45 91.5t30 91.5q3 10 0.5 30t-0.5 28q3 11 17 28t17 23 q21 36 42 92t25 90q1 9 -2.5 32t0.5 28q4 13 22 30.5t22 22.5q19 26 42.5 84.5t27.5 96.5q1 8 -3 25.5t-2 26.5q2 8 9 18t18 23t17 21q8 12 16.5 30.5t15 35t16 36t19.5 32t26.5 23.5t36 11.5t47.5 -5.5l-1 -3q38 9 51 9h761q74 0 114 -56t18 -130l-274 -906 q-36 -119 -71.5 -153.5t-128.5 -34.5h-869q-27 0 -38 -15q-11 -16 -1 -43q24 -70 144 -70h923q29 0 56 15.5t35 41.5l300 987q7 22 5 57q38 -15 59 -43zM575 1056q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5 t-16.5 -22.5zM492 800q-4 -13 2 -22.5t20 -9.5h608q13 0 25.5 9.5t16.5 22.5l21 64q4 13 -2 22.5t-20 9.5h-608q-13 0 -25.5 -9.5t-16.5 -22.5z" />
|
78 |
+
<glyph unicode="" horiz-adv-x="1280" d="M1164 1408q23 0 44 -9q33 -13 52.5 -41t19.5 -62v-1289q0 -34 -19.5 -62t-52.5 -41q-19 -8 -44 -8q-48 0 -83 32l-441 424l-441 -424q-36 -33 -83 -33q-23 0 -44 9q-33 13 -52.5 41t-19.5 62v1289q0 34 19.5 62t52.5 41q21 9 44 9h1048z" />
|
79 |
+
<glyph unicode="" horiz-adv-x="1664" d="M384 0h896v256h-896v-256zM384 640h896v384h-160q-40 0 -68 28t-28 68v160h-640v-640zM1536 576q0 26 -19 45t-45 19t-45 -19t-19 -45t19 -45t45 -19t45 19t19 45zM1664 576v-416q0 -13 -9.5 -22.5t-22.5 -9.5h-224v-160q0 -40 -28 -68t-68 -28h-960q-40 0 -68 28t-28 68 v160h-224q-13 0 -22.5 9.5t-9.5 22.5v416q0 79 56.5 135.5t135.5 56.5h64v544q0 40 28 68t68 28h672q40 0 88 -20t76 -48l152 -152q28 -28 48 -76t20 -88v-256h64q79 0 135.5 -56.5t56.5 -135.5z" />
|
80 |
+
<glyph unicode="" horiz-adv-x="1920" d="M960 864q119 0 203.5 -84.5t84.5 -203.5t-84.5 -203.5t-203.5 -84.5t-203.5 84.5t-84.5 203.5t84.5 203.5t203.5 84.5zM1664 1280q106 0 181 -75t75 -181v-896q0 -106 -75 -181t-181 -75h-1408q-106 0 -181 75t-75 181v896q0 106 75 181t181 75h224l51 136 q19 49 69.5 84.5t103.5 35.5h512q53 0 103.5 -35.5t69.5 -84.5l51 -136h224zM960 128q185 0 316.5 131.5t131.5 316.5t-131.5 316.5t-316.5 131.5t-316.5 -131.5t-131.5 -316.5t131.5 -316.5t316.5 -131.5z" />
|
81 |
+
<glyph unicode="" horiz-adv-x="1664" d="M725 977l-170 -450q33 0 136.5 -2t160.5 -2q19 0 57 2q-87 253 -184 452zM0 -128l2 79q23 7 56 12.5t57 10.5t49.5 14.5t44.5 29t31 50.5l237 616l280 724h75h53q8 -14 11 -21l205 -480q33 -78 106 -257.5t114 -274.5q15 -34 58 -144.5t72 -168.5q20 -45 35 -57 q19 -15 88 -29.5t84 -20.5q6 -38 6 -57q0 -4 -0.5 -13t-0.5 -13q-63 0 -190 8t-191 8q-76 0 -215 -7t-178 -8q0 43 4 78l131 28q1 0 12.5 2.5t15.5 3.5t14.5 4.5t15 6.5t11 8t9 11t2.5 14q0 16 -31 96.5t-72 177.5t-42 100l-450 2q-26 -58 -76.5 -195.5t-50.5 -162.5 q0 -22 14 -37.5t43.5 -24.5t48.5 -13.5t57 -8.5t41 -4q1 -19 1 -58q0 -9 -2 -27q-58 0 -174.5 10t-174.5 10q-8 0 -26.5 -4t-21.5 -4q-80 -14 -188 -14z" />
|
82 |
+
<glyph unicode="" horiz-adv-x="1408" d="M555 15q74 -32 140 -32q376 0 376 335q0 114 -41 180q-27 44 -61.5 74t-67.5 46.5t-80.5 25t-84 10.5t-94.5 2q-73 0 -101 -10q0 -53 -0.5 -159t-0.5 -158q0 -8 -1 -67.5t-0.5 -96.5t4.5 -83.5t12 -66.5zM541 761q42 -7 109 -7q82 0 143 13t110 44.5t74.5 89.5t25.5 142 q0 70 -29 122.5t-79 82t-108 43.5t-124 14q-50 0 -130 -13q0 -50 4 -151t4 -152q0 -27 -0.5 -80t-0.5 -79q0 -46 1 -69zM0 -128l2 94q15 4 85 16t106 27q7 12 12.5 27t8.5 33.5t5.5 32.5t3 37.5t0.5 34v35.5v30q0 982 -22 1025q-4 8 -22 14.5t-44.5 11t-49.5 7t-48.5 4.5 t-30.5 3l-4 83q98 2 340 11.5t373 9.5q23 0 68.5 -0.5t67.5 -0.5q70 0 136.5 -13t128.5 -42t108 -71t74 -104.5t28 -137.5q0 -52 -16.5 -95.5t-39 -72t-64.5 -57.5t-73 -45t-84 -40q154 -35 256.5 -134t102.5 -248q0 -100 -35 -179.5t-93.5 -130.5t-138 -85.5t-163.5 -48.5 t-176 -14q-44 0 -132 3t-132 3q-106 0 -307 -11t-231 -12z" />
|
83 |
+
<glyph unicode="" horiz-adv-x="1024" d="M0 -126l17 85q6 2 81.5 21.5t111.5 37.5q28 35 41 101q1 7 62 289t114 543.5t52 296.5v25q-24 13 -54.5 18.5t-69.5 8t-58 5.5l19 103q33 -2 120 -6.5t149.5 -7t120.5 -2.5q48 0 98.5 2.5t121 7t98.5 6.5q-5 -39 -19 -89q-30 -10 -101.5 -28.5t-108.5 -33.5 q-8 -19 -14 -42.5t-9 -40t-7.5 -45.5t-6.5 -42q-27 -148 -87.5 -419.5t-77.5 -355.5q-2 -9 -13 -58t-20 -90t-16 -83.5t-6 -57.5l1 -18q17 -4 185 -31q-3 -44 -16 -99q-11 0 -32.5 -1.5t-32.5 -1.5q-29 0 -87 10t-86 10q-138 2 -206 2q-51 0 -143 -9t-121 -11z" />
|
84 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1744 128q33 0 42 -18.5t-11 -44.5l-126 -162q-20 -26 -49 -26t-49 26l-126 162q-20 26 -11 44.5t42 18.5h80v1024h-80q-33 0 -42 18.5t11 44.5l126 162q20 26 49 26t49 -26l126 -162q20 -26 11 -44.5t-42 -18.5h-80v-1024h80zM81 1407l54 -27q12 -5 211 -5q44 0 132 2 t132 2q36 0 107.5 -0.5t107.5 -0.5h293q6 0 21 -0.5t20.5 0t16 3t17.5 9t15 17.5l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 48t-14.5 73.5t-7.5 35.5q-6 8 -12 12.5t-15.5 6t-13 2.5t-18 0.5t-16.5 -0.5 q-17 0 -66.5 0.5t-74.5 0.5t-64 -2t-71 -6q-9 -81 -8 -136q0 -94 2 -388t2 -455q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27 q19 42 19 383q0 101 -3 303t-3 303v117q0 2 0.5 15.5t0.5 25t-1 25.5t-3 24t-5 14q-11 12 -162 12q-33 0 -93 -12t-80 -26q-19 -13 -34 -72.5t-31.5 -111t-42.5 -53.5q-42 26 -56 44v383z" />
|
85 |
+
<glyph unicode="" d="M81 1407l54 -27q12 -5 211 -5q44 0 132 2t132 2q70 0 246.5 1t304.5 0.5t247 -4.5q33 -1 56 31l42 1q4 0 14 -0.5t14 -0.5q2 -112 2 -336q0 -80 -5 -109q-39 -14 -68 -18q-25 44 -54 128q-3 9 -11 47.5t-15 73.5t-7 36q-10 13 -27 19q-5 2 -66 2q-30 0 -93 1t-103 1 t-94 -2t-96 -7q-9 -81 -8 -136l1 -152v52q0 -55 1 -154t1.5 -180t0.5 -153q0 -16 -2.5 -71.5t0 -91.5t12.5 -69q40 -21 124 -42.5t120 -37.5q5 -40 5 -50q0 -14 -3 -29l-34 -1q-76 -2 -218 8t-207 10q-50 0 -151 -9t-152 -9q-3 51 -3 52v9q17 27 61.5 43t98.5 29t78 27 q7 16 11.5 74t6 145.5t1.5 155t-0.5 153.5t-0.5 89q0 7 -2.5 21.5t-2.5 22.5q0 7 0.5 44t1 73t0 76.5t-3 67.5t-6.5 32q-11 12 -162 12q-41 0 -163 -13.5t-138 -24.5q-19 -12 -34 -71.5t-31.5 -111.5t-42.5 -54q-42 26 -56 44v383zM1310 125q12 0 42 -19.5t57.5 -41.5 t59.5 -49t36 -30q26 -21 26 -49t-26 -49q-4 -3 -36 -30t-59.5 -49t-57.5 -41.5t-42 -19.5q-13 0 -20.5 10.5t-10 28.5t-2.5 33.5t1.5 33t1.5 19.5h-1024q0 -2 1.5 -19.5t1.5 -33t-2.5 -33.5t-10 -28.5t-20.5 -10.5q-12 0 -42 19.5t-57.5 41.5t-59.5 49t-36 30q-26 21 -26 49 t26 49q4 3 36 30t59.5 49t57.5 41.5t42 19.5q13 0 20.5 -10.5t10 -28.5t2.5 -33.5t-1.5 -33t-1.5 -19.5h1024q0 2 -1.5 19.5t-1.5 33t2.5 33.5t10 28.5t20.5 10.5z" />
|
86 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45 t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" />
|
87 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1408 576v-128q0 -26 -19 -45t-45 -19h-896q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h896q26 0 45 -19t19 -45zM1664 960v-128q0 -26 -19 -45t-45 -19 h-1408q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1408q26 0 45 -19t19 -45zM1280 1344v-128q0 -26 -19 -45t-45 -19h-640q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h640q26 0 45 -19t19 -45z" />
|
88 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1280q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1280q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45 t-45 -19h-1536q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1536q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1152q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1152q26 0 45 -19t19 -45z" />
|
89 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 192v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 576v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 960v-128q0 -26 -19 -45 t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45zM1792 1344v-128q0 -26 -19 -45t-45 -19h-1664q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h1664q26 0 45 -19t19 -45z" />
|
90 |
+
<glyph unicode="" horiz-adv-x="1792" d="M256 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM256 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5 t9.5 -22.5zM256 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344 q13 0 22.5 -9.5t9.5 -22.5zM256 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-192q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h192q13 0 22.5 -9.5t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5 t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v192 q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5z" />
|
91 |
+
<glyph unicode="" horiz-adv-x="1792" d="M384 992v-576q0 -13 -9.5 -22.5t-22.5 -9.5q-14 0 -23 9l-288 288q-9 9 -9 23t9 23l288 288q9 9 23 9q13 0 22.5 -9.5t9.5 -22.5zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5 t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088 q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" />
|
92 |
+
<glyph unicode="" horiz-adv-x="1792" d="M352 704q0 -14 -9 -23l-288 -288q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v576q0 13 9.5 22.5t22.5 9.5q14 0 23 -9l288 -288q9 -9 9 -23zM1792 224v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5 t9.5 -22.5zM1792 608v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088q13 0 22.5 -9.5t9.5 -22.5zM1792 992v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1088q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1088 q13 0 22.5 -9.5t9.5 -22.5zM1792 1376v-192q0 -13 -9.5 -22.5t-22.5 -9.5h-1728q-13 0 -22.5 9.5t-9.5 22.5v192q0 13 9.5 22.5t22.5 9.5h1728q13 0 22.5 -9.5t9.5 -22.5z" />
|
93 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 1184v-1088q0 -42 -39 -59q-13 -5 -25 -5q-27 0 -45 19l-403 403v-166q0 -119 -84.5 -203.5t-203.5 -84.5h-704q-119 0 -203.5 84.5t-84.5 203.5v704q0 119 84.5 203.5t203.5 84.5h704q119 0 203.5 -84.5t84.5 -203.5v-165l403 402q18 19 45 19q12 0 25 -5 q39 -17 39 -59z" />
|
94 |
+
<glyph unicode="" horiz-adv-x="1920" d="M640 960q0 -80 -56 -136t-136 -56t-136 56t-56 136t56 136t136 56t136 -56t56 -136zM1664 576v-448h-1408v192l320 320l160 -160l512 512zM1760 1280h-1600q-13 0 -22.5 -9.5t-9.5 -22.5v-1216q0 -13 9.5 -22.5t22.5 -9.5h1600q13 0 22.5 9.5t9.5 22.5v1216 q0 13 -9.5 22.5t-22.5 9.5zM1920 1248v-1216q0 -66 -47 -113t-113 -47h-1600q-66 0 -113 47t-47 113v1216q0 66 47 113t113 47h1600q66 0 113 -47t47 -113z" />
|
95 |
+
<glyph unicode="" d="M363 0l91 91l-235 235l-91 -91v-107h128v-128h107zM886 928q0 22 -22 22q-10 0 -17 -7l-542 -542q-7 -7 -7 -17q0 -22 22 -22q10 0 17 7l542 542q7 7 7 17zM832 1120l416 -416l-832 -832h-416v416zM1515 1024q0 -53 -37 -90l-166 -166l-416 416l166 165q36 38 90 38 q53 0 91 -38l235 -234q37 -39 37 -91z" />
|
96 |
+
<glyph unicode="" horiz-adv-x="1024" d="M768 896q0 106 -75 181t-181 75t-181 -75t-75 -181t75 -181t181 -75t181 75t75 181zM1024 896q0 -109 -33 -179l-364 -774q-16 -33 -47.5 -52t-67.5 -19t-67.5 19t-46.5 52l-365 774q-33 70 -33 179q0 212 150 362t362 150t362 -150t150 -362z" />
|
97 |
+
<glyph unicode="" d="M768 96v1088q-148 0 -273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
98 |
+
<glyph unicode="" horiz-adv-x="1024" d="M512 384q0 36 -20 69q-1 1 -15.5 22.5t-25.5 38t-25 44t-21 50.5q-4 16 -21 16t-21 -16q-7 -23 -21 -50.5t-25 -44t-25.5 -38t-15.5 -22.5q-20 -33 -20 -69q0 -53 37.5 -90.5t90.5 -37.5t90.5 37.5t37.5 90.5zM1024 512q0 -212 -150 -362t-362 -150t-362 150t-150 362 q0 145 81 275q6 9 62.5 90.5t101 151t99.5 178t83 201.5q9 30 34 47t51 17t51.5 -17t33.5 -47q28 -93 83 -201.5t99.5 -178t101 -151t62.5 -90.5q81 -127 81 -275z" />
|
99 |
+
<glyph unicode="" horiz-adv-x="1792" d="M888 352l116 116l-152 152l-116 -116v-56h96v-96h56zM1328 1072q-16 16 -33 -1l-350 -350q-17 -17 -1 -33t33 1l350 350q17 17 1 33zM1408 478v-190q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832 q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-14 -14 -32 -8q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v126q0 13 9 22l64 64q15 15 35 7t20 -29zM1312 1216l288 -288l-672 -672h-288v288zM1756 1084l-92 -92 l-288 288l92 92q28 28 68 28t68 -28l152 -152q28 -28 28 -68t-28 -68z" />
|
100 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1408 547v-259q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h255v0q13 0 22.5 -9.5t9.5 -22.5q0 -27 -26 -32q-77 -26 -133 -60q-10 -4 -16 -4h-112q-66 0 -113 -47t-47 -113v-832q0 -66 47 -113t113 -47h832 q66 0 113 47t47 113v214q0 19 18 29q28 13 54 37q16 16 35 8q21 -9 21 -29zM1645 1043l-384 -384q-18 -19 -45 -19q-12 0 -25 5q-39 17 -39 59v192h-160q-323 0 -438 -131q-119 -137 -74 -473q3 -23 -20 -34q-8 -2 -12 -2q-16 0 -26 13q-10 14 -21 31t-39.5 68.5t-49.5 99.5 t-38.5 114t-17.5 122q0 49 3.5 91t14 90t28 88t47 81.5t68.5 74t94.5 61.5t124.5 48.5t159.5 30.5t196.5 11h160v192q0 42 39 59q13 5 25 5q26 0 45 -19l384 -384q19 -19 19 -45t-19 -45z" />
|
101 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1408 606v-318q0 -119 -84.5 -203.5t-203.5 -84.5h-832q-119 0 -203.5 84.5t-84.5 203.5v832q0 119 84.5 203.5t203.5 84.5h832q63 0 117 -25q15 -7 18 -23q3 -17 -9 -29l-49 -49q-10 -10 -23 -10q-3 0 -9 2q-23 6 -45 6h-832q-66 0 -113 -47t-47 -113v-832 q0 -66 47 -113t113 -47h832q66 0 113 47t47 113v254q0 13 9 22l64 64q10 10 23 10q6 0 12 -3q20 -8 20 -29zM1639 1095l-814 -814q-24 -24 -57 -24t-57 24l-430 430q-24 24 -24 57t24 57l110 110q24 24 57 24t57 -24l263 -263l647 647q24 24 57 24t57 -24l110 -110 q24 -24 24 -57t-24 -57z" />
|
102 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 640q0 -26 -19 -45l-256 -256q-19 -19 -45 -19t-45 19t-19 45v128h-384v-384h128q26 0 45 -19t19 -45t-19 -45l-256 -256q-19 -19 -45 -19t-45 19l-256 256q-19 19 -19 45t19 45t45 19h128v384h-384v-128q0 -26 -19 -45t-45 -19t-45 19l-256 256q-19 19 -19 45 t19 45l256 256q19 19 45 19t45 -19t19 -45v-128h384v384h-128q-26 0 -45 19t-19 45t19 45l256 256q19 19 45 19t45 -19l256 -256q19 -19 19 -45t-19 -45t-45 -19h-128v-384h384v128q0 26 19 45t45 19t45 -19l256 -256q19 -19 19 -45z" />
|
103 |
+
<glyph unicode="" horiz-adv-x="1024" d="M979 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 11 13 19z" />
|
104 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1747 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-9 9 -13 19v-678q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-678q4 11 13 19l710 710 q19 19 32 13t13 -32v-710q4 11 13 19z" />
|
105 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1619 1395q19 19 32 13t13 -32v-1472q0 -26 -13 -32t-32 13l-710 710q-8 9 -13 19v-710q0 -26 -13 -32t-32 13l-710 710q-19 19 -19 45t19 45l710 710q19 19 32 13t13 -32v-710q5 11 13 19z" />
|
106 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1384 609l-1328 -738q-23 -13 -39.5 -3t-16.5 36v1472q0 26 16.5 36t39.5 -3l1328 -738q23 -13 23 -31t-23 -31z" />
|
107 |
+
<glyph unicode="" d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45zM640 1344v-1408q0 -26 -19 -45t-45 -19h-512q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h512q26 0 45 -19t19 -45z" />
|
108 |
+
<glyph unicode="" d="M1536 1344v-1408q0 -26 -19 -45t-45 -19h-1408q-26 0 -45 19t-19 45v1408q0 26 19 45t45 19h1408q26 0 45 -19t19 -45z" />
|
109 |
+
<glyph unicode="" horiz-adv-x="1664" d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q8 -8 13 -19v710q0 26 13 32t32 -13l710 -710q19 -19 19 -45t-19 -45l-710 -710q-19 -19 -32 -13t-13 32v710q-5 -10 -13 -19z" />
|
110 |
+
<glyph unicode="" horiz-adv-x="1792" d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q8 -8 13 -19v710q0 26 13 32t32 -13l710 -710q8 -8 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-5 -10 -13 -19l-710 -710 q-19 -19 -32 -13t-13 32v710q-5 -10 -13 -19z" />
|
111 |
+
<glyph unicode="" horiz-adv-x="1024" d="M45 -115q-19 -19 -32 -13t-13 32v1472q0 26 13 32t32 -13l710 -710q8 -8 13 -19v678q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-1408q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v678q-5 -10 -13 -19z" />
|
112 |
+
<glyph unicode="" horiz-adv-x="1538" d="M14 557l710 710q19 19 45 19t45 -19l710 -710q19 -19 13 -32t-32 -13h-1472q-26 0 -32 13t13 32zM1473 0h-1408q-26 0 -45 19t-19 45v256q0 26 19 45t45 19h1408q26 0 45 -19t19 -45v-256q0 -26 -19 -45t-45 -19z" />
|
113 |
+
<glyph unicode="" horiz-adv-x="1280" d="M1171 1235l-531 -531l531 -531q19 -19 19 -45t-19 -45l-166 -166q-19 -19 -45 -19t-45 19l-742 742q-19 19 -19 45t19 45l742 742q19 19 45 19t45 -19l166 -166q19 -19 19 -45t-19 -45z" />
|
114 |
+
<glyph unicode="" horiz-adv-x="1280" d="M1107 659l-742 -742q-19 -19 -45 -19t-45 19l-166 166q-19 19 -19 45t19 45l531 531l-531 531q-19 19 -19 45t19 45l166 166q19 19 45 19t45 -19l742 -742q19 -19 19 -45t-19 -45z" />
|
115 |
+
<glyph unicode="" d="M1216 576v128q0 26 -19 45t-45 19h-256v256q0 26 -19 45t-45 19h-128q-26 0 -45 -19t-19 -45v-256h-256q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h256v-256q0 -26 19 -45t45 -19h128q26 0 45 19t19 45v256h256q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5 t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
116 |
+
<glyph unicode="" d="M1216 576v128q0 26 -19 45t-45 19h-768q-26 0 -45 -19t-19 -45v-128q0 -26 19 -45t45 -19h768q26 0 45 19t19 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5 t103 -385.5z" />
|
117 |
+
<glyph unicode="" d="M1149 414q0 26 -19 45l-181 181l181 181q19 19 19 45q0 27 -19 46l-90 90q-19 19 -46 19q-26 0 -45 -19l-181 -181l-181 181q-19 19 -45 19q-27 0 -46 -19l-90 -90q-19 -19 -19 -46q0 -26 19 -45l181 -181l-181 -181q-19 -19 -19 -45q0 -27 19 -46l90 -90q19 -19 46 -19 q26 0 45 19l181 181l181 -181q19 -19 45 -19q27 0 46 19l90 90q19 19 19 46zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
118 |
+
<glyph unicode="" d="M1284 802q0 28 -18 46l-91 90q-19 19 -45 19t-45 -19l-408 -407l-226 226q-19 19 -45 19t-45 -19l-91 -90q-18 -18 -18 -46q0 -27 18 -45l362 -362q19 -19 45 -19q27 0 46 19l543 543q18 18 18 45zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103 t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
119 |
+
<glyph unicode="" d="M896 160v192q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-192q0 -14 9 -23t23 -9h192q14 0 23 9t9 23zM1152 832q0 88 -55.5 163t-138.5 116t-170 41q-243 0 -371 -213q-15 -24 8 -42l132 -100q7 -6 19 -6q16 0 25 12q53 68 86 92q34 24 86 24q48 0 85.5 -26t37.5 -59 q0 -38 -20 -61t-68 -45q-63 -28 -115.5 -86.5t-52.5 -125.5v-36q0 -14 9 -23t23 -9h192q14 0 23 9t9 23q0 19 21.5 49.5t54.5 49.5q32 18 49 28.5t46 35t44.5 48t28 60.5t12.5 81zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5 t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
120 |
+
<glyph unicode="" d="M1024 160v160q0 14 -9 23t-23 9h-96v512q0 14 -9 23t-23 9h-320q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h96v-320h-96q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23t23 -9h448q14 0 23 9t9 23zM896 1056v160q0 14 -9 23t-23 9h-192q-14 0 -23 -9t-9 -23v-160q0 -14 9 -23 t23 -9h192q14 0 23 9t9 23zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
121 |
+
<glyph unicode="" d="M1197 512h-109q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h109q-32 108 -112.5 188.5t-188.5 112.5v-109q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v109q-108 -32 -188.5 -112.5t-112.5 -188.5h109q26 0 45 -19t19 -45v-128q0 -26 -19 -45t-45 -19h-109 q32 -108 112.5 -188.5t188.5 -112.5v109q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-109q108 32 188.5 112.5t112.5 188.5zM1536 704v-128q0 -26 -19 -45t-45 -19h-143q-37 -161 -154.5 -278.5t-278.5 -154.5v-143q0 -26 -19 -45t-45 -19h-128q-26 0 -45 19t-19 45v143 q-161 37 -278.5 154.5t-154.5 278.5h-143q-26 0 -45 19t-19 45v128q0 26 19 45t45 19h143q37 161 154.5 278.5t278.5 154.5v143q0 26 19 45t45 19h128q26 0 45 -19t19 -45v-143q161 -37 278.5 -154.5t154.5 -278.5h143q26 0 45 -19t19 -45z" />
|
122 |
+
<glyph unicode="" d="M1097 457l-146 -146q-10 -10 -23 -10t-23 10l-137 137l-137 -137q-10 -10 -23 -10t-23 10l-146 146q-10 10 -10 23t10 23l137 137l-137 137q-10 10 -10 23t10 23l146 146q10 10 23 10t23 -10l137 -137l137 137q10 10 23 10t23 -10l146 -146q10 -10 10 -23t-10 -23 l-137 -137l137 -137q10 -10 10 -23t-10 -23zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5 t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
123 |
+
<glyph unicode="" d="M1171 723l-422 -422q-19 -19 -45 -19t-45 19l-294 294q-19 19 -19 45t19 45l102 102q19 19 45 19t45 -19l147 -147l275 275q19 19 45 19t45 -19l102 -102q19 -19 19 -45t-19 -45zM1312 640q0 148 -73 273t-198 198t-273 73t-273 -73t-198 -198t-73 -273t73 -273t198 -198 t273 -73t273 73t198 198t73 273zM1536 640q0 -209 -103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103t385.5 -103t279.5 -279.5t103 -385.5z" />
|
124 |
+
<glyph unicode="" d="M1312 643q0 161 -87 295l-754 -753q137 -89 297 -89q111 0 211.5 43.5t173.5 116.5t116 174.5t43 212.5zM313 344l755 754q-135 91 -300 91q-148 0 -273 -73t-198 -199t-73 -274q0 -162 89 -299zM1536 643q0 -157 -61 -300t-163.5 -246t-245 -164t-298.5 -61t-298.5 61 t-245 164t-163.5 246t-61 300t61 299.5t163.5 245.5t245 164t298.5 61t298.5 -61t245 -164t163.5 -245.5t61 -299.5z" />
|
125 |
+
<glyph unicode="" d="M1536 640v-128q0 -53 -32.5 -90.5t-84.5 -37.5h-704l293 -294q38 -36 38 -90t-38 -90l-75 -76q-37 -37 -90 -37q-52 0 -91 37l-651 652q-37 37 -37 90q0 52 37 91l651 650q38 38 91 38q52 0 90 -38l75 -74q38 -38 38 -91t-38 -91l-293 -293h704q52 0 84.5 -37.5 t32.5 -90.5z" />
|
126 |
+
<glyph unicode="" d="M1472 576q0 -54 -37 -91l-651 -651q-39 -37 -91 -37q-51 0 -90 37l-75 75q-38 38 -38 91t38 91l293 293h-704q-52 0 -84.5 37.5t-32.5 90.5v128q0 53 32.5 90.5t84.5 37.5h704l-293 294q-38 36 -38 90t38 90l75 75q38 38 90 38q53 0 91 -38l651 -651q37 -35 37 -90z" />
|
127 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1611 565q0 -51 -37 -90l-75 -75q-38 -38 -91 -38q-54 0 -90 38l-294 293v-704q0 -52 -37.5 -84.5t-90.5 -32.5h-128q-53 0 -90.5 32.5t-37.5 84.5v704l-294 -293q-36 -38 -90 -38t-90 38l-75 75q-38 38 -38 90q0 53 38 91l651 651q35 37 90 37q54 0 91 -37l651 -651 q37 -39 37 -91z" />
|
128 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1611 704q0 -53 -37 -90l-651 -652q-39 -37 -91 -37q-53 0 -90 37l-651 652q-38 36 -38 90q0 53 38 91l74 75q39 37 91 37q53 0 90 -37l294 -294v704q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-704l294 294q37 37 90 37q52 0 91 -37l75 -75q37 -39 37 -91z" />
|
129 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 896q0 -26 -19 -45l-512 -512q-19 -19 -45 -19t-45 19t-19 45v256h-224q-98 0 -175.5 -6t-154 -21.5t-133 -42.5t-105.5 -69.5t-80 -101t-48.5 -138.5t-17.5 -181q0 -55 5 -123q0 -6 2.5 -23.5t2.5 -26.5q0 -15 -8.5 -25t-23.5 -10q-16 0 -28 17q-7 9 -13 22 t-13.5 30t-10.5 24q-127 285 -127 451q0 199 53 333q162 403 875 403h224v256q0 26 19 45t45 19t45 -19l512 -512q19 -19 19 -45z" />
|
130 |
+
<glyph unicode="" d="M755 480q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23zM1536 1344v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332 q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45z" />
|
131 |
+
<glyph unicode="" d="M768 576v-448q0 -26 -19 -45t-45 -19t-45 19l-144 144l-332 -332q-10 -10 -23 -10t-23 10l-114 114q-10 10 -10 23t10 23l332 332l-144 144q-19 19 -19 45t19 45t45 19h448q26 0 45 -19t19 -45zM1523 1248q0 -13 -10 -23l-332 -332l144 -144q19 -19 19 -45t-19 -45 t-45 -19h-448q-26 0 -45 19t-19 45v448q0 26 19 45t45 19t45 -19l144 -144l332 332q10 10 23 10t23 -10l114 -114q10 -10 10 -23z" />
|
132 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1408 800v-192q0 -40 -28 -68t-68 -28h-416v-416q0 -40 -28 -68t-68 -28h-192q-40 0 -68 28t-28 68v416h-416q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h416v416q0 40 28 68t68 28h192q40 0 68 -28t28 -68v-416h416q40 0 68 -28t28 -68z" />
|
133 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1408 800v-192q0 -40 -28 -68t-68 -28h-1216q-40 0 -68 28t-28 68v192q0 40 28 68t68 28h1216q40 0 68 -28t28 -68z" />
|
134 |
+
<glyph unicode="" horiz-adv-x="1664" d="M1482 486q46 -26 59.5 -77.5t-12.5 -97.5l-64 -110q-26 -46 -77.5 -59.5t-97.5 12.5l-266 153v-307q0 -52 -38 -90t-90 -38h-128q-52 0 -90 38t-38 90v307l-266 -153q-46 -26 -97.5 -12.5t-77.5 59.5l-64 110q-26 46 -12.5 97.5t59.5 77.5l266 154l-266 154 q-46 26 -59.5 77.5t12.5 97.5l64 110q26 46 77.5 59.5t97.5 -12.5l266 -153v307q0 52 38 90t90 38h128q52 0 90 -38t38 -90v-307l266 153q46 26 97.5 12.5t77.5 -59.5l64 -110q26 -46 12.5 -97.5t-59.5 -77.5l-266 -154z" />
|
135 |
+
<glyph unicode="" d="M768 1408q209 0 385.5 -103t279.5 -279.5t103 -385.5t-103 -385.5t-279.5 -279.5t-385.5 -103t-385.5 103t-279.5 279.5t-103 385.5t103 385.5t279.5 279.5t385.5 103zM896 161v190q0 14 -9 23.5t-22 9.5h-192q-13 0 -23 -10t-10 -23v-190q0 -13 10 -23t23 -10h192 q13 0 22 9.5t9 23.5zM894 505l18 621q0 12 -10 18q-10 8 -24 8h-220q-14 0 -24 -8q-10 -6 -10 -18l17 -621q0 -10 10 -17.5t24 -7.5h185q14 0 23.5 7.5t10.5 17.5z" />
|
136 |
+
<glyph unicode="" d="M928 180v56v468v192h-320v-192v-468v-56q0 -25 18 -38.5t46 -13.5h192q28 0 46 13.5t18 38.5zM472 1024h195l-126 161q-26 31 -69 31q-40 0 -68 -28t-28 -68t28 -68t68 -28zM1160 1120q0 40 -28 68t-68 28q-43 0 -69 -31l-125 -161h194q40 0 68 28t28 68zM1536 864v-320 q0 -14 -9 -23t-23 -9h-96v-416q0 -40 -28 -68t-68 -28h-1088q-40 0 -68 28t-28 68v416h-96q-14 0 -23 9t-9 23v320q0 14 9 23t23 9h440q-93 0 -158.5 65.5t-65.5 158.5t65.5 158.5t158.5 65.5q107 0 168 -77l128 -165l128 165q61 77 168 77q93 0 158.5 -65.5t65.5 -158.5 t-65.5 -158.5t-158.5 -65.5h440q14 0 23 -9t9 -23z" />
|
137 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1280 832q0 26 -19 45t-45 19q-172 0 -318 -49.5t-259.5 -134t-235.5 -219.5q-19 -21 -19 -45q0 -26 19 -45t45 -19q24 0 45 19q27 24 74 71t67 66q137 124 268.5 176t313.5 52q26 0 45 19t19 45zM1792 1030q0 -95 -20 -193q-46 -224 -184.5 -383t-357.5 -268 q-214 -108 -438 -108q-148 0 -286 47q-15 5 -88 42t-96 37q-16 0 -39.5 -32t-45 -70t-52.5 -70t-60 -32q-30 0 -51 11t-31 24t-27 42q-2 4 -6 11t-5.5 10t-3 9.5t-1.5 13.5q0 35 31 73.5t68 65.5t68 56t31 48q0 4 -14 38t-16 44q-9 51 -9 104q0 115 43.5 220t119 184.5 t170.5 139t204 95.5q55 18 145 25.5t179.5 9t178.5 6t163.5 24t113.5 56.5l29.5 29.5t29.5 28t27 20t36.5 16t43.5 4.5q39 0 70.5 -46t47.5 -112t24 -124t8 -96z" />
|
138 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1408 -160v-64q0 -13 -9.5 -22.5t-22.5 -9.5h-1344q-13 0 -22.5 9.5t-9.5 22.5v64q0 13 9.5 22.5t22.5 9.5h1344q13 0 22.5 -9.5t9.5 -22.5zM1152 896q0 -78 -24.5 -144t-64 -112.5t-87.5 -88t-96 -77.5t-87.5 -72t-64 -81.5t-24.5 -96.5q0 -96 67 -224l-4 1l1 -1 q-90 41 -160 83t-138.5 100t-113.5 122.5t-72.5 150.5t-27.5 184q0 78 24.5 144t64 112.5t87.5 88t96 77.5t87.5 72t64 81.5t24.5 96.5q0 94 -66 224l3 -1l-1 1q90 -41 160 -83t138.5 -100t113.5 -122.5t72.5 -150.5t27.5 -184z" />
|
139 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1664 576q-152 236 -381 353q61 -104 61 -225q0 -185 -131.5 -316.5t-316.5 -131.5t-316.5 131.5t-131.5 316.5q0 121 61 225q-229 -117 -381 -353q133 -205 333.5 -326.5t434.5 -121.5t434.5 121.5t333.5 326.5zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5 t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1792 576q0 -34 -20 -69q-140 -230 -376.5 -368.5t-499.5 -138.5t-499.5 139t-376.5 368q-20 35 -20 69t20 69q140 229 376.5 368t499.5 139t499.5 -139t376.5 -368q20 -35 20 -69z" />
|
140 |
+
<glyph unicode="" horiz-adv-x="1792" d="M555 201l78 141q-87 63 -136 159t-49 203q0 121 61 225q-229 -117 -381 -353q167 -258 427 -375zM944 960q0 20 -14 34t-34 14q-125 0 -214.5 -89.5t-89.5 -214.5q0 -20 14 -34t34 -14t34 14t14 34q0 86 61 147t147 61q20 0 34 14t14 34zM1307 1151q0 -7 -1 -9 q-105 -188 -315 -566t-316 -567l-49 -89q-10 -16 -28 -16q-12 0 -134 70q-16 10 -16 28q0 12 44 87q-143 65 -263.5 173t-208.5 245q-20 31 -20 69t20 69q153 235 380 371t496 136q89 0 180 -17l54 97q10 16 28 16q5 0 18 -6t31 -15.5t33 -18.5t31.5 -18.5t19.5 -11.5 q16 -10 16 -27zM1344 704q0 -139 -79 -253.5t-209 -164.5l280 502q8 -45 8 -84zM1792 576q0 -35 -20 -69q-39 -64 -109 -145q-150 -172 -347.5 -267t-419.5 -95l74 132q212 18 392.5 137t301.5 307q-115 179 -282 294l63 112q95 -64 182.5 -153t144.5 -184q20 -34 20 -69z " />
|
141 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1024 161v190q0 14 -9.5 23.5t-22.5 9.5h-192q-13 0 -22.5 -9.5t-9.5 -23.5v-190q0 -14 9.5 -23.5t22.5 -9.5h192q13 0 22.5 9.5t9.5 23.5zM1022 535l18 459q0 12 -10 19q-13 11 -24 11h-220q-11 0 -24 -11q-10 -7 -10 -21l17 -457q0 -10 10 -16.5t24 -6.5h185 q14 0 23.5 6.5t10.5 16.5zM1008 1469l768 -1408q35 -63 -2 -126q-17 -29 -46.5 -46t-63.5 -17h-1536q-34 0 -63.5 17t-46.5 46q-37 63 -2 126l768 1408q17 31 47 49t65 18t65 -18t47 -49z" />
|
142 |
+
<glyph unicode="" horiz-adv-x="1408" d="M1376 1376q44 -52 12 -148t-108 -172l-161 -161l160 -696q5 -19 -12 -33l-128 -96q-7 -6 -19 -6q-4 0 -7 1q-15 3 -21 16l-279 508l-259 -259l53 -194q5 -17 -8 -31l-96 -96q-9 -9 -23 -9h-2q-15 2 -24 13l-189 252l-252 189q-11 7 -13 23q-1 13 9 25l96 97q9 9 23 9 q6 0 8 -1l194 -53l259 259l-508 279q-14 8 -17 24q-2 16 9 27l128 128q14 13 30 8l665 -159l160 160q76 76 172 108t148 -12z" />
|
143 |
+
<glyph unicode="" horiz-adv-x="1664" d="M128 -128h288v288h-288v-288zM480 -128h320v288h-320v-288zM128 224h288v320h-288v-320zM480 224h320v320h-320v-320zM128 608h288v288h-288v-288zM864 -128h320v288h-320v-288zM480 608h320v288h-320v-288zM1248 -128h288v288h-288v-288zM864 224h320v320h-320v-320z M512 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1248 224h288v320h-288v-320zM864 608h320v288h-320v-288zM1248 608h288v288h-288v-288zM1280 1088v288q0 13 -9.5 22.5t-22.5 9.5h-64 q-13 0 -22.5 -9.5t-9.5 -22.5v-288q0 -13 9.5 -22.5t22.5 -9.5h64q13 0 22.5 9.5t9.5 22.5zM1664 1152v-1280q0 -52 -38 -90t-90 -38h-1408q-52 0 -90 38t-38 90v1280q0 52 38 90t90 38h128v96q0 66 47 113t113 47h64q66 0 113 -47t47 -113v-96h384v96q0 66 47 113t113 47 h64q66 0 113 -47t47 -113v-96h128q52 0 90 -38t38 -90z" />
|
144 |
+
<glyph unicode="" horiz-adv-x="1792" d="M666 1055q-60 -92 -137 -273q-22 45 -37 72.5t-40.5 63.5t-51 56.5t-63 35t-81.5 14.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q250 0 410 -225zM1792 256q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5v192q-32 0 -85 -0.5t-81 -1t-73 1 t-71 5t-64 10.5t-63 18.5t-58 28.5t-59 40t-55 53.5t-56 69.5q59 93 136 273q22 -45 37 -72.5t40.5 -63.5t51 -56.5t63 -35t81.5 -14.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23zM1792 1152q0 -14 -9 -23l-320 -320q-9 -9 -23 -9q-13 0 -22.5 9.5t-9.5 22.5 v192h-256q-48 0 -87 -15t-69 -45t-51 -61.5t-45 -77.5q-32 -62 -78 -171q-29 -66 -49.5 -111t-54 -105t-64 -100t-74 -83t-90 -68.5t-106.5 -42t-128 -16.5h-224q-14 0 -23 9t-9 23v192q0 14 9 23t23 9h224q48 0 87 15t69 45t51 61.5t45 77.5q32 62 78 171q29 66 49.5 111 t54 105t64 100t74 83t90 68.5t106.5 42t128 16.5h256v192q0 14 9 23t23 9q12 0 24 -10l319 -319q9 -9 9 -23z" />
|
145 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1792 640q0 -174 -120 -321.5t-326 -233t-450 -85.5q-70 0 -145 8q-198 -175 -460 -242q-49 -14 -114 -22q-17 -2 -30.5 9t-17.5 29v1q-3 4 -0.5 12t2 10t4.5 9.5l6 9t7 8.5t8 9q7 8 31 34.5t34.5 38t31 39.5t32.5 51t27 59t26 76q-157 89 -247.5 220t-90.5 281 q0 130 71 248.5t191 204.5t286 136.5t348 50.5q244 0 450 -85.5t326 -233t120 -321.5z" />
|
146 |
+
<glyph unicode="" d="M1536 704v-128q0 -201 -98.5 -362t-274 -251.5t-395.5 -90.5t-395.5 90.5t-274 251.5t-98.5 362v128q0 26 19 45t45 19h384q26 0 45 -19t19 -45v-128q0 -52 23.5 -90t53.5 -57t71 -30t64 -13t44 -2t44 2t64 13t71 30t53.5 57t23.5 90v128q0 26 19 45t45 19h384 q26 0 45 -19t19 -45zM512 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45zM1536 1344v-384q0 -26 -19 -45t-45 -19h-384q-26 0 -45 19t-19 45v384q0 26 19 45t45 19h384q26 0 45 -19t19 -45z" />
|
147 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1683 205l-166 -165q-19 -19 -45 -19t-45 19l-531 531l-531 -531q-19 -19 -45 -19t-45 19l-166 165q-19 19 -19 45.5t19 45.5l742 741q19 19 45 19t45 -19l742 -741q19 -19 19 -45.5t-19 -45.5z" />
|
148 |
+
<glyph unicode="" horiz-adv-x="1792" d="M1683 728l-742 -741q-19 -19 -45 -19t-45 19l-742 741q-19 19 -19 45.5t19 45.5l166 165q19 19 45 19t45 -19l531 -531l531 531q19 19 45 19t45 -19l166 -165q19 -19 19 -45.5t-19 -45.5z"
|