BlossomThemes Toolkit - Version 2.2.1

Version Description

Released on: 24th March, 2021

Enhancements:

  • WordPress 5.7 compatibility test added.
  • Flush rewrite conditional added.
  • rel noopener noexternal support added to external widget links.
  • Admin JS support added for Posts and Pages in favor of Elementor.

Fixes:

  • Featured Page widget conflict resolved with Elementor.
  • jQuery deprication warning fixes.
  • Minor bug fixes.
Download this release

Release Info

Developer blossomthemes
Plugin Icon 128x128 BlossomThemes Toolkit
Version 2.2.1
Comparing to
See all releases

Code changes from version 2.2.0 to 2.2.1

README.txt CHANGED
@@ -1,211 +1,228 @@
1
- === BlossomThemes Toolkit ===
2
- Contributors: blossomthemes
3
- Donate link: https://blossomthemes.com
4
- Tags: toolkit, blossom
5
- Requires at least: 4.4.0
6
- Tested up to: 5.6
7
- Requires PHP: 5.6
8
- Stable tag: 2.2.0
9
- License: GPLv2 or later
10
- License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
-
12
- BlossomThemes Toolkit provides you necessary widgets for better and effective blogging.
13
-
14
- == Description ==
15
-
16
- BlossomThemes Toolkit is a lightweight and safe plugin that generates 12 much-necessary custom widgets. This plugin is optimized for BlossomTheme’s themes but also works great with other themes.
17
-
18
- = Widgets included in BlossomThemes Toolkit =
19
-
20
- * Blossom: Advertisement-- This widget lets you add advertisements on your website.
21
- * Blossom: Author Bio-- You can place the author bio on sidebars using this widget.
22
- * Blossom: Custom Categories-- You can add images to the categories and also display post counts of the selected category using this widget.
23
- * Blossom: Facebook Page-- This widget allows you to show your Facebook page on your WordPress website.
24
- * Blossom: Image Text-- You can add your favorite image with caption and link with this widget.
25
- * Blossom: Pinterest-- This widget lets you show your latest pins on your WordPress website.
26
- * Blossom: Popular Post- This widget helps you show popular posts of your website.
27
- * Blossom: Posts Category Slider-- You can display the posts of selected category in a slider using this widget.
28
- * Blossom: Recent Post-- This widget helps you display recent posts of your website.
29
- * Blossom: Snapchat Snapcode-- You can show your Snapchat’s snapcode using this widget.
30
- * Blossom: Social Media-- This widget allows you to add social media links on your website.
31
- * Blossom: Twitter Feed-- You can now show your twitter news feed right on your website using this widget
32
-
33
-
34
-
35
- == Installation ==
36
- **From your WordPress dashboard**
37
-
38
- 1. Visit 'Plugins > Add New',
39
- 2. Search for 'BlossomThemes Toolkit' and install the plugin.
40
- 3. Activate ‘BlossomThemes Toolkit’ from your Plugins page.
41
-
42
-
43
- == Screenshots ==
44
-
45
- 1. Widgets
46
-
47
- == Changelog ==
48
-
49
- = 2.2.0 =
50
-
51
- Released on: 20th August, 2020
52
-
53
- Fixes:
54
-
55
- * Social Media widget icon issue resolved.
56
- * Client Logo widget issue resolved.
57
- * Minor bug fixes.
58
-
59
- = 2.1.9 =
60
-
61
- Released on: 9th July, 2020
62
-
63
- Fixes:
64
-
65
- * Thumbnail image for posts category issue resolved.
66
- * Minor bug fixes.
67
-
68
- = 2.1.8 =
69
-
70
- Released on: 2nd July, 2020
71
-
72
- Fixes:
73
-
74
- * FontAwesome assets loaded on Blossomthemes Toolkit admin pages.
75
- * Minor bug fixes.
76
-
77
- = 2.1.7 =
78
-
79
- Released on: 3rd May, 2020
80
-
81
- Enhancements:
82
-
83
- * Plugin registered Post type and Taxonomy strings translated
84
-
85
- Fixes:
86
-
87
- * Plugin registered Page Template update failed issue in Gutenberg fixed.
88
- * Minor bug fixes.
89
-
90
- = 2.1.6 =
91
-
92
- Released on: 7th January, 2020
93
-
94
- Fixes:
95
-
96
- * Changes for Elementor Compatibility.
97
- * Minor bug fixes.
98
-
99
- = 2.1.5 =
100
-
101
- Released on: 18th November, 2019
102
-
103
- Fixes:
104
-
105
- * Image Alignmnet issue in Featured Page Widget fixed
106
- * Minor bug fixes.
107
-
108
- = 2.1.4 =
109
-
110
- Released on: 15th November, 2019
111
-
112
- Enhancements:
113
-
114
- * Posts date format specified to the default date_format option
115
- * Compatibility testing WordPress 5.3.
116
- * Added Rest API support for Portfolio post type and categories.
117
-
118
- Fixes:
119
-
120
- * Icons List issue in Elementor fixed
121
- * Fixed JS error in Customizer.
122
- * Minor Bug Fixes
123
-
124
- = 2.1.3 =
125
-
126
- Released on: 26th September, 2019
127
-
128
- Fixes:
129
-
130
- * Popular and Recent Post thumbnail issue fixed.
131
- * Minor bug fixes.
132
-
133
- Enhancement:
134
-
135
- * Enqueued widget scripts in elementor edit screen Interface.
136
- * SVG updated for no featured images.
137
- * Filters added for theme support.
138
-
139
- = 2.1.2 =
140
- * CSS conflict issue fixed
141
- * Assets handler corrected
142
-
143
- = 2.1.1 =
144
- * Fontawesome 5.6.3 updated
145
- * Portfolio responsive design issue fixed
146
-
147
- = 2.1.0 =
148
- * Featured Page Widget Issue fixed
149
-
150
- = 2.0.9 =
151
- * Images optimized for lazy-loading
152
- * Portfolio locate template path updated
153
-
154
- = 2.0.8 =
155
- * Ad widget issue fixed
156
-
157
- = 2.0.7 =
158
- * Call-to-Action Bgcolor issue fixed
159
- * Twitter Syndication js issue fixed
160
-
161
- = 2.0.6 =
162
- * Filter for all the widgets
163
- * Client Logo issue fixed
164
-
165
- = 2.0.5 =
166
- * Fixed Featured Page widget issue
167
-
168
- = 2.0.4 =
169
- * Anchor link target set in featured page, image text and team member widget
170
- * Fixed empty twitter username issue
171
- * Fixed multiple widgets repeater conflicts in image text, call to action and client logo widget
172
- * Loading assets in active widget instances only
173
-
174
- = 2.0.3 =
175
- * Filter for frontend assets
176
-
177
- = 2.0.2 =
178
- * FontAwesome 5 integration issues fixed
179
-
180
- = 2.0.1 =
181
- * FontAwesome 5 plugin independent
182
-
183
- = 2.0.0 =
184
- * FontAwesome 5 integrated
185
-
186
- = 1.0.8 =
187
- * Author profile widget issues fix
188
-
189
- = 1.0.7 =
190
- * Widget image url changed to id
191
-
192
- = 1.0.6 =
193
- * Widget image url changed to id
194
-
195
- = 1.0.5 =
196
- * Minor design fixes
197
-
198
- = 1.0.4 =
199
- * More widget added
200
-
201
- = 1.0.3 =
202
- * Custom categories widget
203
-
204
- = 1.0.2 =
205
- * Compatibility test
206
-
207
- = 1.0.1 =
208
- * Compatibility test
209
-
210
- = 1.0.0 =
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
211
  * Initial release
1
+ === BlossomThemes Toolkit ===
2
+ Contributors: blossomthemes
3
+ Donate link: https://blossomthemes.com
4
+ Tags: toolkit, blossom
5
+ Requires at least: 4.4.0
6
+ Tested up to: 5.7
7
+ Requires PHP: 5.6
8
+ Stable tag: 2.2.1
9
+ License: GPLv2 or later
10
+ License URI: http://www.gnu.org/licenses/gpl-2.0.html
11
+
12
+ BlossomThemes Toolkit provides you necessary widgets for better and effective blogging.
13
+
14
+ == Description ==
15
+
16
+ BlossomThemes Toolkit is a lightweight and safe plugin that generates 12 much-necessary custom widgets. This plugin is optimized for BlossomTheme’s themes but also works great with other themes.
17
+
18
+ = Widgets included in BlossomThemes Toolkit =
19
+
20
+ * Blossom: Advertisement-- This widget lets you add advertisements on your website.
21
+ * Blossom: Author Bio-- You can place the author bio on sidebars using this widget.
22
+ * Blossom: Custom Categories-- You can add images to the categories and also display post counts of the selected category using this widget.
23
+ * Blossom: Facebook Page-- This widget allows you to show your Facebook page on your WordPress website.
24
+ * Blossom: Image Text-- You can add your favorite image with caption and link with this widget.
25
+ * Blossom: Pinterest-- This widget lets you show your latest pins on your WordPress website.
26
+ * Blossom: Popular Post- This widget helps you show popular posts of your website.
27
+ * Blossom: Posts Category Slider-- You can display the posts of selected category in a slider using this widget.
28
+ * Blossom: Recent Post-- This widget helps you display recent posts of your website.
29
+ * Blossom: Snapchat Snapcode-- You can show your Snapchat’s snapcode using this widget.
30
+ * Blossom: Social Media-- This widget allows you to add social media links on your website.
31
+ * Blossom: Twitter Feed-- You can now show your twitter news feed right on your website using this widget
32
+
33
+
34
+
35
+ == Installation ==
36
+ **From your WordPress dashboard**
37
+
38
+ 1. Visit 'Plugins > Add New',
39
+ 2. Search for 'BlossomThemes Toolkit' and install the plugin.
40
+ 3. Activate ‘BlossomThemes Toolkit’ from your Plugins page.
41
+
42
+
43
+ == Screenshots ==
44
+
45
+ 1. Widgets
46
+
47
+ == Changelog ==
48
+
49
+ = 2.2.1 =
50
+
51
+ Released on: 24th March, 2021
52
+
53
+ Enhancements:
54
+
55
+ * WordPress 5.7 compatibility test added.
56
+ * Flush rewrite conditional added.
57
+ * rel noopener noexternal support added to external widget links.
58
+ * Admin JS support added for Posts and Pages in favor of Elementor.
59
+
60
+ Fixes:
61
+
62
+ * Featured Page widget conflict resolved with Elementor.
63
+ * jQuery deprication warning fixes.
64
+ * Minor bug fixes.
65
+
66
+ = 2.2.0 =
67
+
68
+ Released on: 20th August, 2020
69
+
70
+ Fixes:
71
+
72
+ * Social Media widget icon issue resolved.
73
+ * Client Logo widget issue resolved.
74
+ * Minor bug fixes.
75
+
76
+ = 2.1.9 =
77
+
78
+ Released on: 9th July, 2020
79
+
80
+ Fixes:
81
+
82
+ * Thumbnail image for posts category issue resolved.
83
+ * Minor bug fixes.
84
+
85
+ = 2.1.8 =
86
+
87
+ Released on: 2nd July, 2020
88
+
89
+ Fixes:
90
+
91
+ * FontAwesome assets loaded on Blossomthemes Toolkit admin pages.
92
+ * Minor bug fixes.
93
+
94
+ = 2.1.7 =
95
+
96
+ Released on: 3rd May, 2020
97
+
98
+ Enhancements:
99
+
100
+ * Plugin registered Post type and Taxonomy strings translated
101
+
102
+ Fixes:
103
+
104
+ * Plugin registered Page Template update failed issue in Gutenberg fixed.
105
+ * Minor bug fixes.
106
+
107
+ = 2.1.6 =
108
+
109
+ Released on: 7th January, 2020
110
+
111
+ Fixes:
112
+
113
+ * Changes for Elementor Compatibility.
114
+ * Minor bug fixes.
115
+
116
+ = 2.1.5 =
117
+
118
+ Released on: 18th November, 2019
119
+
120
+ Fixes:
121
+
122
+ * Image Alignmnet issue in Featured Page Widget fixed
123
+ * Minor bug fixes.
124
+
125
+ = 2.1.4 =
126
+
127
+ Released on: 15th November, 2019
128
+
129
+ Enhancements:
130
+
131
+ * Posts date format specified to the default date_format option
132
+ * Compatibility testing WordPress 5.3.
133
+ * Added Rest API support for Portfolio post type and categories.
134
+
135
+ Fixes:
136
+
137
+ * Icons List issue in Elementor fixed
138
+ * Fixed JS error in Customizer.
139
+ * Minor Bug Fixes
140
+
141
+ = 2.1.3 =
142
+
143
+ Released on: 26th September, 2019
144
+
145
+ Fixes:
146
+
147
+ * Popular and Recent Post thumbnail issue fixed.
148
+ * Minor bug fixes.
149
+
150
+ Enhancement:
151
+
152
+ * Enqueued widget scripts in elementor edit screen Interface.
153
+ * SVG updated for no featured images.
154
+ * Filters added for theme support.
155
+
156
+ = 2.1.2 =
157
+ * CSS conflict issue fixed
158
+ * Assets handler corrected
159
+
160
+ = 2.1.1 =
161
+ * Fontawesome 5.6.3 updated
162
+ * Portfolio responsive design issue fixed
163
+
164
+ = 2.1.0 =
165
+ * Featured Page Widget Issue fixed
166
+
167
+ = 2.0.9 =
168
+ * Images optimized for lazy-loading
169
+ * Portfolio locate template path updated
170
+
171
+ = 2.0.8 =
172
+ * Ad widget issue fixed
173
+
174
+ = 2.0.7 =
175
+ * Call-to-Action Bgcolor issue fixed
176
+ * Twitter Syndication js issue fixed
177
+
178
+ = 2.0.6 =
179
+ * Filter for all the widgets
180
+ * Client Logo issue fixed
181
+
182
+ = 2.0.5 =
183
+ * Fixed Featured Page widget issue
184
+
185
+ = 2.0.4 =
186
+ * Anchor link target set in featured page, image text and team member widget
187
+ * Fixed empty twitter username issue
188
+ * Fixed multiple widgets repeater conflicts in image text, call to action and client logo widget
189
+ * Loading assets in active widget instances only
190
+
191
+ = 2.0.3 =
192
+ * Filter for frontend assets
193
+
194
+ = 2.0.2 =
195
+ * FontAwesome 5 integration issues fixed
196
+
197
+ = 2.0.1 =
198
+ * FontAwesome 5 plugin independent
199
+
200
+ = 2.0.0 =
201
+ * FontAwesome 5 integrated
202
+
203
+ = 1.0.8 =
204
+ * Author profile widget issues fix
205
+
206
+ = 1.0.7 =
207
+ * Widget image url changed to id
208
+
209
+ = 1.0.6 =
210
+ * Widget image url changed to id
211
+
212
+ = 1.0.5 =
213
+ * Minor design fixes
214
+
215
+ = 1.0.4 =
216
+ * More widget added
217
+
218
+ = 1.0.3 =
219
+ * Custom categories widget
220
+
221
+ = 1.0.2 =
222
+ * Compatibility test
223
+
224
+ = 1.0.1 =
225
+ * Compatibility test
226
+
227
+ = 1.0.0 =
228
  * Initial release
admin/class-blossomthemes-toolkit-admin.php CHANGED
@@ -1,516 +1,521 @@
1
- <?php
2
-
3
- /**
4
- * The admin-specific functionality of the plugin.
5
- *
6
- * @link http://wordpress.org/plugins/blossomthemes-toolkit/
7
- * @since 1.0.0
8
- *
9
- * @package Blossomthemes_Toolkit
10
- * @subpackage Blossomthemes_Toolkit/admin
11
- */
12
-
13
- /**
14
- * The admin-specific functionality of the plugin.
15
- *
16
- * Defines the plugin name, version, and two examples hooks for how to
17
- * enqueue the admin-specific stylesheet and JavaScript.
18
- *
19
- * @package Blossomthemes_Toolkit
20
- * @subpackage Blossomthemes_Toolkit/admin
21
- * @author blossomthemes <info@blossomthemes.com>
22
- */
23
- class Blossomthemes_Toolkit_Admin {
24
-
25
- /**
26
- * The ID of this plugin.
27
- *
28
- * @since 1.0.0
29
- * @access private
30
- * @var string $plugin_name The ID of this plugin.
31
- */
32
- private $plugin_name;
33
-
34
- /**
35
- * The version of this plugin.
36
- *
37
- * @since 1.0.0
38
- * @access private
39
- * @var string $version The current version of this plugin.
40
- */
41
- private $version;
42
-
43
- /**
44
- * Initialize the class and set its properties.
45
- *
46
- * @since 1.0.0
47
- * @param string $plugin_name The name of this plugin.
48
- * @param string $version The version of this plugin.
49
- */
50
- public function __construct( $plugin_name, $version ) {
51
-
52
- $this->plugin_name = $plugin_name;
53
- $this->version = BTTK_PLUGIN_VERSION;
54
-
55
- }
56
-
57
- /**
58
- * Register the stylesheets for the admin area.
59
- *
60
- * @since 1.0.0
61
- */
62
- public function enqueue_styles() {
63
-
64
- /**
65
- * This function is provided for demonstration purposes only.
66
- *
67
- * An instance of this class should be passed to the run() function
68
- * defined in Blossomthemes_Toolkit_Loader as all of the hooks are defined
69
- * in that particular class.
70
- *
71
- * The Blossomthemes_Toolkit_Loader will then create the relationship
72
- * between the defined hooks and the functions defined in this
73
- * class.
74
- */
75
-
76
- $screen = get_current_screen();
77
-
78
- if ( $screen->post_type == 'blossom-portfolio' || $screen->id === "widgets" || $screen->id === "customize" ) {
79
- wp_enqueue_style( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'css/blossomthemes-toolkit-admin.css', array(), $this->version, 'all' );
80
- wp_enqueue_style( 'chosen', plugin_dir_url( __FILE__ ) . 'css/chosen.min.css', array(), $this->version, 'all' );
81
- wp_enqueue_style( 'wp-color-picker' );
82
- wp_enqueue_style('thickbox');
83
- }
84
-
85
- }
86
-
87
- /**
88
- * Register the JavaScript for the admin area.
89
- *
90
- * @since 1.0.0
91
- */
92
- public function enqueue_scripts() {
93
-
94
- /**
95
- * This function is provided for demonstration purposes only.
96
- *
97
- * An instance of this class should be passed to the run() function
98
- * defined in Blossomthemes_Toolkit_Loader as all of the hooks are defined
99
- * in that particular class.
100
- *
101
- * The Blossomthemes_Toolkit_Loader will then create the relationship
102
- * between the defined hooks and the functions defined in this
103
- * class.
104
- */
105
- $screen = get_current_screen();
106
-
107
- if ( $screen->post_type == 'blossom-portfolio' || $screen->id === "widgets" || $screen->id === "customize"
108
- || $screen->taxonomy == 'category' ) {
109
- wp_enqueue_media();
110
- wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/blossomthemes-toolkit-admin.js', array( 'jquery','wp-color-picker' ), $this->version, true );
111
- wp_localize_script( $this->plugin_name, 'bttk_theme_toolkit_pro_uploader', array(
112
- 'upload' => __( 'Upload', 'blossomthemes-toolkit' ),
113
- 'change' => __( 'Change', 'blossomthemes-toolkit' ),
114
- 'msg' => __( 'Please upload valid image file.', 'blossomthemes-toolkit' )
115
- ));
116
- $confirming = array(
117
- 'msg' => __( 'Are you sure?', 'blossomthemes-toolkit' ),
118
- 'category' => __('Select Categories','blossomthemes-toolkit')
119
- );
120
- wp_localize_script( $this->plugin_name, 'sociconsmsg', $confirming );
121
-
122
- wp_localize_script( $this->plugin_name, 'sociconsmsg', array(
123
- 'msg' => __( 'Are you sure you want to delete this Social Media?', 'blossomthemes-toolkit' )));
124
-
125
- wp_enqueue_script( 'chosen', plugin_dir_url( __FILE__ ) . 'js/chosen.jquery.min.js', array( 'jquery' ), $this->version, true );
126
-
127
- wp_enqueue_script( 'font-awesome', plugin_dir_url( __FILE__ ) . 'js/fontawesome/all.js', array( 'jquery'), '5.6.3', true );
128
- wp_enqueue_script( 'v4-shims', plugin_dir_url( __FILE__ ) . 'js/fontawesome/v4-shims.js', array( 'jquery'), '5.6.3', true );
129
- }
130
- }
131
-
132
- public function bttk_icon_list_enqueue(){
133
- $obj = new BlossomThemes_Toolkit_Functions;
134
- $socicons = $obj->bttk_icon_list();
135
- echo '<div class="bttk-icons-wrap-template"><div class="bttk-icons-wrap"><ul class="bttk-icons-list">';
136
- foreach ($socicons as $socicon) {
137
- if($socicon == 'rss'){
138
- echo '<li><i class="fas fa-'.$socicon.'"></i></li>';
139
- }
140
- else{
141
- echo '<li><i class="fab fa-'.$socicon.'"></i></li>';
142
- }
143
-
144
- }
145
- echo'</ul></div></div>';
146
- echo '<style>
147
- .bttk-icons-wrap{
148
- display:none;
149
- }
150
- </style>';
151
- }
152
-
153
- /**
154
- * Portfolio template.
155
- */
156
- function bttk_get_portfolio_template( $template ) {
157
- $post = get_post();
158
- $page_template = get_post_meta( $post->ID, '_wp_page_template', true );
159
- if( $page_template == 'templates/blossom-portfolio.php' ){
160
- if ( $theme_file = locate_template( 'templates/blossom-portfolio.php' ) ) {
161
- return $theme_file;
162
- } else {
163
- return BTTK_BASE_PATH . '/includes/templates/blossom-portfolio.php';
164
- }
165
- }
166
- return $template;
167
- }
168
-
169
- /**
170
- * Portfolio template returned.
171
- */
172
- function bttk_filter_admin_page_templates( $templates ) {
173
- $templates['templates/blossom-portfolio.php'] = __( 'Portfolio Template', 'blossomthemes-toolkit' );
174
- return $templates;
175
- }
176
-
177
- /**
178
- * Portfolio template added.
179
- */
180
- function wpte_add_portfolio_templates() {
181
-
182
- // If REST_REQUEST is defined (by WordPress) and is a TRUE, then it's a REST API request.
183
- $is_rest_route = (defined('REST_REQUEST') && REST_REQUEST);
184
- if (
185
- (is_admin() && !$is_rest_route) || // admin and AJAX (via admin-ajax.php) requests
186
- (!is_admin() && $is_rest_route) // REST requests only
187
- ) {
188
- add_filter('theme_page_templates', array($this, 'bttk_filter_admin_page_templates'));
189
- } else {
190
- add_filter('page_template', array($this, 'bttk_get_portfolio_template'));
191
- }
192
-
193
- }
194
-
195
- /**
196
- * Template over-ride for single trip.
197
- *
198
- * @since 1.0.0
199
- */
200
- function bttk_include_template_function( $template_path ) {
201
- if ( is_singular( 'blossom-portfolio' ) )
202
- {
203
- if ( $theme_file = locate_template( 'single-blossom-portfolio.php' ) ) {
204
- $template_path = $theme_file;
205
- } else {
206
- $template_path = BTTK_BASE_PATH . '/includes/templates/single-blossom-portfolio.php';
207
- }
208
- }
209
- return $template_path;
210
- }
211
- /*
212
- * Add a form field in the new category page
213
- * @since 1.0.0
214
- */
215
- public function bttk_add_category_image ( $taxonomy ) { ?>
216
- <div class="form-field term-group">
217
- <label for="category-image-id"><?php _e('Image', 'blossomthemes-toolkit'); ?></label>
218
- <input type="hidden" id="category-image-id" name="category-image-id" class="custom_media_url" value="">
219
- <div id="category-image-wrapper"></div>
220
- <p>
221
- <input type="button" class="button button-secondary bttk_tax_media_button" id="bttk_tax_media_button" name="bttk_tax_media_button" value="<?php _e( 'Add Image', 'blossomthemes-toolkit' ); ?>" />
222
- <input type="button" class="button button-secondary bttk_tax_media_remove" id="bttk_tax_media_remove" name="bttk_tax_media_remove" value="<?php _e( 'Remove Image', 'blossomthemes-toolkit' ); ?>" />
223
- </p>
224
- </div>
225
- <?php
226
- }
227
-
228
- /*
229
- * Save the form field
230
- * @since 1.0.0
231
- */
232
- public function bttk_save_category_image ( $term_id ) {
233
- if( isset( $_POST['category-image-id'] ) && '' !== $_POST['category-image-id'] ){
234
- $image = $_POST['category-image-id'];
235
- add_term_meta( $term_id, 'category-image-id', $image, true );
236
- }
237
- }
238
-
239
- /*
240
- * Edit the form field
241
- * @since 1.0.0
242
- */
243
- public function bttk_update_category_image ( $term, $taxonomy='' ) { ?>
244
- <tr class="form-field term-group-wrap">
245
- <th scope="row">
246
- <label for="category-image-id"><?php _e( 'Image', 'blossomthemes-toolkit' ); ?></label>
247
- </th>
248
- <td>
249
- <?php $image_id = get_term_meta ( $term -> term_id, 'category-image-id', true ); ?>
250
- <input type="hidden" id="category-image-id" name="category-image-id" value="<?php echo $image_id; ?>">
251
- <div id="category-image-wrapper">
252
- <?php if ( isset( $image_id ) && $image_id!='' ) { ?>
253
- <?php echo wp_get_attachment_image ( $image_id, 'thumbnail' ); ?>
254
- <?php } ?>
255
- </div>
256
- <p>
257
- <input type="button" class="button button-secondary bttk_tax_media_button" id="bttk_tax_media_button" name="bttk_tax_media_button" value="<?php _e( 'Add Image', 'blossomthemes-toolkit' ); ?>" />
258
- <input type="button" class="button button-secondary bttk_tax_media_remove" id="bttk_tax_media_remove" name="bttk_tax_media_remove" value="<?php _e( 'Remove Image', 'blossomthemes-toolkit' ); ?>" />
259
- </p>
260
- </td>
261
- </tr>
262
- <?php
263
- }
264
-
265
- /*
266
- * Update the form field value
267
- * @since 1.0.0
268
- */
269
- public function bttk_updated_category_image ( $term_id ) {
270
- if( isset( $_POST['category-image-id'] ) && '' !== $_POST['category-image-id'] ){
271
- $image = $_POST['category-image-id'];
272
- update_term_meta ( $term_id, 'category-image-id', $image );
273
- } else {
274
- update_term_meta ( $term_id, 'category-image-id', '' );
275
- }
276
- }
277
-
278
- /*
279
- * Add script
280
- * @since 1.0.0
281
- */
282
- public function bttk_add_script() { ?>
283
- <script>
284
- jQuery(document).ready( function($) {
285
- function ct_media_upload(button_class) {
286
- var _custom_media = true,
287
- _orig_send_attachment = wp.media.editor.send.attachment;
288
- $('body').on('click', button_class, function(e) {
289
- var button_id = '#'+$(this).attr('id');
290
- var send_attachment_bkp = wp.media.editor.send.attachment;
291
- var button = $(button_id);
292
- _custom_media = true;
293
- wp.media.editor.send.attachment = function(props, attachment){
294
- if ( _custom_media ) {
295
- $('#category-image-id').val(attachment.id);
296
- $('#category-image-wrapper').html('<img class="custom_media_image" src="" style="margin:0;padding:0;max-height:100px;float:none;" />');
297
- $('#category-image-wrapper .custom_media_image').attr('src',attachment.url).css('display','block');
298
- } else {
299
- return _orig_send_attachment.apply( button_id, [props, attachment] );
300
- }
301
- }
302
- wp.media.editor.open(button);
303
- return false;
304
- });
305
- }
306
- ct_media_upload('.bttk_tax_media_button.button');
307
- $('body').on('click','.bttk_tax_media_remove',function(){
308
- $('#category-image-id').val('');
309
- $('#category-image-wrapper').html('<img class="custom_media_image" src="" style="margin:0;padding:0;max-height:100px;float:none;" />');
310
- });
311
- // Thanks: http://stackoverflow.com/questions/15281995/wordpress-create-category-ajax-response
312
- $(document).ajaxComplete(function(event, xhr, settings) {
313
- var queryStringArr = settings.data.split('&');
314
- if( $.inArray('action=add-tag', queryStringArr) !== -1 ){
315
- var xml = xhr.responseXML;
316
- $response = $(xml).find('term_id').text();
317
- if($response!=""){
318
- // Clear the thumb image
319
- $('#category-image-wrapper').html('');
320
- }
321
- }
322
- });
323
- });
324
- </script>
325
- <?php
326
- }
327
-
328
- function bttk_custom_column_header( $columns ){
329
- $columns['header_name'] = 'Thumbnail';
330
- return $columns;
331
- }
332
-
333
-
334
- // To show the column value
335
- function bttk_custom_column_content( $value, $column_name, $tax_id ){
336
- $img = get_term_meta( $tax_id, 'category-image-id', false );
337
- $ret = '';
338
- if(isset($img[0]) && $img[0]!='')
339
- {
340
- $url = wp_get_attachment_image_url($img[0],'thumbnail');
341
- $ret = '<img src="'.esc_url($url).'" class="tax-img">';
342
- }
343
- return $ret;
344
- }
345
-
346
- function bttk_client_logo_template()
347
- { ?>
348
- <div class="bttk-client-logo-template">
349
- <div class="link-image-repeat"><span class="cross"><a href="#"><i class="fa fa-times"></i></a></span>
350
- <div class="widget-client-logo-repeater" id="widget-bttktheme_client_logo_widget-2-bttkthemecompanion-logo-repeater">
351
- <div class="widget-upload">
352
- <label for="widget-bttktheme_client_logo_widget-2-image"><?php _e('Upload Image','blossomthemes-toolkit');?></label><br>
353
- <input id="widget-bttktheme_client_logo_widget-2-image" class="bttk-upload link" type="hidden" name="widget-bttktheme_client_logo_widget[2][image][]" value="" placeholder="No file chosen">
354
- <input id="upload-widget-bttktheme_client_logo_widget-2-image" class="bttk-upload-button button" type="button" value="Upload">
355
- <div class="bttk-screenshot" id="widget-bttktheme_client_logo_widget-2-image-image"></div>
356
- </div>
357
- <div class="widget-feat-link">
358
- <label for="widget-bttktheme_client_logo_widget-2-link"><?php _e('Featured Link','blossomthemes-toolkit');?></label>
359
- <input class="widefat featured-link" id="widget-bttktheme_client_logo_widget-2-link" name="widget-bttktheme_client_logo_widget[2][link][]" type="text" value="">
360
- </div>
361
- </div>
362
- </div>
363
- </div>
364
- <?php
365
- echo '<style>.bttk-client-logo-template{display:none;}</style>';
366
- }
367
-
368
- function bttk_faq_template()
369
- {?>
370
- <div class="bttk-faq-template">
371
- <div class="faqs-repeat" data-id=""><span class="fa fa-times cross"></span>
372
- <label for="widget-raratheme_companion_faqs_widget-2-question-1"><?php _e('Question','blossomthemes-toolkit');?></label>
373
- <input class="widefat question" id="widget-raratheme_companion_faqs_widget-2-question-1" name="widget-raratheme_companion_faqs_widget[2][question][1]" type="text" value="">
374
- <label for="widget-raratheme_companion_faqs_widget-2-answer-1"><?php _e('Answer','blossomthemes-toolkit');?></label>
375
- <textarea class="answer" id="widget-raratheme_companion_faqs_widget-2-answer-1" name="widget-raratheme_companion_faqs_widget[2][answer][1]"></textarea>
376
- </div>
377
- </div>
378
- <?php
379
- echo '<style>.bttk-faq-template{display:none;}</style>';
380
- }
381
-
382
- /**
383
- * Get post types for templates
384
- *
385
- * @return array of default settings
386
- */
387
- public function bttk_get_posttype_array() {
388
-
389
- $posts = array(
390
- 'blossom-portfolio' => array(
391
- 'label' => __( 'Portfolio', 'blossomthemes-toolkit' ),
392
- 'description' => __( 'Portfolio Post Type', 'blossomthemes-toolkit' ),
393
- 'labels' => array(
394
- 'name' => _x( 'Portfolios', 'Post Type General Name', 'blossomthemes-toolkit' ),
395
- 'singular_name' => _x( 'Portfolio', 'Post Type Singular Name', 'blossomthemes-toolkit' ),
396
- 'menu_name' => _x( 'Portfolios', 'admin menu', 'blossomthemes-toolkit' ),
397
- 'name_admin_bar' => _x( 'Portfolio', 'add new on admin bar', 'blossomthemes-toolkit' ),
398
- 'add_new' => _x( 'Add New', 'Portfolio', 'blossomthemes-toolkit' ),
399
- 'add_new_item' => __( 'Add New Portfolio', 'blossomthemes-toolkit' ),
400
- 'archives' => __( 'Portfolio Archives', 'blossomthemes-toolkit' ),
401
- 'attributes' => __( 'Portfolio Attributes', 'blossomthemes-toolkit' ),
402
- 'parent_item_colon' => __( 'Parent Portfolio:', 'blossomthemes-toolkit' ),
403
- 'all_items' => __( 'All Portfolios', 'blossomthemes-toolkit' ),
404
- 'new_item' => __( 'New Portfolio', 'blossomthemes-toolkit' ),
405
- 'edit_item' => __( 'Edit Portfolio', 'blossomthemes-toolkit' ),
406
- 'update_item' => __( 'Update Portfolio', 'blossomthemes-toolkit' ),
407
- 'view_item' => __( 'View Portfolio', 'blossomthemes-toolkit' ),
408
- 'view_items' => __( 'View Portfolios', 'blossomthemes-toolkit' ),
409
- 'search_items' => __( 'Search Portfolio', 'blossomthemes-toolkit' ),
410
- 'not_found' => __( 'Not found', 'blossomthemes-toolkit' ),
411
- 'not_found_in_trash' => __( 'Not found in Trash', 'blossomthemes-toolkit' ),
412
- 'featured_image' => __( 'Featured Image', 'blossomthemes-toolkit' ),
413
- 'set_featured_image' => __( 'Set featured image', 'blossomthemes-toolkit' ),
414
- 'remove_featured_image' => __( 'Remove featured image', 'blossomthemes-toolkit' ),
415
- 'use_featured_image' => __( 'Use as featured image', 'blossomthemes-toolkit' ),
416
- 'insert_into_item' => __( 'Insert into Portfolio', 'blossomthemes-toolkit' ),
417
- 'uploaded_to_this_item' => __( 'Uploaded to this Portfolio', 'blossomthemes-toolkit' ),
418
- 'items_list' => __( 'Portfolios list', 'blossomthemes-toolkit' ),
419
- 'items_list_navigation' => __( 'Portfolios list navigation', 'blossomthemes-toolkit' ),
420
- 'filter_items_list' => __( 'Filter Portfolios list', 'blossomthemes-toolkit' ),
421
- ),
422
- 'dashicon' => 'dashicons-portfolio',
423
- 'taxonomy' => 'blossom_portfolio_categories',
424
- 'taxonomy_slug' => 'portfolio-category',
425
- 'has_archive' => false,
426
- 'exclude_from_search' => false,
427
- 'show_in_nav_menus' => true,
428
- 'show_in_rest' => true,
429
- 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt' ),
430
- 'rewrite' => array( 'slug' => 'portfolio' ),
431
- 'tax_general_name' => _x( 'Portfolios Categories', 'taxonomy general name', 'blossomthemes-toolkit' ),
432
- 'tax_singular_name' => _x( 'Portfolio Category', 'taxonomy singular name', 'blossomthemes-toolkit' ),
433
- 'tax_menu_name' => __( 'Portfolios Categories', 'blossomthemes-toolkit')
434
- ),
435
- );
436
- $posts = apply_filters( 'bttk_get_posttype_array', $posts );
437
- return $posts;
438
- }
439
-
440
- /**
441
- * Register post types.
442
- *
443
- * @link http://codex.wordpress.org/Function_Reference/register_post_type
444
- */
445
- function bttk_register_post_types() {
446
- $myarray = $this->bttk_get_posttype_array();
447
- foreach ($myarray as $key => $value) {
448
-
449
- $args = array(
450
- 'label' => $value['label'],
451
- 'description' => $value['description'],
452
- 'labels' => $value['labels'],
453
- 'supports' => $value['supports'],
454
- 'hierarchical' => false,
455
- 'public' => true,
456
- 'show_ui' => true,
457
- 'show_in_menu' => true,
458
- 'show_in_rest' => $value['show_in_rest'],
459
- 'menu_icon' => $value['dashicon'],
460
- 'show_in_admin_bar' => true,
461
- 'show_in_nav_menus' => $value['show_in_nav_menus'],
462
- 'can_export' => true,
463
- 'has_archive' => $value['has_archive'],
464
- 'exclude_from_search' => $value['exclude_from_search'],
465
- 'publicly_queryable' => true,
466
- 'capability_type' => 'page',
467
- 'rewrite' => $value['rewrite'],
468
- );
469
- register_post_type( $key, $args );
470
- if ( 'yes' === get_option( 'bttk_queue_flush_rewrite_rules' ) ) {
471
- update_option( 'bttk_queue_flush_rewrite_rules', 'no' );
472
- flush_rewrite_rules();
473
- }
474
- }
475
- }
476
-
477
- /**
478
- * Register a taxonomy, post_types_categories for the post types.
479
- *
480
- * @link https://codex.wordpress.org/Function_Reference/register_taxonomy
481
- */
482
- function bttk_create_post_type_taxonomies() {
483
- // Add new taxonomy, make it hierarchical
484
- $myarray = $this->bttk_get_posttype_array();
485
- foreach ($myarray as $key => $value) {
486
- if(isset($value['taxonomy']))
487
- {
488
- $labels = array(
489
- 'name' => $value['tax_general_name'],
490
- 'singular_name' => $value['tax_singular_name'],
491
- 'search_items' => __( 'Search Categories', 'blossomthemes-toolkit' ),
492
- 'all_items' => __( 'All Categories', 'blossomthemes-toolkit' ),
493
- 'parent_item' => __( 'Parent Categories', 'blossomthemes-toolkit' ),
494
- 'parent_item_colon' => __( 'Parent Categories:', 'blossomthemes-toolkit' ),
495
- 'edit_item' => __( 'Edit Categories', 'blossomthemes-toolkit' ),
496
- 'update_item' => __( 'Update Categories', 'blossomthemes-toolkit' ),
497
- 'add_new_item' => __( 'Add New Categories', 'blossomthemes-toolkit' ),
498
- 'new_item_name' => __( 'New Categories Name', 'blossomthemes-toolkit' ),
499
- 'menu_name' => $value['tax_menu_name'],
500
- );
501
-
502
- $args = array(
503
- 'hierarchical' => true,
504
- 'labels' => $labels,
505
- 'show_ui' => true,
506
- 'show_admin_column' => true,
507
- 'show_in_nav_menus' => true,
508
- 'show_in_rest' => true,
509
- 'rewrite' => array( 'slug' => $value['taxonomy_slug'], 'hierarchical' => true ),
510
- );
511
- register_taxonomy( $value['taxonomy'], array( $key ), $args );
512
- }
513
- }
514
- }
515
- }
 
 
 
 
 
516
 
1
+ <?php
2
+
3
+ /**
4
+ * The admin-specific functionality of the plugin.
5
+ *
6
+ * @link http://wordpress.org/plugins/blossomthemes-toolkit/
7
+ * @since 1.0.0
8
+ *
9
+ * @package Blossomthemes_Toolkit
10
+ * @subpackage Blossomthemes_Toolkit/admin
11
+ */
12
+
13
+ /**
14
+ * The admin-specific functionality of the plugin.
15
+ *
16
+ * Defines the plugin name, version, and two examples hooks for how to
17
+ * enqueue the admin-specific stylesheet and JavaScript.
18
+ *
19
+ * @package Blossomthemes_Toolkit
20
+ * @subpackage Blossomthemes_Toolkit/admin
21
+ * @author blossomthemes <info@blossomthemes.com>
22
+ */
23
+ class Blossomthemes_Toolkit_Admin {
24
+
25
+ /**
26
+ * The ID of this plugin.
27
+ *
28
+ * @since 1.0.0
29
+ * @access private
30
+ * @var string $plugin_name The ID of this plugin.
31
+ */
32
+ private $plugin_name;
33
+
34
+ /**
35
+ * The version of this plugin.
36
+ *
37
+ * @since 1.0.0
38
+ * @access private
39
+ * @var string $version The current version of this plugin.
40
+ */
41
+ private $version;
42
+
43
+ /**
44
+ * Initialize the class and set its properties.
45
+ *
46
+ * @since 1.0.0
47
+ * @param string $plugin_name The name of this plugin.
48
+ * @param string $version The version of this plugin.
49
+ */
50
+ public function __construct( $plugin_name, $version ) {
51
+
52
+ $this->plugin_name = $plugin_name;
53
+ $this->version = BTTK_PLUGIN_VERSION;
54
+
55
+ }
56
+
57
+ /**
58
+ * Register the stylesheets for the admin area.
59
+ *
60
+ * @since 1.0.0
61
+ */
62
+ public function enqueue_styles() {
63
+
64
+ /**
65
+ * This function is provided for demonstration purposes only.
66
+ *
67
+ * An instance of this class should be passed to the run() function
68
+ * defined in Blossomthemes_Toolkit_Loader as all of the hooks are defined
69
+ * in that particular class.
70
+ *
71
+ * The Blossomthemes_Toolkit_Loader will then create the relationship
72
+ * between the defined hooks and the functions defined in this
73
+ * class.
74
+ */
75
+
76
+ $screen = get_current_screen();
77
+
78
+ $post_types = array( 'blossom-portfolio', 'post', 'page' );
79
+ $page_ids = array( 'widgets', 'customize' );
80
+
81
+ if ( in_array( $screen->post_type, $post_types ) || in_array( $screen->id, $page_ids ) ) {
82
+ wp_enqueue_style( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'css/blossomthemes-toolkit-admin.css', array(), $this->version, 'all' );
83
+ wp_enqueue_style( 'chosen', plugin_dir_url( __FILE__ ) . 'css/chosen.min.css', array(), $this->version, 'all' );
84
+ wp_enqueue_style( 'wp-color-picker' );
85
+ wp_enqueue_style('thickbox');
86
+ }
87
+
88
+ }
89
+
90
+ /**
91
+ * Register the JavaScript for the admin area.
92
+ *
93
+ * @since 1.0.0
94
+ */
95
+ public function enqueue_scripts() {
96
+
97
+ /**
98
+ * This function is provided for demonstration purposes only.
99
+ *
100
+ * An instance of this class should be passed to the run() function
101
+ * defined in Blossomthemes_Toolkit_Loader as all of the hooks are defined
102
+ * in that particular class.
103
+ *
104
+ * The Blossomthemes_Toolkit_Loader will then create the relationship
105
+ * between the defined hooks and the functions defined in this
106
+ * class.
107
+ */
108
+ $screen = get_current_screen();
109
+
110
+ $post_types = array( 'blossom-portfolio', 'post', 'page' );
111
+ $page_ids = array( 'widgets', 'customize' );
112
+
113
+ if ( in_array( $screen->post_type, $post_types ) || in_array( $screen->id, $page_ids ) ) {
114
+ wp_enqueue_media();
115
+ wp_enqueue_script( $this->plugin_name, plugin_dir_url( __FILE__ ) . 'js/blossomthemes-toolkit-admin.js', array( 'jquery','wp-color-picker' ), $this->version, true );
116
+ wp_localize_script( $this->plugin_name, 'bttk_theme_toolkit_pro_uploader', array(
117
+ 'upload' => __( 'Upload', 'blossomthemes-toolkit' ),
118
+ 'change' => __( 'Change', 'blossomthemes-toolkit' ),
119
+ 'msg' => __( 'Please upload valid image file.', 'blossomthemes-toolkit' )
120
+ ));
121
+ $confirming = array(
122
+ 'msg' => __( 'Are you sure?', 'blossomthemes-toolkit' ),
123
+ 'category' => __('Select Categories','blossomthemes-toolkit')
124
+ );
125
+ wp_localize_script( $this->plugin_name, 'sociconsmsg', $confirming );
126
+
127
+ wp_localize_script( $this->plugin_name, 'sociconsmsg', array(
128
+ 'msg' => __( 'Are you sure you want to delete this Social Media?', 'blossomthemes-toolkit' )));
129
+
130
+ wp_enqueue_script( 'chosen', plugin_dir_url( __FILE__ ) . 'js/chosen.jquery.min.js', array( 'jquery' ), $this->version, true );
131
+
132
+ wp_enqueue_script( 'font-awesome', plugin_dir_url( __FILE__ ) . 'js/fontawesome/all.js', array( 'jquery'), '5.6.3', true );
133
+ wp_enqueue_script( 'v4-shims', plugin_dir_url( __FILE__ ) . 'js/fontawesome/v4-shims.js', array( 'jquery'), '5.6.3', true );
134
+ }
135
+ }
136
+
137
+ public function bttk_icon_list_enqueue(){
138
+ $obj = new BlossomThemes_Toolkit_Functions;
139
+ $socicons = $obj->bttk_icon_list();
140
+ echo '<div class="bttk-icons-wrap-template"><div class="bttk-icons-wrap"><ul class="bttk-icons-list">';
141
+ foreach ($socicons as $socicon) {
142
+ if($socicon == 'rss'){
143
+ echo '<li><i class="fas fa-'.$socicon.'"></i></li>';
144
+ }
145
+ else{
146
+ echo '<li><i class="fab fa-'.$socicon.'"></i></li>';
147
+ }
148
+
149
+ }
150
+ echo'</ul></div></div>';
151
+ echo '<style>
152
+ .bttk-icons-wrap{
153
+ display:none;
154
+ }
155
+ </style>';
156
+ }
157
+
158
+ /**
159
+ * Portfolio template.
160
+ */
161
+ function bttk_get_portfolio_template( $template ) {
162
+ $post = get_post();
163
+ $page_template = get_post_meta( $post->ID, '_wp_page_template', true );
164
+ if( $page_template == 'templates/blossom-portfolio.php' ){
165
+ if ( $theme_file = locate_template( 'templates/blossom-portfolio.php' ) ) {
166
+ return $theme_file;
167
+ } else {
168
+ return BTTK_BASE_PATH . '/includes/templates/blossom-portfolio.php';
169
+ }
170
+ }
171
+ return $template;
172
+ }
173
+
174
+ /**
175
+ * Portfolio template returned.
176
+ */
177
+ function bttk_filter_admin_page_templates( $templates ) {
178
+ $templates['templates/blossom-portfolio.php'] = __( 'Portfolio Template', 'blossomthemes-toolkit' );
179
+ return $templates;
180
+ }
181
+
182
+ /**
183
+ * Portfolio template added.
184
+ */
185
+ function wpte_add_portfolio_templates() {
186
+
187
+ // If REST_REQUEST is defined (by WordPress) and is a TRUE, then it's a REST API request.
188
+ $is_rest_route = (defined('REST_REQUEST') && REST_REQUEST);
189
+ if (
190
+ (is_admin() && !$is_rest_route) || // admin and AJAX (via admin-ajax.php) requests
191
+ (!is_admin() && $is_rest_route) // REST requests only
192
+ ) {
193
+ add_filter('theme_page_templates', array($this, 'bttk_filter_admin_page_templates'));
194
+ } else {
195
+ add_filter('page_template', array($this, 'bttk_get_portfolio_template'));
196
+ }
197
+
198
+ }
199
+
200
+ /**
201
+ * Template over-ride for single trip.
202
+ *
203
+ * @since 1.0.0
204
+ */
205
+ function bttk_include_template_function( $template_path ) {
206
+ if ( is_singular( 'blossom-portfolio' ) )
207
+ {
208
+ if ( $theme_file = locate_template( 'single-blossom-portfolio.php' ) ) {
209
+ $template_path = $theme_file;
210
+ } else {
211
+ $template_path = BTTK_BASE_PATH . '/includes/templates/single-blossom-portfolio.php';
212
+ }
213
+ }
214
+ return $template_path;
215
+ }
216
+ /*
217
+ * Add a form field in the new category page
218
+ * @since 1.0.0
219
+ */
220
+ public function bttk_add_category_image ( $taxonomy ) { ?>
221
+ <div class="form-field term-group">
222
+ <label for="category-image-id"><?php _e('Image', 'blossomthemes-toolkit'); ?></label>
223
+ <input type="hidden" id="category-image-id" name="category-image-id" class="custom_media_url" value="">
224
+ <div id="category-image-wrapper"></div>
225
+ <p>
226
+ <input type="button" class="button button-secondary bttk_tax_media_button" id="bttk_tax_media_button" name="bttk_tax_media_button" value="<?php _e( 'Add Image', 'blossomthemes-toolkit' ); ?>" />
227
+ <input type="button" class="button button-secondary bttk_tax_media_remove" id="bttk_tax_media_remove" name="bttk_tax_media_remove" value="<?php _e( 'Remove Image', 'blossomthemes-toolkit' ); ?>" />
228
+ </p>
229
+ </div>
230
+ <?php
231
+ }
232
+
233
+ /*
234
+ * Save the form field
235
+ * @since 1.0.0
236
+ */
237
+ public function bttk_save_category_image ( $term_id ) {
238
+ if( isset( $_POST['category-image-id'] ) && '' !== $_POST['category-image-id'] ){
239
+ $image = $_POST['category-image-id'];
240
+ add_term_meta( $term_id, 'category-image-id', $image, true );
241
+ }
242
+ }
243
+
244
+ /*
245
+ * Edit the form field
246
+ * @since 1.0.0
247
+ */
248
+ public function bttk_update_category_image ( $term, $taxonomy='' ) { ?>
249
+ <tr class="form-field term-group-wrap">
250
+ <th scope="row">
251
+ <label for="category-image-id"><?php _e( 'Image', 'blossomthemes-toolkit' ); ?></label>
252
+ </th>
253
+ <td>
254
+ <?php $image_id = get_term_meta ( $term -> term_id, 'category-image-id', true ); ?>
255
+ <input type="hidden" id="category-image-id" name="category-image-id" value="<?php echo $image_id; ?>">
256
+ <div id="category-image-wrapper">
257
+ <?php if ( isset( $image_id ) && $image_id!='' ) { ?>
258
+ <?php echo wp_get_attachment_image ( $image_id, 'thumbnail' ); ?>
259
+ <?php } ?>
260
+ </div>
261
+ <p>
262
+ <input type="button" class="button button-secondary bttk_tax_media_button" id="bttk_tax_media_button" name="bttk_tax_media_button" value="<?php _e( 'Add Image', 'blossomthemes-toolkit' ); ?>" />
263
+ <input type="button" class="button button-secondary bttk_tax_media_remove" id="bttk_tax_media_remove" name="bttk_tax_media_remove" value="<?php _e( 'Remove Image', 'blossomthemes-toolkit' ); ?>" />
264
+ </p>
265
+ </td>
266
+ </tr>
267
+ <?php
268
+ }
269
+
270
+ /*
271
+ * Update the form field value
272
+ * @since 1.0.0
273
+ */
274
+ public function bttk_updated_category_image ( $term_id ) {
275
+ if( isset( $_POST['category-image-id'] ) && '' !== $_POST['category-image-id'] ){
276
+ $image = $_POST['category-image-id'];
277
+ update_term_meta ( $term_id, 'category-image-id', $image );
278
+ } else {
279
+ update_term_meta ( $term_id, 'category-image-id', '' );
280
+ }
281
+ }
282
+
283
+ /*
284
+ * Add script
285
+ * @since 1.0.0
286
+ */
287
+ public function bttk_add_script() { ?>
288
+ <script>
289
+ jQuery(document).ready( function($) {
290
+ function ct_media_upload(button_class) {
291
+ var _custom_media = true,
292
+ _orig_send_attachment = wp.media.editor.send.attachment;
293
+ $('body').on('click', button_class, function(e) {
294
+ var button_id = '#'+$(this).attr('id');
295
+ var send_attachment_bkp = wp.media.editor.send.attachment;
296
+ var button = $(button_id);
297
+ _custom_media = true;
298
+ wp.media.editor.send.attachment = function(props, attachment){
299
+ if ( _custom_media ) {
300
+ $('#category-image-id').val(attachment.id);
301
+ $('#category-image-wrapper').html('<img class="custom_media_image" src="" style="margin:0;padding:0;max-height:100px;float:none;" />');
302
+ $('#category-image-wrapper .custom_media_image').attr('src',attachment.url).css('display','block');
303
+ } else {
304
+ return _orig_send_attachment.apply( button_id, [props, attachment] );
305
+ }
306
+ }
307
+ wp.media.editor.open(button);
308
+ return false;
309
+ });
310
+ }
311
+ ct_media_upload('.bttk_tax_media_button.button');
312
+ $('body').on('click','.bttk_tax_media_remove',function(){
313
+ $('#category-image-id').val('');
314
+ $('#category-image-wrapper').html('<img class="custom_media_image" src="" style="margin:0;padding:0;max-height:100px;float:none;" />');
315
+ });
316
+ // Thanks: http://stackoverflow.com/questions/15281995/wordpress-create-category-ajax-response
317
+ $(document).ajaxComplete(function(event, xhr, settings) {
318
+ var queryStringArr = settings.data.split('&');
319
+ if( $.inArray('action=add-tag', queryStringArr) !== -1 ){
320
+ var xml = xhr.responseXML;
321
+ $response = $(xml).find('term_id').text();
322
+ if($response!=""){
323
+ // Clear the thumb image
324
+ $('#category-image-wrapper').html('');
325
+ }
326
+ }
327
+ });
328
+ });
329
+ </script>
330
+ <?php
331
+ }
332
+
333
+ function bttk_custom_column_header( $columns ){
334
+ $columns['header_name'] = 'Thumbnail';
335
+ return $columns;
336
+ }
337
+
338
+
339
+ // To show the column value
340
+ function bttk_custom_column_content( $value, $column_name, $tax_id ){
341
+ $img = get_term_meta( $tax_id, 'category-image-id', false );
342
+ $ret = '';
343
+ if(isset($img[0]) && $img[0]!='')
344
+ {
345
+ $url = wp_get_attachment_image_url($img[0],'thumbnail');
346
+ $ret = '<img src="'.esc_url($url).'" class="tax-img">';
347
+ }
348
+ return $ret;
349
+ }
350
+
351
+ function bttk_client_logo_template()
352
+ { ?>
353
+ <div class="bttk-client-logo-template">
354
+ <div class="link-image-repeat"><span class="cross"><a href="#"><i class="fa fa-times"></i></a></span>
355
+ <div class="widget-client-logo-repeater" id="widget-bttktheme_client_logo_widget-2-bttkthemecompanion-logo-repeater">
356
+ <div class="widget-upload">
357
+ <label for="widget-bttktheme_client_logo_widget-2-image"><?php _e('Upload Image','blossomthemes-toolkit');?></label><br>
358
+ <input id="widget-bttktheme_client_logo_widget-2-image" class="bttk-upload link" type="hidden" name="widget-bttktheme_client_logo_widget[2][image][]" value="" placeholder="No file chosen">
359
+ <input id="upload-widget-bttktheme_client_logo_widget-2-image" class="bttk-upload-button button" type="button" value="Upload">
360
+ <div class="bttk-screenshot" id="widget-bttktheme_client_logo_widget-2-image-image"></div>
361
+ </div>
362
+ <div class="widget-feat-link">
363
+ <label for="widget-bttktheme_client_logo_widget-2-link"><?php _e('Featured Link','blossomthemes-toolkit');?></label>
364
+ <input class="widefat featured-link" id="widget-bttktheme_client_logo_widget-2-link" name="widget-bttktheme_client_logo_widget[2][link][]" type="text" value="">
365
+ </div>
366
+ </div>
367
+ </div>
368
+ </div>
369
+ <?php
370
+ echo '<style>.bttk-client-logo-template{display:none;}</style>';
371
+ }
372
+
373
+ function bttk_faq_template()
374
+ {?>
375
+ <div class="bttk-faq-template">
376
+ <div class="faqs-repeat" data-id=""><span class="fa fa-times cross"></span>
377
+ <label for="widget-raratheme_companion_faqs_widget-2-question-1"><?php _e('Question','blossomthemes-toolkit');?></label>
378
+ <input class="widefat question" id="widget-raratheme_companion_faqs_widget-2-question-1" name="widget-raratheme_companion_faqs_widget[2][question][1]" type="text" value="">
379
+ <label for="widget-raratheme_companion_faqs_widget-2-answer-1"><?php _e('Answer','blossomthemes-toolkit');?></label>
380
+ <textarea class="answer" id="widget-raratheme_companion_faqs_widget-2-answer-1" name="widget-raratheme_companion_faqs_widget[2][answer][1]"></textarea>
381
+ </div>
382
+ </div>
383
+ <?php
384
+ echo '<style>.bttk-faq-template{display:none;}</style>';
385
+ }
386
+
387
+ /**
388
+ * Get post types for templates
389
+ *
390
+ * @return array of default settings
391
+ */
392
+ public function bttk_get_posttype_array() {
393
+
394
+ $posts = array(
395
+ 'blossom-portfolio' => array(
396
+ 'label' => __( 'Portfolio', 'blossomthemes-toolkit' ),
397
+ 'description' => __( 'Portfolio Post Type', 'blossomthemes-toolkit' ),
398
+ 'labels' => array(
399
+ 'name' => _x( 'Portfolios', 'Post Type General Name', 'blossomthemes-toolkit' ),
400
+ 'singular_name' => _x( 'Portfolio', 'Post Type Singular Name', 'blossomthemes-toolkit' ),
401
+ 'menu_name' => _x( 'Portfolios', 'admin menu', 'blossomthemes-toolkit' ),
402
+ 'name_admin_bar' => _x( 'Portfolio', 'add new on admin bar', 'blossomthemes-toolkit' ),
403
+ 'add_new' => _x( 'Add New', 'Portfolio', 'blossomthemes-toolkit' ),
404
+ 'add_new_item' => __( 'Add New Portfolio', 'blossomthemes-toolkit' ),
405
+ 'archives' => __( 'Portfolio Archives', 'blossomthemes-toolkit' ),
406
+ 'attributes' => __( 'Portfolio Attributes', 'blossomthemes-toolkit' ),
407
+ 'parent_item_colon' => __( 'Parent Portfolio:', 'blossomthemes-toolkit' ),
408
+ 'all_items' => __( 'All Portfolios', 'blossomthemes-toolkit' ),
409
+ 'new_item' => __( 'New Portfolio', 'blossomthemes-toolkit' ),
410
+ 'edit_item' => __( 'Edit Portfolio', 'blossomthemes-toolkit' ),
411
+ 'update_item' => __( 'Update Portfolio', 'blossomthemes-toolkit' ),
412
+ 'view_item' => __( 'View Portfolio', 'blossomthemes-toolkit' ),
413
+ 'view_items' => __( 'View Portfolios', 'blossomthemes-toolkit' ),
414
+ 'search_items' => __( 'Search Portfolio', 'blossomthemes-toolkit' ),
415
+ 'not_found' => __( 'Not found', 'blossomthemes-toolkit' ),
416
+ 'not_found_in_trash' => __( 'Not found in Trash', 'blossomthemes-toolkit' ),
417
+ 'featured_image' => __( 'Featured Image', 'blossomthemes-toolkit' ),
418
+ 'set_featured_image' => __( 'Set featured image', 'blossomthemes-toolkit' ),
419
+ 'remove_featured_image' => __( 'Remove featured image', 'blossomthemes-toolkit' ),
420
+ 'use_featured_image' => __( 'Use as featured image', 'blossomthemes-toolkit' ),
421
+ 'insert_into_item' => __( 'Insert into Portfolio', 'blossomthemes-toolkit' ),
422
+ 'uploaded_to_this_item' => __( 'Uploaded to this Portfolio', 'blossomthemes-toolkit' ),
423
+ 'items_list' => __( 'Portfolios list', 'blossomthemes-toolkit' ),
424
+ 'items_list_navigation' => __( 'Portfolios list navigation', 'blossomthemes-toolkit' ),
425
+ 'filter_items_list' => __( 'Filter Portfolios list', 'blossomthemes-toolkit' ),
426
+ ),
427
+ 'dashicon' => 'dashicons-portfolio',
428
+ 'taxonomy' => 'blossom_portfolio_categories',
429
+ 'taxonomy_slug' => 'portfolio-category',
430
+ 'has_archive' => false,
431
+ 'exclude_from_search' => false,
432
+ 'show_in_nav_menus' => true,
433
+ 'show_in_rest' => true,
434
+ 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt' ),
435
+ 'rewrite' => array( 'slug' => 'portfolio' ),
436
+ 'tax_general_name' => _x( 'Portfolios Categories', 'taxonomy general name', 'blossomthemes-toolkit' ),
437
+ 'tax_singular_name' => _x( 'Portfolio Category', 'taxonomy singular name', 'blossomthemes-toolkit' ),
438
+ 'tax_menu_name' => __( 'Portfolios Categories', 'blossomthemes-toolkit')
439
+ ),
440
+ );
441
+ $posts = apply_filters( 'bttk_get_posttype_array', $posts );
442
+ return $posts;
443
+ }
444
+
445
+ /**
446
+ * Register post types.
447
+ *
448
+ * @link http://codex.wordpress.org/Function_Reference/register_post_type
449
+ */
450
+ function bttk_register_post_types() {
451
+ $myarray = $this->bttk_get_posttype_array();
452
+ foreach ($myarray as $key => $value) {
453
+
454
+ $args = array(
455
+ 'label' => $value['label'],
456
+ 'description' => $value['description'],
457
+ 'labels' => $value['labels'],
458
+ 'supports' => $value['supports'],
459
+ 'hierarchical' => false,
460
+ 'public' => true,
461
+ 'show_ui' => true,
462
+ 'show_in_menu' => true,
463
+ 'show_in_rest' => $value['show_in_rest'],
464
+ 'menu_icon' => $value['dashicon'],
465
+ 'show_in_admin_bar' => true,
466
+ 'show_in_nav_menus' => $value['show_in_nav_menus'],
467
+ 'can_export' => true,
468
+ 'has_archive' => $value['has_archive'],
469
+ 'exclude_from_search' => $value['exclude_from_search'],
470
+ 'publicly_queryable' => true,
471
+ 'capability_type' => 'page',
472
+ 'rewrite' => $value['rewrite'],
473
+ );
474
+ register_post_type( $key, $args );
475
+ if ( 'yes' === get_option( 'bttk_queue_flush_rewrite_rules' ) ) {
476
+ update_option( 'bttk_queue_flush_rewrite_rules', 'no' );
477
+ flush_rewrite_rules();
478
+ }
479
+ }
480
+ }
481
+
482
+ /**
483
+ * Register a taxonomy, post_types_categories for the post types.
484
+ *
485
+ * @link https://codex.wordpress.org/Function_Reference/register_taxonomy
486
+ */
487
+ function bttk_create_post_type_taxonomies() {
488
+ // Add new taxonomy, make it hierarchical
489
+ $myarray = $this->bttk_get_posttype_array();
490
+ foreach ($myarray as $key => $value) {
491
+ if(isset($value['taxonomy']))
492
+ {
493
+ $labels = array(
494
+ 'name' => $value['tax_general_name'],
495
+ 'singular_name' => $value['tax_singular_name'],
496
+ 'search_items' => __( 'Search Categories', 'blossomthemes-toolkit' ),
497
+ 'all_items' => __( 'All Categories', 'blossomthemes-toolkit' ),
498
+ 'parent_item' => __( 'Parent Categories', 'blossomthemes-toolkit' ),
499
+ 'parent_item_colon' => __( 'Parent Categories:', 'blossomthemes-toolkit' ),
500
+ 'edit_item' => __( 'Edit Categories', 'blossomthemes-toolkit' ),
501
+ 'update_item' => __( 'Update Categories', 'blossomthemes-toolkit' ),
502
+ 'add_new_item' => __( 'Add New Categories', 'blossomthemes-toolkit' ),
503
+ 'new_item_name' => __( 'New Categories Name', 'blossomthemes-toolkit' ),
504
+ 'menu_name' => $value['tax_menu_name'],
505
+ );
506
+
507
+ $args = array(
508
+ 'hierarchical' => true,
509
+ 'labels' => $labels,
510
+ 'show_ui' => true,
511
+ 'show_admin_column' => true,
512
+ 'show_in_nav_menus' => true,
513
+ 'show_in_rest' => true,
514
+ 'rewrite' => array( 'slug' => $value['taxonomy_slug'], 'hierarchical' => true ),
515
+ );
516
+ register_taxonomy( $value['taxonomy'], array( $key ), $args );
517
+ }
518
+ }
519
+ }
520
+ }
521
 
admin/js/blossomthemes-toolkit-admin.js CHANGED
@@ -1,777 +1,777 @@
1
- jQuery(document).ready(function ($) {
2
- $("body").on("click", "#add-faq:visible", function (e) {
3
- e.preventDefault();
4
- da = $(this).siblings(".widget-client-faq-repeater").attr("id");
5
- if ($("body").hasClass("elementor-editor-active")) {
6
- suffix = "REPLACE_TO_ID";
7
- } else {
8
- suffix = da.match(/\d+/);
9
- }
10
- len = 0;
11
- $(".faqs-repeat:visible").each(function () {
12
- var value = $(this).attr("data-id");
13
- if (!isNaN(value)) {
14
- value = parseInt(value);
15
- len = value > len ? value : len;
16
- }
17
- });
18
- var newinput = $(".bttk-faq-template").clone();
19
- len++;
20
- // newinput.html(function(i, oldHTML) {
21
- // });
22
- newinput.find(".faqs-repeat").attr("data-id", len);
23
- newinput
24
- .find(".question")
25
- .attr(
26
- "name",
27
- "widget-bttk_faqs_widget[" + suffix + "][question][" + len + "]"
28
- );
29
- newinput
30
- .find(".answer")
31
- .attr(
32
- "name",
33
- "widget-bttk_faqs_widget[" + suffix + "][answer][" + len + "]"
34
- );
35
- // newinput.html(function(i, oldHTML) {
36
- // return oldHTML.replace(/{{indexes}}/g, len);
37
- // });
38
- $(".cl-faq-holder").before(newinput.html()).focus().trigger("change");
39
- });
40
-
41
- var file_frame;
42
- $(".user-signature-image").on("click", function (event) {
43
- event.preventDefault();
44
-
45
- // If the media frame already exists, reopen it.
46
- if (file_frame) {
47
- file_frame.open();
48
- return;
49
- }
50
- // Create the media frame.
51
- file_frame = wp.media.frames.file_frame = wp.media({
52
- title: $(this).data("uploader_title"),
53
- button: {
54
- text: $(this).data("uploader_button_text"),
55
- },
56
- multiple: false, // Set to true to allow multiple files to be selected
57
- });
58
-
59
- // When an image is selected, run a callback.
60
- file_frame.on("select", function () {
61
- // We set multiple to false so only get one image from the uploader
62
- attachment = file_frame.state().get("selection").first().toJSON();
63
- $("#user_signature_image").val(attachment.url);
64
- // Do something with attachment.id and/or attachment.url here
65
- });
66
-
67
- // Finally, open the modal
68
- file_frame.open();
69
- });
70
-
71
- $("body").on("click", ".del-user-social-links", function (e) {
72
- var confirmation = confirm(sociconsmsg.msg);
73
- if (!confirmation) {
74
- return false;
75
- }
76
- $(this)
77
- .parent()
78
- .fadeOut("slow", function () {
79
- $(this).remove();
80
- $("#add-user-socicon").focus().trigger("change");
81
- });
82
- return;
83
- });
84
-
85
- $(document).on("focus", ".user-contact-social-profile", function () {
86
- // if($(this).val()=='')
87
- // {
88
- // if( $(this).siblings('.bttk-icons-list').length < 1 )
89
- // {
90
- var $iconlist = $(".bttk-icons-wrap").clone();
91
- $(this).after($iconlist.html());
92
- $(this).siblings(".bttk-icons-list").fadeIn("slow");
93
- // }
94
-
95
- // if ( $(this).siblings('.bttk-icons-list').find('#remove-icon-list').length < 1 )
96
- // {
97
- var input = '<span id="remove-icon-list" class="fas fa-times"></span>';
98
- $(this).siblings(".bttk-icons-list:visible").prepend(input);
99
- // }
100
- // }
101
- });
102
-
103
- $(document).on("blur", ".user-contact-social-profile", function (e) {
104
- e.preventDefault();
105
- $(this)
106
- .siblings(".bttk-icons-list")
107
- .fadeOut("slow", function () {
108
- $(this).remove();
109
- });
110
- });
111
-
112
- $(document).on("click", ".bttk-icons-list li", function (event) {
113
- var prefix = $(this).children("svg").attr("data-prefix");
114
- var icon = $(this).children("svg").attr("data-icon");
115
- var val = prefix + " fa-" + icon;
116
-
117
- $(this).parent().siblings(".user-social-profile").val(icon);
118
- $(this).parent().siblings(".user-contact-social-profile").val(icon);
119
-
120
- $(this)
121
- .parent()
122
- .parent()
123
- .siblings(".bttk-contact-social-length")
124
- .attr("value", "https://" + icon + ".com");
125
- $(this)
126
- .parent()
127
- .parent()
128
- .siblings(".bttk-social-length")
129
- .attr("value", "https://" + icon + ".com");
130
- $(this)
131
- .parent()
132
- .siblings(".user-social-links")
133
- .attr("value", "https://" + icon + ".com");
134
-
135
- $(this).siblings(".bttk-icons-wrap-search").remove("slow");
136
- $(this)
137
- .parent()
138
- .fadeOut("slow", function () {
139
- $(this).remove();
140
- });
141
-
142
- $(this).parent().siblings(".user-social-profile").trigger("change");
143
- $(this).parent().siblings(".user-social-links").trigger("change");
144
- $(this).parent().siblings(".user-contact-social-profile").trigger("change");
145
- $(this).parent().siblings(".bttk-contact-social-length").trigger("change");
146
- $(this).parent().siblings(".bttk-social-length").trigger("change");
147
-
148
- event.preventDefault();
149
- });
150
-
151
- $(document).on("keyup", ".user-contact-social-profile", function () {
152
- var value = $(this).val();
153
- var matcher = new RegExp(value, "gi");
154
- $(this)
155
- .siblings(".bttk-icons-list")
156
- .children("li")
157
- .show()
158
- .not(function () {
159
- return matcher.test($(this).find("svg").attr("data-icon"));
160
- })
161
- .hide();
162
- });
163
-
164
- $(document).on("keyup", ".search-itw-icons", function () {
165
- var value = $(this).val();
166
- var matcher = new RegExp(value, "gi");
167
- $(this)
168
- .siblings(".bttk-font-awesome-list")
169
- .find("li")
170
- .show()
171
- .not(function () {
172
- return matcher.test($(this).find("svg").attr("data-icon"));
173
- })
174
- .hide();
175
- });
176
-
177
- $(document).on("keyup", ".bttk-sc-icons", function () {
178
- var value = $(this).val();
179
- var matcher = new RegExp(value, "gi");
180
- $(this)
181
- .siblings(".bttk-font-awesome-list")
182
- .find("li")
183
- .show()
184
- .not(function () {
185
- return matcher.test($(this).find("svg").attr("data-icon"));
186
- })
187
- .hide();
188
- });
189
-
190
- $(document).on("keyup", ".bttk-icons-wrap-search", function () {
191
- var value = $(this).val();
192
- var matcher = new RegExp(value, "gi");
193
- $(this)
194
- .parent(".bttk-icons-list")
195
- .children("li")
196
- .show()
197
- .not(function () {
198
- return matcher.test($(this).find("svg").attr("data-icon"));
199
- })
200
- .hide();
201
- });
202
-
203
- $(document).on("keyup", ".user-social-profile", function () {
204
- var value = $(this).val();
205
- var matcher = new RegExp(value, "gi");
206
- $(this)
207
- .siblings(".bttk-icons-list")
208
- .children("li")
209
- .show()
210
- .not(function () {
211
- return matcher.test($(this).find("svg").attr("data-icon"));
212
- })
213
- .hide();
214
- });
215
-
216
- $(document).on("focus", ".user-social-profile", function () {
217
- // if( $(this).siblings('.bttk-icons-list').length < 1 )
218
- // {
219
- var $iconlist = $(".bttk-icons-wrap").clone();
220
- $(this).after($iconlist.html());
221
- $(this).siblings(".bttk-icons-list").fadeIn("slow");
222
- // }
223
-
224
- // if ( $(this).siblings('.bttk-icons-list').find('#remove-icon-list').length < 1 )
225
- // {
226
- var input = '<span id="remove-icon-list" class="fas fa-times"></span>';
227
- $(this).siblings(".bttk-icons-list:visible").prepend(input);
228
- // }
229
- });
230
-
231
- $(document).on("blur", ".user-social-profile", function (e) {
232
- e.preventDefault();
233
- $(this)
234
- .siblings(".bttk-icons-list")
235
- .fadeOut("slow", function () {
236
- $(this).remove();
237
- });
238
- });
239
-
240
- // $(document).on('click', function (e) {
241
- // if( $(event.target).attr('class') == 'user-social-links' || $(event.target).attr('class') == 'bttk-social-length' || $(event.target).attr('class') == 'bttk-icons-wrap-search')
242
- // {
243
- // return;
244
- // }
245
- // $('.bttk-icons-list:visible').fadeOut('slow',function(){
246
- // $(this).remove();
247
- // });
248
- // $('.bttk-icons-wrap-search:visible').fadeOut('slow',function(){
249
- // $(this).remove();
250
- // });
251
- // });
252
-
253
- var frame;
254
-
255
- // ADD IMAGE LINK
256
- $("body").on("click", ".bttk-upload-button", function (e) {
257
- e.preventDefault();
258
- var clicked = $(this).closest("div");
259
- var custom_uploader = wp
260
- .media({
261
- title: "RARA Image Uploader",
262
- // button: {
263
- // text: 'Custom Button Text',
264
- // },
265
- multiple: false, // Set this to true to allow multiple files to be selected
266
- })
267
- .on("select", function () {
268
- var attachment = custom_uploader
269
- .state()
270
- .get("selection")
271
- .first()
272
- .toJSON();
273
- var str = attachment.url.split(".").pop();
274
- var strarray = ["jpg", "gif", "png", "jpeg"];
275
- if ($.inArray(str, strarray) != -1) {
276
- clicked
277
- .find(".bttk-screenshot")
278
- .empty()
279
- .hide()
280
- .append(
281
- '<img src="' +
282
- attachment.url +
283
- '"><a class="bttk-remove-image"></a>'
284
- )
285
- .slideDown("fast");
286
- } else {
287
- clicked
288
- .find(".bttk-screenshot")
289
- .empty()
290
- .hide()
291
- .append(
292
- "<small>" + bttk_theme_toolkit_pro_uploader.msg + "</small>"
293
- )
294
- .slideDown("fast");
295
- }
296
-
297
- clicked.find(".bttk-upload").val(attachment.id).trigger("change");
298
- clicked
299
- .find(".bttk-upload-button")
300
- .val(bttk_theme_toolkit_pro_uploader.change);
301
- })
302
- .open();
303
- });
304
-
305
- $("body").on("click", ".bttk-remove-image", function (e) {
306
- var selector = $(this).parent("div").parent("div");
307
- selector.find(".bttk-upload").val("").trigger("change");
308
- selector.find(".bttk-remove-image").hide();
309
- selector.find(".bttk-screenshot").slideUp();
310
- selector
311
- .find(".bttk-upload-button")
312
- .val(bttk_theme_toolkit_pro_uploader.upload);
313
-
314
- return false;
315
- });
316
-
317
- // Upload / Change Image
318
- function bttk_image_upload(button_class) {
319
- var _custom_media = true,
320
- _orig_send_attachment = wp.media.editor.send.attachment;
321
-
322
- jQuery("body").on("click", button_class, function (e) {
323
- var button_id = "#" + jQuery(this).attr("id"),
324
- self = jQuery(button_id),
325
- send_attachment_bkp = wp.media.editor.send.attachment,
326
- button = jQuery(button_id),
327
- id = button.attr("id").replace("-button", "");
328
-
329
- _custom_media = true;
330
-
331
- wp.media.editor.send.attachment = function (props, attachment) {
332
- if (_custom_media) {
333
- jQuery("#" + id + "-preview")
334
- .attr("src", attachment.url)
335
- .css("display", "block");
336
- jQuery("#" + id + "-remove").css("display", "inline-block");
337
- jQuery("#" + id + "-noimg").css("display", "none");
338
- jQuery("#" + id)
339
- .val(attachment.url)
340
- .trigger("change");
341
- } else {
342
- return _orig_send_attachment.apply(button_id, [props, attachment]);
343
- }
344
- };
345
-
346
- wp.media.editor.open(button);
347
-
348
- return false;
349
- });
350
- }
351
- bttk_image_upload(".bttk-media-upload");
352
-
353
- // set var
354
- var in_customizer = false;
355
-
356
- // check for wp.customize return boolean
357
- if (typeof wp !== "undefined") {
358
- in_customizer = typeof wp.customize !== "undefined" ? true : false;
359
- }
360
-
361
- // Remove Image
362
- function bttk_image_remove(button_class) {
363
- jQuery("body").on("click", button_class, function (e) {
364
- var button = jQuery(this),
365
- id = button.attr("id").replace("-remove", "");
366
- jQuery("#" + id + "-preview").css("display", "none");
367
- jQuery("#" + id + "-noimg").css("display", "block");
368
- button.css("display", "none");
369
- jQuery("#" + id)
370
- .val("")
371
- .trigger("change");
372
- });
373
- }
374
- bttk_image_remove(".bttk-media-remove");
375
-
376
- $("body").on("click", "#add-user-socicon", function (e) {
377
- e.preventDefault();
378
- da = $(this).siblings(".bttk-sortable-icons").attr("id");
379
- if ($("body").hasClass("elementor-editor-active")) {
380
- suffix = "REPLACE_TO_ID";
381
- } else {
382
- suffix = da.match(/\d+/);
383
- }
384
- var maximum = 0;
385
- $(".social-share-list").each(function () {
386
- var value = $(this).attr("data-id");
387
- if (!isNaN(value)) {
388
- value = parseInt(value);
389
- maximum = value > maximum ? value : maximum;
390
- }
391
- });
392
- var newField = $(".bttk-socicon-template").clone();
393
- maximum++;
394
- var name =
395
- "widget-bttk_author_bio[" + suffix + "][socicon][" + maximum + "]";
396
- newField.find(".user-social-links").attr("name", name);
397
-
398
- var profile =
399
- "widget-bttk_author_bio[" +
400
- suffix +
401
- "][socicon_profile][" +
402
- maximum +
403
- "]";
404
- newField.find(".user-social-profile").attr("name", profile);
405
-
406
- newField.html(function (i, oldHTML) {
407
- return oldHTML.replace(/{{socicon_index}}/g, maximum);
408
- });
409
- $(".bttk-socicon-holder").before(newField.html());
410
- });
411
-
412
- $("body").on("click", ".bttk-social-add", function (e) {
413
- e.preventDefault();
414
- da = $(this).siblings(".bttk-sortable-links").attr("id");
415
- if ($("body").hasClass("elementor-editor-active")) {
416
- suffix = "REPLACE_TO_ID";
417
- } else {
418
- suffix = da.match(/\d+/);
419
- }
420
- var maximum = 0;
421
- $(".bttk-social-icon-wrap:visible").each(function () {
422
- var value = $(this).attr("data-id");
423
- if (!isNaN(value)) {
424
- value = parseInt(value);
425
- maximum = value > maximum ? value : maximum;
426
- }
427
- });
428
- var newinput = $(".bttk-social-template").clone();
429
- maximum++;
430
- newinput
431
- .find(".bttk-social-length")
432
- .attr(
433
- "name",
434
- "widget-bttk_social_links[" + suffix + "][social][" + maximum + "]"
435
- );
436
- newinput
437
- .find(".user-social-profile")
438
- .attr(
439
- "name",
440
- "widget-bttk_social_links[" +
441
- suffix +
442
- "][social_profile][" +
443
- maximum +
444
- "]"
445
- );
446
- newinput.html(function (i, oldHTML) {
447
- return oldHTML.replace(/{{indexes}}/g, maximum);
448
- });
449
-
450
- $(this)
451
- .siblings(".bttk-sortable-links")
452
- .find(".bttk-social-icon-holder")
453
- .before(newinput.html());
454
- });
455
-
456
- $("body").on("click", ".del-bttk-icon", function () {
457
- var con = confirm(sociconsmsg.msg);
458
- if (!con) {
459
- return false;
460
- }
461
- $(this)
462
- .parent()
463
- .fadeOut("slow", function () {
464
- $(this).remove();
465
- $(".bttk-social-title-test").focus().trigger("change");
466
- });
467
- return;
468
- });
469
-
470
- $("body").on("click", ".del-contact-bttk-icon", function () {
471
- var con = confirm(sociconsmsg.msg);
472
- if (!con) {
473
- return false;
474
- }
475
- $(this)
476
- .parent()
477
- .fadeOut("slow", function () {
478
- $(this).remove();
479
- $(".bttk-contact-social-title-test").focus().trigger("change");
480
- });
481
- return;
482
- });
483
-
484
- $("body").on("click", ".bttk-contact-social-add:visible", function (e) {
485
- e.preventDefault();
486
- da = $(this).siblings(".bttk-contact-sortable-links").attr("id");
487
- if ($("body").hasClass("elementor-editor-active")) {
488
- suffix = "REPLACE_TO_ID";
489
- } else {
490
- suffix = da.match(/\d+/);
491
- }
492
- var maximum = 0;
493
- $(".bttk-contact-social-icon-wrap:visible").each(function () {
494
- var value = $(this).attr("data-id");
495
- if (!isNaN(value)) {
496
- value = parseInt(value);
497
- maximum = value > maximum ? value : maximum;
498
- }
499
- });
500
- var newinput = $(".bttk-contact-social-template").clone();
501
- maximum++;
502
- newinput
503
- .find(".bttk-contact-social-length")
504
- .attr(
505
- "name",
506
- "widget-bttk_contact_social_links[" +
507
- suffix +
508
- "][social][" +
509
- maximum +
510
- "]"
511
- );
512
- newinput
513
- .find(".user-contact-social-profile")
514
- .attr(
515
- "name",
516
- "widget-bttk_contact_social_links[" +
517
- suffix +
518
- "][social_profile][" +
519
- maximum +
520
- "]"
521
- );
522
- newinput.html(function (i, oldHTML) {
523
- return oldHTML.replace(/{{ind}}/g, maximum);
524
- });
525
- $(this)
526
- .siblings(".bttk-contact-sortable-links")
527
- .find(".bttk-contact-social-icon-holder")
528
- .before(newinput.html())
529
- .trigger("change");
530
- });
531
- // $(document).on('click','.bttk-icons-wrap-search',function() {
532
- // if($(this).val()=='')
533
- // {
534
- // if( $(this).siblings('.bttk-icons-list').length < 1 )
535
- // {
536
- // var $iconlist = $('.bttk-icons-wrap').clone();
537
- // $(this).after($iconlist.html());
538
- // $(this).siblings('.bttk-icons-list').fadeIn('slow');
539
- // }
540
-
541
- // if ( $(this).siblings('.bttk-icons-list').find('.bttk-icons-wrap-search').length < 1 )
542
- // {
543
- // // var input = '<span id="remove-icon-list" class="dashicons dashicons-no"></span>';
544
- // // $(this).siblings('.bttk-icons-list:visible').prepend(input);
545
- // $('.bttk-icons-wrap-search').attr('value','');
546
- // }
547
- // }
548
- // });
549
-
550
- $("body").on("click", ".bttk-itw-add", function (e) {
551
- e.preventDefault();
552
- da = $(this).siblings(".bttk-img-text-outer").attr("id");
553
- if ($("body").hasClass("elementor-editor-active")) {
554
- suffix = "REPLACE_TO_ID";
555
- } else {
556
- suffix = da.match(/\d+/);
557
- }
558
- var maximum = 0;
559
- $(".image-text-widget-wrap:visible").each(function () {
560
- var value = $(this).attr("data-id");
561
- if (!isNaN(value)) {
562
- value = parseInt(value);
563
- maximum = value > maximum ? value : maximum;
564
- }
565
- });
566
- var newinput = $(".bttk-itw-template").clone();
567
-
568
- newinput.html(function (i, oldHTML) {
569
- maximum++;
570
-
571
- newinput.find(".image-text-widget-wrap").attr("data-id", maximum);
572
- newinput
573
- .find(".text input")
574
- .attr(
575
- "name",
576
- "widget-bttk_image_text_widget[" + suffix + "][link_text][]"
577
- );
578
- newinput
579
- .find(".link input")
580
- .attr("name", "widget-bttk_image_text_widget[" + suffix + "][link][]");
581
- newinput
582
- .find(".widget-upload input")
583
- .attr("name", "widget-bttk_image_text_widget[" + suffix + "][image][]");
584
-
585
- newinput
586
- .find(".text input")
587
- .attr(
588
- "id",
589
- "widget-bttk_image_text_widget[" + suffix + "][link_text][]"
590
- );
591
- newinput
592
- .find(".link input")
593
- .attr("id", "widget-bttk_image_text_widget[" + suffix + "][link][]");
594
- newinput
595
- .find(".widget-upload input")
596
- .attr("id", "widget-bttk_image_text_widget[" + suffix + "][image][]");
597
-
598
- newinput
599
- .find(".text label")
600
- .attr(
601
- "for",
602
- "widget-bttk_image_text_widget[" + suffix + "][link_text][]"
603
- );
604
- newinput
605
- .find(".link label")
606
- .attr("for", "widget-bttk_image_text_widget[" + suffix + "][link][]");
607
- newinput
608
- .find(".widget-upload label")
609
- .attr("for", "widget-bttk_image_text_widget[" + suffix + "][image][]");
610
-
611
- // newinput.find( '.bttk-screenshot' ).attr('id','widget-bttk_image_text_widget-'+suffix+'-image');
612
-
613
- // oldHTML.replace(/{{indexes}}/g, maximum);
614
- });
615
-
616
- $(this)
617
- .siblings(".bttk-img-text-outer")
618
- .find(".itw-holder")
619
- .before(newinput.html());
620
- // $(this).siblings('.bttk-sortable-links').find('.bttk-social-icon-holder').before(newinput.html());
621
- });
622
- $("body").on("click", ".image-text-cancel", function (e) {
623
- e.preventDefault();
624
- $(this)
625
- .parent()
626
- .fadeOut("slow", function () {
627
- $(this).remove();
628
- });
629
- });
630
- $("body").on("click", "#remove-icon-list", function (e) {
631
- e.preventDefault();
632
- $(this)
633
- .parent()
634
- .fadeOut("slow", function () {
635
- $(this).remove();
636
- });
637
- });
638
-
639
- $("body").on("click", ".add-logo:visible", function (e) {
640
- e.preventDefault();
641
- da = $(this).siblings(".widget-client-logo-repeater").attr("id");
642
- if ($("body").hasClass("elementor-editor-active")) {
643
- suffix = "REPLACE_TO_ID";
644
- } else {
645
- suffix = da.match(/\d+/);
646
- }
647
- var len = $(".link-image-repeat:visible").length;
648
- len++;
649
- var newinput = $(".bttk-client-logo-template").clone();
650
- newinput.html(function (i, oldHTML) {
651
- newinput
652
- .find(".featured-link")
653
- .attr(
654
- "name",
655
- "widget-blossom_client_logo_widget[" + suffix + "][link][" + len + "]"
656
- );
657
- newinput
658
- .find(".widget-upload .link")
659
- .attr(
660
- "name",
661
- "widget-blossom_client_logo_widget[" +
662
- suffix +
663
- "][image][" +
664
- len +
665
- "]"
666
- );
667
- $(".widget-client-logo-repeater").trigger("change");
668
- });
669
- $(this)
670
- .siblings(".widget-client-logo-repeater")
671
- .find(".cl-repeater-holder")
672
- .before(newinput.html());
673
- });
674
- $("body").on("click", ".cross", function (e) {
675
- e.preventDefault();
676
- $(this)
677
- .parent()
678
- .fadeOut("slow", function () {
679
- $(this).remove();
680
- $(".widget-client-logo-repeater").trigger("change");
681
- });
682
- });
683
-
684
- $(document).on("click", ".bttk-font-group li", function () {
685
- var id = $(this).parents(".widget").attr("id");
686
- $("#" + id)
687
- .find(".bttk-font-group li")
688
- .removeClass();
689
- $("#" + id)
690
- .find(".icon-receiver")
691
- .children("a")
692
- .remove(".bttk-remove-icon");
693
- $(this).addClass("selected");
694
- var prefix = $(this)
695
- .parents(".bttk-font-awesome-list")
696
- .find(".bttk-font-group li.selected")
697
- .children("svg")
698
- .attr("data-prefix");
699
- var icon = $(this)
700
- .parents(".bttk-font-awesome-list")
701
- .find(".bttk-font-group li.selected")
702
- .children("svg")
703
- .attr("data-icon");
704
- var aa = prefix + " fa-" + icon;
705
- $(this)
706
- .parents(".bttk-font-awesome-list")
707
- .siblings("p")
708
- .find(".hidden-icon-input")
709
- .val(aa);
710
- $(this)
711
- .parents(".bttk-font-awesome-list")
712
- .siblings("p")
713
- .find(".icon-receiver")
714
- .html('<i class="' + aa + '"></i>');
715
- $("#" + id)
716
- .find(".icon-receiver")
717
- .children("i")
718
- .after('<a class="bttk-remove-icon"></a>');
719
-
720
- if (in_customizer) {
721
- $(".hidden-icon-input").trigger("change");
722
- }
723
- return $(this).focus().trigger("change");
724
- });
725
- $(document).on("click", ".bttk-remove-icon", function () {
726
- var id = $(this).parents(".widget").attr("id");
727
- $("#" + id)
728
- .find(".bttk-font-group li")
729
- .removeClass();
730
- $("#" + id)
731
- .find(".hidden-icon-input")
732
- .val("");
733
- $("#" + id)
734
- .find(".icon-receiver")
735
- .html('<i class=""></i>')
736
- .children("a")
737
- .remove(".bttk-remove-icon");
738
- if (in_customizer) {
739
- $(".hidden-icon-input").trigger("change");
740
- }
741
- return $("#" + id)
742
- .find(".icon-receiver")
743
- .trigger("change");
744
- });
745
-
746
- /** To add remove button if icon is selected in widget update event */
747
- $(document).on("widget-updated", function (e, widget) {
748
- // "widget" represents jQuery object of the affected widget's DOM element
749
- var $this = $("#" + widget[0].id).find(".yes");
750
- $this.append('<a class="bttk-remove-icon"></a>');
751
- });
752
-
753
- bttktheme_pro_check_icon();
754
-
755
- /** function to check if icon is selected and saved when loading in widget.php */
756
- function bttktheme_pro_check_icon() {
757
- $(".icon-receiver").each(function () {
758
- // var id = $(this).parents('.widget').attr('id');
759
- if ($(this).hasClass("yes")) {
760
- $(this).append('<a class="bttk-remove-icon"></a>');
761
- }
762
- });
763
- }
764
- function initColorPicker(widget) {
765
- widget.find(".my-widget-color-field").wpColorPicker({
766
- change: _.throttle(function () {
767
- // For Customizer
768
- jQuery(this).trigger("change");
769
- }, 3000),
770
- });
771
- }
772
- function onFormUpdate(event, widget) {
773
- initColorPicker(widget);
774
- }
775
-
776
- jQuery(document).on("widget-added widget-updated", onFormUpdate);
777
- });
1
+ jQuery(document).ready(function ($) {
2
+ $("body").on("click", "#add-faq:visible", function (e) {
3
+ e.preventDefault();
4
+ da = $(this).siblings(".widget-client-faq-repeater").attr("id");
5
+ if ($("body").hasClass("elementor-editor-active")) {
6
+ suffix = "REPLACE_TO_ID";
7
+ } else {
8
+ suffix = da.match(/\d+/);
9
+ }
10
+ len = 0;
11
+ $(".faqs-repeat:visible").each(function () {
12
+ var value = $(this).attr("data-id");
13
+ if (!isNaN(value)) {
14
+ value = parseInt(value);
15
+ len = value > len ? value : len;
16
+ }
17
+ });
18
+ var newinput = $(".bttk-faq-template").clone();
19
+ len++;
20
+ // newinput.html(function(i, oldHTML) {
21
+ // });
22
+ newinput.find(".faqs-repeat").attr("data-id", len);
23
+ newinput
24
+ .find(".question")
25
+ .attr(
26
+ "name",
27
+ "widget-bttk_faqs_widget[" + suffix + "][question][" + len + "]"
28
+ );
29
+ newinput
30
+ .find(".answer")
31
+ .attr(
32
+ "name",
33
+ "widget-bttk_faqs_widget[" + suffix + "][answer][" + len + "]"
34
+ );
35
+ // newinput.html(function(i, oldHTML) {
36
+ // return oldHTML.replace(/{{indexes}}/g, len);
37
+ // });
38
+ $(".cl-faq-holder").before(newinput.html()).focus().trigger("change");
39
+ });
40
+
41
+ var file_frame;
42
+ $(".user-signature-image").on("click", function (event) {
43
+ event.preventDefault();
44
+
45
+ // If the media frame already exists, reopen it.
46
+ if (file_frame) {
47
+ file_frame.open();
48
+ return;
49
+ }
50
+ // Create the media frame.
51
+ file_frame = wp.media.frames.file_frame = wp.media({
52
+ title: $(this).data("uploader_title"),
53
+ button: {
54
+ text: $(this).data("uploader_button_text"),
55
+ },
56
+ multiple: false, // Set to true to allow multiple files to be selected
57
+ });
58
+
59
+ // When an image is selected, run a callback.
60
+ file_frame.on("select", function () {
61
+ // We set multiple to false so only get one image from the uploader
62
+ attachment = file_frame.state().get("selection").first().toJSON();
63
+ $("#user_signature_image").val(attachment.url);
64
+ // Do something with attachment.id and/or attachment.url here
65
+ });
66
+
67
+ // Finally, open the modal
68
+ file_frame.open();
69
+ });
70
+
71
+ $("body").on("click", ".del-user-social-links", function (e) {
72
+ var confirmation = confirm(sociconsmsg.msg);
73
+ if (!confirmation) {
74
+ return false;
75
+ }
76
+ $(this)
77
+ .parent()
78
+ .fadeOut("slow", function () {
79
+ $(this).remove();
80
+ $("#add-user-socicon").focus().trigger("change");
81
+ });
82
+ return;
83
+ });
84
+
85
+ $(document).on("focus", ".user-contact-social-profile", function () {
86
+ // if($(this).val()=='')
87
+ // {
88
+ // if( $(this).siblings('.bttk-icons-list').length < 1 )
89
+ // {
90
+ var $iconlist = $(".bttk-icons-wrap").clone();
91
+ $(this).after($iconlist.html());
92
+ $(this).siblings(".bttk-icons-list").fadeIn("slow");
93
+ // }
94
+
95
+ // if ( $(this).siblings('.bttk-icons-list').find('#remove-icon-list').length < 1 )
96
+ // {
97
+ var input = '<span id="remove-icon-list" class="fas fa-times"></span>';
98
+ $(this).siblings(".bttk-icons-list:visible").prepend(input);
99
+ // }
100
+ // }
101
+ });
102
+
103
+ $(document).on("blur", ".user-contact-social-profile", function (e) {
104
+ e.preventDefault();
105
+ $(this)
106
+ .siblings(".bttk-icons-list")
107
+ .fadeOut("slow", function () {
108
+ $(this).remove();
109
+ });
110
+ });
111
+
112
+ $(document).on("click", ".bttk-icons-list li", function (event) {
113
+ var prefix = $(this).children("svg").attr("data-prefix");
114
+ var icon = $(this).children("svg").attr("data-icon");
115
+ var val = prefix + " fa-" + icon;
116
+
117
+ $(this).parent().siblings(".user-social-profile").val(icon);
118
+ $(this).parent().siblings(".user-contact-social-profile").val(icon);
119
+
120
+ $(this)
121
+ .parent()
122
+ .parent()
123
+ .siblings(".bttk-contact-social-length")
124
+ .attr("value", "https://" + icon + ".com");
125
+ $(this)
126
+ .parent()
127
+ .parent()
128
+ .siblings(".bttk-social-length")
129
+ .attr("value", "https://" + icon + ".com");
130
+ $(this)
131
+ .parent()
132
+ .siblings(".user-social-links")
133
+ .attr("value", "https://" + icon + ".com");
134
+
135
+ $(this).siblings(".bttk-icons-wrap-search").remove("slow");
136
+ $(this)
137
+ .parent()
138
+ .fadeOut("slow", function () {
139
+ $(this).remove();
140
+ });
141
+
142
+ $(this).parent().siblings(".user-social-profile").trigger("change");
143
+ $(this).parent().siblings(".user-social-links").trigger("change");
144
+ $(this).parent().siblings(".user-contact-social-profile").trigger("change");
145
+ $(this).parent().siblings(".bttk-contact-social-length").trigger("change");
146
+ $(this).parent().siblings(".bttk-social-length").trigger("change");
147
+
148
+ event.preventDefault();
149
+ });
150
+
151
+ $(document).on("keyup", ".user-contact-social-profile", function () {
152
+ var value = $(this).val();
153
+ var matcher = new RegExp(value, "gi");
154
+ $(this)
155
+ .siblings(".bttk-icons-list")
156
+ .children("li")
157
+ .show()
158
+ .not(function () {
159
+ return matcher.test($(this).find("svg").attr("data-icon"));
160
+ })
161
+ .hide();
162
+ });
163
+
164
+ $(document).on("keyup", ".search-itw-icons", function () {
165
+ var value = $(this).val();
166
+ var matcher = new RegExp(value, "gi");
167
+ $(this)
168
+ .siblings(".bttk-font-awesome-list")
169
+ .find("li")
170
+ .show()
171
+ .not(function () {
172
+ return matcher.test($(this).find("svg").attr("data-icon"));
173
+ })
174
+ .hide();
175
+ });
176
+
177
+ $(document).on("keyup", ".bttk-sc-icons", function () {
178
+ var value = $(this).val();
179
+ var matcher = new RegExp(value, "gi");
180
+ $(this)
181
+ .siblings(".bttk-font-awesome-list")
182
+ .find("li")
183
+ .show()
184
+ .not(function () {
185
+ return matcher.test($(this).find("svg").attr("data-icon"));
186
+ })
187
+ .hide();
188
+ });
189
+
190
+ $(document).on("keyup", ".bttk-icons-wrap-search", function () {
191
+ var value = $(this).val();
192
+ var matcher = new RegExp(value, "gi");
193
+ $(this)
194
+ .parent(".bttk-icons-list")
195
+ .children("li")
196
+ .show()
197
+ .not(function () {
198
+ return matcher.test($(this).find("svg").attr("data-icon"));
199
+ })
200
+ .hide();
201
+ });
202
+
203
+ $(document).on("keyup", ".user-social-profile", function () {
204
+ var value = $(this).val();
205
+ var matcher = new RegExp(value, "gi");
206
+ $(this)
207
+ .siblings(".bttk-icons-list")
208
+ .children("li")
209
+ .show()
210
+ .not(function () {
211
+ return matcher.test($(this).find("svg").attr("data-icon"));
212
+ })
213
+ .hide();
214
+ });
215
+
216
+ $(document).on("focus", ".user-social-profile", function () {
217
+ // if( $(this).siblings('.bttk-icons-list').length < 1 )
218
+ // {
219
+ var $iconlist = $(".bttk-icons-wrap").clone();
220
+ $(this).after($iconlist.html());
221
+ $(this).siblings(".bttk-icons-list").fadeIn("slow");
222
+ // }
223
+
224
+ // if ( $(this).siblings('.bttk-icons-list').find('#remove-icon-list').length < 1 )
225
+ // {
226
+ var input = '<span id="remove-icon-list" class="fas fa-times"></span>';
227
+ $(this).siblings(".bttk-icons-list:visible").prepend(input);
228
+ // }
229
+ });
230
+
231
+ $(document).on("blur", ".user-social-profile", function (e) {
232
+ e.preventDefault();
233
+ $(this)
234
+ .siblings(".bttk-icons-list")
235
+ .fadeOut("slow", function () {
236
+ $(this).remove();
237
+ });
238
+ });
239
+
240
+ // $(document).on('click', function (e) {
241
+ // if( $(event.target).attr('class') == 'user-social-links' || $(event.target).attr('class') == 'bttk-social-length' || $(event.target).attr('class') == 'bttk-icons-wrap-search')
242
+ // {
243
+ // return;
244
+ // }
245
+ // $('.bttk-icons-list:visible').fadeOut('slow',function(){
246
+ // $(this).remove();
247
+ // });
248
+ // $('.bttk-icons-wrap-search:visible').fadeOut('slow',function(){
249
+ // $(this).remove();
250
+ // });
251
+ // });
252
+
253
+ var frame;
254
+
255
+ // ADD IMAGE LINK
256
+ $("body").on("click", ".bttk-upload-button", function (e) {
257
+ e.preventDefault();
258
+ var clicked = $(this).closest("div");
259
+ var custom_uploader = wp
260
+ .media({
261
+ title: "RARA Image Uploader",
262
+ // button: {
263
+ // text: 'Custom Button Text',
264
+ // },
265
+ multiple: false, // Set this to true to allow multiple files to be selected
266
+ })
267
+ .on("select", function () {
268
+ var attachment = custom_uploader
269
+ .state()
270
+ .get("selection")
271
+ .first()
272
+ .toJSON();
273
+ var str = attachment.url.split(".").pop();
274
+ var strarray = ["jpg", "gif", "png", "jpeg"];
275
+ if ($.inArray(str, strarray) != -1) {
276
+ clicked
277
+ .find(".bttk-screenshot")
278
+ .empty()
279
+ .hide()
280
+ .append(
281
+ '<img src="' +
282
+ attachment.url +
283
+ '"><a class="bttk-remove-image"></a>'
284
+ )
285
+ .slideDown("fast");
286
+ } else {
287
+ clicked
288
+ .find(".bttk-screenshot")
289
+ .empty()
290
+ .hide()
291
+ .append(
292
+ "<small>" + bttk_theme_toolkit_pro_uploader.msg + "</small>"
293
+ )
294
+ .slideDown("fast");
295
+ }
296
+
297
+ clicked.find(".bttk-upload").val(attachment.id).trigger("change");
298
+ clicked
299
+ .find(".bttk-upload-button")
300
+ .val(bttk_theme_toolkit_pro_uploader.change);
301
+ })
302
+ .open();
303
+ });
304
+
305
+ $("body").on("click", ".bttk-remove-image", function (e) {
306
+ var selector = $(this).parent("div").parent("div");
307
+ selector.find(".bttk-upload").val("").trigger("change");
308
+ selector.find(".bttk-remove-image").hide();
309
+ selector.find(".bttk-screenshot").slideUp();
310
+ selector
311
+ .find(".bttk-upload-button")
312
+ .val(bttk_theme_toolkit_pro_uploader.upload);
313
+
314
+ return false;
315
+ });
316
+
317
+ // Upload / Change Image
318
+ function bttk_image_upload(button_class) {
319
+ var _custom_media = true,
320
+ _orig_send_attachment = wp.media.editor.send.attachment;
321
+
322
+ jQuery("body").on("click", button_class, function (e) {
323
+ var button_id = "#" + jQuery(this).attr("id"),
324
+ self = jQuery(button_id),
325
+ send_attachment_bkp = wp.media.editor.send.attachment,
326
+ button = jQuery(button_id),
327
+ id = button.attr("id").replace("-button", "");
328
+
329
+ _custom_media = true;
330
+
331
+ wp.media.editor.send.attachment = function (props, attachment) {
332
+ if (_custom_media) {
333
+ jQuery("#" + id + "-preview")
334
+ .attr("src", attachment.url)
335
+ .css("display", "block");
336
+ jQuery("#" + id + "-remove").css("display", "inline-block");
337
+ jQuery("#" + id + "-noimg").css("display", "none");
338
+ jQuery("#" + id)
339
+ .val(attachment.url)
340
+ .trigger("change");
341
+ } else {
342
+ return _orig_send_attachment.apply(button_id, [props, attachment]);
343
+ }
344
+ };
345
+
346
+ wp.media.editor.open(button);
347
+
348
+ return false;
349
+ });
350
+ }
351
+ bttk_image_upload(".bttk-media-upload");
352
+
353
+ // set var
354
+ var in_customizer = false;
355
+
356
+ // check for wp.customize return boolean
357
+ if (typeof wp !== "undefined") {
358
+ in_customizer = typeof wp.customize !== "undefined" ? true : false;
359
+ }
360
+
361
+ // Remove Image
362
+ function bttk_image_remove(button_class) {
363
+ jQuery("body").on("click", button_class, function (e) {
364
+ var button = jQuery(this),
365
+ id = button.attr("id").replace("-remove", "");
366
+ jQuery("#" + id + "-preview").css("display", "none");
367
+ jQuery("#" + id + "-noimg").css("display", "block");
368
+ button.css("display", "none");
369
+ jQuery("#" + id)
370
+ .val("")
371
+ .trigger("change");
372
+ });
373
+ }
374
+ bttk_image_remove(".bttk-media-remove");
375
+
376
+ $("body").on("click", "#add-user-socicon", function (e) {
377
+ e.preventDefault();
378
+ da = $(this).siblings(".bttk-sortable-icons").attr("id");
379
+ if ($("body").hasClass("elementor-editor-active")) {
380
+ suffix = "REPLACE_TO_ID";
381
+ } else {
382
+ suffix = da.match(/\d+/);
383
+ }
384
+ var maximum = 0;
385
+ $(".social-share-list").each(function () {
386
+ var value = $(this).attr("data-id");
387
+ if (!isNaN(value)) {
388
+ value = parseInt(value);
389
+ maximum = value > maximum ? value : maximum;
390
+ }
391
+ });
392
+ var newField = $(".bttk-socicon-template").clone();
393
+ maximum++;
394
+ var name =
395
+ "widget-bttk_author_bio[" + suffix + "][socicon][" + maximum + "]";
396
+ newField.find(".user-social-links").attr("name", name);
397
+
398
+ var profile =
399
+ "widget-bttk_author_bio[" +
400
+ suffix +
401
+ "][socicon_profile][" +
402
+ maximum +
403
+ "]";
404
+ newField.find(".user-social-profile").attr("name", profile);
405
+
406
+ newField.html(function (i, oldHTML) {
407
+ return oldHTML.replace(/{{socicon_index}}/g, maximum);
408
+ });
409
+ $(".bttk-socicon-holder").before(newField.html());
410
+ });
411
+
412
+ $("body").on("click", ".bttk-social-add", function (e) {
413
+ e.preventDefault();
414
+ da = $(this).siblings(".bttk-sortable-links").attr("id");
415
+ if ($("body").hasClass("elementor-editor-active")) {
416
+ suffix = "REPLACE_TO_ID";
417
+ } else {
418
+ suffix = da.match(/\d+/);
419
+ }
420
+ var maximum = 0;
421
+ $(".bttk-social-icon-wrap:visible").each(function () {
422
+ var value = $(this).attr("data-id");
423
+ if (!isNaN(value)) {
424
+ value = parseInt(value);
425
+ maximum = value > maximum ? value : maximum;
426
+ }
427
+ });
428
+ var newinput = $(".bttk-social-template").clone();
429
+ maximum++;
430
+ newinput
431
+ .find(".bttk-social-length")
432
+ .attr(
433
+ "name",
434
+ "widget-bttk_social_links[" + suffix + "][social][" + maximum + "]"
435
+ );
436
+ newinput
437
+ .find(".user-social-profile")
438
+ .attr(
439
+ "name",
440
+ "widget-bttk_social_links[" +
441
+ suffix +
442
+ "][social_profile][" +
443
+ maximum +
444
+ "]"
445
+ );
446
+ newinput.html(function (i, oldHTML) {
447
+ return oldHTML.replace(/{{indexes}}/g, maximum);
448
+ });
449
+
450
+ $(this)
451
+ .siblings(".bttk-sortable-links")
452
+ .find(".bttk-social-icon-holder")
453
+ .before(newinput.html());
454
+ });
455
+
456
+ $("body").on("click", ".del-bttk-icon", function () {
457
+ var con = confirm(sociconsmsg.msg);
458
+ if (!con) {
459
+ return false;
460
+ }
461
+ $(this)
462
+ .parent()
463
+ .fadeOut("slow", function () {
464
+ $(this).remove();
465
+ $(".bttk-social-title-test").focus().trigger("change");
466
+ });
467
+ return;
468
+ });
469
+
470
+ $("body").on("click", ".del-contact-bttk-icon", function () {
471
+ var con = confirm(sociconsmsg.msg);
472
+ if (!con) {
473
+ return false;
474
+ }
475
+ $(this)
476
+ .parent()
477
+ .fadeOut("slow", function () {
478
+ $(this).remove();
479
+ $(".bttk-contact-social-title-test").focus().trigger("change");
480
+ });
481
+ return;
482
+ });
483
+
484
+ $("body").on("click", ".bttk-contact-social-add:visible", function (e) {
485
+ e.preventDefault();
486
+ da = $(this).siblings(".bttk-contact-sortable-links").attr("id");
487
+ if ($("body").hasClass("elementor-editor-active")) {
488
+ suffix = "REPLACE_TO_ID";
489
+ } else {
490
+ suffix = da.match(/\d+/);
491
+ }
492
+ var maximum = 0;
493
+ $(".bttk-contact-social-icon-wrap:visible").each(function () {
494
+ var value = $(this).attr("data-id");
495
+ if (!isNaN(value)) {
496
+ value = parseInt(value);
497
+ maximum = value > maximum ? value : maximum;
498
+ }
499
+ });
500
+ var newinput = $(".bttk-contact-social-template").clone();
501
+ maximum++;
502
+ newinput
503
+ .find(".bttk-contact-social-length")
504
+ .attr(
505
+ "name",
506
+ "widget-bttk_contact_social_links[" +
507
+ suffix +
508
+ "][social][" +
509
+ maximum +
510
+ "]"
511
+ );
512
+ newinput
513
+ .find(".user-contact-social-profile")
514
+ .attr(
515
+ "name",
516
+ "widget-bttk_contact_social_links[" +
517
+ suffix +
518
+ "][social_profile][" +
519
+ maximum +
520
+ "]"
521
+ );
522
+ newinput.html(function (i, oldHTML) {
523
+ return oldHTML.replace(/{{ind}}/g, maximum);
524
+ });
525
+ $(this)
526
+ .siblings(".bttk-contact-sortable-links")
527
+ .find(".bttk-contact-social-icon-holder")
528
+ .before(newinput.html())
529
+ .trigger("change");
530
+ });
531
+ // $(document).on('click','.bttk-icons-wrap-search',function() {
532
+ // if($(this).val()=='')
533
+ // {
534
+ // if( $(this).siblings('.bttk-icons-list').length < 1 )
535
+ // {
536
+ // var $iconlist = $('.bttk-icons-wrap').clone();
537
+ // $(this).after($iconlist.html());
538
+ // $(this).siblings('.bttk-icons-list').fadeIn('slow');
539
+ // }
540
+
541
+ // if ( $(this).siblings('.bttk-icons-list').find('.bttk-icons-wrap-search').length < 1 )
542
+ // {
543
+ // // var input = '<span id="remove-icon-list" class="dashicons dashicons-no"></span>';
544
+ // // $(this).siblings('.bttk-icons-list:visible').prepend(input);
545
+ // $('.bttk-icons-wrap-search').attr('value','');
546
+ // }
547
+ // }
548
+ // });
549
+
550
+ $("body").on("click", ".bttk-itw-add", function (e) {
551
+ e.preventDefault();
552
+ da = $(this).siblings(".bttk-img-text-outer").attr("id");
553
+ if ($("body").hasClass("elementor-editor-active")) {
554
+ suffix = "REPLACE_TO_ID";
555
+ } else {
556
+ suffix = da.match(/\d+/);
557
+ }
558
+ var maximum = 0;
559
+ $(".image-text-widget-wrap:visible").each(function () {
560
+ var value = $(this).attr("data-id");
561
+ if (!isNaN(value)) {
562
+ value = parseInt(value);
563
+ maximum = value > maximum ? value : maximum;
564
+ }
565
+ });
566
+ var newinput = $(".bttk-itw-template").clone();
567
+
568
+ newinput.html(function (i, oldHTML) {
569
+ maximum++;
570
+
571
+ newinput.find(".image-text-widget-wrap").attr("data-id", maximum);
572
+ newinput
573
+ .find(".text input")
574
+ .attr(
575
+ "name",
576
+ "widget-bttk_image_text_widget[" + suffix + "][link_text][]"
577
+ );
578
+ newinput
579
+ .find(".link input")
580
+ .attr("name", "widget-bttk_image_text_widget[" + suffix + "][link][]");
581
+ newinput
582
+ .find(".widget-upload input")
583
+ .attr("name", "widget-bttk_image_text_widget[" + suffix + "][image][]");
584
+
585
+ newinput
586
+ .find(".text input")
587
+ .attr(
588
+ "id",
589
+ "widget-bttk_image_text_widget[" + suffix + "][link_text][]"
590
+ );
591
+ newinput
592
+ .find(".link input")
593
+ .attr("id", "widget-bttk_image_text_widget[" + suffix + "][link][]");
594
+ newinput
595
+ .find(".widget-upload input")
596
+ .attr("id", "widget-bttk_image_text_widget[" + suffix + "][image][]");
597
+
598
+ newinput
599
+ .find(".text label")
600
+ .attr(
601
+ "for",
602
+ "widget-bttk_image_text_widget[" + suffix + "][link_text][]"
603
+ );
604
+ newinput
605
+ .find(".link label")
606
+ .attr("for", "widget-bttk_image_text_widget[" + suffix + "][link][]");
607
+ newinput
608
+ .find(".widget-upload label")
609
+ .attr("for", "widget-bttk_image_text_widget[" + suffix + "][image][]");
610
+
611
+ // newinput.find( '.bttk-screenshot' ).attr('id','widget-bttk_image_text_widget-'+suffix+'-image');
612
+
613
+ // oldHTML.replace(/{{indexes}}/g, maximum);
614
+ });
615
+
616
+ $(this)
617
+ .siblings(".bttk-img-text-outer")
618
+ .find(".itw-holder")
619
+ .before(newinput.html());
620
+ // $(this).siblings('.bttk-sortable-links').find('.bttk-social-icon-holder').before(newinput.html());
621
+ });
622
+ $("body").on("click", ".image-text-cancel", function (e) {
623
+ e.preventDefault();
624
+ $(this)
625
+ .parent()
626
+ .fadeOut("slow", function () {
627
+ $(this).remove();
628
+ });
629
+ });
630
+ $("body").on("click", "#remove-icon-list", function (e) {
631
+ e.preventDefault();
632
+ $(this)
633
+ .parent()
634
+ .fadeOut("slow", function () {
635
+ $(this).remove();
636
+ });
637
+ });
638
+
639
+ $("body").on("click", ".add-logo:visible", function (e) {
640
+ e.preventDefault();
641
+ da = $(this).siblings(".widget-client-logo-repeater").attr("id");
642
+ if ($("body").hasClass("elementor-editor-active")) {
643
+ suffix = "REPLACE_TO_ID";
644
+ } else {
645
+ suffix = da.match(/\d+/);
646
+ }
647
+ var len = $(".link-image-repeat:visible").length;
648
+ len++;
649
+ var newinput = $(".bttk-client-logo-template").clone();
650
+ newinput.html(function (i, oldHTML) {
651
+ newinput
652
+ .find(".featured-link")
653
+ .attr(
654
+ "name",
655
+ "widget-blossom_client_logo_widget[" + suffix + "][link][" + len + "]"
656
+ );
657
+ newinput
658
+ .find(".widget-upload .link")
659
+ .attr(
660
+ "name",
661
+ "widget-blossom_client_logo_widget[" +
662
+ suffix +
663
+ "][image][" +
664
+ len +
665
+ "]"
666
+ );
667
+ $(".widget-client-logo-repeater").trigger("change");
668
+ });
669
+ $(this)
670
+ .siblings(".widget-client-logo-repeater")
671
+ .find(".cl-repeater-holder")
672
+ .before(newinput.html());
673
+ });
674
+ $("body").on("click", ".cross", function (e) {
675
+ e.preventDefault();
676
+ $(this)
677
+ .parent()
678
+ .fadeOut("slow", function () {
679
+ $(this).remove();
680
+ $(".widget-client-logo-repeater").trigger("change");
681
+ });
682
+ });
683
+
684
+ $(document).on("click", ".bttk-font-group li", function () {
685
+ var id = $(this).parents(".widget").attr("id");
686
+ $("#" + id)
687
+ .find(".bttk-font-group li")
688
+ .removeClass();
689
+ $("#" + id)
690
+ .find(".icon-receiver")
691
+ .children("a")
692
+ .remove(".bttk-remove-icon");
693
+ $(this).addClass("selected");
694
+ var prefix = $(this)
695
+ .parents(".bttk-font-awesome-list")
696
+ .find(".bttk-font-group li.selected")
697
+ .children("svg")
698
+ .attr("data-prefix");
699
+ var icon = $(this)
700
+ .parents(".bttk-font-awesome-list")
701
+ .find(".bttk-font-group li.selected")
702
+ .children("svg")
703
+ .attr("data-icon");
704
+ var aa = prefix + " fa-" + icon;
705
+ $(this)
706
+ .parents(".bttk-font-awesome-list")
707
+ .siblings("p")
708
+ .find(".hidden-icon-input")
709
+ .val(aa);
710
+ $(this)
711
+ .parents(".bttk-font-awesome-list")
712
+ .siblings("p")
713
+ .find(".icon-receiver")
714
+ .html('<i class="' + aa + '"></i>');
715
+ $("#" + id)
716
+ .find(".icon-receiver")
717
+ .children("i")
718
+ .after('<a class="bttk-remove-icon"></a>');
719
+
720
+ if (in_customizer) {
721
+ $(".hidden-icon-input").trigger("change");
722
+ }
723
+ return $(this).focus().trigger("change");
724
+ });
725
+ $(document).on("click", ".bttk-remove-icon", function () {
726
+ var id = $(this).parents(".widget").attr("id");
727
+ $("#" + id)
728
+ .find(".bttk-font-group li")
729
+ .removeClass();
730
+ $("#" + id)
731
+ .find(".hidden-icon-input")
732
+ .val("");
733
+ $("#" + id)
734
+ .find(".icon-receiver")
735
+ .html('<i class=""></i>')
736
+ .children("a")
737
+ .remove(".bttk-remove-icon");
738
+ if (in_customizer) {
739
+ $(".hidden-icon-input").trigger("change");
740
+ }
741
+ return $("#" + id)
742
+ .find(".icon-receiver")
743
+ .trigger("change");
744
+ });
745
+
746
+ /** To add remove button if icon is selected in widget update event */
747
+ $(document).on("widget-updated", function (e, widget) {
748
+ // "widget" represents jQuery object of the affected widget's DOM element
749
+ var $this = $("#" + widget[0].id).find(".yes");
750
+ $this.append('<a class="bttk-remove-icon"></a>');
751
+ });
752
+
753
+ bttktheme_pro_check_icon();
754
+
755
+ /** function to check if icon is selected and saved when loading in widget.php */
756
+ function bttktheme_pro_check_icon() {
757
+ $(".icon-receiver").each(function () {
758
+ // var id = $(this).parents('.widget').attr('id');
759
+ if ($(this).hasClass("yes")) {
760
+ $(this).append('<a class="bttk-remove-icon"></a>');
761
+ }
762
+ });
763
+ }
764
+ function initColorPicker(widget) {
765
+ widget.find(".my-widget-color-field").wpColorPicker({
766
+ change: _.throttle(function () {
767
+ // For Customizer
768
+ jQuery(this).trigger("change");
769
+ }, 3000),
770
+ });
771
+ }
772
+ function onFormUpdate(event, widget) {
773
+ initColorPicker(widget);
774
+ }
775
+
776
+ jQuery(document).on("widget-added widget-updated", onFormUpdate);
777
+ });
blossomthemes-toolkit.php CHANGED
@@ -1,81 +1,82 @@
1
- <?php
2
-
3
- /**
4
- * The plugin bootstrap file
5
- *
6
- * This file is read by WordPress to generate the plugin information in the plugin
7
- * admin area. This file also includes all of the dependencies used by the plugin,
8
- * registers the activation and deactivation functions, and defines a function
9
- * that starts the plugin.
10
- *
11
- * @link http://wordpress.org/plugins/blossomthemes-toolkit/
12
- * @since 1.0.0
13
- * @package Blossomthemes_Toolkit
14
- *
15
- * @wordpress-plugin
16
- * Plugin Name: BlossomThemes Toolkit
17
- * Plugin URI: https://wordpress.org/plugins/blossomthemes-toolkit/
18
- * Description: BlossomThemes Toolkit provides you necessary widgets for better and effective blogging.
19
- * Version: 2.2.0
20
- * Author: blossomthemes
21
- * Author URI: https://blossomthemes.com/
22
- * License: GPL-2.0+
23
- * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
24
- * Text Domain: blossomthemes-toolkit
25
- * Domain Path: /languages
26
- */
27
-
28
- // If this file is called directly, abort.
29
- if ( ! defined( 'WPINC' ) ) {
30
- die;
31
- }
32
-
33
- define( 'BTTK_PLUGIN_VERSION', '2.2.0' );
34
- define( 'BTTK_BASE_PATH', dirname( __FILE__ ) );
35
- define( 'BTTK_FILE_PATH', __FILE__ );
36
- define( 'BTTK_FILE_URL', rtrim( plugin_dir_url( __FILE__ ), '/' ) );
37
- add_image_size( 'post-slider-thumb-size', 330, 190, true );
38
-
39
- /**
40
- * The code that runs during plugin activation.
41
- * This action is documented in includes/class-blossomthemes-toolkit-activator.php
42
- */
43
- function activate_blossomthemes_toolkit() {
44
- require_once plugin_dir_path( __FILE__ ) . 'includes/class-blossomthemes-toolkit-activator.php';
45
- Blossomthemes_Toolkit_Activator::activate();
46
- }
47
-
48
- /**
49
- * The code that runs during plugin deactivation.
50
- * This action is documented in includes/class-blossomthemes-toolkit-deactivator.php
51
- */
52
- function deactivate_blossomthemes_toolkit() {
53
- require_once plugin_dir_path( __FILE__ ) . 'includes/class-blossomthemes-toolkit-deactivator.php';
54
- Blossomthemes_Toolkit_Deactivator::deactivate();
55
- }
56
-
57
- register_activation_hook( __FILE__, 'activate_blossomthemes_toolkit' );
58
- register_deactivation_hook( __FILE__, 'deactivate_blossomthemes_toolkit' );
59
-
60
- /**
61
- * The core plugin class that is used to define internationalization,
62
- * admin-specific hooks, and public-facing site hooks.
63
- */
64
- require plugin_dir_path( __FILE__ ) . 'includes/class-blossomthemes-toolkit.php';
65
-
66
- /**
67
- * Begins execution of the plugin.
68
- *
69
- * Since everything within the plugin is registered via hooks,
70
- * then kicking off the plugin from this point in the file does
71
- * not affect the page life cycle.
72
- *
73
- * @since 1.0.0
74
- */
75
- function run_blossomthemes_toolkit() {
76
-
77
- $plugin = new Blossomthemes_Toolkit();
78
- $plugin->run();
79
-
80
- }
81
- run_blossomthemes_toolkit();
 
1
+ <?php
2
+
3
+ /**
4
+ * The plugin bootstrap file
5
+ *
6
+ * This file is read by WordPress to generate the plugin information in the plugin
7
+ * admin area. This file also includes all of the dependencies used by the plugin,
8
+ * registers the activation and deactivation functions, and defines a function
9
+ * that starts the plugin.
10
+ *
11
+ * @link http://wordpress.org/plugins/blossomthemes-toolkit/
12
+ * @since 1.0.0
13
+ * @package Blossomthemes_Toolkit
14
+ *
15
+ * @wordpress-plugin
16
+ * Plugin Name: BlossomThemes Toolkit
17
+ * Plugin URI: https://wordpress.org/plugins/blossomthemes-toolkit/
18
+ * Description: BlossomThemes Toolkit provides you necessary widgets for better and effective blogging.
19
+ * Version: 2.2.1
20
+ * Author: blossomthemes
21
+ * Author URI: https://blossomthemes.com/
22
+ * License: GPL-2.0+
23
+ * License URI: http://www.gnu.org/licenses/gpl-2.0.txt
24
+ * Text Domain: blossomthemes-toolkit
25
+ * Domain Path: /languages
26
+ */
27
+
28
+ // If this file is called directly, abort.
29
+ if ( ! defined( 'WPINC' ) ) {
30
+ die;
31
+ }
32
+
33
+ define( 'BTTK_PLUGIN_VERSION', '2.2.1' );
34
+ define( 'BTTK_BASE_PATH', dirname( __FILE__ ) );
35
+ define( 'BTTK_FILE_PATH', __FILE__ );
36
+ define( 'BTTK_FILE_URL', rtrim( plugin_dir_url( __FILE__ ), '/' ) );
37
+ add_image_size( 'post-slider-thumb-size', 330, 190, true );
38
+ add_image_size( 'post-category-slider-size', 330, 350, true );
39
+
40
+ /**
41
+ * The code that runs during plugin activation.
42
+ * This action is documented in includes/class-blossomthemes-toolkit-activator.php
43
+ */
44
+ function activate_blossomthemes_toolkit() {
45
+ require_once plugin_dir_path( __FILE__ ) . 'includes/class-blossomthemes-toolkit-activator.php';
46
+ Blossomthemes_Toolkit_Activator::activate();
47
+ }
48
+
49
+ /**
50
+ * The code that runs during plugin deactivation.
51
+ * This action is documented in includes/class-blossomthemes-toolkit-deactivator.php
52
+ */
53
+ function deactivate_blossomthemes_toolkit() {
54
+ require_once plugin_dir_path( __FILE__ ) . 'includes/class-blossomthemes-toolkit-deactivator.php';
55
+ Blossomthemes_Toolkit_Deactivator::deactivate();
56
+ }
57
+
58
+ register_activation_hook( __FILE__, 'activate_blossomthemes_toolkit' );
59
+ register_deactivation_hook( __FILE__, 'deactivate_blossomthemes_toolkit' );
60
+
61
+ /**
62
+ * The core plugin class that is used to define internationalization,
63
+ * admin-specific hooks, and public-facing site hooks.
64
+ */
65
+ require plugin_dir_path( __FILE__ ) . 'includes/class-blossomthemes-toolkit.php';
66
+
67
+ /**
68
+ * Begins execution of the plugin.
69
+ *
70
+ * Since everything within the plugin is registered via hooks,
71
+ * then kicking off the plugin from this point in the file does
72
+ * not affect the page life cycle.
73
+ *
74
+ * @since 1.0.0
75
+ */
76
+ function run_blossomthemes_toolkit() {
77
+
78
+ $plugin = new Blossomthemes_Toolkit();
79
+ $plugin->run();
80
+
81
+ }
82
+ run_blossomthemes_toolkit();
includes/class-blossomthemes-toolkit-activator.php CHANGED
@@ -1,36 +1,36 @@
1
- <?php
2
-
3
- /**
4
- * Fired during plugin activation
5
- *
6
- * @link http://wordpress.org/plugins/blossomthemes-toolkit/
7
- * @since 1.0.0
8
- *
9
- * @package Blossomthemes_Toolkit
10
- * @subpackage Blossomthemes_Toolkit/includes
11
- */
12
-
13
- /**
14
- * Fired during plugin activation.
15
- *
16
- * This class defines all code necessary to run during the plugin's activation.
17
- *
18
- * @since 1.0.0
19
- * @package Blossomthemes_Toolkit
20
- * @subpackage Blossomthemes_Toolkit/includes
21
- * @author blossomthemes <info@blossomthemes.com>
22
- */
23
- class Blossomthemes_Toolkit_Activator {
24
-
25
- /**
26
- * Short Description. (use period)
27
- *
28
- * Long Description.
29
- *
30
- * @since 1.0.0
31
- */
32
- public static function activate() {
33
- update_option( 'bttk_queue_flush_rewrite_rules', 'yes' );
34
- }
35
-
36
- }
1
+ <?php
2
+
3
+ /**
4
+ * Fired during plugin activation
5
+ *
6
+ * @link http://wordpress.org/plugins/blossomthemes-toolkit/
7
+ * @since 1.0.0
8
+ *
9
+ * @package Blossomthemes_Toolkit
10
+ * @subpackage Blossomthemes_Toolkit/includes
11
+ */
12
+
13
+ /**
14
+ * Fired during plugin activation.
15
+ *
16
+ * This class defines all code necessary to run during the plugin's activation.
17
+ *
18
+ * @since 1.0.0
19
+ * @package Blossomthemes_Toolkit
20
+ * @subpackage Blossomthemes_Toolkit/includes
21
+ * @author blossomthemes <info@blossomthemes.com>
22
+ */
23
+ class Blossomthemes_Toolkit_Activator {
24
+
25
+ /**
26
+ * Short Description. (use period)
27
+ *
28
+ * Long Description.
29
+ *
30
+ * @since 1.0.0
31
+ */
32
+ public static function activate() {
33
+ update_option( 'bttk_queue_flush_rewrite_rules', 'yes' );
34
+ }
35
+
36
+ }
includes/class-blossomthemes-toolkit-deactivator.php CHANGED
@@ -1,36 +1,36 @@
1
- <?php
2
-
3
- /**
4
- * Fired during plugin deactivation
5
- *
6
- * @link http://wordpress.org/plugins/blossomthemes-toolkit/
7
- * @since 1.0.0
8
- *
9
- * @package Blossomthemes_Toolkit
10
- * @subpackage Blossomthemes_Toolkit/includes
11
- */
12
-
13
- /**
14
- * Fired during plugin deactivation.
15
- *
16
- * This class defines all code necessary to run during the plugin's deactivation.
17
- *
18
- * @since 1.0.0
19
- * @package Blossomthemes_Toolkit
20
- * @subpackage Blossomthemes_Toolkit/includes
21
- * @author blossomthemes <info@blossomthemes.com>
22
- */
23
- class Blossomthemes_Toolkit_Deactivator {
24
-
25
- /**
26
- * Short Description. (use period)
27
- *
28
- * Long Description.
29
- *
30
- * @since 1.0.0
31
- */
32
- public static function deactivate() {
33
- update_option( 'bttk_queue_flush_rewrite_rules', 'yes' );
34
- }
35
-
36
- }
1
+ <?php
2
+
3
+ /**
4
+ * Fired during plugin deactivation
5
+ *
6
+ * @link http://wordpress.org/plugins/blossomthemes-toolkit/
7
+ * @since 1.0.0
8
+ *
9
+ * @package Blossomthemes_Toolkit
10
+ * @subpackage Blossomthemes_Toolkit/includes
11
+ */
12
+
13
+ /**
14
+ * Fired during plugin deactivation.
15
+ *
16
+ * This class defines all code necessary to run during the plugin's deactivation.
17
+ *
18
+ * @since 1.0.0
19
+ * @package Blossomthemes_Toolkit
20
+ * @subpackage Blossomthemes_Toolkit/includes
21
+ * @author blossomthemes <info@blossomthemes.com>
22
+ */
23
+ class Blossomthemes_Toolkit_Deactivator {
24
+
25
+ /**
26
+ * Short Description. (use period)
27
+ *
28
+ * Long Description.
29
+ *
30
+ * @since 1.0.0
31
+ */
32
+ public static function deactivate() {
33
+ update_option( 'bttk_queue_flush_rewrite_rules', 'yes' );
34
+ }
35
+
36
+ }
includes/widgets/widget-advertisement.php CHANGED
@@ -49,7 +49,7 @@ class Bttk_Advertisement_Widget extends WP_Widget {
49
  if ( !filter_var( $image, FILTER_VALIDATE_URL ) === false ) {
50
  $attachment_id = $obj->bttk_get_attachment_id( $image );
51
  }
52
- $icon_img_size = apply_filters( 'bttk_ad_img_size', 'thumbnail' );
53
  }else{
54
  $code = $code;
55
  }
@@ -67,7 +67,7 @@ class Bttk_Advertisement_Widget extends WP_Widget {
67
  <?php if( $image && $ad_option == 'photo' ){ ?>
68
  <div class="icon-holder">
69
  <?php
70
- $target = 'target="_blank"';
71
  if( isset( $instance['target'] ) && $instance['target'] !='' ){
72
  $target = 'target="_self"';
73
  }
@@ -164,7 +164,7 @@ class Bttk_Advertisement_Widget extends WP_Widget {
164
  }
165
  });
166
 
167
- $(".ad-option").change(function () {
168
  if( $(this).val() == "text" )
169
  {
170
  $(this).parent().next(".widget-upload").hide();
49
  if ( !filter_var( $image, FILTER_VALIDATE_URL ) === false ) {
50
  $attachment_id = $obj->bttk_get_attachment_id( $image );
51
  }
52
+ $icon_img_size = apply_filters( 'bttk_ad_img_size', 'full' );
53
  }else{
54
  $code = $code;
55
  }
67
  <?php if( $image && $ad_option == 'photo' ){ ?>
68
  <div class="icon-holder">
69
  <?php
70
+ $target = 'rel="noopener noexternal" target="_blank"';
71
  if( isset( $instance['target'] ) && $instance['target'] !='' ){
72
  $target = 'target="_self"';
73
  }
164
  }
165
  });
166
 
167
+ $(".ad-option").on("change",function () {
168
  if( $(this).val() == "text" )
169
  {
170
  $(this).parent().next(".widget-upload").hide();
includes/widgets/widget-author-bio.php CHANGED
@@ -152,11 +152,11 @@ class Bttk_Author_Bio extends WP_Widget {
152
 
153
 
154
  if( $attachment_id ){
155
- $author_bio_img_size = apply_filters('author_bio_img_size','medium');
156
  }
157
 
158
  if( $author_image_id ){
159
- $author_img_size = apply_filters('author_bio_img_size','medium');
160
  }
161
 
162
  echo $args['before_widget'];
@@ -188,7 +188,7 @@ class Bttk_Author_Bio extends WP_Widget {
188
  <?php }
189
  else{ echo '<div class="text-signature">'.esc_html( $signaturetext ).'</div>';}?>
190
  <?php if( $link && $label ){ ?>
191
- <a <?php if( isset( $instance['target'] ) && $instance['target']=='1' ){ echo "target=_blank"; } ?> href="<?php echo esc_url( $link ); ?>" class="readmore"><?php echo esc_html( $label );?></a>
192
  <?php } ?>
193
 
194
  <div class="author-bio-socicons">
@@ -216,7 +216,7 @@ class Bttk_Author_Bio extends WP_Widget {
216
  }
217
  ?>
218
  <li class="social-share-list">
219
- <a <?php if( isset( $instance['target'] ) && $instance['target'] == '1' ){ echo "target=_blank"; } ?> href="<?php echo esc_url( $instance['socicon'][$value] );?>">
220
  <i class="<?php echo esc_attr( $class );?>"></i>
221
  </a>
222
 
@@ -289,7 +289,7 @@ class Bttk_Author_Bio extends WP_Widget {
289
  }
290
  });
291
 
292
- $(".author-image").change(function () {
293
  if( $(this).val() == "gravatar" )
294
  {
295
  $(this).parent().next(".widget-upload").hide();
@@ -318,7 +318,7 @@ class Bttk_Author_Bio extends WP_Widget {
318
  }
319
  });
320
 
321
- $(".author-signature").change(function () {
322
  if( $(this).val() == "text" )
323
  {
324
  $(this).parent().next(".widget-upload").hide();
@@ -358,7 +358,7 @@ class Bttk_Author_Bio extends WP_Widget {
358
  <label for="<?php echo esc_attr( $this->get_field_id( 'email' ) ); ?>"><?php esc_html_e( 'Author Email', 'blossomthemes-toolkit' ); ?></label>
359
  <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'email' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'email' ) ); ?>" type="text" value="<?php echo esc_attr( $email ); ?>" />
360
  </p>
361
- <div class="widget-side-note" class="example-text"><?php $link1 = '<a href="http://en.gravatar.com/" target="_blank">Gravatar</a>'; echo sprintf( __( 'You can show your %1$s image instead of manually uploading your photo. Just add your gravatar registered email address here.','blossomthemes-toolkit'), $link1 );?></div>
362
 
363
  <p>
364
  <label for="<?php echo esc_attr( $this->get_field_id( 'content' ) ); ?>"><?php esc_html_e( 'Description', 'blossomthemes-toolkit' ); ?></label>
152
 
153
 
154
  if( $attachment_id ){
155
+ $author_bio_img_size = apply_filters('author_bio_img_size','full');
156
  }
157
 
158
  if( $author_image_id ){
159
+ $author_img_size = apply_filters('author_bio_img_size','full');
160
  }
161
 
162
  echo $args['before_widget'];
188
  <?php }
189
  else{ echo '<div class="text-signature">'.esc_html( $signaturetext ).'</div>';}?>
190
  <?php if( $link && $label ){ ?>
191
+ <a <?php if( isset( $instance['target'] ) && $instance['target']=='1' ){ echo "rel=noopener target=_blank"; } ?> href="<?php echo esc_url( $link ); ?>" class="readmore"><?php echo esc_html( $label );?></a>
192
  <?php } ?>
193
 
194
  <div class="author-bio-socicons">
216
  }
217
  ?>
218
  <li class="social-share-list">
219
+ <a <?php if( isset( $instance['target'] ) && $instance['target'] == '1' ){ echo "rel=noopener target=_blank"; } ?> href="<?php echo esc_url( $instance['socicon'][$value] );?>">
220
  <i class="<?php echo esc_attr( $class );?>"></i>
221
  </a>
222
 
289
  }
290
  });
291
 
292
+ $(".author-image").on("change", function () {
293
  if( $(this).val() == "gravatar" )
294
  {
295
  $(this).parent().next(".widget-upload").hide();
318
  }
319
  });
320
 
321
+ $(".author-signature").on("change",function () {
322
  if( $(this).val() == "text" )
323
  {
324
  $(this).parent().next(".widget-upload").hide();
358
  <label for="<?php echo esc_attr( $this->get_field_id( 'email' ) ); ?>"><?php esc_html_e( 'Author Email', 'blossomthemes-toolkit' ); ?></label>
359
  <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'email' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'email' ) ); ?>" type="text" value="<?php echo esc_attr( $email ); ?>" />
360
  </p>
361
+ <div class="widget-side-note" class="example-text"><?php $link1 = '<a href="http://en.gravatar.com/" rel="noopener noexternal" target="_blank">Gravatar</a>'; echo sprintf( __( 'You can show your %1$s image instead of manually uploading your photo. Just add your gravatar registered email address here.','blossomthemes-toolkit'), $link1 );?></div>
362
 
363
  <p>
364
  <label for="<?php echo esc_attr( $this->get_field_id( 'content' ) ); ?>"><?php esc_html_e( 'Description', 'blossomthemes-toolkit' ); ?></label>
includes/widgets/widget-client-logo.php CHANGED
@@ -1,212 +1,212 @@
1
- <?php
2
- /**
3
- * Icon Text Widget
4
- *
5
- * @package Rttk_Pro
6
- */
7
-
8
- // register Blossom_Client_Logo_Widget widget
9
- function blossom_register_client_logo_widget(){
10
- register_widget( 'Blossom_Client_Logo_Widget' );
11
- }
12
- add_action('widgets_init', 'blossom_register_client_logo_widget');
13
-
14
- /**
15
- * Adds Blossom_Client_Logo_Widget widget.
16
- */
17
- class Blossom_Client_Logo_Widget extends WP_Widget {
18
-
19
- /**
20
- * Register widget with WordPress.
21
- */
22
- public function __construct() {
23
- parent::__construct(
24
- 'blossom_client_logo_widget', // Base ID
25
- __( 'Blossom: Client Logo Widget', 'blossomthemes-toolkit' ), // Name
26
- array( 'description' => __( 'A Client Logo Widget.', 'blossomthemes-toolkit' ), ) // Args
27
- );
28
- }
29
-
30
- /**
31
- * Front-end display of widget.
32
- *
33
- * @see WP_Widget::widget()
34
- *
35
- * @param array $args Widget arguments.
36
- * @param array $instance Saved values from database.
37
- */
38
- public function widget( $args, $instance ) {
39
-
40
- $obj = new BlossomThemes_Toolkit_Functions();
41
-
42
- $title = ! empty( $instance['title'] ) ? $instance['title'] : '' ;
43
- $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
44
- $link = ! empty( $instance['link'] ) ? $instance['link'] : '';
45
- $display_bw = ! empty( $instance['display_bw'] ) ? $instance['display_bw'] : '' ;
46
- $target = ! empty( $instance['target'] ) ? $instance['target'] : '';
47
-
48
- $class = '';
49
- if( isset( $display_bw ) && $display_bw != '' ){
50
- $class = "black-white";
51
- }
52
-
53
- $target = 'target="_blank"';
54
- if( isset( $instance['target'] ) && $instance['target'] != '' ){
55
- $target = 'target="_self"';
56
- }
57
-
58
- echo $args['before_widget'];
59
- ob_start();
60
- ?>
61
- <div class="blossom-iw-holder">
62
- <div class="blossom-iw-inner-holder">
63
- <?php
64
- if( $title ) echo $args['before_title'] . apply_filters( 'widget_title', $title, $instance, $this->id_base ) . $args['after_title'];
65
-
66
- if( isset( $image ) && $image !='' ){
67
-
68
- echo '<div class="blossom-inner-wrap">';
69
- foreach ( $instance['image'] as $key => $value ) {
70
- if( isset( $instance['image'][$key] ) && $instance['image'][$key] !='' )
71
- {
72
- $image_id = $instance['image'][$key];
73
-
74
- if ( !filter_var( $instance['image'][$key], FILTER_VALIDATE_URL ) === false ) {
75
- $image_id = $obj->bttk_get_attachment_id( $instance['image'][$key] );
76
- }
77
- // retrieve the thumbnail size of our image
78
- $cl_img_size = apply_filters('bttk_cl_img_size','post-slider-thumb-size');
79
- ?>
80
- <div class="image-holder <?php echo esc_attr( $class ); ?>">
81
- <?php
82
- if( isset( $instance['link'][$key] ) && $instance['link'][$key]!='' )
83
- { ?>
84
- <a href="<?php echo esc_url( $instance['link'][$key] );?>" <?php echo $target;?>>
85
- <?php
86
- }
87
-
88
- echo wp_get_attachment_image( $image_id, $cl_img_size, false,
89
- array( 'alt' => esc_attr( $title )));
90
-
91
- if( isset( $instance['link'][$key] ) && $instance['link'][$key]!='' ){ echo '</a>'; }
92
- ?>
93
- </div>
94
- <?php
95
- }
96
- }
97
- echo '</div>';
98
- }
99
- ?>
100
- </div>
101
- </div>
102
- <?php
103
- $html = ob_get_clean();
104
- echo apply_filters( 'blossom_companion_iw', $html, $args, $title, $image, $link );
105
- echo $args['after_widget'];
106
- }
107
-
108
- /**
109
- * Back-end widget form.
110
- *
111
- * @see WP_Widget::form()
112
- *
113
- * @param array $instance Previously saved values from database.
114
- */
115
- public function form( $instance ) {
116
- $obj = new BlossomThemes_Toolkit_Functions();
117
- $title = ! empty( $instance['title'] ) ? $instance['title'] : '' ;
118
- $display_bw = ! empty( $instance['display_bw'] ) ? $instance['display_bw'] : '' ;
119
- $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
120
- $target = ! empty( $instance['target'] ) ? $instance['target'] : '';
121
- $link = ! empty( $instance['link'] ) ? $instance['link'] : '';
122
- ?>
123
- <script type='text/javascript'>
124
- jQuery(document).ready(function($) {
125
- $('.widget-client-logo-repeater').sortable({
126
- cursor: 'move',
127
- update: function (event, ui) {
128
- $('.widget-client-logo-repeater .link-image-repeat input').trigger('change');
129
- }
130
- });
131
- $('.check-btn-wrap').on('click', function( event ){
132
- $(this).trigger('change');
133
- });
134
- });
135
- </script>
136
- <p>
137
- <label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>"><?php esc_html_e( 'Title', 'blossomthemes-toolkit' ); ?></label>
138
- <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
139
- </p>
140
-
141
- <p>
142
- <label for="<?php echo esc_attr( $this->get_field_id( 'display_bw' ) ); ?>" class="check-btn-wrap">
143
- <input id="<?php echo esc_attr( $this->get_field_id( 'display_bw' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'display_bw' ) ); ?>" type="checkbox" value="1" <?php checked( '1', $display_bw ); ?>/>
144
- <?php esc_html_e( 'Display logo in black and white', 'blossomthemes-toolkit' ); ?>
145
- </label>
146
- </p>
147
-
148
- <p>
149
- <label for="<?php echo esc_attr( $this->get_field_id( 'target' ) ); ?>">
150
- <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'target' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'target' ) ); ?>" type="checkbox" value="1" <?php echo checked($target,1);?> /><?php esc_html_e( 'Open in Same Tab', 'blossomthemes-toolkit' ); ?> </label>
151
- </p>
152
-
153
- <div class="widget-client-logo-repeater" id="<?php echo esc_attr( $this->get_field_id( 'blossomcompanion-logo-repeater' ) ); ?>">
154
- <?php
155
- if( isset( $image ) && $image !='' ){
156
- foreach ( $instance['image'] as $key => $value ) { ?>
157
- <div class="link-image-repeat"><span class="cross"><a href="javascript:void(0);"><i class="fa fa-times"></i></a></span>
158
-
159
- <?php $obj->bttk_get_image_field( $this->get_field_id( 'image['.$key.']' ), $this->get_field_name( 'image['.$key.']' ), $instance['image'][$key], __( 'Upload Image', 'blossomthemes-toolkit' ) ); ?>
160
-
161
- <div class="widget-feat-link">
162
- <label for="<?php echo esc_attr( $this->get_field_id( 'link['.$key.']' ) ); ?>"><?php esc_html_e( 'Featured Link', 'blossomthemes-toolkit' ); ?></label>
163
- <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'link['.$key.']' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'link['.$key.']' ) ); ?>" type="text" value="<?php echo esc_url( $instance['link'][$key] ); ?>" />
164
- </div>
165
-
166
- </div>
167
- <?php
168
- }
169
- }
170
- ?>
171
- <span class="cl-repeater-holder"></span>
172
- </div>
173
-
174
- <button class="add-logo button"><?php _e('Add Another Logo','blossomthemes-toolkit');?></button>
175
- <?php
176
- }
177
-
178
- /**
179
- * Sanitize widget form values as they are saved.
180
- *
181
- * @see WP_Widget::update()
182
- *
183
- * @param array $new_instance Values just sent to be saved.
184
- * @param array $old_instance Previously saved values from database.
185
- *
186
- * @return array Updated safe values to be saved.
187
- */
188
- public function update( $new_instance, $old_instance ) {
189
- $instance = array();
190
- $instance['title'] = ! empty( $new_instance['title'] ) ? sanitize_text_field( $new_instance['title'] ) : '' ;
191
- $instance['display_bw'] = ! empty( $new_instance['display_bw'] ) ? esc_attr( $new_instance['display_bw'] ) : '' ;
192
- $instance['target'] = ! empty( $new_instance['target'] ) ? esc_attr( $new_instance['target'] ) : '';
193
-
194
- if(isset($new_instance['image'])) {
195
- if( count( array_filter( $new_instance['image'] ) ) != 0 ) {
196
- foreach ( $new_instance['image'] as $key => $value ) {
197
- $instance['image'][$key] = $value;
198
- }
199
- }
200
- }
201
-
202
- if(isset($new_instance['link'])){
203
- if( count( array_filter( $new_instance['link'] ) ) != 0 ){
204
- foreach ( $new_instance['link'] as $key => $value ) {
205
- $instance['link'][$key] = $value;
206
- }
207
- }
208
- }
209
-
210
- return $instance;
211
- }
212
  } // class Blossom_Client_Logo_Widget
1
+ <?php
2
+ /**
3
+ * Icon Text Widget
4
+ *
5
+ * @package Rttk_Pro
6
+ */
7
+
8
+ // register Blossom_Client_Logo_Widget widget
9
+ function blossom_register_client_logo_widget(){
10
+ register_widget( 'Blossom_Client_Logo_Widget' );
11
+ }
12
+ add_action('widgets_init', 'blossom_register_client_logo_widget');
13
+
14
+ /**
15
+ * Adds Blossom_Client_Logo_Widget widget.
16
+ */
17
+ class Blossom_Client_Logo_Widget extends WP_Widget {
18
+
19
+ /**
20
+ * Register widget with WordPress.
21
+ */
22
+ public function __construct() {
23
+ parent::__construct(
24
+ 'blossom_client_logo_widget', // Base ID
25
+ __( 'Blossom: Client Logo Widget', 'blossomthemes-toolkit' ), // Name
26
+ array( 'description' => __( 'A Client Logo Widget.', 'blossomthemes-toolkit' ), ) // Args
27
+ );
28
+ }
29
+
30
+ /**
31
+ * Front-end display of widget.
32
+ *
33
+ * @see WP_Widget::widget()
34
+ *
35
+ * @param array $args Widget arguments.
36
+ * @param array $instance Saved values from database.
37
+ */
38
+ public function widget( $args, $instance ) {
39
+
40
+ $obj = new BlossomThemes_Toolkit_Functions();
41
+
42
+ $title = ! empty( $instance['title'] ) ? $instance['title'] : '' ;
43
+ $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
44
+ $link = ! empty( $instance['link'] ) ? $instance['link'] : '';
45
+ $display_bw = ! empty( $instance['display_bw'] ) ? $instance['display_bw'] : '' ;
46
+ $target = ! empty( $instance['target'] ) ? $instance['target'] : '';
47
+
48
+ $class = '';
49
+ if( isset( $display_bw ) && $display_bw != '' ){
50
+ $class = "black-white";
51
+ }
52
+
53
+ $target = 'rel="noopener noexternal" target="_blank"';
54
+ if( isset( $instance['target'] ) && $instance['target'] != '' ){
55
+ $target = 'target="_self"';
56
+ }
57
+
58
+ echo $args['before_widget'];
59
+ ob_start();
60
+ ?>
61
+ <div class="blossom-iw-holder">
62
+ <div class="blossom-iw-inner-holder">
63
+ <?php
64
+ if( $title ) echo $args['before_title'] . apply_filters( 'widget_title', $title, $instance, $this->id_base ) . $args['after_title'];
65
+
66
+ if( isset( $image ) && $image !='' ){
67
+
68
+ echo '<div class="blossom-inner-wrap">';
69
+ foreach ( $instance['image'] as $key => $value ) {
70
+ if( isset( $instance['image'][$key] ) && $instance['image'][$key] !='' )
71
+ {
72
+ $image_id = $instance['image'][$key];
73
+
74
+ if ( !filter_var( $instance['image'][$key], FILTER_VALIDATE_URL ) === false ) {
75
+ $image_id = $obj->bttk_get_attachment_id( $instance['image'][$key] );
76
+ }
77
+ // retrieve the thumbnail size of our image
78
+ $cl_img_size = apply_filters('bttk_cl_img_size','full');
79
+ ?>
80
+ <div class="image-holder <?php echo esc_attr( $class ); ?>">
81
+ <?php
82
+ if( isset( $instance['link'][$key] ) && $instance['link'][$key]!='' )
83
+ { ?>
84
+ <a href="<?php echo esc_url( $instance['link'][$key] );?>" <?php echo $target;?>>
85
+ <?php
86
+ }
87
+
88
+ echo wp_get_attachment_image( $image_id, $cl_img_size, false,
89
+ array( 'alt' => esc_attr( $title )));
90
+
91
+ if( isset( $instance['link'][$key] ) && $instance['link'][$key]!='' ){ echo '</a>'; }
92
+ ?>
93
+ </div>
94
+ <?php
95
+ }
96
+ }
97
+ echo '</div>';
98
+ }
99
+ ?>
100
+ </div>
101
+ </div>
102
+ <?php
103
+ $html = ob_get_clean();
104
+ echo apply_filters( 'blossom_companion_iw', $html, $args, $title, $image, $link );
105
+ echo $args['after_widget'];
106
+ }
107
+
108
+ /**
109
+ * Back-end widget form.
110
+ *
111
+ * @see WP_Widget::form()
112
+ *
113
+ * @param array $instance Previously saved values from database.
114
+ */
115
+ public function form( $instance ) {
116
+ $obj = new BlossomThemes_Toolkit_Functions();
117
+ $title = ! empty( $instance['title'] ) ? $instance['title'] : '' ;
118
+ $display_bw = ! empty( $instance['display_bw'] ) ? $instance['display_bw'] : '' ;
119
+ $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
120
+ $target = ! empty( $instance['target'] ) ? $instance['target'] : '';
121
+ $link = ! empty( $instance['link'] ) ? $instance['link'] : '';
122
+ ?>
123
+ <script type='text/javascript'>
124
+ jQuery(document).ready(function($) {
125
+ $('.widget-client-logo-repeater').sortable({
126
+ cursor: 'move',
127
+ update: function (event, ui) {
128
+ $('.widget-client-logo-repeater .link-image-repeat input').trigger('change');
129
+ }
130
+ });
131
+ $('.check-btn-wrap').on('click', function( event ){
132
+ $(this).trigger('change');
133
+ });
134
+ });
135
+ </script>
136
+ <p>
137
+ <label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>"><?php esc_html_e( 'Title', 'blossomthemes-toolkit' ); ?></label>
138
+ <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
139
+ </p>
140
+
141
+ <p>
142
+ <label for="<?php echo esc_attr( $this->get_field_id( 'display_bw' ) ); ?>" class="check-btn-wrap">
143
+ <input id="<?php echo esc_attr( $this->get_field_id( 'display_bw' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'display_bw' ) ); ?>" type="checkbox" value="1" <?php checked( '1', $display_bw ); ?>/>
144
+ <?php esc_html_e( 'Display logo in black and white', 'blossomthemes-toolkit' ); ?>
145
+ </label>
146
+ </p>
147
+
148
+ <p>
149
+ <label for="<?php echo esc_attr( $this->get_field_id( 'target' ) ); ?>">
150
+ <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'target' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'target' ) ); ?>" type="checkbox" value="1" <?php echo checked($target,1);?> /><?php esc_html_e( 'Open in Same Tab', 'blossomthemes-toolkit' ); ?> </label>
151
+ </p>
152
+
153
+ <div class="widget-client-logo-repeater" id="<?php echo esc_attr( $this->get_field_id( 'blossomcompanion-logo-repeater' ) ); ?>">
154
+ <?php
155
+ if( isset( $image ) && $image !='' ){
156
+ foreach ( $instance['image'] as $key => $value ) { ?>
157
+ <div class="link-image-repeat"><span class="cross"><a href="javascript:void(0);"><i class="fa fa-times"></i></a></span>
158
+
159
+ <?php $obj->bttk_get_image_field( $this->get_field_id( 'image['.$key.']' ), $this->get_field_name( 'image['.$key.']' ), $instance['image'][$key], __( 'Upload Image', 'blossomthemes-toolkit' ) ); ?>
160
+
161
+ <div class="widget-feat-link">
162
+ <label for="<?php echo esc_attr( $this->get_field_id( 'link['.$key.']' ) ); ?>"><?php esc_html_e( 'Featured Link', 'blossomthemes-toolkit' ); ?></label>
163
+ <input class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'link['.$key.']' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'link['.$key.']' ) ); ?>" type="text" value="<?php echo esc_url( $instance['link'][$key] ); ?>" />
164
+ </div>
165
+
166
+ </div>
167
+ <?php
168
+ }
169
+ }
170
+ ?>
171
+ <span class="cl-repeater-holder"></span>
172
+ </div>
173
+
174
+ <button class="add-logo button"><?php _e('Add Another Logo','blossomthemes-toolkit');?></button>
175
+ <?php
176
+ }
177
+
178
+ /**
179
+ * Sanitize widget form values as they are saved.
180
+ *
181
+ * @see WP_Widget::update()
182
+ *
183
+ * @param array $new_instance Values just sent to be saved.
184
+ * @param array $old_instance Previously saved values from database.
185
+ *
186
+ * @return array Updated safe values to be saved.
187
+ */
188
+ public function update( $new_instance, $old_instance ) {
189
+ $instance = array();
190
+ $instance['title'] = ! empty( $new_instance['title'] ) ? sanitize_text_field( $new_instance['title'] ) : '' ;
191
+ $instance['display_bw'] = ! empty( $new_instance['display_bw'] ) ? esc_attr( $new_instance['display_bw'] ) : '' ;
192
+ $instance['target'] = ! empty( $new_instance['target'] ) ? esc_attr( $new_instance['target'] ) : '';
193
+
194
+ if(isset($new_instance['image'])) {
195
+ if( count( array_filter( $new_instance['image'] ) ) != 0 ) {
196
+ foreach ( $new_instance['image'] as $key => $value ) {
197
+ $instance['image'][$key] = $value;
198
+ }
199
+ }
200
+ }
201
+
202
+ if(isset($new_instance['link'])){
203
+ if( count( array_filter( $new_instance['link'] ) ) != 0 ){
204
+ foreach ( $new_instance['link'] as $key => $value ) {
205
+ $instance['link'][$key] = $value;
206
+ }
207
+ }
208
+ }
209
+
210
+ return $instance;
211
+ }
212
  } // class Blossom_Client_Logo_Widget
includes/widgets/widget-contact.php CHANGED
@@ -140,7 +140,7 @@ class Bttk_Contact_Social_Links extends WP_Widget {
140
  }
141
  ?>
142
  <li class="bttk-contact-social-icon-wrap">
143
- <a <?php if( isset( $instance['target'] ) && $instance['target'] == '1' ){ echo "target=_blank"; } ?> href="<?php echo esc_url( $instance['social'][$value] );?>">
144
  <span class="bttk-contact-social-links-field-handle"><i class="<?php echo esc_attr( $class );?>"></i></span>
145
  </a>
146
  </li>
140
  }
141
  ?>
142
  <li class="bttk-contact-social-icon-wrap">
143
+ <a <?php if( isset( $instance['target'] ) && $instance['target'] == '1' ){ echo "rel=noopener target=_blank"; } ?> href="<?php echo esc_url( $instance['social'][$value] );?>">
144
  <span class="bttk-contact-social-links-field-handle"><i class="<?php echo esc_attr( $class );?>"></i></span>
145
  </a>
146
  </li>
includes/widgets/widget-cta.php CHANGED
@@ -77,7 +77,7 @@ class BlossomThemes_Toolkit_Cta extends WP_Widget {
77
 
78
  $target = 'target="_self"';
79
  if( isset($instance['target']) && $instance['target']!='' ){
80
- $target = 'target="_blank"';
81
  }
82
 
83
  echo $args['before_widget'];
@@ -257,7 +257,7 @@ class BlossomThemes_Toolkit_Cta extends WP_Widget {
257
  echo
258
  '<script>
259
  jQuery(document).ready(function($){
260
- $(".cta-button-number").change(function() {
261
  if( $(this).val()== 2 )
262
  {
263
  $(this).parent().siblings(".button-one-info, .button-two-info").show();
77
 
78
  $target = 'target="_self"';
79
  if( isset($instance['target']) && $instance['target']!='' ){
80
+ $target = 'rel="noopener noexternal" target="_blank"';
81
  }
82
 
83
  echo $args['before_widget'];
257
  echo
258
  '<script>
259
  jQuery(document).ready(function($){
260
+ $(".cta-button-number").on("change",function() {
261
  if( $(this).val()== 2 )
262
  {
263
  $(this).parent().siblings(".button-one-info, .button-two-info").show();
includes/widgets/widget-custom-categories.php CHANGED
@@ -33,7 +33,7 @@ class Bttk_Custom_Categories extends WP_Widget {
33
 
34
  $target = 'target="_self"';
35
  if( isset( $instance['target'] ) && $instance['target'] !='' ){
36
- $target = 'target="_blank"';
37
  }
38
 
39
  if( $title ) echo $args['before_title'] . apply_filters( 'widget_title', $title, $instance, $this->id_base ) . $args['after_title'];
33
 
34
  $target = 'target="_self"';
35
  if( isset( $instance['target'] ) && $instance['target'] !='' ){
36
+ $target = 'rel="noopener noexternal" target="_blank"';
37
  }
38
 
39
  if( $title ) echo $args['before_title'] . apply_filters( 'widget_title', $title, $instance, $this->id_base ) . $args['after_title'];
includes/widgets/widget-featured-page.php CHANGED
@@ -55,7 +55,7 @@ class BlossomTheme_Featured_Page_Widget extends WP_Widget {
55
 
56
  $post_no = get_post($page_list);
57
 
58
- $target = 'target="_blank"';
59
  if( isset($instance['target']) && $instance['target']!='' )
60
  {
61
  $target = 'target="_self"';
@@ -85,7 +85,7 @@ class BlossomTheme_Featured_Page_Widget extends WP_Widget {
85
  <div class="featured_page_content">
86
  <?php
87
  if( isset( $show_page_content ) && $show_page_content != '' ){
88
- echo apply_filters( 'the_content', $post_no->post_content );
89
  }else{
90
  echo apply_filters( 'the_excerpt', get_the_excerpt( $post_no ) );
91
  }
55
 
56
  $post_no = get_post($page_list);
57
 
58
+ $target = 'rel="noopener noexternal" target="_blank"';
59
  if( isset($instance['target']) && $instance['target']!='' )
60
  {
61
  $target = 'target="_self"';
85
  <div class="featured_page_content">
86
  <?php
87
  if( isset( $show_page_content ) && $show_page_content != '' ){
88
+ echo do_shortcode( $post_no->post_content );
89
  }else{
90
  echo apply_filters( 'the_excerpt', get_the_excerpt( $post_no ) );
91
  }
includes/widgets/widget-icon-text.php CHANGED
@@ -44,7 +44,7 @@ class BlossomThemes_Toolkit_Icon_Text_Widget extends WP_Widget {
44
  $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
45
  $link = ! empty( $instance['link'] ) ? $instance['link'] : '';
46
  $more_text = ! empty( $instance['more_text'] ) ? $instance['more_text'] : '';
47
- $target = 'target="_blank"';
48
  if( isset($instance['target']) && $instance['target']!='' ){
49
  $target = 'target="_self"';
50
  }
44
  $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
45
  $link = ! empty( $instance['link'] ) ? $instance['link'] : '';
46
  $more_text = ! empty( $instance['more_text'] ) ? $instance['more_text'] : '';
47
+ $target = 'rel="noopener noexternal" target="_blank"';
48
  if( isset($instance['target']) && $instance['target']!='' ){
49
  $target = 'target="_self"';
50
  }
includes/widgets/widget-image-text.php CHANGED
@@ -74,7 +74,7 @@ class Bttk_Image_Text_Widget extends WP_Widget {
74
  $it_img_size = apply_filters( 'bttk_it_img_size', 'post-slider-thumb-size' );
75
  $title = ! empty( $instance['title'] ) ? $instance['title'] : '' ;
76
 
77
- $target = 'target="_blank"';
78
  if( isset( $instance['target'] ) && $instance['target']!='' ){
79
  $target = 'target="_self"';
80
  }
74
  $it_img_size = apply_filters( 'bttk_it_img_size', 'post-slider-thumb-size' );
75
  $title = ! empty( $instance['title'] ) ? $instance['title'] : '' ;
76
 
77
+ $target = 'rel="noopener noexternal" target="_blank"';
78
  if( isset( $instance['target'] ) && $instance['target']!='' ){
79
  $target = 'target="_self"';
80
  }
includes/widgets/widget-popular-post.php CHANGED
@@ -122,7 +122,7 @@ class Bttk_Popular_Post extends WP_Widget {
122
  $target = 'target="_self"';
123
  if( isset($instance['target']) && $instance['target']!='' )
124
  {
125
- $target = 'target="_blank"';
126
  }
127
  ?>
128
  <ul class="<?php echo esc_attr( $style );?>">
122
  $target = 'target="_self"';
123
  if( isset($instance['target']) && $instance['target']!='' )
124
  {
125
+ $target = 'rel="noopener noexternal" target="_blank"';
126
  }
127
  ?>
128
  <ul class="<?php echo esc_attr( $style );?>">
includes/widgets/widget-posts-category-slider.php CHANGED
@@ -37,7 +37,7 @@ class bttk_posts_category_slider_widget extends WP_Widget {
37
  $target = ' target="_self"';
38
 
39
  if( isset($instance['target']) && $instance['target']!='' ){
40
- $target = ' target="_blank"';
41
  }
42
  // before and after widget arguments are defined by themes
43
  echo $args['before_widget'];
@@ -73,7 +73,7 @@ class bttk_posts_category_slider_widget extends WP_Widget {
73
  echo '<div id="sync1-'. esc_attr( absint( $ran ) ) . '" class="owl-carousel owl-theme">';
74
  $catquery = new WP_Query( 'cat='.$category.'&posts_per_page='.$slides );
75
  while( $catquery->have_posts() ) : $catquery->the_post();
76
- $category_img_size = apply_filters( 'bttk_category_img_size', 'post-slider-thumb-size' ); ?>
77
  <div class="item">
78
  <a href="<?php the_permalink();?>" class="post-thumbnail"<?php echo $target;?>>
79
  <?php
37
  $target = ' target="_self"';
38
 
39
  if( isset($instance['target']) && $instance['target']!='' ){
40
+ $target = ' rel="noopener noexternal" target="_blank"';
41
  }
42
  // before and after widget arguments are defined by themes
43
  echo $args['before_widget'];
73
  echo '<div id="sync1-'. esc_attr( absint( $ran ) ) . '" class="owl-carousel owl-theme">';
74
  $catquery = new WP_Query( 'cat='.$category.'&posts_per_page='.$slides );
75
  while( $catquery->have_posts() ) : $catquery->the_post();
76
+ $category_img_size = apply_filters( 'bttk_category_img_size', 'post-category-slider-size' ); ?>
77
  <div class="item">
78
  <a href="<?php the_permalink();?>" class="post-thumbnail"<?php echo $target;?>>
79
  <?php
includes/widgets/widget-recent-post.php CHANGED
@@ -46,7 +46,7 @@ class Bttk_Recent_Post extends WP_Widget {
46
 
47
  $target = 'target="_self"';
48
  if( isset($instance['target']) && $instance['target']!='' ){
49
- $target = 'target="_blank"';
50
  }
51
 
52
  $obj = new BlossomThemes_Toolkit_Functions;
46
 
47
  $target = 'target="_self"';
48
  if( isset($instance['target']) && $instance['target']!='' ){
49
+ $target = 'rel="noopener noexternal" target="_blank"';
50
  }
51
 
52
  $obj = new BlossomThemes_Toolkit_Functions;
includes/widgets/widget-snapchat.php CHANGED
@@ -102,7 +102,7 @@ class bttk_snapcode_widget extends WP_Widget {
102
  <input type="text" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php if (isset($instance['title'])) echo esc_attr($instance['title']); ?>" class="widefat" />
103
  </p>
104
 
105
- <p><?php _e('Step 1. Download your Snapcode PNG image from','blossomthemes-toolkit');?> <a href="https://accounts.snapchat.com/accounts/snapcodes?type=png" target="_blank"><?php _e('this link','blossomthemes-toolkit');?></a>.</p>
106
  <p><?php _e('Step 2. Upload your Snapcode PNG image using the button below.','blossomthemes-toolkit');?></p>
107
 
108
  <p>
102
  <input type="text" id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" value="<?php if (isset($instance['title'])) echo esc_attr($instance['title']); ?>" class="widefat" />
103
  </p>
104
 
105
+ <p><?php _e('Step 1. Download your Snapcode PNG image from','blossomthemes-toolkit');?> <a href="https://accounts.snapchat.com/accounts/snapcodes?type=png" rel="nofollow" target="_blank"><?php _e('this link','blossomthemes-toolkit');?></a>.</p>
106
  <p><?php _e('Step 2. Upload your Snapcode PNG image using the button below.','blossomthemes-toolkit');?></p>
107
 
108
  <p>
includes/widgets/widget-socialmedia.php CHANGED
@@ -114,7 +114,7 @@ class Bttk_Social_Links extends WP_Widget {
114
  }
115
  ?>
116
  <li class="bttk-social-icon-wrap">
117
- <a title="<?php echo esc_attr( $instance['social'][$value] );?>" <?php if( isset( $instance['target'] ) && $instance['target']=='1' ){ echo "target=_blank"; } ?> href="<?php echo esc_url( $instance['social'][$value] );?>">
118
  <span class="bttk-social-links-field-handle"><i class="<?php echo esc_attr( $class );?>"></i></span>
119
  </a>
120
  </li>
114
  }
115
  ?>
116
  <li class="bttk-social-icon-wrap">
117
+ <a title="<?php echo esc_attr( $instance['social'][$value] );?>" <?php if( isset( $instance['target'] ) && $instance['target']=='1' ){ echo "rel=noopener target=_blank"; } ?> href="<?php echo esc_url( $instance['social'][$value] );?>">
118
  <span class="bttk-social-links-field-handle"><i class="<?php echo esc_attr( $class );?>"></i></span>
119
  </a>
120
  </li>
includes/widgets/widget-team-member.php CHANGED
@@ -50,7 +50,7 @@ class BlossomThemes_Toolkit_Team_Member_Widget extends WP_Widget {
50
  $behance = ! empty( $instance['behance'] ) ? $instance['behance'] : '';
51
  $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
52
 
53
- $target = 'target="_blank"';
54
  if( isset($instance['target']) && $instance['target']!='' ){
55
  $target = 'target="_self"';
56
  }
@@ -136,12 +136,12 @@ class BlossomThemes_Toolkit_Team_Member_Widget extends WP_Widget {
136
  </style>
137
  <script>
138
  jQuery(document).ready(function($) {
139
- $('.bttk-team-holder').click(function(){
140
  $(this).siblings('.bttk-team-holder-modal').addClass('show');
141
  $(this).siblings('.bttk-team-holder-modal').css('display', 'block');
142
  });
143
 
144
- $('.close_popup').click(function(){
145
  $(this).parent('.bttk-team-holder-modal').removeClass('show');
146
  $(this).parent().css('display', 'none');
147
  });
50
  $behance = ! empty( $instance['behance'] ) ? $instance['behance'] : '';
51
  $image = ! empty( $instance['image'] ) ? $instance['image'] : '';
52
 
53
+ $target = 'rel="noopener noexternal" target="_blank"';
54
  if( isset($instance['target']) && $instance['target']!='' ){
55
  $target = 'target="_self"';
56
  }
136
  </style>
137
  <script>
138
  jQuery(document).ready(function($) {
139
+ $('.bttk-team-holder').on('click', function(){
140
  $(this).siblings('.bttk-team-holder-modal').addClass('show');
141
  $(this).siblings('.bttk-team-holder-modal').css('display', 'block');
142
  });
143
 
144
+ $('.close_popup').on('click',function(){
145
  $(this).parent('.bttk-team-holder-modal').removeClass('show');
146
  $(this).parent().css('display', 'none');
147
  });
languages/blossomthemes-toolkit.pot CHANGED
@@ -1,14 +1,14 @@
1
- # Copyright (C) 2020 blossomthemes
2
  # This file is distributed under the GPL-2.0+.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: BlossomThemes Toolkit 2.2.0\n"
6
  "Report-Msgid-Bugs-To: \n"
7
- "POT-Creation-Date: 2020-12-31 12:06:52+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "PO-Revision-Date: 2020-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: WP Travel Engine\n"
13
  "Language-Team: \n"
14
  "X-Poedit-KeywordsList: "
@@ -19,54 +19,54 @@ msgstr ""
19
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20
  "X-Generator: grunt-wp-i18n 1.0.3\n"
21
 
22
- #: admin/class-blossomthemes-toolkit-admin.php:112
23
  #: includes/class-blossomthemes-toolkit-functions.php:124
24
  msgid "Upload"
25
  msgstr ""
26
 
27
- #: admin/class-blossomthemes-toolkit-admin.php:113
28
  #: includes/class-blossomthemes-toolkit-functions.php:126
29
  msgid "Change"
30
  msgstr ""
31
 
32
- #: admin/class-blossomthemes-toolkit-admin.php:114
33
  #: includes/class-blossomthemes-toolkit-functions.php:147
34
  msgid "Please upload valid image file."
35
  msgstr ""
36
 
37
- #: admin/class-blossomthemes-toolkit-admin.php:117
38
  msgid "Are you sure?"
39
  msgstr ""
40
 
41
- #: admin/class-blossomthemes-toolkit-admin.php:118
42
  msgid "Select Categories"
43
  msgstr ""
44
 
45
- #: admin/class-blossomthemes-toolkit-admin.php:123
46
  msgid "Are you sure you want to delete this Social Media?"
47
  msgstr ""
48
 
49
- #: admin/class-blossomthemes-toolkit-admin.php:173
50
  msgid "Portfolio Template"
51
  msgstr ""
52
 
53
- #: admin/class-blossomthemes-toolkit-admin.php:217
54
- #: admin/class-blossomthemes-toolkit-admin.php:246
55
  msgid "Image"
56
  msgstr ""
57
 
58
- #: admin/class-blossomthemes-toolkit-admin.php:221
59
- #: admin/class-blossomthemes-toolkit-admin.php:257
60
  msgid "Add Image"
61
  msgstr ""
62
 
63
- #: admin/class-blossomthemes-toolkit-admin.php:222
64
- #: admin/class-blossomthemes-toolkit-admin.php:258
65
  #: includes/class-blossomthemes-toolkit-functions.php:135
66
  msgid "Remove Image"
67
  msgstr ""
68
 
69
- #: admin/class-blossomthemes-toolkit-admin.php:352
70
  #: includes/widgets/widget-advertisement.php:129
71
  #: includes/widgets/widget-client-logo.php:159
72
  #: includes/widgets/widget-cta.php:256
@@ -77,7 +77,7 @@ msgstr ""
77
  msgid "Upload Image"
78
  msgstr ""
79
 
80
- #: admin/class-blossomthemes-toolkit-admin.php:358
81
  #: includes/widgets/widget-advertisement.php:137
82
  #: includes/widgets/widget-client-logo.php:162
83
  #: includes/widgets/widget-image-text.php:44
@@ -85,143 +85,143 @@ msgstr ""
85
  msgid "Featured Link"
86
  msgstr ""
87
 
88
- #: admin/class-blossomthemes-toolkit-admin.php:372
89
  msgid "Question"
90
  msgstr ""
91
 
92
- #: admin/class-blossomthemes-toolkit-admin.php:374
93
  msgid "Answer"
94
  msgstr ""
95
 
96
- #: admin/class-blossomthemes-toolkit-admin.php:391
97
  msgid "Portfolio"
98
  msgstr ""
99
 
100
- #: admin/class-blossomthemes-toolkit-admin.php:392
101
  msgid "Portfolio Post Type"
102
  msgstr ""
103
 
104
- #: admin/class-blossomthemes-toolkit-admin.php:399
105
  msgid "Add New Portfolio"
106
  msgstr ""
107
 
108
- #: admin/class-blossomthemes-toolkit-admin.php:400
109
  msgid "Portfolio Archives"
110
  msgstr ""
111
 
112
- #: admin/class-blossomthemes-toolkit-admin.php:401
113
  msgid "Portfolio Attributes"
114
  msgstr ""
115
 
116
- #: admin/class-blossomthemes-toolkit-admin.php:402
117
  msgid "Parent Portfolio:"
118
  msgstr ""
119
 
120
- #: admin/class-blossomthemes-toolkit-admin.php:403
121
  msgid "All Portfolios"
122
  msgstr ""
123
 
124
- #: admin/class-blossomthemes-toolkit-admin.php:404
125
  msgid "New Portfolio"
126
  msgstr ""
127
 
128
- #: admin/class-blossomthemes-toolkit-admin.php:405
129
  msgid "Edit Portfolio"
130
  msgstr ""
131
 
132
- #: admin/class-blossomthemes-toolkit-admin.php:406
133
  msgid "Update Portfolio"
134
  msgstr ""
135
 
136
- #: admin/class-blossomthemes-toolkit-admin.php:407
137
  msgid "View Portfolio"
138
  msgstr ""
139
 
140
- #: admin/class-blossomthemes-toolkit-admin.php:408
141
  msgid "View Portfolios"
142
  msgstr ""
143
 
144
- #: admin/class-blossomthemes-toolkit-admin.php:409
145
  msgid "Search Portfolio"
146
  msgstr ""
147
 
148
- #: admin/class-blossomthemes-toolkit-admin.php:410
149
  msgid "Not found"
150
  msgstr ""
151
 
152
- #: admin/class-blossomthemes-toolkit-admin.php:411
153
  msgid "Not found in Trash"
154
  msgstr ""
155
 
156
- #: admin/class-blossomthemes-toolkit-admin.php:412
157
  msgid "Featured Image"
158
  msgstr ""
159
 
160
- #: admin/class-blossomthemes-toolkit-admin.php:413
161
  msgid "Set featured image"
162
  msgstr ""
163
 
164
- #: admin/class-blossomthemes-toolkit-admin.php:414
165
  msgid "Remove featured image"
166
  msgstr ""
167
 
168
- #: admin/class-blossomthemes-toolkit-admin.php:415
169
  msgid "Use as featured image"
170
  msgstr ""
171
 
172
- #: admin/class-blossomthemes-toolkit-admin.php:416
173
  msgid "Insert into Portfolio"
174
  msgstr ""
175
 
176
- #: admin/class-blossomthemes-toolkit-admin.php:417
177
  msgid "Uploaded to this Portfolio"
178
  msgstr ""
179
 
180
- #: admin/class-blossomthemes-toolkit-admin.php:418
181
  msgid "Portfolios list"
182
  msgstr ""
183
 
184
- #: admin/class-blossomthemes-toolkit-admin.php:419
185
  msgid "Portfolios list navigation"
186
  msgstr ""
187
 
188
- #: admin/class-blossomthemes-toolkit-admin.php:420
189
  msgid "Filter Portfolios list"
190
  msgstr ""
191
 
192
- #: admin/class-blossomthemes-toolkit-admin.php:433
193
  msgid "Portfolios Categories"
194
  msgstr ""
195
 
196
- #: admin/class-blossomthemes-toolkit-admin.php:491
197
  msgid "Search Categories"
198
  msgstr ""
199
 
200
- #: admin/class-blossomthemes-toolkit-admin.php:492
201
  msgid "All Categories"
202
  msgstr ""
203
 
204
- #: admin/class-blossomthemes-toolkit-admin.php:493
205
  msgid "Parent Categories"
206
  msgstr ""
207
 
208
- #: admin/class-blossomthemes-toolkit-admin.php:494
209
  msgid "Parent Categories:"
210
  msgstr ""
211
 
212
- #: admin/class-blossomthemes-toolkit-admin.php:495
213
  msgid "Edit Categories"
214
  msgstr ""
215
 
216
- #: admin/class-blossomthemes-toolkit-admin.php:496
217
  msgid "Update Categories"
218
  msgstr ""
219
 
220
- #: admin/class-blossomthemes-toolkit-admin.php:497
221
  msgid "Add New Categories"
222
  msgstr ""
223
 
224
- #: admin/class-blossomthemes-toolkit-admin.php:498
225
  msgid "New Categories Name"
226
  msgstr ""
227
 
@@ -1002,37 +1002,37 @@ msgstr ""
1002
  msgid "https://blossomthemes.com/"
1003
  msgstr ""
1004
 
1005
- #: admin/class-blossomthemes-toolkit-admin.php:394
1006
  msgctxt "Post Type General Name"
1007
  msgid "Portfolios"
1008
  msgstr ""
1009
 
1010
- #: admin/class-blossomthemes-toolkit-admin.php:395
1011
  msgctxt "Post Type Singular Name"
1012
  msgid "Portfolio"
1013
  msgstr ""
1014
 
1015
- #: admin/class-blossomthemes-toolkit-admin.php:396
1016
  msgctxt "admin menu"
1017
  msgid "Portfolios"
1018
  msgstr ""
1019
 
1020
- #: admin/class-blossomthemes-toolkit-admin.php:397
1021
  msgctxt "add new on admin bar"
1022
  msgid "Portfolio"
1023
  msgstr ""
1024
 
1025
- #: admin/class-blossomthemes-toolkit-admin.php:398
1026
  msgctxt "Portfolio"
1027
  msgid "Add New"
1028
  msgstr ""
1029
 
1030
- #: admin/class-blossomthemes-toolkit-admin.php:431
1031
  msgctxt "taxonomy general name"
1032
  msgid "Portfolios Categories"
1033
  msgstr ""
1034
 
1035
- #: admin/class-blossomthemes-toolkit-admin.php:432
1036
  msgctxt "taxonomy singular name"
1037
  msgid "Portfolio Category"
1038
  msgstr ""
1
+ # Copyright (C) 2021 blossomthemes
2
  # This file is distributed under the GPL-2.0+.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: BlossomThemes Toolkit 2.2.1\n"
6
  "Report-Msgid-Bugs-To: \n"
7
+ "POT-Creation-Date: 2021-03-24 06:27:21+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=utf-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2021-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: WP Travel Engine\n"
13
  "Language-Team: \n"
14
  "X-Poedit-KeywordsList: "
19
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
20
  "X-Generator: grunt-wp-i18n 1.0.3\n"
21
 
22
+ #: admin/class-blossomthemes-toolkit-admin.php:117
23
  #: includes/class-blossomthemes-toolkit-functions.php:124
24
  msgid "Upload"
25
  msgstr ""
26
 
27
+ #: admin/class-blossomthemes-toolkit-admin.php:118
28
  #: includes/class-blossomthemes-toolkit-functions.php:126
29
  msgid "Change"
30
  msgstr ""
31
 
32
+ #: admin/class-blossomthemes-toolkit-admin.php:119
33
  #: includes/class-blossomthemes-toolkit-functions.php:147
34
  msgid "Please upload valid image file."
35
  msgstr ""
36
 
37
+ #: admin/class-blossomthemes-toolkit-admin.php:122
38
  msgid "Are you sure?"
39
  msgstr ""
40
 
41
+ #: admin/class-blossomthemes-toolkit-admin.php:123
42
  msgid "Select Categories"
43
  msgstr ""
44
 
45
+ #: admin/class-blossomthemes-toolkit-admin.php:128
46
  msgid "Are you sure you want to delete this Social Media?"
47
  msgstr ""
48
 
49
+ #: admin/class-blossomthemes-toolkit-admin.php:178
50
  msgid "Portfolio Template"
51
  msgstr ""
52
 
53
+ #: admin/class-blossomthemes-toolkit-admin.php:222
54
+ #: admin/class-blossomthemes-toolkit-admin.php:251
55
  msgid "Image"
56
  msgstr ""
57
 
58
+ #: admin/class-blossomthemes-toolkit-admin.php:226
59
+ #: admin/class-blossomthemes-toolkit-admin.php:262
60
  msgid "Add Image"
61
  msgstr ""
62
 
63
+ #: admin/class-blossomthemes-toolkit-admin.php:227
64
+ #: admin/class-blossomthemes-toolkit-admin.php:263
65
  #: includes/class-blossomthemes-toolkit-functions.php:135
66
  msgid "Remove Image"
67
  msgstr ""
68
 
69
+ #: admin/class-blossomthemes-toolkit-admin.php:357
70
  #: includes/widgets/widget-advertisement.php:129
71
  #: includes/widgets/widget-client-logo.php:159
72
  #: includes/widgets/widget-cta.php:256
77
  msgid "Upload Image"
78
  msgstr ""
79
 
80
+ #: admin/class-blossomthemes-toolkit-admin.php:363
81
  #: includes/widgets/widget-advertisement.php:137
82
  #: includes/widgets/widget-client-logo.php:162
83
  #: includes/widgets/widget-image-text.php:44
85
  msgid "Featured Link"
86
  msgstr ""
87
 
88
+ #: admin/class-blossomthemes-toolkit-admin.php:377
89
  msgid "Question"
90
  msgstr ""
91
 
92
+ #: admin/class-blossomthemes-toolkit-admin.php:379
93
  msgid "Answer"
94
  msgstr ""
95
 
96
+ #: admin/class-blossomthemes-toolkit-admin.php:396
97
  msgid "Portfolio"
98
  msgstr ""
99
 
100
+ #: admin/class-blossomthemes-toolkit-admin.php:397
101
  msgid "Portfolio Post Type"
102
  msgstr ""
103
 
104
+ #: admin/class-blossomthemes-toolkit-admin.php:404
105
  msgid "Add New Portfolio"
106
  msgstr ""
107
 
108
+ #: admin/class-blossomthemes-toolkit-admin.php:405
109
  msgid "Portfolio Archives"
110
  msgstr ""
111
 
112
+ #: admin/class-blossomthemes-toolkit-admin.php:406
113
  msgid "Portfolio Attributes"
114
  msgstr ""
115
 
116
+ #: admin/class-blossomthemes-toolkit-admin.php:407
117
  msgid "Parent Portfolio:"
118
  msgstr ""
119
 
120
+ #: admin/class-blossomthemes-toolkit-admin.php:408
121
  msgid "All Portfolios"
122
  msgstr ""
123
 
124
+ #: admin/class-blossomthemes-toolkit-admin.php:409
125
  msgid "New Portfolio"
126
  msgstr ""
127
 
128
+ #: admin/class-blossomthemes-toolkit-admin.php:410
129
  msgid "Edit Portfolio"
130
  msgstr ""
131
 
132
+ #: admin/class-blossomthemes-toolkit-admin.php:411
133
  msgid "Update Portfolio"
134
  msgstr ""
135
 
136
+ #: admin/class-blossomthemes-toolkit-admin.php:412
137
  msgid "View Portfolio"
138
  msgstr ""
139
 
140
+ #: admin/class-blossomthemes-toolkit-admin.php:413
141
  msgid "View Portfolios"
142
  msgstr ""
143
 
144
+ #: admin/class-blossomthemes-toolkit-admin.php:414
145
  msgid "Search Portfolio"
146
  msgstr ""
147
 
148
+ #: admin/class-blossomthemes-toolkit-admin.php:415
149
  msgid "Not found"
150
  msgstr ""
151
 
152
+ #: admin/class-blossomthemes-toolkit-admin.php:416
153
  msgid "Not found in Trash"
154
  msgstr ""
155
 
156
+ #: admin/class-blossomthemes-toolkit-admin.php:417
157
  msgid "Featured Image"
158
  msgstr ""
159
 
160
+ #: admin/class-blossomthemes-toolkit-admin.php:418
161
  msgid "Set featured image"
162
  msgstr ""
163
 
164
+ #: admin/class-blossomthemes-toolkit-admin.php:419
165
  msgid "Remove featured image"
166
  msgstr ""
167
 
168
+ #: admin/class-blossomthemes-toolkit-admin.php:420
169
  msgid "Use as featured image"
170
  msgstr ""
171
 
172
+ #: admin/class-blossomthemes-toolkit-admin.php:421
173
  msgid "Insert into Portfolio"
174
  msgstr ""
175
 
176
+ #: admin/class-blossomthemes-toolkit-admin.php:422
177
  msgid "Uploaded to this Portfolio"
178
  msgstr ""
179
 
180
+ #: admin/class-blossomthemes-toolkit-admin.php:423
181
  msgid "Portfolios list"
182
  msgstr ""
183
 
184
+ #: admin/class-blossomthemes-toolkit-admin.php:424
185
  msgid "Portfolios list navigation"
186
  msgstr ""
187
 
188
+ #: admin/class-blossomthemes-toolkit-admin.php:425
189
  msgid "Filter Portfolios list"
190
  msgstr ""
191
 
192
+ #: admin/class-blossomthemes-toolkit-admin.php:438
193
  msgid "Portfolios Categories"
194
  msgstr ""
195
 
196
+ #: admin/class-blossomthemes-toolkit-admin.php:496
197
  msgid "Search Categories"
198
  msgstr ""
199
 
200
+ #: admin/class-blossomthemes-toolkit-admin.php:497
201
  msgid "All Categories"
202
  msgstr ""
203
 
204
+ #: admin/class-blossomthemes-toolkit-admin.php:498
205
  msgid "Parent Categories"
206
  msgstr ""
207
 
208
+ #: admin/class-blossomthemes-toolkit-admin.php:499
209
  msgid "Parent Categories:"
210
  msgstr ""
211
 
212
+ #: admin/class-blossomthemes-toolkit-admin.php:500
213
  msgid "Edit Categories"
214
  msgstr ""
215
 
216
+ #: admin/class-blossomthemes-toolkit-admin.php:501
217
  msgid "Update Categories"
218
  msgstr ""
219
 
220
+ #: admin/class-blossomthemes-toolkit-admin.php:502
221
  msgid "Add New Categories"
222
  msgstr ""
223
 
224
+ #: admin/class-blossomthemes-toolkit-admin.php:503
225
  msgid "New Categories Name"
226
  msgstr ""
227
 
1002
  msgid "https://blossomthemes.com/"
1003
  msgstr ""
1004
 
1005
+ #: admin/class-blossomthemes-toolkit-admin.php:399
1006
  msgctxt "Post Type General Name"
1007
  msgid "Portfolios"
1008
  msgstr ""
1009
 
1010
+ #: admin/class-blossomthemes-toolkit-admin.php:400
1011
  msgctxt "Post Type Singular Name"
1012
  msgid "Portfolio"
1013
  msgstr ""
1014
 
1015
+ #: admin/class-blossomthemes-toolkit-admin.php:401
1016
  msgctxt "admin menu"
1017
  msgid "Portfolios"
1018
  msgstr ""
1019
 
1020
+ #: admin/class-blossomthemes-toolkit-admin.php:402
1021
  msgctxt "add new on admin bar"
1022
  msgid "Portfolio"
1023
  msgstr ""
1024
 
1025
+ #: admin/class-blossomthemes-toolkit-admin.php:403
1026
  msgctxt "Portfolio"
1027
  msgid "Add New"
1028
  msgstr ""
1029
 
1030
+ #: admin/class-blossomthemes-toolkit-admin.php:436
1031
  msgctxt "taxonomy general name"
1032
  msgid "Portfolios Categories"
1033
  msgstr ""
1034
 
1035
+ #: admin/class-blossomthemes-toolkit-admin.php:437
1036
  msgctxt "taxonomy singular name"
1037
  msgid "Portfolio Category"
1038
  msgstr ""
public/css/blossomthemes-toolkit-public.css CHANGED
@@ -1,908 +1,915 @@
1
- /*
2
- * All of the CSS for your public-facing functionality should be
3
- * included in this file.
4
- */
5
-
6
- /*===============================
7
- Author bio style
8
- ================================*/
9
- .widget_bttk_author_bio{
10
- text-align: center;
11
- }
12
-
13
- .widget_bttk_author_bio .image-holder img{
14
- vertical-align: top;
15
- }
16
-
17
- .widget_bttk_author_bio .image-holder{margin: 0 0 30px;}
18
-
19
- .widget_bttk_author_bio .title-holder{
20
- font-size: 28px;
21
- line-height: 32px;
22
- margin: 0 0 20px;
23
- }
24
-
25
- .widget_bttk_author_bio .text-signature {
26
- font-family: 'Dancing Script', cursive;
27
- font-size: 30px;
28
- color: #000;
29
- font-style: italic;
30
- line-height: 1.3;
31
- margin-bottom: 10px;
32
- }
33
-
34
- .widget_bttk_author_bio .signature-holder {
35
- margin-bottom: 10px;
36
- }
37
-
38
- .widget_bttk_author_bio .readmore{
39
- display: inline-block;
40
- padding: 10px 30px;
41
- background: #ccc;
42
- margin: 0 0 30px;
43
- }
44
-
45
- .widget_bttk_author_bio .author-socicons{
46
- margin: 0;
47
- padding: 0;
48
- list-style: none;
49
- }
50
-
51
- .widget_bttk_author_bio .author-socicons li{
52
- display: inline-block;
53
- margin: 0 3px;
54
- }
55
-
56
- /*==============================
57
- Custom category style
58
- ==============================*/
59
- .widget_bttk_custom_categories ul li{
60
- background-size: cover;
61
- width: 100%;
62
- height: 100%;
63
- position: relative;
64
- }
65
-
66
- .widget_bttk_custom_categories ul li:after{
67
- position: absolute;
68
- top: 0;
69
- left: 0;
70
- width: 100%;
71
- height: 100%;
72
- background: rgba(0, 0, 0, 0.25);
73
- content: '';
74
- }
75
-
76
- .widget_bttk_custom_categories ul li a{
77
- display: block;
78
- width: 100%;
79
- height: 100%;
80
- color: #fff;
81
- overflow: hidden;
82
- position: relative;
83
- z-index: 1;
84
- }
85
-
86
- .widget_bttk_custom_categories ul li .cat-title{
87
- float: left;
88
- font-size: 14px;
89
- text-transform: uppercase;
90
- }
91
-
92
- .widget_bttk_custom_categories ul li .post-count{
93
- float: right;
94
- font-size: 13px;
95
- width: 99px;
96
- height: 48px;
97
- background: #111;
98
- text-align: center;
99
- line-height: 48px;
100
- -webkit-transition: linear 0.2s;
101
- -moz-transition: linear 0.2s;
102
- transition: linear 0.2s;
103
- }
104
-
105
- .widget_bttk_custom_categories ul li a:hover .post-count,
106
- .widget_bttk_custom_categories ul li a:hover:focus .post-count{
107
- width: 124px;
108
- }
109
-
110
- /*================================
111
- Popular post style
112
- ================================*/
113
- .widget_bttk_popular_post ul li,
114
- .widget_bttk_pro_recent_post ul li{
115
- overflow: hidden;
116
- }
117
-
118
- .widget_bttk_popular_post ul li .post-thumbnail,
119
- .widget_bttk_pro_recent_post ul li .post-thumbnail{
120
- float: left;
121
- width: 80px;
122
- height: 80px;
123
- margin-right: 20px;
124
- }
125
-
126
- .widget_bttk_popular_post ul li .post-thumbnail img,
127
- .widget_bttk_pro_recent_post ul li .post-thumbnail img{
128
- vertical-align: top;
129
- width: 100%;
130
- height: 100%;
131
- object-fit: cover;
132
- }
133
-
134
- .widget_bttk_popular_post ul li .entry-header,
135
- .widget_bttk_pro_recent_post ul li .entry-header{
136
- overflow: hidden;
137
- }
138
-
139
- .widget_bttk_popular_post ul li .entry-header .entry-title,
140
- .widget_bttk_pro_recent_post ul li .entry-header .entry-title{
141
- font-size: 18px;
142
- line-height: 26px;
143
- margin: 0;
144
- }
145
-
146
- .widget_bttk_popular_post ul li .entry-header .entry-meta,
147
- .widget_bttk_pro_recent_post ul li .entry-header .entry-meta{
148
- font-size: 14px;
149
- line-height: 21px;
150
- }
151
-
152
- .widget_bttk_popular_post .style-two li .post-thumbnail,
153
- .widget_bttk_pro_recent_post .style-two li .post-thumbnail{
154
- width: 100%;
155
- margin-right: 0;
156
- margin-bottom: 20px;
157
- height: 190px;
158
- }
159
-
160
- .widget_bttk_popular_post .style-two li .entry-header,
161
- .widget_bttk_pro_recent_post .style-two li .entry-header{
162
- width: 100%;
163
- text-align: center;
164
- padding: 0 15px;
165
- }
166
-
167
- .widget_bttk_popular_post .style-three li .post-thumbnail,
168
- .widget_bttk_pro_recent_post .style-three li .post-thumbnail{
169
- height: 190px;
170
- margin: 0 0 -40px;
171
- width: 100%;
172
- }
173
-
174
- .widget_bttk_popular_post .style-three li .entry-header,
175
- .widget_bttk_pro_recent_post .style-three li .entry-header{
176
- background: #fff none repeat scroll 0 0;
177
- margin: 0 auto;
178
- max-width: 92%;
179
- padding: 13px 15px 0;
180
- position: relative;
181
- text-align: center;
182
- width: 100%;
183
- }
184
-
185
- .widget_bttk_popular_post ul li .entry-header .cat-links,
186
- .widget_bttk_pro_recent_post ul li .entry-header .cat-links{display: none;}
187
-
188
- .widget_bttk_popular_post .style-two li .entry-header .cat-links,
189
- .widget_bttk_pro_recent_post .style-two li .entry-header .cat-links,
190
- .widget_bttk_popular_post .style-three li .entry-header .cat-links,
191
- .widget_bttk_pro_recent_post .style-three li .entry-header .cat-links{
192
- display: block;
193
- font-size: 14px;
194
- font-weight: 500;
195
- }
196
-
197
- .widget_bttk_popular_post .style-two li .entry-header .cat-links a,
198
- .widget_bttk_pro_recent_post .style-two li .entry-header .cat-links a,
199
- .widget_bttk_popular_post .style-three li .entry-header .cat-links a,
200
- .widget_bttk_pro_recent_post .style-three li .entry-header .cat-links a{
201
- margin: 0 3px;
202
- }
203
-
204
- /*====================================
205
- Social icon style
206
- ===================================*/
207
- .widget_bttk_social_links ul{
208
- margin: 0 -2px;
209
- overflow: hidden;
210
- }
211
-
212
- .widget_bttk_social_links ul li{
213
- float: left;
214
- padding: 0 2px;
215
- margin: 0 0 4px;
216
- }
217
-
218
- .widget_bttk_social_links ul li a{
219
- display: block;
220
- width: 63px;
221
- height: 63px;
222
- background: #111;
223
- color: #fff;
224
- text-align: center;
225
- line-height: 63px;
226
- }
227
-
228
- /*================================
229
- Featured post slider style
230
- ================================*/
231
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-nav [class*="owl-"]{
232
- margin: 0;
233
- width: 40px;
234
- height: 40px;
235
- font-size: 0;
236
- background: rgba(0, 0, 0, 0.75);
237
- border-radius: 0;
238
- position: absolute;
239
- -webkit-transition: ease 0.2s;
240
- -moz-transition: ease 0.2s;
241
- transition: ease 0.2s;
242
- }
243
-
244
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-prev{
245
- top: 75px;
246
- left: 0;
247
- }
248
-
249
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-prev:after{
250
- content: '';
251
- background-image: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M4.2 247.5L151 99.5c4.7-4.7 12.3-4.7 17 0l19.8 19.8c4.7 4.7 4.7 12.3 0 17L69.3 256l118.5 119.7c4.7 4.7 4.7 12.3 0 17L168 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 264.5c-4.7-4.7-4.7-12.3 0-17z"></path></svg>');
252
- background-repeat: no-repeat;
253
- width: 10px;
254
- height: 20px;
255
- position: absolute;
256
- top: 50%;
257
- left: 50%;
258
- -webkit-transform: translate(-50%, -50%);
259
- -moz-transform: translate(-50%, -50%);
260
- transform: translate(-50%, -50%);
261
- }
262
-
263
- .widget_bttk_posts_category_slider_widget .owl-next{
264
- top: 75px;
265
- right: 0;
266
- }
267
-
268
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-next:after{
269
- content: '';
270
- background-image: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M187.8 264.5L41 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 392.7c-4.7-4.7-4.7-12.3 0-17L122.7 256 4.2 136.3c-4.7-4.7-4.7-12.3 0-17L24 99.5c4.7-4.7 12.3-4.7 17 0l146.8 148c4.7 4.7 4.7 12.3 0 17z"></path></svg>');
271
- background-repeat: no-repeat;
272
- width: 10px;
273
- height: 20px;
274
- position: absolute;
275
- top: 50%;
276
- left: 50%;
277
- -webkit-transform: translate(-50%, -50%);
278
- -moz-transform: translate(-50%, -50%);
279
- transform: translate(-50%, -50%);
280
- }
281
-
282
- .widget_bttk_posts_category_slider_widget .post-thumbnail{
283
- display: block;
284
- margin-bottom: 15px;
285
- }
286
-
287
- .widget_bttk_posts_category_slider_widget .carousel-title{
288
- text-align: center;
289
- }
290
-
291
- .widget_bttk_posts_category_slider_widget .carousel-title .cat-links{
292
- display: block;
293
- font-size: 14px;
294
- font-weight: 500;
295
- }
296
-
297
- .widget_bttk_posts_category_slider_widget .carousel-title .cat-links a{margin: 0 3px;}
298
-
299
- .widget_bttk_posts_category_slider_widget .carousel-title .title{
300
- font-size: 18px;
301
- line-height: 26px;
302
- font-weight: 400;
303
- }
304
-
305
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span{
306
- margin: 0 3px;
307
- background: #eee;
308
- }
309
-
310
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span:hover,
311
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span:hover{
312
- background: #111;
313
- }
314
-
315
- .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot.active span{
316
- background: #111;
317
- }
318
-
319
- /*========================
320
- Image text widget
321
- ========================*/
322
- .widget_bttk_image_text_widget ul li{
323
- position: relative;
324
- }
325
-
326
- .widget_bttk_image_text_widget ul li .btn-readmore{
327
- position: absolute;
328
- width: 70%;
329
- text-align: center;
330
- top: 50%;
331
- left: 50%;
332
- color: #fff;
333
- background: #111;
334
- text-transform: uppercase;
335
- letter-spacing: 1px;
336
- padding: 12px 29px 9px 32px;
337
- -webkit-transform: translate(-50%, -50%);
338
- -moz-transform: translate(-50%, -50%);
339
- transform: translate(-50%, -50%);
340
- -webkit-transition: ease 0.2s;
341
- -moz-transition: ease 0.2s;
342
- transition: ease 0.2s;
343
- }
344
-
345
- .widget-area ul{
346
- margin: 0;
347
- padding: 0;
348
- list-style: none;
349
- }
350
-
351
- .widget-area ul li{
352
- margin: 0 0 20px;
353
- }
354
-
355
- /*==========================
356
- widget CTA style
357
- ==========================*/
358
- .widget_raratheme_companion_cta_widget .widget-content{
359
- position: relative;
360
- }
361
-
362
- .widget_raratheme_companion_cta_widget .widget-content.bg-image:after{
363
- content: '';
364
- position: absolute;
365
- top: 0;
366
- left: 0;
367
- width: 100%;
368
- height: 100%;
369
- background: rgba(0, 0, 0, 0.5);
370
- }
371
-
372
- .widget_raratheme_companion_cta_widget .widget-content .text-holder{
373
- position: relative;
374
- z-index: 1;
375
- color: #fff;
376
- text-align: center;
377
- padding: 30px 15px;
378
- }
379
-
380
- .widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta{
381
- display: inline-block;
382
- margin: 0 3px;
383
- background: #f7f7f7;
384
- color: #555;
385
- border-radius: 3px;
386
- padding: 5px 15px;
387
- text-decoration: none;
388
- font-size: 15px;
389
- border: 1px solid #ccc;
390
- -webkit-transition: linear 0.2s;
391
- -moz-transition: linear 0.2s;
392
- transition: linear 0.2s;
393
- }
394
-
395
- .widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:hover,
396
- .widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:focus{
397
- text-decoration: none;
398
- background: none;
399
- color: #fff;
400
- }
401
-
402
- /*===============================
403
- Featured Post widget style
404
- ===============================*/
405
- .widget_raratheme_featured_widget .img-holder{
406
- margin-bottom: 30px;
407
- }
408
-
409
- .widget_raratheme_featured_widget .img-holder a{display: block;}
410
-
411
- .widget_raratheme_featured_widget .img-holder img{
412
- vertical-align: top;
413
- }
414
-
415
- .widget_raratheme_featured_widget .text-holder .readmore{
416
- display: inline-block;
417
- background: #f7f7f7;
418
- color: #555;
419
- border-radius: 3px;
420
- padding: 5px 15px;
421
- text-decoration: none;
422
- font-size: 15px;
423
- border: 1px solid #ccc;
424
- -webkit-transition: linear 0.2s;
425
- -moz-transition: linear 0.2s;
426
- transition: linear 0.2s;
427
- }
428
-
429
- .widget_raratheme_featured_widget .text-holder .readmore:hover,
430
- .widget_raratheme_featured_widget .text-holder .readmore:focus{
431
- background: none;
432
- text-decoration: none;
433
- }
434
-
435
- /*=====================================
436
- Icon Text Widget style
437
- =====================================*/
438
- .widget_raratheme_icon_text_widget .icon-holder{
439
- font-size: 30px;
440
- margin: 0 0 15px;
441
- }
442
-
443
- /*=============================
444
- Image widget
445
- =============================*/
446
- .widget_raratheme_image_widget .image-holder{margin: 0 0 20px;}
447
-
448
- .widget_raratheme_image_widget .image-holder img{vertical-align: top}
449
-
450
- .widget_raratheme_image_widget .image-holder a{display: block;}
451
-
452
- .widget_raratheme_image_widget .readmore{
453
- display: inline-block;
454
- background: #f7f7f7;
455
- color: #555;
456
- border-radius: 3px;
457
- padding: 5px 15px;
458
- text-decoration: none;
459
- font-size: 15px;
460
- border: 1px solid #ccc;
461
- -webkit-transition: linear 0.2s;
462
- -moz-transition: linear 0.2s;
463
- transition: linear 0.2s;
464
- }
465
-
466
- .widget_raratheme_image_widget .readmore:hover,
467
- .widget_raratheme_image_widget .readmore:focus{
468
- background: none;
469
- text-decoration: none;
470
- }
471
-
472
- /*==========================
473
- Popular post style
474
- ==========================*/
475
- .widget_raratheme_popular_post ul li,
476
- .widget_raratheme_recent_post ul li{overflow: hidden}
477
-
478
- .widget_raratheme_popular_post ul li .post-thumbnail,
479
- .widget_raratheme_recent_post ul li .post-thumbnail{
480
- float: left;
481
- width: 68px;
482
- margin-right: 15px;
483
- }
484
-
485
- .widget_raratheme_popular_post ul li .post-thumbnail img,
486
- .widget_raratheme_recent_post ul li .post-thumbnail img{vertical-align: top;}
487
-
488
- .widget_raratheme_popular_post ul li .entry-header,
489
- .widget_raratheme_recent_post ul li .entry-header{overflow: hidden;}
490
-
491
- .widget_raratheme_popular_post ul li .entry-header .entry-title,
492
- .widget_raratheme_recent_post ul li .entry-header .entry-title{
493
- margin: 0 0 5px;
494
- font-size: 15px;
495
- line-height: 18px;
496
- }
497
-
498
- .widget_raratheme_popular_post ul li .entry-header .entry-title a,
499
- .widget_raratheme_recent_post ul li .entry-header .entry-title a{text-decoration: none;}
500
-
501
- .widget_raratheme_popular_post ul li .entry-header .entry-meta,
502
- .widget_raratheme_recent_post ul li .entry-header .entry-meta{
503
- font-size: 14px;
504
- line-height: 18px;
505
- }
506
-
507
- .widget_raratheme_popular_post ul li .entry-header .view-count{
508
- font-size: 14px;
509
- line-height: 18px;
510
- }
511
-
512
- .widget_raratheme_popular_post ul li .entry-header .comment-count{
513
- font-size: 14px;
514
- line-height: 18px;
515
- }
516
-
517
- .widget_raratheme_popular_post ul li .entry-header .comment-count .fa{margin-right: 5px;}
518
-
519
- /*=====================================
520
- Widget social networks style
521
- =====================================*/
522
- .widget_raratheme_social_links ul{
523
- font-size: 15px;
524
- overflow: hidden
525
- }
526
-
527
- .widget_raratheme_social_links ul li{
528
- float: left;
529
- margin-right: 3px;
530
- }
531
-
532
- .widget_raratheme_social_links ul li a{
533
- display: block;
534
- width: 30px;
535
- height: 30px;
536
- background: #000;
537
- color: #fff;
538
- text-align: center;
539
- line-height: 30px;
540
- -webkit-transition: linear 0.2s;
541
- -moz-transition: linear 0.2s;
542
- transition: linear 0.2s;
543
- }
544
-
545
- .widget_raratheme_social_links ul li a:hover,
546
- .widget_raratheme_social_links ul li a:focus{
547
- border-radius: 50%;
548
- }
549
-
550
- .widget_raratheme_social_links ul li a[href*='facebook']{background: #3B5998;}
551
-
552
- .widget_raratheme_social_links ul li a[href*='twitter']{background: #1DA1F2;}
553
-
554
- .widget_raratheme_social_links ul li a[href*='flickr']{background: #0063DB;}
555
-
556
- .widget_raratheme_social_links ul li a[href*='vimeo']{background: #23B6EA;}
557
-
558
- .widget_raratheme_social_links ul li a[href*='youtube']{background: #CB1F1F;}
559
-
560
- .widget_raratheme_social_links ul li a[href*='google']{background: #D51F1E;}
561
-
562
- .widget_raratheme_social_links ul li a[href*='ok.ru']{background: #EE8208;}
563
-
564
- .widget_raratheme_social_links ul li a[href*='vk']{background: #466991;}
565
-
566
- .widget_raratheme_social_links ul li a[href*='xing']{background: #005A5F;}
567
-
568
- .widget_raratheme_social_links ul li a[href*='stumbleupon']{background: #EB4823;}
569
-
570
- .widget_raratheme_social_links ul li a[href*='pinterest']{background: #CB2027;}
571
-
572
- .widget_raratheme_social_links ul li a[href*='dribbble']{background: #E84C88;}
573
-
574
- .widget_raratheme_social_links ul li a[href*='linkedin']{background: #0274B3;}
575
-
576
- .widget_raratheme_social_links ul li a[href*='rss']{background: #FFA500;}
577
-
578
- .widget_raratheme_social_links ul li a[href*='tumblr']{background: #2E4F6E;}
579
-
580
- .widget_raratheme_social_links ul li a[href*='instagram']{background: #895A4D;}
581
-
582
- /*================================
583
- counter widget style
584
- ================================*/
585
- .widget_raratheme_companion_stat_counter_widget .icon-holder{
586
- font-size: 30px;
587
- margin: 0 0 15px;
588
- }
589
-
590
- .widget_raratheme_companion_stat_counter_widget .odometer.odometer-auto-theme, .odometer.odometer-theme-default{
591
- font-size: 25px;
592
- font-weight: 700;
593
- }
594
- ul.accordion {
595
- list-style: none;
596
- }
597
- ul.accordion .inner {
598
- display: none;
599
- }
600
- ul.accordion li {
601
- margin: .5em 0;
602
- }
603
- ul.accordion li a.toggle {
604
- display: block;
605
- }
606
-
607
- .odometer.odometer-auto-theme,
608
- .odometer.odometer-theme-default {
609
- vertical-align: middle;
610
- vertical-align: auto;
611
- zoom: 1;
612
- display: inline;
613
- position: relative;
614
- }
615
-
616
- .odometer.odometer-auto-theme .odometer-digit,
617
- .odometer.odometer-theme-default .odometer-digit {
618
- vertical-align: middle;
619
- vertical-align: auto;
620
- zoom: 1;
621
- display: inline;
622
- position: relative;
623
- }
624
-
625
- .odometer.odometer-auto-theme .odometer-digit .odometer-digit-spacer,
626
- .odometer.odometer-theme-default .odometer-digit .odometer-digit-spacer {
627
- vertical-align: middle;
628
- vertical-align: auto;
629
- zoom: 1;
630
- display: inline;
631
- visibility: hidden;
632
- }
633
-
634
- .odometer.odometer-auto-theme .odometer-digit .odometer-digit-inner,
635
- .odometer.odometer-theme-default .odometer-digit .odometer-digit-inner {
636
- text-align: left;
637
- display: block;
638
- position: absolute;
639
- top: 0;
640
- left: 0;
641
- right: 0;
642
- bottom: 0;
643
- overflow: hidden;
644
- }
645
-
646
- .odometer.odometer-auto-theme .odometer-digit .odometer-ribbon,
647
- .odometer.odometer-theme-default .odometer-digit .odometer-ribbon {
648
- display: block;
649
- }
650
-
651
- .odometer.odometer-auto-theme .odometer-digit .odometer-ribbon-inner,
652
- .odometer.odometer-theme-default .odometer-digit .odometer-ribbon-inner {
653
- display: block;
654
- -webkit-backface-visibility: hidden;
655
- }
656
-
657
- .odometer.odometer-auto-theme .odometer-digit .odometer-value,
658
- .odometer.odometer-theme-default .odometer-digit .odometer-value {
659
- display: block;
660
- -webkit-transform: translateZ(0);
661
- -moz-transform: translateZ(0);
662
- transform: translateZ(0);
663
- }
664
-
665
- .odometer.odometer-auto-theme .odometer-digit .odometer-value.odometer-last-value,
666
- .odometer.odometer-theme-default .odometer-digit .odometer-value.odometer-last-value {
667
- position: absolute;
668
- }
669
-
670
- .odometer.odometer-auto-theme.odometer-animating-up .odometer-ribbon-inner,
671
- .odometer.odometer-theme-default.odometer-animating-up .odometer-ribbon-inner {
672
- -webkit-transition: -webkit-transform 2s;
673
- -moz-transition: -moz-transform 2s;
674
- -ms-transition: -ms-transform 2s;
675
- -o-transition: -o-transform 2s;
676
- transition: transform 2s;
677
- }
678
-
679
- .odometer.odometer-auto-theme.odometer-animating-up.odometer-animating .odometer-ribbon-inner,
680
- .odometer.odometer-theme-default.odometer-animating-up.odometer-animating .odometer-ribbon-inner {
681
- -webkit-transform: translateY(-100%);
682
- -moz-transform: translateY(-100%);
683
- -ms-transform: translateY(-100%);
684
- -o-transform: translateY(-100%);
685
- transform: translateY(-100%);
686
- }
687
-
688
- .odometer.odometer-auto-theme.odometer-animating-down .odometer-ribbon-inner,
689
- .odometer.odometer-theme-default.odometer-animating-down .odometer-ribbon-inner {
690
- -webkit-transform: translateY(-100%);
691
- -moz-transform: translateY(-100%);
692
- -ms-transform: translateY(-100%);
693
- -o-transform: translateY(-100%);
694
- transform: translateY(-100%);
695
- }
696
-
697
- .odometer.odometer-auto-theme.odometer-animating-down.odometer-animating .odometer-ribbon-inner,
698
- .odometer.odometer-theme-default.odometer-animating-down.odometer-animating .odometer-ribbon-inner {
699
- -webkit-transition: -webkit-transform 2s;
700
- -moz-transition: -moz-transform 2s;
701
- -ms-transition: -ms-transform 2s;
702
- -o-transition: -o-transform 2s;
703
- transition: transform 2s;
704
- -webkit-transform: translateY(0);
705
- -moz-transform: translateY(0);
706
- -ms-transform: translateY(0);
707
- -o-transform: translateY(0);
708
- transform: translateY(0);
709
- }
710
-
711
- .odometer.odometer-auto-theme .odometer-value,
712
- .odometer.odometer-theme-default .odometer-value {
713
- text-align: center;
714
- }
715
-
716
- /** Portfolio */
717
- .portfolio-holder .portfolio-sorting {
718
- text-align: center;
719
- text-transform: uppercase;
720
- }
721
-
722
- .portfolio-sorting .button {
723
- margin: 0 30px 40px 30px;
724
- background: none;
725
- border: none;
726
- font-weight: 400;
727
- font-size: 16px;
728
- cursor: pointer;
729
- padding: 0;
730
- color: #000;
731
- }
732
-
733
- .portfolio-sorting .button:hover,
734
- .portfolio-sorting .button.is-checked {
735
- color: #777;
736
- }
737
-
738
- .portfolio-img-holder .portfolio-item {
739
- float: left;
740
- width: 33.33%;
741
- padding: 15px;
742
-
743
- }
744
-
745
- .portfolio-item img {
746
- vertical-align: top;
747
- }
748
-
749
- .portfolio-item .portfolio-item-inner {
750
- position: relative;
751
- overflow: hidden;
752
- }
753
-
754
- .portfolio-item .portfolio-text-holder {
755
- font-size: 14px;
756
- font-weight: 600;
757
- position: absolute;
758
- top: 0;
759
- bottom: 0;
760
- left: 0;
761
- right: 0;
762
- background: -webkit-linear-gradient(transparent, rgba(0,0,0,0.65));
763
- background: -moz-linear-gradient(transparent, rgba(0,0,0,0.65));
764
- background: -ms-linear-gradient(transparent, rgba(0,0,0,0.65));
765
- background: -o-linear-gradient(transparent, rgba(0,0,0,0.65));
766
- background: linear-gradient(transparent, rgba(0,0,0,0.65));
767
- text-align: center;
768
- padding: 0 20px;
769
- display: flex;
770
- flex-direction: column;
771
- flex: 1;
772
- justify-content: flex-end;
773
- opacity: 0;
774
- visibility: hidden;
775
- -webkit-transition: all ease 0.35s;
776
- -moz-transition: all ease 0.35s;
777
- transition: all ease 0.35s;
778
- }
779
-
780
- .portfolio-item-inner:hover .portfolio-text-holder {
781
- padding-top: 30px;
782
- padding-bottom: 30px;
783
- opacity: 1;
784
- filter: alpha(opacity=100);
785
- visibility: visible;
786
- }
787
-
788
- .portfolio-item .portfolio-cat a {
789
- color: #fff;
790
- text-decoration: none;
791
- padding-right: 10px;
792
- display: inline-block;
793
- margin-bottom: 5px;
794
- }
795
- .portfolio-item .portfolio-cat a:last-child {
796
- padding-right: 0;
797
- }
798
-
799
- .portfolio-text-holder .portfolio-img-title {
800
- font-size: 24px;
801
- font-weight: 600;
802
- }
803
-
804
- .portfolio-item .portfolio-img-title a {
805
- color: #fff;
806
- text-decoration: none;
807
- }
808
-
809
- .portfolio-item a:hover {
810
- color: #ddd;
811
- }
812
-
813
- .portfolio-holder .post-thumbnail {
814
- margin: 0 0 35px 0;
815
- text-align: center;
816
- }
817
-
818
- .portfolio-holder .entry-header {
819
- border-bottom: 1px solid #eee;
820
- margin-bottom: 30px;
821
- padding-bottom: 30px;
822
- }
823
-
824
- .entry-header .portfolio-cat a {
825
- color: #777;
826
- text-decoration: none;
827
- margin-right: 10px;
828
- }
829
-
830
- .entry-header .portfolio-cat a:last-child {
831
- margin-right: 0;
832
- }
833
-
834
- .portfolio-holder .entry-header .entry-title {
835
- color: #000;
836
- margin: 10px 0 0 0;
837
- font-size: 3em;
838
- }
839
-
840
- .portfolio-holder .entry-header,
841
- .portfolio-holder .entry-content {
842
- margin-left: auto;
843
- margin-right: auto;
844
- max-width: 80%;
845
- }
846
-
847
- .portfolio-holder .entry-content {
848
- color: #555;
849
- line-height: 1.6;
850
- }
851
-
852
- .related-portfolio {
853
- margin-top: 80px;
854
- }
855
-
856
- .related-portfolio-title {
857
- text-align: center;
858
- margin-bottom: 30px;
859
- font-size: 22px;
860
- }
861
-
862
- .related-portfolio .portfolio-img-holder:before,
863
- .related-portfolio .portfolio-img-holder:after {
864
- content: "";
865
- display: table;
866
- height: 0;
867
- width: 0;
868
- line-height: 0;
869
- }
870
-
871
- .related-portfolio .portfolio-img-holder:after {
872
- clear: both;
873
- }
874
-
875
- .related-portfolio .portfolio-item .portfolio-text-holder {
876
- opacity: 1;
877
- visibility: visible;
878
- padding: 30px 20px;
879
- }
880
- /** Portfolio Ends */
881
-
882
- @media only screen and (max-width: 1024px){
883
- .archive .trip-content-area .grid .btn-loadmore{
884
- grid-column: 1 / span 2
885
- }
886
-
887
- .portfolio-img-holder .portfolio-item {
888
- width: 50%;
889
- }
890
- }
891
-
892
- @media only screen and (max-width: 767px){
893
- .archive .trip-content-area .grid .btn-loadmore{
894
- grid-column: 1 / span 1
895
- }
896
-
897
- .portfolio-img-holder .portfolio-item {
898
- width: 100%;
899
- float: none;
900
- padding-left: 0;
901
- padding-right: 0;
902
- }
903
-
904
- .portfolio-holder .entry-header,
905
- .portfolio-holder .entry-content {
906
- max-width: 100%;
907
- }
 
 
 
 
 
 
 
908
  }
1
+ /*
2
+ * All of the CSS for your public-facing functionality should be
3
+ * included in this file.
4
+ */
5
+
6
+ /*===============================
7
+ Author bio style
8
+ ================================*/
9
+ .widget_bttk_author_bio{
10
+ text-align: center;
11
+ }
12
+
13
+ .widget_bttk_author_bio .image-holder img{
14
+ vertical-align: top;
15
+ }
16
+
17
+ .widget_bttk_author_bio .image-holder{margin: 0 0 30px;}
18
+
19
+ .widget_bttk_author_bio .title-holder{
20
+ font-size: 28px;
21
+ line-height: 32px;
22
+ margin: 0 0 20px;
23
+ }
24
+
25
+ .widget_bttk_author_bio .text-signature {
26
+ font-family: 'Dancing Script', cursive;
27
+ font-size: 30px;
28
+ color: #000;
29
+ font-style: italic;
30
+ line-height: 1.3;
31
+ margin-bottom: 10px;
32
+ }
33
+
34
+ .widget_bttk_author_bio .signature-holder {
35
+ margin-bottom: 10px;
36
+ }
37
+
38
+ .widget_bttk_author_bio .readmore{
39
+ display: inline-block;
40
+ padding: 10px 30px;
41
+ background: #ccc;
42
+ margin: 0 0 30px;
43
+ }
44
+
45
+ .widget_bttk_author_bio .author-socicons{
46
+ margin: 0;
47
+ padding: 0;
48
+ list-style: none;
49
+ }
50
+
51
+ .widget_bttk_author_bio .author-socicons li{
52
+ display: inline-block;
53
+ margin: 0 3px;
54
+ }
55
+
56
+ /*==============================
57
+ Custom category style
58
+ ==============================*/
59
+ .widget_bttk_custom_categories ul li{
60
+ background-size: cover;
61
+ width: 100%;
62
+ height: 100%;
63
+ position: relative;
64
+ }
65
+
66
+ .widget_bttk_custom_categories ul li:after{
67
+ position: absolute;
68
+ top: 0;
69
+ left: 0;
70
+ width: 100%;
71
+ height: 100%;
72
+ background: rgba(0, 0, 0, 0.25);
73
+ content: '';
74
+ }
75
+
76
+ .widget_bttk_custom_categories ul li a{
77
+ display: block;
78
+ width: 100%;
79
+ height: 100%;
80
+ color: #fff;
81
+ overflow: hidden;
82
+ position: relative;
83
+ z-index: 1;
84
+ }
85
+
86
+ .widget_bttk_custom_categories ul li .cat-title{
87
+ float: left;
88
+ font-size: 14px;
89
+ text-transform: uppercase;
90
+ }
91
+
92
+ .widget_bttk_custom_categories ul li .post-count{
93
+ float: right;
94
+ font-size: 13px;
95
+ width: 99px;
96
+ height: 48px;
97
+ background: #111;
98
+ text-align: center;
99
+ line-height: 48px;
100
+ -webkit-transition: linear 0.2s;
101
+ -moz-transition: linear 0.2s;
102
+ transition: linear 0.2s;
103
+ }
104
+
105
+ .widget_bttk_custom_categories ul li a:hover .post-count,
106
+ .widget_bttk_custom_categories ul li a:hover:focus .post-count{
107
+ width: 124px;
108
+ }
109
+
110
+ /*================================
111
+ Popular post style
112
+ ================================*/
113
+ .widget_bttk_popular_post ul li,
114
+ .widget_bttk_pro_recent_post ul li{
115
+ overflow: hidden;
116
+ }
117
+
118
+ .widget_bttk_popular_post ul li .post-thumbnail,
119
+ .widget_bttk_pro_recent_post ul li .post-thumbnail{
120
+ float: left;
121
+ width: 80px;
122
+ height: 80px;
123
+ margin-right: 20px;
124
+ }
125
+
126
+ .widget_bttk_popular_post ul li .post-thumbnail img,
127
+ .widget_bttk_pro_recent_post ul li .post-thumbnail img{
128
+ vertical-align: top;
129
+ width: 100%;
130
+ height: 100%;
131
+ object-fit: cover;
132
+ }
133
+
134
+ .widget_bttk_popular_post ul li .entry-header,
135
+ .widget_bttk_pro_recent_post ul li .entry-header{
136
+ overflow: hidden;
137
+ }
138
+
139
+ .widget_bttk_popular_post ul li .entry-header .entry-title,
140
+ .widget_bttk_pro_recent_post ul li .entry-header .entry-title{
141
+ font-size: 18px;
142
+ line-height: 26px;
143
+ margin: 0;
144
+ }
145
+
146
+ .widget_bttk_popular_post ul li .entry-header .entry-meta,
147
+ .widget_bttk_pro_recent_post ul li .entry-header .entry-meta{
148
+ font-size: 14px;
149
+ line-height: 21px;
150
+ }
151
+
152
+ .widget_bttk_popular_post .style-two li .post-thumbnail,
153
+ .widget_bttk_pro_recent_post .style-two li .post-thumbnail{
154
+ width: 100%;
155
+ margin-right: 0;
156
+ margin-bottom: 20px;
157
+ height: 190px;
158
+ }
159
+
160
+ .widget_bttk_popular_post .style-two li .entry-header,
161
+ .widget_bttk_pro_recent_post .style-two li .entry-header{
162
+ width: 100%;
163
+ text-align: center;
164
+ padding: 0 15px;
165
+ }
166
+
167
+ .widget_bttk_popular_post .style-three li .post-thumbnail,
168
+ .widget_bttk_pro_recent_post .style-three li .post-thumbnail{
169
+ height: 190px;
170
+ margin: 0 0 -40px;
171
+ width: 100%;
172
+ }
173
+
174
+ .widget_bttk_popular_post .style-three li .entry-header,
175
+ .widget_bttk_pro_recent_post .style-three li .entry-header{
176
+ background: #fff none repeat scroll 0 0;
177
+ margin: 0 auto;
178
+ max-width: 92%;
179
+ padding: 13px 15px 0;
180
+ position: relative;
181
+ text-align: center;
182
+ width: 100%;
183
+ }
184
+
185
+ .widget_bttk_popular_post ul li .entry-header .cat-links,
186
+ .widget_bttk_pro_recent_post ul li .entry-header .cat-links{display: none;}
187
+
188
+ .widget_bttk_popular_post .style-two li .entry-header .cat-links,
189
+ .widget_bttk_pro_recent_post .style-two li .entry-header .cat-links,
190
+ .widget_bttk_popular_post .style-three li .entry-header .cat-links,
191
+ .widget_bttk_pro_recent_post .style-three li .entry-header .cat-links{
192
+ display: block;
193
+ font-size: 14px;
194
+ font-weight: 500;
195
+ }
196
+
197
+ .widget_bttk_popular_post .style-two li .entry-header .cat-links a,
198
+ .widget_bttk_pro_recent_post .style-two li .entry-header .cat-links a,
199
+ .widget_bttk_popular_post .style-three li .entry-header .cat-links a,
200
+ .widget_bttk_pro_recent_post .style-three li .entry-header .cat-links a{
201
+ margin: 0 3px;
202
+ }
203
+
204
+ /*====================================
205
+ Social icon style
206
+ ===================================*/
207
+ .widget_bttk_social_links ul{
208
+ margin: 0 -2px;
209
+ overflow: hidden;
210
+ }
211
+
212
+ .widget_bttk_social_links ul li{
213
+ float: left;
214
+ padding: 0 2px;
215
+ margin: 0 0 4px;
216
+ }
217
+
218
+ .widget_bttk_social_links ul li a{
219
+ display: block;
220
+ width: 63px;
221
+ height: 63px;
222
+ background: #111;
223
+ color: #fff;
224
+ text-align: center;
225
+ line-height: 63px;
226
+ }
227
+
228
+ /*================================
229
+ Featured post slider style
230
+ ================================*/
231
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-nav [class*="owl-"]{
232
+ margin: 0;
233
+ width: 40px;
234
+ height: 40px;
235
+ font-size: 0;
236
+ background: rgba(0, 0, 0, 0.75);
237
+ border-radius: 0;
238
+ position: absolute;
239
+ -webkit-transition: ease 0.2s;
240
+ -moz-transition: ease 0.2s;
241
+ transition: ease 0.2s;
242
+ }
243
+
244
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-prev{
245
+ top: 75px;
246
+ left: 0;
247
+ }
248
+
249
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-prev:after{
250
+ content: '';
251
+ background-image: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M4.2 247.5L151 99.5c4.7-4.7 12.3-4.7 17 0l19.8 19.8c4.7 4.7 4.7 12.3 0 17L69.3 256l118.5 119.7c4.7 4.7 4.7 12.3 0 17L168 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 264.5c-4.7-4.7-4.7-12.3 0-17z"></path></svg>');
252
+ background-repeat: no-repeat;
253
+ width: 10px;
254
+ height: 20px;
255
+ position: absolute;
256
+ top: 50%;
257
+ left: 50%;
258
+ -webkit-transform: translate(-50%, -50%);
259
+ -moz-transform: translate(-50%, -50%);
260
+ transform: translate(-50%, -50%);
261
+ }
262
+
263
+ .widget_bttk_posts_category_slider_widget .owl-next{
264
+ top: 75px;
265
+ right: 0;
266
+ }
267
+
268
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-next:after{
269
+ content: '';
270
+ background-image: url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M187.8 264.5L41 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 392.7c-4.7-4.7-4.7-12.3 0-17L122.7 256 4.2 136.3c-4.7-4.7-4.7-12.3 0-17L24 99.5c4.7-4.7 12.3-4.7 17 0l146.8 148c4.7 4.7 4.7 12.3 0 17z"></path></svg>');
271
+ background-repeat: no-repeat;
272
+ width: 10px;
273
+ height: 20px;
274
+ position: absolute;
275
+ top: 50%;
276
+ left: 50%;
277
+ -webkit-transform: translate(-50%, -50%);
278
+ -moz-transform: translate(-50%, -50%);
279
+ transform: translate(-50%, -50%);
280
+ }
281
+
282
+ .widget_bttk_posts_category_slider_widget .post-thumbnail{
283
+ display: block;
284
+ margin-bottom: 15px;
285
+ }
286
+
287
+ .widget_bttk_posts_category_slider_widget .carousel-title{
288
+ text-align: center;
289
+ }
290
+
291
+ .widget_bttk_posts_category_slider_widget .carousel-title .cat-links{
292
+ display: block;
293
+ font-size: 14px;
294
+ font-weight: 500;
295
+ }
296
+
297
+ .widget_bttk_posts_category_slider_widget .carousel-title .cat-links a{margin: 0 3px;}
298
+
299
+ .widget_bttk_posts_category_slider_widget .carousel-title .title{
300
+ font-size: 18px;
301
+ line-height: 26px;
302
+ font-weight: 400;
303
+ }
304
+
305
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span{
306
+ margin: 0 3px;
307
+ background: #eee;
308
+ }
309
+
310
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span:hover,
311
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span:hover{
312
+ background: #111;
313
+ }
314
+
315
+ .widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot.active span{
316
+ background: #111;
317
+ }
318
+
319
+ /*========================
320
+ Image text widget
321
+ ========================*/
322
+ .widget_bttk_image_text_widget ul li{
323
+ position: relative;
324
+ }
325
+
326
+ .widget_bttk_image_text_widget ul li .btn-readmore{
327
+ position: absolute;
328
+ width: 70%;
329
+ text-align: center;
330
+ top: 50%;
331
+ left: 50%;
332
+ color: #fff;
333
+ background: #111;
334
+ text-transform: uppercase;
335
+ letter-spacing: 1px;
336
+ padding: 12px 29px 9px 32px;
337
+ -webkit-transform: translate(-50%, -50%);
338
+ -moz-transform: translate(-50%, -50%);
339
+ transform: translate(-50%, -50%);
340
+ -webkit-transition: ease 0.2s;
341
+ -moz-transition: ease 0.2s;
342
+ transition: ease 0.2s;
343
+ }
344
+
345
+ .widget-area ul{
346
+ margin: 0;
347
+ padding: 0;
348
+ list-style: none;
349
+ }
350
+
351
+ .widget-area ul li{
352
+ margin: 0 0 20px;
353
+ }
354
+
355
+ /*==========================
356
+ widget CTA style
357
+ ==========================*/
358
+ .widget_raratheme_companion_cta_widget .widget-content{
359
+ position: relative;
360
+ }
361
+
362
+ .widget_raratheme_companion_cta_widget .widget-content.bg-image:after{
363
+ content: '';
364
+ position: absolute;
365
+ top: 0;
366
+ left: 0;
367
+ width: 100%;
368
+ height: 100%;
369
+ background: rgba(0, 0, 0, 0.5);
370
+ }
371
+
372
+ .widget_raratheme_companion_cta_widget .widget-content .text-holder{
373
+ position: relative;
374
+ z-index: 1;
375
+ color: #fff;
376
+ text-align: center;
377
+ padding: 30px 15px;
378
+ }
379
+
380
+ .widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta{
381
+ display: inline-block;
382
+ margin: 0 3px;
383
+ background: #f7f7f7;
384
+ color: #555;
385
+ border-radius: 3px;
386
+ padding: 5px 15px;
387
+ text-decoration: none;
388
+ font-size: 15px;
389
+ border: 1px solid #ccc;
390
+ -webkit-transition: linear 0.2s;
391
+ -moz-transition: linear 0.2s;
392
+ transition: linear 0.2s;
393
+ }
394
+
395
+ .widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:hover,
396
+ .widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:focus{
397
+ text-decoration: none;
398
+ background: none;
399
+ color: #fff;
400
+ }
401
+
402
+ /*===============================
403
+ Featured Post widget style
404
+ ===============================*/
405
+ .widget_raratheme_featured_widget .img-holder{
406
+ margin-bottom: 30px;
407
+ }
408
+
409
+ .widget_raratheme_featured_widget .img-holder a{display: block;}
410
+
411
+ .widget_raratheme_featured_widget .img-holder img{
412
+ vertical-align: top;
413
+ }
414
+
415
+ .widget_raratheme_featured_widget .text-holder .readmore{
416
+ display: inline-block;
417
+ background: #f7f7f7;
418
+ color: #555;
419
+ border-radius: 3px;
420
+ padding: 5px 15px;
421
+ text-decoration: none;
422
+ font-size: 15px;
423
+ border: 1px solid #ccc;
424
+ -webkit-transition: linear 0.2s;
425
+ -moz-transition: linear 0.2s;
426
+ transition: linear 0.2s;
427
+ }
428
+
429
+ .widget_raratheme_featured_widget .text-holder .readmore:hover,
430
+ .widget_raratheme_featured_widget .text-holder .readmore:focus{
431
+ background: none;
432
+ text-decoration: none;
433
+ }
434
+
435
+ /*=====================================
436
+ Icon Text Widget style
437
+ =====================================*/
438
+ .widget_raratheme_icon_text_widget .icon-holder{
439
+ font-size: 30px;
440
+ margin: 0 0 15px;
441
+ }
442
+
443
+ /*=============================
444
+ Image widget
445
+ =============================*/
446
+ .widget_raratheme_image_widget .image-holder{margin: 0 0 20px;}
447
+
448
+ .widget_raratheme_image_widget .image-holder img{vertical-align: top}
449
+
450
+ .widget_raratheme_image_widget .image-holder a{display: block;}
451
+
452
+ .widget_raratheme_image_widget .readmore{
453
+ display: inline-block;
454
+ background: #f7f7f7;
455
+ color: #555;
456
+ border-radius: 3px;
457
+ padding: 5px 15px;
458
+ text-decoration: none;
459
+ font-size: 15px;
460
+ border: 1px solid #ccc;
461
+ -webkit-transition: linear 0.2s;
462
+ -moz-transition: linear 0.2s;
463
+ transition: linear 0.2s;
464
+ }
465
+
466
+ .widget_raratheme_image_widget .readmore:hover,
467
+ .widget_raratheme_image_widget .readmore:focus{
468
+ background: none;
469
+ text-decoration: none;
470
+ }
471
+
472
+ /*==========================
473
+ Popular post style
474
+ ==========================*/
475
+ .widget_raratheme_popular_post ul li,
476
+ .widget_raratheme_recent_post ul li{overflow: hidden}
477
+
478
+ .widget_raratheme_popular_post ul li .post-thumbnail,
479
+ .widget_raratheme_recent_post ul li .post-thumbnail{
480
+ float: left;
481
+ width: 68px;
482
+ margin-right: 15px;
483
+ }
484
+
485
+ .widget_raratheme_popular_post ul li .post-thumbnail img,
486
+ .widget_raratheme_recent_post ul li .post-thumbnail img{vertical-align: top;}
487
+
488
+ .widget_raratheme_popular_post ul li .entry-header,
489
+ .widget_raratheme_recent_post ul li .entry-header{overflow: hidden;}
490
+
491
+ .widget_raratheme_popular_post ul li .entry-header .entry-title,
492
+ .widget_raratheme_recent_post ul li .entry-header .entry-title{
493
+ margin: 0 0 5px;
494
+ font-size: 15px;
495
+ line-height: 18px;
496
+ }
497
+
498
+ .widget_raratheme_popular_post ul li .entry-header .entry-title a,
499
+ .widget_raratheme_recent_post ul li .entry-header .entry-title a{text-decoration: none;}
500
+
501
+ .widget_raratheme_popular_post ul li .entry-header .entry-meta,
502
+ .widget_raratheme_recent_post ul li .entry-header .entry-meta{
503
+ font-size: 14px;
504
+ line-height: 18px;
505
+ }
506
+
507
+ .widget_raratheme_popular_post ul li .entry-header .view-count{
508
+ font-size: 14px;
509
+ line-height: 18px;
510
+ }
511
+
512
+ .widget_raratheme_popular_post ul li .entry-header .comment-count{
513
+ font-size: 14px;
514
+ line-height: 18px;
515
+ }
516
+
517
+ .widget_raratheme_popular_post ul li .entry-header .comment-count .fa{margin-right: 5px;}
518
+
519
+ /*=====================================
520
+ Widget social networks style
521
+ =====================================*/
522
+ .widget_raratheme_social_links ul{
523
+ font-size: 15px;
524
+ overflow: hidden
525
+ }
526
+
527
+ .widget_raratheme_social_links ul li{
528
+ float: left;
529
+ margin-right: 3px;
530
+ }
531
+
532
+ .widget_raratheme_social_links ul li a{
533
+ display: block;
534
+ width: 30px;
535
+ height: 30px;
536
+ background: #000;
537
+ color: #fff;
538
+ text-align: center;
539
+ line-height: 30px;
540
+ -webkit-transition: linear 0.2s;
541
+ -moz-transition: linear 0.2s;
542
+ transition: linear 0.2s;
543
+ }
544
+
545
+ .widget_raratheme_social_links ul li a:hover,
546
+ .widget_raratheme_social_links ul li a:focus{
547
+ border-radius: 50%;
548
+ }
549
+
550
+ .widget_raratheme_social_links ul li a[href*='facebook']{background: #3B5998;}
551
+
552
+ .widget_raratheme_social_links ul li a[href*='twitter']{background: #1DA1F2;}
553
+
554
+ .widget_raratheme_social_links ul li a[href*='flickr']{background: #0063DB;}
555
+
556
+ .widget_raratheme_social_links ul li a[href*='vimeo']{background: #23B6EA;}
557
+
558
+ .widget_raratheme_social_links ul li a[href*='youtube']{background: #CB1F1F;}
559
+
560
+ .widget_raratheme_social_links ul li a[href*='google']{background: #D51F1E;}
561
+
562
+ .widget_raratheme_social_links ul li a[href*='ok.ru']{background: #EE8208;}
563
+
564
+ .widget_raratheme_social_links ul li a[href*='vk']{background: #466991;}
565
+
566
+ .widget_raratheme_social_links ul li a[href*='xing']{background: #005A5F;}
567
+
568
+ .widget_raratheme_social_links ul li a[href*='stumbleupon']{background: #EB4823;}
569
+
570
+ .widget_raratheme_social_links ul li a[href*='pinterest']{background: #CB2027;}
571
+
572
+ .widget_raratheme_social_links ul li a[href*='dribbble']{background: #E84C88;}
573
+
574
+ .widget_raratheme_social_links ul li a[href*='linkedin']{background: #0274B3;}
575
+
576
+ .widget_raratheme_social_links ul li a[href*='rss']{background: #FFA500;}
577
+
578
+ .widget_raratheme_social_links ul li a[href*='tumblr']{background: #2E4F6E;}
579
+
580
+ .widget_raratheme_social_links ul li a[href*='instagram']{background: #895A4D;}
581
+
582
+ /*================================
583
+ counter widget style
584
+ ================================*/
585
+ .widget_raratheme_companion_stat_counter_widget .icon-holder{
586
+ font-size: 30px;
587
+ margin: 0 0 15px;
588
+ }
589
+
590
+ .widget_raratheme_companion_stat_counter_widget .odometer.odometer-auto-theme, .odometer.odometer-theme-default{
591
+ font-size: 25px;
592
+ font-weight: 700;
593
+ }
594
+ ul.accordion {
595
+ list-style: none;
596
+ }
597
+ ul.accordion .inner {
598
+ display: none;
599
+ }
600
+ ul.accordion li {
601
+ margin: .5em 0;
602
+ }
603
+ ul.accordion li a.toggle {
604
+ display: block;
605
+ }
606
+
607
+ .odometer.odometer-auto-theme,
608
+ .odometer.odometer-theme-default {
609
+ vertical-align: middle;
610
+ vertical-align: auto;
611
+ zoom: 1;
612
+ display: inline;
613
+ position: relative;
614
+ }
615
+
616
+ .odometer.odometer-auto-theme .odometer-digit,
617
+ .odometer.odometer-theme-default .odometer-digit {
618
+ vertical-align: middle;
619
+ vertical-align: auto;
620
+ zoom: 1;
621
+ display: inline;
622
+ position: relative;
623
+ }
624
+
625
+ .odometer.odometer-auto-theme .odometer-digit .odometer-digit-spacer,
626
+ .odometer.odometer-theme-default .odometer-digit .odometer-digit-spacer {
627
+ vertical-align: middle;
628
+ vertical-align: auto;
629
+ zoom: 1;
630
+ display: inline;
631
+ visibility: hidden;
632
+ }
633
+
634
+ .odometer.odometer-auto-theme .odometer-digit .odometer-digit-inner,
635
+ .odometer.odometer-theme-default .odometer-digit .odometer-digit-inner {
636
+ text-align: left;
637
+ display: block;
638
+ position: absolute;
639
+ top: 0;
640
+ left: 0;
641
+ right: 0;
642
+ bottom: 0;
643
+ overflow: hidden;
644
+ }
645
+
646
+ .odometer.odometer-auto-theme .odometer-digit .odometer-ribbon,
647
+ .odometer.odometer-theme-default .odometer-digit .odometer-ribbon {
648
+ display: block;
649
+ }
650
+
651
+ .odometer.odometer-auto-theme .odometer-digit .odometer-ribbon-inner,
652
+ .odometer.odometer-theme-default .odometer-digit .odometer-ribbon-inner {
653
+ display: block;
654
+ -webkit-backface-visibility: hidden;
655
+ }
656
+
657
+ .odometer.odometer-auto-theme .odometer-digit .odometer-value,
658
+ .odometer.odometer-theme-default .odometer-digit .odometer-value {
659
+ display: block;
660
+ -webkit-transform: translateZ(0);
661
+ -moz-transform: translateZ(0);
662
+ transform: translateZ(0);
663
+ }
664
+
665
+ .odometer.odometer-auto-theme .odometer-digit .odometer-value.odometer-last-value,
666
+ .odometer.odometer-theme-default .odometer-digit .odometer-value.odometer-last-value {
667
+ position: absolute;
668
+ }
669
+
670
+ .odometer.odometer-auto-theme.odometer-animating-up .odometer-ribbon-inner,
671
+ .odometer.odometer-theme-default.odometer-animating-up .odometer-ribbon-inner {
672
+ -webkit-transition: -webkit-transform 2s;
673
+ -moz-transition: -moz-transform 2s;
674
+ -ms-transition: -ms-transform 2s;
675
+ -o-transition: -o-transform 2s;
676
+ transition: transform 2s;
677
+ }
678
+
679
+ .odometer.odometer-auto-theme.odometer-animating-up.odometer-animating .odometer-ribbon-inner,
680
+ .odometer.odometer-theme-default.odometer-animating-up.odometer-animating .odometer-ribbon-inner {
681
+ -webkit-transform: translateY(-100%);
682
+ -moz-transform: translateY(-100%);
683
+ -ms-transform: translateY(-100%);
684
+ -o-transform: translateY(-100%);
685
+ transform: translateY(-100%);
686
+ }
687
+
688
+ .odometer.odometer-auto-theme.odometer-animating-down .odometer-ribbon-inner,
689
+ .odometer.odometer-theme-default.odometer-animating-down .odometer-ribbon-inner {
690
+ -webkit-transform: translateY(-100%);
691
+ -moz-transform: translateY(-100%);
692
+ -ms-transform: translateY(-100%);
693
+ -o-transform: translateY(-100%);
694
+ transform: translateY(-100%);
695
+ }
696
+
697
+ .odometer.odometer-auto-theme.odometer-animating-down.odometer-animating .odometer-ribbon-inner,
698
+ .odometer.odometer-theme-default.odometer-animating-down.odometer-animating .odometer-ribbon-inner {
699
+ -webkit-transition: -webkit-transform 2s;
700
+ -moz-transition: -moz-transform 2s;
701
+ -ms-transition: -ms-transform 2s;
702
+ -o-transition: -o-transform 2s;
703
+ transition: transform 2s;
704
+ -webkit-transform: translateY(0);
705
+ -moz-transform: translateY(0);
706
+ -ms-transform: translateY(0);
707
+ -o-transform: translateY(0);
708
+ transform: translateY(0);
709
+ }
710
+
711
+ .odometer.odometer-auto-theme .odometer-value,
712
+ .odometer.odometer-theme-default .odometer-value {
713
+ text-align: center;
714
+ }
715
+
716
+ /*================================
717
+ client logo widget style
718
+ ================================*/
719
+ .widget_blossom_client_logo_widget .image-holder img{
720
+ max-width: 190px;
721
+ }
722
+
723
+ /** Portfolio */
724
+ .portfolio-holder .portfolio-sorting {
725
+ text-align: center;
726
+ text-transform: uppercase;
727
+ }
728
+
729
+ .portfolio-sorting .button {
730
+ margin: 0 30px 40px 30px;
731
+ background: none;
732
+ border: none;
733
+ font-weight: 400;
734
+ font-size: 16px;
735
+ cursor: pointer;
736
+ padding: 0;
737
+ color: #000;
738
+ }
739
+
740
+ .portfolio-sorting .button:hover,
741
+ .portfolio-sorting .button.is-checked {
742
+ color: #777;
743
+ }
744
+
745
+ .portfolio-img-holder .portfolio-item {
746
+ float: left;
747
+ width: 33.33%;
748
+ padding: 15px;
749
+
750
+ }
751
+
752
+ .portfolio-item img {
753
+ vertical-align: top;
754
+ }
755
+
756
+ .portfolio-item .portfolio-item-inner {
757
+ position: relative;
758
+ overflow: hidden;
759
+ }
760
+
761
+ .portfolio-item .portfolio-text-holder {
762
+ font-size: 14px;
763
+ font-weight: 600;
764
+ position: absolute;
765
+ top: 0;
766
+ bottom: 0;
767
+ left: 0;
768
+ right: 0;
769
+ background: -webkit-linear-gradient(transparent, rgba(0,0,0,0.65));
770
+ background: -moz-linear-gradient(transparent, rgba(0,0,0,0.65));
771
+ background: -ms-linear-gradient(transparent, rgba(0,0,0,0.65));
772
+ background: -o-linear-gradient(transparent, rgba(0,0,0,0.65));
773
+ background: linear-gradient(transparent, rgba(0,0,0,0.65));
774
+ text-align: center;
775
+ padding: 0 20px;
776
+ display: flex;
777
+ flex-direction: column;
778
+ flex: 1;
779
+ justify-content: flex-end;
780
+ opacity: 0;
781
+ visibility: hidden;
782
+ -webkit-transition: all ease 0.35s;
783
+ -moz-transition: all ease 0.35s;
784
+ transition: all ease 0.35s;
785
+ }
786
+
787
+ .portfolio-item-inner:hover .portfolio-text-holder {
788
+ padding-top: 30px;
789
+ padding-bottom: 30px;
790
+ opacity: 1;
791
+ filter: alpha(opacity=100);
792
+ visibility: visible;
793
+ }
794
+
795
+ .portfolio-item .portfolio-cat a {
796
+ color: #fff;
797
+ text-decoration: none;
798
+ padding-right: 10px;
799
+ display: inline-block;
800
+ margin-bottom: 5px;
801
+ }
802
+ .portfolio-item .portfolio-cat a:last-child {
803
+ padding-right: 0;
804
+ }
805
+
806
+ .portfolio-text-holder .portfolio-img-title {
807
+ font-size: 24px;
808
+ font-weight: 600;
809
+ }
810
+
811
+ .portfolio-item .portfolio-img-title a {
812
+ color: #fff;
813
+ text-decoration: none;
814
+ }
815
+
816
+ .portfolio-item a:hover {
817
+ color: #ddd;
818
+ }
819
+
820
+ .portfolio-holder .post-thumbnail {
821
+ margin: 0 0 35px 0;
822
+ text-align: center;
823
+ }
824
+
825
+ .portfolio-holder .entry-header {
826
+ border-bottom: 1px solid #eee;
827
+ margin-bottom: 30px;
828
+ padding-bottom: 30px;
829
+ }
830
+
831
+ .entry-header .portfolio-cat a {
832
+ color: #777;
833
+ text-decoration: none;
834
+ margin-right: 10px;
835
+ }
836
+
837
+ .entry-header .portfolio-cat a:last-child {
838
+ margin-right: 0;
839
+ }
840
+
841
+ .portfolio-holder .entry-header .entry-title {
842
+ color: #000;
843
+ margin: 10px 0 0 0;
844
+ font-size: 3em;
845
+ }
846
+
847
+ .portfolio-holder .entry-header,
848
+ .portfolio-holder .entry-content {
849
+ margin-left: auto;
850
+ margin-right: auto;
851
+ max-width: 80%;
852
+ }
853
+
854
+ .portfolio-holder .entry-content {
855
+ color: #555;
856
+ line-height: 1.6;
857
+ }
858
+
859
+ .related-portfolio {
860
+ margin-top: 80px;
861
+ }
862
+
863
+ .related-portfolio-title {
864
+ text-align: center;
865
+ margin-bottom: 30px;
866
+ font-size: 22px;
867
+ }
868
+
869
+ .related-portfolio .portfolio-img-holder:before,
870
+ .related-portfolio .portfolio-img-holder:after {
871
+ content: "";
872
+ display: table;
873
+ height: 0;
874
+ width: 0;
875
+ line-height: 0;
876
+ }
877
+
878
+ .related-portfolio .portfolio-img-holder:after {
879
+ clear: both;
880
+ }
881
+
882
+ .related-portfolio .portfolio-item .portfolio-text-holder {
883
+ opacity: 1;
884
+ visibility: visible;
885
+ padding: 30px 20px;
886
+ }
887
+ /** Portfolio Ends */
888
+
889
+ @media only screen and (max-width: 1024px){
890
+ .archive .trip-content-area .grid .btn-loadmore{
891
+ grid-column: 1 / span 2
892
+ }
893
+
894
+ .portfolio-img-holder .portfolio-item {
895
+ width: 50%;
896
+ }
897
+ }
898
+
899
+ @media only screen and (max-width: 767px){
900
+ .archive .trip-content-area .grid .btn-loadmore{
901
+ grid-column: 1 / span 1
902
+ }
903
+
904
+ .portfolio-img-holder .portfolio-item {
905
+ width: 100%;
906
+ float: none;
907
+ padding-left: 0;
908
+ padding-right: 0;
909
+ }
910
+
911
+ .portfolio-holder .entry-header,
912
+ .portfolio-holder .entry-content {
913
+ max-width: 100%;
914
+ }
915
  }
public/css/blossomthemes-toolkit-public.min.css CHANGED
@@ -1 +1 @@
1
- .widget_bttk_author_bio .image-holder img,.widget_raratheme_featured_widget .img-holder img,.widget_raratheme_image_widget .image-holder img,.widget_raratheme_popular_post ul li .post-thumbnail img,.widget_raratheme_recent_post ul li .post-thumbnail img{vertical-align:top}.widget-area ul,ul.accordion{list-style:none}.widget_bttk_author_bio{text-align:center}.widget_bttk_author_bio .image-holder{margin:0 0 30px}.widget_bttk_author_bio .title-holder{font-size:28px;line-height:32px;margin:0 0 20px}.widget_bttk_author_bio .text-signature{font-family:'Dancing Script',cursive;font-size:30px;color:#000;font-style:italic;line-height:1.3;margin-bottom:10px}.widget_bttk_author_bio .signature-holder{margin-bottom:10px}.widget_bttk_author_bio .readmore{display:inline-block;padding:10px 30px;background:#ccc;margin:0 0 30px}.widget_bttk_author_bio .author-socicons{margin:0;padding:0;list-style:none}.widget_bttk_author_bio .author-socicons li{display:inline-block;margin:0 3px}.widget_bttk_custom_categories ul li{background-size:cover;width:100%;height:100%;position:relative}.widget_bttk_custom_categories ul li:after{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.25);content:''}.widget_bttk_custom_categories ul li a{display:block;width:100%;height:100%;color:#fff;overflow:hidden;position:relative;z-index:1}.widget_bttk_custom_categories ul li .cat-title{float:left;font-size:14px;text-transform:uppercase}.widget_bttk_custom_categories ul li .post-count{float:right;font-size:13px;width:99px;height:48px;background:#111;text-align:center;line-height:48px;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_bttk_custom_categories ul li a:hover .post-count,.widget_bttk_custom_categories ul li a:hover:focus .post-count{width:124px}.widget_bttk_popular_post ul li,.widget_bttk_pro_recent_post ul li{overflow:hidden}.widget_bttk_popular_post ul li .post-thumbnail,.widget_bttk_pro_recent_post ul li .post-thumbnail{float:left;width:80px;height:80px;margin-right:20px}.widget_bttk_popular_post ul li .post-thumbnail img,.widget_bttk_pro_recent_post ul li .post-thumbnail img{vertical-align:top;width:100%;height:100%;object-fit:cover}.widget_bttk_popular_post ul li .entry-header,.widget_bttk_pro_recent_post ul li .entry-header{overflow:hidden}.widget_bttk_popular_post ul li .entry-header .entry-title,.widget_bttk_pro_recent_post ul li .entry-header .entry-title{font-size:18px;line-height:26px;margin:0}.widget_bttk_popular_post ul li .entry-header .entry-meta,.widget_bttk_pro_recent_post ul li .entry-header .entry-meta{font-size:14px;line-height:21px}.widget_bttk_popular_post .style-two li .post-thumbnail,.widget_bttk_pro_recent_post .style-two li .post-thumbnail{width:100%;margin-right:0;margin-bottom:20px;height:190px}.widget_bttk_popular_post .style-two li .entry-header,.widget_bttk_pro_recent_post .style-two li .entry-header{width:100%;text-align:center;padding:0 15px}.widget_bttk_popular_post .style-three li .post-thumbnail,.widget_bttk_pro_recent_post .style-three li .post-thumbnail{height:190px;margin:0 0 -40px;width:100%}.widget_bttk_popular_post .style-three li .entry-header,.widget_bttk_pro_recent_post .style-three li .entry-header{background:#fff;margin:0 auto;max-width:92%;padding:13px 15px 0;position:relative;text-align:center;width:100%}.widget_bttk_popular_post ul li .entry-header .cat-links,.widget_bttk_pro_recent_post ul li .entry-header .cat-links{display:none}.widget_bttk_popular_post .style-three li .entry-header .cat-links,.widget_bttk_popular_post .style-two li .entry-header .cat-links,.widget_bttk_pro_recent_post .style-three li .entry-header .cat-links,.widget_bttk_pro_recent_post .style-two li .entry-header .cat-links{display:block;font-size:14px;font-weight:500}.widget_bttk_popular_post .style-three li .entry-header .cat-links a,.widget_bttk_popular_post .style-two li .entry-header .cat-links a,.widget_bttk_pro_recent_post .style-three li .entry-header .cat-links a,.widget_bttk_pro_recent_post .style-two li .entry-header .cat-links a{margin:0 3px}.widget_bttk_social_links ul{margin:0 -2px;overflow:hidden}.widget_bttk_social_links ul li{float:left;padding:0 2px;margin:0 0 4px}.widget_bttk_social_links ul li a{display:block;width:63px;height:63px;background:#111;color:#fff;text-align:center;line-height:63px}.widget_bttk_posts_category_slider_widget .owl-theme .owl-nav [class*=owl-]{margin:0;width:40px;height:40px;font-size:0;background:rgba(0,0,0,.75);border-radius:0;position:absolute;-webkit-transition:ease .2s;-moz-transition:ease .2s;transition:ease .2s}.widget_bttk_posts_category_slider_widget .owl-theme .owl-next:after,.widget_bttk_posts_category_slider_widget .owl-theme .owl-prev:after{background-repeat:no-repeat;width:10px;height:20px;position:absolute;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);content:''}.widget_bttk_posts_category_slider_widget .owl-theme .owl-prev{top:75px;left:0}.widget_bttk_posts_category_slider_widget .owl-theme .owl-prev:after{background-image:url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M4.2 247.5L151 99.5c4.7-4.7 12.3-4.7 17 0l19.8 19.8c4.7 4.7 4.7 12.3 0 17L69.3 256l118.5 119.7c4.7 4.7 4.7 12.3 0 17L168 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 264.5c-4.7-4.7-4.7-12.3 0-17z"></path></svg>');top:50%;left:50%;transform:translate(-50%,-50%)}.widget_bttk_posts_category_slider_widget .owl-next{top:75px;right:0}.widget_bttk_posts_category_slider_widget .owl-theme .owl-next:after{background-image:url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M187.8 264.5L41 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 392.7c-4.7-4.7-4.7-12.3 0-17L122.7 256 4.2 136.3c-4.7-4.7-4.7-12.3 0-17L24 99.5c4.7-4.7 12.3-4.7 17 0l146.8 148c4.7 4.7 4.7 12.3 0 17z"></path></svg>');top:50%;left:50%;transform:translate(-50%,-50%)}.widget_bttk_posts_category_slider_widget .post-thumbnail{display:block;margin-bottom:15px}.widget_bttk_posts_category_slider_widget .carousel-title{text-align:center}.widget_bttk_posts_category_slider_widget .carousel-title .cat-links{display:block;font-size:14px;font-weight:500}.widget_bttk_posts_category_slider_widget .carousel-title .cat-links a{margin:0 3px}.widget_bttk_posts_category_slider_widget .carousel-title .title{font-size:18px;line-height:26px;font-weight:400}.widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span{margin:0 3px;background:#eee}.widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span:hover,.widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot.active span{background:#111}.widget_bttk_image_text_widget ul li{position:relative}.widget_bttk_image_text_widget ul li .btn-readmore{position:absolute;width:70%;text-align:center;top:50%;left:50%;color:#fff;background:#111;text-transform:uppercase;letter-spacing:1px;padding:12px 29px 9px 32px;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:ease .2s;-moz-transition:ease .2s;transition:ease .2s}.widget-area ul{margin:0;padding:0}.widget-area ul li{margin:0 0 20px}.widget_raratheme_companion_cta_widget .widget-content{position:relative}.widget_raratheme_companion_cta_widget .widget-content.bg-image:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5)}.widget_raratheme_companion_cta_widget .widget-content .text-holder{position:relative;z-index:1;color:#fff;text-align:center;padding:30px 15px}.widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta{display:inline-block;margin:0 3px;background:#f7f7f7;color:#555;border-radius:3px;padding:5px 15px;text-decoration:none;font-size:15px;border:1px solid #ccc;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:focus,.widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:hover{text-decoration:none;background:0 0;color:#fff}.widget_raratheme_featured_widget .text-holder .readmore,.widget_raratheme_image_widget .readmore{color:#555;padding:5px 15px;-webkit-transition:linear .2s;-moz-transition:linear .2s;text-decoration:none}.widget_raratheme_featured_widget .img-holder{margin-bottom:30px}.widget_raratheme_featured_widget .img-holder a{display:block}.widget_raratheme_featured_widget .text-holder .readmore{display:inline-block;background:#f7f7f7;border-radius:3px;font-size:15px;border:1px solid #ccc;transition:linear .2s}.widget_raratheme_featured_widget .text-holder .readmore:focus,.widget_raratheme_featured_widget .text-holder .readmore:hover{background:0 0;text-decoration:none}.widget_raratheme_icon_text_widget .icon-holder{font-size:30px;margin:0 0 15px}.widget_raratheme_image_widget .image-holder{margin:0 0 20px}.widget_raratheme_image_widget .image-holder a{display:block}.widget_raratheme_image_widget .readmore{display:inline-block;background:#f7f7f7;border-radius:3px;font-size:15px;border:1px solid #ccc;transition:linear .2s}.widget_raratheme_image_widget .readmore:focus,.widget_raratheme_image_widget .readmore:hover{background:0 0;text-decoration:none}.widget_raratheme_popular_post ul li,.widget_raratheme_recent_post ul li{overflow:hidden}.widget_raratheme_popular_post ul li .post-thumbnail,.widget_raratheme_recent_post ul li .post-thumbnail{float:left;width:68px;margin-right:15px}.widget_raratheme_popular_post ul li .entry-header,.widget_raratheme_recent_post ul li .entry-header{overflow:hidden}.widget_raratheme_popular_post ul li .entry-header .entry-title,.widget_raratheme_recent_post ul li .entry-header .entry-title{margin:0 0 5px;font-size:15px;line-height:18px}.widget_raratheme_popular_post ul li .entry-header .entry-title a,.widget_raratheme_recent_post ul li .entry-header .entry-title a{text-decoration:none}.widget_raratheme_popular_post ul li .entry-header .comment-count,.widget_raratheme_popular_post ul li .entry-header .entry-meta,.widget_raratheme_popular_post ul li .entry-header .view-count,.widget_raratheme_recent_post ul li .entry-header .entry-meta{font-size:14px;line-height:18px}.widget_raratheme_popular_post ul li .entry-header .comment-count .fa{margin-right:5px}.widget_raratheme_social_links ul{font-size:15px;overflow:hidden}.widget_raratheme_social_links ul li{float:left;margin-right:3px}.widget_raratheme_social_links ul li a{display:block;width:30px;height:30px;background:#000;color:#fff;text-align:center;line-height:30px;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_raratheme_social_links ul li a:focus,.widget_raratheme_social_links ul li a:hover{border-radius:50%}.widget_raratheme_social_links ul li a[href*=facebook]{background:#3B5998}.widget_raratheme_social_links ul li a[href*=twitter]{background:#1DA1F2}.widget_raratheme_social_links ul li a[href*=flickr]{background:#0063DB}.widget_raratheme_social_links ul li a[href*=vimeo]{background:#23B6EA}.widget_raratheme_social_links ul li a[href*=youtube]{background:#CB1F1F}.widget_raratheme_social_links ul li a[href*=google]{background:#D51F1E}.widget_raratheme_social_links ul li a[href*='ok.ru']{background:#EE8208}.widget_raratheme_social_links ul li a[href*=vk]{background:#466991}.widget_raratheme_social_links ul li a[href*=xing]{background:#005A5F}.widget_raratheme_social_links ul li a[href*=stumbleupon]{background:#EB4823}.widget_raratheme_social_links ul li a[href*=pinterest]{background:#CB2027}.widget_raratheme_social_links ul li a[href*=dribbble]{background:#E84C88}.widget_raratheme_social_links ul li a[href*=linkedin]{background:#0274B3}.widget_raratheme_social_links ul li a[href*=rss]{background:orange}.widget_raratheme_social_links ul li a[href*=tumblr]{background:#2E4F6E}.widget_raratheme_social_links ul li a[href*=instagram]{background:#895A4D}.widget_raratheme_companion_stat_counter_widget .icon-holder{font-size:30px;margin:0 0 15px}.odometer.odometer-theme-default,.widget_raratheme_companion_stat_counter_widget .odometer.odometer-auto-theme{font-size:25px;font-weight:700}ul.accordion .inner{display:none}ul.accordion li{margin:.5em 0}ul.accordion li a.toggle{display:block}.odometer.odometer-auto-theme,.odometer.odometer-auto-theme .odometer-digit,.odometer.odometer-theme-default,.odometer.odometer-theme-default .odometer-digit{vertical-align:middle;vertical-align:auto;zoom:1;display:inline;position:relative}.odometer.odometer-auto-theme .odometer-digit .odometer-digit-spacer,.odometer.odometer-theme-default .odometer-digit .odometer-digit-spacer{vertical-align:middle;vertical-align:auto;zoom:1;display:inline;visibility:hidden}.odometer.odometer-auto-theme .odometer-digit .odometer-digit-inner,.odometer.odometer-theme-default .odometer-digit .odometer-digit-inner{text-align:left;display:block;position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.odometer.odometer-auto-theme .odometer-digit .odometer-ribbon,.odometer.odometer-theme-default .odometer-digit .odometer-ribbon{display:block}.odometer.odometer-auto-theme .odometer-digit .odometer-ribbon-inner,.odometer.odometer-theme-default .odometer-digit .odometer-ribbon-inner{display:block;-webkit-backface-visibility:hidden}.odometer.odometer-auto-theme .odometer-digit .odometer-value,.odometer.odometer-theme-default .odometer-digit .odometer-value{display:block;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);transform:translateZ(0)}.odometer.odometer-auto-theme .odometer-digit .odometer-value.odometer-last-value,.odometer.odometer-theme-default .odometer-digit .odometer-value.odometer-last-value{position:absolute}.odometer.odometer-auto-theme.odometer-animating-up .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-up .odometer-ribbon-inner{-webkit-transition:-webkit-transform 2s;-moz-transition:-moz-transform 2s;-ms-transition:-ms-transform 2s;-o-transition:-o-transform 2s;transition:transform 2s}.odometer.odometer-auto-theme.odometer-animating-down .odometer-ribbon-inner,.odometer.odometer-auto-theme.odometer-animating-up.odometer-animating .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-down .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-up.odometer-animating .odometer-ribbon-inner{-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-ms-transform:translateY(-100%);-o-transform:translateY(-100%);transform:translateY(-100%)}.odometer.odometer-auto-theme.odometer-animating-down.odometer-animating .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-down.odometer-animating .odometer-ribbon-inner{-webkit-transition:-webkit-transform 2s;-moz-transition:-moz-transform 2s;-ms-transition:-ms-transform 2s;-o-transition:-o-transform 2s;transition:transform 2s;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)}.odometer.odometer-auto-theme .odometer-value,.odometer.odometer-theme-default .odometer-value{text-align:center}.portfolio-holder .portfolio-sorting{text-align:center;text-transform:uppercase}.portfolio-sorting .button{margin:0 30px 40px;background:0 0;border:none;font-weight:400;font-size:16px;cursor:pointer;padding:0;color:#000}.portfolio-sorting .button.is-checked,.portfolio-sorting .button:hover{color:#777}.portfolio-img-holder .portfolio-item{float:left;width:33.33%;padding:15px}.portfolio-item img{vertical-align:top}.portfolio-item .portfolio-item-inner{position:relative;overflow:hidden}.portfolio-item .portfolio-text-holder{font-size:14px;font-weight:600;position:absolute;top:0;bottom:0;left:0;right:0;background:-webkit-linear-gradient(transparent,rgba(0,0,0,.65));background:-moz-linear-gradient(transparent,rgba(0,0,0,.65));background:-ms-linear-gradient(transparent,rgba(0,0,0,.65));background:-o-linear-gradient(transparent,rgba(0,0,0,.65));background:linear-gradient(transparent,rgba(0,0,0,.65));text-align:center;padding:0 20px;display:flex;flex-direction:column;flex:1;justify-content:flex-end;opacity:0;visibility:hidden;-webkit-transition:all ease .35s;-moz-transition:all ease .35s;transition:all ease .35s}.portfolio-item-inner:hover .portfolio-text-holder{padding-top:30px;padding-bottom:30px;opacity:1;filter:alpha(opacity=100);visibility:visible}.portfolio-item .portfolio-cat a{color:#fff;text-decoration:none;padding-right:10px;display:inline-block;margin-bottom:5px}.portfolio-item .portfolio-cat a:last-child{padding-right:0}.portfolio-text-holder .portfolio-img-title{font-size:24px;font-weight:600}.portfolio-item .portfolio-img-title a{color:#fff;text-decoration:none}.portfolio-item a:hover{color:#ddd}.portfolio-holder .post-thumbnail{margin:0 0 35px;text-align:center}.portfolio-holder .entry-header{border-bottom:1px solid #eee;margin-bottom:30px;padding-bottom:30px}.entry-header .portfolio-cat a{color:#777;text-decoration:none;margin-right:10px}.entry-header .portfolio-cat a:last-child{margin-right:0}.portfolio-holder .entry-header .entry-title{color:#000;margin:10px 0 0;font-size:3em}.portfolio-holder .entry-content,.portfolio-holder .entry-header{margin-left:auto;margin-right:auto;max-width:80%}.portfolio-holder .entry-content{color:#555;line-height:1.6}.related-portfolio{margin-top:80px}.related-portfolio-title{text-align:center;margin-bottom:30px;font-size:22px}.related-portfolio .portfolio-img-holder:after,.related-portfolio .portfolio-img-holder:before{content:"";display:table;height:0;width:0;line-height:0}.related-portfolio .portfolio-img-holder:after{clear:both}.related-portfolio .portfolio-item .portfolio-text-holder{opacity:1;visibility:visible;padding:30px 20px}@media only screen and (max-width:1024px){.archive .trip-content-area .grid .btn-loadmore{grid-column:1/span 2}.portfolio-img-holder .portfolio-item{width:50%}}@media only screen and (max-width:767px){.archive .trip-content-area .grid .btn-loadmore{grid-column:1/span 1}.portfolio-img-holder .portfolio-item{width:100%;float:none;padding-left:0;padding-right:0}.portfolio-holder .entry-content,.portfolio-holder .entry-header{max-width:100%}}
1
+ .widget_bttk_author_bio{text-align:center}.widget_bttk_author_bio .image-holder img{vertical-align:top}.widget_bttk_author_bio .image-holder{margin:0 0 30px}.widget_bttk_author_bio .title-holder{font-size:28px;line-height:32px;margin:0 0 20px}.widget_bttk_author_bio .text-signature{font-family:'Dancing Script',cursive;font-size:30px;color:#000;font-style:italic;line-height:1.3;margin-bottom:10px}.widget_bttk_author_bio .signature-holder{margin-bottom:10px}.widget_bttk_author_bio .readmore{display:inline-block;padding:10px 30px;background:#ccc;margin:0 0 30px}.widget_bttk_author_bio .author-socicons{margin:0;padding:0;list-style:none}.widget_bttk_author_bio .author-socicons li{display:inline-block;margin:0 3px}.widget_bttk_custom_categories ul li{background-size:cover;width:100%;height:100%;position:relative}.widget_bttk_custom_categories ul li:after{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.25);content:''}.widget_bttk_custom_categories ul li a{display:block;width:100%;height:100%;color:#fff;overflow:hidden;position:relative;z-index:1}.widget_bttk_custom_categories ul li .cat-title{float:left;font-size:14px;text-transform:uppercase}.widget_bttk_custom_categories ul li .post-count{float:right;font-size:13px;width:99px;height:48px;background:#111;text-align:center;line-height:48px;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_bttk_custom_categories ul li a:hover .post-count,.widget_bttk_custom_categories ul li a:hover:focus .post-count{width:124px}.widget_bttk_popular_post ul li,.widget_bttk_pro_recent_post ul li{overflow:hidden}.widget_bttk_popular_post ul li .post-thumbnail,.widget_bttk_pro_recent_post ul li .post-thumbnail{float:left;width:80px;height:80px;margin-right:20px}.widget_bttk_popular_post ul li .post-thumbnail img,.widget_bttk_pro_recent_post ul li .post-thumbnail img{vertical-align:top;width:100%;height:100%;object-fit:cover}.widget_bttk_popular_post ul li .entry-header,.widget_bttk_pro_recent_post ul li .entry-header{overflow:hidden}.widget_bttk_popular_post ul li .entry-header .entry-title,.widget_bttk_pro_recent_post ul li .entry-header .entry-title{font-size:18px;line-height:26px;margin:0}.widget_bttk_popular_post ul li .entry-header .entry-meta,.widget_bttk_pro_recent_post ul li .entry-header .entry-meta{font-size:14px;line-height:21px}.widget_bttk_popular_post .style-two li .post-thumbnail,.widget_bttk_pro_recent_post .style-two li .post-thumbnail{width:100%;margin-right:0;margin-bottom:20px;height:190px}.widget_bttk_popular_post .style-two li .entry-header,.widget_bttk_pro_recent_post .style-two li .entry-header{width:100%;text-align:center;padding:0 15px}.widget_bttk_popular_post .style-three li .post-thumbnail,.widget_bttk_pro_recent_post .style-three li .post-thumbnail{height:190px;margin:0 0 -40px;width:100%}.widget_bttk_popular_post .style-three li .entry-header,.widget_bttk_pro_recent_post .style-three li .entry-header{background:#fff none repeat scroll 0 0;margin:0 auto;max-width:92%;padding:13px 15px 0;position:relative;text-align:center;width:100%}.widget_bttk_popular_post ul li .entry-header .cat-links,.widget_bttk_pro_recent_post ul li .entry-header .cat-links{display:none}.widget_bttk_popular_post .style-three li .entry-header .cat-links,.widget_bttk_popular_post .style-two li .entry-header .cat-links,.widget_bttk_pro_recent_post .style-three li .entry-header .cat-links,.widget_bttk_pro_recent_post .style-two li .entry-header .cat-links{display:block;font-size:14px;font-weight:500}.widget_bttk_popular_post .style-three li .entry-header .cat-links a,.widget_bttk_popular_post .style-two li .entry-header .cat-links a,.widget_bttk_pro_recent_post .style-three li .entry-header .cat-links a,.widget_bttk_pro_recent_post .style-two li .entry-header .cat-links a{margin:0 3px}.widget_bttk_social_links ul{margin:0 -2px;overflow:hidden}.widget_bttk_social_links ul li{float:left;padding:0 2px;margin:0 0 4px}.widget_bttk_social_links ul li a{display:block;width:63px;height:63px;background:#111;color:#fff;text-align:center;line-height:63px}.widget_bttk_posts_category_slider_widget .owl-theme .owl-nav [class*=owl-]{margin:0;width:40px;height:40px;font-size:0;background:rgba(0,0,0,.75);border-radius:0;position:absolute;-webkit-transition:ease .2s;-moz-transition:ease .2s;transition:ease .2s}.widget_bttk_posts_category_slider_widget .owl-theme .owl-prev{top:75px;left:0}.widget_bttk_posts_category_slider_widget .owl-theme .owl-prev:after{content:'';background-image:url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M4.2 247.5L151 99.5c4.7-4.7 12.3-4.7 17 0l19.8 19.8c4.7 4.7 4.7 12.3 0 17L69.3 256l118.5 119.7c4.7 4.7 4.7 12.3 0 17L168 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 264.5c-4.7-4.7-4.7-12.3 0-17z"></path></svg>');background-repeat:no-repeat;width:10px;height:20px;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.widget_bttk_posts_category_slider_widget .owl-next{top:75px;right:0}.widget_bttk_posts_category_slider_widget .owl-theme .owl-next:after{content:'';background-image:url('data:image/svg+xml; utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><path fill="%23fff" d="M187.8 264.5L41 412.5c-4.7 4.7-12.3 4.7-17 0L4.2 392.7c-4.7-4.7-4.7-12.3 0-17L122.7 256 4.2 136.3c-4.7-4.7-4.7-12.3 0-17L24 99.5c4.7-4.7 12.3-4.7 17 0l146.8 148c4.7 4.7 4.7 12.3 0 17z"></path></svg>');background-repeat:no-repeat;width:10px;height:20px;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}.widget_bttk_posts_category_slider_widget .post-thumbnail{display:block;margin-bottom:15px}.widget_bttk_posts_category_slider_widget .carousel-title{text-align:center}.widget_bttk_posts_category_slider_widget .carousel-title .cat-links{display:block;font-size:14px;font-weight:500}.widget_bttk_posts_category_slider_widget .carousel-title .cat-links a{margin:0 3px}.widget_bttk_posts_category_slider_widget .carousel-title .title{font-size:18px;line-height:26px;font-weight:400}.widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span{margin:0 3px;background:#eee}.widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot span:hover{background:#111}.widget_bttk_posts_category_slider_widget .owl-theme .owl-dots .owl-dot.active span{background:#111}.widget_bttk_image_text_widget ul li{position:relative}.widget_bttk_image_text_widget ul li .btn-readmore{position:absolute;width:70%;text-align:center;top:50%;left:50%;color:#fff;background:#111;text-transform:uppercase;letter-spacing:1px;padding:12px 29px 9px 32px;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);transform:translate(-50%,-50%);-webkit-transition:ease .2s;-moz-transition:ease .2s;transition:ease .2s}.widget-area ul{margin:0;padding:0;list-style:none}.widget-area ul li{margin:0 0 20px}.widget_raratheme_companion_cta_widget .widget-content{position:relative}.widget_raratheme_companion_cta_widget .widget-content.bg-image:after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5)}.widget_raratheme_companion_cta_widget .widget-content .text-holder{position:relative;z-index:1;color:#fff;text-align:center;padding:30px 15px}.widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta{display:inline-block;margin:0 3px;background:#f7f7f7;color:#555;border-radius:3px;padding:5px 15px;text-decoration:none;font-size:15px;border:1px solid #ccc;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:focus,.widget_raratheme_companion_cta_widget .widget-content .text-holder .btn-cta:hover{text-decoration:none;background:0 0;color:#fff}.widget_raratheme_featured_widget .img-holder{margin-bottom:30px}.widget_raratheme_featured_widget .img-holder a{display:block}.widget_raratheme_featured_widget .img-holder img{vertical-align:top}.widget_raratheme_featured_widget .text-holder .readmore{display:inline-block;background:#f7f7f7;color:#555;border-radius:3px;padding:5px 15px;text-decoration:none;font-size:15px;border:1px solid #ccc;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_raratheme_featured_widget .text-holder .readmore:focus,.widget_raratheme_featured_widget .text-holder .readmore:hover{background:0 0;text-decoration:none}.widget_raratheme_icon_text_widget .icon-holder{font-size:30px;margin:0 0 15px}.widget_raratheme_image_widget .image-holder{margin:0 0 20px}.widget_raratheme_image_widget .image-holder img{vertical-align:top}.widget_raratheme_image_widget .image-holder a{display:block}.widget_raratheme_image_widget .readmore{display:inline-block;background:#f7f7f7;color:#555;border-radius:3px;padding:5px 15px;text-decoration:none;font-size:15px;border:1px solid #ccc;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_raratheme_image_widget .readmore:focus,.widget_raratheme_image_widget .readmore:hover{background:0 0;text-decoration:none}.widget_raratheme_popular_post ul li,.widget_raratheme_recent_post ul li{overflow:hidden}.widget_raratheme_popular_post ul li .post-thumbnail,.widget_raratheme_recent_post ul li .post-thumbnail{float:left;width:68px;margin-right:15px}.widget_raratheme_popular_post ul li .post-thumbnail img,.widget_raratheme_recent_post ul li .post-thumbnail img{vertical-align:top}.widget_raratheme_popular_post ul li .entry-header,.widget_raratheme_recent_post ul li .entry-header{overflow:hidden}.widget_raratheme_popular_post ul li .entry-header .entry-title,.widget_raratheme_recent_post ul li .entry-header .entry-title{margin:0 0 5px;font-size:15px;line-height:18px}.widget_raratheme_popular_post ul li .entry-header .entry-title a,.widget_raratheme_recent_post ul li .entry-header .entry-title a{text-decoration:none}.widget_raratheme_popular_post ul li .entry-header .entry-meta,.widget_raratheme_recent_post ul li .entry-header .entry-meta{font-size:14px;line-height:18px}.widget_raratheme_popular_post ul li .entry-header .view-count{font-size:14px;line-height:18px}.widget_raratheme_popular_post ul li .entry-header .comment-count{font-size:14px;line-height:18px}.widget_raratheme_popular_post ul li .entry-header .comment-count .fa{margin-right:5px}.widget_raratheme_social_links ul{font-size:15px;overflow:hidden}.widget_raratheme_social_links ul li{float:left;margin-right:3px}.widget_raratheme_social_links ul li a{display:block;width:30px;height:30px;background:#000;color:#fff;text-align:center;line-height:30px;-webkit-transition:linear .2s;-moz-transition:linear .2s;transition:linear .2s}.widget_raratheme_social_links ul li a:focus,.widget_raratheme_social_links ul li a:hover{border-radius:50%}.widget_raratheme_social_links ul li a[href*=facebook]{background:#3b5998}.widget_raratheme_social_links ul li a[href*=twitter]{background:#1da1f2}.widget_raratheme_social_links ul li a[href*=flickr]{background:#0063db}.widget_raratheme_social_links ul li a[href*=vimeo]{background:#23b6ea}.widget_raratheme_social_links ul li a[href*=youtube]{background:#cb1f1f}.widget_raratheme_social_links ul li a[href*=google]{background:#d51f1e}.widget_raratheme_social_links ul li a[href*='ok.ru']{background:#ee8208}.widget_raratheme_social_links ul li a[href*=vk]{background:#466991}.widget_raratheme_social_links ul li a[href*=xing]{background:#005a5f}.widget_raratheme_social_links ul li a[href*=stumbleupon]{background:#eb4823}.widget_raratheme_social_links ul li a[href*=pinterest]{background:#cb2027}.widget_raratheme_social_links ul li a[href*=dribbble]{background:#e84c88}.widget_raratheme_social_links ul li a[href*=linkedin]{background:#0274b3}.widget_raratheme_social_links ul li a[href*=rss]{background:orange}.widget_raratheme_social_links ul li a[href*=tumblr]{background:#2e4f6e}.widget_raratheme_social_links ul li a[href*=instagram]{background:#895a4d}.widget_raratheme_companion_stat_counter_widget .icon-holder{font-size:30px;margin:0 0 15px}.odometer.odometer-theme-default,.widget_raratheme_companion_stat_counter_widget .odometer.odometer-auto-theme{font-size:25px;font-weight:700}ul.accordion{list-style:none}ul.accordion .inner{display:none}ul.accordion li{margin:.5em 0}ul.accordion li a.toggle{display:block}.odometer.odometer-auto-theme,.odometer.odometer-theme-default{vertical-align:middle;vertical-align:auto;zoom:1;display:inline;position:relative}.odometer.odometer-auto-theme .odometer-digit,.odometer.odometer-theme-default .odometer-digit{vertical-align:middle;vertical-align:auto;zoom:1;display:inline;position:relative}.odometer.odometer-auto-theme .odometer-digit .odometer-digit-spacer,.odometer.odometer-theme-default .odometer-digit .odometer-digit-spacer{vertical-align:middle;vertical-align:auto;zoom:1;display:inline;visibility:hidden}.odometer.odometer-auto-theme .odometer-digit .odometer-digit-inner,.odometer.odometer-theme-default .odometer-digit .odometer-digit-inner{text-align:left;display:block;position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.odometer.odometer-auto-theme .odometer-digit .odometer-ribbon,.odometer.odometer-theme-default .odometer-digit .odometer-ribbon{display:block}.odometer.odometer-auto-theme .odometer-digit .odometer-ribbon-inner,.odometer.odometer-theme-default .odometer-digit .odometer-ribbon-inner{display:block;-webkit-backface-visibility:hidden}.odometer.odometer-auto-theme .odometer-digit .odometer-value,.odometer.odometer-theme-default .odometer-digit .odometer-value{display:block;-webkit-transform:translateZ(0);-moz-transform:translateZ(0);transform:translateZ(0)}.odometer.odometer-auto-theme .odometer-digit .odometer-value.odometer-last-value,.odometer.odometer-theme-default .odometer-digit .odometer-value.odometer-last-value{position:absolute}.odometer.odometer-auto-theme.odometer-animating-up .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-up .odometer-ribbon-inner{-webkit-transition:-webkit-transform 2s;-moz-transition:-moz-transform 2s;-ms-transition:-ms-transform 2s;-o-transition:-o-transform 2s;transition:transform 2s}.odometer.odometer-auto-theme.odometer-animating-up.odometer-animating .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-up.odometer-animating .odometer-ribbon-inner{-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-ms-transform:translateY(-100%);-o-transform:translateY(-100%);transform:translateY(-100%)}.odometer.odometer-auto-theme.odometer-animating-down .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-down .odometer-ribbon-inner{-webkit-transform:translateY(-100%);-moz-transform:translateY(-100%);-ms-transform:translateY(-100%);-o-transform:translateY(-100%);transform:translateY(-100%)}.odometer.odometer-auto-theme.odometer-animating-down.odometer-animating .odometer-ribbon-inner,.odometer.odometer-theme-default.odometer-animating-down.odometer-animating .odometer-ribbon-inner{-webkit-transition:-webkit-transform 2s;-moz-transition:-moz-transform 2s;-ms-transition:-ms-transform 2s;-o-transition:-o-transform 2s;transition:transform 2s;-webkit-transform:translateY(0);-moz-transform:translateY(0);-ms-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)}.odometer.odometer-auto-theme .odometer-value,.odometer.odometer-theme-default .odometer-value{text-align:center}.widget_blossom_client_logo_widget .image-holder img{max-width:190px}.portfolio-holder .portfolio-sorting{text-align:center;text-transform:uppercase}.portfolio-sorting .button{margin:0 30px 40px 30px;background:0 0;border:none;font-weight:400;font-size:16px;cursor:pointer;padding:0;color:#000}.portfolio-sorting .button.is-checked,.portfolio-sorting .button:hover{color:#777}.portfolio-img-holder .portfolio-item{float:left;width:33.33%;padding:15px}.portfolio-item img{vertical-align:top}.portfolio-item .portfolio-item-inner{position:relative;overflow:hidden}.portfolio-item .portfolio-text-holder{font-size:14px;font-weight:600;position:absolute;top:0;bottom:0;left:0;right:0;background:-webkit-linear-gradient(transparent,rgba(0,0,0,.65));background:-moz-linear-gradient(transparent,rgba(0,0,0,.65));background:-ms-linear-gradient(transparent,rgba(0,0,0,.65));background:-o-linear-gradient(transparent,rgba(0,0,0,.65));background:linear-gradient(transparent,rgba(0,0,0,.65));text-align:center;padding:0 20px;display:flex;flex-direction:column;flex:1;justify-content:flex-end;opacity:0;visibility:hidden;-webkit-transition:all ease .35s;-moz-transition:all ease .35s;transition:all ease .35s}.portfolio-item-inner:hover .portfolio-text-holder{padding-top:30px;padding-bottom:30px;opacity:1;visibility:visible}.portfolio-item .portfolio-cat a{color:#fff;text-decoration:none;padding-right:10px;display:inline-block;margin-bottom:5px}.portfolio-item .portfolio-cat a:last-child{padding-right:0}.portfolio-text-holder .portfolio-img-title{font-size:24px;font-weight:600}.portfolio-item .portfolio-img-title a{color:#fff;text-decoration:none}.portfolio-item a:hover{color:#ddd}.portfolio-holder .post-thumbnail{margin:0 0 35px 0;text-align:center}.portfolio-holder .entry-header{border-bottom:1px solid #eee;margin-bottom:30px;padding-bottom:30px}.entry-header .portfolio-cat a{color:#777;text-decoration:none;margin-right:10px}.entry-header .portfolio-cat a:last-child{margin-right:0}.portfolio-holder .entry-header .entry-title{color:#000;margin:10px 0 0 0;font-size:3em}.portfolio-holder .entry-content,.portfolio-holder .entry-header{margin-left:auto;margin-right:auto;max-width:80%}.portfolio-holder .entry-content{color:#555;line-height:1.6}.related-portfolio{margin-top:80px}.related-portfolio-title{text-align:center;margin-bottom:30px;font-size:22px}.related-portfolio .portfolio-img-holder:after,.related-portfolio .portfolio-img-holder:before{content:"";display:table;height:0;width:0;line-height:0}.related-portfolio .portfolio-img-holder:after{clear:both}.related-portfolio .portfolio-item .portfolio-text-holder{opacity:1;visibility:visible;padding:30px 20px}@media only screen and (max-width:1024px){.archive .trip-content-area .grid .btn-loadmore{grid-column:1/span 2}.portfolio-img-holder .portfolio-item{width:50%}}@media only screen and (max-width:767px){.archive .trip-content-area .grid .btn-loadmore{grid-column:1/span 1}.portfolio-img-holder .portfolio-item{width:100%;float:none;padding-left:0;padding-right:0}.portfolio-holder .entry-content,.portfolio-holder .entry-header{max-width:100%}}
public/js/blossomthemes-toolkit-public.js CHANGED
@@ -24,7 +24,7 @@ jQuery(document).ready(function($) {
24
  }
25
  });
26
  $('.faq-answer').slideUp();
27
- $('.toggle').click(function(e) {
28
  e.preventDefault();
29
 
30
  var $this = $(this);
24
  }
25
  });
26
  $('.faq-answer').slideUp();
27
+ $('.toggle').on ('click', function(e) {
28
  e.preventDefault();
29
 
30
  var $this = $(this);
public/js/blossomthemes-toolkit-public.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){e(document).on("click",".expand-faq",function(o){o.preventDefault(),e(this).children("i").toggleClass("fa-toggle-on"),e(".raratheme-faq-holder .inner").hasClass("open")?(e(".raratheme-faq-holder .inner").removeClass("open"),e(".raratheme-faq-holder .inner").slideUp("slow")):(e(".raratheme-faq-holder .inner").addClass("open"),e(".raratheme-faq-holder .inner").slideDown("slow"))}),e(".faq-answer").slideUp(),e(".toggle").click(function(o){o.preventDefault();var t=e(this);t.hasClass("show")?(t.removeClass("show"),t.next().slideUp(350)):(t.removeClass("show"),t.next().slideUp(350),t.toggleClass("show"),t.next().slideToggle(350))});var o=e(".portfolio-holder .portfolio-img-holder").imagesLoaded(function(){o.isotope({itemSelector:".portfolio-item",percentPosition:!0}),e(".portfolio-sorting").on("click","button",function(){var t=e(this).attr("data-sort-value");o.isotope({filter:t})}),e(".portfolio-sorting").each(function(o,t){var n=e(t);n.on("click","button",function(){n.find(".is-checked").removeClass("is-checked"),e(this).addClass("is-checked")})})})});
1
+ jQuery(document).ready(function($){$(document).on("click",".expand-faq",function(e){e.preventDefault(),$(this).children("i").toggleClass("fa-toggle-on"),$(".raratheme-faq-holder .inner").hasClass("open")?($(".raratheme-faq-holder .inner").removeClass("open"),$(".raratheme-faq-holder .inner").slideUp("slow")):($(".raratheme-faq-holder .inner").addClass("open"),$(".raratheme-faq-holder .inner").slideDown("slow"))}),$(".faq-answer").slideUp(),$(".toggle").on("click",function(e){e.preventDefault();var $this=$(this);$this.hasClass("show")?($this.removeClass("show"),$this.next().slideUp(350)):($this.removeClass("show"),$this.next().slideUp(350),$this.toggleClass("show"),$this.next().slideToggle(350))});var $grid=$(".portfolio-holder .portfolio-img-holder").imagesLoaded(function(){$grid.isotope({itemSelector:".portfolio-item",percentPosition:!0}),$(".portfolio-sorting").on("click","button",function(){var filterValue=$(this).attr("data-sort-value");$grid.isotope({filter:filterValue})}),$(".portfolio-sorting").each(function(i,buttonGroup){var $buttonGroup=$(buttonGroup);$buttonGroup.on("click","button",function(){$buttonGroup.find(".is-checked").removeClass("is-checked"),$(this).addClass("is-checked")})})})});
wpml-config.xml CHANGED
@@ -1,8 +1,8 @@
1
- <wpml-config>
2
- <custom-types>
3
- <custom-type translate="1">blossom-portfolio</custom-type>
4
- </custom-types>
5
- <taxonomies>
6
- <taxonomy translate="1">blossom_portfolio_categories</taxonomy>
7
- </taxonomies>
8
  </wpml-config>
1
+ <wpml-config>
2
+ <custom-types>
3
+ <custom-type translate="1">blossom-portfolio</custom-type>
4
+ </custom-types>
5
+ <taxonomies>
6
+ <taxonomy translate="1">blossom_portfolio_categories</taxonomy>
7
+ </taxonomies>
8
  </wpml-config>