PluginProbe ʕ •ᴥ•ʔ
Shortcodes and extra features for Phlox theme / 1.3.1
Shortcodes and extra features for Phlox theme v1.3.1
2.17.22 2.17.21 2.17.20 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.6 1.0.9 1.1.0 1.3.0 1.3.1 1.3.10 1.3.14 1.3.2 1.3.3 1.3.6 1.4.0 1.4.1 1.4.2 1.5.0 1.5.2 1.6.0 1.6.2 1.6.4 1.7.0 1.7.2 2.10.0 2.10.1 2.10.3 2.10.5 2.10.7 2.10.8 2.10.9 2.11.0 2.11.1 2.11.2 2.12.0 2.14.0 2.15.0 2.15.2 2.15.4 2.15.5 2.15.6 2.15.7 2.15.8 2.15.9 2.16.0 2.16.1 2.16.2 2.16.3 2.16.4 2.17.0 2.17.1 2.17.12 2.17.13 2.17.14 2.17.15 2.17.16 2.17.2 2.17.3 2.17.4 2.17.5 2.17.6 2.17.8 2.17.9 2.4.12 2.4.13 2.4.14 2.4.16 2.4.18 2.4.19 2.4.9 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.14 2.5.15 2.5.16 2.5.17 2.5.19 2.5.2 2.5.20 2.5.3 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.10 2.6.12 2.6.13 2.6.14 2.6.15 2.6.16 2.6.17 2.6.19 2.6.2 2.6.20 2.6.4 2.6.5 2.6.7 2.7.0 2.7.1 2.7.10 2.7.11 2.7.12 2.7.13 2.7.14 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 2.7.9 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.9 2.9.0 2.9.12 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.19 2.9.2 2.9.20 2.9.21 2.9.22 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8
auxin-elements / includes / elements / gmap.php
auxin-elements / includes / elements Last commit date
about-widget.php 9 years ago accordion-api.php 9 years ago accordion.php 9 years ago attachment-url.php 10 years ago audio.php 9 years ago button.php 9 years ago code.php 9 years ago contact-box.php 9 years ago contact-form.php 9 years ago divider.php 9 years ago dropcap.php 9 years ago facebook.php 9 years ago flickr.php 9 years ago gallery.php 9 years ago gmap.php 9 years ago highlight.php 9 years ago image.php 9 years ago instagram-feed.php 9 years ago latest-items.php 10 years ago latest-posts-slider.php 9 years ago popular-posts-widget.php 9 years ago quote.php 9 years ago recent-posts-grid-carousel.php 9 years ago recent-posts-land-style.php 9 years ago recent-posts-masonry.php 9 years ago recent-posts-tiles.php 9 years ago recent-posts-timeline.php 9 years ago recent-posts-widget.php 9 years ago recent-posts.php 9 years ago sample-element.php 10 years ago search.php 9 years ago socials-list.php 9 years ago tabs-api.php 9 years ago tabs.php 9 years ago text.php 9 years ago video.php 9 years ago
gmap.php
309 lines
1 <?php
2 /**
3 * Google Map element
4 *
5 *
6 * @package auxin-elements
7 * @license LICENSE.txt
8 * @author
9 * @link https://bitbucket.org/averta/
10 * @copyright (c) 2010-2016
11 */
12 function auxin_get_gmap_master_array( $master_array ) {
13
14 $master_array['aux_gmaps'] = array(
15 'name' => __('[Phlox] Map ', 'auxin-elements' ),
16 'auxin_output_callback' => 'auxin_widget_gmaps_callback',
17 'base' => 'aux_gmaps',
18 'description' => __('Google map block', 'auxin-elements' ),
19 'class' => 'aux-widget-gmaps',
20 'show_settings_on_create' => true,
21 'weight' => 1,
22 'category' => THEME_NAME,
23 'group' => '',
24 'admin_enqueue_js' => '',
25 'admin_enqueue_css' => '',
26 'front_enqueue_js' => '',
27 'front_enqueue_css' => '',
28 'icon' => 'auxin-element auxin-google-maps',
29 'custom_markup' => '',
30 'js_view' => '',
31 'html_template' => '',
32 'deprecated' => '',
33 'content_element' => '',
34 'as_parent' => '',
35 'as_child' => '',
36 'params' => array(
37 array(
38 'heading' => __('Title','auxin-elements' ),
39 'description' => __('Map title, leave it empty if you don`t need title.', 'auxin-elements'),
40 'param_name' => 'title',
41 'type' => 'textfield',
42 'value' => '',
43 'holder' => 'textfield',
44 'class' => 'title',
45 'admin_label' => true,
46 'dependency' => '',
47 'weight' => '',
48 'group' => '' ,
49 'edit_field_class' => ''
50 ),
51 array(
52 'heading' => __('Height','auxin-elements' ),
53 'description' => '',
54 'param_name' => 'height',
55 'type' => 'textfield',
56 'value' => '700',
57 'def_value' => '700',
58 'holder' => 'textfield',
59 'class' => 'height',
60 'admin_label' => true,
61 'dependency' => '',
62 'weight' => '',
63 'group' => '' ,
64 'edit_field_class' => ''
65 ),
66 array(
67 'heading' => __('Latitude','auxin-elements' ),
68 'description' => __('Latitude location over the map.','auxin-elements' ),
69 'param_name' => 'latitude',
70 'type' => 'textfield',
71 'value' => '52',
72 'def_value' => '52',
73 'holder' => 'textfield',
74 'class' => 'latitude',
75 'admin_label' => true,
76 'dependency' => '',
77 'weight' => '',
78 'group' => '' ,
79 'edit_field_class' => ''
80 ),
81 array(
82 'heading' => __('Longitude','auxin-elements' ),
83 'description' => __('Longitude location over the map.','auxin-elements' ),
84 'param_name' => 'longitude',
85 'type' => 'textfield',
86 'value' => '14',
87 'def_value' => '14',
88 'holder' => 'textfield',
89 'class' => 'longitude',
90 'admin_label' => true,
91 'dependency' => '',
92 'weight' => '',
93 'group' => '' ,
94 'edit_field_class' => ''
95 ),
96 array(
97 'heading' => __('Map type','auxin-elements' ),
98 'description' => '',
99 'param_name' => 'type',
100 'type' => 'dropdown',
101 'def_value' => 'ROADMAP',
102 'value' => array( 'ROADMAP' => __('ROADMAP', 'auxin-elements' ), 'SATELLITE' => __('SATELLITE', 'auxin-elements' ) ),
103 'holder' => 'dropdown',
104 'class' => 'type',
105 'admin_label' => true,
106 'dependency' => '',
107 'weight' => '',
108 'group' => '' ,
109 'edit_field_class' => ''
110 ),
111 array(
112 'heading' => __('Map style','auxin-elements' ),
113 'description' => __('This feild allow you to customize the presentation of the standard Google base maps. You can find many preset styles in ', 'auxin-elements' ) .
114 '<a href="https://snazzymaps.com/" target="_blank">' . __('this website.', 'auxin-elements' ) . '</a>' ,
115 'param_name' => 'style',
116 'type' => 'textarea_html',
117 'def_value' => '',
118 'value' => '',
119 'holder' => 'div',
120 'class' => 'style',
121 'admin_label' => false,
122 'dependency' => array(
123 'element' => 'type',
124 'value' => 'ROADMAP'
125 )
126 ),
127 array(
128 'heading' => __('Marker info','auxin-elements' ),
129 'description' => __('Marker popup text, leave it empty if you don\'t need it.', 'auxin-elements' ),
130 'param_name' => 'marker_info',
131 'type' => 'textfield',
132 'value' => '',
133 'def_value' => '',
134 'holder' => 'textfield',
135 'class' => 'marker_info',
136 'admin_label' => true,
137 'dependency' => '',
138 'weight' => '',
139 'group' => '' ,
140 'edit_field_class' => ''
141 ),
142 array(
143 'heading' => __('Navigation control','auxin-elements' ),
144 'description' => __('Show navigation control on map.','auxin-elements' ),
145 'param_name' => 'show_mapcontrols',
146 'type' => 'aux_switch',
147 'def_value' => '',
148 'value' => '1',
149 'holder' => 'dropdown',
150 'class' => 'show_mapcontrols',
151 'admin_label' => true,
152 'dependency' => '',
153 'weight' => '',
154 'group' => 'Extras' ,
155 'edit_field_class' => ''
156 ),
157 array(
158 'heading' => __('Zoom','auxin-elements' ),
159 'description' => '',
160 'param_name' => 'zoom',
161 'type' => 'textfield',
162 'value' => '4',
163 'def_value' => '4',
164 'holder' => 'textfield',
165 'class' => 'zoom',
166 'admin_label' => true,
167 'dependency' => '',
168 'weight' => '',
169 'group' => 'Extras' ,
170 'edit_field_class' => ''
171 ),
172 array(
173 'heading' => __('Zoom with mouse wheel','auxin-elements' ),
174 'description' => '',
175 'param_name' => 'zoom_wheel',
176 'type' => 'aux_switch',
177 'def_value' => '',
178 'value' => '0',
179 'holder' => 'dropdown',
180 'class' => 'zoom_wheel',
181 'admin_label' => true,
182 'dependency' => '',
183 'weight' => '',
184 'group' => 'Extras' ,
185 'edit_field_class' => ''
186 ),
187 array(
188 'heading' => __('Extra class name','auxin-elements' ),
189 'description' => __('If you wish to style particular content element differently, then use this field to add a class name and then refer to it in your css file.', 'auxin-elements' ),
190 'param_name' => 'extra_classes',
191 'type' => 'textfield',
192 'value' => '',
193 'def_value' => '',
194 'holder' => 'textfield',
195 'class' => 'extra_classes',
196 'admin_label' => true,
197 'dependency' => '',
198 'weight' => '',
199 'group' => 'Extras' ,
200 'edit_field_class' => ''
201 )
202
203 )
204 );
205
206
207 return $master_array;
208 }
209
210 add_filter( 'auxin_master_array_shortcodes', 'auxin_get_gmap_master_array', 10, 1 );
211
212
213 /**
214 * The front-end output of this element is returned by the following function
215 *
216 * @param array $atts The array containing the parsed values from shortcode, it should be same as defined params above.
217 * @param string $shortcode_content The shorcode content
218 * @return string The output of element markup
219 */
220 function auxin_widget_gmaps_callback( $atts, $shortcode_content = null ){
221
222
223 // Defining default attributes
224 $default_atts = array(
225 'title' => '', // header title
226 'type' => 'ROADMAP',
227 'style' => '',
228 'height' => 700,
229 'latitude' => 40.7,
230 'longitude' => -74,
231 'marker_info' => '', // popup conetent
232 'show_mapcontrols' => 1,
233 'zoom' => 10,
234 'zoom_wheel' => 0,
235 'extra_classes' => '', // custom css class names for this element
236 'custom_el_id' => '', // custom id attribute for this element
237 'base_class' => 'aux-widget-gmaps' // base class name for container
238 );
239
240 $result = auxin_get_widget_scafold( $atts, $default_atts, $shortcode_content );
241 extract( $result['parsed_atts'] );
242
243 // widget header ------------------------------
244 echo $result['widget_header'];
245 echo $result['widget_title'];
246
247 $mapid = uniqid("axi_map");
248
249 if ( empty( $style ) ) {
250 $style = auxin_get_gmap_style();
251 }
252
253 ob_start();
254 ?>
255
256
257 <div class="aux-col-wrapper aux-no-gutter">
258 <div id="<?php echo $mapid; ?>" class="aux_map_wrapper <?php echo $extra_classes; ?>" style="height:<?php echo $height; ?>px" ></div>
259
260 <script>
261 (function($, window, document, undefined){
262 "use strict";
263
264 $(function(){
265 var map = new GMaps({
266 el: "#<?php echo $mapid; ?>",
267 lat: <?php echo $latitude; ?>,
268 lng: <?php echo $longitude; ?>,
269 zoom: <?php echo $zoom; ?>,
270 scrollwheel: <?php echo $zoom_wheel; ?>,
271 <?php if($type == "SATELLITE"){ ?>
272 mapTypeId: google.maps.MapTypeId.SATELLITE,
273 <?php } else { ?> mapTypeId: google.maps.MapTypeId.ROADMAP,
274 <?php }
275 if ( $show_mapcontrols == false ) { ?>
276 disableDefaultUI: true,
277 <?php }?>
278 panControl : true
279 });
280
281 <?php if($type == "ROADMAP"){ ?>
282 map.addStyle({
283 styledMapName:"Auxin custom style map",
284 styles: <?php echo $style; ?>,
285 mapTypeId: "aux_map_style"
286 });
287
288 map.setStyle("aux_map_style");
289 <?php } ?>
290 map.addMarker({
291 <?php if ( !empty( $marker_info ) ) { ?>
292 infoWindow: { content: "<?php echo $marker_info; ?>" },
293 <?php }?>
294 lat: <?php echo $latitude; ?>,
295 lng: <?php echo $longitude; ?>
296 });
297 });
298
299 })(jQuery, window, document);
300
301 </script>
302
303 </div><!-- aux-col-wrapper -->
304
305 <?php
306 echo $result['widget_footer'];
307 return ob_get_clean();
308 }
309