Version Description
- General: This update focused on fixing a lot of pre-existing bugs commonly submitted to WordPress.org as well as improving the plugin base for future code enhancements.
- New: Enhanced Full Screen Maps Builder mode that allows you to build maps in a customizer-like experience.
- New: Widget for inserting maps into your theme's sidebars #39 @see: https://github.com/WordImpress/google-maps-builder/issues/39
- New: Shortcode builder integrated into TinyMCE to make adding maps to your posts a breeze. @see: https://github.com/WordImpress/google-maps-builder/issues/24
- New: Upgrade process for maps using Google's old reference ID in place for the new Place_ID @see: https://github.com/WordImpress/google-maps-builder/issues/18
- New: Switch and Test all Google Places API calls to "Reference ID" or "ID" to Google's new "Places ID"
- New: Gulp implemented for minifying scripts
- New: Uber cool new logo design and mascot: "Marko the Map Builder"
- New: Control the map height with a new control to select percentage or pixel height values @see: https://github.com/WordImpress/google-maps-builder/issues/13
- New: You can now choose whether or not you want to see the place info within your infowindows @see: https://github.com/WordImpress/google-maps-builder/issues/62
- Improvement: Upgraded CMB1 to CMB2
- Improvement: Class improvements and modernized structure organization
- Improvement: Plugin structure significantly changed to better reflect our development preference. The current structure is similar to Give, EDD, and other reputable plugins.
- Improvement: Swapped out Thickbox for Magnific popup @see: https://github.com/WordImpress/google-maps-builder/issues/11
- Improvement: Register scripts and styles properly prior to enqueuing them for other plugins and themes
- Improvement: Marker Creation Improvements - 1) Sometimes markers disappear in the post edit screen. 2) Sometimes markers don't get output on the front end correctly. 3)Sometimes markers don't get generated in the post edit screen at all.
- Fix: Investigated + resolved several Google Maps API conflicts - Often when a user has a theme or plugin that registers Google Maps it breaks our plugin or ours breaks theirs. We now check for other Google Map enqueues, and if present the plugin attempts to dequeue them in favor for ours. So far this has fixed issues with Uber Menu 3, Contact Forms 7, as well as many additional plugins.
- Fix: Maps placed in hidden tabs now redraw properly when the tab is selected
- Fix: Found and resolved conflict with ACF plugin Google Maps field
- Fix: Removed non-functional marker upload field (will be added to Pro version in a much enhanced format).
- Fix: Maps icons fixed to no longer show first character incorrectly @see: https://github.com/scottdejonge/Map-Icons/issues/26
- General: The plugin's official name has dropped the word "Google" for brand compliance. It's now called "Maps Builder"
- General: Removed "Places API Key" field because Google Maps API doesn't require it to query the library
- General: Added "Google Maps API Key" field to track API usage within Google's Developer Console @see: https://github.com/WordImpress/google-maps-builder/issues/48
- General: Javascript cleanup and optimization
Download this release
Release Info
Developer | dlocc |
Plugin | Maps Builder – Google Maps Plugin |
Version | 2.0 |
Comparing to | |
See all releases |
Code changes from version 1.0.4 to 2.0
- GulpFile.js +155 -0
- README.md +96 -0
- README.txt +66 -32
- admin/assets/css/admin-settings.css +0 -394
- admin/assets/css/admin-settings.min.css +0 -1
- admin/assets/css/admin-widget.css +0 -459
- admin/assets/css/admin-widget.min.css +0 -1
- admin/assets/css/admin.css +0 -713
- admin/assets/css/admin.min.css +0 -1
- admin/assets/css/grid.min.css +0 -1
- admin/assets/css/index.php +0 -1
- admin/assets/img/help.png +0 -0
- admin/assets/js/admin-google-map.min.js +0 -1
- admin/assets/js/admin-settings.min.js +0 -1
- admin/assets/js/admin-widget.js +0 -267
- admin/assets/js/admin-widget.min.js +0 -1
- admin/assets/js/index.php +0 -1
- admin/class-wordpress-google-maps-admin.php +0 -785
- admin/class-wordpress-google-maps-settings.php +0 -423
- admin/includes/index.php +0 -1
- admin/includes/tooltips/jquery.qtip.min.css +0 -2
- admin/includes/tooltips/jquery.qtip.min.js +0 -4
- admin/includes/tooltips/jquery.qtip.min.map +0 -1
- admin/views/admin-widget.php +0 -61
- admin/views/index.php +0 -1
- admin/views/logo-svg-small.php +0 -33
- admin/views/logo-svg.php +0 -34
- admin/views/markers.php +0 -224
- admin/views/settings-page.php +0 -86
- admin/views/social-media.php +0 -45
- assets/css/gmb-admin.css +2688 -0
- assets/css/gmb-admin.css.map +1 -0
- assets/css/gmb-admin.min.css +34 -0
- assets/css/google-maps-builder.css +119 -0
- assets/css/google-maps-builder.css.map +1 -0
- assets/css/google-maps-builder.min.css +24 -0
- {admin/assets → assets}/img/arrows.png +0 -0
- assets/img/default-icon-green-no-dot.png +0 -0
- assets/img/default-icon-green.png +0 -0
- assets/img/default-icons/blue-blank.png +0 -0
- assets/img/default-icons/blue-dot.png +0 -0
- assets/img/default-icons/blue_MarkerA.png +0 -0
- assets/img/default-icons/blue_MarkerB.png +0 -0
- assets/img/default-icons/blue_MarkerC.png +0 -0
- assets/img/default-icons/blue_MarkerD.png +0 -0
- assets/img/default-icons/blue_MarkerE.png +0 -0
- assets/img/default-icons/blue_MarkerF.png +0 -0
- assets/img/default-icons/blue_MarkerG.png +0 -0
- assets/img/default-icons/blue_MarkerH.png +0 -0
- assets/img/default-icons/blue_MarkerI.png +0 -0
- assets/img/default-icons/blue_MarkerJ.png +0 -0
- assets/img/default-icons/blue_MarkerK.png +0 -0
- assets/img/default-icons/blue_MarkerL.png +0 -0
- assets/img/default-icons/blue_MarkerM.png +0 -0
- assets/img/default-icons/blue_MarkerN.png +0 -0
- assets/img/default-icons/blue_MarkerO.png +0 -0
- assets/img/default-icons/blue_MarkerP.png +0 -0
- assets/img/default-icons/blue_MarkerQ.png +0 -0
- assets/img/default-icons/blue_MarkerR.png +0 -0
- assets/img/default-icons/blue_MarkerS.png +0 -0
- assets/img/default-icons/blue_MarkerT.png +0 -0
- assets/img/default-icons/blue_MarkerU.png +0 -0
- assets/img/default-icons/blue_MarkerV.png +0 -0
- assets/img/default-icons/blue_MarkerW.png +0 -0
- assets/img/default-icons/blue_MarkerX.png +0 -0
- assets/img/default-icons/blue_MarkerY.png +0 -0
- assets/img/default-icons/blue_MarkerZ.png +0 -0
- assets/img/default-icons/brown-blank.png +0 -0
- assets/img/default-icons/brown-dot.png +0 -0
- assets/img/default-icons/brown_MarkerA.png +0 -0
- assets/img/default-icons/brown_MarkerB.png +0 -0
- assets/img/default-icons/brown_MarkerC.png +0 -0
- assets/img/default-icons/brown_MarkerD.png +0 -0
- assets/img/default-icons/brown_MarkerE.png +0 -0
- assets/img/default-icons/brown_MarkerF.png +0 -0
- assets/img/default-icons/brown_MarkerG.png +0 -0
- assets/img/default-icons/brown_MarkerH.png +0 -0
- assets/img/default-icons/brown_MarkerI.png +0 -0
- assets/img/default-icons/brown_MarkerJ.png +0 -0
- assets/img/default-icons/brown_MarkerK.png +0 -0
- assets/img/default-icons/brown_MarkerL.png +0 -0
- assets/img/default-icons/brown_MarkerM.png +0 -0
- assets/img/default-icons/brown_MarkerN.png +0 -0
- assets/img/default-icons/brown_MarkerO.png +0 -0
- assets/img/default-icons/brown_MarkerP.png +0 -0
- assets/img/default-icons/brown_MarkerQ.png +0 -0
- assets/img/default-icons/brown_MarkerR.png +0 -0
- assets/img/default-icons/brown_MarkerS.png +0 -0
- assets/img/default-icons/brown_MarkerT.png +0 -0
- assets/img/default-icons/brown_MarkerU.png +0 -0
- assets/img/default-icons/brown_MarkerV.png +0 -0
- assets/img/default-icons/brown_MarkerW.png +0 -0
- assets/img/default-icons/brown_MarkerX.png +0 -0
- assets/img/default-icons/brown_MarkerY.png +0 -0
- assets/img/default-icons/brown_MarkerZ.png +0 -0
- assets/img/default-icons/darkgreen-blank.png +0 -0
- assets/img/default-icons/darkgreen-dot.png +0 -0
- assets/img/default-icons/darkgreen_MarkerA.png +0 -0
- assets/img/default-icons/darkgreen_MarkerB.png +0 -0
- assets/img/default-icons/darkgreen_MarkerC.png +0 -0
- assets/img/default-icons/darkgreen_MarkerD.png +0 -0
- assets/img/default-icons/darkgreen_MarkerE.png +0 -0
- assets/img/default-icons/darkgreen_MarkerF.png +0 -0
- assets/img/default-icons/darkgreen_MarkerG.png +0 -0
- assets/img/default-icons/darkgreen_MarkerH.png +0 -0
- assets/img/default-icons/darkgreen_MarkerI.png +0 -0
- assets/img/default-icons/darkgreen_MarkerJ.png +0 -0
- assets/img/default-icons/darkgreen_MarkerK.png +0 -0
- assets/img/default-icons/darkgreen_MarkerL.png +0 -0
- assets/img/default-icons/darkgreen_MarkerM.png +0 -0
- assets/img/default-icons/darkgreen_MarkerN.png +0 -0
- assets/img/default-icons/darkgreen_MarkerO.png +0 -0
- assets/img/default-icons/darkgreen_MarkerP.png +0 -0
- assets/img/default-icons/darkgreen_MarkerQ.png +0 -0
- assets/img/default-icons/darkgreen_MarkerR.png +0 -0
- assets/img/default-icons/darkgreen_MarkerS.png +0 -0
- assets/img/default-icons/darkgreen_MarkerT.png +0 -0
- assets/img/default-icons/darkgreen_MarkerU.png +0 -0
- assets/img/default-icons/darkgreen_MarkerV.png +0 -0
- assets/img/default-icons/darkgreen_MarkerW.png +0 -0
- assets/img/default-icons/darkgreen_MarkerX.png +0 -0
- assets/img/default-icons/darkgreen_MarkerY.png +0 -0
- assets/img/default-icons/darkgreen_MarkerZ.png +0 -0
- assets/img/default-icons/green-blank.png +0 -0
- assets/img/default-icons/green-dot.png +0 -0
- assets/img/default-icons/green_MarkerA.png +0 -0
- assets/img/default-icons/green_MarkerB.png +0 -0
- assets/img/default-icons/green_MarkerC.png +0 -0
- assets/img/default-icons/green_MarkerD.png +0 -0
- assets/img/default-icons/green_MarkerE.png +0 -0
- assets/img/default-icons/green_MarkerF.png +0 -0
- assets/img/default-icons/green_MarkerG.png +0 -0
- assets/img/default-icons/green_MarkerH.png +0 -0
- assets/img/default-icons/green_MarkerI.png +0 -0
- assets/img/default-icons/green_MarkerJ.png +0 -0
- assets/img/default-icons/green_MarkerK.png +0 -0
- assets/img/default-icons/green_MarkerL.png +0 -0
- assets/img/default-icons/green_MarkerM.png +0 -0
- assets/img/default-icons/green_MarkerN.png +0 -0
- assets/img/default-icons/green_MarkerO.png +0 -0
- assets/img/default-icons/green_MarkerP.png +0 -0
- assets/img/default-icons/green_MarkerQ.png +0 -0
- assets/img/default-icons/green_MarkerR.png +0 -0
- assets/img/default-icons/green_MarkerS.png +0 -0
- assets/img/default-icons/green_MarkerT.png +0 -0
- assets/img/default-icons/green_MarkerU.png +0 -0
- assets/img/default-icons/green_MarkerV.png +0 -0
- assets/img/default-icons/green_MarkerW.png +0 -0
- assets/img/default-icons/green_MarkerX.png +0 -0
- assets/img/default-icons/green_MarkerY.png +0 -0
- assets/img/default-icons/green_MarkerZ.png +0 -0
- assets/img/default-icons/icons.png +0 -0
- assets/img/default-icons/orange-blank.png +0 -0
- assets/img/default-icons/orange-dot.png +0 -0
- assets/img/default-icons/orange_MarkerA.png +0 -0
- assets/img/default-icons/orange_MarkerB.png +0 -0
- assets/img/default-icons/orange_MarkerC.png +0 -0
- assets/img/default-icons/orange_MarkerD.png +0 -0
- assets/img/default-icons/orange_MarkerE.png +0 -0
- assets/img/default-icons/orange_MarkerF.png +0 -0
- assets/img/default-icons/orange_MarkerG.png +0 -0
- assets/img/default-icons/orange_MarkerH.png +0 -0
- assets/img/default-icons/orange_MarkerI.png +0 -0
- assets/img/default-icons/orange_MarkerJ.png +0 -0
- assets/img/default-icons/orange_MarkerK.png +0 -0
- assets/img/default-icons/orange_MarkerL.png +0 -0
- assets/img/default-icons/orange_MarkerM.png +0 -0
- assets/img/default-icons/orange_MarkerN.png +0 -0
- assets/img/default-icons/orange_MarkerO.png +0 -0
- assets/img/default-icons/orange_MarkerP.png +0 -0
- assets/img/default-icons/orange_MarkerQ.png +0 -0
- assets/img/default-icons/orange_MarkerR.png +0 -0
- assets/img/default-icons/orange_MarkerS.png +0 -0
- assets/img/default-icons/orange_MarkerT.png +0 -0
- assets/img/default-icons/orange_MarkerU.png +0 -0
- assets/img/default-icons/orange_MarkerV.png +0 -0
- assets/img/default-icons/orange_MarkerW.png +0 -0
- assets/img/default-icons/orange_MarkerX.png +0 -0
- assets/img/default-icons/orange_MarkerY.png +0 -0
- assets/img/default-icons/orange_MarkerZ.png +0 -0
- assets/img/default-icons/pageblue-blank.png +0 -0
- assets/img/default-icons/pageblue-dot.png +0 -0
- assets/img/default-icons/paleblue-blank.png +0 -0
- assets/img/default-icons/paleblue-dot.png +0 -0
- assets/img/default-icons/paleblue_MarkerA.png +0 -0
- assets/img/default-icons/paleblue_MarkerB.png +0 -0
- assets/img/default-icons/paleblue_MarkerC.png +0 -0
- assets/img/default-icons/paleblue_MarkerD.png +0 -0
- assets/img/default-icons/paleblue_MarkerE.png +0 -0
- assets/img/default-icons/paleblue_MarkerF.png +0 -0
- assets/img/default-icons/paleblue_MarkerG.png +0 -0
- assets/img/default-icons/paleblue_MarkerH.png +0 -0
- assets/img/default-icons/paleblue_MarkerI.png +0 -0
- assets/img/default-icons/paleblue_MarkerJ.png +0 -0
- assets/img/default-icons/paleblue_MarkerK.png +0 -0
- assets/img/default-icons/paleblue_MarkerL.png +0 -0
- assets/img/default-icons/paleblue_MarkerM.png +0 -0
- assets/img/default-icons/paleblue_MarkerN.png +0 -0
- assets/img/default-icons/paleblue_MarkerO.png +0 -0
- assets/img/default-icons/paleblue_MarkerP.png +0 -0
- assets/img/default-icons/paleblue_MarkerQ.png +0 -0
- assets/img/default-icons/paleblue_MarkerR.png +0 -0
- assets/img/default-icons/paleblue_MarkerS.png +0 -0
- assets/img/default-icons/paleblue_MarkerT.png +0 -0
- assets/img/default-icons/paleblue_MarkerU.png +0 -0
- assets/img/default-icons/paleblue_MarkerV.png +0 -0
- assets/img/default-icons/paleblue_MarkerW.png +0 -0
- assets/img/default-icons/paleblue_MarkerX.png +0 -0
- assets/img/default-icons/paleblue_MarkerY.png +0 -0
- assets/img/default-icons/paleblue_MarkerZ.png +0 -0
- assets/img/default-marker.png +0 -0
- assets/img/help.png +0 -0
- {admin/assets → assets}/img/icons-app-000.svg +0 -0
- {admin/assets → assets}/img/icons-infowindow-002.svg +0 -0
- includes/assets/img/loading.GIF → assets/img/loading-large.GIF +0 -0
- assets/img/loading.gif +0 -0
- assets/img/map-mascot.svg +39 -0
- assets/img/maps-builder-logo-no-pro.svg +66 -0
- assets/img/maps-builder-logo-small-non-pro.png +0 -0
- assets/img/maps-builder-logo-small.png +0 -0
- assets/img/maps-builder-mascot.png +0 -0
- {admin/assets → assets}/img/marker-btn.png +0 -0
- {admin/assets → assets}/img/new-window-icon.png +0 -0
- {admin/assets → assets}/img/powered-by-google-on-white.png +0 -0
- {includes/assets → assets}/img/review_stars.png +0 -0
- assets/img/spinner-2x.gif +0 -0
- {admin/assets → assets}/img/spinner.gif +0 -0
- assets/img/spotlight-poi.png +0 -0
- {public/assets → assets}/img/temp-marker.png +0 -0
- {admin/assets → assets}/img/wordimpress-logo-small.png +0 -0
- {admin/assets/js → assets/js/admin}/admin-google-map.js +317 -286
- assets/js/admin/admin-google-map.min.js +1 -0
- assets/js/admin/admin-maps-controls.js +205 -0
- assets/js/admin/admin-maps-controls.min.js +1 -0
- assets/js/admin/admin-maps-magnific.js +169 -0
- assets/js/admin/admin-maps-magnific.min.js +1 -0
- {admin/assets/js → assets/js/admin}/admin-settings.js +6 -3
- assets/js/admin/admin-settings.min.js +1 -0
- assets/js/admin/admin-shortcode.js +117 -0
- assets/js/admin/admin-shortcode.min.js +1 -0
- assets/js/admin/admin-widget.js +39 -0
- assets/js/admin/admin-widget.min.js +1 -0
- assets/js/admin/maps-shortcode-placeholder.jpg +0 -0
- assets/js/admin/shortcode-iframe.js +124 -0
- assets/js/admin/shortcode-iframe.min.js +1 -0
- {admin/assets/js → assets/js/admin}/snazzy.json +0 -0
- {public/assets/js → assets/js/frontend}/google-maps-builder.js +99 -38
- assets/js/frontend/google-maps-builder.min.js +1 -0
- assets/js/plugins/gmb-magnific.js +4 -0
- assets/js/plugins/gmb-magnific.min.js +1 -0
- {admin/includes/tooltips → assets/js/plugins}/jquery.qtip.js +3 -3
- assets/js/plugins/jquery.qtip.min.js +3 -0
- assets/scss/admin/_mixins.scss +64 -0
- assets/scss/admin/builder.scss +619 -0
- assets/scss/admin/cmb2-custom.scss +286 -0
- assets/scss/admin/gmb-admin.scss +19 -0
- assets/scss/admin/magnific-builder.scss +317 -0
- assets/scss/admin/modal-markers.scss +216 -0
- assets/scss/admin/settings.scss +266 -0
- assets/scss/admin/widget.scss +36 -0
- assets/scss/frontend/infowindow.scss +104 -0
- assets/scss/frontend/maps-builder.scss +11 -0
- assets/scss/frontend/maps.scss +33 -0
- admin/assets/css/grid.css → assets/scss/plugins/grid.scss +0 -0
- assets/scss/plugins/magnific.scss +489 -0
- admin/includes/tooltips/jquery.qtip.css → assets/scss/plugins/qtip2.scss +11 -11
- assets/scss/plugins/tipsy.scss +135 -0
- google-maps-builder.php +286 -37
- includes/admin/admin-actions.php +31 -0
- includes/admin/class-gmb-admin.php +815 -0
- includes/admin/class-gmb-settings.php +341 -0
- includes/admin/class-gmb-shortcode-generator.php +402 -0
- includes/admin/shortcode-generator-i18n.php +8 -0
- includes/admin/system-info.php +228 -0
GulpFile.js
ADDED
@@ -0,0 +1,155 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Maps Builder Gulp File
|
3 |
+
* @description Compiles SCSS, minifies scripts, renames files, and many other useful tasks; using Gulp.js
|
4 |
+
* @since 2.0
|
5 |
+
*/
|
6 |
+
|
7 |
+
/* Modules (Can be installed with npm install command using package.json)
|
8 |
+
------------------------------------- */
|
9 |
+
var gulp = require( 'gulp' ),
|
10 |
+
uglify = require( 'gulp-uglify' ),
|
11 |
+
gutil = require( 'gulp-util' ),
|
12 |
+
rename = require( 'gulp-rename' ),
|
13 |
+
watch = require( 'gulp-watch' ),
|
14 |
+
minifyCss = require( 'gulp-minify-css' ),
|
15 |
+
sourcemaps = require( 'gulp-sourcemaps' ),
|
16 |
+
autoprefixer = require( 'gulp-autoprefixer' ),
|
17 |
+
livereload = require( 'gulp-livereload' ),
|
18 |
+
del = require( 'del' ),
|
19 |
+
sass = require( 'gulp-sass' ),
|
20 |
+
concat = require( 'gulp-concat' ),
|
21 |
+
notify = require( 'gulp-notify' ),
|
22 |
+
minifyCSS = require( 'gulp-minify-css' );
|
23 |
+
|
24 |
+
|
25 |
+
/* Old Paths
|
26 |
+
------------------------------------- */
|
27 |
+
var old_source_paths = {
|
28 |
+
scripts: ['assets/js/*.js', '!assets/js/*.min.js'],
|
29 |
+
styles : ['assets/css/*.css', '!assets/css/*.min.css']
|
30 |
+
};
|
31 |
+
|
32 |
+
|
33 |
+
/* Paths
|
34 |
+
------------------------------------- */
|
35 |
+
var source_paths = {
|
36 |
+
admin_styles : ['./assets/scss/**/gmb-admin.scss'],
|
37 |
+
plugin_styles : ['./assets/scss/**/*.scss'],
|
38 |
+
frontend_styles : ['./assets/scss/frontend/maps-builder.scss'],
|
39 |
+
scripts : ['./assets/js/**/*.js', '!./assets/js/**/*.min.js'],
|
40 |
+
frontend_scripts: [
|
41 |
+
'./assets/js/plugins/give-magnific.min.js',
|
42 |
+
'./assets/js/frontend/*.min.js' //Frontend scripts need to be loaded last
|
43 |
+
]
|
44 |
+
};
|
45 |
+
|
46 |
+
|
47 |
+
/* Admin SCSS Task
|
48 |
+
------------------------------------- */
|
49 |
+
gulp.task( 'admin_styles', function () {
|
50 |
+
return gulp.src( source_paths.admin_styles )
|
51 |
+
.pipe( sourcemaps.init() )
|
52 |
+
.pipe( autoprefixer() )
|
53 |
+
.pipe( sass( {
|
54 |
+
errLogToConsole: true
|
55 |
+
} ) )
|
56 |
+
.pipe( rename( 'gmb-admin.css' ) )
|
57 |
+
.pipe( sourcemaps.write( '.' ) )
|
58 |
+
.pipe( gulp.dest( './assets/css' ) )
|
59 |
+
.pipe( rename( 'gmb-admin.min.css' ) )
|
60 |
+
.pipe( minifyCSS() )
|
61 |
+
.pipe( sourcemaps.write() )
|
62 |
+
.pipe( gulp.dest( './assets/css' ) )
|
63 |
+
.pipe( livereload() )
|
64 |
+
.pipe( notify( {
|
65 |
+
message: 'Admin styles task complete!',
|
66 |
+
onLast : true //only notify on completion of task
|
67 |
+
} ) );
|
68 |
+
} );
|
69 |
+
|
70 |
+
|
71 |
+
/* Frontend SCSS Task
|
72 |
+
------------------------------------- */
|
73 |
+
gulp.task( 'frontend_styles', function () {
|
74 |
+
return gulp.src( source_paths.frontend_styles )
|
75 |
+
.pipe( sourcemaps.init() ) //start up sourcemapping
|
76 |
+
.pipe( autoprefixer() ) //add prefixes for older browsers
|
77 |
+
.pipe( sass( {
|
78 |
+
errLogToConsole: true
|
79 |
+
} ) ) //compile SASS; ensure any errors don't stop gulp watch
|
80 |
+
.pipe( rename( 'google-maps-builder.css' ) ) //rename for our main un-minified file
|
81 |
+
.pipe( sourcemaps.write( '.' ) ) //write SCSS source maps to the appropriate plugin dir
|
82 |
+
.pipe( gulp.dest( './assets/css' ) ) //place compiled file in appropriate directory
|
83 |
+
.pipe( rename( 'google-maps-builder.min.css' ) ) //rename for our minified version
|
84 |
+
.pipe( minifyCSS() ) //actually minify the file
|
85 |
+
.pipe( sourcemaps.write( '' ) ) //write SCSS source maps to the appropriate plugin dir
|
86 |
+
.pipe( gulp.dest( './assets/css' ) ) //place the minified compiled file
|
87 |
+
.pipe( livereload() ) //reload browser
|
88 |
+
.pipe( notify( {
|
89 |
+
message: 'Frontend styles task complete!',
|
90 |
+
onLast : true //notify developer: only notify on completion of task (prevents multiple notifications per file)
|
91 |
+
} ) );
|
92 |
+
} );
|
93 |
+
|
94 |
+
|
95 |
+
/* JS
|
96 |
+
------------------------------------- */
|
97 |
+
gulp.task( 'scripts', function () {
|
98 |
+
return gulp.src( source_paths.scripts )
|
99 |
+
.pipe( uglify( {
|
100 |
+
preserveComments: 'false'
|
101 |
+
} ) )
|
102 |
+
.pipe( rename( {suffix: ".min"} ) )
|
103 |
+
.pipe( gulp.dest( 'assets/js' ) )
|
104 |
+
.pipe( notify( {
|
105 |
+
message: 'Scripts task complete!',
|
106 |
+
onLast : true //only notify on completion of task (prevents multiple notifications per file)
|
107 |
+
} ) );
|
108 |
+
//.pipe( livereload() );
|
109 |
+
} );
|
110 |
+
|
111 |
+
|
112 |
+
/* Watch Files For Changes
|
113 |
+
------------------------------------- */
|
114 |
+
gulp.task( 'watch', function () {
|
115 |
+
|
116 |
+
//Start up livereload on this biz
|
117 |
+
livereload.listen();
|
118 |
+
|
119 |
+
//Add watching on Admin SCSS-files
|
120 |
+
gulp.watch( 'assets/scss/admin/*.scss', function () {
|
121 |
+
gulp.start( 'admin_styles' );
|
122 |
+
} );
|
123 |
+
|
124 |
+
//Add watching on Frontend SCSS-files
|
125 |
+
//gulp.watch( 'assets/scss/frontend/*.scss', function () {
|
126 |
+
// gulp.start( 'frontend_styles' );
|
127 |
+
//} );
|
128 |
+
|
129 |
+
//Add watching on JS files
|
130 |
+
gulp.watch( source_paths.scripts, ['scripts'] );
|
131 |
+
|
132 |
+
//Add watching on template-files
|
133 |
+
gulp.watch( 'templates/*.php', function () {
|
134 |
+
livereload(); //and reload when changed
|
135 |
+
} );
|
136 |
+
|
137 |
+
} );
|
138 |
+
|
139 |
+
/* Handle errors elegantly with gulp-notify
|
140 |
+
------------------------------------- */
|
141 |
+
var onError = function ( err ) {
|
142 |
+
gutil.log( '======= ERROR. ========\n' );
|
143 |
+
notify.onError( "ERROR: " + err.plugin )( err ); // for growl
|
144 |
+
gutil.beep();
|
145 |
+
this.end();
|
146 |
+
};
|
147 |
+
|
148 |
+
|
149 |
+
|
150 |
+
/* Default Gulp task
|
151 |
+
------------------------------------- */
|
152 |
+
gulp.task( 'default', function () {
|
153 |
+
gulp.start( 'admin_styles', 'frontend_styles', 'scripts', 'watch' );
|
154 |
+
notify( {message: 'Default task complete'} )
|
155 |
+
} );
|
README.md
ADDED
@@ -0,0 +1,96 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
# Maps Builder - Google Maps WordPress Plugin
|
2 |
+
|
3 |
+
[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/WordImpress/google-maps-builder/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/WordImpress/google-maps-builder/?branch=master) [![License](https://img.shields.io/badge/license-GPL--2.0%2B-green.svg)](https://github.com/WordImpress/Give/blob/master/license.txt)
|
4 |
+
|
5 |
+
One WordPress Google Maps plugin to rule them all. Maps Builder is intuitive, sleek, powerful and easy to use. Forget the rest, use the best.
|
6 |
+
|
7 |
+
## Description
|
8 |
+
|
9 |
+
Maps Builder isn't just another Google Maps plugin. It's built from the ground up to be the easiest, most intuitive, and fastest Google Maps plugin for WordPress. Visually build powerful customized Google Maps to use on your WordPress site quickly and easily without ever having to touch a bit of code.
|
10 |
+
|
11 |
+
## Plugin Highlights:
|
12 |
+
|
13 |
+
* **Google Places API integration** - Display nearby business locations and points of interest complete with ratings, custom marker icon
|
14 |
+
* **Snazzy Maps integration** - Create truly unique Google Map themes that look great with any design powered by [Snazzy Maps](http://snazzymaps.com/).
|
15 |
+
* **Unique Marker Icons** - The only plugin with [Map Icons](map-icons.com) integration; set icon and marker colors for truly unique markers
|
16 |
+
* **Intuitive UI** that seamlessly integrates with WordPress' - no eye sores or outdated interfaces here
|
17 |
+
* **Small Footprint** - GMB does not create any new database tables, not even one
|
18 |
+
* **Optimized** - All scripts and styles are optimized and packaged with Grunt
|
19 |
+
* **Supported and Developed** We developed this plugin with high quality code, that's tested and supported. Find a bug or have an issue? Let us know. We'll fix it.
|
20 |
+
|
21 |
+
## Marker Creation
|
22 |
+
|
23 |
+
Google Maps builder features a simple **"Point and Click" marker creation system**. As well, you can add markers using an intuitive Google autocomplete search field. As well, **Bulk edit marker data ** using meta fields attached to each marker's content.
|
24 |
+
|
25 |
+
## Map Themes
|
26 |
+
|
27 |
+
Want to add some pazazz to your maps? [Snazzy Maps](http://snazzymaps.com/) themes are baked right in to Google Map Builder. This means your maps can stand out, fit into any design, and look unique and intriguing.
|
28 |
+
|
29 |
+
## Granular Map Control
|
30 |
+
|
31 |
+
Fine tune your Google Maps with full control over settings for street view, zooming, panning, dragging, and more. Set defaults for each controls so each new map you create is just the way you like it.
|
32 |
+
|
33 |
+
## Actively Developed and Supported
|
34 |
+
|
35 |
+
This plugin is currently being actively developed, which means consistent improvements and enhancements. As well, we won't shy away from bug fixes and further code refractoring and optimization.
|
36 |
+
|
37 |
+
# Installation
|
38 |
+
|
39 |
+
This section describes how to install the plugin and get it working.
|
40 |
+
|
41 |
+
## Using The WordPress Dashboard
|
42 |
+
|
43 |
+
1. Navigate to the 'Add New' in the plugins dashboard
|
44 |
+
2. Search for 'Google Maps Builder'
|
45 |
+
3. Click 'Install Now'
|
46 |
+
4. Activate the plugin on the Plugin dashboard
|
47 |
+
|
48 |
+
## Uploading in WordPress Dashboard
|
49 |
+
|
50 |
+
1. Navigate to the 'Add New' in the plugins dashboard
|
51 |
+
2. Navigate to the 'Upload' area
|
52 |
+
3. Select `google-maps-builder.zip` from your computer
|
53 |
+
4. Click 'Install Now'
|
54 |
+
5. Activate the plugin in the Plugin dashboard
|
55 |
+
|
56 |
+
## Using FTP
|
57 |
+
|
58 |
+
1. Download `google-maps-builder.zip`
|
59 |
+
2. Extract the `google-maps-builder` directory to your computer
|
60 |
+
3. Upload the `google-maps-builder` directory to the `/wp-content/plugins/` directory
|
61 |
+
4. Activate the plugin in the Plugin dashboard
|
62 |
+
|
63 |
+
# Frequently Asked Questions
|
64 |
+
|
65 |
+
1. **What sets this plugin apart from all the other Google Maps plugins for WordPress?*
|
66 |
+
|
67 |
+
There are a number features and functionality that set Maps Builder apart from the many WordPress Google Maps plugins. For starters, we promise this plugin will always have a light footprint. No extra tables or unnecessary overhead. Furthermore, the plugin is built from the ground up to be both easy and fun to use.
|
68 |
+
|
69 |
+
We have placed extra care and attention on the map creation process and are always looking to improve the UI with enhancements. It's our goal to integrate the plugin with the native WordPress admin UI without adding any distracting visuals. Finally, there are a number of additional features such as built in integration with Google Places and Routes APIs, Snazzy Maps, many marker icon libraries, and more. We suggest you give it for a test drive.
|
70 |
+
|
71 |
+
2. **Do I need a Google Maps API Key to use this plugin?*
|
72 |
+
|
73 |
+
No. You do not need a Google Maps API plugin to use this plugin but if you would like to track your usage you can enter it into the plugin settings screen.
|
74 |
+
|
75 |
+
3. **Does this plugin create any new database tables?*
|
76 |
+
|
77 |
+
Unlike many other Google Maps plugins, Google Maps Builder does not create a single new table in your WordPress database. There is no added database overhead or foreign MySQL queries. It's our guarantee that this plugin will never leave an orphaned table in your WordPress database.
|
78 |
+
|
79 |
+
4. **Where can I find the shortcodes for each map I create?*
|
80 |
+
|
81 |
+
You can find the shortcodes for each map on the post listing screen, within the post itself in the TinyMCE Map Builder button.
|
82 |
+
|
83 |
+
5. **What the heck is a shortcode and how do I use it?*
|
84 |
+
|
85 |
+
Maps Builder works by creating a plugin specific [WordPress shortcode](http://codex.wordpress.org/Shortcode). You can easily add maps to your posts with the Map Builder button integrated within the TinyMCE WordPress editor. You may also copy the shortcode for a specific map and enter in into a widget or directly within a metafiend. As well, you can use the WordPress [do_shortcode()](http://codex.wordpress.org/Function_Reference/do_shortcode) function to use it within your theme template files or plugins for further customization.
|
86 |
+
|
87 |
+
6. **Does this plugin include a widget for displaying maps?*
|
88 |
+
|
89 |
+
Yes! In the free version there is a basic widget for adding maps to sidebars. Upgrade to Pro for more control.
|
90 |
+
|
91 |
+
7. **How do I report a bug?**
|
92 |
+
|
93 |
+
We always welcome your feedback for improvements or if you have uncovered a bug. To report a bug please use the WordPress.org support forum or this GitHub repo issues trackers.
|
94 |
+
|
95 |
+
8. **Who is behind this plugin?*
|
96 |
+
WordImpress.com developed this and many more plugins. Check them all out at [WordImpress.com](https://wordimpress.com).
|
README.txt
CHANGED
@@ -1,26 +1,21 @@
|
|
1 |
-
=== Google Maps
|
2 |
Contributors: wordimpress, dlocc, webdevmattcrom
|
3 |
Donate link: http://wordimpress.com/
|
4 |
Tags: google maps, google map, google map widget, google map shortcode, maps, map, wp map, wp google maps, google maps directions, google maps builder, google maps plugin, google places, google places api, google maps api, google places reviews
|
5 |
-
Requires at least:
|
6 |
-
Tested up to: 4.
|
7 |
-
Stable tag:
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
11 |
-
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
-
|
16 |
-
With 10,000+ Active Installs we thought it was high-time to kick it up a notch with Maps Builder. We've launched a "Beta Campaign" to get feedback on our new features and look and feel. We've also built a phenomenal Pro version which we'll be giving away free licenses for in our Mascot Naming Contest. Here's all the relevant information you'll need to get your hands on it now and contribute and maybe WIN the contest.
|
17 |
-
_____________________________________________________________
|
18 |
-
[Blog Article](https://wordimpress.com/maps-builder-2-0-is-coming-and-you-can-help/) | [Feedback Form](https://wordimpress.com/maps-builder-beta-campaign/) | [Github](https://github.com/WordImpress/google-maps-builder/issues)
|
19 |
|
20 |
= Plugin Highlights: =
|
21 |
-
|
22 |
-
Google Maps Builder isn't just another Google Maps plugin. It's built from the ground up to be the easiest, most intuitive and fastest Google Maps plugin for WordPress. Visually build powerful customized Google Maps to use on your WordPress site quickly and easily without ever having to touch a bit of code.
|
23 |
-
|
24 |
* **Google Places API integration** - Display nearby business locations and points of interest complete with ratings, custom marker icon
|
25 |
* **Snazzy Maps integration** - Create truly unique Google Map themes that look great with any design powered by [Snazzy Maps](http://snazzymaps.com/).
|
26 |
* **Unique Marker Icons** - The only plugin with [Map Icons](map-icons.com) integration; set icon and marker colors for truly unique markers
|
@@ -29,6 +24,10 @@ Google Maps Builder isn't just another Google Maps plugin. It's built from the g
|
|
29 |
* **Optimized** - All scripts and styles are optimized and packaged with Grunt
|
30 |
* **No notices or warnings** We developed this plugins in debug mode. This results in high quality plugins with no errors, warnings or notices.
|
31 |
|
|
|
|
|
|
|
|
|
32 |
= Marker Creation =
|
33 |
|
34 |
Google Maps builder features a simple **"Point and Click" marker creation system**. As well, you can add markers using an intuitive Google autocomplete search field. As well, **Bulk edit marker data ** using meta fields attached to each marker's content.
|
@@ -45,6 +44,19 @@ Fine tune your Google Maps with full control over settings for street view, zoom
|
|
45 |
|
46 |
This plugin is actively developed and supported. This means you can expect an answer in the forums and consistent improvements and enhancements to the plugin itself. As well, we won't shy away from bug fixes or code refactoring and optimization.
|
47 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
48 |
== Installation ==
|
49 |
|
50 |
This section describes how to install the plugin and get it working.
|
@@ -75,13 +87,13 @@ This section describes how to install the plugin and get it working.
|
|
75 |
|
76 |
= What sets this plugin apart from all the other Google Maps plugins for WordPress? =
|
77 |
|
78 |
-
There are a number features and functionality that set
|
79 |
|
80 |
-
We have placed extra care and attention on the map creation process and are always looking to improve the UI with enhancements. It's our goal to integrate the plugin with the native WordPress admin UI without adding any distracting visuals. Finally, there are a number of additional features such as built in integration with Google Places
|
81 |
|
82 |
= Do I need a Google Places API Key to use this plugin? =
|
83 |
|
84 |
-
No. You do not need a Google
|
85 |
|
86 |
= Does this plugin create any new database tables? =
|
87 |
|
@@ -89,15 +101,15 @@ Unlike many other Google Maps plugins, Google Maps Builder does not create a sin
|
|
89 |
|
90 |
= Where can I find the shortcodes for each map I create? =
|
91 |
|
92 |
-
You can find the shortcodes for each map on the post listing screen, within the post itself in the
|
93 |
|
94 |
= What the heck is a shortcode and how do I use it? =
|
95 |
|
96 |
-
|
97 |
|
98 |
= Does this plugin include a widget for displaying maps? =
|
99 |
|
100 |
-
|
101 |
|
102 |
= How do I report a bug? =
|
103 |
|
@@ -105,31 +117,53 @@ We always welcome your feedback for improvements or if you have uncovered a bug.
|
|
105 |
|
106 |
= Who is behind this plugin? =
|
107 |
|
108 |
-
|
109 |
-
|
110 |
-
== Roadmap ==
|
111 |
-
|
112 |
-
With 10,000+ Active Installs we thought it was high-time to kick it up a notch with Maps Builder. We've launched a "Beta Campaign" to get feedback on our new features and look and feel. We've also built a phenomenal Pro version which we'll be giving away free licenses for in our Mascot Naming Contest. Here's all the relevant information you'll need to get your hands on it now and contribute and maybe WIN the contest.
|
113 |
-
_____________________________________________________________
|
114 |
-
[Blog Article](https://wordimpress.com/maps-builder-2-0-is-coming-and-you-can-help/) | [Feedback Form](https://wordimpress.com/maps-builder-beta-campaign/) | [Github](https://github.com/WordImpress/google-maps-builder/issues)
|
115 |
|
116 |
== Screenshots ==
|
117 |
|
118 |
-
1. **
|
|
|
|
|
119 |
|
120 |
-
|
121 |
|
122 |
-
|
123 |
|
124 |
-
|
125 |
|
126 |
-
|
127 |
|
128 |
-
|
129 |
-
Version 1.0.3 will soon be updated to 2.0. [Find details here](https://wordimpress.com/maps-builder-2-0-is-coming-and-you-can-help/)
|
130 |
|
131 |
== Changelog ==
|
132 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
133 |
= 1.0.3 =
|
134 |
* New: New check for multiple Google Maps API calls to ensure more compatibility with themes and plugins which include the same maps API JS. If the check detects multiple enqueues a warning appears in the admin panel.
|
135 |
* Additional Testing: Reviewed WooCommerce and Contact Forms 7 compatibility within WP admin panel
|
1 |
+
=== Maps Builder - Google Maps Plugin ===
|
2 |
Contributors: wordimpress, dlocc, webdevmattcrom
|
3 |
Donate link: http://wordimpress.com/
|
4 |
Tags: google maps, google map, google map widget, google map shortcode, maps, map, wp map, wp google maps, google maps directions, google maps builder, google maps plugin, google places, google places api, google maps api, google places reviews
|
5 |
+
Requires at least: 4.0
|
6 |
+
Tested up to: 4.3
|
7 |
+
Stable tag: 2.0
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
11 |
+
The most flexible, robust, and easy to use WordPress plugin for creating powerful Google Maps directly on your website.
|
12 |
|
13 |
== Description ==
|
14 |
|
15 |
+
Maps Builder isn't just another Google Maps plugin. It's built from the ground up to be the easiest, most intuitive and fastest Google Maps plugin for WordPress. Visually build powerful customized Google Maps to use on your WordPress site quickly and easily without ever having to touch a bit of code.
|
|
|
|
|
|
|
16 |
|
17 |
= Plugin Highlights: =
|
18 |
+
* **Fullscreen Live Map Builder** - The Map Builder let's you edit fullscreen in a Customizer-like environment so you can see your map come to life right before your eyes.
|
|
|
|
|
19 |
* **Google Places API integration** - Display nearby business locations and points of interest complete with ratings, custom marker icon
|
20 |
* **Snazzy Maps integration** - Create truly unique Google Map themes that look great with any design powered by [Snazzy Maps](http://snazzymaps.com/).
|
21 |
* **Unique Marker Icons** - The only plugin with [Map Icons](map-icons.com) integration; set icon and marker colors for truly unique markers
|
24 |
* **Optimized** - All scripts and styles are optimized and packaged with Grunt
|
25 |
* **No notices or warnings** We developed this plugins in debug mode. This results in high quality plugins with no errors, warnings or notices.
|
26 |
|
27 |
+
**[Check out the Plugin Demo](https://mapsbuilder.wordimpress.com/)**
|
28 |
+
|
29 |
+
**Want more? [Upgrade to Maps Builder Pro Today!](https://wordimpress.com/plugins/maps-builder-pro/)**
|
30 |
+
|
31 |
= Marker Creation =
|
32 |
|
33 |
Google Maps builder features a simple **"Point and Click" marker creation system**. As well, you can add markers using an intuitive Google autocomplete search field. As well, **Bulk edit marker data ** using meta fields attached to each marker's content.
|
44 |
|
45 |
This plugin is actively developed and supported. This means you can expect an answer in the forums and consistent improvements and enhancements to the plugin itself. As well, we won't shy away from bug fixes or code refactoring and optimization.
|
46 |
|
47 |
+
= You'll Love Maps Builder Pro =
|
48 |
+
|
49 |
+
Maps Builder Pro gives you all that you love about Maps Builder Basic, plus lots of new and advanced features. Here's the highlights:
|
50 |
+
|
51 |
+
* **Post Mashup** - Automatically populate markers on a map based on your own posts, pages, or custom post types [See Demo](http://mapsbuilder.wordimpress.com/demo/mashups/).
|
52 |
+
* **Marker Clustering** - When zoomed out, show one "cluster" marker with a number to indicate how many markers are in close proximity [See Demo](http://mapsbuilder.wordimpress.com/demo/marker-clustering/).
|
53 |
+
* **Layers** - Show Bicycle, Transit, and/or Traffic layers with one click on any map [See Demo](http://mapsbuilder.wordimpress.com/demo/transit-layer/).
|
54 |
+
* **Custom Marker** - Upload your own custom marker for any marker in your map [See Demo](http://mapsbuilder.wordimpress.com/demo/marker-icons-flexibility/).
|
55 |
+
* **Import/Export** - Import and Export all your maps or markers anywhere you like.
|
56 |
+
* **Priority Support** - Maps Builder Pro users benefit from our Priority Support Forum. We go the extra mile for you and your website needs.
|
57 |
+
|
58 |
+
[Upgrade to Maps Builder Pro Today!](https://wordimpress.com/plugins/maps-builder-pro/)
|
59 |
+
|
60 |
== Installation ==
|
61 |
|
62 |
This section describes how to install the plugin and get it working.
|
87 |
|
88 |
= What sets this plugin apart from all the other Google Maps plugins for WordPress? =
|
89 |
|
90 |
+
There are a number features and functionality that set Maps Builder apart from the many WordPress Google Maps plugins. For starters, we promise this plugin will always have a light footprint. No extra tables or unnecessary overhead. Furthermore, the plugin is built from the ground up to be both easy and fun to use.
|
91 |
|
92 |
+
We have placed extra care and attention on the map creation process and are always looking to improve the UI with enhancements. It's our goal to integrate the plugin with the native WordPress admin UI without adding any distracting visuals. Finally, there are a number of additional features such as built in integration with Google Places and Routes APIs, Snazzy Maps, many marker icon libraries, and more. We suggest you give it for a test drive.
|
93 |
|
94 |
= Do I need a Google Places API Key to use this plugin? =
|
95 |
|
96 |
+
No. You do not need a Google Maps API plugin to use this plugin but if you would like to track your usage you can enter it into the plugin settings screen.
|
97 |
|
98 |
= Does this plugin create any new database tables? =
|
99 |
|
101 |
|
102 |
= Where can I find the shortcodes for each map I create? =
|
103 |
|
104 |
+
You can find the shortcodes for each map on the post listing screen, within the post itself in the TinyMCE Map Builder button.
|
105 |
|
106 |
= What the heck is a shortcode and how do I use it? =
|
107 |
|
108 |
+
Maps Builder works by creating a plugin specific [WordPress shortcode](http://codex.wordpress.org/Shortcode). You can easily add maps to your posts with the Map Builder button integrated within the TinyMCE WordPress editor. You may also copy the shortcode for a specific map and enter in into a widget or directly within a metafiend. As well, you can use the WordPress [do_shortcode()](http://codex.wordpress.org/Function_Reference/do_shortcode) function to use it within your theme template files or plugins for further customization.
|
109 |
|
110 |
= Does this plugin include a widget for displaying maps? =
|
111 |
|
112 |
+
Yes! In the free version there is a basic widget for adding maps to sidebars. Upgrade to Pro for more control.
|
113 |
|
114 |
= How do I report a bug? =
|
115 |
|
117 |
|
118 |
= Who is behind this plugin? =
|
119 |
|
120 |
+
Maps Builder is developed and supported by [WordImpress](https://wordimpress.com). We build impressive Plugins and Themes for your WordPress website. Find out more about us and read more great tutorials at [https://wordimpress.com](https://wordimpress.com).
|
|
|
|
|
|
|
|
|
|
|
|
|
121 |
|
122 |
== Screenshots ==
|
123 |
|
124 |
+
1. **Fullscreen Map Builder** - Build your map in an immersive fullscreen Customizer-like environment with live refresh and see your map built right in front of your eyes.
|
125 |
+
|
126 |
+
2. **Add a new Marker with just a click** - Use the "Drop a Marker" function to add new markers with one click.
|
127 |
|
128 |
+
3. **Customized Marker Images** - Configure a marker to fit your location. Easily adjust the marker, icon and color.
|
129 |
|
130 |
+
4. **Frontend View** - A view the a map on the frontend of a WordPress site. This map shows the 45° angle view with labels.
|
131 |
|
132 |
+
5. **Settings Panel** - The Maps Builder Pro Settings page. Maps Builder Basic includes these options, but not the "License" tab.
|
133 |
|
134 |
+
== Upgrade Notice ==
|
135 |
|
136 |
+
Maps Builder 2.0 is a significant upgrade. After you update, you'll see a notice to update your maps. Make sure to click that.
|
|
|
137 |
|
138 |
== Changelog ==
|
139 |
|
140 |
+
= 2.0 =
|
141 |
+
* General: This update focused on fixing a lot of pre-existing bugs commonly submitted to WordPress.org as well as improving the plugin base for future code enhancements.
|
142 |
+
* New: Enhanced Full Screen Maps Builder mode that allows you to build maps in a customizer-like experience.
|
143 |
+
* New: Widget for inserting maps into your theme's sidebars #39 @see: https://github.com/WordImpress/google-maps-builder/issues/39
|
144 |
+
* New: Shortcode builder integrated into TinyMCE to make adding maps to your posts a breeze. @see: https://github.com/WordImpress/google-maps-builder/issues/24
|
145 |
+
* New: Upgrade process for maps using Google's old reference ID in place for the new Place_ID @see: https://github.com/WordImpress/google-maps-builder/issues/18
|
146 |
+
* New: Switch and Test all Google Places API calls to "Reference ID" or "ID" to Google's new "Places ID"
|
147 |
+
* New: Gulp implemented for minifying scripts
|
148 |
+
* New: Uber cool new logo design and mascot: "Marko the Map Builder"
|
149 |
+
* New: Control the map height with a new control to select percentage or pixel height values @see: https://github.com/WordImpress/google-maps-builder/issues/13
|
150 |
+
* New: You can now choose whether or not you want to see the place info within your infowindows @see: https://github.com/WordImpress/google-maps-builder/issues/62
|
151 |
+
* Improvement: Upgraded CMB1 to CMB2
|
152 |
+
* Improvement: Class improvements and modernized structure organization
|
153 |
+
* Improvement: Plugin structure significantly changed to better reflect our development preference. The current structure is similar to Give, EDD, and other reputable plugins.
|
154 |
+
* Improvement: Swapped out Thickbox for Magnific popup @see: https://github.com/WordImpress/google-maps-builder/issues/11
|
155 |
+
* Improvement: Register scripts and styles properly prior to enqueuing them for other plugins and themes
|
156 |
+
* Improvement: Marker Creation Improvements - 1) Sometimes markers disappear in the post edit screen. 2) Sometimes markers don't get output on the front end correctly. 3)Sometimes markers don't get generated in the post edit screen at all.
|
157 |
+
* Fix: Investigated + resolved several Google Maps API conflicts - Often when a user has a theme or plugin that registers Google Maps it breaks our plugin or ours breaks theirs. We now check for other Google Map enqueues, and if present the plugin attempts to dequeue them in favor for ours. So far this has fixed issues with Uber Menu 3, Contact Forms 7, as well as many additional plugins.
|
158 |
+
* Fix: Maps placed in hidden tabs now redraw properly when the tab is selected
|
159 |
+
* Fix: Found and resolved conflict with ACF plugin Google Maps field
|
160 |
+
* Fix: Removed non-functional marker upload field (will be added to Pro version in a much enhanced format).
|
161 |
+
* Fix: Maps icons fixed to no longer show first character incorrectly @see: https://github.com/scottdejonge/Map-Icons/issues/26
|
162 |
+
* General: The plugin's official name has dropped the word "Google" for brand compliance. It's now called "Maps Builder"
|
163 |
+
* General: Removed "Places API Key" field because Google Maps API doesn't require it to query the library
|
164 |
+
* General: Added "Google Maps API Key" field to track API usage within Google's Developer Console @see: https://github.com/WordImpress/google-maps-builder/issues/48
|
165 |
+
* General: Javascript cleanup and optimization
|
166 |
+
|
167 |
= 1.0.3 =
|
168 |
* New: New check for multiple Google Maps API calls to ensure more compatibility with themes and plugins which include the same maps API JS. If the check detects multiple enqueues a warning appears in the admin panel.
|
169 |
* Additional Testing: Reviewed WooCommerce and Contact Forms 7 compatibility within WP admin panel
|
admin/assets/css/admin-settings.css
DELETED
@@ -1,394 +0,0 @@
|
|
1 |
-
<<<<<<< .mine
|
2 |
-
/**
|
3 |
-
* Google Places Map CPT Styles
|
4 |
-
*/
|
5 |
-
|
6 |
-
.wrap {
|
7 |
-
margin-left: -5px;
|
8 |
-
}
|
9 |
-
|
10 |
-
.clear:before,
|
11 |
-
.clear:after {
|
12 |
-
content: " ";
|
13 |
-
display: table;
|
14 |
-
}
|
15 |
-
|
16 |
-
.clear:after {
|
17 |
-
clear: both;
|
18 |
-
}
|
19 |
-
|
20 |
-
table.form-table {
|
21 |
-
margin:0 0 20px;
|
22 |
-
}
|
23 |
-
|
24 |
-
/*---------------------------
|
25 |
-
Header
|
26 |
-
-----------------------------*/
|
27 |
-
|
28 |
-
.main-heading {
|
29 |
-
font-size: 36px;
|
30 |
-
font-weight: 400;
|
31 |
-
line-height: 1.1em;
|
32 |
-
margin: 10px 0 20px;
|
33 |
-
}
|
34 |
-
|
35 |
-
.main-subheading {
|
36 |
-
font-size: 20px;
|
37 |
-
line-height: 1.4em;
|
38 |
-
}
|
39 |
-
|
40 |
-
.logo-svg {
|
41 |
-
margin: 15px 0 0;
|
42 |
-
}
|
43 |
-
|
44 |
-
.logo-svg.logo-svg-small {
|
45 |
-
float: right;
|
46 |
-
margin: 0;
|
47 |
-
}
|
48 |
-
|
49 |
-
.gmb-plugin-heading {
|
50 |
-
width: 170px;
|
51 |
-
float: left;
|
52 |
-
margin: 9px 0 0;
|
53 |
-
}
|
54 |
-
|
55 |
-
.new-window {
|
56 |
-
background: url('../img/new-window-icon.png') no-repeat right 5px transparent;
|
57 |
-
padding-right: 13px;
|
58 |
-
margin-right: 4px;
|
59 |
-
}
|
60 |
-
|
61 |
-
/* Social Media */
|
62 |
-
|
63 |
-
.social-items-wrap {
|
64 |
-
float: left;
|
65 |
-
}
|
66 |
-
|
67 |
-
.social-items-wrap > div {
|
68 |
-
display: inline-block;
|
69 |
-
}
|
70 |
-
|
71 |
-
.google-plus {
|
72 |
-
margin-left: 20px;
|
73 |
-
display: inline;
|
74 |
-
width: 190px;
|
75 |
-
}
|
76 |
-
|
77 |
-
.wordimpress-logo {
|
78 |
-
float: left;
|
79 |
-
margin: -7px 0 0;
|
80 |
-
}
|
81 |
-
|
82 |
-
.logo-link {
|
83 |
-
background: url('../img/wordimpress-logo-small.png') no-repeat 0 0 transparent;
|
84 |
-
width: 100px;
|
85 |
-
height: 40px;
|
86 |
-
display: block;
|
87 |
-
}
|
88 |
-
|
89 |
-
.hide-welcome {
|
90 |
-
margin: 2px 0 0 30px;
|
91 |
-
}
|
92 |
-
|
93 |
-
.hide-welcome span {
|
94 |
-
background: url('../img/arrows.png') no-repeat 0 -33px rgba(0, 0, 0, 0);
|
95 |
-
width: 15px;
|
96 |
-
height: 14px;
|
97 |
-
display: inline-block;
|
98 |
-
margin-left: 3px;
|
99 |
-
}
|
100 |
-
|
101 |
-
.pull-left {
|
102 |
-
float: left;
|
103 |
-
}
|
104 |
-
|
105 |
-
.pull-right {
|
106 |
-
float: right;
|
107 |
-
}
|
108 |
-
|
109 |
-
.small-desc {
|
110 |
-
font-size: 12px;
|
111 |
-
font-style: italic;
|
112 |
-
color: #B3B3B3;
|
113 |
-
}
|
114 |
-
|
115 |
-
/*---------------------------
|
116 |
-
Map Options Tab
|
117 |
-
-----------------------------*/
|
118 |
-
|
119 |
-
.size-label {
|
120 |
-
margin: 8px 10px 0 0;
|
121 |
-
font-style: italic;
|
122 |
-
width: 50px;
|
123 |
-
}
|
124 |
-
|
125 |
-
/* Map Size */
|
126 |
-
|
127 |
-
.width_unit_label, .width_radio, .map-width, .map-height, .size-label, .radio-left, .label-left {
|
128 |
-
float: left !important;
|
129 |
-
}
|
130 |
-
|
131 |
-
#width_wrap {
|
132 |
-
margin: 0 0 10px;
|
133 |
-
}
|
134 |
-
|
135 |
-
#size_labels_wrap {
|
136 |
-
margin: 8px 0 0 10px;
|
137 |
-
padding: 0;
|
138 |
-
float: left;
|
139 |
-
}
|
140 |
-
|
141 |
-
#width_unit_percent {
|
142 |
-
margin: 0 3px 0 0;
|
143 |
-
}
|
144 |
-
|
145 |
-
#width_unit_px {
|
146 |
-
margin: 0 3px 0 8px;
|
147 |
-
}
|
148 |
-
|
149 |
-
.map-width, .map-height {
|
150 |
-
width: 55px !important
|
151 |
-
}
|
152 |
-
|
153 |
-
/* Lat Lng */
|
154 |
-
#lat-lng-wrap {
|
155 |
-
float: left;
|
156 |
-
clear: both;
|
157 |
-
margin: 15px 0 0;
|
158 |
-
display: none;
|
159 |
-
}
|
160 |
-
|
161 |
-
label.geocode-label {
|
162 |
-
width: 130px;
|
163 |
-
margin-right: 0;
|
164 |
-
}
|
165 |
-
|
166 |
-
label.yes-label {
|
167 |
-
margin-right: 10px;
|
168 |
-
}
|
169 |
-
|
170 |
-
#lat-lng-wrap input[type=text].latitude, #lat-lng-wrap input[type=text].longitude {
|
171 |
-
width: 120px;
|
172 |
-
float: left;
|
173 |
-
}
|
174 |
-
|
175 |
-
.lat-lng-wrap {
|
176 |
-
margin: 0 0 10px;
|
177 |
-
clear: none;
|
178 |
-
}
|
179 |
-
|
180 |
-
.lat-lng-wrap > span, .lat-lng-wrap > input {
|
181 |
-
float: left;
|
182 |
-
}
|
183 |
-
|
184 |
-
.lat-lng-wrap > span {
|
185 |
-
margin: 8px 5px 0 0;
|
186 |
-
width: 80px;
|
187 |
-
font-style: italic;
|
188 |
-
}
|
189 |
-
|
190 |
-
|
191 |
-
/*---------------------------
|
192 |
-
General Options Tab
|
193 |
-
-----------------------------*/
|
194 |
-
|
195 |
-
#gmb_menu_position {
|
196 |
-
width: 40px;
|
197 |
-
=======
|
198 |
-
/**
|
199 |
-
* Google Places Map CPT Styles
|
200 |
-
*/
|
201 |
-
|
202 |
-
.wrap {
|
203 |
-
margin-left: -5px;
|
204 |
-
}
|
205 |
-
|
206 |
-
.clear:before,
|
207 |
-
.clear:after {
|
208 |
-
content: " ";
|
209 |
-
display: table;
|
210 |
-
}
|
211 |
-
|
212 |
-
.clear:after {
|
213 |
-
clear: both;
|
214 |
-
}
|
215 |
-
|
216 |
-
table.form-table {
|
217 |
-
margin:0 0 20px;
|
218 |
-
}
|
219 |
-
|
220 |
-
/*---------------------------
|
221 |
-
Header
|
222 |
-
-----------------------------*/
|
223 |
-
|
224 |
-
.main-heading {
|
225 |
-
font-size: 36px;
|
226 |
-
font-weight: 400;
|
227 |
-
line-height: 1.1em;
|
228 |
-
margin: 10px 0 20px;
|
229 |
-
}
|
230 |
-
|
231 |
-
.main-subheading {
|
232 |
-
font-size: 20px;
|
233 |
-
line-height: 1.4em;
|
234 |
-
}
|
235 |
-
|
236 |
-
.logo-svg {
|
237 |
-
margin: 15px 0 0;
|
238 |
-
}
|
239 |
-
|
240 |
-
.logo-svg.logo-svg-small {
|
241 |
-
float: right;
|
242 |
-
margin: 0;
|
243 |
-
}
|
244 |
-
|
245 |
-
.gmb-plugin-heading {
|
246 |
-
width: 170px;
|
247 |
-
float: left;
|
248 |
-
margin: 9px 0 0;
|
249 |
-
}
|
250 |
-
|
251 |
-
.new-window {
|
252 |
-
background: url('../img/new-window-icon.png') no-repeat right 5px transparent;
|
253 |
-
padding-right: 13px;
|
254 |
-
margin-right: 4px;
|
255 |
-
}
|
256 |
-
|
257 |
-
/* Social Media */
|
258 |
-
|
259 |
-
.social-items-wrap {
|
260 |
-
float: left;
|
261 |
-
}
|
262 |
-
|
263 |
-
.social-items-wrap > div {
|
264 |
-
display: inline-block;
|
265 |
-
}
|
266 |
-
|
267 |
-
.google-plus {
|
268 |
-
margin-left: 20px;
|
269 |
-
display: inline;
|
270 |
-
width: 150px;
|
271 |
-
}
|
272 |
-
|
273 |
-
.wordimpress-logo {
|
274 |
-
float: left;
|
275 |
-
margin: -7px 0 0;
|
276 |
-
}
|
277 |
-
|
278 |
-
.logo-link {
|
279 |
-
background: url('../img/wordimpress-logo-small.png') no-repeat 0 0 transparent;
|
280 |
-
width: 100px;
|
281 |
-
height: 40px;
|
282 |
-
display: block;
|
283 |
-
}
|
284 |
-
|
285 |
-
.hide-welcome {
|
286 |
-
margin: 2px 0 0 30px;
|
287 |
-
}
|
288 |
-
|
289 |
-
.hide-welcome span {
|
290 |
-
background: url('../img/arrows.png') no-repeat 0 -33px rgba(0, 0, 0, 0);
|
291 |
-
width: 15px;
|
292 |
-
height: 14px;
|
293 |
-
display: inline-block;
|
294 |
-
margin-left: 3px;
|
295 |
-
}
|
296 |
-
|
297 |
-
.pull-left {
|
298 |
-
float: left;
|
299 |
-
}
|
300 |
-
|
301 |
-
.pull-right {
|
302 |
-
float: right;
|
303 |
-
}
|
304 |
-
|
305 |
-
.small-desc {
|
306 |
-
font-size: 12px;
|
307 |
-
font-style: italic;
|
308 |
-
color: #B3B3B3;
|
309 |
-
}
|
310 |
-
|
311 |
-
/*---------------------------
|
312 |
-
Map Options Tab
|
313 |
-
-----------------------------*/
|
314 |
-
|
315 |
-
.size-label {
|
316 |
-
margin: 8px 10px 0 0;
|
317 |
-
font-style: italic;
|
318 |
-
width: 50px;
|
319 |
-
}
|
320 |
-
|
321 |
-
/* Map Size */
|
322 |
-
|
323 |
-
.width_unit_label, .width_radio, .map-width, .map-height, .size-label, .radio-left, .label-left {
|
324 |
-
float: left !important;
|
325 |
-
}
|
326 |
-
|
327 |
-
#width_wrap {
|
328 |
-
margin: 0 0 10px;
|
329 |
-
}
|
330 |
-
|
331 |
-
#size_labels_wrap {
|
332 |
-
margin: 8px 0 0 10px;
|
333 |
-
padding: 0;
|
334 |
-
float: left;
|
335 |
-
}
|
336 |
-
|
337 |
-
#width_unit_percent {
|
338 |
-
margin: 0 3px 0 0;
|
339 |
-
}
|
340 |
-
|
341 |
-
#width_unit_px {
|
342 |
-
margin: 0 3px 0 8px;
|
343 |
-
}
|
344 |
-
|
345 |
-
.map-width, .map-height {
|
346 |
-
width: 55px !important
|
347 |
-
}
|
348 |
-
|
349 |
-
/* Lat Lng */
|
350 |
-
#lat-lng-wrap {
|
351 |
-
float: left;
|
352 |
-
clear: both;
|
353 |
-
margin: 15px 0 0;
|
354 |
-
display: none;
|
355 |
-
}
|
356 |
-
|
357 |
-
label.geocode-label {
|
358 |
-
width: 130px;
|
359 |
-
margin-right: 0;
|
360 |
-
}
|
361 |
-
|
362 |
-
label.yes-label {
|
363 |
-
margin-right: 10px;
|
364 |
-
}
|
365 |
-
|
366 |
-
#lat-lng-wrap input[type=text].latitude, #lat-lng-wrap input[type=text].longitude {
|
367 |
-
width: 120px;
|
368 |
-
float: left;
|
369 |
-
}
|
370 |
-
|
371 |
-
.lat-lng-wrap {
|
372 |
-
margin: 0 0 10px;
|
373 |
-
clear: none;
|
374 |
-
}
|
375 |
-
|
376 |
-
.lat-lng-wrap > span, .lat-lng-wrap > input {
|
377 |
-
float: left;
|
378 |
-
}
|
379 |
-
|
380 |
-
.lat-lng-wrap > span {
|
381 |
-
margin: 8px 5px 0 0;
|
382 |
-
width: 80px;
|
383 |
-
font-style: italic;
|
384 |
-
}
|
385 |
-
|
386 |
-
|
387 |
-
/*---------------------------
|
388 |
-
General Options Tab
|
389 |
-
-----------------------------*/
|
390 |
-
|
391 |
-
#gmb_menu_position {
|
392 |
-
width: 40px;
|
393 |
-
>>>>>>> .r1071384
|
394 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/assets/css/admin-settings.min.css
DELETED
@@ -1 +0,0 @@
|
|
1 |
-
<<<<<<< .mine .wrap{margin-left:-5px}.clear:before,.clear:after{content:" ";display:table}.clear:after{clear:both}table.form-table{margin:0 0 20px}.main-heading{font-size:36px;font-weight:400;line-height:1.1em;margin:10px 0 20px}.main-subheading{font-size:20px;line-height:1.4em}.logo-svg{margin:15px 0 0}.logo-svg.logo-svg-small{float:right;margin:0}.gmb-plugin-heading{width:170px;float:left;margin:9px 0 0}.new-window{background:url(../img/new-window-icon.png) no-repeat right 5px transparent;padding-right:13px;margin-right:4px}.social-items-wrap{float:left}.social-items-wrap>div{display:inline-block}.google-plus{margin-left:20px;display:inline;width:190px}.wordimpress-logo{float:left;margin:-7px 0 0}.logo-link{background:url(../img/wordimpress-logo-small.png) no-repeat 0 0 transparent;width:100px;height:40px;display:block}.hide-welcome{margin:2px 0 0 30px}.hide-welcome span{background:url(../img/arrows.png) no-repeat 0 -33px rgba(0,0,0,0);width:15px;height:14px;display:inline-block;margin-left:3px}.pull-left{float:left}.pull-right{float:right}.small-desc{font-size:12px;font-style:italic;color:#B3B3B3}.size-label{margin:8px 10px 0 0;font-style:italic;width:50px}.width_unit_label,.width_radio,.map-width,.map-height,.size-label,.radio-left,.label-left{float:left!important}#width_wrap{margin:0 0 10px}#size_labels_wrap{margin:8px 0 0 10px;padding:0;float:left}#width_unit_percent{margin:0 3px 0 0}#width_unit_px{margin:0 3px 0 8px}.map-width,.map-height{width:55px!important}#lat-lng-wrap{float:left;clear:both;margin:15px 0 0;display:none}label.geocode-label{width:130px;margin-right:0}label.yes-label{margin-right:10px}#lat-lng-wrap input[type=text].latitude,#lat-lng-wrap input[type=text].longitude{width:120px;float:left}.lat-lng-wrap{margin:0 0 10px;clear:none}.lat-lng-wrap>span,.lat-lng-wrap>input{float:left}.lat-lng-wrap>span{margin:8px 5px 0 0;width:80px;font-style:italic}#gmb_menu_position{width:40px;=======.wrap{margin-left:-5px}.clear:before,.clear:after{content:" ";display:table}.clear:after{clear:both}table.form-table{margin:0 0 20px}.main-heading{font-size:36px;font-weight:400;line-height:1.1em;margin:10px 0 20px}.main-subheading{font-size:20px;line-height:1.4em}.logo-svg{margin:15px 0 0}.logo-svg.logo-svg-small{float:right;margin:0}.gmb-plugin-heading{width:170px;float:left;margin:9px 0 0}.new-window{background:url(../img/new-window-icon.png) no-repeat right 5px transparent;padding-right:13px;margin-right:4px}.social-items-wrap{float:left}.social-items-wrap>div{display:inline-block}.google-plus{margin-left:20px;display:inline;width:150px}.wordimpress-logo{float:left;margin:-7px 0 0}.logo-link{background:url(../img/wordimpress-logo-small.png) no-repeat 0 0 transparent;width:100px;height:40px;display:block}.hide-welcome{margin:2px 0 0 30px}.hide-welcome span{background:url(../img/arrows.png) no-repeat 0 -33px rgba(0,0,0,0);width:15px;height:14px;display:inline-block;margin-left:3px}.pull-left{float:left}.pull-right{float:right}.small-desc{font-size:12px;font-style:italic;color:#B3B3B3}.size-label{margin:8px 10px 0 0;font-style:italic;width:50px}.width_unit_label,.width_radio,.map-width,.map-height,.size-label,.radio-left,.label-left{float:left!important}#width_wrap{margin:0 0 10px}#size_labels_wrap{margin:8px 0 0 10px;padding:0;float:left}#width_unit_percent{margin:0 3px 0 0}#width_unit_px{margin:0 3px 0 8px}.map-width,.map-height{width:55px!important}#lat-lng-wrap{float:left;clear:both;margin:15px 0 0;display:none}label.geocode-label{width:130px;margin-right:0}label.yes-label{margin-right:10px}#lat-lng-wrap input[type=text].latitude,#lat-lng-wrap input[type=text].longitude{width:120px;float:left}.lat-lng-wrap{margin:0 0 10px;clear:none}.lat-lng-wrap>span,.lat-lng-wrap>input{float:left}.lat-lng-wrap>span{margin:8px 5px 0 0;width:80px;font-style:italic}#gmb_menu_position{width:40px;>>>>>>> .r1071384}
|
|
admin/assets/css/admin-widget.css
DELETED
@@ -1,459 +0,0 @@
|
|
1 |
-
/*
|
2 |
-
* Styles specifically for the Yelp Widget Pro widget in the WP admin interface
|
3 |
-
* Is only loaded on widgets.php
|
4 |
-
*/
|
5 |
-
.wpgp-toggler {
|
6 |
-
padding: 10px;
|
7 |
-
margin: 0 0 10px;
|
8 |
-
cursor: pointer;
|
9 |
-
background-color: #EBEBEB;
|
10 |
-
border: 1px solid #E5E5E5;
|
11 |
-
display: block;
|
12 |
-
}
|
13 |
-
|
14 |
-
.wpgp-toggler span {
|
15 |
-
background: url('../img/arrows.png') no-repeat 60% -107px;
|
16 |
-
float: right;
|
17 |
-
height: 12px;
|
18 |
-
display: inline-block;
|
19 |
-
width: 12px;
|
20 |
-
}
|
21 |
-
|
22 |
-
.wpgp-toggler.toggled span {
|
23 |
-
background-position: 60% 1px;
|
24 |
-
}
|
25 |
-
|
26 |
-
.toggle-item, .reviews-toggle-container {
|
27 |
-
display: none;
|
28 |
-
}
|
29 |
-
|
30 |
-
.toggle-item p {
|
31 |
-
padding: 0;
|
32 |
-
margin: 0 0 10px;
|
33 |
-
}
|
34 |
-
|
35 |
-
.toggle-item.toggled, .reviews-toggle-container.toggled {
|
36 |
-
display: block;
|
37 |
-
}
|
38 |
-
|
39 |
-
.widget-api-option {
|
40 |
-
line-height: 22px;
|
41 |
-
}
|
42 |
-
|
43 |
-
.widget-api-option input {
|
44 |
-
}
|
45 |
-
|
46 |
-
.toggle-item select {
|
47 |
-
background: #FFF;
|
48 |
-
}
|
49 |
-
|
50 |
-
.wpgp-method-span:hover, .search-api-option:hover, .business-api-option:hover {
|
51 |
-
cursor: pointer;
|
52 |
-
}
|
53 |
-
|
54 |
-
.wpgp-method-label {
|
55 |
-
padding-left: 4px;
|
56 |
-
}
|
57 |
-
|
58 |
-
.new-window {
|
59 |
-
background: url('../img/new-window-icon.png') no-repeat right 3px transparent;
|
60 |
-
padding-right: 16px;
|
61 |
-
}
|
62 |
-
|
63 |
-
.wpgp-radio-label {
|
64 |
-
margin: 0 0 5px;
|
65 |
-
display: block;
|
66 |
-
}
|
67 |
-
|
68 |
-
.wpgp-widget-footer-links {
|
69 |
-
font-style: italic;
|
70 |
-
}
|
71 |
-
|
72 |
-
.wpgp-widget-footer-links a {
|
73 |
-
margin-right: 10px;
|
74 |
-
}
|
75 |
-
|
76 |
-
.powered-by-google {
|
77 |
-
background: url('../img/powered-by-google-on-white.png') no-repeat 0 0 transparent;
|
78 |
-
width: 104px;
|
79 |
-
height: 16px;
|
80 |
-
}
|
81 |
-
|
82 |
-
/*------------------------------------------------
|
83 |
-
Google Maps
|
84 |
-
---------------------------------------------------*/
|
85 |
-
.map-canvas {
|
86 |
-
height: 100%;
|
87 |
-
margin: 0px;
|
88 |
-
padding: 0px;
|
89 |
-
min-height: 400px;
|
90 |
-
}
|
91 |
-
|
92 |
-
.google-autocomplete-map-wrap {
|
93 |
-
display: none;
|
94 |
-
}
|
95 |
-
|
96 |
-
.google-autocomplete-map-wrap .controls {
|
97 |
-
margin-top: 16px;
|
98 |
-
border: 1px solid transparent;
|
99 |
-
border-radius: 2px;
|
100 |
-
box-sizing: border-box;
|
101 |
-
-moz-box-sizing: border-box;
|
102 |
-
height: 32px;
|
103 |
-
outline: none;
|
104 |
-
box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
|
105 |
-
}
|
106 |
-
|
107 |
-
.marker-label,
|
108 |
-
.marker-icon {
|
109 |
-
z-index: 99;
|
110 |
-
position: absolute;
|
111 |
-
display: block;
|
112 |
-
margin-top: -50px;
|
113 |
-
margin-left: -25px;
|
114 |
-
width: 50px;
|
115 |
-
height: 50px;
|
116 |
-
font-size: 30px !important;
|
117 |
-
text-align: center;
|
118 |
-
color: #FFFFFF;
|
119 |
-
white-space: nowrap;
|
120 |
-
}
|
121 |
-
|
122 |
-
/* PAC input */
|
123 |
-
|
124 |
-
.pac-input {
|
125 |
-
background-color: #fff;
|
126 |
-
padding: 0 11px 0 13px;
|
127 |
-
width: 100%;
|
128 |
-
font-family: Roboto;
|
129 |
-
font-size: 15px;
|
130 |
-
font-weight: 300;
|
131 |
-
text-overflow: ellipsis;
|
132 |
-
display: none;
|
133 |
-
}
|
134 |
-
|
135 |
-
.pac-input:focus {
|
136 |
-
border-color: #4d90fe;
|
137 |
-
width: 100%;
|
138 |
-
}
|
139 |
-
|
140 |
-
.map-canvas .pac-input {
|
141 |
-
left:10px !important;
|
142 |
-
top: 42px !important;
|
143 |
-
display: block !important;
|
144 |
-
width: 92%;
|
145 |
-
line-height: 26px;
|
146 |
-
margin:0;
|
147 |
-
}
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
.pac-container {
|
153 |
-
font-family: Roboto;
|
154 |
-
}
|
155 |
-
|
156 |
-
/* Type Selector */
|
157 |
-
|
158 |
-
.type-selector {
|
159 |
-
color: #fff;
|
160 |
-
background-color: #4d90fe;
|
161 |
-
padding: 5px 11px 0px 11px;
|
162 |
-
display: none;
|
163 |
-
}
|
164 |
-
|
165 |
-
.type-selector label {
|
166 |
-
font-family: Roboto;
|
167 |
-
font-size: 13px;
|
168 |
-
font-weight: 300;
|
169 |
-
}
|
170 |
-
|
171 |
-
.map-canvas .type-selector {
|
172 |
-
left:0 !important;
|
173 |
-
top: 0 !important;
|
174 |
-
display: block !important;
|
175 |
-
margin: 0;
|
176 |
-
width: 100%;
|
177 |
-
}
|
178 |
-
|
179 |
-
|
180 |
-
ul.map-control-list {
|
181 |
-
margin: 0;
|
182 |
-
padding: 0;
|
183 |
-
}
|
184 |
-
|
185 |
-
.map-control-list li {
|
186 |
-
float: left;
|
187 |
-
margin: 0 10px 0 0;
|
188 |
-
}
|
189 |
-
|
190 |
-
.map-control-list li:last-child {
|
191 |
-
margin-right: 0;
|
192 |
-
}
|
193 |
-
|
194 |
-
.map-control-list li input[type="radio"] {
|
195 |
-
margin: 0 2px 0 0;
|
196 |
-
}
|
197 |
-
|
198 |
-
/*-------------------------------------------
|
199 |
-
Helper Classes
|
200 |
-
---------------------------------------------*/
|
201 |
-
.clearfix {
|
202 |
-
*zoom: 1;
|
203 |
-
}
|
204 |
-
|
205 |
-
.clearfix:before, .clearfix:after {
|
206 |
-
display: table;
|
207 |
-
content: "";
|
208 |
-
line-height: 0;
|
209 |
-
}
|
210 |
-
|
211 |
-
.clearfix:after {
|
212 |
-
clear: both;
|
213 |
-
}
|
214 |
-
|
215 |
-
.hide-text {
|
216 |
-
font: 0/0 a;
|
217 |
-
color: transparent;
|
218 |
-
text-shadow: none;
|
219 |
-
background-color: transparent;
|
220 |
-
border: 0;
|
221 |
-
}
|
222 |
-
|
223 |
-
.input-block-level {
|
224 |
-
display: block;
|
225 |
-
width: 100%;
|
226 |
-
min-height: 30px;
|
227 |
-
-webkit-box-sizing: border-box;
|
228 |
-
-moz-box-sizing: border-box;
|
229 |
-
box-sizing: border-box;
|
230 |
-
}
|
231 |
-
|
232 |
-
.clickable + .toggle-item {
|
233 |
-
padding: 0 5px;
|
234 |
-
}
|
235 |
-
|
236 |
-
/*----------------------------------------
|
237 |
-
Toggle Tips
|
238 |
-
-------------------------------------------*/
|
239 |
-
|
240 |
-
.tooltip {
|
241 |
-
position: absolute;
|
242 |
-
z-index: 1030;
|
243 |
-
display: block;
|
244 |
-
visibility: visible;
|
245 |
-
padding: 5px;
|
246 |
-
font-size: 11px;
|
247 |
-
opacity: 0;
|
248 |
-
filter: alpha(opacity=0);
|
249 |
-
}
|
250 |
-
|
251 |
-
.tooltip.in {
|
252 |
-
opacity: 0.8;
|
253 |
-
filter: alpha(opacity=80);
|
254 |
-
}
|
255 |
-
|
256 |
-
.tooltip.top {
|
257 |
-
margin-top: -3px;
|
258 |
-
}
|
259 |
-
|
260 |
-
.tooltip.right {
|
261 |
-
margin-left: 3px;
|
262 |
-
}
|
263 |
-
|
264 |
-
.tooltip.bottom {
|
265 |
-
margin-top: 3px;
|
266 |
-
}
|
267 |
-
|
268 |
-
.tooltip.left {
|
269 |
-
margin-left: -3px;
|
270 |
-
}
|
271 |
-
|
272 |
-
.tooltip-inner {
|
273 |
-
max-width: 200px;
|
274 |
-
padding: 3px 8px;
|
275 |
-
color: #ffffff;
|
276 |
-
text-align: center;
|
277 |
-
text-decoration: none;
|
278 |
-
background-color: #000000;
|
279 |
-
-webkit-border-radius: 4px;
|
280 |
-
-moz-border-radius: 4px;
|
281 |
-
border-radius: 4px;
|
282 |
-
}
|
283 |
-
|
284 |
-
.tooltip-arrow {
|
285 |
-
position: absolute;
|
286 |
-
width: 0;
|
287 |
-
height: 0;
|
288 |
-
border-color: transparent;
|
289 |
-
border-style: solid;
|
290 |
-
}
|
291 |
-
|
292 |
-
.tooltip.top .tooltip-arrow {
|
293 |
-
bottom: 0;
|
294 |
-
left: 50%;
|
295 |
-
margin-left: -5px;
|
296 |
-
border-width: 5px 5px 0;
|
297 |
-
border-top-color: #000000;
|
298 |
-
}
|
299 |
-
|
300 |
-
.tooltip.right .tooltip-arrow {
|
301 |
-
top: 50%;
|
302 |
-
left: 0;
|
303 |
-
margin-top: -5px;
|
304 |
-
border-width: 5px 5px 5px 0;
|
305 |
-
border-right-color: #000000;
|
306 |
-
}
|
307 |
-
|
308 |
-
.tooltip.left .tooltip-arrow {
|
309 |
-
top: 50%;
|
310 |
-
right: 0;
|
311 |
-
margin-top: -5px;
|
312 |
-
border-width: 5px 0 5px 5px;
|
313 |
-
border-left-color: #000000;
|
314 |
-
}
|
315 |
-
|
316 |
-
.tooltip.bottom .tooltip-arrow {
|
317 |
-
top: 0;
|
318 |
-
left: 50%;
|
319 |
-
margin-left: -5px;
|
320 |
-
border-width: 0 5px 5px;
|
321 |
-
border-bottom-color: #000000;
|
322 |
-
}
|
323 |
-
|
324 |
-
/*----------------------------------------
|
325 |
-
Tipsy
|
326 |
-
-------------------------------------------*/
|
327 |
-
|
328 |
-
.tooltip-info {
|
329 |
-
cursor: help;
|
330 |
-
margin: -3px 0 0 5px;
|
331 |
-
position: relative;
|
332 |
-
top: 3px;
|
333 |
-
}
|
334 |
-
|
335 |
-
.tipsy {
|
336 |
-
font-size: 10px;
|
337 |
-
position: absolute;
|
338 |
-
padding: 5px;
|
339 |
-
z-index: 100000;
|
340 |
-
}
|
341 |
-
|
342 |
-
.tipsy-inner {
|
343 |
-
background-color: #000;
|
344 |
-
color: #FFF;
|
345 |
-
max-width: 200px;
|
346 |
-
padding: 5px 8px 4px 8px;
|
347 |
-
text-align: center;
|
348 |
-
}
|
349 |
-
|
350 |
-
/* Rounded corners */
|
351 |
-
.tipsy-inner {
|
352 |
-
border-radius: 3px;
|
353 |
-
-moz-border-radius: 3px;
|
354 |
-
-webkit-border-radius: 3px;
|
355 |
-
}
|
356 |
-
|
357 |
-
/* Uncomment for shadow */
|
358 |
-
/*.tipsy-inner { box-shadow: 0 0 5px #000000; -webkit-box-shadow: 0 0 5px #000000; -moz-box-shadow: 0 0 5px #000000; }*/
|
359 |
-
|
360 |
-
.tipsy-arrow {
|
361 |
-
position: absolute;
|
362 |
-
width: 0;
|
363 |
-
height: 0;
|
364 |
-
line-height: 0;
|
365 |
-
border: 5px dashed #000;
|
366 |
-
}
|
367 |
-
|
368 |
-
/* Rules to colour arrows */
|
369 |
-
.tipsy-arrow-n {
|
370 |
-
border-bottom-color: #000;
|
371 |
-
}
|
372 |
-
|
373 |
-
.tipsy-arrow-s {
|
374 |
-
border-top-color: #000;
|
375 |
-
}
|
376 |
-
|
377 |
-
.tipsy-arrow-e {
|
378 |
-
border-left-color: #000;
|
379 |
-
}
|
380 |
-
|
381 |
-
.tipsy-arrow-w {
|
382 |
-
border-right-color: #000;
|
383 |
-
}
|
384 |
-
|
385 |
-
.tipsy-n .tipsy-arrow {
|
386 |
-
top: 0px;
|
387 |
-
left: 50%;
|
388 |
-
margin-left: -5px;
|
389 |
-
border-bottom-style: solid;
|
390 |
-
border-top: none;
|
391 |
-
border-left-color: transparent;
|
392 |
-
border-right-color: transparent;
|
393 |
-
}
|
394 |
-
|
395 |
-
.tipsy-nw .tipsy-arrow {
|
396 |
-
top: 0;
|
397 |
-
left: 10px;
|
398 |
-
border-bottom-style: solid;
|
399 |
-
border-top: none;
|
400 |
-
border-left-color: transparent;
|
401 |
-
border-right-color: transparent;
|
402 |
-
}
|
403 |
-
|
404 |
-
.tipsy-ne .tipsy-arrow {
|
405 |
-
top: 0;
|
406 |
-
right: 10px;
|
407 |
-
border-bottom-style: solid;
|
408 |
-
border-top: none;
|
409 |
-
border-left-color: transparent;
|
410 |
-
border-right-color: transparent;
|
411 |
-
}
|
412 |
-
|
413 |
-
.tipsy-s .tipsy-arrow {
|
414 |
-
bottom: 0;
|
415 |
-
left: 50%;
|
416 |
-
margin-left: -5px;
|
417 |
-
border-top-style: solid;
|
418 |
-
border-bottom: none;
|
419 |
-
border-left-color: transparent;
|
420 |
-
border-right-color: transparent;
|
421 |
-
}
|
422 |
-
|
423 |
-
.tipsy-sw .tipsy-arrow {
|
424 |
-
bottom: 0;
|
425 |
-
left: 10px;
|
426 |
-
border-top-style: solid;
|
427 |
-
border-bottom: none;
|
428 |
-
border-left-color: transparent;
|
429 |
-
border-right-color: transparent;
|
430 |
-
}
|
431 |
-
|
432 |
-
.tipsy-se .tipsy-arrow {
|
433 |
-
bottom: 0;
|
434 |
-
right: 10px;
|
435 |
-
border-top-style: solid;
|
436 |
-
border-bottom: none;
|
437 |
-
border-left-color: transparent;
|
438 |
-
border-right-color: transparent;
|
439 |
-
}
|
440 |
-
|
441 |
-
.tipsy-e .tipsy-arrow {
|
442 |
-
right: 0;
|
443 |
-
top: 50%;
|
444 |
-
margin-top: -5px;
|
445 |
-
border-left-style: solid;
|
446 |
-
border-right: none;
|
447 |
-
border-top-color: transparent;
|
448 |
-
border-bottom-color: transparent;
|
449 |
-
}
|
450 |
-
|
451 |
-
.tipsy-w .tipsy-arrow {
|
452 |
-
left: 0;
|
453 |
-
top: 50%;
|
454 |
-
margin-top: -5px;
|
455 |
-
border-right-style: solid;
|
456 |
-
border-left: none;
|
457 |
-
border-top-color: transparent;
|
458 |
-
border-bottom-color: transparent;
|
459 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|