Version Description
Version 1.0.3 will soon be updated to 2.0. Find details here
Download this release
Release Info
Developer | webdevmattcrom |
Plugin | Maps Builder – Google Maps Plugin |
Version | 1.0.4 |
Comparing to | |
See all releases |
Code changes from version 1.0.1 to 1.0.4
- LICENSE.txt +338 -338
- README.txt +153 -146
- admin/assets/css/admin-settings.css +199 -1
- admin/assets/css/admin-settings.min.css +1 -1
- admin/assets/css/admin.css +13 -9
- admin/assets/css/admin.min.css +1 -1
- admin/assets/img/icons-infowindow-002.svg +111 -111
- admin/assets/js/admin-google-map.js +1677 -0
- admin/assets/js/admin-google-map.min.js +1 -1
- admin/assets/js/admin-settings.js +53 -53
- admin/assets/js/admin-widget.js +267 -267
- includes/snazzy.php → admin/assets/js/snazzy.json +0 -10
- admin/class-wordpress-google-maps-admin.php +784 -774
- admin/class-wordpress-google-maps-settings.php +422 -421
- admin/includes/tooltips/jquery.qtip.css +513 -513
- admin/includes/tooltips/jquery.qtip.js +3102 -3102
- admin/includes/tooltips/jquery.qtip.min.css +1 -1
- admin/includes/tooltips/jquery.qtip.min.js +4 -5
- admin/views/admin-widget.php +61 -61
- admin/views/logo-svg-small.php +33 -33
- admin/views/logo-svg.php +34 -34
- admin/views/settings-page.php +85 -85
- admin/views/tab-map-options.php +1 -1
- google-maps-builder.php +64 -64
- includes/map-icons/README.md +117 -117
- includes/map-icons/css/map-icons.css +568 -568
- includes/map-icons/demo.html +123 -123
- includes/map-icons/fonts/map-icons.dev.svg +845 -1393
LICENSE.txt
CHANGED
@@ -1,339 +1,339 @@
|
|
1 |
-
GNU GENERAL PUBLIC LICENSE
|
2 |
-
Version 2, June 1991
|
3 |
-
|
4 |
-
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
5 |
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
6 |
-
Everyone is permitted to copy and distribute verbatim copies
|
7 |
-
of this license document, but changing it is not allowed.
|
8 |
-
|
9 |
-
Preamble
|
10 |
-
|
11 |
-
The licenses for most software are designed to take away your
|
12 |
-
freedom to share and change it. By contrast, the GNU General Public
|
13 |
-
License is intended to guarantee your freedom to share and change free
|
14 |
-
software--to make sure the software is free for all its users. This
|
15 |
-
General Public License applies to most of the Free Software
|
16 |
-
Foundation's software and to any other program whose authors commit to
|
17 |
-
using it. (Some other Free Software Foundation software is covered by
|
18 |
-
the GNU Lesser General Public License instead.) You can apply it to
|
19 |
-
your programs, too.
|
20 |
-
|
21 |
-
When we speak of free software, we are referring to freedom, not
|
22 |
-
price. Our General Public Licenses are designed to make sure that you
|
23 |
-
have the freedom to distribute copies of free software (and charge for
|
24 |
-
this service if you wish), that you receive source code or can get it
|
25 |
-
if you want it, that you can change the software or use pieces of it
|
26 |
-
in new free programs; and that you know you can do these things.
|
27 |
-
|
28 |
-
To protect your rights, we need to make restrictions that forbid
|
29 |
-
anyone to deny you these rights or to ask you to surrender the rights.
|
30 |
-
These restrictions translate to certain responsibilities for you if you
|
31 |
-
distribute copies of the software, or if you modify it.
|
32 |
-
|
33 |
-
For example, if you distribute copies of such a program, whether
|
34 |
-
gratis or for a fee, you must give the recipients all the rights that
|
35 |
-
you have. You must make sure that they, too, receive or can get the
|
36 |
-
source code. And you must show them these terms so they know their
|
37 |
-
rights.
|
38 |
-
|
39 |
-
We protect your rights with two steps: (1) copyright the software, and
|
40 |
-
(2) offer you this license which gives you legal permission to copy,
|
41 |
-
distribute and/or modify the software.
|
42 |
-
|
43 |
-
Also, for each author's protection and ours, we want to make certain
|
44 |
-
that everyone understands that there is no warranty for this free
|
45 |
-
software. If the software is modified by someone else and passed on, we
|
46 |
-
want its recipients to know that what they have is not the original, so
|
47 |
-
that any problems introduced by others will not reflect on the original
|
48 |
-
authors' reputations.
|
49 |
-
|
50 |
-
Finally, any free program is threatened constantly by software
|
51 |
-
patents. We wish to avoid the danger that redistributors of a free
|
52 |
-
program will individually obtain patent licenses, in effect making the
|
53 |
-
program proprietary. To prevent this, we have made it clear that any
|
54 |
-
patent must be licensed for everyone's free use or not licensed at all.
|
55 |
-
|
56 |
-
The precise terms and conditions for copying, distribution and
|
57 |
-
modification follow.
|
58 |
-
|
59 |
-
GNU GENERAL PUBLIC LICENSE
|
60 |
-
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
61 |
-
|
62 |
-
0. This License applies to any program or other work which contains
|
63 |
-
a notice placed by the copyright holder saying it may be distributed
|
64 |
-
under the terms of this General Public License. The "Program", below,
|
65 |
-
refers to any such program or work, and a "work based on the Program"
|
66 |
-
means either the Program or any derivative work under copyright law:
|
67 |
-
that is to say, a work containing the Program or a portion of it,
|
68 |
-
either verbatim or with modifications and/or translated into another
|
69 |
-
language. (Hereinafter, translation is included without limitation in
|
70 |
-
the term "modification".) Each licensee is addressed as "you".
|
71 |
-
|
72 |
-
Activities other than copying, distribution and modification are not
|
73 |
-
covered by this License; they are outside its scope. The act of
|
74 |
-
running the Program is not restricted, and the output from the Program
|
75 |
-
is covered only if its contents constitute a work based on the
|
76 |
-
Program (independent of having been made by running the Program).
|
77 |
-
Whether that is true depends on what the Program does.
|
78 |
-
|
79 |
-
1. You may copy and distribute verbatim copies of the Program's
|
80 |
-
source code as you receive it, in any medium, provided that you
|
81 |
-
conspicuously and appropriately publish on each copy an appropriate
|
82 |
-
copyright notice and disclaimer of warranty; keep intact all the
|
83 |
-
notices that refer to this License and to the absence of any warranty;
|
84 |
-
and give any other recipients of the Program a copy of this License
|
85 |
-
along with the Program.
|
86 |
-
|
87 |
-
You may charge a fee for the physical act of transferring a copy, and
|
88 |
-
you may at your option offer warranty protection in exchange for a fee.
|
89 |
-
|
90 |
-
2. You may modify your copy or copies of the Program or any portion
|
91 |
-
of it, thus forming a work based on the Program, and copy and
|
92 |
-
distribute such modifications or work under the terms of Section 1
|
93 |
-
above, provided that you also meet all of these conditions:
|
94 |
-
|
95 |
-
a) You must cause the modified files to carry prominent notices
|
96 |
-
stating that you changed the files and the date of any change.
|
97 |
-
|
98 |
-
b) You must cause any work that you distribute or publish, that in
|
99 |
-
whole or in part contains or is derived from the Program or any
|
100 |
-
part thereof, to be licensed as a whole at no charge to all third
|
101 |
-
parties under the terms of this License.
|
102 |
-
|
103 |
-
c) If the modified program normally reads commands interactively
|
104 |
-
when run, you must cause it, when started running for such
|
105 |
-
interactive use in the most ordinary way, to print or display an
|
106 |
-
announcement including an appropriate copyright notice and a
|
107 |
-
notice that there is no warranty (or else, saying that you provide
|
108 |
-
a warranty) and that users may redistribute the program under
|
109 |
-
these conditions, and telling the user how to view a copy of this
|
110 |
-
License. (Exception: if the Program itself is interactive but
|
111 |
-
does not normally print such an announcement, your work based on
|
112 |
-
the Program is not required to print an announcement.)
|
113 |
-
|
114 |
-
These requirements apply to the modified work as a whole. If
|
115 |
-
identifiable sections of that work are not derived from the Program,
|
116 |
-
and can be reasonably considered independent and separate works in
|
117 |
-
themselves, then this License, and its terms, do not apply to those
|
118 |
-
sections when you distribute them as separate works. But when you
|
119 |
-
distribute the same sections as part of a whole which is a work based
|
120 |
-
on the Program, the distribution of the whole must be on the terms of
|
121 |
-
this License, whose permissions for other licensees extend to the
|
122 |
-
entire whole, and thus to each and every part regardless of who wrote it.
|
123 |
-
|
124 |
-
Thus, it is not the intent of this section to claim rights or contest
|
125 |
-
your rights to work written entirely by you; rather, the intent is to
|
126 |
-
exercise the right to control the distribution of derivative or
|
127 |
-
collective works based on the Program.
|
128 |
-
|
129 |
-
In addition, mere aggregation of another work not based on the Program
|
130 |
-
with the Program (or with a work based on the Program) on a volume of
|
131 |
-
a storage or distribution medium does not bring the other work under
|
132 |
-
the scope of this License.
|
133 |
-
|
134 |
-
3. You may copy and distribute the Program (or a work based on it,
|
135 |
-
under Section 2) in object code or executable form under the terms of
|
136 |
-
Sections 1 and 2 above provided that you also do one of the following:
|
137 |
-
|
138 |
-
a) Accompany it with the complete corresponding machine-readable
|
139 |
-
source code, which must be distributed under the terms of Sections
|
140 |
-
1 and 2 above on a medium customarily used for software interchange; or,
|
141 |
-
|
142 |
-
b) Accompany it with a written offer, valid for at least three
|
143 |
-
years, to give any third party, for a charge no more than your
|
144 |
-
cost of physically performing source distribution, a complete
|
145 |
-
machine-readable copy of the corresponding source code, to be
|
146 |
-
distributed under the terms of Sections 1 and 2 above on a medium
|
147 |
-
customarily used for software interchange; or,
|
148 |
-
|
149 |
-
c) Accompany it with the information you received as to the offer
|
150 |
-
to distribute corresponding source code. (This alternative is
|
151 |
-
allowed only for noncommercial distribution and only if you
|
152 |
-
received the program in object code or executable form with such
|
153 |
-
an offer, in accord with Subsection b above.)
|
154 |
-
|
155 |
-
The source code for a work means the preferred form of the work for
|
156 |
-
making modifications to it. For an executable work, complete source
|
157 |
-
code means all the source code for all modules it contains, plus any
|
158 |
-
associated interface definition files, plus the scripts used to
|
159 |
-
control compilation and installation of the executable. However, as a
|
160 |
-
special exception, the source code distributed need not include
|
161 |
-
anything that is normally distributed (in either source or binary
|
162 |
-
form) with the major components (compiler, kernel, and so on) of the
|
163 |
-
operating system on which the executable runs, unless that component
|
164 |
-
itself accompanies the executable.
|
165 |
-
|
166 |
-
If distribution of executable or object code is made by offering
|
167 |
-
access to copy from a designated place, then offering equivalent
|
168 |
-
access to copy the source code from the same place counts as
|
169 |
-
distribution of the source code, even though third parties are not
|
170 |
-
compelled to copy the source along with the object code.
|
171 |
-
|
172 |
-
4. You may not copy, modify, sublicense, or distribute the Program
|
173 |
-
except as expressly provided under this License. Any attempt
|
174 |
-
otherwise to copy, modify, sublicense or distribute the Program is
|
175 |
-
void, and will automatically terminate your rights under this License.
|
176 |
-
However, parties who have received copies, or rights, from you under
|
177 |
-
this License will not have their licenses terminated so long as such
|
178 |
-
parties remain in full compliance.
|
179 |
-
|
180 |
-
5. You are not required to accept this License, since you have not
|
181 |
-
signed it. However, nothing else grants you permission to modify or
|
182 |
-
distribute the Program or its derivative works. These actions are
|
183 |
-
prohibited by law if you do not accept this License. Therefore, by
|
184 |
-
modifying or distributing the Program (or any work based on the
|
185 |
-
Program), you indicate your acceptance of this License to do so, and
|
186 |
-
all its terms and conditions for copying, distributing or modifying
|
187 |
-
the Program or works based on it.
|
188 |
-
|
189 |
-
6. Each time you redistribute the Program (or any work based on the
|
190 |
-
Program), the recipient automatically receives a license from the
|
191 |
-
original licensor to copy, distribute or modify the Program subject to
|
192 |
-
these terms and conditions. You may not impose any further
|
193 |
-
restrictions on the recipients' exercise of the rights granted herein.
|
194 |
-
You are not responsible for enforcing compliance by third parties to
|
195 |
-
this License.
|
196 |
-
|
197 |
-
7. If, as a consequence of a court judgment or allegation of patent
|
198 |
-
infringement or for any other reason (not limited to patent issues),
|
199 |
-
conditions are imposed on you (whether by court order, agreement or
|
200 |
-
otherwise) that contradict the conditions of this License, they do not
|
201 |
-
excuse you from the conditions of this License. If you cannot
|
202 |
-
distribute so as to satisfy simultaneously your obligations under this
|
203 |
-
License and any other pertinent obligations, then as a consequence you
|
204 |
-
may not distribute the Program at all. For example, if a patent
|
205 |
-
license would not permit royalty-free redistribution of the Program by
|
206 |
-
all those who receive copies directly or indirectly through you, then
|
207 |
-
the only way you could satisfy both it and this License would be to
|
208 |
-
refrain entirely from distribution of the Program.
|
209 |
-
|
210 |
-
If any portion of this section is held invalid or unenforceable under
|
211 |
-
any particular circumstance, the balance of the section is intended to
|
212 |
-
apply and the section as a whole is intended to apply in other
|
213 |
-
circumstances.
|
214 |
-
|
215 |
-
It is not the purpose of this section to induce you to infringe any
|
216 |
-
patents or other property right claims or to contest validity of any
|
217 |
-
such claims; this section has the sole purpose of protecting the
|
218 |
-
integrity of the free software distribution system, which is
|
219 |
-
implemented by public license practices. Many people have made
|
220 |
-
generous contributions to the wide range of software distributed
|
221 |
-
through that system in reliance on consistent application of that
|
222 |
-
system; it is up to the author/donor to decide if he or she is willing
|
223 |
-
to distribute software through any other system and a licensee cannot
|
224 |
-
impose that choice.
|
225 |
-
|
226 |
-
This section is intended to make thoroughly clear what is believed to
|
227 |
-
be a consequence of the rest of this License.
|
228 |
-
|
229 |
-
8. If the distribution and/or use of the Program is restricted in
|
230 |
-
certain countries either by patents or by copyrighted interfaces, the
|
231 |
-
original copyright holder who places the Program under this License
|
232 |
-
may add an explicit geographical distribution limitation excluding
|
233 |
-
those countries, so that distribution is permitted only in or among
|
234 |
-
countries not thus excluded. In such case, this License incorporates
|
235 |
-
the limitation as if written in the body of this License.
|
236 |
-
|
237 |
-
9. The Free Software Foundation may publish revised and/or new versions
|
238 |
-
of the General Public License from time to time. Such new versions will
|
239 |
-
be similar in spirit to the present version, but may differ in detail to
|
240 |
-
address new problems or concerns.
|
241 |
-
|
242 |
-
Each version is given a distinguishing version number. If the Program
|
243 |
-
specifies a version number of this License which applies to it and "any
|
244 |
-
later version", you have the option of following the terms and conditions
|
245 |
-
either of that version or of any later version published by the Free
|
246 |
-
Software Foundation. If the Program does not specify a version number of
|
247 |
-
this License, you may choose any version ever published by the Free Software
|
248 |
-
Foundation.
|
249 |
-
|
250 |
-
10. If you wish to incorporate parts of the Program into other free
|
251 |
-
programs whose distribution conditions are different, write to the author
|
252 |
-
to ask for permission. For software which is copyrighted by the Free
|
253 |
-
Software Foundation, write to the Free Software Foundation; we sometimes
|
254 |
-
make exceptions for this. Our decision will be guided by the two goals
|
255 |
-
of preserving the free status of all derivatives of our free software and
|
256 |
-
of promoting the sharing and reuse of software generally.
|
257 |
-
|
258 |
-
NO WARRANTY
|
259 |
-
|
260 |
-
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
261 |
-
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
262 |
-
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
263 |
-
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
264 |
-
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
265 |
-
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
266 |
-
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
267 |
-
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
268 |
-
REPAIR OR CORRECTION.
|
269 |
-
|
270 |
-
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
271 |
-
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
272 |
-
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
273 |
-
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
274 |
-
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
275 |
-
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
276 |
-
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
277 |
-
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
278 |
-
POSSIBILITY OF SUCH DAMAGES.
|
279 |
-
|
280 |
-
END OF TERMS AND CONDITIONS
|
281 |
-
|
282 |
-
How to Apply These Terms to Your New Programs
|
283 |
-
|
284 |
-
If you develop a new program, and you want it to be of the greatest
|
285 |
-
possible use to the public, the best way to achieve this is to make it
|
286 |
-
free software which everyone can redistribute and change under these terms.
|
287 |
-
|
288 |
-
To do so, attach the following notices to the program. It is safest
|
289 |
-
to attach them to the start of each source file to most effectively
|
290 |
-
convey the exclusion of warranty; and each file should have at least
|
291 |
-
the "copyright" line and a pointer to where the full notice is found.
|
292 |
-
|
293 |
-
<one line to give the program's name and a brief idea of what it does.>
|
294 |
-
Copyright (C) <year> <name of author>
|
295 |
-
|
296 |
-
This program is free software; you can redistribute it and/or modify
|
297 |
-
it under the terms of the GNU General Public License as published by
|
298 |
-
the Free Software Foundation; either version 2 of the License, or
|
299 |
-
(at your option) any later version.
|
300 |
-
|
301 |
-
This program is distributed in the hope that it will be useful,
|
302 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
303 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
304 |
-
GNU General Public License for more details.
|
305 |
-
|
306 |
-
You should have received a copy of the GNU General Public License along
|
307 |
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
308 |
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
309 |
-
|
310 |
-
Also add information on how to contact you by electronic and paper mail.
|
311 |
-
|
312 |
-
If the program is interactive, make it output a short notice like this
|
313 |
-
when it starts in an interactive mode:
|
314 |
-
|
315 |
-
Gnomovision version 69, Copyright (C) year name of author
|
316 |
-
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
317 |
-
This is free software, and you are welcome to redistribute it
|
318 |
-
under certain conditions; type `show c' for details.
|
319 |
-
|
320 |
-
The hypothetical commands `show w' and `show c' should show the appropriate
|
321 |
-
parts of the General Public License. Of course, the commands you use may
|
322 |
-
be called something other than `show w' and `show c'; they could even be
|
323 |
-
mouse-clicks or menu items--whatever suits your program.
|
324 |
-
|
325 |
-
You should also get your employer (if you work as a programmer) or your
|
326 |
-
school, if any, to sign a "copyright disclaimer" for the program, if
|
327 |
-
necessary. Here is a sample; alter the names:
|
328 |
-
|
329 |
-
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
330 |
-
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
331 |
-
|
332 |
-
<signature of Ty Coon>, 1 April 1989
|
333 |
-
Ty Coon, President of Vice
|
334 |
-
|
335 |
-
This General Public License does not permit incorporating your program into
|
336 |
-
proprietary programs. If your program is a subroutine library, you may
|
337 |
-
consider it more useful to permit linking proprietary applications with the
|
338 |
-
library. If this is what you want to do, use the GNU Lesser General
|
339 |
Public License instead of this License.
|
1 |
+
GNU GENERAL PUBLIC LICENSE
|
2 |
+
Version 2, June 1991
|
3 |
+
|
4 |
+
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
|
5 |
+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
6 |
+
Everyone is permitted to copy and distribute verbatim copies
|
7 |
+
of this license document, but changing it is not allowed.
|
8 |
+
|
9 |
+
Preamble
|
10 |
+
|
11 |
+
The licenses for most software are designed to take away your
|
12 |
+
freedom to share and change it. By contrast, the GNU General Public
|
13 |
+
License is intended to guarantee your freedom to share and change free
|
14 |
+
software--to make sure the software is free for all its users. This
|
15 |
+
General Public License applies to most of the Free Software
|
16 |
+
Foundation's software and to any other program whose authors commit to
|
17 |
+
using it. (Some other Free Software Foundation software is covered by
|
18 |
+
the GNU Lesser General Public License instead.) You can apply it to
|
19 |
+
your programs, too.
|
20 |
+
|
21 |
+
When we speak of free software, we are referring to freedom, not
|
22 |
+
price. Our General Public Licenses are designed to make sure that you
|
23 |
+
have the freedom to distribute copies of free software (and charge for
|
24 |
+
this service if you wish), that you receive source code or can get it
|
25 |
+
if you want it, that you can change the software or use pieces of it
|
26 |
+
in new free programs; and that you know you can do these things.
|
27 |
+
|
28 |
+
To protect your rights, we need to make restrictions that forbid
|
29 |
+
anyone to deny you these rights or to ask you to surrender the rights.
|
30 |
+
These restrictions translate to certain responsibilities for you if you
|
31 |
+
distribute copies of the software, or if you modify it.
|
32 |
+
|
33 |
+
For example, if you distribute copies of such a program, whether
|
34 |
+
gratis or for a fee, you must give the recipients all the rights that
|
35 |
+
you have. You must make sure that they, too, receive or can get the
|
36 |
+
source code. And you must show them these terms so they know their
|
37 |
+
rights.
|
38 |
+
|
39 |
+
We protect your rights with two steps: (1) copyright the software, and
|
40 |
+
(2) offer you this license which gives you legal permission to copy,
|
41 |
+
distribute and/or modify the software.
|
42 |
+
|
43 |
+
Also, for each author's protection and ours, we want to make certain
|
44 |
+
that everyone understands that there is no warranty for this free
|
45 |
+
software. If the software is modified by someone else and passed on, we
|
46 |
+
want its recipients to know that what they have is not the original, so
|
47 |
+
that any problems introduced by others will not reflect on the original
|
48 |
+
authors' reputations.
|
49 |
+
|
50 |
+
Finally, any free program is threatened constantly by software
|
51 |
+
patents. We wish to avoid the danger that redistributors of a free
|
52 |
+
program will individually obtain patent licenses, in effect making the
|
53 |
+
program proprietary. To prevent this, we have made it clear that any
|
54 |
+
patent must be licensed for everyone's free use or not licensed at all.
|
55 |
+
|
56 |
+
The precise terms and conditions for copying, distribution and
|
57 |
+
modification follow.
|
58 |
+
|
59 |
+
GNU GENERAL PUBLIC LICENSE
|
60 |
+
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
61 |
+
|
62 |
+
0. This License applies to any program or other work which contains
|
63 |
+
a notice placed by the copyright holder saying it may be distributed
|
64 |
+
under the terms of this General Public License. The "Program", below,
|
65 |
+
refers to any such program or work, and a "work based on the Program"
|
66 |
+
means either the Program or any derivative work under copyright law:
|
67 |
+
that is to say, a work containing the Program or a portion of it,
|
68 |
+
either verbatim or with modifications and/or translated into another
|
69 |
+
language. (Hereinafter, translation is included without limitation in
|
70 |
+
the term "modification".) Each licensee is addressed as "you".
|
71 |
+
|
72 |
+
Activities other than copying, distribution and modification are not
|
73 |
+
covered by this License; they are outside its scope. The act of
|
74 |
+
running the Program is not restricted, and the output from the Program
|
75 |
+
is covered only if its contents constitute a work based on the
|
76 |
+
Program (independent of having been made by running the Program).
|
77 |
+
Whether that is true depends on what the Program does.
|
78 |
+
|
79 |
+
1. You may copy and distribute verbatim copies of the Program's
|
80 |
+
source code as you receive it, in any medium, provided that you
|
81 |
+
conspicuously and appropriately publish on each copy an appropriate
|
82 |
+
copyright notice and disclaimer of warranty; keep intact all the
|
83 |
+
notices that refer to this License and to the absence of any warranty;
|
84 |
+
and give any other recipients of the Program a copy of this License
|
85 |
+
along with the Program.
|
86 |
+
|
87 |
+
You may charge a fee for the physical act of transferring a copy, and
|
88 |
+
you may at your option offer warranty protection in exchange for a fee.
|
89 |
+
|
90 |
+
2. You may modify your copy or copies of the Program or any portion
|
91 |
+
of it, thus forming a work based on the Program, and copy and
|
92 |
+
distribute such modifications or work under the terms of Section 1
|
93 |
+
above, provided that you also meet all of these conditions:
|
94 |
+
|
95 |
+
a) You must cause the modified files to carry prominent notices
|
96 |
+
stating that you changed the files and the date of any change.
|
97 |
+
|
98 |
+
b) You must cause any work that you distribute or publish, that in
|
99 |
+
whole or in part contains or is derived from the Program or any
|
100 |
+
part thereof, to be licensed as a whole at no charge to all third
|
101 |
+
parties under the terms of this License.
|
102 |
+
|
103 |
+
c) If the modified program normally reads commands interactively
|
104 |
+
when run, you must cause it, when started running for such
|
105 |
+
interactive use in the most ordinary way, to print or display an
|
106 |
+
announcement including an appropriate copyright notice and a
|
107 |
+
notice that there is no warranty (or else, saying that you provide
|
108 |
+
a warranty) and that users may redistribute the program under
|
109 |
+
these conditions, and telling the user how to view a copy of this
|
110 |
+
License. (Exception: if the Program itself is interactive but
|
111 |
+
does not normally print such an announcement, your work based on
|
112 |
+
the Program is not required to print an announcement.)
|
113 |
+
|
114 |
+
These requirements apply to the modified work as a whole. If
|
115 |
+
identifiable sections of that work are not derived from the Program,
|
116 |
+
and can be reasonably considered independent and separate works in
|
117 |
+
themselves, then this License, and its terms, do not apply to those
|
118 |
+
sections when you distribute them as separate works. But when you
|
119 |
+
distribute the same sections as part of a whole which is a work based
|
120 |
+
on the Program, the distribution of the whole must be on the terms of
|
121 |
+
this License, whose permissions for other licensees extend to the
|
122 |
+
entire whole, and thus to each and every part regardless of who wrote it.
|
123 |
+
|
124 |
+
Thus, it is not the intent of this section to claim rights or contest
|
125 |
+
your rights to work written entirely by you; rather, the intent is to
|
126 |
+
exercise the right to control the distribution of derivative or
|
127 |
+
collective works based on the Program.
|
128 |
+
|
129 |
+
In addition, mere aggregation of another work not based on the Program
|
130 |
+
with the Program (or with a work based on the Program) on a volume of
|
131 |
+
a storage or distribution medium does not bring the other work under
|
132 |
+
the scope of this License.
|
133 |
+
|
134 |
+
3. You may copy and distribute the Program (or a work based on it,
|
135 |
+
under Section 2) in object code or executable form under the terms of
|
136 |
+
Sections 1 and 2 above provided that you also do one of the following:
|
137 |
+
|
138 |
+
a) Accompany it with the complete corresponding machine-readable
|
139 |
+
source code, which must be distributed under the terms of Sections
|
140 |
+
1 and 2 above on a medium customarily used for software interchange; or,
|
141 |
+
|
142 |
+
b) Accompany it with a written offer, valid for at least three
|
143 |
+
years, to give any third party, for a charge no more than your
|
144 |
+
cost of physically performing source distribution, a complete
|
145 |
+
machine-readable copy of the corresponding source code, to be
|
146 |
+
distributed under the terms of Sections 1 and 2 above on a medium
|
147 |
+
customarily used for software interchange; or,
|
148 |
+
|
149 |
+
c) Accompany it with the information you received as to the offer
|
150 |
+
to distribute corresponding source code. (This alternative is
|
151 |
+
allowed only for noncommercial distribution and only if you
|
152 |
+
received the program in object code or executable form with such
|
153 |
+
an offer, in accord with Subsection b above.)
|
154 |
+
|
155 |
+
The source code for a work means the preferred form of the work for
|
156 |
+
making modifications to it. For an executable work, complete source
|
157 |
+
code means all the source code for all modules it contains, plus any
|
158 |
+
associated interface definition files, plus the scripts used to
|
159 |
+
control compilation and installation of the executable. However, as a
|
160 |
+
special exception, the source code distributed need not include
|
161 |
+
anything that is normally distributed (in either source or binary
|
162 |
+
form) with the major components (compiler, kernel, and so on) of the
|
163 |
+
operating system on which the executable runs, unless that component
|
164 |
+
itself accompanies the executable.
|
165 |
+
|
166 |
+
If distribution of executable or object code is made by offering
|
167 |
+
access to copy from a designated place, then offering equivalent
|
168 |
+
access to copy the source code from the same place counts as
|
169 |
+
distribution of the source code, even though third parties are not
|
170 |
+
compelled to copy the source along with the object code.
|
171 |
+
|
172 |
+
4. You may not copy, modify, sublicense, or distribute the Program
|
173 |
+
except as expressly provided under this License. Any attempt
|
174 |
+
otherwise to copy, modify, sublicense or distribute the Program is
|
175 |
+
void, and will automatically terminate your rights under this License.
|
176 |
+
However, parties who have received copies, or rights, from you under
|
177 |
+
this License will not have their licenses terminated so long as such
|
178 |
+
parties remain in full compliance.
|
179 |
+
|
180 |
+
5. You are not required to accept this License, since you have not
|
181 |
+
signed it. However, nothing else grants you permission to modify or
|
182 |
+
distribute the Program or its derivative works. These actions are
|
183 |
+
prohibited by law if you do not accept this License. Therefore, by
|
184 |
+
modifying or distributing the Program (or any work based on the
|
185 |
+
Program), you indicate your acceptance of this License to do so, and
|
186 |
+
all its terms and conditions for copying, distributing or modifying
|
187 |
+
the Program or works based on it.
|
188 |
+
|
189 |
+
6. Each time you redistribute the Program (or any work based on the
|
190 |
+
Program), the recipient automatically receives a license from the
|
191 |
+
original licensor to copy, distribute or modify the Program subject to
|
192 |
+
these terms and conditions. You may not impose any further
|
193 |
+
restrictions on the recipients' exercise of the rights granted herein.
|
194 |
+
You are not responsible for enforcing compliance by third parties to
|
195 |
+
this License.
|
196 |
+
|
197 |
+
7. If, as a consequence of a court judgment or allegation of patent
|
198 |
+
infringement or for any other reason (not limited to patent issues),
|
199 |
+
conditions are imposed on you (whether by court order, agreement or
|
200 |
+
otherwise) that contradict the conditions of this License, they do not
|
201 |
+
excuse you from the conditions of this License. If you cannot
|
202 |
+
distribute so as to satisfy simultaneously your obligations under this
|
203 |
+
License and any other pertinent obligations, then as a consequence you
|
204 |
+
may not distribute the Program at all. For example, if a patent
|
205 |
+
license would not permit royalty-free redistribution of the Program by
|
206 |
+
all those who receive copies directly or indirectly through you, then
|
207 |
+
the only way you could satisfy both it and this License would be to
|
208 |
+
refrain entirely from distribution of the Program.
|
209 |
+
|
210 |
+
If any portion of this section is held invalid or unenforceable under
|
211 |
+
any particular circumstance, the balance of the section is intended to
|
212 |
+
apply and the section as a whole is intended to apply in other
|
213 |
+
circumstances.
|
214 |
+
|
215 |
+
It is not the purpose of this section to induce you to infringe any
|
216 |
+
patents or other property right claims or to contest validity of any
|
217 |
+
such claims; this section has the sole purpose of protecting the
|
218 |
+
integrity of the free software distribution system, which is
|
219 |
+
implemented by public license practices. Many people have made
|
220 |
+
generous contributions to the wide range of software distributed
|
221 |
+
through that system in reliance on consistent application of that
|
222 |
+
system; it is up to the author/donor to decide if he or she is willing
|
223 |
+
to distribute software through any other system and a licensee cannot
|
224 |
+
impose that choice.
|
225 |
+
|
226 |
+
This section is intended to make thoroughly clear what is believed to
|
227 |
+
be a consequence of the rest of this License.
|
228 |
+
|
229 |
+
8. If the distribution and/or use of the Program is restricted in
|
230 |
+
certain countries either by patents or by copyrighted interfaces, the
|
231 |
+
original copyright holder who places the Program under this License
|
232 |
+
may add an explicit geographical distribution limitation excluding
|
233 |
+
those countries, so that distribution is permitted only in or among
|
234 |
+
countries not thus excluded. In such case, this License incorporates
|
235 |
+
the limitation as if written in the body of this License.
|
236 |
+
|
237 |
+
9. The Free Software Foundation may publish revised and/or new versions
|
238 |
+
of the General Public License from time to time. Such new versions will
|
239 |
+
be similar in spirit to the present version, but may differ in detail to
|
240 |
+
address new problems or concerns.
|
241 |
+
|
242 |
+
Each version is given a distinguishing version number. If the Program
|
243 |
+
specifies a version number of this License which applies to it and "any
|
244 |
+
later version", you have the option of following the terms and conditions
|
245 |
+
either of that version or of any later version published by the Free
|
246 |
+
Software Foundation. If the Program does not specify a version number of
|
247 |
+
this License, you may choose any version ever published by the Free Software
|
248 |
+
Foundation.
|
249 |
+
|
250 |
+
10. If you wish to incorporate parts of the Program into other free
|
251 |
+
programs whose distribution conditions are different, write to the author
|
252 |
+
to ask for permission. For software which is copyrighted by the Free
|
253 |
+
Software Foundation, write to the Free Software Foundation; we sometimes
|
254 |
+
make exceptions for this. Our decision will be guided by the two goals
|
255 |
+
of preserving the free status of all derivatives of our free software and
|
256 |
+
of promoting the sharing and reuse of software generally.
|
257 |
+
|
258 |
+
NO WARRANTY
|
259 |
+
|
260 |
+
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
261 |
+
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
262 |
+
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
263 |
+
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
264 |
+
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
265 |
+
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
266 |
+
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
267 |
+
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
268 |
+
REPAIR OR CORRECTION.
|
269 |
+
|
270 |
+
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
271 |
+
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
272 |
+
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
273 |
+
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
274 |
+
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
275 |
+
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
276 |
+
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
277 |
+
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
278 |
+
POSSIBILITY OF SUCH DAMAGES.
|
279 |
+
|
280 |
+
END OF TERMS AND CONDITIONS
|
281 |
+
|
282 |
+
How to Apply These Terms to Your New Programs
|
283 |
+
|
284 |
+
If you develop a new program, and you want it to be of the greatest
|
285 |
+
possible use to the public, the best way to achieve this is to make it
|
286 |
+
free software which everyone can redistribute and change under these terms.
|
287 |
+
|
288 |
+
To do so, attach the following notices to the program. It is safest
|
289 |
+
to attach them to the start of each source file to most effectively
|
290 |
+
convey the exclusion of warranty; and each file should have at least
|
291 |
+
the "copyright" line and a pointer to where the full notice is found.
|
292 |
+
|
293 |
+
<one line to give the program's name and a brief idea of what it does.>
|
294 |
+
Copyright (C) <year> <name of author>
|
295 |
+
|
296 |
+
This program is free software; you can redistribute it and/or modify
|
297 |
+
it under the terms of the GNU General Public License as published by
|
298 |
+
the Free Software Foundation; either version 2 of the License, or
|
299 |
+
(at your option) any later version.
|
300 |
+
|
301 |
+
This program is distributed in the hope that it will be useful,
|
302 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
303 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
304 |
+
GNU General Public License for more details.
|
305 |
+
|
306 |
+
You should have received a copy of the GNU General Public License along
|
307 |
+
with this program; if not, write to the Free Software Foundation, Inc.,
|
308 |
+
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
309 |
+
|
310 |
+
Also add information on how to contact you by electronic and paper mail.
|
311 |
+
|
312 |
+
If the program is interactive, make it output a short notice like this
|
313 |
+
when it starts in an interactive mode:
|
314 |
+
|
315 |
+
Gnomovision version 69, Copyright (C) year name of author
|
316 |
+
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
317 |
+
This is free software, and you are welcome to redistribute it
|
318 |
+
under certain conditions; type `show c' for details.
|
319 |
+
|
320 |
+
The hypothetical commands `show w' and `show c' should show the appropriate
|
321 |
+
parts of the General Public License. Of course, the commands you use may
|
322 |
+
be called something other than `show w' and `show c'; they could even be
|
323 |
+
mouse-clicks or menu items--whatever suits your program.
|
324 |
+
|
325 |
+
You should also get your employer (if you work as a programmer) or your
|
326 |
+
school, if any, to sign a "copyright disclaimer" for the program, if
|
327 |
+
necessary. Here is a sample; alter the names:
|
328 |
+
|
329 |
+
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
|
330 |
+
`Gnomovision' (which makes passes at compilers) written by James Hacker.
|
331 |
+
|
332 |
+
<signature of Ty Coon>, 1 April 1989
|
333 |
+
Ty Coon, President of Vice
|
334 |
+
|
335 |
+
This General Public License does not permit incorporating your program into
|
336 |
+
proprietary programs. If your program is a subroutine library, you may
|
337 |
+
consider it more useful to permit linking proprietary applications with the
|
338 |
+
library. If this is what you want to do, use the GNU Lesser General
|
339 |
Public License instead of this License.
|
README.txt
CHANGED
@@ -1,146 +1,153 @@
|
|
1 |
-
=== Google Maps Builder ===
|
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: 3.6
|
6 |
-
Tested up to: 4.1
|
7 |
-
Stable tag: 1.0.
|
8 |
-
License: GPLv2 or later
|
9 |
-
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
-
|
11 |
-
One Google Maps plugin to rule them all. Google Maps Builder is intuitive, sleek, powerful and easy to use. Forget the rest, use the best.
|
12 |
-
|
13 |
-
== Description ==
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
|
22 |
-
|
23 |
-
|
24 |
-
* **
|
25 |
-
* **
|
26 |
-
|
27 |
-
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
= 1.0.
|
141 |
-
*
|
142 |
-
*
|
143 |
-
*
|
144 |
-
|
145 |
-
|
146 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== Google Maps Builder ===
|
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: 3.6
|
6 |
+
Tested up to: 4.1
|
7 |
+
Stable tag: 1.0.3
|
8 |
+
License: GPLv2 or later
|
9 |
+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
+
|
11 |
+
One Google Maps plugin to rule them all. Google Maps Builder is intuitive, sleek, powerful and easy to use. Forget the rest, use the best.
|
12 |
+
|
13 |
+
== Description ==
|
14 |
+
|
15 |
+
###Maps Builder 2.0 is Coming###
|
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
|
27 |
+
* **Intuitive UI** that seamlessly integrates with WordPress' - no eye sores or outdated interfaces here
|
28 |
+
* **Small Footprint** - GMB does not create any new database tables, not even one
|
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.
|
35 |
+
|
36 |
+
= Map Themes =
|
37 |
+
|
38 |
+
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.
|
39 |
+
|
40 |
+
= Granular Map Control =
|
41 |
+
|
42 |
+
Fine tune your Google Maps with full control over settings for street view, zooming, panning, dragging, and more. Set defaults for each control so each new map you create is just the way you like it.
|
43 |
+
|
44 |
+
= Actively Developed and Supported =
|
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.
|
51 |
+
|
52 |
+
= Using The WordPress Dashboard =
|
53 |
+
|
54 |
+
1. Navigate to the 'Add New' in the plugins dashboard
|
55 |
+
2. Search for 'Google Maps Builder'
|
56 |
+
3. Click 'Install Now'
|
57 |
+
4. Activate the plugin on the Plugin dashboard
|
58 |
+
|
59 |
+
= Uploading in WordPress Dashboard =
|
60 |
+
|
61 |
+
1. Navigate to the 'Add New' in the plugins dashboard
|
62 |
+
2. Navigate to the 'Upload' area
|
63 |
+
3. Select `google-maps-builder.zip` from your computer
|
64 |
+
4. Click 'Install Now'
|
65 |
+
5. Activate the plugin in the Plugin dashboard
|
66 |
+
|
67 |
+
= Using FTP =
|
68 |
+
|
69 |
+
1. Download `google-maps-builder.zip`
|
70 |
+
2. Extract the `google-maps-builder` directory to your computer
|
71 |
+
3. Upload the `google-maps-builder` directory to the `/wp-content/plugins/` directory
|
72 |
+
4. Activate the plugin in the Plugin dashboard
|
73 |
+
|
74 |
+
== Frequently Asked Questions ==
|
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 Google 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.
|
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 API, Maps Icons and Snazzy Maps.
|
81 |
+
|
82 |
+
= Do I need a Google Places API Key to use this plugin? =
|
83 |
+
|
84 |
+
No. You do not need a Google Places API plugin to use this plugin.
|
85 |
+
|
86 |
+
= Does this plugin create any new database tables? =
|
87 |
+
|
88 |
+
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.
|
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 shortcode metabox (coming soon). Also coming soon: Map widget and TinyMCE button to include shortcode.
|
93 |
+
|
94 |
+
= What the heck is a shortcode and how do I use it? =
|
95 |
+
|
96 |
+
Google Maps Builder works by creating a plugin specific [WordPress shortcode](http://codex.wordpress.org/Shortcode). Basically, you can copy the shortcode for a specific map and enter in into a widget or directly within content. 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 and even plugins.
|
97 |
+
|
98 |
+
= Does this plugin include a widget for displaying maps? =
|
99 |
+
|
100 |
+
Soon! For now, you can use the shortcode in the text widget. Soon there will be a Google Maps Builder Widget.
|
101 |
+
|
102 |
+
= How do I report a bug? =
|
103 |
+
|
104 |
+
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.
|
105 |
+
|
106 |
+
= Who is behind this plugin? =
|
107 |
+
|
108 |
+
The main developer of this plugin is WordImpress. To find out more information about the company and the people behind it please visit [the WordImpress website.](http://wordimpress.com)
|
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. **Google Map Builder** - A view of the single map view in the WordPress admin panel. Notice the autocomplete search field and "Drop a Marker" button.
|
119 |
+
|
120 |
+
2. **Editable Marker** - Customize the content of the map markers directly in the builder. Built to mock Google's own Maps Engine.
|
121 |
+
|
122 |
+
3. **Custom Markers** - Configure a marker to fit your location. Easily adjust the marker, icon and color.
|
123 |
+
|
124 |
+
4. **Frontend View** - A view the a map on the frontend of a WordPress site using the TwentyTwelve theme. This map displays various Google Places.
|
125 |
+
|
126 |
+
5. **Settings Panel** - Adjust the various plugin settings using a UI that is built using WordPress' own styles.
|
127 |
+
|
128 |
+
== Upgrade Notice ==
|
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
|
136 |
+
* Fix: Updated a number of field descriptions to be more clear
|
137 |
+
* Fix: Updated readme to be more accurately reflect past development on plugin
|
138 |
+
* Removed snazzy.php file since we are using the json file exclusively now
|
139 |
+
|
140 |
+
= 1.0.2 =
|
141 |
+
* Remove Maps Shortcode field from non-Google Maps post types. ie Posts and Pages (thanks [@kalenjohnson](https://github.com/WordImpress/google-maps-builder/pull/1) )
|
142 |
+
* Fix: Default Menu position conflict with other plugins like WooCommerce and Contact Forms 7
|
143 |
+
* Readme.txt - New FAQs, Roadmap content and several formatting and typo fixes
|
144 |
+
* Fixed: Bug with Map shortcode field displaying on all single post types Publish metabox rather than just on the maps post type
|
145 |
+
* Improved: Moved snazzy JSON data from php file to .json file for more reliable usage across environments; some servers seem to deny any access to php files using wp_remote_fopen()
|
146 |
+
|
147 |
+
= 1.0.1 =
|
148 |
+
* New: Added a custom meta field to the Google Map single post screen that outputs the post's shortcode so it's more easily accessible. Before you could only access the shortcode via the Google Maps post listing page.
|
149 |
+
* Updated readme.txt file with more information about the plugin, fixed several formatting errors and typos.
|
150 |
+
* Fixed: Activation error "PHP Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method Google_Maps_Builder::activate() should not be called statically in ..." - Thanks Jon Brown!
|
151 |
+
|
152 |
+
= 1.0.0 =
|
153 |
+
* Plugin released. Yay!
|
admin/assets/css/admin-settings.css
CHANGED
@@ -1,3 +1,4 @@
|
|
|
|
1 |
/**
|
2 |
* Google Places Map CPT Styles
|
3 |
*/
|
@@ -70,7 +71,7 @@ Header
|
|
70 |
.google-plus {
|
71 |
margin-left: 20px;
|
72 |
display: inline;
|
73 |
-
width:
|
74 |
}
|
75 |
|
76 |
.wordimpress-logo {
|
@@ -193,4 +194,201 @@ General Options Tab
|
|
193 |
|
194 |
#gmb_menu_position {
|
195 |
width: 40px;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
196 |
}
|
1 |
+
<<<<<<< .mine
|
2 |
/**
|
3 |
* Google Places Map CPT Styles
|
4 |
*/
|
71 |
.google-plus {
|
72 |
margin-left: 20px;
|
73 |
display: inline;
|
74 |
+
width: 190px;
|
75 |
}
|
76 |
|
77 |
.wordimpress-logo {
|
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
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.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}
|
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.css
CHANGED
@@ -258,10 +258,17 @@
|
|
258 |
Place Markers
|
259 |
--------------------------------------------*/
|
260 |
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
265 |
}
|
266 |
|
267 |
#infobubble-content.loading {
|
@@ -272,10 +279,6 @@
|
|
272 |
white-space: normal;
|
273 |
}
|
274 |
|
275 |
-
.gm-style-iw, .gm-style-iw > div {
|
276 |
-
overflow: visible !important;
|
277 |
-
}
|
278 |
-
|
279 |
#infobubble-content p {
|
280 |
font-size: 12px;
|
281 |
margin: 0 0 7px;
|
@@ -483,6 +486,7 @@ a.marker-edit-link {
|
|
483 |
|
484 |
#infobubble-content .edit-place-title {
|
485 |
width: 290px;
|
|
|
486 |
}
|
487 |
|
488 |
#infobubble-content .edit-place-description {
|
@@ -701,7 +705,7 @@ Temporary Info Window
|
|
701 |
.infowindow-toolbar {
|
702 |
display: block;
|
703 |
margin: 0;
|
704 |
-
padding: 8px 0
|
705 |
}
|
706 |
|
707 |
.add-marker {
|
258 |
Place Markers
|
259 |
--------------------------------------------*/
|
260 |
|
261 |
+
/* Hacky fix to prevent scrollbars */
|
262 |
+
#google_maps_preview_metabox .gm-style-iw, #google_maps_preview_metabox .gm-style-iw > div {
|
263 |
+
overflow: visible !important;
|
264 |
+
}
|
265 |
+
|
266 |
+
#google_maps_preview_metabox .gm-style-iw > div > div {
|
267 |
+
overflow: visible !important;
|
268 |
+
}
|
269 |
+
|
270 |
+
#infobubble-content {
|
271 |
+
overflow: hidden !important;
|
272 |
}
|
273 |
|
274 |
#infobubble-content.loading {
|
279 |
white-space: normal;
|
280 |
}
|
281 |
|
|
|
|
|
|
|
|
|
282 |
#infobubble-content p {
|
283 |
font-size: 12px;
|
284 |
margin: 0 0 7px;
|
486 |
|
487 |
#infobubble-content .edit-place-title {
|
488 |
width: 290px;
|
489 |
+
margin: 0 0 10px;
|
490 |
}
|
491 |
|
492 |
#infobubble-content .edit-place-description {
|
705 |
.infowindow-toolbar {
|
706 |
display: block;
|
707 |
margin: 0;
|
708 |
+
padding: 8px 0 10px;
|
709 |
}
|
710 |
|
711 |
.add-marker {
|
admin/assets/css/admin.min.css
CHANGED
@@ -1 +1 @@
|
|
1 |
-
.clear:before,.clear:after{content:" ";display:table}.clear:after{clear:both}.hover-transition,.marker-icon-row .icon,.marker-row .marker-item{-webkit-transition:.2s all linear;-moz-transition:.2s all linear;-o-transition:.2s all linear;transition:.2s all linear}.box-sizing{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}#gmb_markers_group_repeat{}.cmb_id_gmb_theme_json{display:none}.marker-info-wrapper{background-color:#F1F1F1;margin:8px 0 4px;padding:12px;font-size:13px}.marker-info-wrapper>div{margin:0 0 5px;padding:0}.marker-info-wrapper>div.rating-wrap{margin:0;padding:0}.repeatable-grouping .cmb-nested-table td{padding-top:3px}.repeatable-grouping .cmb-nested-table td pre{margin:0}.repeatable-grouping .cmb-nested-table td pre textarea{height:50px}.new-window{background:url(../img/new-window-icon.png) no-repeat right 3px transparent;padding-right:16px}.shortcode-wrap{margin:1px 14px 12px 11px}.shortcode-wrap label{margin:0 0 3px;display:block;cursor:default}.shortcode-input{margin:0;width:100%}.cmb_metabox_description{display:block;margin-top:5px}.cmb_id_gmb_places_search_multicheckbox ul{overflow:hidden}.cmb_id_gmb_places_search_multicheckbox li{float:left;width:33%}.cmb_id_gmb_places_search_multicheckbox .cmb_metabox_description{margin-top:10px;margin-right:2px}#google-map-wrap{position:relative}.autocomplete-wrap{background:url(../img/powered-by-google-on-white.png) no-repeat right 8px rgba(0,0,0,0)}.repeatable-group .shift-rows{display:none}.wpgp-message{background-color:#FFF;border-left:4px solid #7AD03A;-webkit-box-shadow:1px 1px 1px 1px rgba(0,0,0,.15);box-shadow:1px 1px 1px 1px rgba(0,0,0,.15);box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;padding:1px 12px;display:none}.wpgp-message.warning-message{border-left:4px solid #d40000;margin:20px 0 0}.wpgp-message p,.form-table td .wpgp-message p{margin:.5em 0;padding:2px}.places-change-message{margin-bottom:15px;margin-right:2px}.places-change-message p{float:left}.places-change-message .button{float:right;margin-top:5px}#google-map-wrap .wpgp-message{margin-top:20px}#map{width:100%;margin:0 auto}.places-loading{background:url(../img/spinner.gif) no-repeat center right transparent;font-style:italic;position:absolute;top:-34px;right:31px;padding:0 25px 0 0;display:none}.cmb_id_gmb_map_type td{padding-bottom:0}.cmb_id_gmb_map_type .cmb_option{margin:5px 0 10px}.cmb_id_gmb_geocoder td{padding-bottom:3px}.cmb_id_gmb_search_radius,.cmb_id_gmb_places_search_multicheckbox{display:none}#google_maps_details_options tr{display:none}#google_maps_details_options tr.cmb_id_gmb_show_poi{display:table-row}.snazzy-link{font-size:10px;text-transform:uppercase;font-style:normal;display:inline-block}.width_unit_label,.width_radio,.map-width,.map-height,.size-label{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}.inner-sidebar table.cmb_metabox label.size-label,#side-sortables table.cmb_metabox label.size-label,label.size-label{font-weight:400;font-style:italic}.inner-sidebar table.cmb_metabox label.size-label,#side-sortables table.cmb_metabox label.size-label,.form-table label.size-label{padding:9px 0 0;width:50px;font-weight:400}.map-width,.map-height{width:55px!important}#
|
1 |
+
.clear:before,.clear:after{content:" ";display:table}.clear:after{clear:both}.hover-transition,.marker-icon-row .icon,.marker-row .marker-item{-webkit-transition:.2s all linear;-moz-transition:.2s all linear;-o-transition:.2s all linear;transition:.2s all linear}.box-sizing{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box}#gmb_markers_group_repeat{}.cmb_id_gmb_theme_json{display:none}.marker-info-wrapper{background-color:#F1F1F1;margin:8px 0 4px;padding:12px;font-size:13px}.marker-info-wrapper>div{margin:0 0 5px;padding:0}.marker-info-wrapper>div.rating-wrap{margin:0;padding:0}.repeatable-grouping .cmb-nested-table td{padding-top:3px}.repeatable-grouping .cmb-nested-table td pre{margin:0}.repeatable-grouping .cmb-nested-table td pre textarea{height:50px}.new-window{background:url(../img/new-window-icon.png) no-repeat right 3px transparent;padding-right:16px}.shortcode-wrap{margin:1px 14px 12px 11px}.shortcode-wrap label{margin:0 0 3px;display:block;cursor:default}.shortcode-input{margin:0;width:100%}.cmb_metabox_description{display:block;margin-top:5px}.cmb_id_gmb_places_search_multicheckbox ul{overflow:hidden}.cmb_id_gmb_places_search_multicheckbox li{float:left;width:33%}.cmb_id_gmb_places_search_multicheckbox .cmb_metabox_description{margin-top:10px;margin-right:2px}#google-map-wrap{position:relative}.autocomplete-wrap{background:url(../img/powered-by-google-on-white.png) no-repeat right 8px rgba(0,0,0,0)}.repeatable-group .shift-rows{display:none}.wpgp-message{background-color:#FFF;border-left:4px solid #7AD03A;-webkit-box-shadow:1px 1px 1px 1px rgba(0,0,0,.15);box-shadow:1px 1px 1px 1px rgba(0,0,0,.15);box-sizing:border-box;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;padding:1px 12px;display:none}.wpgp-message.warning-message{border-left:4px solid #d40000;margin:20px 0 0}.wpgp-message p,.form-table td .wpgp-message p{margin:.5em 0;padding:2px}.places-change-message{margin-bottom:15px;margin-right:2px}.places-change-message p{float:left}.places-change-message .button{float:right;margin-top:5px}#google-map-wrap .wpgp-message{margin-top:20px}#map{width:100%;margin:0 auto}.places-loading{background:url(../img/spinner.gif) no-repeat center right transparent;font-style:italic;position:absolute;top:-34px;right:31px;padding:0 25px 0 0;display:none}.cmb_id_gmb_map_type td{padding-bottom:0}.cmb_id_gmb_map_type .cmb_option{margin:5px 0 10px}.cmb_id_gmb_geocoder td{padding-bottom:3px}.cmb_id_gmb_search_radius,.cmb_id_gmb_places_search_multicheckbox{display:none}#google_maps_details_options tr{display:none}#google_maps_details_options tr.cmb_id_gmb_show_poi{display:table-row}.snazzy-link{font-size:10px;text-transform:uppercase;font-style:normal;display:inline-block}.width_unit_label,.width_radio,.map-width,.map-height,.size-label{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}.inner-sidebar table.cmb_metabox label.size-label,#side-sortables table.cmb_metabox label.size-label,label.size-label{font-weight:400;font-style:italic}.inner-sidebar table.cmb_metabox label.size-label,#side-sortables table.cmb_metabox label.size-label,.form-table label.size-label{padding:9px 0 0;width:50px;font-weight:400}.map-width,.map-height{width:55px!important}#google_maps_preview_metabox .gm-style-iw,#google_maps_preview_metabox .gm-style-iw>div{overflow:visible!important}#google_maps_preview_metabox .gm-style-iw>div>div{overflow:visible!important}#infobubble-content{overflow:hidden!important}#infobubble-content.loading{background:url(../../../includes/assets/img/loading.GIF) no-repeat center center #FFF}#google-map-wrap div#infobubble-content>div{white-space:normal}#infobubble-content p{font-size:12px;margin:0 0 7px;color:#2C2C2C}#infobubble-content{padding:0;margin:3px -20px 0 0;min-width:314px;min-height:80px;height:100%;overflow:hidden;box-sizing:border-box;cursor:default}#infobubble-content .place-title{border:1px solid #FFF;font-family:Roboto,Arial,sans-serif;font-size:16px;line-height:21px;font-weight:700;min-height:21px;white-space:normal;padding-right:20px}#infobubble-content .place-description{white-space:normal}.marker-confirm-place{margin:0 8px 4px 0;display:inline-block}.marker-confirm-place:hover{cursor:pointer}#infobubble-content .rating-wrap{overflow:hidden}#infobubble-content .numeric-rating{font-size:16px;color:#DD4B39;font-weight:400;float:left;margin:0 5px 0 0}#infobubble-content .star-rating-wrap{background:url(../../../includes/assets/img/review_stars.png) no-repeat 0 0 transparent;height:13px;width:67px;float:left;margin:5px 0 0}#infobubble-content .star-rating-size{background:url(../../../includes/assets/img/review_stars.png) no-repeat 0 -13px transparent;height:13px}#edit-toolbar{list-style:none;margin:0;padding:0;text-align:right}#edit-toolbar>li{margin:0 4px;cursor:pointer;display:inline-block;content:'';height:21px;width:21px;opacity:.5;background:url(../img/icons-infowindow-002.svg)}#edit-toolbar>li:hover{opacity:.75}#edit-toolbar>li.trash-marker{background-position:-42px 0}#edit-toolbar>li.edit-info{background:url(../img/icons-app-000.svg);background-position:21px 21px}#lat-lng-wrap input[type=text].latitude,#lat-lng-wrap input[type=text].longitude,#side-sortables #lat-lng-wrap input[type=text].latitude,#side-sortables #lat-lng-wrap input[type=text].longitude{width:100px;float:left}.lat-lng-wrap{float:left;margin:0 0 10px;clear:none}.lng-wrap{margin-bottom:0}.lat-lng-wrap>span,.lat-lng-wrap>input{float:left}.lat-lng-wrap>span{margin:8px 5px 0 0;width:80px;font-style:italic}.lat-lng-change-message{float:left;clear:both;margin:10px 0 0;width:100%}.lat-lng-change-message>p{float:left}.lat-lng-update-btn{float:right;margin:7px 0 0!important}#google_maps_metabox .search-autocomplete{width:78%;margin-right:10px}#google_maps_metabox .autocomplete-wrap p{font-style:italic;margin-bottom:5px!important}#google_maps_metabox a.drop-marker{font-style:normal}#save-toolbar{margin:0;padding:0;float:left}#save-toolbar>li{display:inline-block;margin:0;padding:0}#save-toolbar>li:first-child{margin:0 5px 0 0}#save-toolbar>li .google-btn{width:75px}a.marker-edit-link{background:url(../img/marker-btn.png) no-repeat 0 0 transparent;width:20px;height:20px;opacity:.5;margin:4px 0 0;display:block;float:right}#save-toolbar>li .marker-edit-link{opacity:.75}#infobubble-content .edit-place-title{width:290px;margin:0 0 10px}#infobubble-content .edit-place-description{display:block;font-size:12px;width:100%;min-height:100px}.marker-icon-row{margin-bottom:10px}.marker-icon-row,.save-marker-icon{display:none}.marker-icon-row .icon,.marker-row .marker-item{width:31%;float:left;font-size:14px;margin-bottom:10px;padding:4px;border-radius:5px}.icon-inner{position:relative;top:-8px}.marker-icon-row .icon span{font-size:32px;margin-right:8px;position:relative;top:8px}.marker-icon-row .icon:hover,.marker-row .marker-item:hover,.marker-item-selected{cursor:pointer;background:#DDEAEC}.marker-label{z-index:99;position:absolute;display:block;margin-top:-50px;margin-left:-25px;width:50px;height:50px;font-size:28px;text-align:center;color:#FFF;white-space:nowrap;line-height:1}.marker-icon-color-wrap,.marker-label-color-wrap{display:none}.marker-label-color-wrap{margin-bottom:60px}.marker-color-picker-wrap{float:left}#TB_ajaxContent p.color-desc{float:left;margin:0 0 0 10px;padding-top:3px;font-style:italic}.marker-row .marker-item{float:left;width:31%}.marker-svg{float:left;margin-right:12px;height:50px}.marker-svg .default-marker{margin:8px 0 0 10px}.marker-description{line-height:50px}.save-marker-icon{background:#F1F1F1;padding:10px;position:absolute;bottom:0;left:0;width:100%;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;border-top:1px solid #DFDFDF}.save-marker-icon .save-text{float:left;font-style:italic;margin:0}.save-marker-icon .button{float:right}.radius-label{position:relative;top:35px;color:#7dbee8}.google-btn{-webkit-border-radius:2px;border-radius:2px;cursor:default;font-weight:300;font-size:13px;text-align:center;white-space:nowrap;height:27px;line-height:27px;min-width:54px;outline:0;padding:0 8px}.google-btn-blue{-webkit-box-shadow:none;box-shadow:none;background-color:#4D90FE;background-image:-webkit-linear-gradient(top,#4D90FE,#4787ED);background-image:linear-gradient(top,#4d90fe,#4787ed);border:1px solid #3079ED;color:#FFF}.google-btn-blue:hover{-webkit-box-shadow:none;box-shadow:none;background-color:#357AE8;background-image:-webkit-linear-gradient(top,#4D90FE,#357AE8);background-image:linear-gradient(top,#4d90fe,#357ae8);border:1px solid #2F5BB7;border-bottom-color:#2F5BB7}.google-btn-blue:active,.google-btn-blue:focus{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.3);box-shadow:inset 0 1px 2px rgba(0,0,0,.3);background:#357AE8;border:1px solid #2F5BB7;border-top:1px solid #2F5BB7}.google-btn-default{-webkit-box-shadow:none;box-shadow:none;background-color:#F5F5F5;background-image:-webkit-linear-gradient(top,#F5F5F5,#F1F1F1);background-image:linear-gradient(top,#f5f5f5,#f1f1f1);color:#333;border:1px solid #DCDCDC;border:1px solid rgba(0,0,0,.1)}.google-btn-default:hover{-webkit-box-shadow:none;box-shadow:none;background-color:#F8F8F8;background-image:-webkit-linear-gradient(top,#F8F8F8,#F1F1F1);background-image:linear-gradient(top,#f8f8f8,#f1f1f1);border:1px solid #C6C6C6;color:#111}.google-btn-default:active{-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1);background:#F8F8F8;color:#111}.infowindow-toolbar{display:block;margin:0;padding:8px 0 10px}.add-marker{text-decoration:none}
|
admin/assets/img/icons-infowindow-002.svg
CHANGED
@@ -1,111 +1,111 @@
|
|
1 |
-
<?xml version="1.0" encoding="utf-8"?>
|
2 |
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
3 |
-
<!ENTITY st0 "fill:#4D90FE;">
|
4 |
-
<!ENTITY st1 "fill:#4387FD;fill-opacity:0;">
|
5 |
-
<!ENTITY st2 "enable-background:new ;">
|
6 |
-
<!ENTITY st3 "opacity:0.5;fill:none;stroke:#000000;stroke-miterlimit:10;">
|
7 |
-
<!ENTITY st4 "opacity:0.55;enable-background:new ;">
|
8 |
-
<!ENTITY st5 "stroke:#FFFFFF;stroke-width:0.35;stroke-miterlimit:10;">
|
9 |
-
<!ENTITY st6 "fill:#FFFFFF;stroke:#000000;stroke-width:0.8;stroke-miterlimit:10;">
|
10 |
-
<!ENTITY st7 "opacity:0.45;enable-background:new ;">
|
11 |
-
<!ENTITY st8 "fill:none;stroke:#000000;stroke-width:1.4;stroke-miterlimit:10;">
|
12 |
-
<!ENTITY st9 "opacity:0.5;">
|
13 |
-
<!ENTITY st10 "fill:none;stroke:#000000;stroke-miterlimit:10;">
|
14 |
-
<!ENTITY st11 "fill:#FFD040;">
|
15 |
-
<!ENTITY st12 "fill:#FFFFFF;">
|
16 |
-
<!ENTITY st13 "fill:none;">
|
17 |
-
<!ENTITY st14 "opacity:0.5;fill:#FFFFFF;enable-background:new;">
|
18 |
-
<!ENTITY st15 "fill:#DD4B39;">
|
19 |
-
]>
|
20 |
-
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="84px"
|
21 |
-
height="63px" viewBox="0 0 84 63" style="enable-background:new 0 0 84 63;" xml:space="preserve">
|
22 |
-
<g id="Infowindow">
|
23 |
-
<g id="Length">
|
24 |
-
<polygon points="58,31 55,28 55,30 49,30 49,28 46,31 49,34 49,32 55,32 55,34 "/>
|
25 |
-
<rect x="42" y="21" style="&st13;" width="21" height="21"/>
|
26 |
-
</g>
|
27 |
-
<g id="Perimeter">
|
28 |
-
<path d="M35,27v8h-8v-8H35 M37,25H25v12h12V25L37,25z"/>
|
29 |
-
<rect x="21" y="21" style="&st13;" width="21" height="21"/>
|
30 |
-
</g>
|
31 |
-
<g id="Area">
|
32 |
-
<rect y="21" style="&st13;" width="21" height="21"/>
|
33 |
-
<g>
|
34 |
-
<polygon points="6.646,25 4,27.646 4,28.354 7.354,25 "/>
|
35 |
-
</g>
|
36 |
-
<g>
|
37 |
-
<polygon points="9.646,25 4,30.646 4,31.354 10.354,25 "/>
|
38 |
-
</g>
|
39 |
-
<g>
|
40 |
-
<polygon points="12.646,25 4,33.646 4,34.354 13.354,25 "/>
|
41 |
-
</g>
|
42 |
-
<g>
|
43 |
-
<polygon points="15.646,25 4,36.646 4,37 4.354,37 16,25.354 16,25 "/>
|
44 |
-
</g>
|
45 |
-
<g>
|
46 |
-
<polygon points="6.646,37 7.354,37 16,28.354 16,27.646 "/>
|
47 |
-
</g>
|
48 |
-
<g>
|
49 |
-
<polygon points="9.646,37 10.354,37 16,31.354 16,30.646 "/>
|
50 |
-
</g>
|
51 |
-
<g>
|
52 |
-
<polygon points="12.646,37 13.354,37 16,34.354 16,33.646 "/>
|
53 |
-
</g>
|
54 |
-
</g>
|
55 |
-
<g id="Delete">
|
56 |
-
<rect x="42" style="&st13;" width="21" height="21"/>
|
57 |
-
<polygon points="53.997,4 53.997,3 50.003,3 50.003,4 46,4 46,6 58,6 58,4 "/>
|
58 |
-
<rect x="47" y="7" width="10" height="11"/>
|
59 |
-
</g>
|
60 |
-
<g id="Direections">
|
61 |
-
<rect x="21" style="&st13;" width="21" height="21"/>
|
62 |
-
<path style="&st7;" d="M27,4l3.805,3.853C32.227,9.275,32.801,11,32.801,13v4H30.1v-4c-0.016-1.158-0.365-2.311-1.248-3.195L25,6
|
63 |
-
L27,4z"/>
|
64 |
-
<path d="M32.197,7.853l1.816-1.84L32,4h6v6l-2.012-2.012L34.15,9.805C33.266,10.69,32.916,11.842,32.9,13v4H30v-4
|
65 |
-
C30,11,30.773,9.275,32.197,7.853z"/>
|
66 |
-
</g>
|
67 |
-
<g id="Settings">
|
68 |
-
<rect style="&st13;" width="21" height="21"/>
|
69 |
-
<path d="M16.895,11.641C16.96,11.27,17,10.89,17,10.5s-0.04-0.77-0.105-1.14l1.535-1.129l0.182-0.683l-1.5-2.598l-0.684-0.184
|
70 |
-
l-1.738,0.762c-0.58-0.49-1.25-0.875-1.979-1.138L12.5,2.5L12,2H9L8.5,2.499L8.29,4.395C7.562,4.658,6.896,5.043,6.314,5.531
|
71 |
-
L4.57,4.768L3.889,4.951l-1.5,2.598l0.184,0.684l1.535,1.129C4.04,9.731,4,10.111,4,10.5s0.04,0.77,0.105,1.139L2.57,12.768
|
72 |
-
l-0.182,0.685l1.5,2.598l0.682,0.185l1.744-0.764c0.58,0.487,1.248,0.872,1.975,1.137l0.21,1.896L9,19h3l0.5-0.5l0.21-1.893
|
73 |
-
c0.729-0.262,1.397-0.647,1.979-1.137l1.737,0.762l0.685-0.185l1.498-2.598l-0.18-0.683L16.895,11.641z M14.15,10.5
|
74 |
-
c0,2.016-1.635,3.65-3.65,3.65s-3.65-1.635-3.65-3.65c0-2.015,1.635-3.65,3.65-3.65S14.15,8.484,14.15,10.5z"/>
|
75 |
-
</g>
|
76 |
-
</g>
|
77 |
-
<g id="Table">
|
78 |
-
</g>
|
79 |
-
<g id="Toolbar">
|
80 |
-
</g>
|
81 |
-
<g id="Legend_panel">
|
82 |
-
</g>
|
83 |
-
<g id="App">
|
84 |
-
<g id="Add_image">
|
85 |
-
<rect x="63" y="21" style="&st13;" width="21" height="21"/>
|
86 |
-
<polygon style="&st12;" points="72,27 74,27 74,30 77,30 77,32 74,32 74,35 72,35 72,32 69,32 69,30 72,30 "/>
|
87 |
-
</g>
|
88 |
-
<g id="Delete_small_white">
|
89 |
-
<rect x="63" style="&st13;" width="21" height="21"/>
|
90 |
-
<polygon style="&st12;" points="74.997,5 74.997,4 71.003,4 71.003,5 68,5 68,7 78,7 78,5 "/>
|
91 |
-
<rect x="69" y="8" style="&st12;" width="8" height="8"/>
|
92 |
-
</g>
|
93 |
-
<g id="Next_arrow_1_">
|
94 |
-
<rect x="21" y="42" style="&st13;" width="21" height="21"/>
|
95 |
-
<polygon style="&st12;" points="30.277,57 35,53.048 30.287,49 29,50.408 32.053,53.029 29.01,55.576 "/>
|
96 |
-
</g>
|
97 |
-
<g id="Previous_arrow_1_">
|
98 |
-
<rect y="42" style="&st13;" width="21" height="21"/>
|
99 |
-
<polygon style="&st12;" points="12.99,55.576 9.947,53.029 13,50.408 11.713,49 7,53.048 11.723,57 "/>
|
100 |
-
</g>
|
101 |
-
<g>
|
102 |
-
<rect x="42" y="42" style="&st13;" width="21" height="21"/>
|
103 |
-
<g>
|
104 |
-
<path d="M46.5,60c-1,0-1.5-0.5-1.5-1.5v-9c0-1,0.5-1.5,1.5-1.5H48c0,0,2-2,3-2h4c1,0,3,2,3,2h1.5c1,0,1.5,0.5,1.5,1.5v9
|
105 |
-
c0,1-0.5,1.5-1.5,1.5H46.5z"/>
|
106 |
-
<path style="&st12;" d="M53,50c-2.209,0-4,1.791-4,4s1.791,4,4,4s4-1.791,4-4S55.209,50,53,50z M53,56.375
|
107 |
-
c-1.312,0-2.375-1.063-2.375-2.375s1.063-2.375,2.375-2.375s2.375,1.063,2.375,2.375S54.312,56.375,53,56.375z"/>
|
108 |
-
</g>
|
109 |
-
</g>
|
110 |
-
</g>
|
111 |
-
</svg>
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" [
|
3 |
+
<!ENTITY st0 "fill:#4D90FE;">
|
4 |
+
<!ENTITY st1 "fill:#4387FD;fill-opacity:0;">
|
5 |
+
<!ENTITY st2 "enable-background:new ;">
|
6 |
+
<!ENTITY st3 "opacity:0.5;fill:none;stroke:#000000;stroke-miterlimit:10;">
|
7 |
+
<!ENTITY st4 "opacity:0.55;enable-background:new ;">
|
8 |
+
<!ENTITY st5 "stroke:#FFFFFF;stroke-width:0.35;stroke-miterlimit:10;">
|
9 |
+
<!ENTITY st6 "fill:#FFFFFF;stroke:#000000;stroke-width:0.8;stroke-miterlimit:10;">
|
10 |
+
<!ENTITY st7 "opacity:0.45;enable-background:new ;">
|
11 |
+
<!ENTITY st8 "fill:none;stroke:#000000;stroke-width:1.4;stroke-miterlimit:10;">
|
12 |
+
<!ENTITY st9 "opacity:0.5;">
|
13 |
+
<!ENTITY st10 "fill:none;stroke:#000000;stroke-miterlimit:10;">
|
14 |
+
<!ENTITY st11 "fill:#FFD040;">
|
15 |
+
<!ENTITY st12 "fill:#FFFFFF;">
|
16 |
+
<!ENTITY st13 "fill:none;">
|
17 |
+
<!ENTITY st14 "opacity:0.5;fill:#FFFFFF;enable-background:new;">
|
18 |
+
<!ENTITY st15 "fill:#DD4B39;">
|
19 |
+
]>
|
20 |
+
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="84px"
|
21 |
+
height="63px" viewBox="0 0 84 63" style="enable-background:new 0 0 84 63;" xml:space="preserve">
|
22 |
+
<g id="Infowindow">
|
23 |
+
<g id="Length">
|
24 |
+
<polygon points="58,31 55,28 55,30 49,30 49,28 46,31 49,34 49,32 55,32 55,34 "/>
|
25 |
+
<rect x="42" y="21" style="&st13;" width="21" height="21"/>
|
26 |
+
</g>
|
27 |
+
<g id="Perimeter">
|
28 |
+
<path d="M35,27v8h-8v-8H35 M37,25H25v12h12V25L37,25z"/>
|
29 |
+
<rect x="21" y="21" style="&st13;" width="21" height="21"/>
|
30 |
+
</g>
|
31 |
+
<g id="Area">
|
32 |
+
<rect y="21" style="&st13;" width="21" height="21"/>
|
33 |
+
<g>
|
34 |
+
<polygon points="6.646,25 4,27.646 4,28.354 7.354,25 "/>
|
35 |
+
</g>
|
36 |
+
<g>
|
37 |
+
<polygon points="9.646,25 4,30.646 4,31.354 10.354,25 "/>
|
38 |
+
</g>
|
39 |
+
<g>
|
40 |
+
<polygon points="12.646,25 4,33.646 4,34.354 13.354,25 "/>
|
41 |
+
</g>
|
42 |
+
<g>
|
43 |
+
<polygon points="15.646,25 4,36.646 4,37 4.354,37 16,25.354 16,25 "/>
|
44 |
+
</g>
|
45 |
+
<g>
|
46 |
+
<polygon points="6.646,37 7.354,37 16,28.354 16,27.646 "/>
|
47 |
+
</g>
|
48 |
+
<g>
|
49 |
+
<polygon points="9.646,37 10.354,37 16,31.354 16,30.646 "/>
|
50 |
+
</g>
|
51 |
+
<g>
|
52 |
+
<polygon points="12.646,37 13.354,37 16,34.354 16,33.646 "/>
|
53 |
+
</g>
|
54 |
+
</g>
|
55 |
+
<g id="Delete">
|
56 |
+
<rect x="42" style="&st13;" width="21" height="21"/>
|
57 |
+
<polygon points="53.997,4 53.997,3 50.003,3 50.003,4 46,4 46,6 58,6 58,4 "/>
|
58 |
+
<rect x="47" y="7" width="10" height="11"/>
|
59 |
+
</g>
|
60 |
+
<g id="Direections">
|
61 |
+
<rect x="21" style="&st13;" width="21" height="21"/>
|
62 |
+
<path style="&st7;" d="M27,4l3.805,3.853C32.227,9.275,32.801,11,32.801,13v4H30.1v-4c-0.016-1.158-0.365-2.311-1.248-3.195L25,6
|
63 |
+
L27,4z"/>
|
64 |
+
<path d="M32.197,7.853l1.816-1.84L32,4h6v6l-2.012-2.012L34.15,9.805C33.266,10.69,32.916,11.842,32.9,13v4H30v-4
|
65 |
+
C30,11,30.773,9.275,32.197,7.853z"/>
|
66 |
+
</g>
|
67 |
+
<g id="Settings">
|
68 |
+
<rect style="&st13;" width="21" height="21"/>
|
69 |
+
<path d="M16.895,11.641C16.96,11.27,17,10.89,17,10.5s-0.04-0.77-0.105-1.14l1.535-1.129l0.182-0.683l-1.5-2.598l-0.684-0.184
|
70 |
+
l-1.738,0.762c-0.58-0.49-1.25-0.875-1.979-1.138L12.5,2.5L12,2H9L8.5,2.499L8.29,4.395C7.562,4.658,6.896,5.043,6.314,5.531
|
71 |
+
L4.57,4.768L3.889,4.951l-1.5,2.598l0.184,0.684l1.535,1.129C4.04,9.731,4,10.111,4,10.5s0.04,0.77,0.105,1.139L2.57,12.768
|
72 |
+
l-0.182,0.685l1.5,2.598l0.682,0.185l1.744-0.764c0.58,0.487,1.248,0.872,1.975,1.137l0.21,1.896L9,19h3l0.5-0.5l0.21-1.893
|
73 |
+
c0.729-0.262,1.397-0.647,1.979-1.137l1.737,0.762l0.685-0.185l1.498-2.598l-0.18-0.683L16.895,11.641z M14.15,10.5
|
74 |
+
c0,2.016-1.635,3.65-3.65,3.65s-3.65-1.635-3.65-3.65c0-2.015,1.635-3.65,3.65-3.65S14.15,8.484,14.15,10.5z"/>
|
75 |
+
</g>
|
76 |
+
</g>
|
77 |
+
<g id="Table">
|
78 |
+
</g>
|
79 |
+
<g id="Toolbar">
|
80 |
+
</g>
|
81 |
+
<g id="Legend_panel">
|
82 |
+
</g>
|
83 |
+
<g id="App">
|
84 |
+
<g id="Add_image">
|
85 |
+
<rect x="63" y="21" style="&st13;" width="21" height="21"/>
|
86 |
+
<polygon style="&st12;" points="72,27 74,27 74,30 77,30 77,32 74,32 74,35 72,35 72,32 69,32 69,30 72,30 "/>
|
87 |
+
</g>
|
88 |
+
<g id="Delete_small_white">
|
89 |
+
<rect x="63" style="&st13;" width="21" height="21"/>
|
90 |
+
<polygon style="&st12;" points="74.997,5 74.997,4 71.003,4 71.003,5 68,5 68,7 78,7 78,5 "/>
|
91 |
+
<rect x="69" y="8" style="&st12;" width="8" height="8"/>
|
92 |
+
</g>
|
93 |
+
<g id="Next_arrow_1_">
|
94 |
+
<rect x="21" y="42" style="&st13;" width="21" height="21"/>
|
95 |
+
<polygon style="&st12;" points="30.277,57 35,53.048 30.287,49 29,50.408 32.053,53.029 29.01,55.576 "/>
|
96 |
+
</g>
|
97 |
+
<g id="Previous_arrow_1_">
|
98 |
+
<rect y="42" style="&st13;" width="21" height="21"/>
|
99 |
+
<polygon style="&st12;" points="12.99,55.576 9.947,53.029 13,50.408 11.713,49 7,53.048 11.723,57 "/>
|
100 |
+
</g>
|
101 |
+
<g>
|
102 |
+
<rect x="42" y="42" style="&st13;" width="21" height="21"/>
|
103 |
+
<g>
|
104 |
+
<path d="M46.5,60c-1,0-1.5-0.5-1.5-1.5v-9c0-1,0.5-1.5,1.5-1.5H48c0,0,2-2,3-2h4c1,0,3,2,3,2h1.5c1,0,1.5,0.5,1.5,1.5v9
|
105 |
+
c0,1-0.5,1.5-1.5,1.5H46.5z"/>
|
106 |
+
<path style="&st12;" d="M53,50c-2.209,0-4,1.791-4,4s1.791,4,4,4s4-1.791,4-4S55.209,50,53,50z M53,56.375
|
107 |
+
c-1.312,0-2.375-1.063-2.375-2.375s1.063-2.375,2.375-2.375s2.375,1.063,2.375,2.375S54.312,56.375,53,56.375z"/>
|
108 |
+
</g>
|
109 |
+
</g>
|
110 |
+
</g>
|
111 |
+
</svg>
|
admin/assets/js/admin-google-map.js
ADDED
@@ -0,0 +1,1677 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/**
|
2 |
+
* Google Maps CPT Handling
|
3 |
+
*
|
4 |
+
* Nice Demos:
|
5 |
+
* https://developers.google.com/maps/documentation/javascript/examples/geocoding-simple
|
6 |
+
*
|
7 |
+
*/
|
8 |
+
|
9 |
+
|
10 |
+
(function ( $ ) {
|
11 |
+
"use strict";
|
12 |
+
|
13 |
+
/**
|
14 |
+
* Window Load functions
|
15 |
+
*/
|
16 |
+
$( window ).load( function () {
|
17 |
+
|
18 |
+
toggle_metabox_fields();
|
19 |
+
|
20 |
+
//tooltips
|
21 |
+
initialize_tooltips();
|
22 |
+
|
23 |
+
//Map type Metabox on load
|
24 |
+
initialize_map( $( '#map' ) );
|
25 |
+
|
26 |
+
//Latitude on Change
|
27 |
+
$( '#gmb_lat_lng-latitude' ).on( 'change', function () {
|
28 |
+
lat_lng_field_change( map );
|
29 |
+
} );
|
30 |
+
//Longitude on Change
|
31 |
+
$( '#gmb_lat_lng-longitude' ).on( 'change', function () {
|
32 |
+
lat_lng_field_change( map );
|
33 |
+
} );
|
34 |
+
|
35 |
+
//click to add marker
|
36 |
+
$( '.drop-marker' ).on( 'click', function ( e ) {
|
37 |
+
e.preventDefault();
|
38 |
+
if ( $( this ).hasClass( 'active' ) ) {
|
39 |
+
$( this ).text( 'Drop a Marker' ).removeClass( 'active' );
|
40 |
+
map.setOptions( {draggableCursor: null} ); //reset cursor
|
41 |
+
} else {
|
42 |
+
$( this ).text( 'Click on the Map' ).addClass( 'active' );
|
43 |
+
map.setOptions( {draggableCursor: 'crosshair'} );
|
44 |
+
var dropped_marker_event = google.maps.event.addListener( map, 'click', function ( event ) {
|
45 |
+
drop_marker( event.latLng, dropped_marker_event );
|
46 |
+
} );
|
47 |
+
}
|
48 |
+
} );
|
49 |
+
|
50 |
+
|
51 |
+
//Radius Fields
|
52 |
+
var current_radius;
|
53 |
+
|
54 |
+
//Search Radius Circle
|
55 |
+
$( '#gmb_search_radius' ).on( 'focus', function () {
|
56 |
+
current_radius = $( this ).val();
|
57 |
+
calc_radius( map, parseInt( $( this ).val() ) );
|
58 |
+
} ).focusout( function () {
|
59 |
+
if ( current_radius !== $( this ).val() ) {
|
60 |
+
perform_places_search();
|
61 |
+
}
|
62 |
+
radius_circle.setMap( null ); //removes circle on focus out
|
63 |
+
radius_marker.setMap( null ); //removes circle on focus out
|
64 |
+
} );
|
65 |
+
|
66 |
+
//Places Type Field
|
67 |
+
$( '[name^="gmb_places_search_multicheckbox"]' ).on( 'change', function () {
|
68 |
+
//Show message if not already displayed
|
69 |
+
if ( $( '.places-change-message' ).length === 0 ) {
|
70 |
+
$( '.cmb_id_gmb_places_search_multicheckbox ul' ).prepend( '<div class="wpgp-message places-change-message clear"><p>Place selections have changed.</p><a href="#" class="button update-places-map">Update Map</a></div>' );
|
71 |
+
$( '.places-change-message' ).slideDown();
|
72 |
+
}
|
73 |
+
|
74 |
+
} );
|
75 |
+
|
76 |
+
//Places Update Map Button
|
77 |
+
$( document ).on( 'click', '.update-places-map', function ( e ) {
|
78 |
+
e.preventDefault();
|
79 |
+
scroll_to_field( "#google_maps_preview_metabox" );
|
80 |
+
perform_places_search();
|
81 |
+
$( this ).parent().fadeOut( function () {
|
82 |
+
$( this ).remove();
|
83 |
+
} );
|
84 |
+
} );
|
85 |
+
|
86 |
+
//Update lat lng message
|
87 |
+
$( '.lat-lng-update-btn' ).on( 'click', function ( e ) {
|
88 |
+
e.preventDefault();
|
89 |
+
$( '.lat-lng-change-message' ).slideUp();
|
90 |
+
$( '#gmb_lat_lng-latitude' ).val( $( this ).attr( 'data-lat' ) );
|
91 |
+
$( '#gmb_lat_lng-longitude' ).val( $( this ).attr( 'data-lng' ) );
|
92 |
+
} );
|
93 |
+
|
94 |
+
|
95 |
+
//Add New Marker
|
96 |
+
$( document ).on( 'click', '.add-marker', function ( e ) {
|
97 |
+
|
98 |
+
e.preventDefault();
|
99 |
+
hover_circle.setVisible( false );
|
100 |
+
|
101 |
+
//update marker with set marker
|
102 |
+
var location_marker = new google.maps.Marker( {
|
103 |
+
position : tentative_location_marker.getPosition(),
|
104 |
+
map : map,
|
105 |
+
icon : gmb_data.plugin_url + "/public/assets/img/default-marker.png",
|
106 |
+
zIndex : google.maps.Marker.MAX_ZINDEX + 1,
|
107 |
+
optimized: false
|
108 |
+
} );
|
109 |
+
|
110 |
+
//hide tentative green marker
|
111 |
+
tentative_location_marker.setVisible( false );
|
112 |
+
|
113 |
+
//get current number of repeatable rows ie markers
|
114 |
+
var index = get_marker_index();
|
115 |
+
|
116 |
+
var reference = $( this ).data( 'reference' );
|
117 |
+
|
118 |
+
//add data to fields
|
119 |
+
$( '#gmb_markers_group_' + index + '_title' ).val( $( this ).data( 'title' ) );
|
120 |
+
$( '#gmb_markers_group_' + index + '_lat' ).val( $( this ).data( 'lat' ) );
|
121 |
+
$( '#gmb_markers_group_' + index + '_lng' ).val( $( this ).data( 'lng' ) );
|
122 |
+
$( '#gmb_markers_group_' + index + '_reference' ).val( reference );
|
123 |
+
|
124 |
+
get_editable_info_window( index, location_marker );
|
125 |
+
|
126 |
+
//location clicked
|
127 |
+
google.maps.event.addListener( location_marker, 'click', function () {
|
128 |
+
get_info_window_content( index, location_marker );
|
129 |
+
} );
|
130 |
+
|
131 |
+
} );
|
132 |
+
|
133 |
+
//Map Marker Set
|
134 |
+
set_map_marker_icon();
|
135 |
+
|
136 |
+
//Map Type
|
137 |
+
$( '#gmb_type' ).change( function () {
|
138 |
+
set_map_type( true );
|
139 |
+
} );
|
140 |
+
//Map Theme
|
141 |
+
$( '#gmb_theme' ).change( function () {
|
142 |
+
set_map_theme( true );
|
143 |
+
} );
|
144 |
+
//street view
|
145 |
+
$( '#gmb_street_view' ).change( function () {
|
146 |
+
set_street_view();
|
147 |
+
} );
|
148 |
+
//Pan
|
149 |
+
$( '#gmb_pan' ).change( function () {
|
150 |
+
set_pan_control();
|
151 |
+
} );
|
152 |
+
//Draggable
|
153 |
+
$( '#gmb_draggable' ).change( function () {
|
154 |
+
set_draggable();
|
155 |
+
} );
|
156 |
+
//Double Click Zoom
|
157 |
+
$( '#gmb_double_click' ).change( function () {
|
158 |
+
set_double_click_zoom();
|
159 |
+
} );
|
160 |
+
//Double Click Zoom
|
161 |
+
$( '#gmb_wheel_zoom' ).change( function () {
|
162 |
+
set_mouse_wheel_scroll();
|
163 |
+
} );
|
164 |
+
//Map Type Control
|
165 |
+
$( '#gmb_map_type_control' ).change( function () {
|
166 |
+
set_map_type_control();
|
167 |
+
} );
|
168 |
+
//Zoom Control
|
169 |
+
$( '#gmb_zoom_control' ).change( function () {
|
170 |
+
set_map_zoom_control();
|
171 |
+
} );
|
172 |
+
//Width/Height
|
173 |
+
$( "#gmb_width_height-width, #gmb_width_height-height" ).keyup( function () {
|
174 |
+
delay( function () {
|
175 |
+
set_map_size();
|
176 |
+
}, 500 );
|
177 |
+
} );
|
178 |
+
$( 'input[name="gmb_width_height[map_width_unit]"]' ).change( function () {
|
179 |
+
set_map_size();
|
180 |
+
} );
|
181 |
+
|
182 |
+
} ); //End Window Load
|
183 |
+
|
184 |
+
|
185 |
+
var map;
|
186 |
+
var places_service;
|
187 |
+
var lat_lng;
|
188 |
+
var zoom;
|
189 |
+
var lat_field;
|
190 |
+
var lng_field;
|
191 |
+
var radius_circle;
|
192 |
+
var radius_marker;
|
193 |
+
var place;
|
194 |
+
var autocomplete;
|
195 |
+
var info_bubble;
|
196 |
+
var info_bubble_array = [];
|
197 |
+
var tentative_location_marker;
|
198 |
+
var location_marker;
|
199 |
+
var location_marker_array = [];
|
200 |
+
var search_markers = [];
|
201 |
+
var hover_circle;
|
202 |
+
var initial_location;
|
203 |
+
var delay = (function () {
|
204 |
+
var timer = 0;
|
205 |
+
return function ( callback, ms ) {
|
206 |
+
clearTimeout( timer );
|
207 |
+
timer = setTimeout( callback, ms );
|
208 |
+
};
|
209 |
+
})();
|
210 |
+
|
211 |
+
/**
|
212 |
+
* Place marker on Map on Click
|
213 |
+
*
|
214 |
+
* @param lat_lng
|
215 |
+
* @param event
|
216 |
+
*/
|
217 |
+
function drop_marker( lat_lng, event ) {
|
218 |
+
|
219 |
+
var lat = lat_lng.lat();
|
220 |
+
var lng = lat_lng.lng();
|
221 |
+
|
222 |
+
//hide any tentative markers already in place
|
223 |
+
if ( typeof drop_location_marker !== 'undefined' ) {
|
224 |
+
drop_location_marker.setVisible( false );
|
225 |
+
}
|
226 |
+
|
227 |
+
$( '.drop-marker' ).removeClass( 'active' ).text( 'Drop a Marker' ); //reset drop button
|
228 |
+
map.setOptions( {draggableCursor: null} ); //reset cursor
|
229 |
+
google.maps.event.removeListener( event ); //remove map click event
|
230 |
+
|
231 |
+
//add marker at clicked location
|
232 |
+
var drop_location_marker = new Marker( {
|
233 |
+
position : lat_lng,
|
234 |
+
map : map,
|
235 |
+
icon : gmb_data.plugin_url + "/public/assets/img/default-marker.png",
|
236 |
+
zIndex : google.maps.Marker.MAX_ZINDEX + 1,
|
237 |
+
optimized: false
|
238 |
+
} );
|
239 |
+
|
240 |
+
//get current number of repeatable rows ie markers
|
241 |
+
var index = get_marker_index();
|
242 |
+
|
243 |
+
//add data to fields
|
244 |
+
$( '#gmb_markers_group_' + index + '_title' ).val( 'Point ' + index );
|
245 |
+
$( '#gmb_markers_group_' + index + '_lat' ).val( lat );
|
246 |
+
$( '#gmb_markers_group_' + index + '_lng' ).val( lng );
|
247 |
+
|
248 |
+
get_editable_info_window( index, drop_location_marker );
|
249 |
+
|
250 |
+
google.maps.event.addListener( drop_location_marker, 'click', function () {
|
251 |
+
get_info_window_content( index, drop_location_marker );
|
252 |
+
} );
|
253 |
+
|
254 |
+
}
|
255 |
+
|
256 |
+
/**
|
257 |
+
* Map Intialize
|
258 |
+
*
|
259 |
+
* Sets up and configures the Google Map
|
260 |
+
*
|
261 |
+
* @param map_canvas
|
262 |
+
*/
|
263 |
+
function initialize_map( map_canvas ) {
|
264 |
+
|
265 |
+
lat_field = $( '#gmb_lat_lng-latitude' );
|
266 |
+
lng_field = $( '#gmb_lat_lng-longitude' );
|
267 |
+
var latitude = ((lat_field.val()) ? lat_field.val() : '');
|
268 |
+
var longitude = ((lng_field.val()) ? lng_field.val() : '');
|
269 |
+
zoom = parseInt( $( '#gmb_zoom' ).val() );
|
270 |
+
lat_lng = new google.maps.LatLng( latitude, longitude );
|
271 |
+
|
272 |
+
var mapOptions = {
|
273 |
+
zoom : zoom,
|
274 |
+
streetViewControl: false,
|
275 |
+
styles : [
|
276 |
+
{
|
277 |
+
stylers: [
|
278 |
+
{visibility: 'simplified'}
|
279 |
+
]
|
280 |
+
},
|
281 |
+
{
|
282 |
+
elementType: 'labels', stylers: [
|
283 |
+
{visibility: 'off'}
|
284 |
+
]
|
285 |
+
}
|
286 |
+
]
|
287 |
+
};
|
288 |
+
|
289 |
+
map = new google.maps.Map( map_canvas[0], mapOptions );
|
290 |
+
places_service = new google.maps.places.PlacesService( map );
|
291 |
+
|
292 |
+
|
293 |
+
//Handle Map Geolocation
|
294 |
+
if ( navigator.geolocation && gmb_data.geolocate_setting === 'yes' && longitude == '' && latitude == '' ) {
|
295 |
+
navigator.geolocation.getCurrentPosition( function ( position ) {
|
296 |
+
initial_location = new google.maps.LatLng( position.coords.latitude, position.coords.longitude );
|
297 |
+
map.setCenter( initial_location ); //set map with location
|
298 |
+
lat_field.val( position.coords.latitude ); //set lat field
|
299 |
+
lng_field.val( position.coords.longitude ); //set lng field
|
300 |
+
} );
|
301 |
+
}
|
302 |
+
// Presaved longitude and latitude is in place
|
303 |
+
else if ( latitude !== '' && longitude !== '' ) {
|
304 |
+
|
305 |
+
//set map with saved lat/lng
|
306 |
+
map.setCenter( new google.maps.LatLng( latitude, longitude ) );
|
307 |
+
|
308 |
+
}
|
309 |
+
// Browser doesn't support Geolocation
|
310 |
+
else {
|
311 |
+
alert( 'Geolocation service failed.' );
|
312 |
+
initial_location = new google.maps.LatLng( gmb_data.default_lat, gmb_data.default_lng );
|
313 |
+
lat_field.val( gmb_data.default_lat ); //set lat field
|
314 |
+
lng_field.val( gmb_data.default_lng ); //set lng field
|
315 |
+
map.setCenter( initial_location );
|
316 |
+
}
|
317 |
+
|
318 |
+
|
319 |
+
//Set various map view options
|
320 |
+
set_map_type( false );
|
321 |
+
if ( $( '#gmb_theme' ).val() !== 'none' ) {
|
322 |
+
set_map_theme( false );
|
323 |
+
}
|
324 |
+
set_street_view();
|
325 |
+
set_pan_control();
|
326 |
+
set_draggable();
|
327 |
+
set_double_click_zoom();
|
328 |
+
set_mouse_wheel_scroll();
|
329 |
+
set_map_type_control();
|
330 |
+
set_map_zoom_control();
|
331 |
+
|
332 |
+
|
333 |
+
//Setup Autocomplete field if undefined
|
334 |
+
if ( typeof(autocomplete) == 'undefined' ) {
|
335 |
+
|
336 |
+
autocomplete = new google.maps.places.Autocomplete( $( '#gmb_geocoder' )[0] );
|
337 |
+
autocomplete.bindTo( 'bounds', map );
|
338 |
+
|
339 |
+
//Autocomplete event listener
|
340 |
+
google.maps.event.addListener( autocomplete, 'place_changed', function () {
|
341 |
+
|
342 |
+
//Clear autocomplete input value
|
343 |
+
$( '#gmb_geocoder' ).one( 'blur', function () {
|
344 |
+
$( '#gmb_geocoder' ).val( "" );
|
345 |
+
} );
|
346 |
+
setTimeout( function () {
|
347 |
+
$( '#gmb_geocoder' ).val( "" );
|
348 |
+
}, 10 );
|
349 |
+
|
350 |
+
|
351 |
+
if ( typeof tentative_location_marker !== 'undefined' ) {
|
352 |
+
tentative_location_marker.setVisible( false );
|
353 |
+
}
|
354 |
+
|
355 |
+
//get place information
|
356 |
+
place = autocomplete.getPlace();
|
357 |
+
|
358 |
+
//set lat lng input values
|
359 |
+
lat_field.val( place.geometry.location.lat() );
|
360 |
+
lng_field.val( place.geometry.location.lng() );
|
361 |
+
|
362 |
+
|
363 |
+
if ( !place.geometry ) {
|
364 |
+
alert( 'Error: Place not found!' );
|
365 |
+
return;
|
366 |
+
}
|
367 |
+
|
368 |
+
map.setCenter( place.geometry.location );
|
369 |
+
add_tentative_marker( map, place.reference );
|
370 |
+
|
371 |
+
} );
|
372 |
+
}
|
373 |
+
|
374 |
+
//InfoBubble - Contains the place's information and content
|
375 |
+
info_bubble = new google.maps.InfoWindow( {
|
376 |
+
maxWidth: 315
|
377 |
+
} );
|
378 |
+
|
379 |
+
/**
|
380 |
+
* Map Event Listeners
|
381 |
+
*/
|
382 |
+
//map loaded fully (fires once)
|
383 |
+
google.maps.event.addListenerOnce( map, 'idle', function () {
|
384 |
+
handle_map_zoom( map );
|
385 |
+
add_markers( map );
|
386 |
+
|
387 |
+
//toggle places
|
388 |
+
if ( typeof $( '.cmb_id_gmb_show_places input:radio' ).prop( 'checked' ) !== 'undefined' && $( '.cmb_id_gmb_show_places input:radio:checked' ).val() === 'yes' ) {
|
389 |
+
perform_places_search();
|
390 |
+
}
|
391 |
+
|
392 |
+
} );
|
393 |
+
|
394 |
+
//map Zoom Changed
|
395 |
+
google.maps.event.addListener( map, 'zoom_changed', function () {
|
396 |
+
handle_map_zoom( map );
|
397 |
+
} );
|
398 |
+
|
399 |
+
//Update lng and lat on map drag
|
400 |
+
google.maps.event.addListener( map, 'dragend', function () {
|
401 |
+
var map_center = map.getCenter();
|
402 |
+
$( '.lat-lng-change-message' ).slideDown();
|
403 |
+
$( '.lat-lng-update-btn' ).attr( 'data-lat', map_center.lat() );
|
404 |
+
$( '.lat-lng-update-btn' ).attr( 'data-lng', map_center.lng() );
|
405 |
+
} );
|
406 |
+
|
407 |
+
|
408 |
+
} //end initialize_map
|
409 |
+
|
410 |
+
|
411 |
+
/**
|
412 |
+
* Shows a Marker when Autocomplete search is used
|
413 |
+
* @param map
|
414 |
+
* @param reference
|
415 |
+
*/
|
416 |
+
function add_tentative_marker( map, reference ) {
|
417 |
+
|
418 |
+
var map_center = map.getCenter();
|
419 |
+
|
420 |
+
//Marker for map
|
421 |
+
tentative_location_marker = new google.maps.Marker( {
|
422 |
+
map : map,
|
423 |
+
title : 'Map Icons',
|
424 |
+
animation: google.maps.Animation.DROP,
|
425 |
+
position : new google.maps.LatLng( map_center.lat(), map_center.lng() ),
|
426 |
+
icon : new google.maps.MarkerImage( gmb_data.plugin_url + "/public/assets/img/temp-marker.png" ),
|
427 |
+
zIndex : google.maps.Marker.MAX_ZINDEX + 1,
|
428 |
+
optimized: false
|
429 |
+
} );
|
430 |
+
|
431 |
+
//EVENTS
|
432 |
+
var location_marker_mouseover = google.maps.event.addListener( tentative_location_marker, 'mouseover', function ( event ) {
|
433 |
+
add_circle( reference );
|
434 |
+
} );
|
435 |
+
var location_marker_mouseout = google.maps.event.addListener( tentative_location_marker, 'mouseout', function ( event ) {
|
436 |
+
hover_circle.setVisible( false );
|
437 |
+
} );
|
438 |
+
|
439 |
+
//location clicked
|
440 |
+
google.maps.event.addListener( tentative_location_marker, 'click', function () {
|
441 |
+
//remove event listeners
|
442 |
+
google.maps.event.removeListener( location_marker_mouseover );
|
443 |
+
google.maps.event.removeListener( location_marker_mouseout );
|
444 |
+
//show circle
|
445 |
+
hover_circle.setVisible( true );
|
446 |
+
//update marker icons
|
447 |
+
//Get initial place details from reference
|
448 |
+
add_tenative_info_window( reference, tentative_location_marker );
|
449 |
+
} );
|
450 |
+
|
451 |
+
|
452 |
+
//Update map with marker position according to lat/lng
|
453 |
+
tentative_location_marker.setVisible( true );
|
454 |
+
map.setZoom( zoom );
|
455 |
+
|
456 |
+
|
457 |
+
}
|
458 |
+
|
459 |
+
|
460 |
+
/**
|
461 |
+
* Set the editable marker window content
|
462 |
+
*/
|
463 |
+
function add_tenative_info_window( reference, marker ) {
|
464 |
+
|
465 |
+
var request = {
|
466 |
+
key : gmb_data.api_key,
|
467 |
+
reference: reference
|
468 |
+
};
|
469 |
+
|
470 |
+
places_service.getDetails( request, function ( place, status ) {
|
471 |
+
|
472 |
+
if ( status == google.maps.places.PlacesServiceStatus.OK ) {
|
473 |
+
|
474 |
+
var lat = place.geometry.location.lat();
|
475 |
+
var lng = place.geometry.location.lng();
|
476 |
+
|
477 |
+
var info_window_content = '<p class="place-title">' + place.name + '</p>';
|
478 |
+
|
479 |
+
info_window_content += add_place_content_to_info_window( place );
|
480 |
+
|
481 |
+
|
482 |
+
info_window_content += '<div class="infowindow-toolbar clear"><a href="#" class="add-marker" data-title="' + place.name + '" data-reference="' + place.reference + '" data-lat="' + lat + '" data-lng="' + lng + '">Add to Map</a></div>';
|
483 |
+
|
484 |
+
info_window_content = set_info_window_wrapper( info_window_content ); //wraps the content in div and returns
|
485 |
+
|
486 |
+
info_bubble.setContent( info_window_content ); //sets the info window content
|
487 |
+
|
488 |
+
info_bubble.open( map, marker ); //opens the info window
|
489 |
+
|
490 |
+
//close info window button
|
491 |
+
google.maps.event.addListener( info_bubble, 'closeclick', function () {
|
492 |
+
//Get initial place details from reference
|
493 |
+
hover_circle.setVisible( false );
|
494 |
+
|
495 |
+
} );
|
496 |
+
|
497 |
+
|
498 |
+
}
|
499 |
+
|
500 |
+
} );
|
501 |
+
|
502 |
+
}
|
503 |
+
|
504 |
+
|
505 |
+
/**
|
506 |
+
* info_bubble Content for Place Details
|
507 |
+
*
|
508 |
+
* This marker contains more information about the place
|
509 |
+
*
|
510 |
+
* @param place
|
511 |
+
*/
|
512 |
+
function add_place_content_to_info_window( place ) {
|
513 |
+
|
514 |
+
var info_window_content;
|
515 |
+
|
516 |
+
//additional info wrapper
|
517 |
+
info_window_content = '<div class="marker-info-wrapper">';
|
518 |
+
|
519 |
+
//place address
|
520 |
+
info_window_content += ((place.formatted_address) ? '<div class="place-address">' + place.formatted_address + '</div>' : '' );
|
521 |
+
|
522 |
+
//place phone
|
523 |
+
info_window_content += ((place.formatted_phone_number) ? '<div class="place-phone">' + place.formatted_phone_number + '</div>' : '' );
|
524 |
+
|
525 |
+
//place website
|
526 |
+
info_window_content += ((place.website) ? '<div class="place-website"><a href="' + place.website + '" target="_blank" rel="nofollow" title="Click to visit the ' + place.name + ' website">Website</a></div>' : '' );
|
527 |
+
|
528 |
+
//rating
|
529 |
+
if ( place.rating ) {
|
530 |
+
info_window_content += '<div class="rating-wrap clear">' +
|
531 |
+
'<p class="numeric-rating">' + place.rating + '</p>' +
|
532 |
+
'<div class="star-rating-wrap">' +
|
533 |
+
'<div class="star-rating-size" style="width:' + (65 * place.rating / 5) + 'px;"></div>' +
|
534 |
+
'</div>' +
|
535 |
+
'</div>'
|
536 |
+
}
|
537 |
+
|
538 |
+
|
539 |
+
//close wrapper
|
540 |
+
info_window_content += '</div>';
|
541 |
+
|
542 |
+
|
543 |
+
return info_window_content;
|
544 |
+
|
545 |
+
}
|
546 |
+
|
547 |
+
|
548 |
+
/**
|
549 |
+
* info_bubble Content for Place Details
|
550 |
+
*
|
551 |
+
* This marker contains more information about the place
|
552 |
+
*/
|
553 |
+
function get_editable_info_window( index, marker ) {
|
554 |
+
|
555 |
+
info_bubble.close();
|
556 |
+
|
557 |
+
info_bubble.setContent( '<div id="infobubble-content" class="loading"></div>' );
|
558 |
+
|
559 |
+
info_bubble.open( map, marker );
|
560 |
+
|
561 |
+
var info_window_data = get_info_window_saved_data( index );
|
562 |
+
|
563 |
+
var info_window_content;
|
564 |
+
|
565 |
+
//default title
|
566 |
+
if ( !info_window_data.title ) {
|
567 |
+
info_window_data.title = 'Point ' + index;
|
568 |
+
}
|
569 |
+
|
570 |
+
//place name
|
571 |
+
info_window_content = '<input class="edit-place-title" data-field="#gmb_markers_group_' + index + '_title" type="text" value="' + info_window_data.title + '">';
|
572 |
+
|
573 |
+
info_window_content += '<textarea class="edit-place-description" data-field="#gmb_markers_group_' + index + '_description">' + info_window_data.desc + '</textarea>';
|
574 |
+
|
575 |
+
//info_window_content += add_place_content_to_info_window( place );
|
576 |
+
|
577 |
+
//toolbar
|
578 |
+
info_window_content += '<div class="infowindow-toolbar clear"><ul id="save-toolbar">' +
|
579 |
+
'<li class="info-window-save"><div class="google-btn-blue google-btn google-save-btn" data-tooltip="Save changes" data-index="' + index + '">Save</div></li>' +
|
580 |
+
'<li class="info-window-cancel"><div class="google-btn-default google-btn google-cancel-btn" data-tooltip="Cancel edit" data-index="' + index + '">Cancel</div></li>' +
|
581 |
+
'</ul>' +
|
582 |
+
'<span class="marker-edit-link-wrap" data-index="' + index + '"><a href="#TB_inline?width=600&height=550&inlineId=marker-icon-modal" data-tooltip="Change icon" class="marker-edit-link thickbox"></a></span>' +
|
583 |
+
'</div>';
|
584 |
+
|
585 |
+
info_window_content = set_info_window_wrapper( info_window_content );
|
586 |
+
info_bubble.setContent( info_window_content );
|
587 |
+
initialize_tooltips(); //refresh tooltips
|
588 |
+
|
589 |
+
//Save info window content
|
590 |
+
google.maps.event.addDomListener( $( '.google-save-btn' )[0], 'click', function () {
|
591 |
+
|
592 |
+
//take info window vals and save to markers' repeatable group
|
593 |
+
var title_field_id = $( '.edit-place-title' ).data( 'field' );
|
594 |
+
var title_field_val = $( '.edit-place-title' ).val();
|
595 |
+
|
596 |
+
var desc_field_id = $( '.edit-place-description' ).data( 'field' );
|
597 |
+
var desc_field_val = $( '.edit-place-description' ).val();
|
598 |
+
|
599 |
+
$( title_field_id ).val( title_field_val );
|
600 |
+
$( desc_field_id ).val( desc_field_val );
|
601 |
+
|
602 |
+
//close info window and remove marker circle
|
603 |
+
get_info_window_content( $( this ).data( 'index' ), marker );
|
604 |
+
google.maps.event.removeListener( save_icon_listener ); //remove this event listener
|
605 |
+
google.maps.event.removeListener( edit_marker_icon_button_click ); //remove this event listener
|
606 |
+
|
607 |
+
} );
|
608 |
+
|
609 |
+
|
610 |
+
//Close Click
|
611 |
+
google.maps.event.addDomListener( info_bubble, 'closeclick', function () {
|
612 |
+
google.maps.event.removeListener( save_icon_listener ); //remove this event listener
|
613 |
+
google.maps.event.removeListener( edit_marker_icon_button_click ); //remove this event listener
|
614 |
+
} );
|
615 |
+
|
616 |
+
//Cancel info window content
|
617 |
+
google.maps.event.addDomListener( $( '.google-cancel-btn' )[0], 'click', function () {
|
618 |
+
//close info window and remove marker circle
|
619 |
+
get_info_window_content( $( this ).data( 'index' ), marker );
|
620 |
+
google.maps.event.removeListener( save_icon_listener ); //remove this event listener
|
621 |
+
google.maps.event.removeListener( edit_marker_icon_button_click ); //remove this event listener
|
622 |
+
|
623 |
+
} );
|
624 |
+
|
625 |
+
//Infowindow pin icon click to open ThickBox modal
|
626 |
+
var edit_marker_icon_button_click = google.maps.event.addDomListener( $( '.marker-edit-link-wrap' )[0], 'click', function () {
|
627 |
+
$( '.save-marker-button' ).attr( 'data-marker-index', $( this ).data( 'index' ) ); //Set the index for this marker
|
628 |
+
} );
|
629 |
+
|
630 |
+
|
631 |
+
//Marker Modal Update Icon
|
632 |
+
var save_icon_listener = google.maps.event.addDomListener( $( '.save-marker-button' )[0], 'click', function () {
|
633 |
+
|
634 |
+
var marker_position = marker.getPosition();
|
635 |
+
var marker_icon_data;
|
636 |
+
var marker_icon = $( this ).data( 'marker' );
|
637 |
+
var marker_icon_color = $( this ).data( 'marker-color' );
|
638 |
+
var label_color = $( this ).data( 'label-color' );
|
639 |
+
|
640 |
+
//Inline style for marker to set
|
641 |
+
var marker_label_inline_style = 'color:' + label_color + '; ';
|
642 |
+
if ( marker_icon === 'MAP_PIN' ) {
|
643 |
+
marker_label_inline_style += 'font-size: 20px;position: relative; top: -3px;'; //position: relative; top: -44px; font-size: 24px;
|
644 |
+
} else if ( marker_icon == 'SQUARE_PIN' ) {
|
645 |
+
marker_label_inline_style += 'font-size: 20px;position: relative; top: 12px;';
|
646 |
+
}
|
647 |
+
|
648 |
+
//collect marker data from submit button
|
649 |
+
var marker_label_data = '<i class="' + $( this ).data( 'label' ) + '" style="' + marker_label_inline_style + '"></i>';
|
650 |
+
|
651 |
+
//Set marker icon data
|
652 |
+
if ( marker_icon == '' ) {
|
653 |
+
//default icon
|
654 |
+
marker_icon_data = gmb_data.plugin_url + '/public/assets/img/default-marker.png';
|
655 |
+
$( '#gmb_markers_group_' + index + '_marker' ).val( '' );
|
656 |
+
marker_label_data = '';
|
657 |
+
} else {
|
658 |
+
//maps-icon
|
659 |
+
marker_icon_data = '{ path : ' + marker_icon + ', fillColor : "' + marker_icon_color + '", fillOpacity : 1, strokeColor : "", strokeWeight: 0, scale : 1 / 3 }';
|
660 |
+
$( '#gmb_markers_group_' + index + '_marker' ).val( marker_icon_data );
|
661 |
+
marker_icon_data = eval( '(' + marker_icon_data + ')' )
|
662 |
+
}
|
663 |
+
|
664 |
+
//remove current marker
|
665 |
+
marker.setMap( null );
|
666 |
+
|
667 |
+
//Update fields with necessary data
|
668 |
+
$( '#gmb_markers_group_' + index + '_label' ).val( marker_label_data );
|
669 |
+
|
670 |
+
//Update Icon
|
671 |
+
marker = new Marker( {
|
672 |
+
position: marker_position,
|
673 |
+
map : map,
|
674 |
+
zIndex : 9,
|
675 |
+
icon : marker_icon_data,
|
676 |
+
label : marker_label_data
|
677 |
+
} );
|
678 |
+
|
679 |
+
//Add event listener to new marker
|
680 |
+
google.maps.event.addListener( marker, 'click', function () {
|
681 |
+
get_info_window_content( index, marker );
|
682 |
+
} );
|
683 |
+
|
684 |
+
//Clean up modal and close
|
685 |
+
$( '.icon, .marker-item' ).removeClass( 'marker-item-selected' ); //reset modal
|
686 |
+
$( '.marker-icon-row, .save-marker-icon, .marker-icon-color-wrap, .marker-label-color-wrap' ).hide(); //reset modal
|
687 |
+
$( this ).removeData( 'marker' ); //Remove data
|
688 |
+
$( this ).removeData( 'marker-color' ); //Remove data
|
689 |
+
$( this ).removeData( 'label' ); //Remove data
|
690 |
+
$( this ).removeData( 'label-color' ); //Remove data
|
691 |
+
tb_remove(); //close TB lightbox
|
692 |
+
google.maps.event.removeListener( save_icon_listener ); //remove this event listener
|
693 |
+
google.maps.event.removeListener( edit_marker_icon_button_click ); //remove this event listener
|
694 |
+
|
695 |
+
} );
|
696 |
+
|
697 |
+
}
|
698 |
+
|
699 |
+
/**
|
700 |
+
* Wrap Info Window Content
|
701 |
+
*
|
702 |
+
* Help function that sets a div container around info window
|
703 |
+
* @param content
|
704 |
+
*/
|
705 |
+
function set_info_window_wrapper( content ) {
|
706 |
+
|
707 |
+
var info_window_content = '<div id="infobubble-content" class="main-place-infobubble-content">';
|
708 |
+
|
709 |
+
info_window_content += content;
|
710 |
+
|
711 |
+
info_window_content += '</div>';
|
712 |
+
|
713 |
+
return info_window_content;
|
714 |
+
|
715 |
+
}
|
716 |
+
|
717 |
+
|
718 |
+
/**
|
719 |
+
* Adds a marker circle
|
720 |
+
*/
|
721 |
+
function add_circle( reference ) {
|
722 |
+
|
723 |
+
hover_circle = new google.maps.Marker( {
|
724 |
+
position : tentative_location_marker.getPosition(),
|
725 |
+
zIndex : google.maps.Marker.MAX_ZINDEX - 1,
|
726 |
+
optimized: false,
|
727 |
+
icon : {
|
728 |
+
path : google.maps.SymbolPath.CIRCLE,
|
729 |
+
scale : 20,
|
730 |
+
strokeWeight : 3,
|
731 |
+
strokeOpacity: 0.9,
|
732 |
+
strokeColor : '#FFF',
|
733 |
+
fillOpacity : .3,
|
734 |
+
fillColor : '#FFF'
|
735 |
+
},
|
736 |
+
map : map
|
737 |
+
} );
|
738 |
+
|
739 |
+
|
740 |
+
google.maps.event.addListener( hover_circle, 'click', function () {
|
741 |
+
//Get initial place details from reference
|
742 |
+
add_tenative_info_window( reference, tentative_location_marker );
|
743 |
+
} );
|
744 |
+
google.maps.event.addListener( tentative_location_marker, 'click', function () {
|
745 |
+
//Get initial place details from reference
|
746 |
+
hover_circle.setVisible( true );
|
747 |
+
} );
|
748 |
+
|
749 |
+
}
|
750 |
+
|
751 |
+
|
752 |
+
/**
|
753 |
+
* Add Markers
|
754 |
+
*
|
755 |
+
* This is the marker that first displays on load for the main location or place
|
756 |
+
*
|
757 |
+
* @param map
|
758 |
+
*/
|
759 |
+
function add_markers( map ) {
|
760 |
+
|
761 |
+
clear_main_markers();
|
762 |
+
|
763 |
+
//Loop through repeatable field of markers
|
764 |
+
$( "#gmb_markers_group_repeat .repeatable-grouping" ).each( function ( index ) {
|
765 |
+
|
766 |
+
var marker_icon = gmb_data.plugin_url + '/public/assets/img/default-marker.png';
|
767 |
+
var marker_label = '';
|
768 |
+
|
769 |
+
//check for custom marker and label data
|
770 |
+
var custom_marker_icon = $( '#gmb_markers_group_' + index + '_marker' ).val();
|
771 |
+
if ( custom_marker_icon.length > 0 ) {
|
772 |
+
marker_icon = eval( "(" + custom_marker_icon + ")" );
|
773 |
+
}
|
774 |
+
var custom_label = $( '#gmb_markers_group_' + index + '_label' ).val();
|
775 |
+
if ( custom_label.length > 0 ) {
|
776 |
+
marker_label = custom_label;
|
777 |
+
}
|
778 |
+
|
779 |
+
//Marker for map
|
780 |
+
var location_marker = new Marker( {
|
781 |
+
map : map,
|
782 |
+
zIndex: 9,
|
783 |
+
icon : marker_icon,
|
784 |
+
label : marker_label
|
785 |
+
} );
|
786 |
+
|
787 |
+
var marker_lat = $( '#gmb_markers_group_' + index + '_lat' ).val();
|
788 |
+
var marker_lng = $( '#gmb_markers_group_' + index + '_lng' ).val();
|
789 |
+
|
790 |
+
location_marker.setPosition( new google.maps.LatLng( marker_lat, marker_lng ) );
|
791 |
+
location_marker.setVisible( true );
|
792 |
+
|
793 |
+
google.maps.event.addListener( location_marker, 'click', function () {
|
794 |
+
get_info_window_content( index, location_marker );
|
795 |
+
} );
|
796 |
+
|
797 |
+
} ); //end $.each()
|
798 |
+
|
799 |
+
}
|
800 |
+
|
801 |
+
|
802 |
+
function get_info_window_saved_data( index ) {
|
803 |
+
|
804 |
+
var info_window_data = new Object();
|
805 |
+
|
806 |
+
info_window_data.title = $( '#gmb_markers_group_' + index + '_title' ).val();
|
807 |
+
info_window_data.desc = $( '#gmb_markers_group_' + index + '_description' ).val();
|
808 |
+
info_window_data.reference = $( '#gmb_markers_group_' + index + '_reference' ).val();
|
809 |
+
info_window_data.lat = $( '#gmb_markers_group_' + index + '_lat' ).val();
|
810 |
+
info_window_data.lng = $( '#gmb_markers_group_' + index + '_lng' ).val();
|
811 |
+
|
812 |
+
return info_window_data;
|
813 |
+
|
814 |
+
|
815 |
+
}
|
816 |
+
|
817 |
+
/**
|
818 |
+
* Queries to get Google Place Details information
|
819 |
+
*
|
820 |
+
* Help function
|
821 |
+
* @param index
|
822 |
+
* @param marker
|
823 |
+
*/
|
824 |
+
function get_info_window_content( index, marker ) {
|
825 |
+
|
826 |
+
info_bubble.close();
|
827 |
+
|
828 |
+
info_bubble.setContent( '<div id="infobubble-content" class="loading"></div>' );
|
829 |
+
|
830 |
+
info_bubble.open( map, marker );
|
831 |
+
|
832 |
+
var info_window_data = get_info_window_saved_data( index );
|
833 |
+
|
834 |
+
var info_window_content;
|
835 |
+
|
836 |
+
|
837 |
+
//Show place information within info bubble
|
838 |
+
if ( info_window_data.reference ) {
|
839 |
+
|
840 |
+
var request = {
|
841 |
+
reference: info_window_data.reference
|
842 |
+
};
|
843 |
+
places_service.getDetails( request, function ( place, status ) {
|
844 |
+
if ( status == google.maps.places.PlacesServiceStatus.OK ) {
|
845 |
+
//place name
|
846 |
+
info_window_content = '<p class="place-title">' + info_window_data.title + '</p>';
|
847 |
+
|
848 |
+
info_window_content += '<div class="place-description">' + info_window_data.desc + '</div>';
|
849 |
+
|
850 |
+
info_window_content += add_place_content_to_info_window( place );
|
851 |
+
//toolbar
|
852 |
+
info_window_content += '<div class="infowindow-toolbar"><ul id="edit-toolbar">' +
|
853 |
+
'<li class="edit-info" data-index="' + index + '" data-tooltip="Edit Marker"></li>' +
|
854 |
+
'<li class="trash-marker" data-index="' + index + '" data-tooltip="Delete Marker"></li>' +
|
855 |
+
'</ul>' +
|
856 |
+
'</div>';
|
857 |
+
|
858 |
+
add_edit_events( info_window_content, marker );
|
859 |
+
|
860 |
+
}
|
861 |
+
} ); //end getPlaces
|
862 |
+
|
863 |
+
|
864 |
+
} else {
|
865 |
+
//Only show saved data (no place lookup)
|
866 |
+
|
867 |
+
//place name
|
868 |
+
info_window_content = '<p class="place-title">' + info_window_data.title + '</p>';
|
869 |
+
|
870 |
+
info_window_content += '<div class="place-description">' + info_window_data.desc + '</div>';
|
871 |
+
//toolbar
|
872 |
+
info_window_content += '<div class="infowindow-toolbar"><ul id="edit-toolbar">' +
|
873 |
+
'<li class="edit-info" data-index="' + index + '" data-tooltip="Edit Marker"></li>' +
|
874 |
+
'<li class="trash-marker" data-index="' + index + '" data-tooltip="Delete Marker"></li>' +
|
875 |
+
'</ul>' +
|
876 |
+
'</div>';
|
877 |
+
|
878 |
+
add_edit_events( info_window_content, marker );
|
879 |
+
|
880 |
+
|
881 |
+
}
|
882 |
+
|
883 |
+
|
884 |
+
}
|
885 |
+
|
886 |
+
/**
|
887 |
+
* Add Edit Events
|
888 |
+
*
|
889 |
+
* Sets up Google Map event listeners and other setup for info bubbles
|
890 |
+
*
|
891 |
+
* @param content
|
892 |
+
* @param marker
|
893 |
+
*/
|
894 |
+
function add_edit_events( content, marker ) {
|
895 |
+
|
896 |
+
content = set_info_window_wrapper( content ); //wraps the content in div and returns
|
897 |
+
info_bubble.setContent( content ); //set infowindow content
|
898 |
+
initialize_tooltips(); //refresh tooltips
|
899 |
+
|
900 |
+
//edit button event
|
901 |
+
google.maps.event.addDomListener( $( '.edit-info' )[0], 'click', function () {
|
902 |
+
//Edit Marker
|
903 |
+
get_editable_info_window( $( this ).data( 'index' ), marker );
|
904 |
+
} );
|
905 |
+
|
906 |
+
//trash button event
|
907 |
+
google.maps.event.addDomListener( $( '.trash-marker' )[0], 'click', function () {
|
908 |
+
var index = $( this ).data( 'index' );
|
909 |
+
|
910 |
+
//if first item clear out all input values
|
911 |
+
if ( index === 0 ) {
|
912 |
+
$( 'tr[data-iterator="' + index + '"] ' ).find( 'input,textarea' ).val( '' );
|
913 |
+
}
|
914 |
+
|
915 |
+
//trigger remove row button click for this specific markers row
|
916 |
+
$( 'tr[data-iterator="' + index + '"] .remove-group-row' ).trigger( 'click' );
|
917 |
+
//close info window and remove marker
|
918 |
+
info_bubble.close();
|
919 |
+
marker.setVisible( false );
|
920 |
+
} );
|
921 |
+
|
922 |
+
}
|
923 |
+
|
924 |
+
|
925 |
+
/**
|
926 |
+
* Marker Index
|
927 |
+
*
|
928 |
+
* Helper function that returns the appropriate index for the repeatable group
|
929 |
+
*
|
930 |
+
*/
|
931 |
+
function get_marker_index() {
|
932 |
+
//Create a new marker repeatable meta group
|
933 |
+
var index = parseInt( $( '#gmb_markers_group_repeat tr.repeatable-grouping' ).last().attr( 'data-iterator' ) );
|
934 |
+
var existing_vals = $( 'tr[data-iterator="0"] ' ).find( 'input,textarea' ).val();
|
935 |
+
|
936 |
+
//Ensure appropriate index is used for marker
|
937 |
+
if ( existing_vals && index === 0 ) {
|
938 |
+
$( '.add-group-row.button' ).trigger( 'click' );
|
939 |
+
index = 1;
|
940 |
+
} else if ( index !== 0 ) {
|
941 |
+
$( '.add-group-row.button' ).trigger( 'click' );
|
942 |
+
//recount rows
|
943 |
+
index = parseInt( $( '#gmb_markers_group_repeat tr.repeatable-grouping' ).last().attr( 'data-iterator' ) );
|
944 |
+
}
|
945 |
+
return index;
|
946 |
+
}
|
947 |
+
|
948 |
+
/**
|
949 |
+
* Google Places Marker Info Window
|
950 |
+
*
|
951 |
+
* @param place
|
952 |
+
* @param marker
|
953 |
+
*/
|
954 |
+
function get_place_info_window_content( place, marker ) {
|
955 |
+
|
956 |
+
info_bubble.setContent( '<div id="infobubble-content" class="loading"></div>' );
|
957 |
+
|
958 |
+
info_bubble.open( map, marker );
|
959 |
+
|
960 |
+
var request = {
|
961 |
+
reference: place.reference
|
962 |
+
};
|
963 |
+
places_service.getDetails( request, function ( place, status ) {
|
964 |
+
if ( status == google.maps.places.PlacesServiceStatus.OK ) {
|
965 |
+
|
966 |
+
var info_window_content;
|
967 |
+
|
968 |
+
//place name
|
969 |
+
info_window_content = '<p class="place-title">' + place.name + '</p>';
|
970 |
+
|
971 |
+
info_window_content += add_place_content_to_info_window( place );
|
972 |
+
|
973 |
+
info_window_content = set_info_window_wrapper( info_window_content ); //wraps the content in div and returns
|
974 |
+
|
975 |
+
info_bubble.setContent( info_window_content );
|
976 |
+
|
977 |
+
initialize_tooltips(); //refresh tooltips
|
978 |
+
|
979 |
+
}
|
980 |
+
} );
|
981 |
+
}
|
982 |
+
|
983 |
+
|
984 |
+
/**
|
985 |
+
* Get Places Types Array
|
986 |
+
*
|
987 |
+
* Loops through checkboxes and returns array of checked values
|
988 |
+
*
|
989 |
+
* @returns get_places_type
|
990 |
+
*/
|
991 |
+
function get_places_type_array() {
|
992 |
+
|
993 |
+
var types_array = [];
|
994 |
+
|
995 |
+
$( '.cmb_id_gmb_places_search_multicheckbox input[type="checkbox"]' ).each( function () {
|
996 |
+
if ( $( this ).is( ':checked' ) ) {
|
997 |
+
types_array.push( $( this ).val() );
|
998 |
+
}
|
999 |
+
|
1000 |
+
} );
|
1001 |
+
|
1002 |
+
return types_array;
|
1003 |
+
|
1004 |
+
}
|
1005 |
+
|
1006 |
+
|
1007 |
+
/**
|
1008 |
+
* Google Places Nearby Search
|
1009 |
+
*
|
1010 |
+
*/
|
1011 |
+
function perform_places_search() {
|
1012 |
+
|
1013 |
+
$( '.places-loading' ).fadeIn();
|
1014 |
+
$( '.warning-message' ).hide().empty();
|
1015 |
+
|
1016 |
+
var types_array = get_places_type_array();
|
1017 |
+
|
1018 |
+
clear_search_markers();
|
1019 |
+
|
1020 |
+
//Check if any place types are selected
|
1021 |
+
if ( types_array.length > 0 ) {
|
1022 |
+
|
1023 |
+
//perform search request
|
1024 |
+
var request = {
|
1025 |
+
location: return_lat_lng(),
|
1026 |
+
types : types_array,
|
1027 |
+
radius : parseInt( $( '#gmb_search_radius' ).val() )
|
1028 |
+
};
|
1029 |
+
places_service.nearbySearch( request, places_search_callback );
|
1030 |
+
}
|
1031 |
+
//Display notice that no places are selected
|
1032 |
+
else {
|
1033 |
+
|
1034 |
+
show_warning_message( '<strong>Notice: No Place Types are selected</strong><br/> Please select the types of places you would like to display on this map using the Place Type field checkboxes found below.' );
|
1035 |
+
|
1036 |
+
}
|
1037 |
+
|
1038 |
+
}
|
1039 |
+
|
1040 |
+
|
1041 |
+
/**
|
1042 |
+
* Warning Messages
|
1043 |
+
*
|
1044 |
+
* Helper function that shows a warning message below the google map
|
1045 |
+
* @param message
|
1046 |
+
*/
|
1047 |
+
function show_warning_message( message ) {
|
1048 |
+
$( '.wpgp-loading' ).fadeOut(); //fade out all loading items
|
1049 |
+
$( '.warning-message' ).empty().append( '<p>' + message + '</p>' ).fadeIn();
|
1050 |
+
}
|
1051 |
+
|
1052 |
+
|
1053 |
+
/**
|
1054 |
+
*
|
1055 |
+
* Returns Maps current Long and Latitude Object
|
1056 |
+
*
|
1057 |
+
* Helper Function
|
1058 |
+
*
|
1059 |
+
* @returns lat_lng
|
1060 |
+
*/
|
1061 |
+
function return_lat_lng() {
|
1062 |
+
var map_center = map.getCenter();
|
1063 |
+
var lat_lng = new google.maps.LatLng( map_center.lat(), map_center.lng() );
|
1064 |
+
return lat_lng;
|
1065 |
+
}
|
1066 |
+
|
1067 |
+
/**
|
1068 |
+
* Map Zoom
|
1069 |
+
*
|
1070 |
+
* Sets the map zoom field and variable
|
1071 |
+
*
|
1072 |
+
*/
|
1073 |
+
function handle_map_zoom( map ) {
|
1074 |
+
|
1075 |
+
var new_zoom = map.getZoom();
|
1076 |
+
|
1077 |
+
$( '#gmb_zoom' ).val( new_zoom );
|
1078 |
+
|
1079 |
+
$( '#gmb_zoom' ).on( 'change', function () {
|
1080 |
+
map.setZoom( parseInt( $( this ).val() ) );
|
1081 |
+
} );
|
1082 |
+
|
1083 |
+
}
|
1084 |
+
|
1085 |
+
/**
|
1086 |
+
* Map Lat Lng
|
1087 |
+
*
|
1088 |
+
* Sets the map zoom field and variable
|
1089 |
+
*/
|
1090 |
+
function lat_lng_field_change( map ) {
|
1091 |
+
var pan_point = new google.maps.LatLng( $( lat_field ).val(), $( lng_field ).val() );
|
1092 |
+
map.panTo( pan_point );
|
1093 |
+
}
|
1094 |
+
|
1095 |
+
|
1096 |
+
/**
|
1097 |
+
* Places Search Callback
|
1098 |
+
*
|
1099 |
+
* Used to loop through results and call function to create search result markers
|
1100 |
+
*
|
1101 |
+
* @param results
|
1102 |
+
* @param status
|
1103 |
+
* @param pagination
|
1104 |
+
*/
|
1105 |
+
function places_search_callback( results, status, pagination ) {
|
1106 |
+
|
1107 |
+
var i = 0;
|
1108 |
+
var result;
|
1109 |
+
|
1110 |
+
//setup new markers
|
1111 |
+
if ( status == google.maps.places.PlacesServiceStatus.OK ) {
|
1112 |
+
|
1113 |
+
//place new markers
|
1114 |
+
for ( i = 0; result = results[i]; i++ ) {
|
1115 |
+
create_search_result_marker( results[i] );
|
1116 |
+
}
|
1117 |
+
|
1118 |
+
//show all pages of results
|
1119 |
+
//@see: http://stackoverflow.com/questions/11665684/more-than-20-results-by-pagination-with-google-places-api
|
1120 |
+
if ( pagination.hasNextPage ) {
|
1121 |
+
pagination.nextPage();
|
1122 |
+
} else {
|
1123 |
+
$( '.places-loading' ).fadeOut();
|
1124 |
+
}
|
1125 |
+
|
1126 |
+
}
|
1127 |
+
}
|
1128 |
+
|
1129 |
+
/**
|
1130 |
+
* Create Search Result Marker
|
1131 |
+
*
|
1132 |
+
* Used with Places Search to place markers on map
|
1133 |
+
*
|
1134 |
+
* @param place
|
1135 |
+
*/
|
1136 |
+
function create_search_result_marker( place ) {
|
1137 |
+
|
1138 |
+
var search_marker = new Marker( {
|
1139 |
+
map : map,
|
1140 |
+
zIndex : 0,
|
1141 |
+
optimized: false
|
1142 |
+
} );
|
1143 |
+
//setup marker icon
|
1144 |
+
search_marker.setIcon( /** @type {google.maps.Icon} */({
|
1145 |
+
url : place.icon,
|
1146 |
+
size : new google.maps.Size( 24, 24 ),
|
1147 |
+
origin : new google.maps.Point( 0, 0 ),
|
1148 |
+
anchor : new google.maps.Point( 17, 34 ),
|
1149 |
+
scaledSize: new google.maps.Size( 24, 24 )
|
1150 |
+
}) );
|
1151 |
+
|
1152 |
+
search_marker.setPosition( place.geometry.location );
|
1153 |
+
search_marker.setVisible( true );
|
1154 |
+
|
1155 |
+
|
1156 |
+
google.maps.event.addListener( search_marker, 'click', function () {
|
1157 |
+
get_place_info_window_content( place, search_marker );
|
1158 |
+
} );
|
1159 |
+
|
1160 |
+
search_markers.push( search_marker )
|
1161 |
+
|
1162 |
+
}
|
1163 |
+
|
1164 |
+
|
1165 |
+
/**
|
1166 |
+
* Clears Main Markers
|
1167 |
+
*
|
1168 |
+
* Used to clear out main location marker to prevent from displaying multiple
|
1169 |
+
*
|
1170 |
+
*/
|
1171 |
+
function clear_main_markers() {
|
1172 |
+
|
1173 |
+
//clear markers
|
1174 |
+
for ( var i = 0; i < location_marker_array.length; i++ ) {
|
1175 |
+
location_marker_array[i].setMap( null );
|
1176 |
+
}
|
1177 |
+
location_marker_array.length = 0;
|
1178 |
+
|
1179 |
+
//clear infowindows
|
1180 |
+
for ( i = 0; i < info_bubble_array.length; i++ ) {
|
1181 |
+
info_bubble_array[i].close();
|
1182 |
+
google.maps.event.trigger( info_bubble_array[i], 'closeclick' );
|
1183 |
+
}
|
1184 |
+
info_bubble_array.length = 0;
|
1185 |
+
}
|
1186 |
+
|
1187 |
+
/**
|
1188 |
+
* Clears Search Markers
|
1189 |
+
*
|
1190 |
+
* Used to clear out main search markers
|
1191 |
+
*
|
1192 |
+
*/
|
1193 |
+
function clear_search_markers() {
|
1194 |
+
|
1195 |
+
//remove existing markers
|
1196 |
+
for ( var i = 0; i < search_markers.length; i++ ) {
|
1197 |
+
search_markers[i].setMap( null );
|
1198 |
+
}
|
1199 |
+
search_markers = [];
|
1200 |
+
|
1201 |
+
}
|
1202 |
+
|
1203 |
+
|
1204 |
+
/**
|
1205 |
+
* Geocode new marker position
|
1206 |
+
*
|
1207 |
+
* Perform nearby search request to see if the marker landed on a place
|
1208 |
+
*
|
1209 |
+
* @see: http://stackoverflow.com/questions/5688745/google-maps-v3-draggable-marker
|
1210 |
+
* @param pos
|
1211 |
+
*/
|
1212 |
+
function geocode_position( pos ) {
|
1213 |
+
|
1214 |
+
var request = {
|
1215 |
+
location: pos,
|
1216 |
+
radius : 10
|
1217 |
+
};
|
1218 |
+
places_service.nearbySearch( request, function ( results, status ) {
|
1219 |
+
|
1220 |
+
if ( status == google.maps.places.PlacesServiceStatus.OK ) {
|
1221 |
+
|
1222 |
+
var info_bubble_content = '';
|
1223 |
+
info_bubble.close();
|
1224 |
+
|
1225 |
+
//if more than one result ask the user which one?
|
1226 |
+
if ( results.length > 1 ) {
|
1227 |
+
|
1228 |
+
info_bubble_content = '<div id="infobubble-content"><p>Hmm, it looks like there are multiple places in this area. Please confirm which place you would like this marker to display:</p>';
|
1229 |
+
|
1230 |
+
for ( var i = 0; i < results.length; i++ ) {
|
1231 |
+
info_bubble_content += '<a class="marker-confirm-place" data-reference="' + results[i].reference + '" data-name-address="' + results[i].name + ', ' + results[i].vicinity + '">' + results[i].name + '</a>';
|
1232 |
+
}
|
1233 |
+
|
1234 |
+
info_bubble_content += '</div>';
|
1235 |
+
|
1236 |
+
//setup click event for links
|
1237 |
+
google.maps.event.addDomListener( info_bubble, 'domready', function () {
|
1238 |
+
$( '.marker-confirm-place' ).on( 'click', function ( e ) {
|
1239 |
+
e.preventDefault();
|
1240 |
+
$( '#gmb_geocoder' ).val( $( this ).data( 'name-address' ) );
|
1241 |
+
$( '#gmb_reference' ).val( $( this ).data( 'reference' ) );
|
1242 |
+
info_bubble.close();
|
1243 |
+
get_info_window_content( $( this ).data( 'reference' ) );
|
1244 |
+
//info_bubble.open( location_marker );
|
1245 |
+
} );
|
1246 |
+
} );
|
1247 |
+
|
1248 |
+
|
1249 |
+
}
|
1250 |
+
|
1251 |
+
info_bubble.setContent( info_bubble_content );
|
1252 |
+
|
1253 |
+
info_bubble.open( map, location_marker );
|
1254 |
+
|
1255 |
+
|
1256 |
+
}
|
1257 |
+
|
1258 |
+
} );
|
1259 |
+
|
1260 |
+
}
|
1261 |
+
|
1262 |
+
|
1263 |
+
/**
|
1264 |
+
* Scroll to Selector
|
1265 |
+
*
|
1266 |
+
* Helper function that scroll the user up to the map
|
1267 |
+
*/
|
1268 |
+
function scroll_to_field( selector ) {
|
1269 |
+
//scroll to the map
|
1270 |
+
$( 'html, body' ).animate( {
|
1271 |
+
scrollTop: parseInt( $( selector ).offset().top )
|
1272 |
+
}, 600 );
|
1273 |
+
}
|
1274 |
+
|
1275 |
+
/**
|
1276 |
+
* Marker Drag End
|
1277 |
+
*
|
1278 |
+
* Executes after a user drags the initial marker
|
1279 |
+
*
|
1280 |
+
* @param marker
|
1281 |
+
*/
|
1282 |
+
function marker_drag_end( marker ) {
|
1283 |
+
|
1284 |
+
var map_center = marker.getPosition();
|
1285 |
+
geocode_position( map_center );
|
1286 |
+
//update with new map coordinates
|
1287 |
+
$( lat_field ).val( map_center.lat() );
|
1288 |
+
$( lng_field ).val( map_center.lng() );
|
1289 |
+
|
1290 |
+
//Map centered on this location
|
1291 |
+
map.panTo( map_center );
|
1292 |
+
|
1293 |
+
}
|
1294 |
+
|
1295 |
+
/**
|
1296 |
+
* Radius Circle
|
1297 |
+
*
|
1298 |
+
* Draws a circle when user focuses on the radius input
|
1299 |
+
*
|
1300 |
+
* @see: http://jsfiddle.net/yV6xv/3730/
|
1301 |
+
* @param map
|
1302 |
+
* @param radiusVal
|
1303 |
+
*/
|
1304 |
+
function calc_radius( map, radiusVal ) {
|
1305 |
+
|
1306 |
+
//update marker with set marker
|
1307 |
+
radius_marker = new Marker( {
|
1308 |
+
position : map.getCenter(),
|
1309 |
+
map : map,
|
1310 |
+
icon : {
|
1311 |
+
path : MAP_PIN,
|
1312 |
+
fillColor : '#0E77E9',
|
1313 |
+
fillOpacity : 0,
|
1314 |
+
strokeColor : '',
|
1315 |
+
strokeWeight: 0,
|
1316 |
+
scale : 1 / 4
|
1317 |
+
},
|
1318 |
+
label : '<i class="map-icon-crosshairs radius-label"></i>',
|
1319 |
+
zIndex : google.maps.Marker.MAX_ZINDEX + 1,
|
1320 |
+
optimized: false
|
1321 |
+
} );
|
1322 |
+
|
1323 |
+
radius_circle = new google.maps.Circle( {
|
1324 |
+
map : map,
|
1325 |
+
fillColor : '#BBD8E9',
|
1326 |
+
fillOpacity : 0.3,
|
1327 |
+
radius : radiusVal,
|
1328 |
+
strokeColor : '#BBD8E9',
|
1329 |
+
strokeOpacity: 0.9,
|
1330 |
+
strokeWeight : 2
|
1331 |
+
} );
|
1332 |
+
|
1333 |
+
radius_circle.bindTo( 'center', radius_marker, 'position' );
|
1334 |
+
|
1335 |
+
}
|
1336 |
+
|
1337 |
+
|
1338 |
+
/**
|
1339 |
+
* Show/ Hide Map Fields
|
1340 |
+
*
|
1341 |
+
* Helper function that handles all the toggle elements within the CPT admin post screen
|
1342 |
+
*
|
1343 |
+
*/
|
1344 |
+
function toggle_metabox_fields() {
|
1345 |
+
|
1346 |
+
var show_places = $( '.cmb_id_gmb_show_places input:radio' );
|
1347 |
+
|
1348 |
+
//Places Metabox
|
1349 |
+
if ( show_places.prop( 'checked' ) === true ) {
|
1350 |
+
$( '.cmb_id_gmb_search_radius' ).show();
|
1351 |
+
$( '.cmb_id_gmb_places_search_multicheckbox' ).show();
|
1352 |
+
}
|
1353 |
+
|
1354 |
+
//Nothing checked yet so select 'No' by default
|
1355 |
+
if ( show_places.prop( 'checked' ) === false ) {
|
1356 |
+
$( '#gmb_show_places2' ).prop( 'checked', true );
|
1357 |
+
}
|
1358 |
+
|
1359 |
+
show_places.on( 'change', function () {
|
1360 |
+
|
1361 |
+
$( '.cmb_id_gmb_search_radius' ).toggle();
|
1362 |
+
$( '.cmb_id_gmb_places_search_multicheckbox' ).toggle();
|
1363 |
+
|
1364 |
+
if ( $( this ).val() === 'no' ) {
|
1365 |
+
clear_search_markers();
|
1366 |
+
} else {
|
1367 |
+
perform_places_search();
|
1368 |
+
}
|
1369 |
+
|
1370 |
+
} );
|
1371 |
+
|
1372 |
+
}
|
1373 |
+
|
1374 |
+
/**
|
1375 |
+
* Set Map Size
|
1376 |
+
*/
|
1377 |
+
function set_map_size() {
|
1378 |
+
var map_width = $( '#gmb_width_height-width' ).val();
|
1379 |
+
var map_width_value = $( 'input[name="gmb_width_height[map_width_unit]"]:checked' ).val();
|
1380 |
+
var map_height = $( '#gmb_width_height-height' ).val();
|
1381 |
+
$( '#map' ).css( {
|
1382 |
+
'width' : map_width + map_width_value,
|
1383 |
+
'height': map_height
|
1384 |
+
} );
|
1385 |
+
}
|
1386 |
+
|
1387 |
+
|
1388 |
+
/**
|
1389 |
+
* Set Zoom Control
|
1390 |
+
*/
|
1391 |
+
function set_map_zoom_control() {
|
1392 |
+
|
1393 |
+
var zoom_control = $( '#gmb_zoom_control' ).val().toUpperCase();
|
1394 |
+
|
1395 |
+
if ( zoom_control == 'NONE' ) {
|
1396 |
+
map.setOptions( {
|
1397 |
+
zoomControl: false
|
1398 |
+
} );
|
1399 |
+
} else {
|
1400 |
+
map.setOptions( {
|
1401 |
+
zoomControl : true,
|
1402 |
+
zoomControlOptions: {
|
1403 |
+
style: google.maps.ZoomControlStyle[zoom_control]
|
1404 |
+
}
|
1405 |
+
} );
|
1406 |
+
}
|
1407 |
+
}
|
1408 |
+
|
1409 |
+
|
1410 |
+
/**
|
1411 |
+
* Set Map Type Control
|
1412 |
+
*/
|
1413 |
+
function set_map_type_control() {
|
1414 |
+
var map_type_control = $( '#gmb_map_type_control' ).val().toUpperCase();
|
1415 |
+
if ( map_type_control == 'NONE' ) {
|
1416 |
+
map.setOptions( {
|
1417 |
+
mapTypeControl: false
|
1418 |
+
} );
|
1419 |
+
} else {
|
1420 |
+
map.setOptions( {
|
1421 |
+
mapTypeControl : true,
|
1422 |
+
mapTypeControlOptions: {
|
1423 |
+
style: google.maps.MapTypeControlStyle[map_type_control]
|
1424 |
+
}
|
1425 |
+
} );
|
1426 |
+
}
|
1427 |
+
}
|
1428 |
+
|
1429 |
+
/**
|
1430 |
+
* Sets Mouse Wheel Scroll
|
1431 |
+
*/
|
1432 |
+
function set_mouse_wheel_scroll() {
|
1433 |
+
var mouse_wheel_scroll = $( '#gmb_wheel_zoom' ).val();
|
1434 |
+
if ( mouse_wheel_scroll === 'none' ) {
|
1435 |
+
map.setOptions( {
|
1436 |
+
scrollwheel: false
|
1437 |
+
} );
|
1438 |
+
} else {
|
1439 |
+
map.setOptions( {
|
1440 |
+
scrollwheel: true
|
1441 |
+
} );
|
1442 |
+
}
|
1443 |
+
}
|
1444 |
+
|
1445 |
+
/**
|
1446 |
+
* Sets Double Click Zoom on Map
|
1447 |
+
*/
|
1448 |
+
function set_double_click_zoom() {
|
1449 |
+
var double_click_zoom = $( '#gmb_double_click' ).val();
|
1450 |
+
if ( double_click_zoom === 'none' ) {
|
1451 |
+
map.setOptions( {
|
1452 |
+
disableDoubleClickZoom: true
|
1453 |
+
} );
|
1454 |
+
} else {
|
1455 |
+
map.setOptions( {
|
1456 |
+
disableDoubleClickZoom: false
|
1457 |
+
} );
|
1458 |
+
}
|
1459 |
+
}
|
1460 |
+
|
1461 |
+
/**
|
1462 |
+
* Sets Draggable Map
|
1463 |
+
*/
|
1464 |
+
function set_draggable() {
|
1465 |
+
var draggable = $( '#gmb_draggable' ).val();
|
1466 |
+
if ( draggable == 'none' ) {
|
1467 |
+
map.setOptions( {
|
1468 |
+
draggable: false
|
1469 |
+
} );
|
1470 |
+
} else {
|
1471 |
+
map.setOptions( {
|
1472 |
+
draggable: true
|
1473 |
+
} );
|
1474 |
+
}
|
1475 |
+
}
|
1476 |
+
|
1477 |
+
/**
|
1478 |
+
* Sets the Pan Control
|
1479 |
+
*/
|
1480 |
+
function set_pan_control() {
|
1481 |
+
|
1482 |
+
var pan = $( '#gmb_pan' ).val();
|
1483 |
+
if ( pan === 'none' ) {
|
1484 |
+
map.setOptions( {
|
1485 |
+
panControl: false
|
1486 |
+
} );
|
1487 |
+
} else {
|
1488 |
+
map.setOptions( {
|
1489 |
+
panControl: true
|
1490 |
+
} );
|
1491 |
+
}
|
1492 |
+
}
|
1493 |
+
|
1494 |
+
/**
|
1495 |
+
* Sets the Street View Control
|
1496 |
+
*/
|
1497 |
+
function set_street_view() {
|
1498 |
+
|
1499 |
+
var street_view = $( '#gmb_street_view' ).val();
|
1500 |
+
if ( street_view === 'none' ) {
|
1501 |
+
map.setOptions( {
|
1502 |
+
streetViewControl: false
|
1503 |
+
} );
|
1504 |
+
} else {
|
1505 |
+
map.setOptions( {
|
1506 |
+
streetViewControl: true
|
1507 |
+
} );
|
1508 |
+
}
|
1509 |
+
}
|
1510 |
+
|
1511 |
+
/**
|
1512 |
+
* Sets the Map Type
|
1513 |
+
*
|
1514 |
+
* Changes the Google Map type and resets theme to none
|
1515 |
+
*/
|
1516 |
+
function set_map_type( reset ) {
|
1517 |
+
if ( reset === true ) {
|
1518 |
+
$( '#gmb_theme' ).val( 'none' );
|
1519 |
+
$( '#gmb_theme_json' ).val( 'none' );
|
1520 |
+
}
|
1521 |
+
|
1522 |
+
var map_type = $( '#gmb_type' ).val().toUpperCase();
|
1523 |
+
map.setOptions( {
|
1524 |
+
mapTypeId: google.maps.MapTypeId[map_type],
|
1525 |
+
styles : false
|
1526 |
+
} );
|
1527 |
+
}
|
1528 |
+
|
1529 |
+
/**
|
1530 |
+
* Sets the Map Theme
|
1531 |
+
*
|
1532 |
+
* Uses Snazzy Maps JSON arrow to set the colors for the map
|
1533 |
+
*
|
1534 |
+
*/
|
1535 |
+
function set_map_theme( reset ) {
|
1536 |
+
if ( reset === true ) {
|
1537 |
+
$( '#gmb_type' ).val( 'RoadMap' );
|
1538 |
+
$( '#gmb_theme_json' ).val( 'none' );
|
1539 |
+
}
|
1540 |
+
//AJAX to get JSON data for Snazzy
|
1541 |
+
$.getJSON( gmb_data.snazzy, function ( data ) {
|
1542 |
+
|
1543 |
+
var map_theme_input_val = parseInt( $( '#gmb_theme' ).val() );
|
1544 |
+
|
1545 |
+
if ( map_theme_input_val === 'none' ) {
|
1546 |
+
set_map_type();
|
1547 |
+
}
|
1548 |
+
$.each( data, function ( index ) {
|
1549 |
+
|
1550 |
+
if ( data[index].id === map_theme_input_val ) {
|
1551 |
+
map_theme_input_val = eval( data[index].json );
|
1552 |
+
$( '#gmb_theme_json' ).val( data[index].json );
|
1553 |
+
}
|
1554 |
+
|
1555 |
+
} );
|
1556 |
+
|
1557 |
+
map.setOptions( {
|
1558 |
+
mapTypeId: google.maps.MapTypeId.ROADMAP,
|
1559 |
+
styles : map_theme_input_val
|
1560 |
+
} );
|
1561 |
+
} );
|
1562 |
+
|
1563 |
+
}
|
1564 |
+
|
1565 |
+
|
1566 |
+
/**
|
1567 |
+
* JS for Marker Icon Modal
|
1568 |
+
*/
|
1569 |
+
function set_map_marker_icon() {
|
1570 |
+
|
1571 |
+
//Marker Item Click
|
1572 |
+
$( '.marker-item' ).on( 'click', function () {
|
1573 |
+
|
1574 |
+
var marker_data = $( this ).data( 'marker' );
|
1575 |
+
$( '.marker-item' ).removeClass( 'marker-item-selected' );
|
1576 |
+
$( this ).addClass( 'marker-item-selected' );
|
1577 |
+
|
1578 |
+
//default marker
|
1579 |
+
if ( marker_data == 'default' ) {
|
1580 |
+
|
1581 |
+
$( '.marker-icon-row, .marker-icon-color-wrap, .marker-label-color-wrap' ).slideUp();
|
1582 |
+
$( '.save-marker-icon' ).slideDown();
|
1583 |
+
$( '#TB_window .save-marker-button' ).attr( 'data-marker', '' );
|
1584 |
+
$( '#TB_window .save-marker-button' ).attr( 'data-label', '' );
|
1585 |
+
|
1586 |
+
} else {
|
1587 |
+
//custom markers
|
1588 |
+
$( '.marker-icon-color-wrap, .marker-icon-row' ).slideDown();
|
1589 |
+
$( '#TB_window .save-marker-button' ).attr( 'data-marker', marker_data ); //Set marker data attribute on save btn
|
1590 |
+
}
|
1591 |
+
|
1592 |
+
} );
|
1593 |
+
|
1594 |
+
|
1595 |
+
//Icon Click
|
1596 |
+
$( '.icon' ).on( 'click', function () {
|
1597 |
+
$( '.icon' ).removeClass( 'marker-item-selected' );
|
1598 |
+
$( this ).addClass( 'marker-item-selected' );
|
1599 |
+
$( '.save-marker-icon, .marker-label-color-wrap' ).slideDown(); //slide down save button
|
1600 |
+
$( '#TB_window .save-marker-button' ).attr( 'data-label', $( this ).find( 'span' ).attr( 'class' ) ); //Set marker data attribute on save btn
|
1601 |
+
} );
|
1602 |
+
|
1603 |
+
|
1604 |
+
/**
|
1605 |
+
* Colors
|
1606 |
+
*/
|
1607 |
+
//Setup colorpickers
|
1608 |
+
var color_picker_options = {
|
1609 |
+
// you can declare a default color here, or in the data-default-color attribute on the input
|
1610 |
+
// a callback to fire whenever the color changes to a valid color
|
1611 |
+
change : function ( event, ui ) {
|
1612 |
+
|
1613 |
+
var this_color = ui.color.toString();
|
1614 |
+
|
1615 |
+
//Marker Color
|
1616 |
+
if ( $( this ).hasClass( 'marker-color' ) === true ) {
|
1617 |
+
|
1618 |
+
$( '.save-marker-button' ).attr( 'data-marker-color', this_color );
|
1619 |
+
$( '.marker-svg polygon, .marker-svg path' ).attr( 'fill', this_color );
|
1620 |
+
|
1621 |
+
} else if ( $( this ).hasClass( 'label-color' ) === true ) {
|
1622 |
+
|
1623 |
+
$( '.save-marker-button' ).attr( 'data-label-color', this_color );
|
1624 |
+
$( '.icon-inner span' ).css( 'color', this_color );
|
1625 |
+
|
1626 |
+
}
|
1627 |
+
|
1628 |
+
|
1629 |
+
},
|
1630 |
+
// a callback to fire when the input is emptied or an invalid color
|
1631 |
+
clear : function () {
|
1632 |
+
},
|
1633 |
+
// hide the color picker controls on load
|
1634 |
+
hide : true,
|
1635 |
+
// show a group of common colors beneath the square
|
1636 |
+
// or, supply an array of colors to customize further
|
1637 |
+
palettes: true
|
1638 |
+
};
|
1639 |
+
|
1640 |
+
$( '.color-picker' ).wpColorPicker( color_picker_options );
|
1641 |
+
|
1642 |
+
|
1643 |
+
}
|
1644 |
+
|
1645 |
+
/**
|
1646 |
+
* Refresh Tooltips
|
1647 |
+
*
|
1648 |
+
* Helper function to refresh tooltips when elements added dynamically to DOM
|
1649 |
+
*/
|
1650 |
+
function initialize_tooltips() {
|
1651 |
+
$( '[data-tooltip!=""]' ).qtip( { // Grab all elements with a non-blank data-tooltip attr.
|
1652 |
+
content : {
|
1653 |
+
attr: 'data-tooltip' // Tell qTip2 to look inside this attr for its content
|
1654 |
+
},
|
1655 |
+
hide : {
|
1656 |
+
fixed: true,
|
1657 |
+
delay: 100
|
1658 |
+
},
|
1659 |
+
position: {
|
1660 |
+
my: 'top center',
|
1661 |
+
at: 'bottom center'
|
1662 |
+
},
|
1663 |
+
style : {
|
1664 |
+
classes: 'qtip-tipsy'
|
1665 |
+
},
|
1666 |
+
show : {
|
1667 |
+
when : {
|
1668 |
+
event: 'focus'
|
1669 |
+
},
|
1670 |
+
effect: function () {
|
1671 |
+
$( this ).fadeIn( 200 );
|
1672 |
+
}
|
1673 |
+
}
|
1674 |
+
} );
|
1675 |
+
}
|
1676 |
+
|
1677 |
+
}( jQuery ));
|
admin/assets/js/admin-google-map.min.js
CHANGED
@@ -1 +1 @@
|
|
1 |
-
!function($){"use strict";function drop_marker(a,b){var c=a.lat(),d=a.lng();"undefined"!=typeof e&&e.setVisible(!1),$(".drop-marker").removeClass("active").text("Drop a Marker"),map.setOptions({draggableCursor:null}),google.maps.event.removeListener(b);var e=new Marker({position:a,map:map,icon:gmb_data.plugin_url+"/public/assets/img/default-marker.png",zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1}),f=get_marker_index();$("#gmb_markers_group_"+f+"_title").val("Point "+f),$("#gmb_markers_group_"+f+"_lat").val(c),$("#gmb_markers_group_"+f+"_lng").val(d),get_editable_info_window(f,e),google.maps.event.addListener(e,"click",function(){get_info_window_content(f,e)})}function initialize_map(a){lat_field=$("#gmb_lat_lng-latitude"),lng_field=$("#gmb_lat_lng-longitude");var b=lat_field.val()?lat_field.val():"",c=lng_field.val()?lng_field.val():"";zoom=parseInt($("#gmb_zoom").val()),lat_lng=new google.maps.LatLng(b,c);var d={zoom:zoom,streetViewControl:!1,styles:[{stylers:[{visibility:"simplified"}]},{elementType:"labels",stylers:[{visibility:"off"}]}]};map=new google.maps.Map(a[0],d),places_service=new google.maps.places.PlacesService(map),navigator.geolocation&&"yes"===gmb_data.geolocate_setting&&""==c&&""==b?navigator.geolocation.getCurrentPosition(function(a){initial_location=new google.maps.LatLng(a.coords.latitude,a.coords.longitude),map.setCenter(initial_location),lat_field.val(a.coords.latitude),lng_field.val(a.coords.longitude)}):""!==b&&""!==c?map.setCenter(new google.maps.LatLng(b,c)):(alert("Geolocation service failed."),initial_location=new google.maps.LatLng(gmb_data.default_lat,gmb_data.default_lng),lat_field.val(gmb_data.default_lat),lng_field.val(gmb_data.default_lng),map.setCenter(initial_location)),set_map_type(!1),"none"!==$("#gmb_theme").val()&&set_map_theme(!1),set_street_view(),set_pan_control(),set_draggable(),set_double_click_zoom(),set_mouse_wheel_scroll(),set_map_type_control(),set_map_zoom_control(),"undefined"==typeof autocomplete&&(autocomplete=new google.maps.places.Autocomplete($("#gmb_geocoder")[0]),autocomplete.bindTo("bounds",map),google.maps.event.addListener(autocomplete,"place_changed",function(){return $("#gmb_geocoder").one("blur",function(){$("#gmb_geocoder").val("")}),setTimeout(function(){$("#gmb_geocoder").val("")},10),"undefined"!=typeof tentative_location_marker&&tentative_location_marker.setVisible(!1),place=autocomplete.getPlace(),lat_field.val(place.geometry.location.lat()),lng_field.val(place.geometry.location.lng()),place.geometry?(map.setCenter(place.geometry.location),void add_tentative_marker(map,place.reference)):void alert("Error: Place not found!")})),info_bubble=new google.maps.InfoWindow({maxWidth:315}),google.maps.event.addListenerOnce(map,"idle",function(){handle_map_zoom(map),add_markers(map),"undefined"!=typeof $(".cmb_id_gmb_show_places input:radio").prop("checked")&&"yes"===$(".cmb_id_gmb_show_places input:radio:checked").val()&&perform_places_search()}),google.maps.event.addListener(map,"zoom_changed",function(){handle_map_zoom(map)}),google.maps.event.addListener(map,"dragend",function(){var a=map.getCenter();$(".lat-lng-change-message").slideDown(),$(".lat-lng-update-btn").attr("data-lat",a.lat()),$(".lat-lng-update-btn").attr("data-lng",a.lng())})}function add_tentative_marker(a,b){var c=a.getCenter();tentative_location_marker=new google.maps.Marker({map:a,title:"Map Icons",animation:google.maps.Animation.DROP,position:new google.maps.LatLng(c.lat(),c.lng()),icon:new google.maps.MarkerImage(gmb_data.plugin_url+"/public/assets/img/temp-marker.png"),zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1});var d=google.maps.event.addListener(tentative_location_marker,"mouseover",function(){add_circle(b)}),e=google.maps.event.addListener(tentative_location_marker,"mouseout",function(){hover_circle.setVisible(!1)});google.maps.event.addListener(tentative_location_marker,"click",function(){google.maps.event.removeListener(d),google.maps.event.removeListener(e),hover_circle.setVisible(!0),add_tenative_info_window(b,tentative_location_marker)}),tentative_location_marker.setVisible(!0),a.setZoom(zoom)}function add_tenative_info_window(a,b){var c={key:gmb_data.api_key,reference:a};places_service.getDetails(c,function(a,c){if(c==google.maps.places.PlacesServiceStatus.OK){var d=a.geometry.location.lat(),e=a.geometry.location.lng(),f='<p class="place-title">'+a.name+"</p>";f+=add_place_content_to_info_window(a),f+='<div class="infowindow-toolbar clear"><a href="#" class="add-marker" data-title="'+a.name+'" data-reference="'+a.reference+'" data-lat="'+d+'" data-lng="'+e+'">Add to Map</a></div>',f=set_info_window_wrapper(f),info_bubble.setContent(f),info_bubble.open(map,b),google.maps.event.addListener(info_bubble,"closeclick",function(){hover_circle.setVisible(!1)})}})}function add_place_content_to_info_window(a){var b;return b='<div class="marker-info-wrapper">',b+=a.formatted_address?'<div class="place-address">'+a.formatted_address+"</div>":"",b+=a.formatted_phone_number?'<div class="place-phone">'+a.formatted_phone_number+"</div>":"",b+=a.website?'<div class="place-website"><a href="'+a.website+'" target="_blank" rel="nofollow" title="Click to visit the '+a.name+' website">Website</a></div>':"",a.rating&&(b+='<div class="rating-wrap clear"><p class="numeric-rating">'+a.rating+'</p><div class="star-rating-wrap"><div class="star-rating-size" style="width:'+65*a.rating/5+'px;"></div></div></div>'),b+="</div>"}function get_editable_info_window(index,marker){info_bubble.close(),info_bubble.setContent('<div id="infobubble-content" class="loading"></div>'),info_bubble.open(map,marker);var info_window_data=get_info_window_saved_data(index),info_window_content;info_window_data.title||(info_window_data.title="Point "+index),info_window_content='<input class="edit-place-title" data-field="#gmb_markers_group_'+index+'_title" type="text" value="'+info_window_data.title+'">',info_window_content+='<textarea class="edit-place-description" data-field="#gmb_markers_group_'+index+'_description">'+info_window_data.desc+"</textarea>",info_window_content+='<div class="infowindow-toolbar clear"><ul id="save-toolbar"><li class="info-window-save"><div class="google-btn-blue google-btn google-save-btn" data-tooltip="Save changes" data-index="'+index+'">Save</div></li><li class="info-window-cancel"><div class="google-btn-default google-btn google-cancel-btn" data-tooltip="Cancel edit" data-index="'+index+'">Cancel</div></li></ul><span class="marker-edit-link-wrap" data-index="'+index+'"><a href="#TB_inline?width=600&height=550&inlineId=marker-icon-modal" data-tooltip="Change icon" class="marker-edit-link thickbox"></a></span></div>',info_window_content=set_info_window_wrapper(info_window_content),info_bubble.setContent(info_window_content),initialize_tooltips(),google.maps.event.addDomListener($(".google-save-btn")[0],"click",function(){var a=$(".edit-place-title").data("field"),b=$(".edit-place-title").val(),c=$(".edit-place-description").data("field"),d=$(".edit-place-description").val();$(a).val(b),$(c).val(d),get_info_window_content($(this).data("index"),marker),google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)}),google.maps.event.addDomListener(info_bubble,"closeclick",function(){google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)}),google.maps.event.addDomListener($(".google-cancel-btn")[0],"click",function(){get_info_window_content($(this).data("index"),marker),google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)});var edit_marker_icon_button_click=google.maps.event.addDomListener($(".marker-edit-link-wrap")[0],"click",function(){$(".save-marker-button").attr("data-marker-index",$(this).data("index"))}),save_icon_listener=google.maps.event.addDomListener($(".save-marker-button")[0],"click",function(){var marker_position=marker.getPosition(),marker_icon_data,marker_icon=$(this).data("marker"),marker_icon_color=$(this).data("marker-color"),label_color=$(this).data("label-color"),marker_label_inline_style="color:"+label_color+"; ";"MAP_PIN"===marker_icon?marker_label_inline_style+="font-size: 20px;position: relative; top: -3px;":"SQUARE_PIN"==marker_icon&&(marker_label_inline_style+="font-size: 20px;position: relative; top: 12px;");var marker_label_data='<i class="'+$(this).data("label")+'" style="'+marker_label_inline_style+'"></i>';""==marker_icon?(marker_icon_data=gmb_data.plugin_url+"/public/assets/img/default-marker.png",$("#gmb_markers_group_"+index+"_marker").val(""),marker_label_data=""):(marker_icon_data="{ path : "+marker_icon+', fillColor : "'+marker_icon_color+'", fillOpacity : 1, strokeColor : "", strokeWeight: 0, scale : 1 / 3 }',$("#gmb_markers_group_"+index+"_marker").val(marker_icon_data),marker_icon_data=eval("("+marker_icon_data+")")),marker.setMap(null),$("#gmb_markers_group_"+index+"_label").val(marker_label_data),marker=new Marker({position:marker_position,map:map,zIndex:9,icon:marker_icon_data,label:marker_label_data}),google.maps.event.addListener(marker,"click",function(){get_info_window_content(index,marker)}),$(".icon, .marker-item").removeClass("marker-item-selected"),$(".marker-icon-row, .save-marker-icon, .marker-icon-color-wrap, .marker-label-color-wrap").hide(),$(this).removeData("marker"),$(this).removeData("marker-color"),$(this).removeData("label"),$(this).removeData("label-color"),tb_remove(),google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)})}function set_info_window_wrapper(a){var b='<div id="infobubble-content" class="main-place-infobubble-content">';return b+=a,b+="</div>"}function add_circle(a){hover_circle=new google.maps.Marker({position:tentative_location_marker.getPosition(),zIndex:google.maps.Marker.MAX_ZINDEX-1,optimized:!1,icon:{path:google.maps.SymbolPath.CIRCLE,scale:20,strokeWeight:3,strokeOpacity:.9,strokeColor:"#FFF",fillOpacity:.3,fillColor:"#FFF"},map:map}),google.maps.event.addListener(hover_circle,"click",function(){add_tenative_info_window(a,tentative_location_marker)}),google.maps.event.addListener(tentative_location_marker,"click",function(){hover_circle.setVisible(!0)})}function add_markers(map){clear_main_markers(),$("#gmb_markers_group_repeat .repeatable-grouping").each(function(index){var marker_icon=gmb_data.plugin_url+"/public/assets/img/default-marker.png",marker_label="",custom_marker_icon=$("#gmb_markers_group_"+index+"_marker").val();custom_marker_icon.length>0&&(marker_icon=eval("("+custom_marker_icon+")"));var custom_label=$("#gmb_markers_group_"+index+"_label").val();custom_label.length>0&&(marker_label=custom_label);var location_marker=new Marker({map:map,zIndex:9,icon:marker_icon,label:marker_label}),marker_lat=$("#gmb_markers_group_"+index+"_lat").val(),marker_lng=$("#gmb_markers_group_"+index+"_lng").val();location_marker.setPosition(new google.maps.LatLng(marker_lat,marker_lng)),location_marker.setVisible(!0),google.maps.event.addListener(location_marker,"click",function(){get_info_window_content(index,location_marker)})})}function get_info_window_saved_data(a){var b=new Object;return b.title=$("#gmb_markers_group_"+a+"_title").val(),b.desc=$("#gmb_markers_group_"+a+"_description").val(),b.reference=$("#gmb_markers_group_"+a+"_reference").val(),b.lat=$("#gmb_markers_group_"+a+"_lat").val(),b.lng=$("#gmb_markers_group_"+a+"_lng").val(),b}function get_info_window_content(a,b){info_bubble.close(),info_bubble.setContent('<div id="infobubble-content" class="loading"></div>'),info_bubble.open(map,b);var c,d=get_info_window_saved_data(a);if(d.reference){var e={reference:d.reference};places_service.getDetails(e,function(e,f){f==google.maps.places.PlacesServiceStatus.OK&&(c='<p class="place-title">'+d.title+"</p>",c+='<div class="place-description">'+d.desc+"</div>",c+=add_place_content_to_info_window(e),c+='<div class="infowindow-toolbar"><ul id="edit-toolbar"><li class="edit-info" data-index="'+a+'" data-tooltip="Edit Marker"></li><li class="trash-marker" data-index="'+a+'" data-tooltip="Delete Marker"></li></ul></div>',add_edit_events(c,b))})}else c='<p class="place-title">'+d.title+"</p>",c+='<div class="place-description">'+d.desc+"</div>",c+='<div class="infowindow-toolbar"><ul id="edit-toolbar"><li class="edit-info" data-index="'+a+'" data-tooltip="Edit Marker"></li><li class="trash-marker" data-index="'+a+'" data-tooltip="Delete Marker"></li></ul></div>',add_edit_events(c,b)}function add_edit_events(a,b){a=set_info_window_wrapper(a),info_bubble.setContent(a),initialize_tooltips(),google.maps.event.addDomListener($(".edit-info")[0],"click",function(){get_editable_info_window($(this).data("index"),b)}),google.maps.event.addDomListener($(".trash-marker")[0],"click",function(){var a=$(this).data("index");0===a&&$('tr[data-iterator="'+a+'"] ').find("input,textarea").val(""),$('tr[data-iterator="'+a+'"] .remove-group-row').trigger("click"),info_bubble.close(),b.setVisible(!1)})}function get_marker_index(){var a=parseInt($("#gmb_markers_group_repeat tr.repeatable-grouping").last().attr("data-iterator")),b=$('tr[data-iterator="0"] ').find("input,textarea").val();return b&&0===a?($(".add-group-row.button").trigger("click"),a=1):0!==a&&($(".add-group-row.button").trigger("click"),a=parseInt($("#gmb_markers_group_repeat tr.repeatable-grouping").last().attr("data-iterator"))),a}function get_place_info_window_content(a,b){info_bubble.setContent('<div id="infobubble-content" class="loading"></div>'),info_bubble.open(map,b);var c={reference:a.reference};places_service.getDetails(c,function(a,b){if(b==google.maps.places.PlacesServiceStatus.OK){var c;c='<p class="place-title">'+a.name+"</p>",c+=add_place_content_to_info_window(a),c=set_info_window_wrapper(c),info_bubble.setContent(c),initialize_tooltips()}})}function get_places_type_array(){var a=[];return $('.cmb_id_gmb_places_search_multicheckbox input[type="checkbox"]').each(function(){$(this).is(":checked")&&a.push($(this).val())}),a}function perform_places_search(){$(".places-loading").fadeIn(),$(".warning-message").hide().empty();var a=get_places_type_array();if(clear_search_markers(),a.length>0){var b={location:return_lat_lng(),types:a,radius:parseInt($("#gmb_search_radius").val())};places_service.nearbySearch(b,places_search_callback)}else show_warning_message("<strong>Notice: No Place Types are selected</strong><br/> Please select the types of places you would like to display on this map using the Place Type field checkboxes found below.")}function show_warning_message(a){$(".wpgp-loading").fadeOut(),$(".warning-message").empty().append("<p>"+a+"</p>").fadeIn()}function return_lat_lng(){var a=map.getCenter(),b=new google.maps.LatLng(a.lat(),a.lng());return b}function handle_map_zoom(a){var b=a.getZoom();$("#gmb_zoom").val(b),$("#gmb_zoom").on("change",function(){a.setZoom(parseInt($(this).val()))})}function lat_lng_field_change(a){var b=new google.maps.LatLng($(lat_field).val(),$(lng_field).val());a.panTo(b)}function places_search_callback(a,b,c){var d,e=0;if(b==google.maps.places.PlacesServiceStatus.OK){for(e=0;d=a[e];e++)create_search_result_marker(a[e]);c.hasNextPage?c.nextPage():$(".places-loading").fadeOut()}}function create_search_result_marker(a){var b=new Marker({map:map,zIndex:0,optimized:!1});b.setIcon({url:a.icon,size:new google.maps.Size(24,24),origin:new google.maps.Point(0,0),anchor:new google.maps.Point(17,34),scaledSize:new google.maps.Size(24,24)}),b.setPosition(a.geometry.location),b.setVisible(!0),google.maps.event.addListener(b,"click",function(){get_place_info_window_content(a,b)}),search_markers.push(b)}function clear_main_markers(){for(var a=0;a<location_marker_array.length;a++)location_marker_array[a].setMap(null);for(location_marker_array.length=0,a=0;a<info_bubble_array.length;a++)info_bubble_array[a].close(),google.maps.event.trigger(info_bubble_array[a],"closeclick");info_bubble_array.length=0}function clear_search_markers(){for(var a=0;a<search_markers.length;a++)search_markers[a].setMap(null);search_markers=[]}function geocode_position(a){var b={location:a,radius:10};places_service.nearbySearch(b,function(a,b){if(b==google.maps.places.PlacesServiceStatus.OK){var c="";if(info_bubble.close(),a.length>1){c='<div id="infobubble-content"><p>Hmm, it looks like there are multiple places in this area. Please confirm which place you would like this marker to display:</p>';for(var d=0;d<a.length;d++)c+='<a class="marker-confirm-place" data-reference="'+a[d].reference+'" data-name-address="'+a[d].name+", "+a[d].vicinity+'">'+a[d].name+"</a>";c+="</div>",google.maps.event.addDomListener(info_bubble,"domready",function(){$(".marker-confirm-place").on("click",function(a){a.preventDefault(),$("#gmb_geocoder").val($(this).data("name-address")),$("#gmb_reference").val($(this).data("reference")),info_bubble.close(),get_info_window_content($(this).data("reference"))})})}info_bubble.setContent(c),info_bubble.open(map,location_marker)}})}function scroll_to_field(a){$("html, body").animate({scrollTop:parseInt($(a).offset().top)},600)}function marker_drag_end(a){var b=a.getPosition();geocode_position(b),$(lat_field).val(b.lat()),$(lng_field).val(b.lng()),map.panTo(b)}function calc_radius(a,b){radius_marker=new Marker({position:a.getCenter(),map:a,icon:{path:MAP_PIN,fillColor:"#0E77E9",fillOpacity:0,strokeColor:"",strokeWeight:0,scale:.25},label:'<i class="map-icon-crosshairs radius-label"></i>',zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1}),radius_circle=new google.maps.Circle({map:a,fillColor:"#BBD8E9",fillOpacity:.3,radius:b,strokeColor:"#BBD8E9",strokeOpacity:.9,strokeWeight:2}),radius_circle.bindTo("center",radius_marker,"position")}function toggle_metabox_fields(){var a=$(".cmb_id_gmb_show_places input:radio");a.prop("checked")===!0&&($(".cmb_id_gmb_search_radius").show(),$(".cmb_id_gmb_places_search_multicheckbox").show()),a.prop("checked")===!1&&$("#gmb_show_places2").prop("checked",!0),a.on("change",function(){$(".cmb_id_gmb_search_radius").toggle(),$(".cmb_id_gmb_places_search_multicheckbox").toggle(),"no"===$(this).val()?clear_search_markers():perform_places_search()})}function set_map_size(){var a=$("#gmb_width_height-width").val(),b=$('input[name="gmb_width_height[map_width_unit]"]:checked').val(),c=$("#gmb_width_height-height").val();$("#map").css({width:a+b,height:c})}function set_map_zoom_control(){var a=$("#gmb_zoom_control").val().toUpperCase();map.setOptions("NONE"==a?{zoomControl:!1}:{zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle[a]}})}function set_map_type_control(){var a=$("#gmb_map_type_control").val().toUpperCase();map.setOptions("NONE"==a?{mapTypeControl:!1}:{mapTypeControl:!0,mapTypeControlOptions:{style:google.maps.MapTypeControlStyle[a]}})}function set_mouse_wheel_scroll(){var a=$("#gmb_wheel_zoom").val();map.setOptions("none"===a?{scrollwheel:!1}:{scrollwheel:!0})}function set_double_click_zoom(){var a=$("#gmb_double_click").val();map.setOptions("none"===a?{disableDoubleClickZoom:!0}:{disableDoubleClickZoom:!1})}function set_draggable(){var a=$("#gmb_draggable").val();map.setOptions("none"==a?{draggable:!1}:{draggable:!0})}function set_pan_control(){var a=$("#gmb_pan").val();map.setOptions("none"===a?{panControl:!1}:{panControl:!0})}function set_street_view(){var a=$("#gmb_street_view").val();map.setOptions("none"===a?{streetViewControl:!1}:{streetViewControl:!0})}function set_map_type(a){a===!0&&($("#gmb_theme").val("none"),$("#gmb_theme_json").val("none"));var b=$("#gmb_type").val().toUpperCase();map.setOptions({mapTypeId:google.maps.MapTypeId[b],styles:!1})}function set_map_theme(reset){reset===!0&&($("#gmb_type").val("RoadMap"),$("#gmb_theme_json").val("none"));var map_theme_input_val=parseInt($("#gmb_theme").val());"none"===map_theme_input_val&&set_map_type(),$.each(snazzy_json,function(index){snazzy_json[index].id===map_theme_input_val&&(map_theme_input_val=eval(snazzy_json[index].json),$("#gmb_theme_json").val(snazzy_json[index].json))}),map.setOptions({mapTypeId:google.maps.MapTypeId.ROADMAP,styles:map_theme_input_val})}function set_map_marker_icon(){$(".marker-item").on("click",function(){var a=$(this).data("marker");$(".marker-item").removeClass("marker-item-selected"),$(this).addClass("marker-item-selected"),"default"==a?($(".marker-icon-row, .marker-icon-color-wrap, .marker-label-color-wrap").slideUp(),$(".save-marker-icon").slideDown(),$("#TB_window .save-marker-button").attr("data-marker",""),$("#TB_window .save-marker-button").attr("data-label","")):($(".marker-icon-color-wrap, .marker-icon-row").slideDown(),$("#TB_window .save-marker-button").attr("data-marker",a))}),$(".icon").on("click",function(){$(".icon").removeClass("marker-item-selected"),$(this).addClass("marker-item-selected"),$(".save-marker-icon, .marker-label-color-wrap").slideDown(),$("#TB_window .save-marker-button").attr("data-label",$(this).find("span").attr("class"))});var a={change:function(a,b){var c=b.color.toString();$(this).hasClass("marker-color")===!0?($(".save-marker-button").attr("data-marker-color",c),$(".marker-svg polygon, .marker-svg path").attr("fill",c)):$(this).hasClass("label-color")===!0&&($(".save-marker-button").attr("data-label-color",c),$(".icon-inner span").css("color",c))},clear:function(){},hide:!0,palettes:!0};$(".color-picker").wpColorPicker(a)}function initialize_tooltips(){$('[data-tooltip!=""]').qtip({content:{attr:"data-tooltip"},hide:{fixed:!0,delay:100},position:{my:"top center",at:"bottom center"},style:{classes:"qtip-tipsy"},show:{when:{event:"focus"},effect:function(){$(this).fadeIn(200)}}})}$(window).load(function(){toggle_metabox_fields(),initialize_tooltips(),initialize_map($("#map")),$("#gmb_lat_lng-latitude").on("change",function(){lat_lng_field_change(map)}),$("#gmb_lat_lng-longitude").on("change",function(){lat_lng_field_change(map)}),$(".drop-marker").on("click",function(a){if(a.preventDefault(),$(this).hasClass("active"))$(this).text("Drop a Marker").removeClass("active"),map.setOptions({draggableCursor:null});else{$(this).text("Click on the Map").addClass("active"),map.setOptions({draggableCursor:"crosshair"});var b=google.maps.event.addListener(map,"click",function(a){drop_marker(a.latLng,b)})}});var a;$("#gmb_search_radius").on("focus",function(){a=$(this).val(),calc_radius(map,parseInt($(this).val()))}).focusout(function(){a!==$(this).val()&&perform_places_search(),radius_circle.setMap(null),radius_marker.setMap(null)}),$('[name^="gmb_places_search_multicheckbox"]').on("change",function(){0===$(".places-change-message").length&&($(".cmb_id_gmb_places_search_multicheckbox ul").prepend('<div class="wpgp-message places-change-message clear"><p>Place selections have changed.</p><a href="#" class="button update-places-map">Update Map</a></div>'),$(".places-change-message").slideDown())}),$(document).on("click",".update-places-map",function(a){a.preventDefault(),scroll_to_field("#google_maps_preview_metabox"),perform_places_search(),$(this).parent().fadeOut(function(){$(this).remove()})}),$(".lat-lng-update-btn").on("click",function(a){a.preventDefault(),$(".lat-lng-change-message").slideUp(),$("#gmb_lat_lng-latitude").val($(this).attr("data-lat")),$("#gmb_lat_lng-longitude").val($(this).attr("data-lng"))}),$(document).on("click",".add-marker",function(a){a.preventDefault(),hover_circle.setVisible(!1);var b=new google.maps.Marker({position:tentative_location_marker.getPosition(),map:map,icon:gmb_data.plugin_url+"/public/assets/img/default-marker.png",zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1});tentative_location_marker.setVisible(!1);var c=get_marker_index(),d=$(this).data("reference");$("#gmb_markers_group_"+c+"_title").val($(this).data("title")),$("#gmb_markers_group_"+c+"_lat").val($(this).data("lat")),$("#gmb_markers_group_"+c+"_lng").val($(this).data("lng")),$("#gmb_markers_group_"+c+"_reference").val(d),get_editable_info_window(c,b),google.maps.event.addListener(b,"click",function(){get_info_window_content(c,b)})}),set_map_marker_icon(),$("#gmb_type").change(function(){set_map_type(!0)}),$("#gmb_theme").change(function(){set_map_theme(!0)}),$("#gmb_street_view").change(function(){set_street_view()}),$("#gmb_pan").change(function(){set_pan_control()}),$("#gmb_draggable").change(function(){set_draggable()}),$("#gmb_double_click").change(function(){set_double_click_zoom()}),$("#gmb_wheel_zoom").change(function(){set_mouse_wheel_scroll()}),$("#gmb_map_type_control").change(function(){set_map_type_control()}),$("#gmb_zoom_control").change(function(){set_map_zoom_control()}),$("#gmb_width_height-width, #gmb_width_height-height").keyup(function(){delay(function(){set_map_size()},500)}),$('input[name="gmb_width_height[map_width_unit]"]').change(function(){set_map_size()})});var map,places_service,lat_lng,zoom,lat_field,lng_field,radius_circle,radius_marker,place,autocomplete,info_bubble,info_bubble_array=[],tentative_location_marker,location_marker,location_marker_array=[],search_markers=[],hover_circle,initial_location,snazzy_json=$.parseJSON(eval(gmb_data.snazzy)),delay=function(){var a=0;return function(b,c){clearTimeout(a),a=setTimeout(b,c)}}()}(jQuery);
|
1 |
+
!function($){"use strict";function drop_marker(a,b){var c=a.lat(),d=a.lng();"undefined"!=typeof e&&e.setVisible(!1),$(".drop-marker").removeClass("active").text("Drop a Marker"),map.setOptions({draggableCursor:null}),google.maps.event.removeListener(b);var e=new Marker({position:a,map:map,icon:gmb_data.plugin_url+"/public/assets/img/default-marker.png",zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1}),f=get_marker_index();$("#gmb_markers_group_"+f+"_title").val("Point "+f),$("#gmb_markers_group_"+f+"_lat").val(c),$("#gmb_markers_group_"+f+"_lng").val(d),get_editable_info_window(f,e),google.maps.event.addListener(e,"click",function(){get_info_window_content(f,e)})}function initialize_map(a){lat_field=$("#gmb_lat_lng-latitude"),lng_field=$("#gmb_lat_lng-longitude");var b=lat_field.val()?lat_field.val():"",c=lng_field.val()?lng_field.val():"";zoom=parseInt($("#gmb_zoom").val()),lat_lng=new google.maps.LatLng(b,c);var d={zoom:zoom,streetViewControl:!1,styles:[{stylers:[{visibility:"simplified"}]},{elementType:"labels",stylers:[{visibility:"off"}]}]};map=new google.maps.Map(a[0],d),places_service=new google.maps.places.PlacesService(map),navigator.geolocation&&"yes"===gmb_data.geolocate_setting&&""==c&&""==b?navigator.geolocation.getCurrentPosition(function(a){initial_location=new google.maps.LatLng(a.coords.latitude,a.coords.longitude),map.setCenter(initial_location),lat_field.val(a.coords.latitude),lng_field.val(a.coords.longitude)}):""!==b&&""!==c?map.setCenter(new google.maps.LatLng(b,c)):(alert("Geolocation service failed."),initial_location=new google.maps.LatLng(gmb_data.default_lat,gmb_data.default_lng),lat_field.val(gmb_data.default_lat),lng_field.val(gmb_data.default_lng),map.setCenter(initial_location)),set_map_type(!1),"none"!==$("#gmb_theme").val()&&set_map_theme(!1),set_street_view(),set_pan_control(),set_draggable(),set_double_click_zoom(),set_mouse_wheel_scroll(),set_map_type_control(),set_map_zoom_control(),"undefined"==typeof autocomplete&&(autocomplete=new google.maps.places.Autocomplete($("#gmb_geocoder")[0]),autocomplete.bindTo("bounds",map),google.maps.event.addListener(autocomplete,"place_changed",function(){return $("#gmb_geocoder").one("blur",function(){$("#gmb_geocoder").val("")}),setTimeout(function(){$("#gmb_geocoder").val("")},10),"undefined"!=typeof tentative_location_marker&&tentative_location_marker.setVisible(!1),place=autocomplete.getPlace(),lat_field.val(place.geometry.location.lat()),lng_field.val(place.geometry.location.lng()),place.geometry?(map.setCenter(place.geometry.location),void add_tentative_marker(map,place.reference)):void alert("Error: Place not found!")})),info_bubble=new google.maps.InfoWindow({maxWidth:315}),google.maps.event.addListenerOnce(map,"idle",function(){handle_map_zoom(map),add_markers(map),"undefined"!=typeof $(".cmb_id_gmb_show_places input:radio").prop("checked")&&"yes"===$(".cmb_id_gmb_show_places input:radio:checked").val()&&perform_places_search()}),google.maps.event.addListener(map,"zoom_changed",function(){handle_map_zoom(map)}),google.maps.event.addListener(map,"dragend",function(){var a=map.getCenter();$(".lat-lng-change-message").slideDown(),$(".lat-lng-update-btn").attr("data-lat",a.lat()),$(".lat-lng-update-btn").attr("data-lng",a.lng())})}function add_tentative_marker(a,b){var c=a.getCenter();tentative_location_marker=new google.maps.Marker({map:a,title:"Map Icons",animation:google.maps.Animation.DROP,position:new google.maps.LatLng(c.lat(),c.lng()),icon:new google.maps.MarkerImage(gmb_data.plugin_url+"/public/assets/img/temp-marker.png"),zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1});var d=google.maps.event.addListener(tentative_location_marker,"mouseover",function(){add_circle(b)}),e=google.maps.event.addListener(tentative_location_marker,"mouseout",function(){hover_circle.setVisible(!1)});google.maps.event.addListener(tentative_location_marker,"click",function(){google.maps.event.removeListener(d),google.maps.event.removeListener(e),hover_circle.setVisible(!0),add_tenative_info_window(b,tentative_location_marker)}),tentative_location_marker.setVisible(!0),a.setZoom(zoom)}function add_tenative_info_window(a,b){var c={key:gmb_data.api_key,reference:a};places_service.getDetails(c,function(a,c){if(c==google.maps.places.PlacesServiceStatus.OK){var d=a.geometry.location.lat(),e=a.geometry.location.lng(),f='<p class="place-title">'+a.name+"</p>";f+=add_place_content_to_info_window(a),f+='<div class="infowindow-toolbar clear"><a href="#" class="add-marker" data-title="'+a.name+'" data-reference="'+a.reference+'" data-lat="'+d+'" data-lng="'+e+'">Add to Map</a></div>',f=set_info_window_wrapper(f),info_bubble.setContent(f),info_bubble.open(map,b),google.maps.event.addListener(info_bubble,"closeclick",function(){hover_circle.setVisible(!1)})}})}function add_place_content_to_info_window(a){var b;return b='<div class="marker-info-wrapper">',b+=a.formatted_address?'<div class="place-address">'+a.formatted_address+"</div>":"",b+=a.formatted_phone_number?'<div class="place-phone">'+a.formatted_phone_number+"</div>":"",b+=a.website?'<div class="place-website"><a href="'+a.website+'" target="_blank" rel="nofollow" title="Click to visit the '+a.name+' website">Website</a></div>':"",a.rating&&(b+='<div class="rating-wrap clear"><p class="numeric-rating">'+a.rating+'</p><div class="star-rating-wrap"><div class="star-rating-size" style="width:'+65*a.rating/5+'px;"></div></div></div>'),b+="</div>"}function get_editable_info_window(index,marker){info_bubble.close(),info_bubble.setContent('<div id="infobubble-content" class="loading"></div>'),info_bubble.open(map,marker);var info_window_data=get_info_window_saved_data(index),info_window_content;info_window_data.title||(info_window_data.title="Point "+index),info_window_content='<input class="edit-place-title" data-field="#gmb_markers_group_'+index+'_title" type="text" value="'+info_window_data.title+'">',info_window_content+='<textarea class="edit-place-description" data-field="#gmb_markers_group_'+index+'_description">'+info_window_data.desc+"</textarea>",info_window_content+='<div class="infowindow-toolbar clear"><ul id="save-toolbar"><li class="info-window-save"><div class="google-btn-blue google-btn google-save-btn" data-tooltip="Save changes" data-index="'+index+'">Save</div></li><li class="info-window-cancel"><div class="google-btn-default google-btn google-cancel-btn" data-tooltip="Cancel edit" data-index="'+index+'">Cancel</div></li></ul><span class="marker-edit-link-wrap" data-index="'+index+'"><a href="#TB_inline?width=600&height=550&inlineId=marker-icon-modal" data-tooltip="Change icon" class="marker-edit-link thickbox"></a></span></div>',info_window_content=set_info_window_wrapper(info_window_content),info_bubble.setContent(info_window_content),initialize_tooltips(),google.maps.event.addDomListener($(".google-save-btn")[0],"click",function(){var a=$(".edit-place-title").data("field"),b=$(".edit-place-title").val(),c=$(".edit-place-description").data("field"),d=$(".edit-place-description").val();$(a).val(b),$(c).val(d),get_info_window_content($(this).data("index"),marker),google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)}),google.maps.event.addDomListener(info_bubble,"closeclick",function(){google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)}),google.maps.event.addDomListener($(".google-cancel-btn")[0],"click",function(){get_info_window_content($(this).data("index"),marker),google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)});var edit_marker_icon_button_click=google.maps.event.addDomListener($(".marker-edit-link-wrap")[0],"click",function(){$(".save-marker-button").attr("data-marker-index",$(this).data("index"))}),save_icon_listener=google.maps.event.addDomListener($(".save-marker-button")[0],"click",function(){var marker_position=marker.getPosition(),marker_icon_data,marker_icon=$(this).data("marker"),marker_icon_color=$(this).data("marker-color"),label_color=$(this).data("label-color"),marker_label_inline_style="color:"+label_color+"; ";"MAP_PIN"===marker_icon?marker_label_inline_style+="font-size: 20px;position: relative; top: -3px;":"SQUARE_PIN"==marker_icon&&(marker_label_inline_style+="font-size: 20px;position: relative; top: 12px;");var marker_label_data='<i class="'+$(this).data("label")+'" style="'+marker_label_inline_style+'"></i>';""==marker_icon?(marker_icon_data=gmb_data.plugin_url+"/public/assets/img/default-marker.png",$("#gmb_markers_group_"+index+"_marker").val(""),marker_label_data=""):(marker_icon_data="{ path : "+marker_icon+', fillColor : "'+marker_icon_color+'", fillOpacity : 1, strokeColor : "", strokeWeight: 0, scale : 1 / 3 }',$("#gmb_markers_group_"+index+"_marker").val(marker_icon_data),marker_icon_data=eval("("+marker_icon_data+")")),marker.setMap(null),$("#gmb_markers_group_"+index+"_label").val(marker_label_data),marker=new Marker({position:marker_position,map:map,zIndex:9,icon:marker_icon_data,label:marker_label_data}),google.maps.event.addListener(marker,"click",function(){get_info_window_content(index,marker)}),$(".icon, .marker-item").removeClass("marker-item-selected"),$(".marker-icon-row, .save-marker-icon, .marker-icon-color-wrap, .marker-label-color-wrap").hide(),$(this).removeData("marker"),$(this).removeData("marker-color"),$(this).removeData("label"),$(this).removeData("label-color"),tb_remove(),google.maps.event.removeListener(save_icon_listener),google.maps.event.removeListener(edit_marker_icon_button_click)})}function set_info_window_wrapper(a){var b='<div id="infobubble-content" class="main-place-infobubble-content">';return b+=a,b+="</div>"}function add_circle(a){hover_circle=new google.maps.Marker({position:tentative_location_marker.getPosition(),zIndex:google.maps.Marker.MAX_ZINDEX-1,optimized:!1,icon:{path:google.maps.SymbolPath.CIRCLE,scale:20,strokeWeight:3,strokeOpacity:.9,strokeColor:"#FFF",fillOpacity:.3,fillColor:"#FFF"},map:map}),google.maps.event.addListener(hover_circle,"click",function(){add_tenative_info_window(a,tentative_location_marker)}),google.maps.event.addListener(tentative_location_marker,"click",function(){hover_circle.setVisible(!0)})}function add_markers(map){clear_main_markers(),$("#gmb_markers_group_repeat .repeatable-grouping").each(function(index){var marker_icon=gmb_data.plugin_url+"/public/assets/img/default-marker.png",marker_label="",custom_marker_icon=$("#gmb_markers_group_"+index+"_marker").val();custom_marker_icon.length>0&&(marker_icon=eval("("+custom_marker_icon+")"));var custom_label=$("#gmb_markers_group_"+index+"_label").val();custom_label.length>0&&(marker_label=custom_label);var location_marker=new Marker({map:map,zIndex:9,icon:marker_icon,label:marker_label}),marker_lat=$("#gmb_markers_group_"+index+"_lat").val(),marker_lng=$("#gmb_markers_group_"+index+"_lng").val();location_marker.setPosition(new google.maps.LatLng(marker_lat,marker_lng)),location_marker.setVisible(!0),google.maps.event.addListener(location_marker,"click",function(){get_info_window_content(index,location_marker)})})}function get_info_window_saved_data(a){var b=new Object;return b.title=$("#gmb_markers_group_"+a+"_title").val(),b.desc=$("#gmb_markers_group_"+a+"_description").val(),b.reference=$("#gmb_markers_group_"+a+"_reference").val(),b.lat=$("#gmb_markers_group_"+a+"_lat").val(),b.lng=$("#gmb_markers_group_"+a+"_lng").val(),b}function get_info_window_content(a,b){info_bubble.close(),info_bubble.setContent('<div id="infobubble-content" class="loading"></div>'),info_bubble.open(map,b);var c,d=get_info_window_saved_data(a);if(d.reference){var e={reference:d.reference};places_service.getDetails(e,function(e,f){f==google.maps.places.PlacesServiceStatus.OK&&(c='<p class="place-title">'+d.title+"</p>",c+='<div class="place-description">'+d.desc+"</div>",c+=add_place_content_to_info_window(e),c+='<div class="infowindow-toolbar"><ul id="edit-toolbar"><li class="edit-info" data-index="'+a+'" data-tooltip="Edit Marker"></li><li class="trash-marker" data-index="'+a+'" data-tooltip="Delete Marker"></li></ul></div>',add_edit_events(c,b))})}else c='<p class="place-title">'+d.title+"</p>",c+='<div class="place-description">'+d.desc+"</div>",c+='<div class="infowindow-toolbar"><ul id="edit-toolbar"><li class="edit-info" data-index="'+a+'" data-tooltip="Edit Marker"></li><li class="trash-marker" data-index="'+a+'" data-tooltip="Delete Marker"></li></ul></div>',add_edit_events(c,b)}function add_edit_events(a,b){a=set_info_window_wrapper(a),info_bubble.setContent(a),initialize_tooltips(),google.maps.event.addDomListener($(".edit-info")[0],"click",function(){get_editable_info_window($(this).data("index"),b)}),google.maps.event.addDomListener($(".trash-marker")[0],"click",function(){var a=$(this).data("index");0===a&&$('tr[data-iterator="'+a+'"] ').find("input,textarea").val(""),$('tr[data-iterator="'+a+'"] .remove-group-row').trigger("click"),info_bubble.close(),b.setVisible(!1)})}function get_marker_index(){var a=parseInt($("#gmb_markers_group_repeat tr.repeatable-grouping").last().attr("data-iterator")),b=$('tr[data-iterator="0"] ').find("input,textarea").val();return b&&0===a?($(".add-group-row.button").trigger("click"),a=1):0!==a&&($(".add-group-row.button").trigger("click"),a=parseInt($("#gmb_markers_group_repeat tr.repeatable-grouping").last().attr("data-iterator"))),a}function get_place_info_window_content(a,b){info_bubble.setContent('<div id="infobubble-content" class="loading"></div>'),info_bubble.open(map,b);var c={reference:a.reference};places_service.getDetails(c,function(a,b){if(b==google.maps.places.PlacesServiceStatus.OK){var c;c='<p class="place-title">'+a.name+"</p>",c+=add_place_content_to_info_window(a),c=set_info_window_wrapper(c),info_bubble.setContent(c),initialize_tooltips()}})}function get_places_type_array(){var a=[];return $('.cmb_id_gmb_places_search_multicheckbox input[type="checkbox"]').each(function(){$(this).is(":checked")&&a.push($(this).val())}),a}function perform_places_search(){$(".places-loading").fadeIn(),$(".warning-message").hide().empty();var a=get_places_type_array();if(clear_search_markers(),a.length>0){var b={location:return_lat_lng(),types:a,radius:parseInt($("#gmb_search_radius").val())};places_service.nearbySearch(b,places_search_callback)}else show_warning_message("<strong>Notice: No Place Types are selected</strong><br/> Please select the types of places you would like to display on this map using the Place Type field checkboxes found below.")}function show_warning_message(a){$(".wpgp-loading").fadeOut(),$(".warning-message").empty().append("<p>"+a+"</p>").fadeIn()}function return_lat_lng(){var a=map.getCenter(),b=new google.maps.LatLng(a.lat(),a.lng());return b}function handle_map_zoom(a){var b=a.getZoom();$("#gmb_zoom").val(b),$("#gmb_zoom").on("change",function(){a.setZoom(parseInt($(this).val()))})}function lat_lng_field_change(a){var b=new google.maps.LatLng($(lat_field).val(),$(lng_field).val());a.panTo(b)}function places_search_callback(a,b,c){var d,e=0;if(b==google.maps.places.PlacesServiceStatus.OK){for(e=0;d=a[e];e++)create_search_result_marker(a[e]);c.hasNextPage?c.nextPage():$(".places-loading").fadeOut()}}function create_search_result_marker(a){var b=new Marker({map:map,zIndex:0,optimized:!1});b.setIcon({url:a.icon,size:new google.maps.Size(24,24),origin:new google.maps.Point(0,0),anchor:new google.maps.Point(17,34),scaledSize:new google.maps.Size(24,24)}),b.setPosition(a.geometry.location),b.setVisible(!0),google.maps.event.addListener(b,"click",function(){get_place_info_window_content(a,b)}),search_markers.push(b)}function clear_main_markers(){for(var a=0;a<location_marker_array.length;a++)location_marker_array[a].setMap(null);for(location_marker_array.length=0,a=0;a<info_bubble_array.length;a++)info_bubble_array[a].close(),google.maps.event.trigger(info_bubble_array[a],"closeclick");info_bubble_array.length=0}function clear_search_markers(){for(var a=0;a<search_markers.length;a++)search_markers[a].setMap(null);search_markers=[]}function geocode_position(a){var b={location:a,radius:10};places_service.nearbySearch(b,function(a,b){if(b==google.maps.places.PlacesServiceStatus.OK){var c="";if(info_bubble.close(),a.length>1){c='<div id="infobubble-content"><p>Hmm, it looks like there are multiple places in this area. Please confirm which place you would like this marker to display:</p>';for(var d=0;d<a.length;d++)c+='<a class="marker-confirm-place" data-reference="'+a[d].reference+'" data-name-address="'+a[d].name+", "+a[d].vicinity+'">'+a[d].name+"</a>";c+="</div>",google.maps.event.addDomListener(info_bubble,"domready",function(){$(".marker-confirm-place").on("click",function(a){a.preventDefault(),$("#gmb_geocoder").val($(this).data("name-address")),$("#gmb_reference").val($(this).data("reference")),info_bubble.close(),get_info_window_content($(this).data("reference"))})})}info_bubble.setContent(c),info_bubble.open(map,location_marker)}})}function scroll_to_field(a){$("html, body").animate({scrollTop:parseInt($(a).offset().top)},600)}function marker_drag_end(a){var b=a.getPosition();geocode_position(b),$(lat_field).val(b.lat()),$(lng_field).val(b.lng()),map.panTo(b)}function calc_radius(a,b){radius_marker=new Marker({position:a.getCenter(),map:a,icon:{path:MAP_PIN,fillColor:"#0E77E9",fillOpacity:0,strokeColor:"",strokeWeight:0,scale:.25},label:'<i class="map-icon-crosshairs radius-label"></i>',zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1}),radius_circle=new google.maps.Circle({map:a,fillColor:"#BBD8E9",fillOpacity:.3,radius:b,strokeColor:"#BBD8E9",strokeOpacity:.9,strokeWeight:2}),radius_circle.bindTo("center",radius_marker,"position")}function toggle_metabox_fields(){var a=$(".cmb_id_gmb_show_places input:radio");a.prop("checked")===!0&&($(".cmb_id_gmb_search_radius").show(),$(".cmb_id_gmb_places_search_multicheckbox").show()),a.prop("checked")===!1&&$("#gmb_show_places2").prop("checked",!0),a.on("change",function(){$(".cmb_id_gmb_search_radius").toggle(),$(".cmb_id_gmb_places_search_multicheckbox").toggle(),"no"===$(this).val()?clear_search_markers():perform_places_search()})}function set_map_size(){var a=$("#gmb_width_height-width").val(),b=$('input[name="gmb_width_height[map_width_unit]"]:checked').val(),c=$("#gmb_width_height-height").val();$("#map").css({width:a+b,height:c})}function set_map_zoom_control(){var a=$("#gmb_zoom_control").val().toUpperCase();map.setOptions("NONE"==a?{zoomControl:!1}:{zoomControl:!0,zoomControlOptions:{style:google.maps.ZoomControlStyle[a]}})}function set_map_type_control(){var a=$("#gmb_map_type_control").val().toUpperCase();map.setOptions("NONE"==a?{mapTypeControl:!1}:{mapTypeControl:!0,mapTypeControlOptions:{style:google.maps.MapTypeControlStyle[a]}})}function set_mouse_wheel_scroll(){var a=$("#gmb_wheel_zoom").val();map.setOptions("none"===a?{scrollwheel:!1}:{scrollwheel:!0})}function set_double_click_zoom(){var a=$("#gmb_double_click").val();map.setOptions("none"===a?{disableDoubleClickZoom:!0}:{disableDoubleClickZoom:!1})}function set_draggable(){var a=$("#gmb_draggable").val();map.setOptions("none"==a?{draggable:!1}:{draggable:!0})}function set_pan_control(){var a=$("#gmb_pan").val();map.setOptions("none"===a?{panControl:!1}:{panControl:!0})}function set_street_view(){var a=$("#gmb_street_view").val();map.setOptions("none"===a?{streetViewControl:!1}:{streetViewControl:!0})}function set_map_type(a){a===!0&&($("#gmb_theme").val("none"),$("#gmb_theme_json").val("none"));var b=$("#gmb_type").val().toUpperCase();map.setOptions({mapTypeId:google.maps.MapTypeId[b],styles:!1})}function set_map_theme(reset){reset===!0&&($("#gmb_type").val("RoadMap"),$("#gmb_theme_json").val("none")),$.getJSON(gmb_data.snazzy,function(data){var map_theme_input_val=parseInt($("#gmb_theme").val());"none"===map_theme_input_val&&set_map_type(),$.each(data,function(index){data[index].id===map_theme_input_val&&(map_theme_input_val=eval(data[index].json),$("#gmb_theme_json").val(data[index].json))}),map.setOptions({mapTypeId:google.maps.MapTypeId.ROADMAP,styles:map_theme_input_val})})}function set_map_marker_icon(){$(".marker-item").on("click",function(){var a=$(this).data("marker");$(".marker-item").removeClass("marker-item-selected"),$(this).addClass("marker-item-selected"),"default"==a?($(".marker-icon-row, .marker-icon-color-wrap, .marker-label-color-wrap").slideUp(),$(".save-marker-icon").slideDown(),$("#TB_window .save-marker-button").attr("data-marker",""),$("#TB_window .save-marker-button").attr("data-label","")):($(".marker-icon-color-wrap, .marker-icon-row").slideDown(),$("#TB_window .save-marker-button").attr("data-marker",a))}),$(".icon").on("click",function(){$(".icon").removeClass("marker-item-selected"),$(this).addClass("marker-item-selected"),$(".save-marker-icon, .marker-label-color-wrap").slideDown(),$("#TB_window .save-marker-button").attr("data-label",$(this).find("span").attr("class"))});var a={change:function(a,b){var c=b.color.toString();$(this).hasClass("marker-color")===!0?($(".save-marker-button").attr("data-marker-color",c),$(".marker-svg polygon, .marker-svg path").attr("fill",c)):$(this).hasClass("label-color")===!0&&($(".save-marker-button").attr("data-label-color",c),$(".icon-inner span").css("color",c))},clear:function(){},hide:!0,palettes:!0};$(".color-picker").wpColorPicker(a)}function initialize_tooltips(){$('[data-tooltip!=""]').qtip({content:{attr:"data-tooltip"},hide:{fixed:!0,delay:100},position:{my:"top center",at:"bottom center"},style:{classes:"qtip-tipsy"},show:{when:{event:"focus"},effect:function(){$(this).fadeIn(200)}}})}$(window).load(function(){toggle_metabox_fields(),initialize_tooltips(),initialize_map($("#map")),$("#gmb_lat_lng-latitude").on("change",function(){lat_lng_field_change(map)}),$("#gmb_lat_lng-longitude").on("change",function(){lat_lng_field_change(map)}),$(".drop-marker").on("click",function(a){if(a.preventDefault(),$(this).hasClass("active"))$(this).text("Drop a Marker").removeClass("active"),map.setOptions({draggableCursor:null});else{$(this).text("Click on the Map").addClass("active"),map.setOptions({draggableCursor:"crosshair"});var b=google.maps.event.addListener(map,"click",function(a){drop_marker(a.latLng,b)})}});var a;$("#gmb_search_radius").on("focus",function(){a=$(this).val(),calc_radius(map,parseInt($(this).val()))}).focusout(function(){a!==$(this).val()&&perform_places_search(),radius_circle.setMap(null),radius_marker.setMap(null)}),$('[name^="gmb_places_search_multicheckbox"]').on("change",function(){0===$(".places-change-message").length&&($(".cmb_id_gmb_places_search_multicheckbox ul").prepend('<div class="wpgp-message places-change-message clear"><p>Place selections have changed.</p><a href="#" class="button update-places-map">Update Map</a></div>'),$(".places-change-message").slideDown())}),$(document).on("click",".update-places-map",function(a){a.preventDefault(),scroll_to_field("#google_maps_preview_metabox"),perform_places_search(),$(this).parent().fadeOut(function(){$(this).remove()})}),$(".lat-lng-update-btn").on("click",function(a){a.preventDefault(),$(".lat-lng-change-message").slideUp(),$("#gmb_lat_lng-latitude").val($(this).attr("data-lat")),$("#gmb_lat_lng-longitude").val($(this).attr("data-lng"))}),$(document).on("click",".add-marker",function(a){a.preventDefault(),hover_circle.setVisible(!1);var b=new google.maps.Marker({position:tentative_location_marker.getPosition(),map:map,icon:gmb_data.plugin_url+"/public/assets/img/default-marker.png",zIndex:google.maps.Marker.MAX_ZINDEX+1,optimized:!1});tentative_location_marker.setVisible(!1);var c=get_marker_index(),d=$(this).data("reference");$("#gmb_markers_group_"+c+"_title").val($(this).data("title")),$("#gmb_markers_group_"+c+"_lat").val($(this).data("lat")),$("#gmb_markers_group_"+c+"_lng").val($(this).data("lng")),$("#gmb_markers_group_"+c+"_reference").val(d),get_editable_info_window(c,b),google.maps.event.addListener(b,"click",function(){get_info_window_content(c,b)})}),set_map_marker_icon(),$("#gmb_type").change(function(){set_map_type(!0)}),$("#gmb_theme").change(function(){set_map_theme(!0)}),$("#gmb_street_view").change(function(){set_street_view()}),$("#gmb_pan").change(function(){set_pan_control()}),$("#gmb_draggable").change(function(){set_draggable()}),$("#gmb_double_click").change(function(){set_double_click_zoom()}),$("#gmb_wheel_zoom").change(function(){set_mouse_wheel_scroll()}),$("#gmb_map_type_control").change(function(){set_map_type_control()}),$("#gmb_zoom_control").change(function(){set_map_zoom_control()}),$("#gmb_width_height-width, #gmb_width_height-height").keyup(function(){delay(function(){set_map_size()},500)}),$('input[name="gmb_width_height[map_width_unit]"]').change(function(){set_map_size()})});var map,places_service,lat_lng,zoom,lat_field,lng_field,radius_circle,radius_marker,place,autocomplete,info_bubble,info_bubble_array=[],tentative_location_marker,location_marker,location_marker_array=[],search_markers=[],hover_circle,initial_location,delay=function(){var a=0;return function(b,c){clearTimeout(a),a=setTimeout(b,c)}}()}(jQuery);
|
admin/assets/js/admin-settings.js
CHANGED
@@ -1,53 +1,53 @@
|
|
1 |
-
/**
|
2 |
-
* Google Maps Builder Settings JS
|
3 |
-
*/
|
4 |
-
(function ( $ ) {
|
5 |
-
"use strict";
|
6 |
-
|
7 |
-
$( function () {
|
8 |
-
|
9 |
-
//Hide Welcome Message
|
10 |
-
$( '.hide-welcome' ).on( 'click', function ( e ) {
|
11 |
-
e.preventDefault();
|
12 |
-
$( '.welcome-header' ).slideUp( 'normal', function () {
|
13 |
-
$( '.logo-svg-small' ).fadeIn(); //Show new tiny logo
|
14 |
-
} ); //slide up welcome header
|
15 |
-
|
16 |
-
var data = {
|
17 |
-
action: 'hide_welcome'
|
18 |
-
};
|
19 |
-
$.post( ajaxurl, data, function ( response ) {
|
20 |
-
|
21 |
-
//Do something here if necessary
|
22 |
-
|
23 |
-
} );
|
24 |
-
|
25 |
-
} );
|
26 |
-
|
27 |
-
//Geolocate position change
|
28 |
-
var geolocate_radio = $( '.geolocate-radio-wrap input:radio' );
|
29 |
-
if ( geolocate_radio.prop( 'checked' ) === true ) {
|
30 |
-
$( '#lat-lng-wrap' ).hide();
|
31 |
-
}
|
32 |
-
if ( geolocate_radio.prop( 'checked' ) === false ) {
|
33 |
-
$( '#lat-lng-wrap' ).show();
|
34 |
-
}
|
35 |
-
geolocate_radio.on( 'change', function () {
|
36 |
-
$( '#lat-lng-wrap' ).toggle();
|
37 |
-
} );
|
38 |
-
|
39 |
-
//Default setting for Has Archive Inline Radio
|
40 |
-
if ( $( '#gmb_has_archive1' ).prop( 'checked' ) === false && $( '#gmb_has_archive2' ).prop( 'checked' ) === 'false' ) {
|
41 |
-
$( '#gmb_has_archive1' ).prop( 'checked', true );
|
42 |
-
}
|
43 |
-
|
44 |
-
|
45 |
-
//Label Click Helper
|
46 |
-
$( 'input:radio + label' ).on( 'click', function () {
|
47 |
-
$( this ).prev( 'input:radio' ).prop( 'checked', true );
|
48 |
-
} );
|
49 |
-
|
50 |
-
} );
|
51 |
-
|
52 |
-
|
53 |
-
}( jQuery ));
|
1 |
+
/**
|
2 |
+
* Google Maps Builder Settings JS
|
3 |
+
*/
|
4 |
+
(function ( $ ) {
|
5 |
+
"use strict";
|
6 |
+
|
7 |
+
$( function () {
|
8 |
+
|
9 |
+
//Hide Welcome Message
|
10 |
+
$( '.hide-welcome' ).on( 'click', function ( e ) {
|
11 |
+
e.preventDefault();
|
12 |
+
$( '.welcome-header' ).slideUp( 'normal', function () {
|
13 |
+
$( '.logo-svg-small' ).fadeIn(); //Show new tiny logo
|
14 |
+
} ); //slide up welcome header
|
15 |
+
|
16 |
+
var data = {
|
17 |
+
action: 'hide_welcome'
|
18 |
+
};
|
19 |
+
$.post( ajaxurl, data, function ( response ) {
|
20 |
+
|
21 |
+
//Do something here if necessary
|
22 |
+
|
23 |
+
} );
|
24 |
+
|
25 |
+
} );
|
26 |
+
|
27 |
+
//Geolocate position change
|
28 |
+
var geolocate_radio = $( '.geolocate-radio-wrap input:radio' );
|
29 |
+
if ( geolocate_radio.prop( 'checked' ) === true ) {
|
30 |
+
$( '#lat-lng-wrap' ).hide();
|
31 |
+
}
|
32 |
+
if ( geolocate_radio.prop( 'checked' ) === false ) {
|
33 |
+
$( '#lat-lng-wrap' ).show();
|
34 |
+
}
|
35 |
+
geolocate_radio.on( 'change', function () {
|
36 |
+
$( '#lat-lng-wrap' ).toggle();
|
37 |
+
} );
|
38 |
+
|
39 |
+
//Default setting for Has Archive Inline Radio
|
40 |
+
if ( $( '#gmb_has_archive1' ).prop( 'checked' ) === false && $( '#gmb_has_archive2' ).prop( 'checked' ) === 'false' ) {
|
41 |
+
$( '#gmb_has_archive1' ).prop( 'checked', true );
|
42 |
+
}
|
43 |
+
|
44 |
+
|
45 |
+
//Label Click Helper
|
46 |
+
$( 'input:radio + label' ).on( 'click', function () {
|
47 |
+
$( this ).prev( 'input:radio' ).prop( 'checked', true );
|
48 |
+
} );
|
49 |
+
|
50 |
+
} );
|
51 |
+
|
52 |
+
|
53 |
+
}( jQuery ));
|
admin/assets/js/admin-widget.js
CHANGED
@@ -1,267 +1,267 @@
|
|
1 |
-
(function ($) {
|
2 |
-
"use strict";
|
3 |
-
|
4 |
-
$(function () {
|
5 |
-
|
6 |
-
gmb_widget_toggles();
|
7 |
-
gmb_widget_tooltips();
|
8 |
-
|
9 |
-
//Initialize Gmap when user clicks an option
|
10 |
-
place_details_on_click();
|
11 |
-
place_search_on_click();
|
12 |
-
|
13 |
-
|
14 |
-
});
|
15 |
-
|
16 |
-
/*
|
17 |
-
* Function to Refresh jQuery toggles for wpgp Widget Pro upon saving specific widget
|
18 |
-
*/
|
19 |
-
$(document).ajaxSuccess(function (e, xhr, settings) {
|
20 |
-
|
21 |
-
gmb_widget_toggles();
|
22 |
-
gmb_widget_tooltips();
|
23 |
-
refresh_google_map();
|
24 |
-
place_details_on_click();
|
25 |
-
place_search_on_click();
|
26 |
-
|
27 |
-
|
28 |
-
});
|
29 |
-
$(document).ajaxStop(function (e, xhr, settings) {
|
30 |
-
|
31 |
-
});
|
32 |
-
|
33 |
-
/**
|
34 |
-
* Place Details Radio
|
35 |
-
*
|
36 |
-
* This function handles displaying the Google Map and initializing gmaps
|
37 |
-
*/
|
38 |
-
function place_details_on_click() {
|
39 |
-
//set up the click event
|
40 |
-
$('.place-details-api-option-wrap').on('click', function () {
|
41 |
-
var map_wrap = $(this).parentsUntil('form').find('.google-autocomplete-map-wrap');
|
42 |
-
var map_canvas = $(map_wrap).find('.map-canvas');
|
43 |
-
|
44 |
-
//slide down the autocomplete map
|
45 |
-
$(map_wrap).slideDown('normal', function () {
|
46 |
-
//check if map initialized already by checking for children in canvas
|
47 |
-
if (map_canvas.children().length == 0) {
|
48 |
-
//no map so initialize
|
49 |
-
place_details_autocomplete_initialize(map_canvas);
|
50 |
-
}
|
51 |
-
|
52 |
-
}); //slide down
|
53 |
-
}); //click
|
54 |
-
}
|
55 |
-
|
56 |
-
/**
|
57 |
-
* Place Search Radio
|
58 |
-
*
|
59 |
-
* This function handles displaying the Google Map and initializing gmaps
|
60 |
-
*/
|
61 |
-
function place_search_on_click() {
|
62 |
-
$('.place-search-api-option-wrap').on('click', function () {
|
63 |
-
//Slide up Autocomplete Map
|
64 |
-
$('.google-autocomplete-map-wrap').slideUp('normal');
|
65 |
-
});
|
66 |
-
}
|
67 |
-
|
68 |
-
|
69 |
-
/**
|
70 |
-
* Refresh Gmap
|
71 |
-
*/
|
72 |
-
function refresh_google_map() {
|
73 |
-
|
74 |
-
//check if Place Details Option enabled and/or map is displayed
|
75 |
-
|
76 |
-
//initialize map
|
77 |
-
var google_widget = jQuery('.widget-inside:visible').has('.google-autocomplete-map-wrap');
|
78 |
-
|
79 |
-
|
80 |
-
// console.log(google_widget);
|
81 |
-
//
|
82 |
-
// var map_canvas = google_widget.find('.map-canvas');
|
83 |
-
// place_details_autocomplete_initialize(map_canvas);
|
84 |
-
|
85 |
-
// $('.google-autocomplete-map-wrap').slideDown('normal', function () {
|
86 |
-
// var map_canvas = $(this).parentsUntil('form').find('.map-canvas');
|
87 |
-
// place_details_autocomplete_initialize(map_canvas);
|
88 |
-
// });
|
89 |
-
|
90 |
-
}
|
91 |
-
|
92 |
-
|
93 |
-
/**
|
94 |
-
* Widget Autocomplete Map
|
95 |
-
*
|
96 |
-
* Created the map with autocomplete searching used within the widget admin UI
|
97 |
-
*
|
98 |
-
* @see: https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete
|
99 |
-
*/
|
100 |
-
function place_details_autocomplete_initialize(map_canvas) {
|
101 |
-
|
102 |
-
var latitude = '32.713240';
|
103 |
-
var longitude = '-117.159443';
|
104 |
-
var referenceField = $(map_canvas[0]).parent().find('.place-detail-reference').val();
|
105 |
-
|
106 |
-
var mapOptions = {
|
107 |
-
center : new google.maps.LatLng(latitude, longitude),
|
108 |
-
zoom : 13,
|
109 |
-
zoomControl : true,
|
110 |
-
zoomControlOptions: {
|
111 |
-
style : google.maps.ZoomControlStyle.SMALL,
|
112 |
-
position: google.maps.ControlPosition.LEFT_BOTTOM
|
113 |
-
},
|
114 |
-
mapTypeControl : false,
|
115 |
-
streetViewControl : false
|
116 |
-
};
|
117 |
-
|
118 |
-
var map = new google.maps.Map(map_canvas[0], mapOptions);
|
119 |
-
|
120 |
-
|
121 |
-
//Check to see if this widget already has been setup
|
122 |
-
//@see: https://developers.google.com/maps/documentation/javascript/examples/place-details
|
123 |
-
if (referenceField) {
|
124 |
-
var service = new google.maps.places.PlacesService(map);
|
125 |
-
var request = {
|
126 |
-
reference: referenceField
|
127 |
-
};
|
128 |
-
|
129 |
-
service.getDetails(request, function (place, status) {
|
130 |
-
if (status == google.maps.places.PlacesServiceStatus.OK) {
|
131 |
-
|
132 |
-
set_marker_open_infobubble(map, place);
|
133 |
-
|
134 |
-
}
|
135 |
-
});
|
136 |
-
|
137 |
-
}
|
138 |
-
|
139 |
-
var input = /** @type {HTMLInputElement} */(
|
140 |
-
$(map_canvas[0]).parent().find('.pac-input')[0]);
|
141 |
-
|
142 |
-
var types = $(map_canvas[0]).parent().find('.type-selector')[0];
|
143 |
-
map.controls[google.maps.ControlPosition.TOP_CENTER].push(input);
|
144 |
-
map.controls[google.maps.ControlPosition.TOP_CENTER].push(types);
|
145 |
-
|
146 |
-
var autocomplete = new google.maps.places.Autocomplete(input);
|
147 |
-
autocomplete.bindTo('bounds', map);
|
148 |
-
|
149 |
-
|
150 |
-
//Autocomplete Place Change
|
151 |
-
google.maps.event.addListener(autocomplete, 'place_changed', function () {
|
152 |
-
|
153 |
-
var place = autocomplete.getPlace();
|
154 |
-
if (!place.geometry) {
|
155 |
-
return;
|
156 |
-
}
|
157 |
-
|
158 |
-
//set reference hidden input value
|
159 |
-
$(map_canvas[0]).parent().find('.place-detail-reference').val(place.reference);
|
160 |
-
|
161 |
-
// If the place has a geometry, then present it on a map.
|
162 |
-
set_marker_open_infobubble(map, place);
|
163 |
-
|
164 |
-
|
165 |
-
});
|
166 |
-
|
167 |
-
// Sets a listener on a radio button to change the filter type on Places
|
168 |
-
// Autocomplete.
|
169 |
-
function setupClickListener(id, types) {
|
170 |
-
var radioButton = document.getElementById(id);
|
171 |
-
google.maps.event.addDomListener(radioButton, 'click', function () {
|
172 |
-
autocomplete.setTypes(types);
|
173 |
-
});
|
174 |
-
}
|
175 |
-
|
176 |
-
setupClickListener('changetype-all', []);
|
177 |
-
setupClickListener('changetype-establishment', ['establishment']);
|
178 |
-
setupClickListener('changetype-geocode', ['geocode']);
|
179 |
-
|
180 |
-
}
|
181 |
-
|
182 |
-
|
183 |
-
function set_marker_open_infobubble(map, place) {
|
184 |
-
|
185 |
-
//Marker for map
|
186 |
-
var marker = new google.maps.Marker({
|
187 |
-
map: map
|
188 |
-
});
|
189 |
-
marker.setVisible(false);
|
190 |
-
|
191 |
-
//Custom InfoBubble
|
192 |
-
var infoBubble = new InfoBubble({
|
193 |
-
maxWidth: 300
|
194 |
-
});
|
195 |
-
//Update map with saved place detail
|
196 |
-
// If the place has a geometry, then present it on a map.
|
197 |
-
if (place.geometry.viewport) {
|
198 |
-
map.fitBounds(place.geometry.viewport);
|
199 |
-
} else {
|
200 |
-
map.setCenter(place.geometry.location);
|
201 |
-
map.setZoom(17); // Why 17? Because it looks good.
|
202 |
-
}
|
203 |
-
//setup marker icon
|
204 |
-
marker.setIcon(/** @type {google.maps.Icon} */({
|
205 |
-
url : place.icon,
|
206 |
-
size : new google.maps.Size(71, 71),
|
207 |
-
origin : new google.maps.Point(0, 0),
|
208 |
-
anchor : new google.maps.Point(17, 34),
|
209 |
-
scaledSize: new google.maps.Size(35, 35)
|
210 |
-
}));
|
211 |
-
marker.setPosition(place.geometry.location);
|
212 |
-
marker.setVisible(true);
|
213 |
-
|
214 |
-
var address = '';
|
215 |
-
if (place.address_components) {
|
216 |
-
address = [
|
217 |
-
(place.address_components[0] && place.address_components[0].short_name || ''),
|
218 |
-
(place.address_components[1] && place.address_components[1].short_name || ''),
|
219 |
-
(place.address_components[2] && place.address_components[2].short_name || '')
|
220 |
-
].join(' ');
|
221 |
-
}
|
222 |
-
|
223 |
-
infoBubble.setContent('<div><strong>' + place.name + '</strong><br>' + address);
|
224 |
-
infoBubble.open(map, marker);
|
225 |
-
|
226 |
-
}
|
227 |
-
|
228 |
-
|
229 |
-
/**
|
230 |
-
* Toggles Widget Panels
|
231 |
-
*/
|
232 |
-
function gmb_widget_toggles() {
|
233 |
-
|
234 |
-
//API Method Toggle
|
235 |
-
$('#widgets-right .widget-api-option .wpgp-method-span:not("clickable")').each(function () {
|
236 |
-
|
237 |
-
$(this).addClass("clickable").unbind("click").click(function () {
|
238 |
-
$(this).parent().parent().find('.toggled').slideUp().removeClass('toggled');
|
239 |
-
$(this).find('input').attr('checked', 'checked');
|
240 |
-
if ($(this).hasClass('search-api-option-wrap')) {
|
241 |
-
$(this).parent().next('.toggle-api-option-1').slideToggle().toggleClass('toggled');
|
242 |
-
} else {
|
243 |
-
$(this).parent().next().next('.toggle-api-option-2').slideToggle().toggleClass('toggled');
|
244 |
-
}
|
245 |
-
});
|
246 |
-
});
|
247 |
-
|
248 |
-
|
249 |
-
}
|
250 |
-
|
251 |
-
|
252 |
-
/**
|
253 |
-
* Tooltips
|
254 |
-
*/
|
255 |
-
function gmb_widget_tooltips() {
|
256 |
-
//Tooltips for admins
|
257 |
-
$('.tooltip-info').tipsy({
|
258 |
-
fade : true,
|
259 |
-
html : true,
|
260 |
-
gravity : 's',
|
261 |
-
delayOut: 1000,
|
262 |
-
delayIn : 500
|
263 |
-
});
|
264 |
-
}
|
265 |
-
|
266 |
-
|
267 |
-
}(jQuery));
|
1 |
+
(function ($) {
|
2 |
+
"use strict";
|
3 |
+
|
4 |
+
$(function () {
|
5 |
+
|
6 |
+
gmb_widget_toggles();
|
7 |
+
gmb_widget_tooltips();
|
8 |
+
|
9 |
+
//Initialize Gmap when user clicks an option
|
10 |
+
place_details_on_click();
|
11 |
+
place_search_on_click();
|
12 |
+
|
13 |
+
|
14 |
+
});
|
15 |
+
|
16 |
+
/*
|
17 |
+
* Function to Refresh jQuery toggles for wpgp Widget Pro upon saving specific widget
|
18 |
+
*/
|
19 |
+
$(document).ajaxSuccess(function (e, xhr, settings) {
|
20 |
+
|
21 |
+
gmb_widget_toggles();
|
22 |
+
gmb_widget_tooltips();
|
23 |
+
refresh_google_map();
|
24 |
+
place_details_on_click();
|
25 |
+
place_search_on_click();
|
26 |
+
|
27 |
+
|
28 |
+
});
|
29 |
+
$(document).ajaxStop(function (e, xhr, settings) {
|
30 |
+
|
31 |
+
});
|
32 |
+
|
33 |
+
/**
|
34 |
+
* Place Details Radio
|
35 |
+
*
|
36 |
+
* This function handles displaying the Google Map and initializing gmaps
|
37 |
+
*/
|
38 |
+
function place_details_on_click() {
|
39 |
+
//set up the click event
|
40 |
+
$('.place-details-api-option-wrap').on('click', function () {
|
41 |
+
var map_wrap = $(this).parentsUntil('form').find('.google-autocomplete-map-wrap');
|
42 |
+
var map_canvas = $(map_wrap).find('.map-canvas');
|
43 |
+
|
44 |
+
//slide down the autocomplete map
|
45 |
+
$(map_wrap).slideDown('normal', function () {
|
46 |
+
//check if map initialized already by checking for children in canvas
|
47 |
+
if (map_canvas.children().length == 0) {
|
48 |
+
//no map so initialize
|
49 |
+
place_details_autocomplete_initialize(map_canvas);
|
50 |
+
}
|
51 |
+
|
52 |
+
}); //slide down
|
53 |
+
}); //click
|
54 |
+
}
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Place Search Radio
|
58 |
+
*
|
59 |
+
* This function handles displaying the Google Map and initializing gmaps
|
60 |
+
*/
|
61 |
+
function place_search_on_click() {
|
62 |
+
$('.place-search-api-option-wrap').on('click', function () {
|
63 |
+
//Slide up Autocomplete Map
|
64 |
+
$('.google-autocomplete-map-wrap').slideUp('normal');
|
65 |
+
});
|
66 |
+
}
|
67 |
+
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Refresh Gmap
|
71 |
+
*/
|
72 |
+
function refresh_google_map() {
|
73 |
+
|
74 |
+
//check if Place Details Option enabled and/or map is displayed
|
75 |
+
|
76 |
+
//initialize map
|
77 |
+
var google_widget = jQuery('.widget-inside:visible').has('.google-autocomplete-map-wrap');
|
78 |
+
|
79 |
+
|
80 |
+
// console.log(google_widget);
|
81 |
+
//
|
82 |
+
// var map_canvas = google_widget.find('.map-canvas');
|
83 |
+
// place_details_autocomplete_initialize(map_canvas);
|
84 |
+
|
85 |
+
// $('.google-autocomplete-map-wrap').slideDown('normal', function () {
|
86 |
+
// var map_canvas = $(this).parentsUntil('form').find('.map-canvas');
|
87 |
+
// place_details_autocomplete_initialize(map_canvas);
|
88 |
+
// });
|
89 |
+
|
90 |
+
}
|
91 |
+
|
92 |
+
|
93 |
+
/**
|
94 |
+
* Widget Autocomplete Map
|
95 |
+
*
|
96 |
+
* Created the map with autocomplete searching used within the widget admin UI
|
97 |
+
*
|
98 |
+
* @see: https://developers.google.com/maps/documentation/javascript/examples/places-autocomplete
|
99 |
+
*/
|
100 |
+
function place_details_autocomplete_initialize(map_canvas) {
|
101 |
+
|
102 |
+
var latitude = '32.713240';
|
103 |
+
var longitude = '-117.159443';
|
104 |
+
var referenceField = $(map_canvas[0]).parent().find('.place-detail-reference').val();
|
105 |
+
|
106 |
+
var mapOptions = {
|
107 |
+
center : new google.maps.LatLng(latitude, longitude),
|
108 |
+
zoom : 13,
|
109 |
+
zoomControl : true,
|
110 |
+
zoomControlOptions: {
|
111 |
+
style : google.maps.ZoomControlStyle.SMALL,
|
112 |
+
position: google.maps.ControlPosition.LEFT_BOTTOM
|
113 |
+
},
|
114 |
+
mapTypeControl : false,
|
115 |
+
streetViewControl : false
|
116 |
+
};
|
117 |
+
|
118 |
+
var map = new google.maps.Map(map_canvas[0], mapOptions);
|
119 |
+
|
120 |
+
|
121 |
+
//Check to see if this widget already has been setup
|
122 |
+
//@see: https://developers.google.com/maps/documentation/javascript/examples/place-details
|
123 |
+
if (referenceField) {
|
124 |
+
var service = new google.maps.places.PlacesService(map);
|
125 |
+
var request = {
|
126 |
+
reference: referenceField
|
127 |
+
};
|
128 |
+
|
129 |
+
service.getDetails(request, function (place, status) {
|
130 |
+
if (status == google.maps.places.PlacesServiceStatus.OK) {
|
131 |
+
|
132 |
+
set_marker_open_infobubble(map, place);
|
133 |
+
|
134 |
+
}
|
135 |
+
});
|
136 |
+
|
137 |
+
}
|
138 |
+
|
139 |
+
var input = /** @type {HTMLInputElement} */(
|
140 |
+
$(map_canvas[0]).parent().find('.pac-input')[0]);
|
141 |
+
|
142 |
+
var types = $(map_canvas[0]).parent().find('.type-selector')[0];
|
143 |
+
map.controls[google.maps.ControlPosition.TOP_CENTER].push(input);
|
144 |
+
map.controls[google.maps.ControlPosition.TOP_CENTER].push(types);
|
145 |
+
|
146 |
+
var autocomplete = new google.maps.places.Autocomplete(input);
|
147 |
+
autocomplete.bindTo('bounds', map);
|
148 |
+
|
149 |
+
|
150 |
+
//Autocomplete Place Change
|
151 |
+
google.maps.event.addListener(autocomplete, 'place_changed', function () {
|
152 |
+
|
153 |
+
var place = autocomplete.getPlace();
|
154 |
+
if (!place.geometry) {
|
155 |
+
return;
|
156 |
+
}
|
157 |
+
|
158 |
+
//set reference hidden input value
|
159 |
+
$(map_canvas[0]).parent().find('.place-detail-reference').val(place.reference);
|
160 |
+
|
161 |
+
// If the place has a geometry, then present it on a map.
|
162 |
+
set_marker_open_infobubble(map, place);
|
163 |
+
|
164 |
+
|
165 |
+
});
|
166 |
+
|
167 |
+
// Sets a listener on a radio button to change the filter type on Places
|
168 |
+
// Autocomplete.
|
169 |
+
function setupClickListener(id, types) {
|
170 |
+
var radioButton = document.getElementById(id);
|
171 |
+
google.maps.event.addDomListener(radioButton, 'click', function () {
|
172 |
+
autocomplete.setTypes(types);
|
173 |
+
});
|
174 |
+
}
|
175 |
+
|
176 |
+
setupClickListener('changetype-all', []);
|
177 |
+
setupClickListener('changetype-establishment', ['establishment']);
|
178 |
+
setupClickListener('changetype-geocode', ['geocode']);
|
179 |
+
|
180 |
+
}
|
181 |
+
|
182 |
+
|
183 |
+
function set_marker_open_infobubble(map, place) {
|
184 |
+
|
185 |
+
//Marker for map
|
186 |
+
var marker = new google.maps.Marker({
|
187 |
+
map: map
|
188 |
+
});
|
189 |
+
marker.setVisible(false);
|
190 |
+
|
191 |
+
//Custom InfoBubble
|
192 |
+
var infoBubble = new InfoBubble({
|
193 |
+
maxWidth: 300
|
194 |
+
});
|
195 |
+
//Update map with saved place detail
|
196 |
+
// If the place has a geometry, then present it on a map.
|
197 |
+
if (place.geometry.viewport) {
|
198 |
+
map.fitBounds(place.geometry.viewport);
|
199 |
+
} else {
|
200 |
+
map.setCenter(place.geometry.location);
|
201 |
+
map.setZoom(17); // Why 17? Because it looks good.
|
202 |
+
}
|
203 |
+
//setup marker icon
|
204 |
+
marker.setIcon(/** @type {google.maps.Icon} */({
|
205 |
+
url : place.icon,
|
206 |
+
size : new google.maps.Size(71, 71),
|
207 |
+
origin : new google.maps.Point(0, 0),
|
208 |
+
anchor : new google.maps.Point(17, 34),
|
209 |
+
scaledSize: new google.maps.Size(35, 35)
|
210 |
+
}));
|
211 |
+
marker.setPosition(place.geometry.location);
|
212 |
+
marker.setVisible(true);
|
213 |
+
|
214 |
+
var address = '';
|
215 |
+
if (place.address_components) {
|
216 |
+
address = [
|
217 |
+
(place.address_components[0] && place.address_components[0].short_name || ''),
|
218 |
+
(place.address_components[1] && place.address_components[1].short_name || ''),
|
219 |
+
(place.address_components[2] && place.address_components[2].short_name || '')
|
220 |
+
].join(' ');
|
221 |
+
}
|
222 |
+
|
223 |
+
infoBubble.setContent('<div><strong>' + place.name + '</strong><br>' + address);
|
224 |
+
infoBubble.open(map, marker);
|
225 |
+
|
226 |
+
}
|
227 |
+
|
228 |
+
|
229 |
+
/**
|
230 |
+
* Toggles Widget Panels
|
231 |
+
*/
|
232 |
+
function gmb_widget_toggles() {
|
233 |
+
|
234 |
+
//API Method Toggle
|
235 |
+
$('#widgets-right .widget-api-option .wpgp-method-span:not("clickable")').each(function () {
|
236 |
+
|
237 |
+
$(this).addClass("clickable").unbind("click").click(function () {
|
238 |
+
$(this).parent().parent().find('.toggled').slideUp().removeClass('toggled');
|
239 |
+
$(this).find('input').attr('checked', 'checked');
|
240 |
+
if ($(this).hasClass('search-api-option-wrap')) {
|
241 |
+
$(this).parent().next('.toggle-api-option-1').slideToggle().toggleClass('toggled');
|
242 |
+
} else {
|
243 |
+
$(this).parent().next().next('.toggle-api-option-2').slideToggle().toggleClass('toggled');
|
244 |
+
}
|
245 |
+
});
|
246 |
+
});
|
247 |
+
|
248 |
+
|
249 |
+
}
|
250 |
+
|
251 |
+
|
252 |
+
/**
|
253 |
+
* Tooltips
|
254 |
+
*/
|
255 |
+
function gmb_widget_tooltips() {
|
256 |
+
//Tooltips for admins
|
257 |
+
$('.tooltip-info').tipsy({
|
258 |
+
fade : true,
|
259 |
+
html : true,
|
260 |
+
gravity : 's',
|
261 |
+
delayOut: 1000,
|
262 |
+
delayIn : 500
|
263 |
+
});
|
264 |
+
}
|
265 |
+
|
266 |
+
|
267 |
+
}(jQuery));
|
includes/snazzy.php → admin/assets/js/snazzy.json
RENAMED
@@ -1,13 +1,3 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Snazzy Maps
|
4 |
-
*
|
5 |
-
* @description: Contains the snazzy maps JSON array
|
6 |
-
* @since :
|
7 |
-
* @created : 4/18/14
|
8 |
-
*/
|
9 |
-
|
10 |
-
?>
|
11 |
[
|
12 |
{
|
13 |
"id":1,
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
[
|
2 |
{
|
3 |
"id":1,
|
admin/class-wordpress-google-maps-admin.php
CHANGED
@@ -1,775 +1,785 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
*
|
5 |
-
*
|
6 |
-
*
|
7 |
-
*
|
8 |
-
* @
|
9 |
-
* @
|
10 |
-
* @
|
11 |
-
* @
|
12 |
-
|
13 |
-
|
14 |
-
class Google_Maps_Builder_Admin {
|
15 |
-
|
16 |
-
/**
|
17 |
-
* Instance of this class.
|
18 |
-
*
|
19 |
-
* @since 1.0.0
|
20 |
-
*
|
21 |
-
* @var object
|
22 |
-
*/
|
23 |
-
protected static $instance = null;
|
24 |
-
|
25 |
-
|
26 |
-
/**
|
27 |
-
* Array of metaboxes/fields
|
28 |
-
*
|
29 |
-
* @since 1.0.0
|
30 |
-
*
|
31 |
-
* @var array
|
32 |
-
*/
|
33 |
-
protected static $plugin_options = array();
|
34 |
-
|
35 |
-
/**
|
36 |
-
* Array of metaboxes/fields
|
37 |
-
*
|
38 |
-
* @since 1.0.0
|
39 |
-
*
|
40 |
-
* @var array
|
41 |
-
*/
|
42 |
-
protected static $default_map_options;
|
43 |
-
|
44 |
-
|
45 |
-
/**
|
46 |
-
* Initialize the plugin by loading admin scripts & styles and adding a
|
47 |
-
* settings page and menu.
|
48 |
-
*
|
49 |
-
* @since 1.0.0
|
50 |
-
*/
|
51 |
-
private function __construct() {
|
52 |
-
|
53 |
-
/*
|
54 |
-
* Call $plugin_slug from public plugin class.
|
55 |
-
*/
|
56 |
-
$plugin = Google_Maps_Builder::get_instance();
|
57 |
-
$this->plugin_slug = $plugin->get_plugin_slug();
|
58 |
-
|
59 |
-
// Load admin style sheet and JavaScript.
|
60 |
-
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) );
|
61 |
-
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) );
|
62 |
-
|
63 |
-
//Add metaboxes and fields to CPT
|
64 |
-
add_filter( 'cmb_meta_boxes', array( $this, 'cpt_metaboxes_fields' ), 1 );
|
65 |
-
|
66 |
-
//Custom Meta Fields
|
67 |
-
add_action( 'cmb_render_google_geocoder', array( $this, 'cmb_render_google_geocoder' ), 10, 2 );
|
68 |
-
add_action( 'cmb_render_google_maps_preview', array( $this, 'cmb_render_google_maps_preview' ), 10, 2 );
|
69 |
-
add_action( 'cmb_render_search_options', array( $this, 'cmb_render_search_options' ), 10, 2 );
|
70 |
-
add_action( 'cmb_render_width_height', array( $this, 'cmb_render_width_height' ), 10, 2 );
|
71 |
-
add_action( 'cmb_render_lat_lng', array( $this, 'cmb_render_lat_lng' ), 10, 2 );
|
72 |
-
add_action( 'post_submitbox_misc_actions', array( $this, 'gmb_add_shortcode_to_publish_metabox' ) );
|
73 |
-
|
74 |
-
|
75 |
-
}
|
76 |
-
|
77 |
-
/**
|
78 |
-
*
|
79 |
-
* Add Shortcode to Publish Metabox
|
80 |
-
*
|
81 |
-
*/
|
82 |
-
public function gmb_add_shortcode_to_publish_metabox() {
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
*
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
$
|
178 |
-
$
|
179 |
-
|
180 |
-
$
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
'
|
185 |
-
'
|
186 |
-
'
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
'
|
224 |
-
'
|
225 |
-
'
|
226 |
-
'
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
'
|
232 |
-
'
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
'
|
241 |
-
'
|
242 |
-
'
|
243 |
-
'
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
'
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
'
|
258 |
-
'
|
259 |
-
'
|
260 |
-
'
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
'
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
'
|
279 |
-
|
280 |
-
|
281 |
-
'
|
282 |
-
|
283 |
-
|
284 |
-
'
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
'
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
'
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
'
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
'
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
'
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
'
|
324 |
-
'
|
325 |
-
'
|
326 |
-
'
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
'
|
332 |
-
'
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
'
|
342 |
-
'
|
343 |
-
|
344 |
-
|
345 |
-
'
|
346 |
-
|
347 |
-
|
348 |
-
'
|
349 |
-
'
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
'
|
356 |
-
'
|
357 |
-
'
|
358 |
-
'
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
'
|
363 |
-
'
|
364 |
-
'
|
365 |
-
'
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
'
|
370 |
-
'
|
371 |
-
'
|
372 |
-
'
|
373 |
-
'
|
374 |
-
'
|
375 |
-
'
|
376 |
-
'
|
377 |
-
'
|
378 |
-
'
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
'
|
383 |
-
'
|
384 |
-
'
|
385 |
-
'
|
386 |
-
'
|
387 |
-
'
|
388 |
-
'
|
389 |
-
'
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
'
|
394 |
-
'
|
395 |
-
'
|
396 |
-
'
|
397 |
-
'
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
'
|
402 |
-
'
|
403 |
-
'
|
404 |
-
'
|
405 |
-
'
|
406 |
-
'
|
407 |
-
'
|
408 |
-
'
|
409 |
-
'
|
410 |
-
'
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
'
|
416 |
-
'
|
417 |
-
'
|
418 |
-
'
|
419 |
-
'
|
420 |
-
'
|
421 |
-
'
|
422 |
-
'
|
423 |
-
'
|
424 |
-
'
|
425 |
-
'
|
426 |
-
'
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
'
|
431 |
-
'
|
432 |
-
'
|
433 |
-
'
|
434 |
-
'
|
435 |
-
'
|
436 |
-
'
|
437 |
-
'
|
438 |
-
'
|
439 |
-
'
|
440 |
-
'
|
441 |
-
|
442 |
-
|
443 |
-
'
|
444 |
-
'
|
445 |
-
'
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
'
|
456 |
-
'
|
457 |
-
'
|
458 |
-
'
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
'
|
464 |
-
'
|
465 |
-
'
|
466 |
-
'
|
467 |
-
|
468 |
-
|
469 |
-
'
|
470 |
-
|
471 |
-
|
472 |
-
'
|
473 |
-
'
|
474 |
-
'
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
'
|
482 |
-
'
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
array( 'name' => __( '
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
'
|
494 |
-
'
|
495 |
-
'
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
array( 'name' => __( '
|
500 |
-
array( 'name' => __( '
|
501 |
-
array( 'name' => __( '
|
502 |
-
array( 'name' => __( '
|
503 |
-
array( 'name' => __( '
|
504 |
-
array( 'name' => __( '
|
505 |
-
array( 'name' => __( '
|
506 |
-
array( 'name' => __( '
|
507 |
-
array( 'name' => __( '
|
508 |
-
array( 'name' => __( '
|
509 |
-
array( 'name' => __( '
|
510 |
-
array( 'name' => __( '
|
511 |
-
array( 'name' => __( '
|
512 |
-
array( 'name' => __( '
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
'
|
520 |
-
'
|
521 |
-
|
522 |
-
|
523 |
-
'
|
524 |
-
|
525 |
-
|
526 |
-
'
|
527 |
-
'
|
528 |
-
'
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
array( 'name' => '
|
533 |
-
array( 'name' => '
|
534 |
-
array( 'name' => '
|
535 |
-
array( 'name' => '
|
536 |
-
array( 'name' => '
|
537 |
-
array( 'name' => '
|
538 |
-
array( 'name' => '
|
539 |
-
array( 'name' => '
|
540 |
-
array( 'name' => '
|
541 |
-
array( 'name' => '
|
542 |
-
array( 'name' => '
|
543 |
-
array( 'name' => '
|
544 |
-
array( 'name' => '
|
545 |
-
array( 'name' => '
|
546 |
-
array( 'name' => '
|
547 |
-
array( 'name' => '
|
548 |
-
array( 'name' => '
|
549 |
-
array( 'name' => '
|
550 |
-
array( 'name' => '
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
'
|
579 |
-
'
|
580 |
-
'
|
581 |
-
|
582 |
-
|
583 |
-
array( 'name' => __( '
|
584 |
-
array( 'name' => __( '
|
585 |
-
),
|
586 |
-
),
|
587 |
-
array(
|
588 |
-
'name' => '
|
589 |
-
'id' => $prefix . '
|
590 |
-
'type' => 'select',
|
591 |
-
'std' => 'true',
|
592 |
-
'options' => array(
|
593 |
-
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
594 |
-
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
595 |
-
),
|
596 |
-
),
|
597 |
-
array(
|
598 |
-
'name' => '
|
599 |
-
'id' => $prefix . '
|
600 |
-
'type' => 'select',
|
601 |
-
'std' => '
|
602 |
-
'options' => array(
|
603 |
-
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
604 |
-
array( 'name' => __( '
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
'
|
611 |
-
'
|
612 |
-
'
|
613 |
-
|
614 |
-
|
615 |
-
array( 'name' => __( '
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
array(
|
620 |
-
'name' => '
|
621 |
-
'id' => $prefix . '
|
622 |
-
'type' => 'select',
|
623 |
-
'std' => 'true',
|
624 |
-
'options' => array(
|
625 |
-
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
626 |
-
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
627 |
-
),
|
628 |
-
),
|
629 |
-
array(
|
630 |
-
'name' => '
|
631 |
-
'id' => $prefix . '
|
632 |
-
'type' => 'select',
|
633 |
-
'std' => '
|
634 |
-
'options' => array(
|
635 |
-
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
636 |
-
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
637 |
-
),
|
638 |
-
),
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
$
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
$output .= '<
|
679 |
-
$output .= '
|
680 |
-
$output .= '
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
$
|
766 |
-
$
|
767 |
-
$
|
768 |
-
$
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
775 |
} //end class
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Google Maps Admin
|
5 |
+
*
|
6 |
+
* The admin is considered the single post view where you build maps
|
7 |
+
*
|
8 |
+
* @package Google_Maps_Builder_Admin
|
9 |
+
* @author Devin Walker <devin@wordimpress.com>
|
10 |
+
* @license GPL-2.0+
|
11 |
+
* @link http://wordimpress.com
|
12 |
+
* @copyright 2014 WordImpress, Devin Walker
|
13 |
+
*/
|
14 |
+
class Google_Maps_Builder_Admin {
|
15 |
+
|
16 |
+
/**
|
17 |
+
* Instance of this class.
|
18 |
+
*
|
19 |
+
* @since 1.0.0
|
20 |
+
*
|
21 |
+
* @var object
|
22 |
+
*/
|
23 |
+
protected static $instance = null;
|
24 |
+
|
25 |
+
|
26 |
+
/**
|
27 |
+
* Array of metaboxes/fields
|
28 |
+
*
|
29 |
+
* @since 1.0.0
|
30 |
+
*
|
31 |
+
* @var array
|
32 |
+
*/
|
33 |
+
protected static $plugin_options = array();
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Array of metaboxes/fields
|
37 |
+
*
|
38 |
+
* @since 1.0.0
|
39 |
+
*
|
40 |
+
* @var array
|
41 |
+
*/
|
42 |
+
protected static $default_map_options;
|
43 |
+
|
44 |
+
|
45 |
+
/**
|
46 |
+
* Initialize the plugin by loading admin scripts & styles and adding a
|
47 |
+
* settings page and menu.
|
48 |
+
*
|
49 |
+
* @since 1.0.0
|
50 |
+
*/
|
51 |
+
private function __construct() {
|
52 |
+
|
53 |
+
/*
|
54 |
+
* Call $plugin_slug from public plugin class.
|
55 |
+
*/
|
56 |
+
$plugin = Google_Maps_Builder::get_instance();
|
57 |
+
$this->plugin_slug = $plugin->get_plugin_slug();
|
58 |
+
|
59 |
+
// Load admin style sheet and JavaScript.
|
60 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) );
|
61 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) );
|
62 |
+
|
63 |
+
//Add metaboxes and fields to CPT
|
64 |
+
add_filter( 'cmb_meta_boxes', array( $this, 'cpt_metaboxes_fields' ), 1 );
|
65 |
+
|
66 |
+
//Custom Meta Fields
|
67 |
+
add_action( 'cmb_render_google_geocoder', array( $this, 'cmb_render_google_geocoder' ), 10, 2 );
|
68 |
+
add_action( 'cmb_render_google_maps_preview', array( $this, 'cmb_render_google_maps_preview' ), 10, 2 );
|
69 |
+
add_action( 'cmb_render_search_options', array( $this, 'cmb_render_search_options' ), 10, 2 );
|
70 |
+
add_action( 'cmb_render_width_height', array( $this, 'cmb_render_width_height' ), 10, 2 );
|
71 |
+
add_action( 'cmb_render_lat_lng', array( $this, 'cmb_render_lat_lng' ), 10, 2 );
|
72 |
+
add_action( 'post_submitbox_misc_actions', array( $this, 'gmb_add_shortcode_to_publish_metabox' ) );
|
73 |
+
|
74 |
+
|
75 |
+
}
|
76 |
+
|
77 |
+
/**
|
78 |
+
*
|
79 |
+
* Add Shortcode to Publish Metabox
|
80 |
+
*
|
81 |
+
*/
|
82 |
+
public function gmb_add_shortcode_to_publish_metabox() {
|
83 |
+
|
84 |
+
if ('google_maps' !== get_post_type())
|
85 |
+
return false;
|
86 |
+
|
87 |
+
global $post;
|
88 |
+
|
89 |
+
//Only enqueue scripts for CPT on post type screen
|
90 |
+
if ( 'google_maps' === $post->post_type ) {
|
91 |
+
//Shortcode column with select all input
|
92 |
+
$shortcode = htmlentities( '[google_maps id="' . $post->ID . '"]' );
|
93 |
+
echo '<div class="shortcode-wrap box-sizing"><label>' . __( 'Map Shortcode:', $this->plugin_slug ) . '</label><input onClick="this.setSelectionRange(0, this.value.length)" type="text" class="shortcode-input" readonly value="' . $shortcode . '"></div>';
|
94 |
+
|
95 |
+
}
|
96 |
+
|
97 |
+
}
|
98 |
+
|
99 |
+
/**
|
100 |
+
* Get Default Map Options
|
101 |
+
*
|
102 |
+
* Helper function that returns default map options from settings
|
103 |
+
* @return array
|
104 |
+
*/
|
105 |
+
public function get_default_map_options() {
|
106 |
+
|
107 |
+
$width_height = gmb_get_option( 'gmb_width_height' );
|
108 |
+
|
109 |
+
$defaults = array(
|
110 |
+
'width' => ( isset( $width_height['width'] ) ) ? $width_height['width'] : '100',
|
111 |
+
'width_unit' => ( isset( $width_height['map_width_unit'] ) ) ? $width_height['map_width_unit'] : '%',
|
112 |
+
'height' => ( isset( $width_height['height'] ) ) ? $width_height['height'] : '600'
|
113 |
+
);
|
114 |
+
|
115 |
+
return $defaults;
|
116 |
+
|
117 |
+
}
|
118 |
+
|
119 |
+
/**
|
120 |
+
* Return an instance of this class.
|
121 |
+
*
|
122 |
+
* @since 1.0.0
|
123 |
+
*
|
124 |
+
* @return object A single instance of this class.
|
125 |
+
*/
|
126 |
+
public static function get_instance() {
|
127 |
+
|
128 |
+
// If the single instance hasn't been set, set it now.
|
129 |
+
if ( null == self::$instance ) {
|
130 |
+
self::$instance = new self;
|
131 |
+
}
|
132 |
+
|
133 |
+
return self::$instance;
|
134 |
+
}
|
135 |
+
|
136 |
+
|
137 |
+
/**
|
138 |
+
* Register and enqueue admin-specific style sheet.
|
139 |
+
*
|
140 |
+
* Return early if no settings page is registered.
|
141 |
+
* @since 1.0.0
|
142 |
+
*
|
143 |
+
* @return null
|
144 |
+
*/
|
145 |
+
public function enqueue_admin_styles( $hook ) {
|
146 |
+
|
147 |
+
global $post;
|
148 |
+
$suffix = defined( 'GMB_DEBUG' ) && GMB_DEBUG ? '' : '.min';
|
149 |
+
|
150 |
+
//Only enqueue scripts for CPT on post type screen
|
151 |
+
if ( $hook == 'post-new.php' || $hook == 'post.php' && 'google_maps' === $post->post_type ) {
|
152 |
+
|
153 |
+
wp_enqueue_style( $this->plugin_slug . '-admin-styles', plugins_url( 'assets/css/admin' . $suffix . '.css', __FILE__ ), array(), Google_Maps_Builder::VERSION );
|
154 |
+
wp_enqueue_style( $this->plugin_slug . '-map-icons', plugins_url( 'includes/map-icons/css/map-icons.css', dirname( __FILE__ ) ), array(), Google_Maps_Builder::VERSION );
|
155 |
+
wp_enqueue_style( $this->plugin_slug . '-map-tooltips', plugins_url( 'includes/tooltips/jquery.qtip' . $suffix . '.css', __FILE__ ), array(), Google_Maps_Builder::VERSION );
|
156 |
+
|
157 |
+
}
|
158 |
+
|
159 |
+
}
|
160 |
+
|
161 |
+
/**
|
162 |
+
* Register and enqueue admin-specific JavaScript.
|
163 |
+
*
|
164 |
+
* @since 1.0.0
|
165 |
+
*
|
166 |
+
* @return null Return early if no settings page is registered.
|
167 |
+
*/
|
168 |
+
public function enqueue_admin_scripts( $hook ) {
|
169 |
+
global $post;
|
170 |
+
$suffix = defined( 'GMB_DEBUG' ) && GMB_DEBUG ? '' : '.min';
|
171 |
+
|
172 |
+
//Only enqueue scripts for CPT on post type screen
|
173 |
+
if ( $hook == 'post-new.php' || $hook == 'post.php' && 'google_maps' === $post->post_type ) {
|
174 |
+
|
175 |
+
wp_enqueue_script( $this->plugin_slug . '-admin-gmaps', 'https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&libraries=places', array( 'jquery' ) );
|
176 |
+
wp_enqueue_script( $this->plugin_slug . '-map-icons', plugins_url( 'includes/map-icons/js/map-icons.js', dirname( __FILE__ ) ), array( 'jquery' ) );
|
177 |
+
wp_enqueue_script( $this->plugin_slug . '-admin-map-builder', plugins_url( 'assets/js/admin-google-map' . $suffix . '.js', __FILE__ ), array( 'jquery' ), Google_Maps_Builder::VERSION );
|
178 |
+
wp_enqueue_script( $this->plugin_slug . '-admin-qtip', plugins_url( 'includes/tooltips/jquery.qtip' . $suffix . '.js', __FILE__ ), array( 'jquery' ), Google_Maps_Builder::VERSION, true );
|
179 |
+
|
180 |
+
$api_key = gmb_get_option( 'gmb_api_key' );
|
181 |
+
$geolocate = gmb_get_option( 'gmb_lat_lng' );
|
182 |
+
|
183 |
+
$maps_data = array(
|
184 |
+
'api_key' => $api_key,
|
185 |
+
'geolocate_setting' => isset( $geolocate['geolocate_map'] ) ? $geolocate['geolocate_map'] : 'yes',
|
186 |
+
'default_lat' => isset( $geolocate['latitude'] ) ? $geolocate['latitude'] : '32.715738',
|
187 |
+
'default_lng' => isset( $geolocate['longitude'] ) ? $geolocate['longitude'] : '-117.16108380000003',
|
188 |
+
'plugin_url' => GMB_PLUGIN_URL,
|
189 |
+
'snazzy' => GMB_PLUGIN_URL . '/admin/assets/js/snazzy.json'
|
190 |
+
);
|
191 |
+
wp_localize_script( $this->plugin_slug . '-admin-map-builder', 'gmb_data', $maps_data );
|
192 |
+
|
193 |
+
}
|
194 |
+
|
195 |
+
wp_enqueue_style( 'dashicons' );
|
196 |
+
|
197 |
+
|
198 |
+
}
|
199 |
+
|
200 |
+
|
201 |
+
/**
|
202 |
+
* Register our setting to WP
|
203 |
+
* @since 1.0.0
|
204 |
+
*/
|
205 |
+
public function settings_init() {
|
206 |
+
register_setting( $this->plugin_slug, $this->plugin_slug );
|
207 |
+
}
|
208 |
+
|
209 |
+
|
210 |
+
/**
|
211 |
+
* Defines the Google Places CPT metabox and field configuration
|
212 |
+
* @since 1.0.0
|
213 |
+
* @return array
|
214 |
+
*/
|
215 |
+
|
216 |
+
public function cpt_metaboxes_fields( array $meta_boxes ) {
|
217 |
+
|
218 |
+
$prefix = 'gmb_'; // Prefix for all fields
|
219 |
+
|
220 |
+
$default_options = $this->get_default_map_options();
|
221 |
+
|
222 |
+
$meta_boxes['google_maps_metabox'] = array(
|
223 |
+
'id' => 'google_maps_metabox',
|
224 |
+
'title' => __( 'Google Map Markers', $this->plugin_slug ),
|
225 |
+
'pages' => array( 'google_maps' ), // post type
|
226 |
+
'context' => 'normal', // 'normal', 'advanced', or 'side'
|
227 |
+
'priority' => 'high', // 'high', 'core', 'default' or 'low'
|
228 |
+
'show_names' => true, // Show field names on the left
|
229 |
+
'fields' => array(
|
230 |
+
array(
|
231 |
+
'name' => __( 'Create Marker', $this->plugin_slug ),
|
232 |
+
'id' => $prefix . 'geocoder',
|
233 |
+
'type' => 'google_geocoder',
|
234 |
+
'std' => 'San Diego, CA, United States',
|
235 |
+
'desc' => '',
|
236 |
+
),
|
237 |
+
),
|
238 |
+
);
|
239 |
+
$meta_boxes['google_maps_preview_metabox'] = array(
|
240 |
+
'id' => 'google_maps_preview_metabox',
|
241 |
+
'title' => __( 'Google Map Preview', $this->plugin_slug ),
|
242 |
+
'pages' => array( 'google_maps' ), // post type
|
243 |
+
'context' => 'normal', // 'normal', 'advanced', or 'side'
|
244 |
+
'priority' => 'core', // 'high', 'core', 'default' or 'low'
|
245 |
+
'show_names' => false, // Show field names on the left
|
246 |
+
'fields' => array(
|
247 |
+
array(
|
248 |
+
'name' => 'Map Preview',
|
249 |
+
'id' => $prefix . 'preview',
|
250 |
+
'type' => 'google_maps_preview',
|
251 |
+
'std' => '',
|
252 |
+
),
|
253 |
+
|
254 |
+
),
|
255 |
+
);
|
256 |
+
$meta_boxes['google_maps_markers'] = array(
|
257 |
+
'id' => 'google_maps_markers',
|
258 |
+
'title' => __( 'Google Map Markers', $this->plugin_slug ),
|
259 |
+
'pages' => array( 'google_maps' ), // post type
|
260 |
+
'context' => 'normal', // 'normal', 'advanced', or 'side'
|
261 |
+
'priority' => 'low', // 'high', 'core', 'default' or 'low'
|
262 |
+
'show_names' => true, // Show field names on the left
|
263 |
+
'fields' => array(
|
264 |
+
array(
|
265 |
+
'id' => $prefix . 'markers_group',
|
266 |
+
'type' => 'group',
|
267 |
+
'description' => __( 'Map marker data is contained within the repeatable fields below. You may add or update marker data here in bulk.', $this->plugin_slug ),
|
268 |
+
'options' => array(
|
269 |
+
'add_button' => __( 'Add Another Marker', $this->plugin_slug ),
|
270 |
+
'remove_button' => __( 'Remove Marker', $this->plugin_slug ),
|
271 |
+
'sortable' => true, // beta
|
272 |
+
),
|
273 |
+
// Fields array works the same, except id's only need to be unique for this group. Prefix is not needed.
|
274 |
+
'fields' => array(
|
275 |
+
array(
|
276 |
+
'name' => 'Marker Title',
|
277 |
+
'id' => 'title',
|
278 |
+
'type' => 'text',
|
279 |
+
),
|
280 |
+
array(
|
281 |
+
'name' => 'Marker Description',
|
282 |
+
'description' => 'Write a short description for this marker',
|
283 |
+
'id' => 'description',
|
284 |
+
'type' => 'textarea_small',
|
285 |
+
),
|
286 |
+
array(
|
287 |
+
'name' => 'Marker Reference',
|
288 |
+
'id' => 'reference',
|
289 |
+
'type' => 'text',
|
290 |
+
),
|
291 |
+
array(
|
292 |
+
'name' => 'Hide Place Details',
|
293 |
+
'id' => 'hide_details',
|
294 |
+
'type' => 'checkbox',
|
295 |
+
),
|
296 |
+
array(
|
297 |
+
'name' => 'Marker Latitude',
|
298 |
+
'id' => 'lat',
|
299 |
+
'type' => 'text',
|
300 |
+
),
|
301 |
+
array(
|
302 |
+
'name' => 'Marker Longitude',
|
303 |
+
'id' => 'lng',
|
304 |
+
'type' => 'text',
|
305 |
+
),
|
306 |
+
array(
|
307 |
+
'name' => 'Marker Data',
|
308 |
+
'id' => 'marker',
|
309 |
+
'type' => 'textarea_code',
|
310 |
+
),
|
311 |
+
array(
|
312 |
+
'name' => 'Marker Label Data',
|
313 |
+
'id' => 'label',
|
314 |
+
'type' => 'textarea_code',
|
315 |
+
),
|
316 |
+
),
|
317 |
+
),
|
318 |
+
),
|
319 |
+
);
|
320 |
+
|
321 |
+
|
322 |
+
$meta_boxes['google_maps_search_options'] = array(
|
323 |
+
'id' => 'google_maps_search_options',
|
324 |
+
'title' => __( 'Google Places', $this->plugin_slug ),
|
325 |
+
'pages' => array( 'google_maps' ), // post type
|
326 |
+
'context' => 'normal', // 'normal', 'advanced', or 'side'
|
327 |
+
'priority' => 'core', // 'high', 'core', 'default' or 'low'
|
328 |
+
'show_names' => true, // Show field names on the left
|
329 |
+
'fields' => array(
|
330 |
+
array(
|
331 |
+
'name' => __( 'Show Places?', $this->plugin_slug ),
|
332 |
+
'desc' => __( 'Display establishments, prominent points of interest, geographic locations, and more.', $this->plugin_slug ),
|
333 |
+
'id' => $prefix . 'show_places',
|
334 |
+
'type' => 'radio_inline',
|
335 |
+
'options' => array(
|
336 |
+
'yes' => __( 'Yes', 'cmb' ),
|
337 |
+
'no' => __( 'No', 'cmb' ),
|
338 |
+
),
|
339 |
+
),
|
340 |
+
array(
|
341 |
+
'name' => __( 'Search Radius', $this->plugin_slug ),
|
342 |
+
'desc' => __( 'Defines the distance (in meters) within which to return Place results. The maximum allowed radius is 50,000 meters.', $this->plugin_slug ),
|
343 |
+
'std' => '1000',
|
344 |
+
'id' => $prefix . 'search_radius',
|
345 |
+
'type' => 'text_small'
|
346 |
+
),
|
347 |
+
array(
|
348 |
+
'name' => __( 'Place Types', $this->plugin_slug ),
|
349 |
+
'desc' => __( 'Select which type of places you would like to display on this map.', $this->plugin_slug ),
|
350 |
+
'id' => $prefix . 'places_search_multicheckbox',
|
351 |
+
'type' => 'multicheck',
|
352 |
+
'options' => array(
|
353 |
+
'accounting' => __( 'Accounting', $this->plugin_slug ),
|
354 |
+
'airport' => __( 'Airport', $this->plugin_slug ),
|
355 |
+
'amusement_park' => __( 'Amusement Park', $this->plugin_slug ),
|
356 |
+
'aquarium' => __( 'Aquarium', $this->plugin_slug ),
|
357 |
+
'art_gallery' => __( 'Art Gallery', $this->plugin_slug ),
|
358 |
+
'atm' => __( 'ATM', $this->plugin_slug ),
|
359 |
+
'bakery' => __( 'Bakery', $this->plugin_slug ),
|
360 |
+
'bank' => __( 'Bank', $this->plugin_slug ),
|
361 |
+
'bar' => __( 'Bar', $this->plugin_slug ),
|
362 |
+
'beauty_salon' => __( 'Beauty Salon', $this->plugin_slug ),
|
363 |
+
'bicycle_store' => __( 'Bicycle Store', $this->plugin_slug ),
|
364 |
+
'book_store' => __( 'Book Store', $this->plugin_slug ),
|
365 |
+
'bowling_alley' => __( 'Bowling Alley', $this->plugin_slug ),
|
366 |
+
'bus_station' => __( 'Bus Station', $this->plugin_slug ),
|
367 |
+
'cafe' => __( 'Cafe', $this->plugin_slug ),
|
368 |
+
'campground' => __( 'Campground', $this->plugin_slug ),
|
369 |
+
'car_dealer' => __( 'Car Dealer', $this->plugin_slug ),
|
370 |
+
'car_rental' => __( 'Car Rental', $this->plugin_slug ),
|
371 |
+
'car_repair' => __( 'Car Repair', $this->plugin_slug ),
|
372 |
+
'car_wash' => __( 'Car Wash', $this->plugin_slug ),
|
373 |
+
'casino' => __( 'Casino', $this->plugin_slug ),
|
374 |
+
'cemetery' => __( 'Cemetery', $this->plugin_slug ),
|
375 |
+
'church' => __( 'Church', $this->plugin_slug ),
|
376 |
+
'city_hall' => __( 'City Hall', $this->plugin_slug ),
|
377 |
+
'clothing_store' => __( 'Clothing Store', $this->plugin_slug ),
|
378 |
+
'convenience_store' => __( 'Convenience Store', $this->plugin_slug ),
|
379 |
+
'courthouse' => __( 'Courthouse', $this->plugin_slug ),
|
380 |
+
'dentist' => __( 'Dentist', $this->plugin_slug ),
|
381 |
+
'department_store' => __( 'Department Store', $this->plugin_slug ),
|
382 |
+
'doctor' => __( 'Doctor', $this->plugin_slug ),
|
383 |
+
'electrician' => __( 'Electrician', $this->plugin_slug ),
|
384 |
+
'electronics_store' => __( 'Electronics Store', $this->plugin_slug ),
|
385 |
+
'embassy' => __( 'Embassy', $this->plugin_slug ),
|
386 |
+
'establishment' => __( 'Establishment', $this->plugin_slug ),
|
387 |
+
'finance' => __( 'Finance', $this->plugin_slug ),
|
388 |
+
'fire_station' => __( 'Fire Station', $this->plugin_slug ),
|
389 |
+
'florist' => __( 'Florist', $this->plugin_slug ),
|
390 |
+
'food' => __( 'Food', $this->plugin_slug ),
|
391 |
+
'funeral_home' => __( 'Funeral Home', $this->plugin_slug ),
|
392 |
+
'furniture_store' => __( 'Furniture_store', $this->plugin_slug ),
|
393 |
+
'gas_station' => __( 'Gas Station', $this->plugin_slug ),
|
394 |
+
'general_contractor' => __( 'General Contractor', $this->plugin_slug ),
|
395 |
+
'grocery_or_supermarket' => __( 'Grocery or Supermarket', $this->plugin_slug ),
|
396 |
+
'gym' => __( 'Gym', $this->plugin_slug ),
|
397 |
+
'hair_care' => __( 'Hair Care', $this->plugin_slug ),
|
398 |
+
'hardware_store' => __( 'Hardware Store', $this->plugin_slug ),
|
399 |
+
'health' => __( 'Health', $this->plugin_slug ),
|
400 |
+
'hindu_temple' => __( 'Hindu Temple', $this->plugin_slug ),
|
401 |
+
'home_goods_store' => __( 'Home Goods Store', $this->plugin_slug ),
|
402 |
+
'hospital' => __( 'Hospital', $this->plugin_slug ),
|
403 |
+
'insurance_agency' => __( 'Insurance Agency', $this->plugin_slug ),
|
404 |
+
'jewelry_store' => __( 'Jewelry Store', $this->plugin_slug ),
|
405 |
+
'laundry' => __( 'Laundry', $this->plugin_slug ),
|
406 |
+
'lawyer' => __( 'Lawyer', $this->plugin_slug ),
|
407 |
+
'library' => __( 'Library', $this->plugin_slug ),
|
408 |
+
'liquor_store' => __( 'Liquor Store', $this->plugin_slug ),
|
409 |
+
'local_government_office' => __( 'Local Government Office', $this->plugin_slug ),
|
410 |
+
'locksmith' => __( 'Locksmith', $this->plugin_slug ),
|
411 |
+
'lodging' => __( 'Lodging', $this->plugin_slug ),
|
412 |
+
'meal_delivery' => __( 'Meal Delivery', $this->plugin_slug ),
|
413 |
+
'meal_takeaway' => __( 'Meal Takeaway', $this->plugin_slug ),
|
414 |
+
'mosque' => __( 'Mosque', $this->plugin_slug ),
|
415 |
+
'movie_rental' => __( 'Movie Rental', $this->plugin_slug ),
|
416 |
+
'movie_theater' => __( 'Movie Theater', $this->plugin_slug ),
|
417 |
+
'moving_company' => __( 'Moving Company', $this->plugin_slug ),
|
418 |
+
'museum' => __( 'Museum', $this->plugin_slug ),
|
419 |
+
'night_club' => __( 'Night Club', $this->plugin_slug ),
|
420 |
+
'painter' => __( 'Painter', $this->plugin_slug ),
|
421 |
+
'park' => __( 'Park', $this->plugin_slug ),
|
422 |
+
'parking' => __( 'Parking', $this->plugin_slug ),
|
423 |
+
'pet_store' => __( 'Pet Store', $this->plugin_slug ),
|
424 |
+
'pharmacy' => __( 'Pharmacy', $this->plugin_slug ),
|
425 |
+
'physiotherapist' => __( 'Physiotherapist', $this->plugin_slug ),
|
426 |
+
'place_of_worship' => __( 'Place of Worship', $this->plugin_slug ),
|
427 |
+
'plumber' => __( 'Plumber', $this->plugin_slug ),
|
428 |
+
'police' => __( 'Police', $this->plugin_slug ),
|
429 |
+
'post_office' => __( 'Post Office', $this->plugin_slug ),
|
430 |
+
'real_estate_agency' => __( 'Real Estate Agency', $this->plugin_slug ),
|
431 |
+
'restaurant' => __( 'Restaurant', $this->plugin_slug ),
|
432 |
+
'roofing_contractor' => __( 'Roofing Contractor', $this->plugin_slug ),
|
433 |
+
'rv_park' => __( 'RV Park', $this->plugin_slug ),
|
434 |
+
'school' => __( 'School', $this->plugin_slug ),
|
435 |
+
'shoe_store' => __( 'Shoe Store', $this->plugin_slug ),
|
436 |
+
'shopping_mall' => __( 'Shopping Mall', $this->plugin_slug ),
|
437 |
+
'spa' => __( 'Spa', $this->plugin_slug ),
|
438 |
+
'stadium' => __( 'Stadium', $this->plugin_slug ),
|
439 |
+
'storage' => __( 'Storage', $this->plugin_slug ),
|
440 |
+
'store' => __( 'Store', $this->plugin_slug ),
|
441 |
+
'subway_station' => __( 'Subway Station', $this->plugin_slug ),
|
442 |
+
'synagogue' => __( 'Synagogue', $this->plugin_slug ),
|
443 |
+
'taxi_stand' => __( 'Taxi Stand', $this->plugin_slug ),
|
444 |
+
'train_station' => __( 'Train Station', $this->plugin_slug ),
|
445 |
+
'travel_agency' => __( 'Travel Agency', $this->plugin_slug ),
|
446 |
+
'university' => __( 'University', $this->plugin_slug ),
|
447 |
+
'veterinary_care' => __( 'Veterinary Care', $this->plugin_slug ),
|
448 |
+
'zoo' => __( 'Zoo', $this->plugin_slug )
|
449 |
+
),
|
450 |
+
),
|
451 |
+
),
|
452 |
+
);
|
453 |
+
|
454 |
+
$meta_boxes['google_maps_options'] = array(
|
455 |
+
'id' => 'google_maps_options',
|
456 |
+
'title' => __( 'Google Map Display Options', $this->plugin_slug ),
|
457 |
+
'pages' => array( 'google_maps' ), // post type
|
458 |
+
'context' => 'side', // 'normal', 'advanced', or 'side'
|
459 |
+
'priority' => 'default', // 'high', 'core', 'default' or 'low'
|
460 |
+
'show_names' => true, // Show field names on the left
|
461 |
+
'fields' => array(
|
462 |
+
array(
|
463 |
+
'name' => __( 'Map Size', $this->plugin_slug ),
|
464 |
+
'id' => $prefix . 'width_height',
|
465 |
+
'type' => 'width_height',
|
466 |
+
'width_std' => $default_options['width'],
|
467 |
+
'width_unit_std' => $default_options['width_unit'],
|
468 |
+
'height_std' => $default_options['height'],
|
469 |
+
'desc' => '',
|
470 |
+
),
|
471 |
+
array(
|
472 |
+
'name' => __( 'Map Location', $this->plugin_slug ),
|
473 |
+
'id' => $prefix . 'lat_lng',
|
474 |
+
'type' => 'lat_lng',
|
475 |
+
'lat_std' => '',
|
476 |
+
'lng_std' => '',
|
477 |
+
'desc' => '',
|
478 |
+
),
|
479 |
+
|
480 |
+
array(
|
481 |
+
'name' => 'Map Type',
|
482 |
+
'id' => $prefix . 'type',
|
483 |
+
'type' => 'select',
|
484 |
+
'std' => 'default',
|
485 |
+
'options' => array(
|
486 |
+
array( 'name' => __( 'Road Map', $this->plugin_slug ), 'value' => 'RoadMap' ),
|
487 |
+
array( 'name' => __( 'Satellite', $this->plugin_slug ), 'value' => 'Satellite' ),
|
488 |
+
array( 'name' => __( 'Hybrid', $this->plugin_slug ), 'value' => 'Hybrid' ),
|
489 |
+
array( 'name' => __( 'Terrain', $this->plugin_slug ), 'value' => 'Terrain' ),
|
490 |
+
),
|
491 |
+
),
|
492 |
+
array(
|
493 |
+
'name' => 'Map Theme',
|
494 |
+
'desc' => sprintf( __( 'Set optional preconfigured styles. <a href="%s" class="snazzy-link new-window" target="_blank">Snazzy Maps</a>', $this->plugin_slug ), esc_url( 'http://snazzymaps.com' ) ),
|
495 |
+
'id' => $prefix . 'theme',
|
496 |
+
'type' => 'select',
|
497 |
+
'std' => 'none',
|
498 |
+
'options' => array(
|
499 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
500 |
+
array( 'name' => __( 'Aqua', $this->plugin_slug ), 'value' => '68' ),
|
501 |
+
array( 'name' => __( 'A Dark World', $this->plugin_slug ), 'value' => '73' ),
|
502 |
+
array( 'name' => __( 'Bluish', $this->plugin_slug ), 'value' => '28' ),
|
503 |
+
array( 'name' => __( 'Cool Grey', $this->plugin_slug ), 'value' => '80' ),
|
504 |
+
array( 'name' => __( 'Clean Cut', $this->plugin_slug ), 'value' => '77' ),
|
505 |
+
array( 'name' => __( 'Flat Green', $this->plugin_slug ), 'value' => '36' ),
|
506 |
+
array( 'name' => __( 'MapBox', $this->plugin_slug ), 'value' => '44' ),
|
507 |
+
array( 'name' => __( 'Muted Blue', $this->plugin_slug ), 'value' => '83' ),
|
508 |
+
array( 'name' => __( 'Old Timey', $this->plugin_slug ), 'value' => '22' ),
|
509 |
+
array( 'name' => __( 'Pale Dawn', $this->plugin_slug ), 'value' => '1' ),
|
510 |
+
array( 'name' => __( 'Paper', $this->plugin_slug ), 'value' => '19' ),
|
511 |
+
array( 'name' => __( 'Lunar Landscape', $this->plugin_slug ), 'value' => '37' ),
|
512 |
+
array( 'name' => __( 'Shade of Green', $this->plugin_slug ), 'value' => '75' ),
|
513 |
+
array( 'name' => __( 'Shift Worker', $this->plugin_slug ), 'value' => '27' ),
|
514 |
+
array( 'name' => __( 'Subtle Grayscale', $this->plugin_slug ), 'value' => '15' ),
|
515 |
+
array( 'name' => __( 'The Endless Atlas', $this->plugin_slug ), 'value' => '50' ),
|
516 |
+
),
|
517 |
+
),
|
518 |
+
array(
|
519 |
+
'name' => 'Map Theme JSON',
|
520 |
+
'desc' => 'Contains the map theme JSON',
|
521 |
+
'default' => 'none',
|
522 |
+
'id' => $prefix . 'theme_json',
|
523 |
+
'type' => 'textarea_code'
|
524 |
+
),
|
525 |
+
array(
|
526 |
+
'name' => 'Zoom',
|
527 |
+
'desc' => __( 'Adjust the map zoom (0-21)', $this->plugin_slug ),
|
528 |
+
'id' => $prefix . 'zoom',
|
529 |
+
'type' => 'select',
|
530 |
+
'std' => '15',
|
531 |
+
'options' => array(
|
532 |
+
array( 'name' => '21', 'value' => '21' ),
|
533 |
+
array( 'name' => '20', 'value' => '20' ),
|
534 |
+
array( 'name' => '19', 'value' => '19' ),
|
535 |
+
array( 'name' => '18', 'value' => '18' ),
|
536 |
+
array( 'name' => '17', 'value' => '17' ),
|
537 |
+
array( 'name' => '16', 'value' => '16' ),
|
538 |
+
array( 'name' => '15', 'value' => '15' ),
|
539 |
+
array( 'name' => '14', 'value' => '14' ),
|
540 |
+
array( 'name' => '13', 'value' => '13' ),
|
541 |
+
array( 'name' => '12', 'value' => '12' ),
|
542 |
+
array( 'name' => '11', 'value' => '11' ),
|
543 |
+
array( 'name' => '10', 'value' => '10' ),
|
544 |
+
array( 'name' => '9', 'value' => '9' ),
|
545 |
+
array( 'name' => '8', 'value' => '8' ),
|
546 |
+
array( 'name' => '7', 'value' => '7' ),
|
547 |
+
array( 'name' => '6', 'value' => '6' ),
|
548 |
+
array( 'name' => '5', 'value' => '5' ),
|
549 |
+
array( 'name' => '4', 'value' => '4' ),
|
550 |
+
array( 'name' => '3', 'value' => '3' ),
|
551 |
+
array( 'name' => '2', 'value' => '2' ),
|
552 |
+
array( 'name' => '1', 'value' => '1' ),
|
553 |
+
array( 'name' => '0', 'value' => '0' ),
|
554 |
+
|
555 |
+
)
|
556 |
+
),
|
557 |
+
array(
|
558 |
+
'name' => 'Custom Map Marker Icon',
|
559 |
+
'desc' => 'Use a custom map marker for the map.',
|
560 |
+
'id' => $prefix . 'map_marker',
|
561 |
+
'type' => 'file',
|
562 |
+
'allow' => array( 'url', 'attachment' ),
|
563 |
+
),
|
564 |
+
),
|
565 |
+
);
|
566 |
+
|
567 |
+
$meta_boxes['google_maps_control_options'] = array(
|
568 |
+
'id' => 'google_maps_control_options',
|
569 |
+
'title' => __( 'Google Map Control Options', $this->plugin_slug ),
|
570 |
+
'pages' => array( 'google_maps' ), // post type
|
571 |
+
'context' => 'side', // 'normal', 'advanced', or 'side'
|
572 |
+
'priority' => 'default', // 'high', 'core', 'default' or 'low'
|
573 |
+
'show_names' => true, // Show field names on the left
|
574 |
+
'fields' => array(
|
575 |
+
array(
|
576 |
+
'name' => 'Zoom Control',
|
577 |
+
'id' => $prefix . 'zoom_control',
|
578 |
+
'type' => 'select',
|
579 |
+
'std' => 'default',
|
580 |
+
'options' => array(
|
581 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
582 |
+
array( 'name' => __( 'Small', $this->plugin_slug ), 'value' => 'small' ),
|
583 |
+
array( 'name' => __( 'Large', $this->plugin_slug ), 'value' => 'large' ),
|
584 |
+
array( 'name' => __( 'Default', $this->plugin_slug ), 'value' => 'default' ),
|
585 |
+
),
|
586 |
+
),
|
587 |
+
array(
|
588 |
+
'name' => 'Street View',
|
589 |
+
'id' => $prefix . 'street_view',
|
590 |
+
'type' => 'select',
|
591 |
+
'std' => 'true',
|
592 |
+
'options' => array(
|
593 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
594 |
+
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
595 |
+
),
|
596 |
+
),
|
597 |
+
array(
|
598 |
+
'name' => 'Pan Control',
|
599 |
+
'id' => $prefix . 'pan',
|
600 |
+
'type' => 'select',
|
601 |
+
'std' => 'true',
|
602 |
+
'options' => array(
|
603 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
604 |
+
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
605 |
+
),
|
606 |
+
),
|
607 |
+
array(
|
608 |
+
'name' => 'Map Type Control',
|
609 |
+
'id' => $prefix . 'map_type_control',
|
610 |
+
'type' => 'select',
|
611 |
+
'std' => 'horizontal_bar',
|
612 |
+
'options' => array(
|
613 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
614 |
+
array( 'name' => __( 'Dropdown Menu', $this->plugin_slug ), 'value' => 'dropdown_menu' ),
|
615 |
+
array( 'name' => __( 'Horizontal Bar', $this->plugin_slug ), 'value' => 'horizontal_bar' ),
|
616 |
+
),
|
617 |
+
),
|
618 |
+
|
619 |
+
array(
|
620 |
+
'name' => 'Draggable Map',
|
621 |
+
'id' => $prefix . 'draggable',
|
622 |
+
'type' => 'select',
|
623 |
+
'std' => 'true',
|
624 |
+
'options' => array(
|
625 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
626 |
+
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
627 |
+
),
|
628 |
+
),
|
629 |
+
array(
|
630 |
+
'name' => 'Double Click to Zoom',
|
631 |
+
'id' => $prefix . 'double_click',
|
632 |
+
'type' => 'select',
|
633 |
+
'std' => 'true',
|
634 |
+
'options' => array(
|
635 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
636 |
+
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
637 |
+
),
|
638 |
+
),
|
639 |
+
array(
|
640 |
+
'name' => 'Mouse Wheel to Zoom',
|
641 |
+
'id' => $prefix . 'wheel_zoom',
|
642 |
+
'type' => 'select',
|
643 |
+
'std' => 'none',
|
644 |
+
'options' => array(
|
645 |
+
array( 'name' => __( 'None', $this->plugin_slug ), 'value' => 'none' ),
|
646 |
+
array( 'name' => __( 'Standard', $this->plugin_slug ), 'value' => 'true' ),
|
647 |
+
),
|
648 |
+
),
|
649 |
+
),
|
650 |
+
|
651 |
+
);
|
652 |
+
|
653 |
+
return $meta_boxes;
|
654 |
+
|
655 |
+
}
|
656 |
+
|
657 |
+
|
658 |
+
/**
|
659 |
+
* CMB Width Height
|
660 |
+
*
|
661 |
+
* Custom CMB field for Gmap width and height
|
662 |
+
*
|
663 |
+
* @param $field
|
664 |
+
* @param $meta
|
665 |
+
*/
|
666 |
+
function cmb_render_width_height( $field, $meta ) {
|
667 |
+
$default_options = $this->get_default_map_options();
|
668 |
+
$meta = wp_parse_args(
|
669 |
+
$meta, array(
|
670 |
+
'width' => $default_options['width'],
|
671 |
+
'height' => $default_options['height'],
|
672 |
+
'map_width_unit' => $default_options['width_unit'],
|
673 |
+
)
|
674 |
+
);
|
675 |
+
|
676 |
+
$output = '<div id="width_height_wrap" class="clear">';
|
677 |
+
//width
|
678 |
+
$output .= '<div id="width_wrap" class="clear">';
|
679 |
+
$output .= '<label class="width-label size-label">Width:</label><input type="text" class="regular-text map-width" name="' . $field['id'] . '[width]" id="' . $field['id'] . '-width" value="' . ( $meta['width'] ? $meta['width'] : $field['width_std'] ) . '" />';
|
680 |
+
$output .= '<div id="size_labels_wrap">';
|
681 |
+
$output .= '<input id="width_unit_percent" type="radio" name="' . $field['id'] . '[map_width_unit]" class="width_radio" value="%" ' . ( $meta['map_width_unit'] === '%' || $field['width_unit_std'] === '%' ? 'checked="checked"' : '' ) . '><label class="width_unit_label">%</label>';
|
682 |
+
$output .= '<input id="width_unit_px" type="radio" name="' . $field['id'] . '[map_width_unit]" class="width_radio" value="px" ' . ( $meta['map_width_unit'] === 'px' ? 'checked="checked"' : '' ) . ' ><label class="width_unit_label">px</label>';
|
683 |
+
$output .= '</div>';
|
684 |
+
$output .= '</div>';
|
685 |
+
|
686 |
+
//height
|
687 |
+
$output .= '<div id="height_wrap" class="clear">';
|
688 |
+
$output .= '<label for="' . $field['id'] . '[height]" class="height-label size-label">Height:</label><input type="text" class="regular-text map-height" name="' . $field['id'] . '[height]" id="' . $field['id'] . '-height" value="' . ( $meta['height'] ? $meta['height'] : $field['height_std'] ) . '" />';
|
689 |
+
$output .= '</div>';
|
690 |
+
$output .= '</div>';
|
691 |
+
|
692 |
+
|
693 |
+
echo $output;
|
694 |
+
|
695 |
+
|
696 |
+
}
|
697 |
+
|
698 |
+
|
699 |
+
/**
|
700 |
+
* CMB Lat Lng
|
701 |
+
*
|
702 |
+
* Custom CMB field for Gmap latitude and longitude
|
703 |
+
*
|
704 |
+
* @param $field
|
705 |
+
* @param $meta
|
706 |
+
*/
|
707 |
+
function cmb_render_lat_lng( $field, $meta ) {
|
708 |
+
$meta = wp_parse_args(
|
709 |
+
$meta, array(
|
710 |
+
'latitude' => '',
|
711 |
+
'longitude' => '',
|
712 |
+
)
|
713 |
+
);
|
714 |
+
|
715 |
+
//lat lng
|
716 |
+
$output = '<div id="lat-lng-wrap">
|
717 |
+
<div class="coordinates-wrap clear">
|
718 |
+
<div class="lat-lng-wrap lat-wrap clear"><span>Latitude: </span>
|
719 |
+
<input type="text" class="regular-text latitude" name="' . $field['id'] . '[latitude]" id="' . $field['id'] . '-latitude" value="' . ( $meta['latitude'] ? $meta['latitude'] : $field['lat_std'] ) . '" />
|
720 |
+
</div>
|
721 |
+
<div class="lat-lng-wrap lng-wrap clear"><span>Longitude: </span>
|
722 |
+
<input type="text" class="regular-text longitude" name="' . $field['id'] . '[longitude]" id="' . $field['id'] . '-longitude" value="' . ( $meta['longitude'] ? $meta['longitude'] : $field['lng_std'] ) . '" />
|
723 |
+
</div>';
|
724 |
+
$output .= '<div class="wpgp-message lat-lng-change-message clear"><p>Lat/lng changed</p><a href="#" class="button lat-lng-update-btn button-small" data-lat="" data-lng="">Update</a></div>';
|
725 |
+
$output .= '</div><!-- /.coordinates-wrap -->
|
726 |
+
</div>';
|
727 |
+
|
728 |
+
|
729 |
+
echo $output;
|
730 |
+
|
731 |
+
|
732 |
+
}
|
733 |
+
|
734 |
+
/**
|
735 |
+
* Custom Google Geocoder field
|
736 |
+
* @since 1.0.0
|
737 |
+
* @return array
|
738 |
+
*/
|
739 |
+
function cmb_render_google_geocoder( $field, $meta ) {
|
740 |
+
|
741 |
+
$meta = wp_parse_args(
|
742 |
+
$meta, array(
|
743 |
+
'geocode' => '',
|
744 |
+
)
|
745 |
+
);
|
746 |
+
|
747 |
+
echo '<div class="autocomplete-wrap"><input type="text" name="' . $field['id'] . '[geocode]" id="' . $field['id'] . '" value="" class="search-autocomplete" /><p class="autocomplete-description">' .
|
748 |
+
sprintf( __( 'Enter the name of a place or an address above to create a map marker or %s', $this->plugin_slug ), '<a href="#" class="drop-marker button button-small">Drop a Marker</a>' ) .
|
749 |
+
'</p></div>';
|
750 |
+
|
751 |
+
//'desc' => sprintf( __( 'Set optional preconfigured styles. <a href="%s" class="snazzy-link new-window" target="_blank">Snazzy Maps</a>', $this->plugin_slug ), esc_url( 'http://snazzymaps.com' ) ),
|
752 |
+
|
753 |
+
|
754 |
+
//Markers Modal
|
755 |
+
add_thickbox();
|
756 |
+
include( 'views/markers.php' );
|
757 |
+
|
758 |
+
}
|
759 |
+
|
760 |
+
/**
|
761 |
+
* Custom Google Geocoder field
|
762 |
+
* @since 1.0.0
|
763 |
+
*/
|
764 |
+
function cmb_render_google_maps_preview( $field, $meta ) {
|
765 |
+
global $post;
|
766 |
+
$meta = wp_parse_args( $meta, array() );
|
767 |
+
$wh_value = get_post_meta( $post->ID, 'gmb_width_height', true );
|
768 |
+
$default_options = $this->get_default_map_options();
|
769 |
+
|
770 |
+
|
771 |
+
$map_height = isset( $wh_value['height'] ) ? $wh_value['height'] : $default_options['height'];
|
772 |
+
$map_width = isset( $wh_value['width'] ) ? $wh_value['width'] : $default_options['width'];
|
773 |
+
$map_width_val = isset( $wh_value['map_width_unit'] ) ? $wh_value['map_width_unit'] : $default_options['width_unit'];
|
774 |
+
|
775 |
+
$output = '<div class="places-loading wpgp-loading">Loading Places</div><div id="google-map-wrap">';
|
776 |
+
$output .= '<div id="map" style="height:' . $map_height . 'px; width:' . $map_width . $map_width_val . '"></div>';
|
777 |
+
$output .= '</div>';
|
778 |
+
$output .= '<div class="warning-message wpgp-message"></div>';
|
779 |
+
|
780 |
+
echo $output;
|
781 |
+
|
782 |
+
}
|
783 |
+
|
784 |
+
|
785 |
} //end class
|
admin/class-wordpress-google-maps-settings.php
CHANGED
@@ -1,422 +1,423 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
|
4 |
-
*
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
*
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
-
|
20 |
-
|
21 |
-
*
|
22 |
-
|
23 |
-
|
24 |
-
|
25 |
-
|
26 |
-
|
27 |
-
|
28 |
-
*
|
29 |
-
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
$
|
34 |
-
$this->
|
35 |
-
|
36 |
-
|
37 |
-
|
38 |
-
|
39 |
-
add_action( '
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
add_action( 'admin_enqueue_scripts', array( $this, '
|
44 |
-
add_action( '
|
45 |
-
add_action( '
|
46 |
-
add_action( '
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
add_filter( '
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
*
|
58 |
-
*
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
$
|
68 |
-
|
69 |
-
|
70 |
-
if
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
$pointer_content
|
91 |
-
$pointer_content .= '<
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
*
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
*
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
__( 'Settings', $this->plugin_slug ),
|
137 |
-
'
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
*
|
147 |
-
*
|
148 |
-
*
|
149 |
-
*
|
150 |
-
*
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
$
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
wp_enqueue_style( $this->plugin_slug . '-settings-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
*
|
171 |
-
*
|
172 |
-
*
|
173 |
-
*
|
174 |
-
*
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
$
|
179 |
-
$
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
*
|
195 |
-
*
|
196 |
-
*
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
*
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
*
|
219 |
-
*
|
220 |
-
* @
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
'
|
234 |
-
'
|
235 |
-
'
|
236 |
-
|
237 |
-
|
238 |
-
'
|
239 |
-
'default'
|
240 |
-
'
|
241 |
-
'
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
'
|
246 |
-
'
|
247 |
-
'
|
248 |
-
'
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
'
|
253 |
-
'
|
254 |
-
'
|
255 |
-
'
|
256 |
-
|
257 |
-
'
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
*
|
270 |
-
*
|
271 |
-
* @
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
'
|
285 |
-
'
|
286 |
-
'
|
287 |
-
|
288 |
-
|
289 |
-
'
|
290 |
-
'
|
291 |
-
'
|
292 |
-
'
|
293 |
-
'
|
294 |
-
'
|
295 |
-
'
|
296 |
-
'
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
'
|
301 |
-
'
|
302 |
-
'
|
303 |
-
'
|
304 |
-
'
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
'
|
309 |
-
'
|
310 |
-
'
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
*
|
322 |
-
*
|
323 |
-
*
|
324 |
-
*
|
325 |
-
* @param $
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
'
|
333 |
-
'
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
$output
|
340 |
-
$output .= '<
|
341 |
-
$output .= '<
|
342 |
-
|
343 |
-
|
344 |
-
$output .= '</
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
$output .= '<div
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
<
|
353 |
-
|
354 |
-
|
355 |
-
$output .= '
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
*
|
368 |
-
* @
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
*
|
378 |
-
*
|
379 |
-
*
|
380 |
-
*
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
$meta[] =
|
400 |
-
$meta[] = __( '
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
*
|
415 |
-
*
|
416 |
-
*
|
417 |
-
*
|
418 |
-
*
|
419 |
-
|
420 |
-
|
421 |
-
|
|
|
422 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* CMB Theme Options
|
5 |
+
* @version 0.1.0
|
6 |
+
*/
|
7 |
+
class Google_Maps_Builder_Settings {
|
8 |
+
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Array of metaboxes/fields
|
12 |
+
* @var array
|
13 |
+
*/
|
14 |
+
protected static $plugin_options = array();
|
15 |
+
|
16 |
+
public $plugin_slug;
|
17 |
+
|
18 |
+
public $options_page;
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Option key, and option page slug
|
22 |
+
* @var string
|
23 |
+
*/
|
24 |
+
protected static $key = 'gmb_settings';
|
25 |
+
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Constructor
|
29 |
+
* @since 0.1.0
|
30 |
+
*/
|
31 |
+
public function __construct() {
|
32 |
+
|
33 |
+
$plugin = Google_Maps_Builder::get_instance();
|
34 |
+
$this->plugin_slug = $plugin->get_plugin_slug();
|
35 |
+
$this->meta = $plugin->meta;
|
36 |
+
|
37 |
+
|
38 |
+
//Create Settings submenu
|
39 |
+
add_action( 'admin_init', array( $this, 'mninit' ) );
|
40 |
+
add_action( 'admin_menu', array( $this, 'add_page' ) );
|
41 |
+
|
42 |
+
// Load admin style sheet and JavaScript.
|
43 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_styles' ) );
|
44 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_admin_scripts' ) );
|
45 |
+
add_action( 'wp_ajax_hide_welcome', array( $this, 'hide_welcome_callback' ) );
|
46 |
+
add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_pointer_script_style' ) );
|
47 |
+
add_action( 'cmb_render_lat_lng_default', array( $this, 'cmb_render_lat_lng_default' ), 10, 2 );
|
48 |
+
|
49 |
+
//Add links/information to plugin row meta
|
50 |
+
add_filter( 'plugin_row_meta', array( $this, 'add_plugin_meta_links' ), 10, 2 );
|
51 |
+
add_filter( 'plugin_action_links', array( $this, 'add_plugin_page_links' ), 10, 2 );
|
52 |
+
|
53 |
+
}
|
54 |
+
|
55 |
+
|
56 |
+
/**
|
57 |
+
* Activation Welcome Tooltip Scripts
|
58 |
+
*
|
59 |
+
* @param $hook_suffix
|
60 |
+
*/
|
61 |
+
function enqueue_pointer_script_style( $hook_suffix ) {
|
62 |
+
|
63 |
+
// Assume pointer shouldn't be shown
|
64 |
+
$enqueue_pointer_script_style = false;
|
65 |
+
|
66 |
+
// Get array list of dismissed pointers for current user and convert it to array
|
67 |
+
$dismissed_pointers = explode( ',', get_user_meta( get_current_user_id(), 'dismissed_wp_pointers', true ) );
|
68 |
+
$key = array_search( 'gmb_welcome_pointer', $dismissed_pointers ); // $key = 2;
|
69 |
+
|
70 |
+
// Check if our pointer is not among dismissed ones
|
71 |
+
if ( ! in_array( 'gmb_welcome_pointer', $dismissed_pointers ) ) {
|
72 |
+
$enqueue_pointer_script_style = true;
|
73 |
+
|
74 |
+
// Add footer scripts using callback function
|
75 |
+
add_action( 'admin_print_footer_scripts', array( $this, 'welcome_pointer_print_scripts' ) );
|
76 |
+
}
|
77 |
+
|
78 |
+
// Enqueue pointer CSS and JS files, if needed
|
79 |
+
if ( $enqueue_pointer_script_style ) {
|
80 |
+
wp_enqueue_style( 'wp-pointer' );
|
81 |
+
wp_enqueue_script( 'wp-pointer' );
|
82 |
+
}
|
83 |
+
|
84 |
+
}
|
85 |
+
|
86 |
+
/**
|
87 |
+
* Print Activation Message
|
88 |
+
*/
|
89 |
+
function welcome_pointer_print_scripts() {
|
90 |
+
$pointer_content = '<h3>' . __( 'Welcome to the Google Maps Builder', $this->plugin_slug ) . '</h3>';
|
91 |
+
$pointer_content .= '<p>' . __( 'Thank you for using Google Maps Builder for WordPress. To stay up to date on the latest plugin updates, enhancements and news please sign up for our mailing list.', $this->plugin_slug ) . '</p>';
|
92 |
+
$pointer_content .= '<div id="mc_embed_signup" style="padding: 0 15px;"><form action="http://wordimpress.us3.list-manage2.com/subscribe/post?u=3ccb75d68bda4381e2f45794c&id=83609e2883" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate><div class="mc-field-group" style="margin: 0 0 10px;"><input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL" style="margin-right:5px;width:230px;" placeholder="my.email@wordpress.com"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div><div id="mce-responses" class="clear"><div class="response" id="mce-error-response" style="display:none"></div><div class="response" id="mce-success-response" style="display:none"></div></div><div style="position: absolute; left: -5000px;"><input type="text" name="b_3ccb75d68bda4381e2f45794c_83609e2883" value=""></div></form></div>';
|
93 |
+
?>
|
94 |
+
|
95 |
+
<script type="text/javascript">
|
96 |
+
//<![CDATA[
|
97 |
+
jQuery( document ).ready( function ( $ ) {
|
98 |
+
$( '#menu-posts-google_maps' ).pointer( {
|
99 |
+
content : '<?php echo $pointer_content; ?>',
|
100 |
+
position : {
|
101 |
+
edge : 'left', // arrow direction
|
102 |
+
align: 'center' // vertical alignment
|
103 |
+
},
|
104 |
+
pointerWidth: 350,
|
105 |
+
close : function () {
|
106 |
+
$.post( ajaxurl, {
|
107 |
+
pointer: 'gmb_welcome_pointer', // pointer ID
|
108 |
+
action : 'dismiss-wp-pointer'
|
109 |
+
} );
|
110 |
+
}
|
111 |
+
} ).pointer( 'open' );
|
112 |
+
} );
|
113 |
+
//]]>
|
114 |
+
</script>
|
115 |
+
|
116 |
+
<?php
|
117 |
+
}
|
118 |
+
|
119 |
+
/**
|
120 |
+
* Register our setting to WP
|
121 |
+
* @since 0.1.0
|
122 |
+
*/
|
123 |
+
public function mninit() {
|
124 |
+
|
125 |
+
register_setting( self::$key, self::$key );
|
126 |
+
}
|
127 |
+
|
128 |
+
/**
|
129 |
+
* Add menu options page
|
130 |
+
* @since 1.0.0
|
131 |
+
*/
|
132 |
+
public function add_page() {
|
133 |
+
|
134 |
+
$this->options_page = add_submenu_page(
|
135 |
+
'edit.php?post_type=google_maps',
|
136 |
+
__( 'Google Maps Builder Settings', $this->plugin_slug ),
|
137 |
+
__( 'Settings', $this->plugin_slug ),
|
138 |
+
'manage_options',
|
139 |
+
self::$key,
|
140 |
+
array( $this, 'admin_page_display' )
|
141 |
+
);
|
142 |
+
|
143 |
+
}
|
144 |
+
|
145 |
+
/**
|
146 |
+
* Register and enqueue admin-specific style sheet.
|
147 |
+
*
|
148 |
+
*
|
149 |
+
* @since 1.0.0
|
150 |
+
*
|
151 |
+
* @param $hook
|
152 |
+
*/
|
153 |
+
public function enqueue_admin_styles( $hook ) {
|
154 |
+
|
155 |
+
$suffix = defined( 'GMB_DEBUG' ) && GMB_DEBUG ? '' : '.min';
|
156 |
+
$screen = get_current_screen();
|
157 |
+
|
158 |
+
//Only enqueue scripts for Setting screen
|
159 |
+
if ( $this->options_page == $screen->id ) {
|
160 |
+
|
161 |
+
wp_enqueue_style( $this->plugin_slug . '-settings-grid', plugins_url( 'assets/css/grid' . $suffix . '.css', __FILE__ ), array(), Google_Maps_Builder::VERSION );
|
162 |
+
wp_enqueue_style( $this->plugin_slug . '-settings-styles', plugins_url( 'assets/css/admin-settings' . $suffix . '.css', __FILE__ ), array(), Google_Maps_Builder::VERSION );
|
163 |
+
|
164 |
+
}
|
165 |
+
|
166 |
+
|
167 |
+
}
|
168 |
+
|
169 |
+
/**
|
170 |
+
* Register and enqueue admin-specific JavaScript
|
171 |
+
*
|
172 |
+
*
|
173 |
+
* @since 1.0.0
|
174 |
+
*
|
175 |
+
* @param $hook
|
176 |
+
*/
|
177 |
+
public function enqueue_admin_scripts( $hook ) {
|
178 |
+
global $post;
|
179 |
+
$suffix = defined( 'GMB_DEBUG' ) && GMB_DEBUG ? '' : '.min';
|
180 |
+
$screen = get_current_screen();
|
181 |
+
|
182 |
+
//Only enqueue scripts for Setting screen
|
183 |
+
if ( $this->options_page == $screen->id ) {
|
184 |
+
|
185 |
+
wp_enqueue_script( $this->plugin_slug . '-admin-settings', plugins_url( 'assets/js/admin-settings' . $suffix . '.js', __FILE__ ), array( 'jquery' ), Google_Maps_Builder::VERSION );
|
186 |
+
|
187 |
+
}
|
188 |
+
|
189 |
+
|
190 |
+
}
|
191 |
+
|
192 |
+
|
193 |
+
/**
|
194 |
+
* Hide the Settings welcome on click
|
195 |
+
*
|
196 |
+
* Sets a user meta key that once set
|
197 |
+
*
|
198 |
+
*/
|
199 |
+
public function hide_welcome_callback() {
|
200 |
+
global $current_user;
|
201 |
+
$user_id = $current_user->ID;
|
202 |
+
add_user_meta( $user_id, 'gmb_hide_welcome', 'true', true );
|
203 |
+
wp_die(); // ajax call must die to avoid trailing 0 in your response
|
204 |
+
}
|
205 |
+
|
206 |
+
|
207 |
+
/**
|
208 |
+
* Admin page markup. Mostly handled by CMB
|
209 |
+
* @since 0.1.0
|
210 |
+
*/
|
211 |
+
public function admin_page_display() {
|
212 |
+
|
213 |
+
include( 'views/settings-page.php' );
|
214 |
+
|
215 |
+
}
|
216 |
+
|
217 |
+
/**
|
218 |
+
* General Option Fields
|
219 |
+
* Defines the plugin option metabox and field configuration
|
220 |
+
* @since 1.0.0
|
221 |
+
* @return array
|
222 |
+
*/
|
223 |
+
public function general_option_fields() {
|
224 |
+
|
225 |
+
// Only need to initiate the array once per page-load
|
226 |
+
if ( ! empty( self::$plugin_options ) ) {
|
227 |
+
return self::$plugin_options;
|
228 |
+
}
|
229 |
+
|
230 |
+
$prefix = 'gmb_';
|
231 |
+
|
232 |
+
self::$plugin_options = array(
|
233 |
+
'id' => 'plugin_options',
|
234 |
+
'show_on' => array( 'key' => 'options-page', 'value' => array( self::$key, ), ),
|
235 |
+
'show_names' => true,
|
236 |
+
'fields' => array(
|
237 |
+
array(
|
238 |
+
'name' => __( 'Post Type Slug', $this->plugin_slug ),
|
239 |
+
'desc' => sprintf( __( 'Customize the default slug for this post type. <a href="%s">Resave (flush) permalinks</a> after customizing.', $this->plugin_slug ), esc_url( '/wp-admin/options-permalink.php' ) ),
|
240 |
+
'default' => 'google-maps',
|
241 |
+
'id' => $prefix . 'custom_slug',
|
242 |
+
'type' => 'text_small'
|
243 |
+
),
|
244 |
+
array(
|
245 |
+
'name' => __( 'Menu Position', $this->plugin_slug ),
|
246 |
+
'desc' => sprintf( __( 'Set the menu position for Google Maps Builder. See the <a href="%s" class="new-window">menu_position</a> arg.', $this->plugin_slug ), esc_url( 'http://codex.wordpress.org/Function_Reference/register_post_type#Arguments' ) ),
|
247 |
+
'default' => '21.3',
|
248 |
+
'id' => $prefix . 'menu_position',
|
249 |
+
'type' => 'text_small'
|
250 |
+
),
|
251 |
+
array(
|
252 |
+
'name' => __( 'Has Archive', $this->plugin_slug ),
|
253 |
+
'id' => $prefix . 'has_archive',
|
254 |
+
'desc' => sprintf( __( 'Controls the post type archive page. See <a href="%s">Resave (flush) permalinks</a> after customizing.', $this->plugin_slug ), esc_url( '/wp-admin/options-permalink.php' ) ),
|
255 |
+
'type' => 'radio_inline',
|
256 |
+
'options' => array(
|
257 |
+
'true' => __( 'Yes', 'cmb' ),
|
258 |
+
'false' => __( 'No', 'cmb' ),
|
259 |
+
),
|
260 |
+
),
|
261 |
+
),
|
262 |
+
);
|
263 |
+
|
264 |
+
return self::$plugin_options;
|
265 |
+
|
266 |
+
}
|
267 |
+
|
268 |
+
/**
|
269 |
+
* Map Option Fields
|
270 |
+
* Defines the plugin option metabox and field configuration
|
271 |
+
* @since 1.0.0
|
272 |
+
* @return array
|
273 |
+
*/
|
274 |
+
public function map_option_fields() {
|
275 |
+
|
276 |
+
// Only need to initiate the array once per page-load
|
277 |
+
if ( ! empty( self::$plugin_options ) ) {
|
278 |
+
return self::$plugin_options;
|
279 |
+
}
|
280 |
+
|
281 |
+
$prefix = 'gmb_';
|
282 |
+
|
283 |
+
self::$plugin_options = array(
|
284 |
+
'id' => 'plugin_options',
|
285 |
+
'show_on' => array( 'key' => 'options-page', 'value' => array( self::$key, ), ),
|
286 |
+
'show_names' => true,
|
287 |
+
'fields' => array(
|
288 |
+
array(
|
289 |
+
'name' => __( 'Map Size', $this->plugin_slug ),
|
290 |
+
'id' => $prefix . 'width_height',
|
291 |
+
'type' => 'width_height',
|
292 |
+
'width_std' => '100',
|
293 |
+
'width_unit_std' => '%',
|
294 |
+
'height_std' => '600',
|
295 |
+
'lat_std' => '32.7153292',
|
296 |
+
'lng_std' => '-117.15725509',
|
297 |
+
'desc' => '',
|
298 |
+
),
|
299 |
+
array(
|
300 |
+
'name' => __( 'Map Location', $this->plugin_slug ),
|
301 |
+
'id' => $prefix . 'lat_lng',
|
302 |
+
'type' => 'lat_lng_default',
|
303 |
+
'lat_std' => '32.7153292',
|
304 |
+
'lng_std' => '-117.15725509',
|
305 |
+
'desc' => '',
|
306 |
+
),
|
307 |
+
array(
|
308 |
+
'name' => __( 'Places API Key', $this->plugin_slug ),
|
309 |
+
'desc' => sprintf( __( 'API keys are manage through the <a href="%1$s" class="new-window" target="_blank" class="new-window">Google API Console</a>. For more information please see <a href="%2$s" target="_blank" class="new-window" title="Google Places API Introduction">this article</a>.', $this->plugin_slug ), esc_url( 'https://code.google.com/apis/console/?noredirect' ), esc_url( 'https://developers.google.com/places/documentation/#Authentication' ) ),
|
310 |
+
'id' => $prefix . 'api_key',
|
311 |
+
'type' => 'text',
|
312 |
+
),
|
313 |
+
),
|
314 |
+
);
|
315 |
+
|
316 |
+
return self::$plugin_options;
|
317 |
+
|
318 |
+
}
|
319 |
+
|
320 |
+
/**
|
321 |
+
* CMB Lat Lng
|
322 |
+
*
|
323 |
+
* Custom CMB field for Gmap latitude and longitude
|
324 |
+
*
|
325 |
+
* @param $field
|
326 |
+
* @param $meta
|
327 |
+
*/
|
328 |
+
function cmb_render_lat_lng_default( $field, $meta ) {
|
329 |
+
|
330 |
+
$meta = wp_parse_args(
|
331 |
+
$meta, array(
|
332 |
+
'geolocate_map' => 'yes',
|
333 |
+
'latitude' => '',
|
334 |
+
'longitude' => '',
|
335 |
+
)
|
336 |
+
);
|
337 |
+
|
338 |
+
//Geolocate
|
339 |
+
$output = '<div id="width_wrap" class="clear">';
|
340 |
+
$output .= '<label class="geocode-label size-label">' . __( 'Geolocate Position', $this->plugin_slug ) . ':</label>';
|
341 |
+
$output .= '<div id="size_labels_wrap" class="geolocate-radio-wrap">';
|
342 |
+
$output .= '<input id="geolocate_map_yes" type="radio" name="' . $field['id'] . '[geolocate_map]" class="geolocate_map_radio radio-left" value="yes" ' . ( $meta['geolocate_map'] === 'yes' ? 'checked="checked"' : '' ) . '><label class="yes-label label-left">' . __( 'Yes', $this->plugin_slug ) . '</label>';
|
343 |
+
|
344 |
+
$output .= '<input id="geolocate_map_no" type="radio" name="' . $field['id'] . '[geolocate_map]" class="geolocate_map_radio radio-left" value="no" ' . ( $meta['geolocate_map'] === 'no' ? 'checked="checked"' : '' ) . ' ><label class="no-label label-left">' . __( 'No', $this->plugin_slug ) . '</label>';
|
345 |
+
$output .= '</div>';
|
346 |
+
|
347 |
+
//lat_lng
|
348 |
+
$output .= '<div id="lat-lng-wrap"><div class="coordinates-wrap clear">';
|
349 |
+
$output .= '<div class="lat-lng-wrap lat-wrap clear"><span>Latitude: </span>
|
350 |
+
<input type="text" class="regular-text latitude" name="' . $field['id'] . '[latitude]" id="' . $field['id'] . '-latitude" value="' . ( $meta['latitude'] ? $meta['latitude'] : $field['lat_std'] ) . '" />
|
351 |
+
</div>
|
352 |
+
<div class="lat-lng-wrap lng-wrap clear"><span>Longitude: </span>
|
353 |
+
<input type="text" class="regular-text longitude" name="' . $field['id'] . '[longitude]" id="' . $field['id'] . '-longitude" value="' . ( $meta['longitude'] ? $meta['longitude'] : $field['lng_std'] ) . '" />
|
354 |
+
</div>';
|
355 |
+
$output .= '<p class="small-desc">' . sprintf( __( 'For quick lat/lng lookup use <a href="%s" class="new-window" target="_blank">this service</a>', $this->plugin_slug ), esc_url( 'http://www.latlong.net/' ) ) . '</p>';
|
356 |
+
$output .= '</div><!-- /.search-coordinates-wrap -->
|
357 |
+
</div>';
|
358 |
+
|
359 |
+
|
360 |
+
echo $output;
|
361 |
+
|
362 |
+
|
363 |
+
}
|
364 |
+
|
365 |
+
|
366 |
+
/**
|
367 |
+
* Make public the protected $key variable.
|
368 |
+
* @since 0.1.0
|
369 |
+
* @return string Option key
|
370 |
+
*/
|
371 |
+
public static function key() {
|
372 |
+
return self::$key;
|
373 |
+
}
|
374 |
+
|
375 |
+
|
376 |
+
/**
|
377 |
+
* Add links to Plugin listings view
|
378 |
+
*
|
379 |
+
* @param $links
|
380 |
+
*
|
381 |
+
* @return mixed
|
382 |
+
*/
|
383 |
+
function add_plugin_page_links( $links, $file ) {
|
384 |
+
|
385 |
+
if ( $file == GMB_PLUGIN_BASE ) {
|
386 |
+
|
387 |
+
// Add Widget Page link to our plugin
|
388 |
+
$settings_link = '<a href="edit.php?post_type=google_maps&page=' . self::$key . '" title="' . __( 'Visit the Google Maps Builder plugin settings page', $this->plugin_slug ) . '">' . __( 'Settings', $this->plugin_slug ) . '</a>';
|
389 |
+
array_unshift( $links, $settings_link );
|
390 |
+
|
391 |
+
}
|
392 |
+
|
393 |
+
return $links;
|
394 |
+
}
|
395 |
+
|
396 |
+
function add_plugin_meta_links( $meta, $file ) {
|
397 |
+
|
398 |
+
if ( $file == GMB_PLUGIN_BASE ) {
|
399 |
+
$meta[] = "<a href='http://wordpress.org/support/view/plugin-reviews/google-maps-builder' target='_blank' title='" . __( 'Rate Google Maps Builder on WordPress.org', $this->plugin_slug ) . "'>" . __( 'Rate Plugin', $this->plugin_slug ) . "</a>";
|
400 |
+
$meta[] = '<a href="http://wordpress.org/support/plugin/google-maps-builder/" target="_blank" title="' . __( 'Get plugin support via the WordPress community', $this->plugin_slug ) . '">' . __( 'Support', $this->plugin_slug ) . '</a>';
|
401 |
+
$meta[] = __( 'Thank You for using Google Maps Builder', $this->plugin_slug );
|
402 |
+
}
|
403 |
+
|
404 |
+
return $meta;
|
405 |
+
}
|
406 |
+
|
407 |
+
|
408 |
+
}
|
409 |
+
|
410 |
+
// Get it started
|
411 |
+
$Google_Maps_Builder_Settings = new Google_Maps_Builder_Settings();
|
412 |
+
|
413 |
+
/**
|
414 |
+
* Wrapper function around cmb_get_option
|
415 |
+
* @since 0.1.0
|
416 |
+
*
|
417 |
+
* @param string $key Options array key
|
418 |
+
*
|
419 |
+
* @return mixed Option value
|
420 |
+
*/
|
421 |
+
function gmb_get_option( $key = '' ) {
|
422 |
+
return cmb_get_option( Google_Maps_Builder_Settings::key(), $key );
|
423 |
}
|
admin/includes/tooltips/jquery.qtip.css
CHANGED
@@ -1,513 +1,513 @@
|
|
1 |
-
/*
|
2 |
-
* qTip2 - Pretty powerful tooltips - v2.2.0
|
3 |
-
* http://qtip2.com
|
4 |
-
*
|
5 |
-
* Copyright (c) 2014 Craig Michael Thompson
|
6 |
-
* Released under the MIT, GPL licenses
|
7 |
-
* http://jquery.org/license
|
8 |
-
*
|
9 |
-
* Date: Sun Mar 16 2014 07:12 EDT-0400
|
10 |
-
* Plugins: tips viewport imagemap svg modal
|
11 |
-
* Styles: css3
|
12 |
-
*/
|
13 |
-
.qtip{
|
14 |
-
position: absolute;
|
15 |
-
left: -28000px;
|
16 |
-
top: -28000px;
|
17 |
-
display: none;
|
18 |
-
|
19 |
-
max-width: 280px;
|
20 |
-
min-width: 50px;
|
21 |
-
|
22 |
-
font-size: 10.5px;
|
23 |
-
line-height: 12px;
|
24 |
-
|
25 |
-
direction: ltr;
|
26 |
-
|
27 |
-
box-shadow: none;
|
28 |
-
padding: 0;
|
29 |
-
}
|
30 |
-
|
31 |
-
.qtip-content{
|
32 |
-
position: relative;
|
33 |
-
padding: 5px 9px;
|
34 |
-
overflow: hidden;
|
35 |
-
|
36 |
-
text-align: left;
|
37 |
-
word-wrap: break-word;
|
38 |
-
}
|
39 |
-
|
40 |
-
.qtip-titlebar{
|
41 |
-
position: relative;
|
42 |
-
padding: 5px 35px 5px 10px;
|
43 |
-
overflow: hidden;
|
44 |
-
|
45 |
-
border-width: 0 0 1px;
|
46 |
-
font-weight: bold;
|
47 |
-
}
|
48 |
-
|
49 |
-
.qtip-titlebar + .qtip-content{ border-top-width: 0 !important; }
|
50 |
-
|
51 |
-
/* Default close button class */
|
52 |
-
.qtip-close{
|
53 |
-
position: absolute;
|
54 |
-
right: -9px; top: -9px;
|
55 |
-
|
56 |
-
cursor: pointer;
|
57 |
-
outline: medium none;
|
58 |
-
|
59 |
-
border-width: 1px;
|
60 |
-
border-style: solid;
|
61 |
-
border-color: transparent;
|
62 |
-
}
|
63 |
-
|
64 |
-
.qtip-titlebar .qtip-close{
|
65 |
-
right: 4px; top: 50%;
|
66 |
-
margin-top: -9px;
|
67 |
-
}
|
68 |
-
|
69 |
-
* html .qtip-titlebar .qtip-close{ top: 16px; } /* IE fix */
|
70 |
-
|
71 |
-
.qtip-titlebar .ui-icon,
|
72 |
-
.qtip-icon .ui-icon{
|
73 |
-
display: block;
|
74 |
-
text-indent: -1000em;
|
75 |
-
direction: ltr;
|
76 |
-
}
|
77 |
-
|
78 |
-
.qtip-icon, .qtip-icon .ui-icon{
|
79 |
-
-moz-border-radius: 3px;
|
80 |
-
-webkit-border-radius: 3px;
|
81 |
-
border-radius: 3px;
|
82 |
-
text-decoration: none;
|
83 |
-
}
|
84 |
-
|
85 |
-
.qtip-icon .ui-icon{
|
86 |
-
width: 18px;
|
87 |
-
height: 14px;
|
88 |
-
|
89 |
-
line-height: 14px;
|
90 |
-
text-align: center;
|
91 |
-
text-indent: 0;
|
92 |
-
font: normal bold 10px/13px Tahoma,sans-serif;
|
93 |
-
|
94 |
-
color: inherit;
|
95 |
-
background: transparent none no-repeat -100em -100em;
|
96 |
-
}
|
97 |
-
|
98 |
-
/* Applied to 'focused' tooltips e.g. most recently displayed/interacted with */
|
99 |
-
.qtip-focus{}
|
100 |
-
|
101 |
-
/* Applied on hover of tooltips i.e. added/removed on mouseenter/mouseleave respectively */
|
102 |
-
.qtip-hover{}
|
103 |
-
|
104 |
-
/* Default tooltip style */
|
105 |
-
.qtip-default{
|
106 |
-
border-width: 1px;
|
107 |
-
border-style: solid;
|
108 |
-
border-color: #F1D031;
|
109 |
-
|
110 |
-
background-color: #FFFFA3;
|
111 |
-
color: #555;
|
112 |
-
}
|
113 |
-
|
114 |
-
.qtip-default .qtip-titlebar{
|
115 |
-
background-color: #FFEF93;
|
116 |
-
}
|
117 |
-
|
118 |
-
.qtip-default .qtip-icon{
|
119 |
-
border-color: #CCC;
|
120 |
-
background: #F1F1F1;
|
121 |
-
color: #777;
|
122 |
-
}
|
123 |
-
|
124 |
-
.qtip-default .qtip-titlebar .qtip-close{
|
125 |
-
border-color: #AAA;
|
126 |
-
color: #111;
|
127 |
-
}
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
.qtip-shadow{
|
132 |
-
-webkit-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
133 |
-
-moz-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
134 |
-
box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
135 |
-
}
|
136 |
-
|
137 |
-
/* Add rounded corners to your tooltips in: FF3+, Chrome 2+, Opera 10.6+, IE9+, Safari 2+ */
|
138 |
-
.qtip-rounded,
|
139 |
-
.qtip-tipsy,
|
140 |
-
.qtip-bootstrap{
|
141 |
-
-moz-border-radius: 5px;
|
142 |
-
-webkit-border-radius: 5px;
|
143 |
-
border-radius: 5px;
|
144 |
-
}
|
145 |
-
|
146 |
-
.qtip-rounded .qtip-titlebar{
|
147 |
-
-moz-border-radius: 4px 4px 0 0;
|
148 |
-
-webkit-border-radius: 4px 4px 0 0;
|
149 |
-
border-radius: 4px 4px 0 0;
|
150 |
-
}
|
151 |
-
|
152 |
-
/* Youtube tooltip style */
|
153 |
-
.qtip-youtube{
|
154 |
-
-moz-border-radius: 2px;
|
155 |
-
-webkit-border-radius: 2px;
|
156 |
-
border-radius: 2px;
|
157 |
-
|
158 |
-
-webkit-box-shadow: 0 0 3px #333;
|
159 |
-
-moz-box-shadow: 0 0 3px #333;
|
160 |
-
box-shadow: 0 0 3px #333;
|
161 |
-
|
162 |
-
color: white;
|
163 |
-
border-width: 0;
|
164 |
-
|
165 |
-
background: #4A4A4A;
|
166 |
-
background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0,#4A4A4A),color-stop(100%,black));
|
167 |
-
background-image: -webkit-linear-gradient(top,#4A4A4A 0,black 100%);
|
168 |
-
background-image: -moz-linear-gradient(top,#4A4A4A 0,black 100%);
|
169 |
-
background-image: -ms-linear-gradient(top,#4A4A4A 0,black 100%);
|
170 |
-
background-image: -o-linear-gradient(top,#4A4A4A 0,black 100%);
|
171 |
-
}
|
172 |
-
|
173 |
-
.qtip-youtube .qtip-titlebar{
|
174 |
-
background-color: #4A4A4A;
|
175 |
-
background-color: rgba(0,0,0,0);
|
176 |
-
}
|
177 |
-
|
178 |
-
.qtip-youtube .qtip-content{
|
179 |
-
padding: .75em;
|
180 |
-
font: 12px arial,sans-serif;
|
181 |
-
|
182 |
-
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#4a4a4a,EndColorStr=#000000);
|
183 |
-
-ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#4a4a4a,EndColorStr=#000000);";
|
184 |
-
}
|
185 |
-
|
186 |
-
.qtip-youtube .qtip-icon{
|
187 |
-
border-color: #222;
|
188 |
-
}
|
189 |
-
|
190 |
-
.qtip-youtube .qtip-titlebar .ui-state-hover{
|
191 |
-
border-color: #303030;
|
192 |
-
}
|
193 |
-
|
194 |
-
|
195 |
-
/* jQuery TOOLS Tooltip style */
|
196 |
-
.qtip-jtools{
|
197 |
-
background: #232323;
|
198 |
-
background: rgba(0, 0, 0, 0.7);
|
199 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#717171), to(#232323));
|
200 |
-
background-image: -moz-linear-gradient(top, #717171, #232323);
|
201 |
-
background-image: -webkit-linear-gradient(top, #717171, #232323);
|
202 |
-
background-image: -ms-linear-gradient(top, #717171, #232323);
|
203 |
-
background-image: -o-linear-gradient(top, #717171, #232323);
|
204 |
-
|
205 |
-
border: 2px solid #ddd;
|
206 |
-
border: 2px solid rgba(241,241,241,1);
|
207 |
-
|
208 |
-
-moz-border-radius: 2px;
|
209 |
-
-webkit-border-radius: 2px;
|
210 |
-
border-radius: 2px;
|
211 |
-
|
212 |
-
-webkit-box-shadow: 0 0 12px #333;
|
213 |
-
-moz-box-shadow: 0 0 12px #333;
|
214 |
-
box-shadow: 0 0 12px #333;
|
215 |
-
}
|
216 |
-
|
217 |
-
/* IE Specific */
|
218 |
-
.qtip-jtools .qtip-titlebar{
|
219 |
-
background-color: transparent;
|
220 |
-
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A);
|
221 |
-
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A)";
|
222 |
-
}
|
223 |
-
.qtip-jtools .qtip-content{
|
224 |
-
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323);
|
225 |
-
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323)";
|
226 |
-
}
|
227 |
-
|
228 |
-
.qtip-jtools .qtip-titlebar,
|
229 |
-
.qtip-jtools .qtip-content{
|
230 |
-
background: transparent;
|
231 |
-
color: white;
|
232 |
-
border: 0 dashed transparent;
|
233 |
-
}
|
234 |
-
|
235 |
-
.qtip-jtools .qtip-icon{
|
236 |
-
border-color: #555;
|
237 |
-
}
|
238 |
-
|
239 |
-
.qtip-jtools .qtip-titlebar .ui-state-hover{
|
240 |
-
border-color: #333;
|
241 |
-
}
|
242 |
-
|
243 |
-
|
244 |
-
/* Cluetip style */
|
245 |
-
.qtip-cluetip{
|
246 |
-
-webkit-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
|
247 |
-
-moz-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
|
248 |
-
box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
|
249 |
-
|
250 |
-
background-color: #D9D9C2;
|
251 |
-
color: #111;
|
252 |
-
border: 0 dashed transparent;
|
253 |
-
}
|
254 |
-
|
255 |
-
.qtip-cluetip .qtip-titlebar{
|
256 |
-
background-color: #87876A;
|
257 |
-
color: white;
|
258 |
-
border: 0 dashed transparent;
|
259 |
-
}
|
260 |
-
|
261 |
-
.qtip-cluetip .qtip-icon{
|
262 |
-
border-color: #808064;
|
263 |
-
}
|
264 |
-
|
265 |
-
.qtip-cluetip .qtip-titlebar .ui-state-hover{
|
266 |
-
border-color: #696952;
|
267 |
-
color: #696952;
|
268 |
-
}
|
269 |
-
|
270 |
-
|
271 |
-
/* Tipsy style */
|
272 |
-
.qtip-tipsy{
|
273 |
-
background: black;
|
274 |
-
background: rgba(0, 0, 0, .87);
|
275 |
-
|
276 |
-
color: white;
|
277 |
-
border: 0 solid transparent;
|
278 |
-
|
279 |
-
font-size: 11px;
|
280 |
-
font-family: 'Lucida Grande', sans-serif;
|
281 |
-
font-weight: bold;
|
282 |
-
line-height: 16px;
|
283 |
-
text-shadow: 0 1px black;
|
284 |
-
}
|
285 |
-
|
286 |
-
.qtip-tipsy .qtip-titlebar{
|
287 |
-
padding: 6px 35px 0 10px;
|
288 |
-
background-color: transparent;
|
289 |
-
}
|
290 |
-
|
291 |
-
.qtip-tipsy .qtip-content{
|
292 |
-
padding: 6px 10px;
|
293 |
-
}
|
294 |
-
|
295 |
-
.qtip-tipsy .qtip-icon{
|
296 |
-
border-color: #222;
|
297 |
-
text-shadow: none;
|
298 |
-
}
|
299 |
-
|
300 |
-
.qtip-tipsy .qtip-titlebar .ui-state-hover{
|
301 |
-
border-color: #303030;
|
302 |
-
}
|
303 |
-
|
304 |
-
|
305 |
-
/* Tipped style */
|
306 |
-
.qtip-tipped{
|
307 |
-
border: 3px solid #959FA9;
|
308 |
-
|
309 |
-
-moz-border-radius: 3px;
|
310 |
-
-webkit-border-radius: 3px;
|
311 |
-
border-radius: 3px;
|
312 |
-
|
313 |
-
background-color: #F9F9F9;
|
314 |
-
color: #454545;
|
315 |
-
|
316 |
-
font-weight: normal;
|
317 |
-
font-family: serif;
|
318 |
-
}
|
319 |
-
|
320 |
-
.qtip-tipped .qtip-titlebar{
|
321 |
-
border-bottom-width: 0;
|
322 |
-
|
323 |
-
color: white;
|
324 |
-
background: #3A79B8;
|
325 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#3A79B8), to(#2E629D));
|
326 |
-
background-image: -webkit-linear-gradient(top, #3A79B8, #2E629D);
|
327 |
-
background-image: -moz-linear-gradient(top, #3A79B8, #2E629D);
|
328 |
-
background-image: -ms-linear-gradient(top, #3A79B8, #2E629D);
|
329 |
-
background-image: -o-linear-gradient(top, #3A79B8, #2E629D);
|
330 |
-
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D);
|
331 |
-
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D)";
|
332 |
-
}
|
333 |
-
|
334 |
-
.qtip-tipped .qtip-icon{
|
335 |
-
border: 2px solid #285589;
|
336 |
-
background: #285589;
|
337 |
-
}
|
338 |
-
|
339 |
-
.qtip-tipped .qtip-icon .ui-icon{
|
340 |
-
background-color: #FBFBFB;
|
341 |
-
color: #555;
|
342 |
-
}
|
343 |
-
|
344 |
-
|
345 |
-
/**
|
346 |
-
* Twitter Bootstrap style.
|
347 |
-
*
|
348 |
-
* Tested with IE 8, IE 9, Chrome 18, Firefox 9, Opera 11.
|
349 |
-
* Does not work with IE 7.
|
350 |
-
*/
|
351 |
-
.qtip-bootstrap{
|
352 |
-
/** Taken from Bootstrap body */
|
353 |
-
font-size: 14px;
|
354 |
-
line-height: 20px;
|
355 |
-
color: #333333;
|
356 |
-
|
357 |
-
/** Taken from Bootstrap .popover */
|
358 |
-
padding: 1px;
|
359 |
-
background-color: #ffffff;
|
360 |
-
border: 1px solid #ccc;
|
361 |
-
border: 1px solid rgba(0, 0, 0, 0.2);
|
362 |
-
-webkit-border-radius: 6px;
|
363 |
-
-moz-border-radius: 6px;
|
364 |
-
border-radius: 6px;
|
365 |
-
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
366 |
-
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
367 |
-
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
368 |
-
-webkit-background-clip: padding-box;
|
369 |
-
-moz-background-clip: padding;
|
370 |
-
background-clip: padding-box;
|
371 |
-
}
|
372 |
-
|
373 |
-
.qtip-bootstrap .qtip-titlebar{
|
374 |
-
/** Taken from Bootstrap .popover-title */
|
375 |
-
padding: 8px 14px;
|
376 |
-
margin: 0;
|
377 |
-
font-size: 14px;
|
378 |
-
font-weight: normal;
|
379 |
-
line-height: 18px;
|
380 |
-
background-color: #f7f7f7;
|
381 |
-
border-bottom: 1px solid #ebebeb;
|
382 |
-
-webkit-border-radius: 5px 5px 0 0;
|
383 |
-
-moz-border-radius: 5px 5px 0 0;
|
384 |
-
border-radius: 5px 5px 0 0;
|
385 |
-
}
|
386 |
-
|
387 |
-
.qtip-bootstrap .qtip-titlebar .qtip-close{
|
388 |
-
/**
|
389 |
-
* Overrides qTip2:
|
390 |
-
* .qtip-titlebar .qtip-close{
|
391 |
-
* [...]
|
392 |
-
* right: 4px;
|
393 |
-
* top: 50%;
|
394 |
-
* [...]
|
395 |
-
* border-style: solid;
|
396 |
-
* }
|
397 |
-
*/
|
398 |
-
right: 11px;
|
399 |
-
top: 45%;
|
400 |
-
border-style: none;
|
401 |
-
}
|
402 |
-
|
403 |
-
.qtip-bootstrap .qtip-content{
|
404 |
-
/** Taken from Bootstrap .popover-content */
|
405 |
-
padding: 9px 14px;
|
406 |
-
}
|
407 |
-
|
408 |
-
.qtip-bootstrap .qtip-icon{
|
409 |
-
/**
|
410 |
-
* Overrides qTip2:
|
411 |
-
* .qtip-default .qtip-icon {
|
412 |
-
* border-color: #CCC;
|
413 |
-
* background: #F1F1F1;
|
414 |
-
* color: #777;
|
415 |
-
* }
|
416 |
-
*/
|
417 |
-
background: transparent;
|
418 |
-
}
|
419 |
-
|
420 |
-
.qtip-bootstrap .qtip-icon .ui-icon{
|
421 |
-
/**
|
422 |
-
* Overrides qTip2:
|
423 |
-
* .qtip-icon .ui-icon{
|
424 |
-
* width: 18px;
|
425 |
-
* height: 14px;
|
426 |
-
* }
|
427 |
-
*/
|
428 |
-
width: auto;
|
429 |
-
height: auto;
|
430 |
-
|
431 |
-
/* Taken from Bootstrap .close */
|
432 |
-
float: right;
|
433 |
-
font-size: 20px;
|
434 |
-
font-weight: bold;
|
435 |
-
line-height: 18px;
|
436 |
-
color: #000000;
|
437 |
-
text-shadow: 0 1px 0 #ffffff;
|
438 |
-
opacity: 0.2;
|
439 |
-
filter: alpha(opacity=20);
|
440 |
-
}
|
441 |
-
|
442 |
-
.qtip-bootstrap .qtip-icon .ui-icon:hover{
|
443 |
-
/* Taken from Bootstrap .close:hover */
|
444 |
-
color: #000000;
|
445 |
-
text-decoration: none;
|
446 |
-
cursor: pointer;
|
447 |
-
opacity: 0.4;
|
448 |
-
filter: alpha(opacity=40);
|
449 |
-
}
|
450 |
-
|
451 |
-
|
452 |
-
/* IE9 fix - removes all filters */
|
453 |
-
.qtip:not(.ie9haxors) div.qtip-content,
|
454 |
-
.qtip:not(.ie9haxors) div.qtip-titlebar{
|
455 |
-
filter: none;
|
456 |
-
-ms-filter: none;
|
457 |
-
}
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
.qtip .qtip-tip{
|
462 |
-
margin: 0 auto;
|
463 |
-
overflow: hidden;
|
464 |
-
z-index: 10;
|
465 |
-
|
466 |
-
}
|
467 |
-
|
468 |
-
/* Opera bug #357 - Incorrect tip position
|
469 |
-
https://github.com/Craga89/qTip2/issues/367 */
|
470 |
-
x:-o-prefocus, .qtip .qtip-tip{
|
471 |
-
visibility: hidden;
|
472 |
-
}
|
473 |
-
|
474 |
-
.qtip .qtip-tip,
|
475 |
-
.qtip .qtip-tip .qtip-vml,
|
476 |
-
.qtip .qtip-tip canvas{
|
477 |
-
position: absolute;
|
478 |
-
|
479 |
-
color: #123456;
|
480 |
-
background: transparent;
|
481 |
-
border: 0 dashed transparent;
|
482 |
-
}
|
483 |
-
|
484 |
-
.qtip .qtip-tip canvas{ top: 0; left: 0; }
|
485 |
-
|
486 |
-
.qtip .qtip-tip .qtip-vml{
|
487 |
-
behavior: url(#default#VML);
|
488 |
-
display: inline-block;
|
489 |
-
visibility: visible;
|
490 |
-
}
|
491 |
-
|
492 |
-
#qtip-overlay{
|
493 |
-
position: fixed;
|
494 |
-
left: 0; top: 0;
|
495 |
-
width: 100%; height: 100%;
|
496 |
-
}
|
497 |
-
|
498 |
-
/* Applied to modals with show.modal.blur set to true */
|
499 |
-
#qtip-overlay.blurs{ cursor: pointer; }
|
500 |
-
|
501 |
-
/* Change opacity of overlay here */
|
502 |
-
#qtip-overlay div{
|
503 |
-
position: absolute;
|
504 |
-
left: 0; top: 0;
|
505 |
-
width: 100%; height: 100%;
|
506 |
-
|
507 |
-
background-color: black;
|
508 |
-
|
509 |
-
opacity: 0.7;
|
510 |
-
filter:alpha(opacity=70);
|
511 |
-
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
|
512 |
-
}
|
513 |
-
|
1 |
+
/*
|
2 |
+
* qTip2 - Pretty powerful tooltips - v2.2.0
|
3 |
+
* http://qtip2.com
|
4 |
+
*
|
5 |
+
* Copyright (c) 2014 Craig Michael Thompson
|
6 |
+
* Released under the MIT, GPL licenses
|
7 |
+
* http://jquery.org/license
|
8 |
+
*
|
9 |
+
* Date: Sun Mar 16 2014 07:12 EDT-0400
|
10 |
+
* Plugins: tips viewport imagemap svg modal
|
11 |
+
* Styles: css3
|
12 |
+
*/
|
13 |
+
.qtip{
|
14 |
+
position: absolute;
|
15 |
+
left: -28000px;
|
16 |
+
top: -28000px;
|
17 |
+
display: none;
|
18 |
+
|
19 |
+
max-width: 280px;
|
20 |
+
min-width: 50px;
|
21 |
+
|
22 |
+
font-size: 10.5px;
|
23 |
+
line-height: 12px;
|
24 |
+
|
25 |
+
direction: ltr;
|
26 |
+
|
27 |
+
box-shadow: none;
|
28 |
+
padding: 0;
|
29 |
+
}
|
30 |
+
|
31 |
+
.qtip-content{
|
32 |
+
position: relative;
|
33 |
+
padding: 5px 9px;
|
34 |
+
overflow: hidden;
|
35 |
+
|
36 |
+
text-align: left;
|
37 |
+
word-wrap: break-word;
|
38 |
+
}
|
39 |
+
|
40 |
+
.qtip-titlebar{
|
41 |
+
position: relative;
|
42 |
+
padding: 5px 35px 5px 10px;
|
43 |
+
overflow: hidden;
|
44 |
+
|
45 |
+
border-width: 0 0 1px;
|
46 |
+
font-weight: bold;
|
47 |
+
}
|
48 |
+
|
49 |
+
.qtip-titlebar + .qtip-content{ border-top-width: 0 !important; }
|
50 |
+
|
51 |
+
/* Default close button class */
|
52 |
+
.qtip-close{
|
53 |
+
position: absolute;
|
54 |
+
right: -9px; top: -9px;
|
55 |
+
|
56 |
+
cursor: pointer;
|
57 |
+
outline: medium none;
|
58 |
+
|
59 |
+
border-width: 1px;
|
60 |
+
border-style: solid;
|
61 |
+
border-color: transparent;
|
62 |
+
}
|
63 |
+
|
64 |
+
.qtip-titlebar .qtip-close{
|
65 |
+
right: 4px; top: 50%;
|
66 |
+
margin-top: -9px;
|
67 |
+
}
|
68 |
+
|
69 |
+
* html .qtip-titlebar .qtip-close{ top: 16px; } /* IE fix */
|
70 |
+
|
71 |
+
.qtip-titlebar .ui-icon,
|
72 |
+
.qtip-icon .ui-icon{
|
73 |
+
display: block;
|
74 |
+
text-indent: -1000em;
|
75 |
+
direction: ltr;
|
76 |
+
}
|
77 |
+
|
78 |
+
.qtip-icon, .qtip-icon .ui-icon{
|
79 |
+
-moz-border-radius: 3px;
|
80 |
+
-webkit-border-radius: 3px;
|
81 |
+
border-radius: 3px;
|
82 |
+
text-decoration: none;
|
83 |
+
}
|
84 |
+
|
85 |
+
.qtip-icon .ui-icon{
|
86 |
+
width: 18px;
|
87 |
+
height: 14px;
|
88 |
+
|
89 |
+
line-height: 14px;
|
90 |
+
text-align: center;
|
91 |
+
text-indent: 0;
|
92 |
+
font: normal bold 10px/13px Tahoma,sans-serif;
|
93 |
+
|
94 |
+
color: inherit;
|
95 |
+
background: transparent none no-repeat -100em -100em;
|
96 |
+
}
|
97 |
+
|
98 |
+
/* Applied to 'focused' tooltips e.g. most recently displayed/interacted with */
|
99 |
+
.qtip-focus{}
|
100 |
+
|
101 |
+
/* Applied on hover of tooltips i.e. added/removed on mouseenter/mouseleave respectively */
|
102 |
+
.qtip-hover{}
|
103 |
+
|
104 |
+
/* Default tooltip style */
|
105 |
+
.qtip-default{
|
106 |
+
border-width: 1px;
|
107 |
+
border-style: solid;
|
108 |
+
border-color: #F1D031;
|
109 |
+
|
110 |
+
background-color: #FFFFA3;
|
111 |
+
color: #555;
|
112 |
+
}
|
113 |
+
|
114 |
+
.qtip-default .qtip-titlebar{
|
115 |
+
background-color: #FFEF93;
|
116 |
+
}
|
117 |
+
|
118 |
+
.qtip-default .qtip-icon{
|
119 |
+
border-color: #CCC;
|
120 |
+
background: #F1F1F1;
|
121 |
+
color: #777;
|
122 |
+
}
|
123 |
+
|
124 |
+
.qtip-default .qtip-titlebar .qtip-close{
|
125 |
+
border-color: #AAA;
|
126 |
+
color: #111;
|
127 |
+
}
|
128 |
+
|
129 |
+
|
130 |
+
|
131 |
+
.qtip-shadow{
|
132 |
+
-webkit-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
133 |
+
-moz-box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
134 |
+
box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.15);
|
135 |
+
}
|
136 |
+
|
137 |
+
/* Add rounded corners to your tooltips in: FF3+, Chrome 2+, Opera 10.6+, IE9+, Safari 2+ */
|
138 |
+
.qtip-rounded,
|
139 |
+
.qtip-tipsy,
|
140 |
+
.qtip-bootstrap{
|
141 |
+
-moz-border-radius: 5px;
|
142 |
+
-webkit-border-radius: 5px;
|
143 |
+
border-radius: 5px;
|
144 |
+
}
|
145 |
+
|
146 |
+
.qtip-rounded .qtip-titlebar{
|
147 |
+
-moz-border-radius: 4px 4px 0 0;
|
148 |
+
-webkit-border-radius: 4px 4px 0 0;
|
149 |
+
border-radius: 4px 4px 0 0;
|
150 |
+
}
|
151 |
+
|
152 |
+
/* Youtube tooltip style */
|
153 |
+
.qtip-youtube{
|
154 |
+
-moz-border-radius: 2px;
|
155 |
+
-webkit-border-radius: 2px;
|
156 |
+
border-radius: 2px;
|
157 |
+
|
158 |
+
-webkit-box-shadow: 0 0 3px #333;
|
159 |
+
-moz-box-shadow: 0 0 3px #333;
|
160 |
+
box-shadow: 0 0 3px #333;
|
161 |
+
|
162 |
+
color: white;
|
163 |
+
border-width: 0;
|
164 |
+
|
165 |
+
background: #4A4A4A;
|
166 |
+
background-image: -webkit-gradient(linear,left top,left bottom,color-stop(0,#4A4A4A),color-stop(100%,black));
|
167 |
+
background-image: -webkit-linear-gradient(top,#4A4A4A 0,black 100%);
|
168 |
+
background-image: -moz-linear-gradient(top,#4A4A4A 0,black 100%);
|
169 |
+
background-image: -ms-linear-gradient(top,#4A4A4A 0,black 100%);
|
170 |
+
background-image: -o-linear-gradient(top,#4A4A4A 0,black 100%);
|
171 |
+
}
|
172 |
+
|
173 |
+
.qtip-youtube .qtip-titlebar{
|
174 |
+
background-color: #4A4A4A;
|
175 |
+
background-color: rgba(0,0,0,0);
|
176 |
+
}
|
177 |
+
|
178 |
+
.qtip-youtube .qtip-content{
|
179 |
+
padding: .75em;
|
180 |
+
font: 12px arial,sans-serif;
|
181 |
+
|
182 |
+
filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#4a4a4a,EndColorStr=#000000);
|
183 |
+
-ms-filter: "progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#4a4a4a,EndColorStr=#000000);";
|
184 |
+
}
|
185 |
+
|
186 |
+
.qtip-youtube .qtip-icon{
|
187 |
+
border-color: #222;
|
188 |
+
}
|
189 |
+
|
190 |
+
.qtip-youtube .qtip-titlebar .ui-state-hover{
|
191 |
+
border-color: #303030;
|
192 |
+
}
|
193 |
+
|
194 |
+
|
195 |
+
/* jQuery TOOLS Tooltip style */
|
196 |
+
.qtip-jtools{
|
197 |
+
background: #232323;
|
198 |
+
background: rgba(0, 0, 0, 0.7);
|
199 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#717171), to(#232323));
|
200 |
+
background-image: -moz-linear-gradient(top, #717171, #232323);
|
201 |
+
background-image: -webkit-linear-gradient(top, #717171, #232323);
|
202 |
+
background-image: -ms-linear-gradient(top, #717171, #232323);
|
203 |
+
background-image: -o-linear-gradient(top, #717171, #232323);
|
204 |
+
|
205 |
+
border: 2px solid #ddd;
|
206 |
+
border: 2px solid rgba(241,241,241,1);
|
207 |
+
|
208 |
+
-moz-border-radius: 2px;
|
209 |
+
-webkit-border-radius: 2px;
|
210 |
+
border-radius: 2px;
|
211 |
+
|
212 |
+
-webkit-box-shadow: 0 0 12px #333;
|
213 |
+
-moz-box-shadow: 0 0 12px #333;
|
214 |
+
box-shadow: 0 0 12px #333;
|
215 |
+
}
|
216 |
+
|
217 |
+
/* IE Specific */
|
218 |
+
.qtip-jtools .qtip-titlebar{
|
219 |
+
background-color: transparent;
|
220 |
+
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A);
|
221 |
+
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171,endColorstr=#4A4A4A)";
|
222 |
+
}
|
223 |
+
.qtip-jtools .qtip-content{
|
224 |
+
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323);
|
225 |
+
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A,endColorstr=#232323)";
|
226 |
+
}
|
227 |
+
|
228 |
+
.qtip-jtools .qtip-titlebar,
|
229 |
+
.qtip-jtools .qtip-content{
|
230 |
+
background: transparent;
|
231 |
+
color: white;
|
232 |
+
border: 0 dashed transparent;
|
233 |
+
}
|
234 |
+
|
235 |
+
.qtip-jtools .qtip-icon{
|
236 |
+
border-color: #555;
|
237 |
+
}
|
238 |
+
|
239 |
+
.qtip-jtools .qtip-titlebar .ui-state-hover{
|
240 |
+
border-color: #333;
|
241 |
+
}
|
242 |
+
|
243 |
+
|
244 |
+
/* Cluetip style */
|
245 |
+
.qtip-cluetip{
|
246 |
+
-webkit-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
|
247 |
+
-moz-box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
|
248 |
+
box-shadow: 4px 4px 5px rgba(0, 0, 0, 0.4);
|
249 |
+
|
250 |
+
background-color: #D9D9C2;
|
251 |
+
color: #111;
|
252 |
+
border: 0 dashed transparent;
|
253 |
+
}
|
254 |
+
|
255 |
+
.qtip-cluetip .qtip-titlebar{
|
256 |
+
background-color: #87876A;
|
257 |
+
color: white;
|
258 |
+
border: 0 dashed transparent;
|
259 |
+
}
|
260 |
+
|
261 |
+
.qtip-cluetip .qtip-icon{
|
262 |
+
border-color: #808064;
|
263 |
+
}
|
264 |
+
|
265 |
+
.qtip-cluetip .qtip-titlebar .ui-state-hover{
|
266 |
+
border-color: #696952;
|
267 |
+
color: #696952;
|
268 |
+
}
|
269 |
+
|
270 |
+
|
271 |
+
/* Tipsy style */
|
272 |
+
.qtip-tipsy{
|
273 |
+
background: black;
|
274 |
+
background: rgba(0, 0, 0, .87);
|
275 |
+
|
276 |
+
color: white;
|
277 |
+
border: 0 solid transparent;
|
278 |
+
|
279 |
+
font-size: 11px;
|
280 |
+
font-family: 'Lucida Grande', sans-serif;
|
281 |
+
font-weight: bold;
|
282 |
+
line-height: 16px;
|
283 |
+
text-shadow: 0 1px black;
|
284 |
+
}
|
285 |
+
|
286 |
+
.qtip-tipsy .qtip-titlebar{
|
287 |
+
padding: 6px 35px 0 10px;
|
288 |
+
background-color: transparent;
|
289 |
+
}
|
290 |
+
|
291 |
+
.qtip-tipsy .qtip-content{
|
292 |
+
padding: 6px 10px;
|
293 |
+
}
|
294 |
+
|
295 |
+
.qtip-tipsy .qtip-icon{
|
296 |
+
border-color: #222;
|
297 |
+
text-shadow: none;
|
298 |
+
}
|
299 |
+
|
300 |
+
.qtip-tipsy .qtip-titlebar .ui-state-hover{
|
301 |
+
border-color: #303030;
|
302 |
+
}
|
303 |
+
|
304 |
+
|
305 |
+
/* Tipped style */
|
306 |
+
.qtip-tipped{
|
307 |
+
border: 3px solid #959FA9;
|
308 |
+
|
309 |
+
-moz-border-radius: 3px;
|
310 |
+
-webkit-border-radius: 3px;
|
311 |
+
border-radius: 3px;
|
312 |
+
|
313 |
+
background-color: #F9F9F9;
|
314 |
+
color: #454545;
|
315 |
+
|
316 |
+
font-weight: normal;
|
317 |
+
font-family: serif;
|
318 |
+
}
|
319 |
+
|
320 |
+
.qtip-tipped .qtip-titlebar{
|
321 |
+
border-bottom-width: 0;
|
322 |
+
|
323 |
+
color: white;
|
324 |
+
background: #3A79B8;
|
325 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#3A79B8), to(#2E629D));
|
326 |
+
background-image: -webkit-linear-gradient(top, #3A79B8, #2E629D);
|
327 |
+
background-image: -moz-linear-gradient(top, #3A79B8, #2E629D);
|
328 |
+
background-image: -ms-linear-gradient(top, #3A79B8, #2E629D);
|
329 |
+
background-image: -o-linear-gradient(top, #3A79B8, #2E629D);
|
330 |
+
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D);
|
331 |
+
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8,endColorstr=#2E629D)";
|
332 |
+
}
|
333 |
+
|
334 |
+
.qtip-tipped .qtip-icon{
|
335 |
+
border: 2px solid #285589;
|
336 |
+
background: #285589;
|
337 |
+
}
|
338 |
+
|
339 |
+
.qtip-tipped .qtip-icon .ui-icon{
|
340 |
+
background-color: #FBFBFB;
|
341 |
+
color: #555;
|
342 |
+
}
|
343 |
+
|
344 |
+
|
345 |
+
/**
|
346 |
+
* Twitter Bootstrap style.
|
347 |
+
*
|
348 |
+
* Tested with IE 8, IE 9, Chrome 18, Firefox 9, Opera 11.
|
349 |
+
* Does not work with IE 7.
|
350 |
+
*/
|
351 |
+
.qtip-bootstrap{
|
352 |
+
/** Taken from Bootstrap body */
|
353 |
+
font-size: 14px;
|
354 |
+
line-height: 20px;
|
355 |
+
color: #333333;
|
356 |
+
|
357 |
+
/** Taken from Bootstrap .popover */
|
358 |
+
padding: 1px;
|
359 |
+
background-color: #ffffff;
|
360 |
+
border: 1px solid #ccc;
|
361 |
+
border: 1px solid rgba(0, 0, 0, 0.2);
|
362 |
+
-webkit-border-radius: 6px;
|
363 |
+
-moz-border-radius: 6px;
|
364 |
+
border-radius: 6px;
|
365 |
+
-webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
366 |
+
-moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
367 |
+
box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
|
368 |
+
-webkit-background-clip: padding-box;
|
369 |
+
-moz-background-clip: padding;
|
370 |
+
background-clip: padding-box;
|
371 |
+
}
|
372 |
+
|
373 |
+
.qtip-bootstrap .qtip-titlebar{
|
374 |
+
/** Taken from Bootstrap .popover-title */
|
375 |
+
padding: 8px 14px;
|
376 |
+
margin: 0;
|
377 |
+
font-size: 14px;
|
378 |
+
font-weight: normal;
|
379 |
+
line-height: 18px;
|
380 |
+
background-color: #f7f7f7;
|
381 |
+
border-bottom: 1px solid #ebebeb;
|
382 |
+
-webkit-border-radius: 5px 5px 0 0;
|
383 |
+
-moz-border-radius: 5px 5px 0 0;
|
384 |
+
border-radius: 5px 5px 0 0;
|
385 |
+
}
|
386 |
+
|
387 |
+
.qtip-bootstrap .qtip-titlebar .qtip-close{
|
388 |
+
/**
|
389 |
+
* Overrides qTip2:
|
390 |
+
* .qtip-titlebar .qtip-close{
|
391 |
+
* [...]
|
392 |
+
* right: 4px;
|
393 |
+
* top: 50%;
|
394 |
+
* [...]
|
395 |
+
* border-style: solid;
|
396 |
+
* }
|
397 |
+
*/
|
398 |
+
right: 11px;
|
399 |
+
top: 45%;
|
400 |
+
border-style: none;
|
401 |
+
}
|
402 |
+
|
403 |
+
.qtip-bootstrap .qtip-content{
|
404 |
+
/** Taken from Bootstrap .popover-content */
|
405 |
+
padding: 9px 14px;
|
406 |
+
}
|
407 |
+
|
408 |
+
.qtip-bootstrap .qtip-icon{
|
409 |
+
/**
|
410 |
+
* Overrides qTip2:
|
411 |
+
* .qtip-default .qtip-icon {
|
412 |
+
* border-color: #CCC;
|
413 |
+
* background: #F1F1F1;
|
414 |
+
* color: #777;
|
415 |
+
* }
|
416 |
+
*/
|
417 |
+
background: transparent;
|
418 |
+
}
|
419 |
+
|
420 |
+
.qtip-bootstrap .qtip-icon .ui-icon{
|
421 |
+
/**
|
422 |
+
* Overrides qTip2:
|
423 |
+
* .qtip-icon .ui-icon{
|
424 |
+
* width: 18px;
|
425 |
+
* height: 14px;
|
426 |
+
* }
|
427 |
+
*/
|
428 |
+
width: auto;
|
429 |
+
height: auto;
|
430 |
+
|
431 |
+
/* Taken from Bootstrap .close */
|
432 |
+
float: right;
|
433 |
+
font-size: 20px;
|
434 |
+
font-weight: bold;
|
435 |
+
line-height: 18px;
|
436 |
+
color: #000000;
|
437 |
+
text-shadow: 0 1px 0 #ffffff;
|
438 |
+
opacity: 0.2;
|
439 |
+
filter: alpha(opacity=20);
|
440 |
+
}
|
441 |
+
|
442 |
+
.qtip-bootstrap .qtip-icon .ui-icon:hover{
|
443 |
+
/* Taken from Bootstrap .close:hover */
|
444 |
+
color: #000000;
|
445 |
+
text-decoration: none;
|
446 |
+
cursor: pointer;
|
447 |
+
opacity: 0.4;
|
448 |
+
filter: alpha(opacity=40);
|
449 |
+
}
|
450 |
+
|
451 |
+
|
452 |
+
/* IE9 fix - removes all filters */
|
453 |
+
.qtip:not(.ie9haxors) div.qtip-content,
|
454 |
+
.qtip:not(.ie9haxors) div.qtip-titlebar{
|
455 |
+
filter: none;
|
456 |
+
-ms-filter: none;
|
457 |
+
}
|
458 |
+
|
459 |
+
|
460 |
+
|
461 |
+
.qtip .qtip-tip{
|
462 |
+
margin: 0 auto;
|
463 |
+
overflow: hidden;
|
464 |
+
z-index: 10;
|
465 |
+
|
466 |
+
}
|
467 |
+
|
468 |
+
/* Opera bug #357 - Incorrect tip position
|
469 |
+
https://github.com/Craga89/qTip2/issues/367 */
|
470 |
+
x:-o-prefocus, .qtip .qtip-tip{
|
471 |
+
visibility: hidden;
|
472 |
+
}
|
473 |
+
|
474 |
+
.qtip .qtip-tip,
|
475 |
+
.qtip .qtip-tip .qtip-vml,
|
476 |
+
.qtip .qtip-tip canvas{
|
477 |
+
position: absolute;
|
478 |
+
|
479 |
+
color: #123456;
|
480 |
+
background: transparent;
|
481 |
+
border: 0 dashed transparent;
|
482 |
+
}
|
483 |
+
|
484 |
+
.qtip .qtip-tip canvas{ top: 0; left: 0; }
|
485 |
+
|
486 |
+
.qtip .qtip-tip .qtip-vml{
|
487 |
+
behavior: url(#default#VML);
|
488 |
+
display: inline-block;
|
489 |
+
visibility: visible;
|
490 |
+
}
|
491 |
+
|
492 |
+
#qtip-overlay{
|
493 |
+
position: fixed;
|
494 |
+
left: 0; top: 0;
|
495 |
+
width: 100%; height: 100%;
|
496 |
+
}
|
497 |
+
|
498 |
+
/* Applied to modals with show.modal.blur set to true */
|
499 |
+
#qtip-overlay.blurs{ cursor: pointer; }
|
500 |
+
|
501 |
+
/* Change opacity of overlay here */
|
502 |
+
#qtip-overlay div{
|
503 |
+
position: absolute;
|
504 |
+
left: 0; top: 0;
|
505 |
+
width: 100%; height: 100%;
|
506 |
+
|
507 |
+
background-color: black;
|
508 |
+
|
509 |
+
opacity: 0.7;
|
510 |
+
filter:alpha(opacity=70);
|
511 |
+
-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
|
512 |
+
}
|
513 |
+
|
admin/includes/tooltips/jquery.qtip.js
CHANGED
@@ -1,100 +1,100 @@
|
|
1 |
-
/*
|
2 |
-
* qTip2 - Pretty powerful tooltips - v2.2.0
|
3 |
-
* http://qtip2.com
|
4 |
-
*
|
5 |
-
* Copyright (c) 2014 Craig Michael Thompson
|
6 |
-
* Released under the MIT, GPL licenses
|
7 |
-
* http://jquery.org/license
|
8 |
-
*
|
9 |
-
* Date: Sun Mar 16 2014 07:12 EDT-0400
|
10 |
-
* Plugins: tips viewport imagemap svg modal
|
11 |
-
* Styles: css3
|
12 |
-
*/
|
13 |
-
/*global window: false, jQuery: false, console: false, define: false */
|
14 |
-
|
15 |
-
/* Cache window, document, undefined */
|
16 |
-
(function( window, document, undefined ) {
|
17 |
-
|
18 |
-
// Uses AMD or browser globals to create a jQuery plugin.
|
19 |
-
(function( factory ) {
|
20 |
-
"use strict";
|
21 |
-
if(typeof define === 'function' && define.amd) {
|
22 |
-
define(['jquery'], factory);
|
23 |
-
}
|
24 |
-
else if(jQuery && !jQuery.fn.qtip) {
|
25 |
-
factory(jQuery);
|
26 |
-
}
|
27 |
-
}
|
28 |
-
(function($) {
|
29 |
-
"use strict"; // Enable ECMAScript "strict" operation for this function. See more: http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/
|
30 |
-
|
31 |
-
;// Munge the primitives - Paul Irish tip
|
32 |
-
var TRUE = true,
|
33 |
-
FALSE = false,
|
34 |
-
NULL = null,
|
35 |
-
|
36 |
-
// Common variables
|
37 |
-
X = 'x', Y = 'y',
|
38 |
-
WIDTH = 'width',
|
39 |
-
HEIGHT = 'height',
|
40 |
-
|
41 |
-
// Positioning sides
|
42 |
-
TOP = 'top',
|
43 |
-
LEFT = 'left',
|
44 |
-
BOTTOM = 'bottom',
|
45 |
-
RIGHT = 'right',
|
46 |
-
CENTER = 'center',
|
47 |
-
|
48 |
-
// Position adjustment types
|
49 |
-
FLIP = 'flip',
|
50 |
-
FLIPINVERT = 'flipinvert',
|
51 |
-
SHIFT = 'shift',
|
52 |
-
|
53 |
-
// Shortcut vars
|
54 |
-
QTIP, PROTOTYPE, CORNER, CHECKS,
|
55 |
-
PLUGINS = {},
|
56 |
-
NAMESPACE = 'qtip',
|
57 |
-
ATTR_HAS = 'data-hasqtip',
|
58 |
-
ATTR_ID = 'data-qtip-id',
|
59 |
-
WIDGET = ['ui-widget', 'ui-tooltip'],
|
60 |
-
SELECTOR = '.'+NAMESPACE,
|
61 |
-
INACTIVE_EVENTS = 'click dblclick mousedown mouseup mousemove mouseleave mouseenter'.split(' '),
|
62 |
-
|
63 |
-
CLASS_FIXED = NAMESPACE+'-fixed',
|
64 |
-
CLASS_DEFAULT = NAMESPACE + '-default',
|
65 |
-
CLASS_FOCUS = NAMESPACE + '-focus',
|
66 |
-
CLASS_HOVER = NAMESPACE + '-hover',
|
67 |
-
CLASS_DISABLED = NAMESPACE+'-disabled',
|
68 |
-
|
69 |
-
replaceSuffix = '_replacedByqTip',
|
70 |
-
oldtitle = 'oldtitle',
|
71 |
-
trackingBound,
|
72 |
-
|
73 |
-
// Browser detection
|
74 |
-
BROWSER = {
|
75 |
-
/*
|
76 |
-
* IE version detection
|
77 |
-
*
|
78 |
-
* Adapted from: http://ajaxian.com/archives/attack-of-the-ie-conditional-comment
|
79 |
-
* Credit to James Padolsey for the original implemntation!
|
80 |
-
*/
|
81 |
-
ie: (function(){
|
82 |
-
var v = 3, div = document.createElement('div');
|
83 |
-
while ((div.innerHTML = '<!--[if gt IE '+(++v)+']><i></i><![endif]-->')) {
|
84 |
-
if(!div.getElementsByTagName('i')[0]) { break; }
|
85 |
-
}
|
86 |
-
return v > 4 ? v : NaN;
|
87 |
-
}()),
|
88 |
-
|
89 |
-
/*
|
90 |
-
* iOS version detection
|
91 |
-
*/
|
92 |
-
iOS: parseFloat(
|
93 |
-
('' + (/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent) || [0,''])[1])
|
94 |
-
.replace('undefined', '3_2').replace('_', '.').replace('_', '')
|
95 |
-
) || FALSE
|
96 |
-
};
|
97 |
-
|
98 |
;function QTip(target, options, id, attr) {
|
99 |
// Elements and ID
|
100 |
this.id = id;
|
@@ -295,3008 +295,3008 @@ PROTOTYPE.destroy = function(immediate) {
|
|
295 |
return this.target;
|
296 |
};
|
297 |
|
298 |
-
;function invalidOpt(a) {
|
299 |
-
return a === NULL || $.type(a) !== 'object';
|
300 |
-
}
|
301 |
-
|
302 |
-
function invalidContent(c) {
|
303 |
-
return !( $.isFunction(c) || (c && c.attr) || c.length || ($.type(c) === 'object' && (c.jquery || c.then) ));
|
304 |
-
}
|
305 |
-
|
306 |
-
// Option object sanitizer
|
307 |
-
function sanitizeOptions(opts) {
|
308 |
-
var content, text, ajax, once;
|
309 |
-
|
310 |
-
if(invalidOpt(opts)) { return FALSE; }
|
311 |
-
|
312 |
-
if(invalidOpt(opts.metadata)) {
|
313 |
-
opts.metadata = { type: opts.metadata };
|
314 |
-
}
|
315 |
-
|
316 |
-
if('content' in opts) {
|
317 |
-
content = opts.content;
|
318 |
-
|
319 |
-
if(invalidOpt(content) || content.jquery || content.done) {
|
320 |
-
content = opts.content = {
|
321 |
-
text: (text = invalidContent(content) ? FALSE : content)
|
322 |
-
};
|
323 |
-
}
|
324 |
-
else { text = content.text; }
|
325 |
-
|
326 |
-
// DEPRECATED - Old content.ajax plugin functionality
|
327 |
-
// Converts it into the proper Deferred syntax
|
328 |
-
if('ajax' in content) {
|
329 |
-
ajax = content.ajax;
|
330 |
-
once = ajax && ajax.once !== FALSE;
|
331 |
-
delete content.ajax;
|
332 |
-
|
333 |
-
content.text = function(event, api) {
|
334 |
-
var loading = text || $(this).attr(api.options.content.attr) || 'Loading...',
|
335 |
-
|
336 |
-
deferred = $.ajax(
|
337 |
-
$.extend({}, ajax, { context: api })
|
338 |
-
)
|
339 |
-
.then(ajax.success, NULL, ajax.error)
|
340 |
-
.then(function(content) {
|
341 |
-
if(content && once) { api.set('content.text', content); }
|
342 |
-
return content;
|
343 |
-
},
|
344 |
-
function(xhr, status, error) {
|
345 |
-
if(api.destroyed || xhr.status === 0) { return; }
|
346 |
-
api.set('content.text', status + ': ' + error);
|
347 |
-
});
|
348 |
-
|
349 |
-
return !once ? (api.set('content.text', loading), deferred) : loading;
|
350 |
-
};
|
351 |
-
}
|
352 |
-
|
353 |
-
if('title' in content) {
|
354 |
-
if(!invalidOpt(content.title)) {
|
355 |
-
content.button = content.title.button;
|
356 |
-
content.title = content.title.text;
|
357 |
-
}
|
358 |
-
|
359 |
-
if(invalidContent(content.title || FALSE)) {
|
360 |
-
content.title = FALSE;
|
361 |
-
}
|
362 |
-
}
|
363 |
-
}
|
364 |
-
|
365 |
-
if('position' in opts && invalidOpt(opts.position)) {
|
366 |
-
opts.position = { my: opts.position, at: opts.position };
|
367 |
-
}
|
368 |
-
|
369 |
-
if('show' in opts && invalidOpt(opts.show)) {
|
370 |
-
opts.show = opts.show.jquery ? { target: opts.show } :
|
371 |
-
opts.show === TRUE ? { ready: TRUE } : { event: opts.show };
|
372 |
-
}
|
373 |
-
|
374 |
-
if('hide' in opts && invalidOpt(opts.hide)) {
|
375 |
-
opts.hide = opts.hide.jquery ? { target: opts.hide } : { event: opts.hide };
|
376 |
-
}
|
377 |
-
|
378 |
-
if('style' in opts && invalidOpt(opts.style)) {
|
379 |
-
opts.style = { classes: opts.style };
|
380 |
-
}
|
381 |
-
|
382 |
-
// Sanitize plugin options
|
383 |
-
$.each(PLUGINS, function() {
|
384 |
-
this.sanitize && this.sanitize(opts);
|
385 |
-
});
|
386 |
-
|
387 |
-
return opts;
|
388 |
-
}
|
389 |
-
|
390 |
-
// Setup builtin .set() option checks
|
391 |
-
CHECKS = PROTOTYPE.checks = {
|
392 |
-
builtin: {
|
393 |
-
// Core checks
|
394 |
-
'^id$': function(obj, o, v, prev) {
|
395 |
-
var id = v === TRUE ? QTIP.nextid : v,
|
396 |
-
new_id = NAMESPACE + '-' + id;
|
397 |
-
|
398 |
-
if(id !== FALSE && id.length > 0 && !$('#'+new_id).length) {
|
399 |
-
this._id = new_id;
|
400 |
-
|
401 |
-
if(this.rendered) {
|
402 |
-
this.tooltip[0].id = this._id;
|
403 |
-
this.elements.content[0].id = this._id + '-content';
|
404 |
-
this.elements.title[0].id = this._id + '-title';
|
405 |
-
}
|
406 |
-
}
|
407 |
-
else { obj[o] = prev; }
|
408 |
-
},
|
409 |
-
'^prerender': function(obj, o, v) {
|
410 |
-
v && !this.rendered && this.render(this.options.show.ready);
|
411 |
-
},
|
412 |
-
|
413 |
-
// Content checks
|
414 |
-
'^content.text$': function(obj, o, v) {
|
415 |
-
this._updateContent(v);
|
416 |
-
},
|
417 |
-
'^content.attr$': function(obj, o, v, prev) {
|
418 |
-
if(this.options.content.text === this.target.attr(prev)) {
|
419 |
-
this._updateContent( this.target.attr(v) );
|
420 |
-
}
|
421 |
-
},
|
422 |
-
'^content.title$': function(obj, o, v) {
|
423 |
-
// Remove title if content is null
|
424 |
-
if(!v) { return this._removeTitle(); }
|
425 |
-
|
426 |
-
// If title isn't already created, create it now and update
|
427 |
-
v && !this.elements.title && this._createTitle();
|
428 |
-
this._updateTitle(v);
|
429 |
-
},
|
430 |
-
'^content.button$': function(obj, o, v) {
|
431 |
-
this._updateButton(v);
|
432 |
-
},
|
433 |
-
'^content.title.(text|button)$': function(obj, o, v) {
|
434 |
-
this.set('content.'+o, v); // Backwards title.text/button compat
|
435 |
-
},
|
436 |
-
|
437 |
-
// Position checks
|
438 |
-
'^position.(my|at)$': function(obj, o, v){
|
439 |
-
'string' === typeof v && (obj[o] = new CORNER(v, o === 'at'));
|
440 |
-
},
|
441 |
-
'^position.container$': function(obj, o, v){
|
442 |
-
this.rendered && this.tooltip.appendTo(v);
|
443 |
-
},
|
444 |
-
|
445 |
-
// Show checks
|
446 |
-
'^show.ready$': function(obj, o, v) {
|
447 |
-
v && (!this.rendered && this.render(TRUE) || this.toggle(TRUE));
|
448 |
-
},
|
449 |
-
|
450 |
-
// Style checks
|
451 |
-
'^style.classes$': function(obj, o, v, p) {
|
452 |
-
this.rendered && this.tooltip.removeClass(p).addClass(v);
|
453 |
-
},
|
454 |
-
'^style.(width|height)': function(obj, o, v) {
|
455 |
-
this.rendered && this.tooltip.css(o, v);
|
456 |
-
},
|
457 |
-
'^style.widget|content.title': function() {
|
458 |
-
this.rendered && this._setWidget();
|
459 |
-
},
|
460 |
-
'^style.def': function(obj, o, v) {
|
461 |
-
this.rendered && this.tooltip.toggleClass(CLASS_DEFAULT, !!v);
|
462 |
-
},
|
463 |
-
|
464 |
-
// Events check
|
465 |
-
'^events.(render|show|move|hide|focus|blur)$': function(obj, o, v) {
|
466 |
-
this.rendered && this.tooltip[($.isFunction(v) ? '' : 'un') + 'bind']('tooltip'+o, v);
|
467 |
-
},
|
468 |
-
|
469 |
-
// Properties which require event reassignment
|
470 |
-
'^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)': function() {
|
471 |
-
if(!this.rendered) { return; }
|
472 |
-
|
473 |
-
// Set tracking flag
|
474 |
-
var posOptions = this.options.position;
|
475 |
-
this.tooltip.attr('tracking', posOptions.target === 'mouse' && posOptions.adjust.mouse);
|
476 |
-
|
477 |
-
// Reassign events
|
478 |
-
this._unassignEvents();
|
479 |
-
this._assignEvents();
|
480 |
-
}
|
481 |
-
}
|
482 |
-
};
|
483 |
-
|
484 |
-
// Dot notation converter
|
485 |
-
function convertNotation(options, notation) {
|
486 |
-
var i = 0, obj, option = options,
|
487 |
-
|
488 |
-
// Split notation into array
|
489 |
-
levels = notation.split('.');
|
490 |
-
|
491 |
-
// Loop through
|
492 |
-
while( option = option[ levels[i++] ] ) {
|
493 |
-
if(i < levels.length) { obj = option; }
|
494 |
-
}
|
495 |
-
|
496 |
-
return [obj || options, levels.pop()];
|
497 |
-
}
|
498 |
-
|
499 |
-
PROTOTYPE.get = function(notation) {
|
500 |
-
if(this.destroyed) { return this; }
|
501 |
-
|
502 |
-
var o = convertNotation(this.options, notation.toLowerCase()),
|
503 |
-
result = o[0][ o[1] ];
|
504 |
-
|
505 |
-
return result.precedance ? result.string() : result;
|
506 |
-
};
|
507 |
-
|
508 |
-
function setCallback(notation, args) {
|
509 |
-
var category, rule, match;
|
510 |
-
|
511 |
-
for(category in this.checks) {
|
512 |
-
for(rule in this.checks[category]) {
|
513 |
-
if(match = (new RegExp(rule, 'i')).exec(notation)) {
|
514 |
-
args.push(match);
|
515 |
-
|
516 |
-
if(category === 'builtin' || this.plugins[category]) {
|
517 |
-
this.checks[category][rule].apply(
|
518 |
-
this.plugins[category] || this, args
|
519 |
-
);
|
520 |
-
}
|
521 |
-
}
|
522 |
-
}
|
523 |
-
}
|
524 |
-
}
|
525 |
-
|
526 |
-
var rmove = /^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,
|
527 |
-
rrender = /^prerender|show\.ready/i;
|
528 |
-
|
529 |
-
PROTOTYPE.set = function(option, value) {
|
530 |
-
if(this.destroyed) { return this; }
|
531 |
-
|
532 |
-
var rendered = this.rendered,
|
533 |
-
reposition = FALSE,
|
534 |
-
options = this.options,
|
535 |
-
checks = this.checks,
|
536 |
-
name;
|
537 |
-
|
538 |
-
// Convert singular option/value pair into object form
|
539 |
-
if('string' === typeof option) {
|
540 |
-
name = option; option = {}; option[name] = value;
|
541 |
-
}
|
542 |
-
else { option = $.extend({}, option); }
|
543 |
-
|
544 |
-
// Set all of the defined options to their new values
|
545 |
-
$.each(option, function(notation, value) {
|
546 |
-
if(rendered && rrender.test(notation)) {
|
547 |
-
delete option[notation]; return;
|
548 |
-
}
|
549 |
-
|
550 |
-
// Set new obj value
|
551 |
-
var obj = convertNotation(options, notation.toLowerCase()), previous;
|
552 |
-
previous = obj[0][ obj[1] ];
|
553 |
-
obj[0][ obj[1] ] = value && value.nodeType ? $(value) : value;
|
554 |
-
|
555 |
-
// Also check if we need to reposition
|
556 |
-
reposition = rmove.test(notation) || reposition;
|
557 |
-
|
558 |
-
// Set the new params for the callback
|
559 |
-
option[notation] = [obj[0], obj[1], value, previous];
|
560 |
-
});
|
561 |
-
|
562 |
-
// Re-sanitize options
|
563 |
-
sanitizeOptions(options);
|
564 |
-
|
565 |
-
/*
|
566 |
-
* Execute any valid callbacks for the set options
|
567 |
-
* Also set positioning flag so we don't get loads of redundant repositioning calls.
|
568 |
-
*/
|
569 |
-
this.positioning = TRUE;
|
570 |
-
$.each(option, $.proxy(setCallback, this));
|
571 |
-
this.positioning = FALSE;
|
572 |
-
|
573 |
-
// Update position if needed
|
574 |
-
if(this.rendered && this.tooltip[0].offsetWidth > 0 && reposition) {
|
575 |
-
this.reposition( options.position.target === 'mouse' ? NULL : this.cache.event );
|
576 |
-
}
|
577 |
-
|
578 |
-
return this;
|
579 |
-
};
|
580 |
-
|
581 |
-
;PROTOTYPE._update = function(content, element, reposition) {
|
582 |
-
var self = this,
|
583 |
-
cache = this.cache;
|
584 |
-
|
585 |
-
// Make sure tooltip is rendered and content is defined. If not return
|
586 |
-
if(!this.rendered || !content) { return FALSE; }
|
587 |
-
|
588 |
-
// Use function to parse content
|
589 |
-
if($.isFunction(content)) {
|
590 |
-
content = content.call(this.elements.target, cache.event, this) || '';
|
591 |
-
}
|
592 |
-
|
593 |
-
// Handle deferred content
|
594 |
-
if($.isFunction(content.then)) {
|
595 |
-
cache.waiting = TRUE;
|
596 |
-
return content.then(function(c) {
|
597 |
-
cache.waiting = FALSE;
|
598 |
-
return self._update(c, element);
|
599 |
-
}, NULL, function(e) {
|
600 |
-
return self._update(e, element);
|
601 |
-
});
|
602 |
-
}
|
603 |
-
|
604 |
-
// If content is null... return false
|
605 |
-
if(content === FALSE || (!content && content !== '')) { return FALSE; }
|
606 |
-
|
607 |
-
// Append new content if its a DOM array and show it if hidden
|
608 |
-
if(content.jquery && content.length > 0) {
|
609 |
-
element.empty().append(
|
610 |
-
content.css({ display: 'block', visibility: 'visible' })
|
611 |
-
);
|
612 |
-
}
|
613 |
-
|
614 |
-
// Content is a regular string, insert the new content
|
615 |
-
else { element.html(content); }
|
616 |
-
|
617 |
-
// Wait for content to be loaded, and reposition
|
618 |
-
return this._waitForContent(element).then(function(images) {
|
619 |
-
if(images.images && images.images.length && self.rendered && self.tooltip[0].offsetWidth > 0) {
|
620 |
-
self.reposition(cache.event, !images.length);
|
621 |
-
}
|
622 |
-
});
|
623 |
-
};
|
624 |
-
|
625 |
-
PROTOTYPE._waitForContent = function(element) {
|
626 |
-
var cache = this.cache;
|
627 |
-
|
628 |
-
// Set flag
|
629 |
-
cache.waiting = TRUE;
|
630 |
-
|
631 |
-
// If imagesLoaded is included, ensure images have loaded and return promise
|
632 |
-
return ( $.fn.imagesLoaded ? element.imagesLoaded() : $.Deferred().resolve([]) )
|
633 |
-
.done(function() { cache.waiting = FALSE; })
|
634 |
-
.promise();
|
635 |
-
};
|
636 |
-
|
637 |
-
PROTOTYPE._updateContent = function(content, reposition) {
|
638 |
-
this._update(content, this.elements.content, reposition);
|
639 |
-
};
|
640 |
-
|
641 |
-
PROTOTYPE._updateTitle = function(content, reposition) {
|
642 |
-
if(this._update(content, this.elements.title, reposition) === FALSE) {
|
643 |
-
this._removeTitle(FALSE);
|
644 |
-
}
|
645 |
-
};
|
646 |
-
|
647 |
-
PROTOTYPE._createTitle = function()
|
648 |
-
{
|
649 |
-
var elements = this.elements,
|
650 |
-
id = this._id+'-title';
|
651 |
-
|
652 |
-
// Destroy previous title element, if present
|
653 |
-
if(elements.titlebar) { this._removeTitle(); }
|
654 |
-
|
655 |
-
// Create title bar and title elements
|
656 |
-
elements.titlebar = $('<div />', {
|
657 |
-
'class': NAMESPACE + '-titlebar ' + (this.options.style.widget ? createWidgetClass('header') : '')
|
658 |
-
})
|
659 |
-
.append(
|
660 |
-
elements.title = $('<div />', {
|
661 |
-
'id': id,
|
662 |
-
'class': NAMESPACE + '-title',
|
663 |
-
'aria-atomic': TRUE
|
664 |
-
})
|
665 |
-
)
|
666 |
-
.insertBefore(elements.content)
|
667 |
-
|
668 |
-
// Button-specific events
|
669 |
-
.delegate('.qtip-close', 'mousedown keydown mouseup keyup mouseout', function(event) {
|
670 |
-
$(this).toggleClass('ui-state-active ui-state-focus', event.type.substr(-4) === 'down');
|
671 |
-
})
|
672 |
-
.delegate('.qtip-close', 'mouseover mouseout', function(event){
|
673 |
-
$(this).toggleClass('ui-state-hover', event.type === 'mouseover');
|
674 |
-
});
|
675 |
-
|
676 |
-
// Create button if enabled
|
677 |
-
if(this.options.content.button) { this._createButton(); }
|
678 |
-
};
|
679 |
-
|
680 |
-
PROTOTYPE._removeTitle = function(reposition)
|
681 |
-
{
|
682 |
-
var elements = this.elements;
|
683 |
-
|
684 |
-
if(elements.title) {
|
685 |
-
elements.titlebar.remove();
|
686 |
-
elements.titlebar = elements.title = elements.button = NULL;
|
687 |
-
|
688 |
-
// Reposition if enabled
|
689 |
-
if(reposition !== FALSE) { this.reposition(); }
|
690 |
-
}
|
691 |
-
};
|
692 |
-
|
693 |
-
;PROTOTYPE.reposition = function(event, effect) {
|
694 |
-
if(!this.rendered || this.positioning || this.destroyed) { return this; }
|
695 |
-
|
696 |
-
// Set positioning flag
|
697 |
-
this.positioning = TRUE;
|
698 |
-
|
699 |
-
var cache = this.cache,
|
700 |
-
tooltip = this.tooltip,
|
701 |
-
posOptions = this.options.position,
|
702 |
-
target = posOptions.target,
|
703 |
-
my = posOptions.my,
|
704 |
-
at = posOptions.at,
|
705 |
-
viewport = posOptions.viewport,
|
706 |
-
container = posOptions.container,
|
707 |
-
adjust = posOptions.adjust,
|
708 |
-
method = adjust.method.split(' '),
|
709 |
-
tooltipWidth = tooltip.outerWidth(FALSE),
|
710 |
-
tooltipHeight = tooltip.outerHeight(FALSE),
|
711 |
-
targetWidth = 0,
|
712 |
-
targetHeight = 0,
|
713 |
-
type = tooltip.css('position'),
|
714 |
-
position = { left: 0, top: 0 },
|
715 |
-
visible = tooltip[0].offsetWidth > 0,
|
716 |
-
isScroll = event && event.type === 'scroll',
|
717 |
-
win = $(window),
|
718 |
-
doc = container[0].ownerDocument,
|
719 |
-
mouse = this.mouse,
|
720 |
-
pluginCalculations, offset;
|
721 |
-
|
722 |
-
// Check if absolute position was passed
|
723 |
-
if($.isArray(target) && target.length === 2) {
|
724 |
-
// Force left top and set position
|
725 |
-
at = { x: LEFT, y: TOP };
|
726 |
-
position = { left: target[0], top: target[1] };
|
727 |
-
}
|
728 |
-
|
729 |
-
// Check if mouse was the target
|
730 |
-
else if(target === 'mouse') {
|
731 |
-
// Force left top to allow flipping
|
732 |
-
at = { x: LEFT, y: TOP };
|
733 |
-
|
734 |
-
// Use the cached mouse coordinates if available, or passed event has no coordinates
|
735 |
-
if(mouse && mouse.pageX && (adjust.mouse || !event || !event.pageX) ) {
|
736 |
-
event = mouse;
|
737 |
-
}
|
738 |
-
|
739 |
-
// If the passed event has no coordinates (such as a scroll event)
|
740 |
-
else if(!event || !event.pageX) {
|
741 |
-
// Use the mouse origin that caused the show event, if distance hiding is enabled
|
742 |
-
if((!adjust.mouse || this.options.show.distance) && cache.origin && cache.origin.pageX) {
|
743 |
-
event = cache.origin;
|
744 |
-
}
|
745 |
-
|
746 |
-
// Use cached event for resize/scroll events
|
747 |
-
else if(!event || (event && (event.type === 'resize' || event.type === 'scroll'))) {
|
748 |
-
event = cache.event;
|
749 |
-
}
|
750 |
-
}
|
751 |
-
|
752 |
-
// Calculate body and container offset and take them into account below
|
753 |
-
if(type !== 'static') { position = container.offset(); }
|
754 |
-
if(doc.body.offsetWidth !== (window.innerWidth || doc.documentElement.clientWidth)) {
|
755 |
-
offset = $(document.body).offset();
|
756 |
-
}
|
757 |
-
|
758 |
-
// Use event coordinates for position
|
759 |
-
position = {
|
760 |
-
left: event.pageX - position.left + (offset && offset.left || 0),
|
761 |
-
top: event.pageY - position.top + (offset && offset.top || 0)
|
762 |
-
};
|
763 |
-
|
764 |
-
// Scroll events are a pain, some browsers
|
765 |
-
if(adjust.mouse && isScroll && mouse) {
|
766 |
-
position.left -= (mouse.scrollX || 0) - win.scrollLeft();
|
767 |
-
position.top -= (mouse.scrollY || 0) - win.scrollTop();
|
768 |
-
}
|
769 |
-
}
|
770 |
-
|
771 |
-
// Target wasn't mouse or absolute...
|
772 |
-
else {
|
773 |
-
// Check if event targetting is being used
|
774 |
-
if(target === 'event') {
|
775 |
-
if(event && event.target && event.type !== 'scroll' && event.type !== 'resize') {
|
776 |
-
cache.target = $(event.target);
|
777 |
-
}
|
778 |
-
else if(!event.target) {
|
779 |
-
cache.target = this.elements.target;
|
780 |
-
}
|
781 |
-
}
|
782 |
-
else if(target !== 'event'){
|
783 |
-
cache.target = $(target.jquery ? target : this.elements.target);
|
784 |
-
}
|
785 |
-
target = cache.target;
|
786 |
-
|
787 |
-
// Parse the target into a jQuery object and make sure there's an element present
|
788 |
-
target = $(target).eq(0);
|
789 |
-
if(target.length === 0) { return this; }
|
790 |
-
|
791 |
-
// Check if window or document is the target
|
792 |
-
else if(target[0] === document || target[0] === window) {
|
793 |
-
targetWidth = BROWSER.iOS ? window.innerWidth : target.width();
|
794 |
-
targetHeight = BROWSER.iOS ? window.innerHeight : target.height();
|
795 |
-
|
796 |
-
if(target[0] === window) {
|
797 |
-
position = {
|
798 |
-
top: (viewport || target).scrollTop(),
|
799 |
-
left: (viewport || target).scrollLeft()
|
800 |
-
};
|
801 |
-
}
|
802 |
-
}
|
803 |
-
|
804 |
-
// Check if the target is an <AREA> element
|
805 |
-
else if(PLUGINS.imagemap && target.is('area')) {
|
806 |
-
pluginCalculations = PLUGINS.imagemap(this, target, at, PLUGINS.viewport ? method : FALSE);
|
807 |
-
}
|
808 |
-
|
809 |
-
// Check if the target is an SVG element
|
810 |
-
else if(PLUGINS.svg && target && target[0].ownerSVGElement) {
|
811 |
-
pluginCalculations = PLUGINS.svg(this, target, at, PLUGINS.viewport ? method : FALSE);
|
812 |
-
}
|
813 |
-
|
814 |
-
// Otherwise use regular jQuery methods
|
815 |
-
else {
|
816 |
-
targetWidth = target.outerWidth(FALSE);
|
817 |
-
targetHeight = target.outerHeight(FALSE);
|
818 |
-
position = target.offset();
|
819 |
-
}
|
820 |
-
|
821 |
-
// Parse returned plugin values into proper variables
|
822 |
-
if(pluginCalculations) {
|
823 |
-
targetWidth = pluginCalculations.width;
|
824 |
-
targetHeight = pluginCalculations.height;
|
825 |
-
offset = pluginCalculations.offset;
|
826 |
-
position = pluginCalculations.position;
|
827 |
-
}
|
828 |
-
|
829 |
-
// Adjust position to take into account offset parents
|
830 |
-
position = this.reposition.offset(target, position, container);
|
831 |
-
|
832 |
-
// Adjust for position.fixed tooltips (and also iOS scroll bug in v3.2-4.0 & v4.3-4.3.2)
|
833 |
-
if((BROWSER.iOS > 3.1 && BROWSER.iOS < 4.1) ||
|
834 |
-
(BROWSER.iOS >= 4.3 && BROWSER.iOS < 4.33) ||
|
835 |
-
(!BROWSER.iOS && type === 'fixed')
|
836 |
-
){
|
837 |
-
position.left -= win.scrollLeft();
|
838 |
-
position.top -= win.scrollTop();
|
839 |
-
}
|
840 |
-
|
841 |
-
// Adjust position relative to target
|
842 |
-
if(!pluginCalculations || (pluginCalculations && pluginCalculations.adjustable !== FALSE)) {
|
843 |
-
position.left += at.x === RIGHT ? targetWidth : at.x === CENTER ? targetWidth / 2 : 0;
|
844 |
-
position.top += at.y === BOTTOM ? targetHeight : at.y === CENTER ? targetHeight / 2 : 0;
|
845 |
-
}
|
846 |
-
}
|
847 |
-
|
848 |
-
// Adjust position relative to tooltip
|
849 |
-
position.left += adjust.x + (my.x === RIGHT ? -tooltipWidth : my.x === CENTER ? -tooltipWidth / 2 : 0);
|
850 |
-
position.top += adjust.y + (my.y === BOTTOM ? -tooltipHeight : my.y === CENTER ? -tooltipHeight / 2 : 0);
|
851 |
-
|
852 |
-
// Use viewport adjustment plugin if enabled
|
853 |
-
if(PLUGINS.viewport) {
|
854 |
-
position.adjusted = PLUGINS.viewport(
|
855 |
-
this, position, posOptions, targetWidth, targetHeight, tooltipWidth, tooltipHeight
|
856 |
-
);
|
857 |
-
|
858 |
-
// Apply offsets supplied by positioning plugin (if used)
|
859 |
-
if(offset && position.adjusted.left) { position.left += offset.left; }
|
860 |
-
if(offset && position.adjusted.top) { position.top += offset.top; }
|
861 |
-
}
|
862 |
-
|
863 |
-
// Viewport adjustment is disabled, set values to zero
|
864 |
-
else { position.adjusted = { left: 0, top: 0 }; }
|
865 |
-
|
866 |
-
// tooltipmove event
|
867 |
-
if(!this._trigger('move', [position, viewport.elem || viewport], event)) { return this; }
|
868 |
-
delete position.adjusted;
|
869 |
-
|
870 |
-
// If effect is disabled, target it mouse, no animation is defined or positioning gives NaN out, set CSS directly
|
871 |
-
if(effect === FALSE || !visible || isNaN(position.left) || isNaN(position.top) || target === 'mouse' || !$.isFunction(posOptions.effect)) {
|
872 |
-
tooltip.css(position);
|
873 |
-
}
|
874 |
-
|
875 |
-
// Use custom function if provided
|
876 |
-
else if($.isFunction(posOptions.effect)) {
|
877 |
-
posOptions.effect.call(tooltip, this, $.extend({}, position));
|
878 |
-
tooltip.queue(function(next) {
|
879 |
-
// Reset attributes to avoid cross-browser rendering bugs
|
880 |
-
$(this).css({ opacity: '', height: '' });
|
881 |
-
if(BROWSER.ie) { this.style.removeAttribute('filter'); }
|
882 |
-
|
883 |
-
next();
|
884 |
-
});
|
885 |
-
}
|
886 |
-
|
887 |
-
// Set positioning flag
|
888 |
-
this.positioning = FALSE;
|
889 |
-
|
890 |
-
return this;
|
891 |
-
};
|
892 |
-
|
893 |
-
// Custom (more correct for qTip!) offset calculator
|
894 |
-
PROTOTYPE.reposition.offset = function(elem, pos, container) {
|
895 |
-
if(!container[0]) { return pos; }
|
896 |
-
|
897 |
-
var ownerDocument = $(elem[0].ownerDocument),
|
898 |
-
quirks = !!BROWSER.ie && document.compatMode !== 'CSS1Compat',
|
899 |
-
parent = container[0],
|
900 |
-
scrolled, position, parentOffset, overflow;
|
901 |
-
|
902 |
-
function scroll(e, i) {
|
903 |
-
pos.left += i * e.scrollLeft();
|
904 |
-
pos.top += i * e.scrollTop();
|
905 |
-
}
|
906 |
-
|
907 |
-
// Compensate for non-static containers offset
|
908 |
-
do {
|
909 |
-
if((position = $.css(parent, 'position')) !== 'static') {
|
910 |
-
if(position === 'fixed') {
|
911 |
-
parentOffset = parent.getBoundingClientRect();
|
912 |
-
scroll(ownerDocument, -1);
|
913 |
-
}
|
914 |
-
else {
|
915 |
-
parentOffset = $(parent).position();
|
916 |
-
parentOffset.left += (parseFloat($.css(parent, 'borderLeftWidth')) || 0);
|
917 |
-
parentOffset.top += (parseFloat($.css(parent, 'borderTopWidth')) || 0);
|
918 |
-
}
|
919 |
-
|
920 |
-
pos.left -= parentOffset.left + (parseFloat($.css(parent, 'marginLeft')) || 0);
|
921 |
-
pos.top -= parentOffset.top + (parseFloat($.css(parent, 'marginTop')) || 0);
|
922 |
-
|
923 |
-
// If this is the first parent element with an overflow of "scroll" or "auto", store it
|
924 |
-
if(!scrolled && (overflow = $.css(parent, 'overflow')) !== 'hidden' && overflow !== 'visible') { scrolled = $(parent); }
|
925 |
-
}
|
926 |
-
}
|
927 |
-
while((parent = parent.offsetParent));
|
928 |
-
|
929 |
-
// Compensate for containers scroll if it also has an offsetParent (or in IE quirks mode)
|
930 |
-
if(scrolled && (scrolled[0] !== ownerDocument[0] || quirks)) {
|
931 |
-
scroll(scrolled, 1);
|
932 |
-
}
|
933 |
-
|
934 |
-
return pos;
|
935 |
-
};
|
936 |
-
|
937 |
-
// Corner class
|
938 |
-
var C = (CORNER = PROTOTYPE.reposition.Corner = function(corner, forceY) {
|
939 |
-
corner = ('' + corner).replace(/([A-Z])/, ' $1').replace(/middle/gi, CENTER).toLowerCase();
|
940 |
-
this.x = (corner.match(/left|right/i) || corner.match(/center/) || ['inherit'])[0].toLowerCase();
|
941 |
-
this.y = (corner.match(/top|bottom|center/i) || ['inherit'])[0].toLowerCase();
|
942 |
-
this.forceY = !!forceY;
|
943 |
-
|
944 |
-
var f = corner.charAt(0);
|
945 |
-
this.precedance = (f === 't' || f === 'b' ? Y : X);
|
946 |
-
}).prototype;
|
947 |
-
|
948 |
-
C.invert = function(z, center) {
|
949 |
-
this[z] = this[z] === LEFT ? RIGHT : this[z] === RIGHT ? LEFT : center || this[z];
|
950 |
-
};
|
951 |
-
|
952 |
-
C.string = function() {
|
953 |
-
var x = this.x, y = this.y;
|
954 |
-
return x === y ? x : this.precedance === Y || (this.forceY && y !== 'center') ? y+' '+x : x+' '+y;
|
955 |
-
};
|
956 |
-
|
957 |
-
C.abbrev = function() {
|
958 |
-
var result = this.string().split(' ');
|
959 |
-
return result[0].charAt(0) + (result[1] && result[1].charAt(0) || '');
|
960 |
-
};
|
961 |
-
|
962 |
-
C.clone = function() {
|
963 |
-
return new CORNER( this.string(), this.forceY );
|
964 |
-
};;
|
965 |
-
PROTOTYPE.toggle = function(state, event) {
|
966 |
-
var cache = this.cache,
|
967 |
-
options = this.options,
|
968 |
-
tooltip = this.tooltip;
|
969 |
-
|
970 |
-
// Try to prevent flickering when tooltip overlaps show element
|
971 |
-
if(event) {
|
972 |
-
if((/over|enter/).test(event.type) && (/out|leave/).test(cache.event.type) &&
|
973 |
-
options.show.target.add(event.target).length === options.show.target.length &&
|
974 |
-
tooltip.has(event.relatedTarget).length) {
|
975 |
-
return this;
|
976 |
-
}
|
977 |
-
|
978 |
-
// Cache event
|
979 |
-
cache.event = cloneEvent(event);
|
980 |
-
}
|
981 |
-
|
982 |
-
// If we're currently waiting and we've just hidden... stop it
|
983 |
-
this.waiting && !state && (this.hiddenDuringWait = TRUE);
|
984 |
-
|
985 |
-
// Render the tooltip if showing and it isn't already
|
986 |
-
if(!this.rendered) { return state ? this.render(1) : this; }
|
987 |
-
else if(this.destroyed || this.disabled) { return this; }
|
988 |
-
|
989 |
-
var type = state ? 'show' : 'hide',
|
990 |
-
opts = this.options[type],
|
991 |
-
otherOpts = this.options[ !state ? 'show' : 'hide' ],
|
992 |
-
posOptions = this.options.position,
|
993 |
-
contentOptions = this.options.content,
|
994 |
-
width = this.tooltip.css('width'),
|
995 |
-
visible = this.tooltip.is(':visible'),
|
996 |
-
animate = state || opts.target.length === 1,
|
997 |
-
sameTarget = !event || opts.target.length < 2 || cache.target[0] === event.target,
|
998 |
-
identicalState, allow, showEvent, delay, after;
|
999 |
-
|
1000 |
-
// Detect state if valid one isn't provided
|
1001 |
-
if((typeof state).search('boolean|number')) { state = !visible; }
|
1002 |
-
|
1003 |
-
// Check if the tooltip is in an identical state to the new would-be state
|
1004 |
-
identicalState = !tooltip.is(':animated') && visible === state && sameTarget;
|
1005 |
-
|
1006 |
-
// Fire tooltip(show/hide) event and check if destroyed
|
1007 |
-
allow = !identicalState ? !!this._trigger(type, [90]) : NULL;
|
1008 |
-
|
1009 |
-
// Check to make sure the tooltip wasn't destroyed in the callback
|
1010 |
-
if(this.destroyed) { return this; }
|
1011 |
-
|
1012 |
-
// If the user didn't stop the method prematurely and we're showing the tooltip, focus it
|
1013 |
-
if(allow !== FALSE && state) { this.focus(event); }
|
1014 |
-
|
1015 |
-
// If the state hasn't changed or the user stopped it, return early
|
1016 |
-
if(!allow || identicalState) { return this; }
|
1017 |
-
|
1018 |
-
// Set ARIA hidden attribute
|
1019 |
-
$.attr(tooltip[0], 'aria-hidden', !!!state);
|
1020 |
-
|
1021 |
-
// Execute state specific properties
|
1022 |
-
if(state) {
|
1023 |
-
// Store show origin coordinates
|
1024 |
-
cache.origin = cloneEvent(this.mouse);
|
1025 |
-
|
1026 |
-
// Update tooltip content & title if it's a dynamic function
|
1027 |
-
if($.isFunction(contentOptions.text)) { this._updateContent(contentOptions.text, FALSE); }
|
1028 |
-
if($.isFunction(contentOptions.title)) { this._updateTitle(contentOptions.title, FALSE); }
|
1029 |
-
|
1030 |
-
// Cache mousemove events for positioning purposes (if not already tracking)
|
1031 |
-
if(!trackingBound && posOptions.target === 'mouse' && posOptions.adjust.mouse) {
|
1032 |
-
$(document).bind('mousemove.'+NAMESPACE, this._storeMouse);
|
1033 |
-
trackingBound = TRUE;
|
1034 |
-
}
|
1035 |
-
|
1036 |
-
// Update the tooltip position (set width first to prevent viewport/max-width issues)
|
1037 |
-
if(!width) { tooltip.css('width', tooltip.outerWidth(FALSE)); }
|
1038 |
-
this.reposition(event, arguments[2]);
|
1039 |
-
if(!width) { tooltip.css('width', ''); }
|
1040 |
-
|
1041 |
-
// Hide other tooltips if tooltip is solo
|
1042 |
-
if(!!opts.solo) {
|
1043 |
-
(typeof opts.solo === 'string' ? $(opts.solo) : $(SELECTOR, opts.solo))
|
1044 |
-
.not(tooltip).not(opts.target).qtip('hide', $.Event('tooltipsolo'));
|
1045 |
-
}
|
1046 |
-
}
|
1047 |
-
else {
|
1048 |
-
// Clear show timer if we're hiding
|
1049 |
-
clearTimeout(this.timers.show);
|
1050 |
-
|
1051 |
-
// Remove cached origin on hide
|
1052 |
-
delete cache.origin;
|
1053 |
-
|
1054 |
-
// Remove mouse tracking event if not needed (all tracking qTips are hidden)
|
1055 |
-
if(trackingBound && !$(SELECTOR+'[tracking="true"]:visible', opts.solo).not(tooltip).length) {
|
1056 |
-
$(document).unbind('mousemove.'+NAMESPACE);
|
1057 |
-
trackingBound = FALSE;
|
1058 |
-
}
|
1059 |
-
|
1060 |
-
// Blur the tooltip
|
1061 |
-
this.blur(event);
|
1062 |
-
}
|
1063 |
-
|
1064 |
-
// Define post-animation, state specific properties
|
1065 |
-
after = $.proxy(function() {
|
1066 |
-
if(state) {
|
1067 |
-
// Prevent antialias from disappearing in IE by removing filter
|
1068 |
-
if(BROWSER.ie) { tooltip[0].style.removeAttribute('filter'); }
|
1069 |
-
|
1070 |
-
// Remove overflow setting to prevent tip bugs
|
1071 |
-
tooltip.css('overflow', '');
|
1072 |
-
|
1073 |
-
// Autofocus elements if enabled
|
1074 |
-
if('string' === typeof opts.autofocus) {
|
1075 |
-
$(this.options.show.autofocus, tooltip).focus();
|
1076 |
-
}
|
1077 |
-
|
1078 |
-
// If set, hide tooltip when inactive for delay period
|
1079 |
-
this.options.show.target.trigger('qtip-'+this.id+'-inactive');
|
1080 |
-
}
|
1081 |
-
else {
|
1082 |
-
// Reset CSS states
|
1083 |
-
tooltip.css({
|
1084 |
-
display: '',
|
1085 |
-
visibility: '',
|
1086 |
-
opacity: '',
|
1087 |
-
left: '',
|
1088 |
-
top: ''
|
1089 |
-
});
|
1090 |
-
}
|
1091 |
-
|
1092 |
-
// tooltipvisible/tooltiphidden events
|
1093 |
-
this._trigger(state ? 'visible' : 'hidden');
|
1094 |
-
}, this);
|
1095 |
-
|
1096 |
-
// If no effect type is supplied, use a simple toggle
|
1097 |
-
if(opts.effect === FALSE || animate === FALSE) {
|
1098 |
-
tooltip[ type ]();
|
1099 |
-
after();
|
1100 |
-
}
|
1101 |
-
|
1102 |
-
// Use custom function if provided
|
1103 |
-
else if($.isFunction(opts.effect)) {
|
1104 |
-
tooltip.stop(1, 1);
|
1105 |
-
opts.effect.call(tooltip, this);
|
1106 |
-
tooltip.queue('fx', function(n) {
|
1107 |
-
after(); n();
|
1108 |
-
});
|
1109 |
-
}
|
1110 |
-
|
1111 |
-
// Use basic fade function by default
|
1112 |
-
else { tooltip.fadeTo(90, state ? 1 : 0, after); }
|
1113 |
-
|
1114 |
-
// If inactive hide method is set, active it
|
1115 |
-
if(state) { opts.target.trigger('qtip-'+this.id+'-inactive'); }
|
1116 |
-
|
1117 |
-
return this;
|
1118 |
-
};
|
1119 |
-
|
1120 |
-
PROTOTYPE.show = function(event) { return this.toggle(TRUE, event); };
|
1121 |
-
|
1122 |
-
PROTOTYPE.hide = function(event) { return this.toggle(FALSE, event); };
|
1123 |
-
|
1124 |
-
;PROTOTYPE.focus = function(event) {
|
1125 |
-
if(!this.rendered || this.destroyed) { return this; }
|
1126 |
-
|
1127 |
-
var qtips = $(SELECTOR),
|
1128 |
-
tooltip = this.tooltip,
|
1129 |
-
curIndex = parseInt(tooltip[0].style.zIndex, 10),
|
1130 |
-
newIndex = QTIP.zindex + qtips.length,
|
1131 |
-
focusedElem;
|
1132 |
-
|
1133 |
-
// Only update the z-index if it has changed and tooltip is not already focused
|
1134 |
-
if(!tooltip.hasClass(CLASS_FOCUS)) {
|
1135 |
-
// tooltipfocus event
|
1136 |
-
if(this._trigger('focus', [newIndex], event)) {
|
1137 |
-
// Only update z-index's if they've changed
|
1138 |
-
if(curIndex !== newIndex) {
|
1139 |
-
// Reduce our z-index's and keep them properly ordered
|
1140 |
-
qtips.each(function() {
|
1141 |
-
if(this.style.zIndex > curIndex) {
|
1142 |
-
this.style.zIndex = this.style.zIndex - 1;
|
1143 |
-
}
|
1144 |
-
});
|
1145 |
-
|
1146 |
-
// Fire blur event for focused tooltip
|
1147 |
-
qtips.filter('.' + CLASS_FOCUS).qtip('blur', event);
|
1148 |
-
}
|
1149 |
-
|
1150 |
-
// Set the new z-index
|
1151 |
-
tooltip.addClass(CLASS_FOCUS)[0].style.zIndex = newIndex;
|
1152 |
-
}
|
1153 |
-
}
|
1154 |
-
|
1155 |
-
return this;
|
1156 |
-
};
|
1157 |
-
|
1158 |
-
PROTOTYPE.blur = function(event) {
|
1159 |
-
if(!this.rendered || this.destroyed) { return this; }
|
1160 |
-
|
1161 |
-
// Set focused status to FALSE
|
1162 |
-
this.tooltip.removeClass(CLASS_FOCUS);
|
1163 |
-
|
1164 |
-
// tooltipblur event
|
1165 |
-
this._trigger('blur', [ this.tooltip.css('zIndex') ], event);
|
1166 |
-
|
1167 |
-
return this;
|
1168 |
-
};
|
1169 |
-
|
1170 |
-
;PROTOTYPE.disable = function(state) {
|
1171 |
-
if(this.destroyed) { return this; }
|
1172 |
-
|
1173 |
-
// If 'toggle' is passed, toggle the current state
|
1174 |
-
if(state === 'toggle') {
|
1175 |
-
state = !(this.rendered ? this.tooltip.hasClass(CLASS_DISABLED) : this.disabled);
|
1176 |
-
}
|
1177 |
-
|
1178 |
-
// Disable if no state passed
|
1179 |
-
else if('boolean' !== typeof state) {
|
1180 |
-
state = TRUE;
|
1181 |
-
}
|
1182 |
-
|
1183 |
-
if(this.rendered) {
|
1184 |
-
this.tooltip.toggleClass(CLASS_DISABLED, state)
|
1185 |
-
.attr('aria-disabled', state);
|
1186 |
-
}
|
1187 |
-
|
1188 |
-
this.disabled = !!state;
|
1189 |
-
|
1190 |
-
return this;
|
1191 |
-
};
|
1192 |
-
|
1193 |
-
PROTOTYPE.enable = function() { return this.disable(FALSE); };
|
1194 |
-
|
1195 |
-
;PROTOTYPE._createButton = function()
|
1196 |
-
{
|
1197 |
-
var self = this,
|
1198 |
-
elements = this.elements,
|
1199 |
-
tooltip = elements.tooltip,
|
1200 |
-
button = this.options.content.button,
|
1201 |
-
isString = typeof button === 'string',
|
1202 |
-
close = isString ? button : 'Close tooltip';
|
1203 |
-
|
1204 |
-
if(elements.button) { elements.button.remove(); }
|
1205 |
-
|
1206 |
-
// Use custom button if one was supplied by user, else use default
|
1207 |
-
if(button.jquery) {
|
1208 |
-
elements.button = button;
|
1209 |
-
}
|
1210 |
-
else {
|
1211 |
-
elements.button = $('<a />', {
|
1212 |
-
'class': 'qtip-close ' + (this.options.style.widget ? '' : NAMESPACE+'-icon'),
|
1213 |
-
'title': close,
|
1214 |
-
'aria-label': close
|
1215 |
-
})
|
1216 |
-
.prepend(
|
1217 |
-
$('<span />', {
|
1218 |
-
'class': 'ui-icon ui-icon-close',
|
1219 |
-
'html': '×'
|
1220 |
-
})
|
1221 |
-
);
|
1222 |
-
}
|
1223 |
-
|
1224 |
-
// Create button and setup attributes
|
1225 |
-
elements.button.appendTo(elements.titlebar || tooltip)
|
1226 |
-
.attr('role', 'button')
|
1227 |
-
.click(function(event) {
|
1228 |
-
if(!tooltip.hasClass(CLASS_DISABLED)) { self.hide(event); }
|
1229 |
-
return FALSE;
|
1230 |
-
});
|
1231 |
-
};
|
1232 |
-
|
1233 |
-
PROTOTYPE._updateButton = function(button)
|
1234 |
-
{
|
1235 |
-
// Make sure tooltip is rendered and if not, return
|
1236 |
-
if(!this.rendered) { return FALSE; }
|
1237 |
-
|
1238 |
-
var elem = this.elements.button;
|
1239 |
-
if(button) { this._createButton(); }
|
1240 |
-
else { elem.remove(); }
|
1241 |
-
};
|
1242 |
-
|
1243 |
-
;// Widget class creator
|
1244 |
-
function createWidgetClass(cls) {
|
1245 |
-
return WIDGET.concat('').join(cls ? '-'+cls+' ' : ' ');
|
1246 |
-
}
|
1247 |
-
|
1248 |
-
// Widget class setter method
|
1249 |
-
PROTOTYPE._setWidget = function()
|
1250 |
-
{
|
1251 |
-
var on = this.options.style.widget,
|
1252 |
-
elements = this.elements,
|
1253 |
-
tooltip = elements.tooltip,
|
1254 |
-
disabled = tooltip.hasClass(CLASS_DISABLED);
|
1255 |
-
|
1256 |
-
tooltip.removeClass(CLASS_DISABLED);
|
1257 |
-
CLASS_DISABLED = on ? 'ui-state-disabled' : 'qtip-disabled';
|
1258 |
-
tooltip.toggleClass(CLASS_DISABLED, disabled);
|
1259 |
-
|
1260 |
-
tooltip.toggleClass('ui-helper-reset '+createWidgetClass(), on).toggleClass(CLASS_DEFAULT, this.options.style.def && !on);
|
1261 |
-
|
1262 |
-
if(elements.content) {
|
1263 |
-
elements.content.toggleClass( createWidgetClass('content'), on);
|
1264 |
-
}
|
1265 |
-
if(elements.titlebar) {
|
1266 |
-
elements.titlebar.toggleClass( createWidgetClass('header'), on);
|
1267 |
-
}
|
1268 |
-
if(elements.button) {
|
1269 |
-
elements.button.toggleClass(NAMESPACE+'-icon', !on);
|
1270 |
-
}
|
1271 |
-
};;function cloneEvent(event) {
|
1272 |
-
return event && {
|
1273 |
-
type: event.type,
|
1274 |
-
pageX: event.pageX,
|
1275 |
-
pageY: event.pageY,
|
1276 |
-
target: event.target,
|
1277 |
-
relatedTarget: event.relatedTarget,
|
1278 |
-
scrollX: event.scrollX || window.pageXOffset || document.body.scrollLeft || document.documentElement.scrollLeft,
|
1279 |
-
scrollY: event.scrollY || window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop
|
1280 |
-
} || {};
|
1281 |
-
}
|
1282 |
-
|
1283 |
-
function delay(callback, duration) {
|
1284 |
-
// If tooltip has displayed, start hide timer
|
1285 |
-
if(duration > 0) {
|
1286 |
-
return setTimeout(
|
1287 |
-
$.proxy(callback, this), duration
|
1288 |
-
);
|
1289 |
-
}
|
1290 |
-
else{ callback.call(this); }
|
1291 |
-
}
|
1292 |
-
|
1293 |
-
function showMethod(event) {
|
1294 |
-
if(this.tooltip.hasClass(CLASS_DISABLED)) { return FALSE; }
|
1295 |
-
|
1296 |
-
// Clear hide timers
|
1297 |
-
clearTimeout(this.timers.show);
|
1298 |
-
clearTimeout(this.timers.hide);
|
1299 |
-
|
1300 |
-
// Start show timer
|
1301 |
-
this.timers.show = delay.call(this,
|
1302 |
-
function() { this.toggle(TRUE, event); },
|
1303 |
-
this.options.show.delay
|
1304 |
-
);
|
1305 |
-
}
|
1306 |
-
|
1307 |
-
function hideMethod(event) {
|
1308 |
-
if(this.tooltip.hasClass(CLASS_DISABLED)) { return FALSE; }
|
1309 |
-
|
1310 |
-
// Check if new target was actually the tooltip element
|
1311 |
-
var relatedTarget = $(event.relatedTarget),
|
1312 |
-
ontoTooltip = relatedTarget.closest(SELECTOR)[0] === this.tooltip[0],
|
1313 |
-
ontoTarget = relatedTarget[0] === this.options.show.target[0];
|
1314 |
-
|
1315 |
-
// Clear timers and stop animation queue
|
1316 |
-
clearTimeout(this.timers.show);
|
1317 |
-
clearTimeout(this.timers.hide);
|
1318 |
-
|
1319 |
-
// Prevent hiding if tooltip is fixed and event target is the tooltip.
|
1320 |
-
// Or if mouse positioning is enabled and cursor momentarily overlaps
|
1321 |
-
if(this !== relatedTarget[0] &&
|
1322 |
-
(this.options.position.target === 'mouse' && ontoTooltip) ||
|
1323 |
-
(this.options.hide.fixed && (
|
1324 |
-
(/mouse(out|leave|move)/).test(event.type) && (ontoTooltip || ontoTarget))
|
1325 |
-
))
|
1326 |
-
{
|
1327 |
-
try {
|
1328 |
-
event.preventDefault();
|
1329 |
-
event.stopImmediatePropagation();
|
1330 |
-
} catch(e) {}
|
1331 |
-
|
1332 |
-
return;
|
1333 |
-
}
|
1334 |
-
|
1335 |
-
// If tooltip has displayed, start hide timer
|
1336 |
-
this.timers.hide = delay.call(this,
|
1337 |
-
function() { this.toggle(FALSE, event); },
|
1338 |
-
this.options.hide.delay,
|
1339 |
-
this
|
1340 |
-
);
|
1341 |
-
}
|
1342 |
-
|
1343 |
-
function inactiveMethod(event) {
|
1344 |
-
if(this.tooltip.hasClass(CLASS_DISABLED) || !this.options.hide.inactive) { return FALSE; }
|
1345 |
-
|
1346 |
-
// Clear timer
|
1347 |
-
clearTimeout(this.timers.inactive);
|
1348 |
-
|
1349 |
-
this.timers.inactive = delay.call(this,
|
1350 |
-
function(){ this.hide(event); },
|
1351 |
-
this.options.hide.inactive
|
1352 |
-
);
|
1353 |
-
}
|
1354 |
-
|
1355 |
-
function repositionMethod(event) {
|
1356 |
-
if(this.rendered && this.tooltip[0].offsetWidth > 0) { this.reposition(event); }
|
1357 |
-
}
|
1358 |
-
|
1359 |
-
// Store mouse coordinates
|
1360 |
-
PROTOTYPE._storeMouse = function(event) {
|
1361 |
-
(this.mouse = cloneEvent(event)).type = 'mousemove';
|
1362 |
-
};
|
1363 |
-
|
1364 |
-
// Bind events
|
1365 |
-
PROTOTYPE._bind = function(targets, events, method, suffix, context) {
|
1366 |
-
var ns = '.' + this._id + (suffix ? '-'+suffix : '');
|
1367 |
-
events.length && $(targets).bind(
|
1368 |
-
(events.split ? events : events.join(ns + ' ')) + ns,
|
1369 |
-
$.proxy(method, context || this)
|
1370 |
-
);
|
1371 |
-
};
|
1372 |
-
PROTOTYPE._unbind = function(targets, suffix) {
|
1373 |
-
$(targets).unbind('.' + this._id + (suffix ? '-'+suffix : ''));
|
1374 |
-
};
|
1375 |
-
|
1376 |
-
// Apply common event handlers using delegate (avoids excessive .bind calls!)
|
1377 |
-
var ns = '.'+NAMESPACE;
|
1378 |
-
function delegate(selector, events, method) {
|
1379 |
-
$(document.body).delegate(selector,
|
1380 |
-
(events.split ? events : events.join(ns + ' ')) + ns,
|
1381 |
-
function() {
|
1382 |
-
var api = QTIP.api[ $.attr(this, ATTR_ID) ];
|
1383 |
-
api && !api.disabled && method.apply(api, arguments);
|
1384 |
-
}
|
1385 |
-
);
|
1386 |
-
}
|
1387 |
-
|
1388 |
-
$(function() {
|
1389 |
-
delegate(SELECTOR, ['mouseenter', 'mouseleave'], function(event) {
|
1390 |
-
var state = event.type === 'mouseenter',
|
1391 |
-
tooltip = $(event.currentTarget),
|
1392 |
-
target = $(event.relatedTarget || event.target),
|
1393 |
-
options = this.options;
|
1394 |
-
|
1395 |
-
// On mouseenter...
|
1396 |
-
if(state) {
|
1397 |
-
// Focus the tooltip on mouseenter (z-index stacking)
|
1398 |
-
this.focus(event);
|
1399 |
-
|
1400 |
-
// Clear hide timer on tooltip hover to prevent it from closing
|
1401 |
-
tooltip.hasClass(CLASS_FIXED) && !tooltip.hasClass(CLASS_DISABLED) && clearTimeout(this.timers.hide);
|
1402 |
-
}
|
1403 |
-
|
1404 |
-
// On mouseleave...
|
1405 |
-
else {
|
1406 |
-
// Hide when we leave the tooltip and not onto the show target (if a hide event is set)
|
1407 |
-
if(options.position.target === 'mouse' && options.hide.event &&
|
1408 |
-
options.show.target && !target.closest(options.show.target[0]).length) {
|
1409 |
-
this.hide(event);
|
1410 |
-
}
|
1411 |
-
}
|
1412 |
-
|
1413 |
-
// Add hover class
|
1414 |
-
tooltip.toggleClass(CLASS_HOVER, state);
|
1415 |
-
});
|
1416 |
-
|
1417 |
-
// Define events which reset the 'inactive' event handler
|
1418 |
-
delegate('['+ATTR_ID+']', INACTIVE_EVENTS, inactiveMethod);
|
1419 |
-
});
|
1420 |
-
|
1421 |
-
// Event trigger
|
1422 |
-
PROTOTYPE._trigger = function(type, args, event) {
|
1423 |
-
var callback = $.Event('tooltip'+type);
|
1424 |
-
callback.originalEvent = (event && $.extend({}, event)) || this.cache.event || NULL;
|
1425 |
-
|
1426 |
-
this.triggering = type;
|
1427 |
-
this.tooltip.trigger(callback, [this].concat(args || []));
|
1428 |
-
this.triggering = FALSE;
|
1429 |
-
|
1430 |
-
return !callback.isDefaultPrevented();
|
1431 |
-
};
|
1432 |
-
|
1433 |
-
PROTOTYPE._bindEvents = function(showEvents, hideEvents, showTarget, hideTarget, showMethod, hideMethod) {
|
1434 |
-
// If hide and show targets are the same...
|
1435 |
-
if(hideTarget.add(showTarget).length === hideTarget.length) {
|
1436 |
-
var toggleEvents = [];
|
1437 |
-
|
1438 |
-
// Filter identical show/hide events
|
1439 |
-
hideEvents = $.map(hideEvents, function(type) {
|
1440 |
-
var showIndex = $.inArray(type, showEvents);
|
1441 |
-
|
1442 |
-
// Both events are identical, remove from both hide and show events
|
1443 |
-
// and append to toggleEvents
|
1444 |
-
if(showIndex > -1) {
|
1445 |
-
toggleEvents.push( showEvents.splice( showIndex, 1 )[0] );
|
1446 |
-
return;
|
1447 |
-
}
|
1448 |
-
|
1449 |
-
return type;
|
1450 |
-
});
|
1451 |
-
|
1452 |
-
// Toggle events are special case of identical show/hide events, which happen in sequence
|
1453 |
-
toggleEvents.length && this._bind(showTarget, toggleEvents, function(event) {
|
1454 |
-
var state = this.rendered ? this.tooltip[0].offsetWidth > 0 : false;
|
1455 |
-
(state ? hideMethod : showMethod).call(this, event);
|
1456 |
-
});
|
1457 |
-
}
|
1458 |
-
|
1459 |
-
// Apply show/hide/toggle events
|
1460 |
-
this._bind(showTarget, showEvents, showMethod);
|
1461 |
-
this._bind(hideTarget, hideEvents, hideMethod);
|
1462 |
-
};
|
1463 |
-
|
1464 |
-
PROTOTYPE._assignInitialEvents = function(event) {
|
1465 |
-
var options = this.options,
|
1466 |
-
showTarget = options.show.target,
|
1467 |
-
hideTarget = options.hide.target,
|
1468 |
-
showEvents = options.show.event ? $.trim('' + options.show.event).split(' ') : [],
|
1469 |
-
hideEvents = options.hide.event ? $.trim('' + options.hide.event).split(' ') : [];
|
1470 |
-
|
1471 |
-
/*
|
1472 |
-
* Make sure hoverIntent functions properly by using mouseleave as a hide event if
|
1473 |
-
* mouseenter/mouseout is used for show.event, even if it isn't in the users options.
|
1474 |
-
*/
|
1475 |
-
if(/mouse(over|enter)/i.test(options.show.event) && !/mouse(out|leave)/i.test(options.hide.event)) {
|
1476 |
-
hideEvents.push('mouseleave');
|
1477 |
-
}
|
1478 |
-
|
1479 |
-
/*
|
1480 |
-
* Also make sure initial mouse targetting works correctly by caching mousemove coords
|
1481 |
-
* on show targets before the tooltip has rendered. Also set onTarget when triggered to
|
1482 |
-
* keep mouse tracking working.
|
1483 |
-
*/
|
1484 |
-
this._bind(showTarget, 'mousemove', function(event) {
|
1485 |
-
this._storeMouse(event);
|
1486 |
-
this.cache.onTarget = TRUE;
|
1487 |
-
});
|
1488 |
-
|
1489 |
-
// Define hoverIntent function
|
1490 |
-
function hoverIntent(event) {
|
1491 |
-
// Only continue if tooltip isn't disabled
|
1492 |
-
if(this.disabled || this.destroyed) { return FALSE; }
|
1493 |
-
|
1494 |
-
// Cache the event data
|
1495 |
-
this.cache.event = cloneEvent(event);
|
1496 |
-
this.cache.target = event ? $(event.target) : [undefined];
|
1497 |
-
|
1498 |
-
// Start the event sequence
|
1499 |
-
clearTimeout(this.timers.show);
|
1500 |
-
this.timers.show = delay.call(this,
|
1501 |
-
function() { this.render(typeof event === 'object' || options.show.ready); },
|
1502 |
-
options.show.delay
|
1503 |
-
);
|
1504 |
-
}
|
1505 |
-
|
1506 |
-
// Filter and bind events
|
1507 |
-
this._bindEvents(showEvents, hideEvents, showTarget, hideTarget, hoverIntent, function() {
|
1508 |
-
clearTimeout(this.timers.show);
|
1509 |
-
});
|
1510 |
-
|
1511 |
-
// Prerendering is enabled, create tooltip now
|
1512 |
-
if(options.show.ready || options.prerender) { hoverIntent.call(this, event); }
|
1513 |
-
};
|
1514 |
-
|
1515 |
-
// Event assignment method
|
1516 |
-
PROTOTYPE._assignEvents = function() {
|
1517 |
-
var self = this,
|
1518 |
-
options = this.options,
|
1519 |
-
posOptions = options.position,
|
1520 |
-
|
1521 |
-
tooltip = this.tooltip,
|
1522 |
-
showTarget = options.show.target,
|
1523 |
-
hideTarget = options.hide.target,
|
1524 |
-
containerTarget = posOptions.container,
|
1525 |
-
viewportTarget = posOptions.viewport,
|
1526 |
-
documentTarget = $(document),
|
1527 |
-
bodyTarget = $(document.body),
|
1528 |
-
windowTarget = $(window),
|
1529 |
-
|
1530 |
-
showEvents = options.show.event ? $.trim('' + options.show.event).split(' ') : [],
|
1531 |
-
hideEvents = options.hide.event ? $.trim('' + options.hide.event).split(' ') : [];
|
1532 |
-
|
1533 |
-
|
1534 |
-
// Assign passed event callbacks
|
1535 |
-
$.each(options.events, function(name, callback) {
|
1536 |
-
self._bind(tooltip, name === 'toggle' ? ['tooltipshow','tooltiphide'] : ['tooltip'+name], callback, null, tooltip);
|
1537 |
-
});
|
1538 |
-
|
1539 |
-
// Hide tooltips when leaving current window/frame (but not select/option elements)
|
1540 |
-
if(/mouse(out|leave)/i.test(options.hide.event) && options.hide.leave === 'window') {
|
1541 |
-
this._bind(documentTarget, ['mouseout', 'blur'], function(event) {
|
1542 |
-
if(!/select|option/.test(event.target.nodeName) && !event.relatedTarget) {
|
1543 |
-
this.hide(event);
|
1544 |
-
}
|
1545 |
-
});
|
1546 |
-
}
|
1547 |
-
|
1548 |
-
// Enable hide.fixed by adding appropriate class
|
1549 |
-
if(options.hide.fixed) {
|
1550 |
-
hideTarget = hideTarget.add( tooltip.addClass(CLASS_FIXED) );
|
1551 |
-
}
|
1552 |
-
|
1553 |
-
/*
|
1554 |
-
* Make sure hoverIntent functions properly by using mouseleave to clear show timer if
|
1555 |
-
* mouseenter/mouseout is used for show.event, even if it isn't in the users options.
|
1556 |
-
*/
|
1557 |
-
else if(/mouse(over|enter)/i.test(options.show.event)) {
|
1558 |
-
this._bind(hideTarget, 'mouseleave', function() {
|
1559 |
-
clearTimeout(this.timers.show);
|
1560 |
-
});
|
1561 |
-
}
|
1562 |
-
|
1563 |
-
// Hide tooltip on document mousedown if unfocus events are enabled
|
1564 |
-
if(('' + options.hide.event).indexOf('unfocus') > -1) {
|
1565 |
-
this._bind(containerTarget.closest('html'), ['mousedown', 'touchstart'], function(event) {
|
1566 |
-
var elem = $(event.target),
|
1567 |
-
enabled = this.rendered && !this.tooltip.hasClass(CLASS_DISABLED) && this.tooltip[0].offsetWidth > 0,
|
1568 |
-
isAncestor = elem.parents(SELECTOR).filter(this.tooltip[0]).length > 0;
|
1569 |
-
|
1570 |
-
if(elem[0] !== this.target[0] && elem[0] !== this.tooltip[0] && !isAncestor &&
|
1571 |
-
!this.target.has(elem[0]).length && enabled
|
1572 |
-
) {
|
1573 |
-
this.hide(event);
|
1574 |
-
}
|
1575 |
-
});
|
1576 |
-
}
|
1577 |
-
|
1578 |
-
// Check if the tooltip hides when inactive
|
1579 |
-
if('number' === typeof options.hide.inactive) {
|
1580 |
-
// Bind inactive method to show target(s) as a custom event
|
1581 |
-
this._bind(showTarget, 'qtip-'+this.id+'-inactive', inactiveMethod);
|
1582 |
-
|
1583 |
-
// Define events which reset the 'inactive' event handler
|
1584 |
-
this._bind(hideTarget.add(tooltip), QTIP.inactiveEvents, inactiveMethod, '-inactive');
|
1585 |
-
}
|
1586 |
-
|
1587 |
-
// Filter and bind events
|
1588 |
-
this._bindEvents(showEvents, hideEvents, showTarget, hideTarget, showMethod, hideMethod);
|
1589 |
-
|
1590 |
-
// Mouse movement bindings
|
1591 |
-
this._bind(showTarget.add(tooltip), 'mousemove', function(event) {
|
1592 |
-
// Check if the tooltip hides when mouse is moved a certain distance
|
1593 |
-
if('number' === typeof options.hide.distance) {
|
1594 |
-
var origin = this.cache.origin || {},
|
1595 |
-
limit = this.options.hide.distance,
|
1596 |
-
abs = Math.abs;
|
1597 |
-
|
1598 |
-
// Check if the movement has gone beyond the limit, and hide it if so
|
1599 |
-
if(abs(event.pageX - origin.pageX) >= limit || abs(event.pageY - origin.pageY) >= limit) {
|
1600 |
-
this.hide(event);
|
1601 |
-
}
|
1602 |
-
}
|
1603 |
-
|
1604 |
-
// Cache mousemove coords on show targets
|
1605 |
-
this._storeMouse(event);
|
1606 |
-
});
|
1607 |
-
|
1608 |
-
// Mouse positioning events
|
1609 |
-
if(posOptions.target === 'mouse') {
|
1610 |
-
// If mouse adjustment is on...
|
1611 |
-
if(posOptions.adjust.mouse) {
|
1612 |
-
// Apply a mouseleave event so we don't get problems with overlapping
|
1613 |
-
if(options.hide.event) {
|
1614 |
-
// Track if we're on the target or not
|
1615 |
-
this._bind(showTarget, ['mouseenter', 'mouseleave'], function(event) {
|
1616 |
-
this.cache.onTarget = event.type === 'mouseenter';
|
1617 |
-
});
|
1618 |
-
}
|
1619 |
-
|
1620 |
-
// Update tooltip position on mousemove
|
1621 |
-
this._bind(documentTarget, 'mousemove', function(event) {
|
1622 |
-
// Update the tooltip position only if the tooltip is visible and adjustment is enabled
|
1623 |
-
if(this.rendered && this.cache.onTarget && !this.tooltip.hasClass(CLASS_DISABLED) && this.tooltip[0].offsetWidth > 0) {
|
1624 |
-
this.reposition(event);
|
1625 |
-
}
|
1626 |
-
});
|
1627 |
-
}
|
1628 |
-
}
|
1629 |
-
|
1630 |
-
// Adjust positions of the tooltip on window resize if enabled
|
1631 |
-
if(posOptions.adjust.resize || viewportTarget.length) {
|
1632 |
-
this._bind( $.event.special.resize ? viewportTarget : windowTarget, 'resize', repositionMethod );
|
1633 |
-
}
|
1634 |
-
|
1635 |
-
// Adjust tooltip position on scroll of the window or viewport element if present
|
1636 |
-
if(posOptions.adjust.scroll) {
|
1637 |
-
this._bind( windowTarget.add(posOptions.container), 'scroll', repositionMethod );
|
1638 |
-
}
|
1639 |
-
};
|
1640 |
-
|
1641 |
-
// Un-assignment method
|
1642 |
-
PROTOTYPE._unassignEvents = function() {
|
1643 |
-
var targets = [
|
1644 |
-
this.options.show.target[0],
|
1645 |
-
this.options.hide.target[0],
|
1646 |
-
this.rendered && this.tooltip[0],
|
1647 |
-
this.options.position.container[0],
|
1648 |
-
this.options.position.viewport[0],
|
1649 |
-
this.options.position.container.closest('html')[0], // unfocus
|
1650 |
-
window,
|
1651 |
-
document
|
1652 |
-
];
|
1653 |
-
|
1654 |
-
this._unbind($([]).pushStack( $.grep(targets, function(i) {
|
1655 |
-
return typeof i === 'object';
|
1656 |
-
})));
|
1657 |
-
};
|
1658 |
-
|
1659 |
-
;// Initialization method
|
1660 |
-
function init(elem, id, opts) {
|
1661 |
-
var obj, posOptions, attr, config, title,
|
1662 |
-
|
1663 |
-
// Setup element references
|
1664 |
-
docBody = $(document.body),
|
1665 |
-
|
1666 |
-
// Use document body instead of document element if needed
|
1667 |
-
newTarget = elem[0] === document ? docBody : elem,
|
1668 |
-
|
1669 |
-
// Grab metadata from element if plugin is present
|
1670 |
-
metadata = (elem.metadata) ? elem.metadata(opts.metadata) : NULL,
|
1671 |
-
|
1672 |
-
// If metadata type if HTML5, grab 'name' from the object instead, or use the regular data object otherwise
|
1673 |
-
metadata5 = opts.metadata.type === 'html5' && metadata ? metadata[opts.metadata.name] : NULL,
|
1674 |
-
|
1675 |
-
// Grab data from metadata.name (or data-qtipopts as fallback) using .data() method,
|
1676 |
-
html5 = elem.data(opts.metadata.name || 'qtipopts');
|
1677 |
-
|
1678 |
-
// If we don't get an object returned attempt to parse it manualyl without parseJSON
|
1679 |
-
try { html5 = typeof html5 === 'string' ? $.parseJSON(html5) : html5; } catch(e) {}
|
1680 |
-
|
1681 |
-
// Merge in and sanitize metadata
|
1682 |
-
config = $.extend(TRUE, {}, QTIP.defaults, opts,
|
1683 |
-
typeof html5 === 'object' ? sanitizeOptions(html5) : NULL,
|
1684 |
-
sanitizeOptions(metadata5 || metadata));
|
1685 |
-
|
1686 |
-
// Re-grab our positioning options now we've merged our metadata and set id to passed value
|
1687 |
-
posOptions = config.position;
|
1688 |
-
config.id = id;
|
1689 |
-
|
1690 |
-
// Setup missing content if none is detected
|
1691 |
-
if('boolean' === typeof config.content.text) {
|
1692 |
-
attr = elem.attr(config.content.attr);
|
1693 |
-
|
1694 |
-
// Grab from supplied attribute if available
|
1695 |
-
if(config.content.attr !== FALSE && attr) { config.content.text = attr; }
|
1696 |
-
|
1697 |
-
// No valid content was found, abort render
|
1698 |
-
else { return FALSE; }
|
1699 |
-
}
|
1700 |
-
|
1701 |
-
// Setup target options
|
1702 |
-
if(!posOptions.container.length) { posOptions.container = docBody; }
|
1703 |
-
if(posOptions.target === FALSE) { posOptions.target = newTarget; }
|
1704 |
-
if(config.show.target === FALSE) { config.show.target = newTarget; }
|
1705 |
-
if(config.show.solo === TRUE) { config.show.solo = posOptions.container.closest('body'); }
|
1706 |
-
if(config.hide.target === FALSE) { config.hide.target = newTarget; }
|
1707 |
-
if(config.position.viewport === TRUE) { config.position.viewport = posOptions.container; }
|
1708 |
-
|
1709 |
-
// Ensure we only use a single container
|
1710 |
-
posOptions.container = posOptions.container.eq(0);
|
1711 |
-
|
1712 |
-
// Convert position corner values into x and y strings
|
1713 |
-
posOptions.at = new CORNER(posOptions.at, TRUE);
|
1714 |
-
posOptions.my = new CORNER(posOptions.my);
|
1715 |
-
|
1716 |
-
// Destroy previous tooltip if overwrite is enabled, or skip element if not
|
1717 |
-
if(elem.data(NAMESPACE)) {
|
1718 |
-
if(config.overwrite) {
|
1719 |
-
elem.qtip('destroy', true);
|
1720 |
-
}
|
1721 |
-
else if(config.overwrite === FALSE) {
|
1722 |
-
return FALSE;
|
1723 |
-
}
|
1724 |
-
}
|
1725 |
-
|
1726 |
-
// Add has-qtip attribute
|
1727 |
-
elem.attr(ATTR_HAS, id);
|
1728 |
-
|
1729 |
-
// Remove title attribute and store it if present
|
1730 |
-
if(config.suppress && (title = elem.attr('title'))) {
|
1731 |
-
// Final attr call fixes event delegatiom and IE default tooltip showing problem
|
1732 |
-
elem.removeAttr('title').attr(oldtitle, title).attr('title', '');
|
1733 |
-
}
|
1734 |
-
|
1735 |
-
// Initialize the tooltip and add API reference
|
1736 |
-
obj = new QTip(elem, config, id, !!attr);
|
1737 |
-
elem.data(NAMESPACE, obj);
|
1738 |
-
|
1739 |
-
// Catch remove/removeqtip events on target element to destroy redundant tooltip
|
1740 |
-
elem.one('remove.qtip-'+id+' removeqtip.qtip-'+id, function() {
|
1741 |
-
var api; if((api = $(this).data(NAMESPACE))) { api.destroy(true); }
|
1742 |
-
});
|
1743 |
-
|
1744 |
-
return obj;
|
1745 |
-
}
|
1746 |
-
|
1747 |
-
// jQuery $.fn extension method
|
1748 |
-
QTIP = $.fn.qtip = function(options, notation, newValue)
|
1749 |
-
{
|
1750 |
-
var command = ('' + options).toLowerCase(), // Parse command
|
1751 |
-
returned = NULL,
|
1752 |
-
args = $.makeArray(arguments).slice(1),
|
1753 |
-
event = args[args.length - 1],
|
1754 |
-
opts = this[0] ? $.data(this[0], NAMESPACE) : NULL;
|
1755 |
-
|
1756 |
-
// Check for API request
|
1757 |
-
if((!arguments.length && opts) || command === 'api') {
|
1758 |
-
return opts;
|
1759 |
-
}
|
1760 |
-
|
1761 |
-
// Execute API command if present
|
1762 |
-
else if('string' === typeof options) {
|
1763 |
-
this.each(function() {
|
1764 |
-
var api = $.data(this, NAMESPACE);
|
1765 |
-
if(!api) { return TRUE; }
|
1766 |
-
|
1767 |
-
// Cache the event if possible
|
1768 |
-
if(event && event.timeStamp) { api.cache.event = event; }
|
1769 |
-
|
1770 |
-
// Check for specific API commands
|
1771 |
-
if(notation && (command === 'option' || command === 'options')) {
|
1772 |
-
if(newValue !== undefined || $.isPlainObject(notation)) {
|
1773 |
-
api.set(notation, newValue);
|
1774 |
-
}
|
1775 |
-
else {
|
1776 |
-
returned = api.get(notation);
|
1777 |
-
return FALSE;
|
1778 |
-
}
|
1779 |
-
}
|
1780 |
-
|
1781 |
-
// Execute API command
|
1782 |
-
else if(api[command]) {
|
1783 |
-
api[command].apply(api, args);
|
1784 |
-
}
|
1785 |
-
});
|
1786 |
-
|
1787 |
-
return returned !== NULL ? returned : this;
|
1788 |
-
}
|
1789 |
-
|
1790 |
-
// No API commands. validate provided options and setup qTips
|
1791 |
-
else if('object' === typeof options || !arguments.length) {
|
1792 |
-
// Sanitize options first
|
1793 |
-
opts = sanitizeOptions($.extend(TRUE, {}, options));
|
1794 |
-
|
1795 |
-
return this.each(function(i) {
|
1796 |
-
var api, id;
|
1797 |
-
|
1798 |
-
// Find next available ID, or use custom ID if provided
|
1799 |
-
id = $.isArray(opts.id) ? opts.id[i] : opts.id;
|
1800 |
-
id = !id || id === FALSE || id.length < 1 || QTIP.api[id] ? QTIP.nextid++ : id;
|
1801 |
-
|
1802 |
-
// Initialize the qTip and re-grab newly sanitized options
|
1803 |
-
api = init($(this), id, opts);
|
1804 |
-
if(api === FALSE) { return TRUE; }
|
1805 |
-
else { QTIP.api[id] = api; }
|
1806 |
-
|
1807 |
-
// Initialize plugins
|
1808 |
-
$.each(PLUGINS, function() {
|
1809 |
-
if(this.initialize === 'initialize') { this(api); }
|
1810 |
-
});
|
1811 |
-
|
1812 |
-
// Assign initial pre-render events
|
1813 |
-
api._assignInitialEvents(event);
|
1814 |
-
});
|
1815 |
-
}
|
1816 |
-
};
|
1817 |
-
|
1818 |
-
// Expose class
|
1819 |
-
$.qtip = QTip;
|
1820 |
-
|
1821 |
-
// Populated in render method
|
1822 |
-
QTIP.api = {};
|
1823 |
-
;$.each({
|
1824 |
-
/* Allow other plugins to successfully retrieve the title of an element with a qTip applied */
|
1825 |
-
attr: function(attr, val) {
|
1826 |
-
if(this.length) {
|
1827 |
-
var self = this[0],
|
1828 |
-
title = 'title',
|
1829 |
-
api = $.data(self, 'qtip');
|
1830 |
-
|
1831 |
-
if(attr === title && api && 'object' === typeof api && api.options.suppress) {
|
1832 |
-
if(arguments.length < 2) {
|
1833 |
-
return $.attr(self, oldtitle);
|
1834 |
-
}
|
1835 |
-
|
1836 |
-
// If qTip is rendered and title was originally used as content, update it
|
1837 |
-
if(api && api.options.content.attr === title && api.cache.attr) {
|
1838 |
-
api.set('content.text', val);
|
1839 |
-
}
|
1840 |
-
|
1841 |
-
// Use the regular attr method to set, then cache the result
|
1842 |
-
return this.attr(oldtitle, val);
|
1843 |
-
}
|
1844 |
-
}
|
1845 |
-
|
1846 |
-
return $.fn['attr'+replaceSuffix].apply(this, arguments);
|
1847 |
-
},
|
1848 |
-
|
1849 |
-
/* Allow clone to correctly retrieve cached title attributes */
|
1850 |
-
clone: function(keepData) {
|
1851 |
-
var titles = $([]), title = 'title',
|
1852 |
-
|
1853 |
-
// Clone our element using the real clone method
|
1854 |
-
elems = $.fn['clone'+replaceSuffix].apply(this, arguments);
|
1855 |
-
|
1856 |
-
// Grab all elements with an oldtitle set, and change it to regular title attribute, if keepData is false
|
1857 |
-
if(!keepData) {
|
1858 |
-
elems.filter('['+oldtitle+']').attr('title', function() {
|
1859 |
-
return $.attr(this, oldtitle);
|
1860 |
-
})
|
1861 |
-
.removeAttr(oldtitle);
|
1862 |
-
}
|
1863 |
-
|
1864 |
-
return elems;
|
1865 |
-
}
|
1866 |
-
}, function(name, func) {
|
1867 |
-
if(!func || $.fn[name+replaceSuffix]) { return TRUE; }
|
1868 |
-
|
1869 |
-
var old = $.fn[name+replaceSuffix] = $.fn[name];
|
1870 |
-
$.fn[name] = function() {
|
1871 |
-
return func.apply(this, arguments) || old.apply(this, arguments);
|
1872 |
-
};
|
1873 |
-
});
|
1874 |
-
|
1875 |
-
/* Fire off 'removeqtip' handler in $.cleanData if jQuery UI not present (it already does similar).
|
1876 |
-
* This snippet is taken directly from jQuery UI source code found here:
|
1877 |
-
* http://code.jquery.com/ui/jquery-ui-git.js
|
1878 |
-
*/
|
1879 |
-
if(!$.ui) {
|
1880 |
-
$['cleanData'+replaceSuffix] = $.cleanData;
|
1881 |
-
$.cleanData = function( elems ) {
|
1882 |
-
for(var i = 0, elem; (elem = $( elems[i] )).length; i++) {
|
1883 |
-
if(elem.attr(ATTR_HAS)) {
|
1884 |
-
try { elem.triggerHandler('removeqtip'); }
|
1885 |
-
catch( e ) {}
|
1886 |
-
}
|
1887 |
-
}
|
1888 |
-
$['cleanData'+replaceSuffix].apply(this, arguments);
|
1889 |
-
};
|
1890 |
-
}
|
1891 |
-
|
1892 |
-
;// qTip version
|
1893 |
-
QTIP.version = '2.2.0';
|
1894 |
-
|
1895 |
-
// Base ID for all qTips
|
1896 |
-
QTIP.nextid = 0;
|
1897 |
-
|
1898 |
-
// Inactive events array
|
1899 |
-
QTIP.inactiveEvents = INACTIVE_EVENTS;
|
1900 |
-
|
1901 |
-
// Base z-index for all qTips
|
1902 |
-
QTIP.zindex = 15000;
|
1903 |
-
|
1904 |
-
// Define configuration defaults
|
1905 |
-
QTIP.defaults = {
|
1906 |
-
prerender: FALSE,
|
1907 |
-
id: FALSE,
|
1908 |
-
overwrite: TRUE,
|
1909 |
-
suppress: TRUE,
|
1910 |
-
content: {
|
1911 |
-
text: TRUE,
|
1912 |
-
attr: 'title',
|
1913 |
-
title: FALSE,
|
1914 |
-
button: FALSE
|
1915 |
-
},
|
1916 |
-
position: {
|
1917 |
-
my: 'top left',
|
1918 |
-
at: 'bottom right',
|
1919 |
-
target: FALSE,
|
1920 |
-
container: FALSE,
|
1921 |
-
viewport: FALSE,
|
1922 |
-
adjust: {
|
1923 |
-
x: 0, y: 0,
|
1924 |
-
mouse: TRUE,
|
1925 |
-
scroll: TRUE,
|
1926 |
-
resize: TRUE,
|
1927 |
-
method: 'flipinvert flipinvert'
|
1928 |
-
},
|
1929 |
-
effect: function(api, pos, viewport) {
|
1930 |
-
$(this).animate(pos, {
|
1931 |
-
duration: 200,
|
1932 |
-
queue: FALSE
|
1933 |
-
});
|
1934 |
-
}
|
1935 |
-
},
|
1936 |
-
show: {
|
1937 |
-
target: FALSE,
|
1938 |
-
event: 'mouseenter',
|
1939 |
-
effect: TRUE,
|
1940 |
-
delay: 90,
|
1941 |
-
solo: FALSE,
|
1942 |
-
ready: FALSE,
|
1943 |
-
autofocus: FALSE
|
1944 |
-
},
|
1945 |
-
hide: {
|
1946 |
-
target: FALSE,
|
1947 |
-
event: 'mouseleave',
|
1948 |
-
effect: TRUE,
|
1949 |
-
delay: 0,
|
1950 |
-
fixed: FALSE,
|
1951 |
-
inactive: FALSE,
|
1952 |
-
leave: 'window',
|
1953 |
-
distance: FALSE
|
1954 |
-
},
|
1955 |
-
style: {
|
1956 |
-
classes: '',
|
1957 |
-
widget: FALSE,
|
1958 |
-
width: FALSE,
|
1959 |
-
height: FALSE,
|
1960 |
-
def: TRUE
|
1961 |
-
},
|
1962 |
-
events: {
|
1963 |
-
render: NULL,
|
1964 |
-
move: NULL,
|
1965 |
-
show: NULL,
|
1966 |
-
hide: NULL,
|
1967 |
-
toggle: NULL,
|
1968 |
-
visible: NULL,
|
1969 |
-
hidden: NULL,
|
1970 |
-
focus: NULL,
|
1971 |
-
blur: NULL
|
1972 |
-
}
|
1973 |
-
};
|
1974 |
-
|
1975 |
-
;var TIP,
|
1976 |
-
|
1977 |
-
// .bind()/.on() namespace
|
1978 |
-
TIPNS = '.qtip-tip',
|
1979 |
-
|
1980 |
-
// Common CSS strings
|
1981 |
-
MARGIN = 'margin',
|
1982 |
-
BORDER = 'border',
|
1983 |
-
COLOR = 'color',
|
1984 |
-
BG_COLOR = 'background-color',
|
1985 |
-
TRANSPARENT = 'transparent',
|
1986 |
-
IMPORTANT = ' !important',
|
1987 |
-
|
1988 |
-
// Check if the browser supports <canvas/> elements
|
1989 |
-
HASCANVAS = !!document.createElement('canvas').getContext,
|
1990 |
-
|
1991 |
-
// Invalid colour values used in parseColours()
|
1992 |
-
INVALID = /rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i;
|
1993 |
-
|
1994 |
-
// Camel-case method, taken from jQuery source
|
1995 |
-
// http://code.jquery.com/jquery-1.8.0.js
|
1996 |
-
function camel(s) { return s.charAt(0).toUpperCase() + s.slice(1); }
|
1997 |
-
|
1998 |
-
/*
|
1999 |
-
* Modified from Modernizr's testPropsAll()
|
2000 |
-
* http://modernizr.com/downloads/modernizr-latest.js
|
2001 |
-
*/
|
2002 |
-
var cssProps = {}, cssPrefixes = ["Webkit", "O", "Moz", "ms"];
|
2003 |
-
function vendorCss(elem, prop) {
|
2004 |
-
var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),
|
2005 |
-
props = (prop + ' ' + cssPrefixes.join(ucProp + ' ') + ucProp).split(' '),
|
2006 |
-
cur, val, i = 0;
|
2007 |
-
|
2008 |
-
// If the property has already been mapped...
|
2009 |
-
if(cssProps[prop]) { return elem.css(cssProps[prop]); }
|
2010 |
-
|
2011 |
-
while((cur = props[i++])) {
|
2012 |
-
if((val = elem.css(cur)) !== undefined) {
|
2013 |
-
return cssProps[prop] = cur, val;
|
2014 |
-
}
|
2015 |
-
}
|
2016 |
-
}
|
2017 |
-
|
2018 |
-
// Parse a given elements CSS property into an int
|
2019 |
-
function intCss(elem, prop) {
|
2020 |
-
return Math.ceil(parseFloat(vendorCss(elem, prop)));
|
2021 |
-
}
|
2022 |
-
|
2023 |
-
|
2024 |
-
// VML creation (for IE only)
|
2025 |
-
if(!HASCANVAS) {
|
2026 |
-
var createVML = function(tag, props, style) {
|
2027 |
-
return '<qtipvml:'+tag+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(props||'')+
|
2028 |
-
' style="behavior: url(#default#VML); '+(style||'')+ '" />';
|
2029 |
-
};
|
2030 |
-
}
|
2031 |
-
|
2032 |
-
// Canvas only definitions
|
2033 |
-
else {
|
2034 |
-
var PIXEL_RATIO = window.devicePixelRatio || 1,
|
2035 |
-
BACKING_STORE_RATIO = (function() {
|
2036 |
-
var context = document.createElement('canvas').getContext('2d');
|
2037 |
-
return context.backingStorePixelRatio || context.webkitBackingStorePixelRatio || context.mozBackingStorePixelRatio ||
|
2038 |
-
context.msBackingStorePixelRatio || context.oBackingStorePixelRatio || 1;
|
2039 |
-
}()),
|
2040 |
-
SCALE = PIXEL_RATIO / BACKING_STORE_RATIO;
|
2041 |
-
}
|
2042 |
-
|
2043 |
-
|
2044 |
-
function Tip(qtip, options) {
|
2045 |
-
this._ns = 'tip';
|
2046 |
-
this.options = options;
|
2047 |
-
this.offset = options.offset;
|
2048 |
-
this.size = [ options.width, options.height ];
|
2049 |
-
|
2050 |
-
// Initialize
|
2051 |
-
this.init( (this.qtip = qtip) );
|
2052 |
-
}
|
2053 |
-
|
2054 |
-
$.extend(Tip.prototype, {
|
2055 |
-
init: function(qtip) {
|
2056 |
-
var context, tip;
|
2057 |
-
|
2058 |
-
// Create tip element and prepend to the tooltip
|
2059 |
-
tip = this.element = qtip.elements.tip = $('<div />', { 'class': NAMESPACE+'-tip' }).prependTo(qtip.tooltip);
|
2060 |
-
|
2061 |
-
// Create tip drawing element(s)
|
2062 |
-
if(HASCANVAS) {
|
2063 |
-
// save() as soon as we create the canvas element so FF2 doesn't bork on our first restore()!
|
2064 |
-
context = $('<canvas />').appendTo(this.element)[0].getContext('2d');
|
2065 |
-
|
2066 |
-
// Setup constant parameters
|
2067 |
-
context.lineJoin = 'miter';
|
2068 |
-
context.miterLimit = 100000;
|
2069 |
-
context.save();
|
2070 |
-
}
|
2071 |
-
else {
|
2072 |
-
context = createVML('shape', 'coordorigin="0,0"', 'position:absolute;');
|
2073 |
-
this.element.html(context + context);
|
2074 |
-
|
2075 |
-
// Prevent mousing down on the tip since it causes problems with .live() handling in IE due to VML
|
2076 |
-
qtip._bind( $('*', tip).add(tip), ['click', 'mousedown'], function(event) { event.stopPropagation(); }, this._ns);
|
2077 |
-
}
|
2078 |
-
|
2079 |
-
// Bind update events
|
2080 |
-
qtip._bind(qtip.tooltip, 'tooltipmove', this.reposition, this._ns, this);
|
2081 |
-
|
2082 |
-
// Create it
|
2083 |
-
this.create();
|
2084 |
-
},
|
2085 |
-
|
2086 |
-
_swapDimensions: function() {
|
2087 |
-
this.size[0] = this.options.height;
|
2088 |
-
this.size[1] = this.options.width;
|
2089 |
-
},
|
2090 |
-
_resetDimensions: function() {
|
2091 |
-
this.size[0] = this.options.width;
|
2092 |
-
this.size[1] = this.options.height;
|
2093 |
-
},
|
2094 |
-
|
2095 |
-
_useTitle: function(corner) {
|
2096 |
-
var titlebar = this.qtip.elements.titlebar;
|
2097 |
-
return titlebar && (
|
2098 |
-
corner.y === TOP || (corner.y === CENTER && this.element.position().top + (this.size[1] / 2) + this.options.offset < titlebar.outerHeight(TRUE))
|
2099 |
-
);
|
2100 |
-
},
|
2101 |
-
|
2102 |
-
_parseCorner: function(corner) {
|
2103 |
-
var my = this.qtip.options.position.my;
|
2104 |
-
|
2105 |
-
// Detect corner and mimic properties
|
2106 |
-
if(corner === FALSE || my === FALSE) {
|
2107 |
-
corner = FALSE;
|
2108 |
-
}
|
2109 |
-
else if(corner === TRUE) {
|
2110 |
-
corner = new CORNER( my.string() );
|
2111 |
-
}
|
2112 |
-
else if(!corner.string) {
|
2113 |
-
corner = new CORNER(corner);
|
2114 |
-
corner.fixed = TRUE;
|
2115 |
-
}
|
2116 |
-
|
2117 |
-
return corner;
|
2118 |
-
},
|
2119 |
-
|
2120 |
-
_parseWidth: function(corner, side, use) {
|
2121 |
-
var elements = this.qtip.elements,
|
2122 |
-
prop = BORDER + camel(side) + 'Width';
|
2123 |
-
|
2124 |
-
return (use ? intCss(use, prop) : (
|
2125 |
-
intCss(elements.content, prop) ||
|
2126 |
-
intCss(this._useTitle(corner) && elements.titlebar || elements.content, prop) ||
|
2127 |
-
intCss(elements.tooltip, prop)
|
2128 |
-
)) || 0;
|
2129 |
-
},
|
2130 |
-
|
2131 |
-
_parseRadius: function(corner) {
|
2132 |
-
var elements = this.qtip.elements,
|
2133 |
-
prop = BORDER + camel(corner.y) + camel(corner.x) + 'Radius';
|
2134 |
-
|
2135 |
-
return BROWSER.ie < 9 ? 0 :
|
2136 |
-
intCss(this._useTitle(corner) && elements.titlebar || elements.content, prop) ||
|
2137 |
-
intCss(elements.tooltip, prop) || 0;
|
2138 |
-
},
|
2139 |
-
|
2140 |
-
_invalidColour: function(elem, prop, compare) {
|
2141 |
-
var val = elem.css(prop);
|
2142 |
-
return !val || (compare && val === elem.css(compare)) || INVALID.test(val) ? FALSE : val;
|
2143 |
-
},
|
2144 |
-
|
2145 |
-
_parseColours: function(corner) {
|
2146 |
-
var elements = this.qtip.elements,
|
2147 |
-
tip = this.element.css('cssText', ''),
|
2148 |
-
borderSide = BORDER + camel(corner[ corner.precedance ]) + camel(COLOR),
|
2149 |
-
colorElem = this._useTitle(corner) && elements.titlebar || elements.content,
|
2150 |
-
css = this._invalidColour, color = [];
|
2151 |
-
|
2152 |
-
// Attempt to detect the background colour from various elements, left-to-right precedance
|
2153 |
-
color[0] = css(tip, BG_COLOR) || css(colorElem, BG_COLOR) || css(elements.content, BG_COLOR) ||
|
2154 |
-
css(elements.tooltip, BG_COLOR) || tip.css(BG_COLOR);
|
2155 |
-
|
2156 |
-
// Attempt to detect the correct border side colour from various elements, left-to-right precedance
|
2157 |
-
color[1] = css(tip, borderSide, COLOR) || css(colorElem, borderSide, COLOR) ||
|
2158 |
-
css(elements.content, borderSide, COLOR) || css(elements.tooltip, borderSide, COLOR) || elements.tooltip.css(borderSide);
|
2159 |
-
|
2160 |
-
// Reset background and border colours
|
2161 |
-
$('*', tip).add(tip).css('cssText', BG_COLOR+':'+TRANSPARENT+IMPORTANT+';'+BORDER+':0'+IMPORTANT+';');
|
2162 |
-
|
2163 |
-
return color;
|
2164 |
-
},
|
2165 |
-
|
2166 |
-
_calculateSize: function(corner) {
|
2167 |
-
var y = corner.precedance === Y,
|
2168 |
-
width = this.options['width'],
|
2169 |
-
height = this.options['height'],
|
2170 |
-
isCenter = corner.abbrev() === 'c',
|
2171 |
-
base = (y ? width: height) * (isCenter ? 0.5 : 1),
|
2172 |
-
pow = Math.pow,
|
2173 |
-
round = Math.round,
|
2174 |
-
bigHyp, ratio, result,
|
2175 |
-
|
2176 |
-
smallHyp = Math.sqrt( pow(base, 2) + pow(height, 2) ),
|
2177 |
-
hyp = [ (this.border / base) * smallHyp, (this.border / height) * smallHyp ];
|
2178 |
-
|
2179 |
-
hyp[2] = Math.sqrt( pow(hyp[0], 2) - pow(this.border, 2) );
|
2180 |
-
hyp[3] = Math.sqrt( pow(hyp[1], 2) - pow(this.border, 2) );
|
2181 |
-
|
2182 |
-
bigHyp = smallHyp + hyp[2] + hyp[3] + (isCenter ? 0 : hyp[0]);
|
2183 |
-
ratio = bigHyp / smallHyp;
|
2184 |
-
|
2185 |
-
result = [ round(ratio * width), round(ratio * height) ];
|
2186 |
-
return y ? result : result.reverse();
|
2187 |
-
},
|
2188 |
-
|
2189 |
-
// Tip coordinates calculator
|
2190 |
-
_calculateTip: function(corner, size, scale) {
|
2191 |
-
scale = scale || 1;
|
2192 |
-
size = size || this.size;
|
2193 |
-
|
2194 |
-
var width = size[0] * scale,
|
2195 |
-
height = size[1] * scale,
|
2196 |
-
width2 = Math.ceil(width / 2), height2 = Math.ceil(height / 2),
|
2197 |
-
|
2198 |
-
// Define tip coordinates in terms of height and width values
|
2199 |
-
tips = {
|
2200 |
-
br: [0,0, width,height, width,0],
|
2201 |
-
bl: [0,0, width,0, 0,height],
|
2202 |
-
tr: [0,height, width,0, width,height],
|
2203 |
-
tl: [0,0, 0,height, width,height],
|
2204 |
-
tc: [0,height, width2,0, width,height],
|
2205 |
-
bc: [0,0, width,0, width2,height],
|
2206 |
-
rc: [0,0, width,height2, 0,height],
|
2207 |
-
lc: [width,0, width,height, 0,height2]
|
2208 |
-
};
|
2209 |
-
|
2210 |
-
// Set common side shapes
|
2211 |
-
tips.lt = tips.br; tips.rt = tips.bl;
|
2212 |
-
tips.lb = tips.tr; tips.rb = tips.tl;
|
2213 |
-
|
2214 |
-
return tips[ corner.abbrev() ];
|
2215 |
-
},
|
2216 |
-
|
2217 |
-
// Tip coordinates drawer (canvas)
|
2218 |
-
_drawCoords: function(context, coords) {
|
2219 |
-
context.beginPath();
|
2220 |
-
context.moveTo(coords[0], coords[1]);
|
2221 |
-
context.lineTo(coords[2], coords[3]);
|
2222 |
-
context.lineTo(coords[4], coords[5]);
|
2223 |
-
context.closePath();
|
2224 |
-
},
|
2225 |
-
|
2226 |
-
create: function() {
|
2227 |
-
// Determine tip corner
|
2228 |
-
var c = this.corner = (HASCANVAS || BROWSER.ie) && this._parseCorner(this.options.corner);
|
2229 |
-
|
2230 |
-
// If we have a tip corner...
|
2231 |
-
if( (this.enabled = !!this.corner && this.corner.abbrev() !== 'c') ) {
|
2232 |
-
// Cache it
|
2233 |
-
this.qtip.cache.corner = c.clone();
|
2234 |
-
|
2235 |
-
// Create it
|
2236 |
-
this.update();
|
2237 |
-
}
|
2238 |
-
|
2239 |
-
// Toggle tip element
|
2240 |
-
this.element.toggle(this.enabled);
|
2241 |
-
|
2242 |
-
return this.corner;
|
2243 |
-
},
|
2244 |
-
|
2245 |
-
update: function(corner, position) {
|
2246 |
-
if(!this.enabled) { return this; }
|
2247 |
-
|
2248 |
-
var elements = this.qtip.elements,
|
2249 |
-
tip = this.element,
|
2250 |
-
inner = tip.children(),
|
2251 |
-
options = this.options,
|
2252 |
-
curSize = this.size,
|
2253 |
-
mimic = options.mimic,
|
2254 |
-
round = Math.round,
|
2255 |
-
color, precedance, context,
|
2256 |
-
coords, bigCoords, translate, newSize, border, BACKING_STORE_RATIO;
|
2257 |
-
|
2258 |
-
// Re-determine tip if not already set
|
2259 |
-
if(!corner) { corner = this.qtip.cache.corner || this.corner; }
|
2260 |
-
|
2261 |
-
// Use corner property if we detect an invalid mimic value
|
2262 |
-
if(mimic === FALSE) { mimic = corner; }
|
2263 |
-
|
2264 |
-
// Otherwise inherit mimic properties from the corner object as necessary
|
2265 |
-
else {
|
2266 |
-
mimic = new CORNER(mimic);
|
2267 |
-
mimic.precedance = corner.precedance;
|
2268 |
-
|
2269 |
-
if(mimic.x === 'inherit') { mimic.x = corner.x; }
|
2270 |
-
else if(mimic.y === 'inherit') { mimic.y = corner.y; }
|
2271 |
-
else if(mimic.x === mimic.y) {
|
2272 |
-
mimic[ corner.precedance ] = corner[ corner.precedance ];
|
2273 |
-
}
|
2274 |
-
}
|
2275 |
-
precedance = mimic.precedance;
|
2276 |
-
|
2277 |
-
// Ensure the tip width.height are relative to the tip position
|
2278 |
-
if(corner.precedance === X) { this._swapDimensions(); }
|
2279 |
-
else { this._resetDimensions(); }
|
2280 |
-
|
2281 |
-
// Update our colours
|
2282 |
-
color = this.color = this._parseColours(corner);
|
2283 |
-
|
2284 |
-
// Detect border width, taking into account colours
|
2285 |
-
if(color[1] !== TRANSPARENT) {
|
2286 |
-
// Grab border width
|
2287 |
-
border = this.border = this._parseWidth(corner, corner[corner.precedance]);
|
2288 |
-
|
2289 |
-
// If border width isn't zero, use border color as fill if it's not invalid (1.0 style tips)
|
2290 |
-
if(options.border && border < 1 && !INVALID.test(color[1])) { color[0] = color[1]; }
|
2291 |
-
|
2292 |
-
// Set border width (use detected border width if options.border is true)
|
2293 |
-
this.border = border = options.border !== TRUE ? options.border : border;
|
2294 |
-
}
|
2295 |
-
|
2296 |
-
// Border colour was invalid, set border to zero
|
2297 |
-
else { this.border = border = 0; }
|
2298 |
-
|
2299 |
-
// Determine tip size
|
2300 |
-
newSize = this.size = this._calculateSize(corner);
|
2301 |
-
tip.css({
|
2302 |
-
width: newSize[0],
|
2303 |
-
height: newSize[1],
|
2304 |
-
lineHeight: newSize[1]+'px'
|
2305 |
-
});
|
2306 |
-
|
2307 |
-
// Calculate tip translation
|
2308 |
-
if(corner.precedance === Y) {
|
2309 |
-
translate = [
|
2310 |
-
round(mimic.x === LEFT ? border : mimic.x === RIGHT ? newSize[0] - curSize[0] - border : (newSize[0] - curSize[0]) / 2),
|
2311 |
-
round(mimic.y === TOP ? newSize[1] - curSize[1] : 0)
|
2312 |
-
];
|
2313 |
-
}
|
2314 |
-
else {
|
2315 |
-
translate = [
|
2316 |
-
round(mimic.x === LEFT ? newSize[0] - curSize[0] : 0),
|
2317 |
-
round(mimic.y === TOP ? border : mimic.y === BOTTOM ? newSize[1] - curSize[1] - border : (newSize[1] - curSize[1]) / 2)
|
2318 |
-
];
|
2319 |
-
}
|
2320 |
-
|
2321 |
-
// Canvas drawing implementation
|
2322 |
-
if(HASCANVAS) {
|
2323 |
-
// Grab canvas context and clear/save it
|
2324 |
-
context = inner[0].getContext('2d');
|
2325 |
-
context.restore(); context.save();
|
2326 |
-
context.clearRect(0,0,6000,6000);
|
2327 |
-
|
2328 |
-
// Calculate coordinates
|
2329 |
-
coords = this._calculateTip(mimic, curSize, SCALE);
|
2330 |
-
bigCoords = this._calculateTip(mimic, this.size, SCALE);
|
2331 |
-
|
2332 |
-
// Set the canvas size using calculated size
|
2333 |
-
inner.attr(WIDTH, newSize[0] * SCALE).attr(HEIGHT, newSize[1] * SCALE);
|
2334 |
-
inner.css(WIDTH, newSize[0]).css(HEIGHT, newSize[1]);
|
2335 |
-
|
2336 |
-
// Draw the outer-stroke tip
|
2337 |
-
this._drawCoords(context, bigCoords);
|
2338 |
-
context.fillStyle = color[1];
|
2339 |
-
context.fill();
|
2340 |
-
|
2341 |
-
// Draw the actual tip
|
2342 |
-
context.translate(translate[0] * SCALE, translate[1] * SCALE);
|
2343 |
-
this._drawCoords(context, coords);
|
2344 |
-
context.fillStyle = color[0];
|
2345 |
-
context.fill();
|
2346 |
-
}
|
2347 |
-
|
2348 |
-
// VML (IE Proprietary implementation)
|
2349 |
-
else {
|
2350 |
-
// Calculate coordinates
|
2351 |
-
coords = this._calculateTip(mimic);
|
2352 |
-
|
2353 |
-
// Setup coordinates string
|
2354 |
-
coords = 'm' + coords[0] + ',' + coords[1] + ' l' + coords[2] +
|
2355 |
-
',' + coords[3] + ' ' + coords[4] + ',' + coords[5] + ' xe';
|
2356 |
-
|
2357 |
-
// Setup VML-specific offset for pixel-perfection
|
2358 |
-
translate[2] = border && /^(r|b)/i.test(corner.string()) ?
|
2359 |
-
BROWSER.ie === 8 ? 2 : 1 : 0;
|
2360 |
-
|
2361 |
-
// Set initial CSS
|
2362 |
-
inner.css({
|
2363 |
-
coordsize: (newSize[0]+border) + ' ' + (newSize[1]+border),
|
2364 |
-
antialias: ''+(mimic.string().indexOf(CENTER) > -1),
|
2365 |
-
left: translate[0] - (translate[2] * Number(precedance === X)),
|
2366 |
-
top: translate[1] - (translate[2] * Number(precedance === Y)),
|
2367 |
-
width: newSize[0] + border,
|
2368 |
-
height: newSize[1] + border
|
2369 |
-
})
|
2370 |
-
.each(function(i) {
|
2371 |
-
var $this = $(this);
|
2372 |
-
|
2373 |
-
// Set shape specific attributes
|
2374 |
-
$this[ $this.prop ? 'prop' : 'attr' ]({
|
2375 |
-
coordsize: (newSize[0]+border) + ' ' + (newSize[1]+border),
|
2376 |
-
path: coords,
|
2377 |
-
fillcolor: color[0],
|
2378 |
-
filled: !!i,
|
2379 |
-
stroked: !i
|
2380 |
-
})
|
2381 |
-
.toggle(!!(border || i));
|
2382 |
-
|
2383 |
-
// Check if border is enabled and add stroke element
|
2384 |
-
!i && $this.html( createVML(
|
2385 |
-
'stroke', 'weight="'+(border*2)+'px" color="'+color[1]+'" miterlimit="1000" joinstyle="miter"'
|
2386 |
-
) );
|
2387 |
-
});
|
2388 |
-
}
|
2389 |
-
|
2390 |
-
// Opera bug #357 - Incorrect tip position
|
2391 |
-
// https://github.com/Craga89/qTip2/issues/367
|
2392 |
-
window.opera && setTimeout(function() {
|
2393 |
-
elements.tip.css({
|
2394 |
-
display: 'inline-block',
|
2395 |
-
visibility: 'visible'
|
2396 |
-
});
|
2397 |
-
}, 1);
|
2398 |
-
|
2399 |
-
// Position if needed
|
2400 |
-
if(position !== FALSE) { this.calculate(corner, newSize); }
|
2401 |
-
},
|
2402 |
-
|
2403 |
-
calculate: function(corner, size) {
|
2404 |
-
if(!this.enabled) { return FALSE; }
|
2405 |
-
|
2406 |
-
var self = this,
|
2407 |
-
elements = this.qtip.elements,
|
2408 |
-
tip = this.element,
|
2409 |
-
userOffset = this.options.offset,
|
2410 |
-
isWidget = elements.tooltip.hasClass('ui-widget'),
|
2411 |
-
position = { },
|
2412 |
-
precedance, corners;
|
2413 |
-
|
2414 |
-
// Inherit corner if not provided
|
2415 |
-
corner = corner || this.corner;
|
2416 |
-
precedance = corner.precedance;
|
2417 |
-
|
2418 |
-
// Determine which tip dimension to use for adjustment
|
2419 |
-
size = size || this._calculateSize(corner);
|
2420 |
-
|
2421 |
-
// Setup corners and offset array
|
2422 |
-
corners = [ corner.x, corner.y ];
|
2423 |
-
if(precedance === X) { corners.reverse(); }
|
2424 |
-
|
2425 |
-
// Calculate tip position
|
2426 |
-
$.each(corners, function(i, side) {
|
2427 |
-
var b, bc, br;
|
2428 |
-
|
2429 |
-
if(side === CENTER) {
|
2430 |
-
b = precedance === Y ? LEFT : TOP;
|
2431 |
-
position[ b ] = '50%';
|
2432 |
-
position[MARGIN+'-' + b] = -Math.round(size[ precedance === Y ? 0 : 1 ] / 2) + userOffset;
|
2433 |
-
}
|
2434 |
-
else {
|
2435 |
-
b = self._parseWidth(corner, side, elements.tooltip);
|
2436 |
-
bc = self._parseWidth(corner, side, elements.content);
|
2437 |
-
br = self._parseRadius(corner);
|
2438 |
-
|
2439 |
-
position[ side ] = Math.max(-self.border, i ? bc : (userOffset + (br > b ? br : -b)));
|
2440 |
-
}
|
2441 |
-
});
|
2442 |
-
|
2443 |
-
// Adjust for tip size
|
2444 |
-
position[ corner[precedance] ] -= size[ precedance === X ? 0 : 1 ];
|
2445 |
-
|
2446 |
-
// Set and return new position
|
2447 |
-
tip.css({ margin: '', top: '', bottom: '', left: '', right: '' }).css(position);
|
2448 |
-
return position;
|
2449 |
-
},
|
2450 |
-
|
2451 |
-
reposition: function(event, api, pos, viewport) {
|
2452 |
-
if(!this.enabled) { return; }
|
2453 |
-
|
2454 |
-
var cache = api.cache,
|
2455 |
-
newCorner = this.corner.clone(),
|
2456 |
-
adjust = pos.adjusted,
|
2457 |
-
method = api.options.position.adjust.method.split(' '),
|
2458 |
-
horizontal = method[0],
|
2459 |
-
vertical = method[1] || method[0],
|
2460 |
-
shift = { left: FALSE, top: FALSE, x: 0, y: 0 },
|
2461 |
-
offset, css = {}, props;
|
2462 |
-
|
2463 |
-
function shiftflip(direction, precedance, popposite, side, opposite) {
|
2464 |
-
// Horizontal - Shift or flip method
|
2465 |
-
if(direction === SHIFT && newCorner.precedance === precedance && adjust[side] && newCorner[popposite] !== CENTER) {
|
2466 |
-
newCorner.precedance = newCorner.precedance === X ? Y : X;
|
2467 |
-
}
|
2468 |
-
else if(direction !== SHIFT && adjust[side]){
|
2469 |
-
newCorner[precedance] = newCorner[precedance] === CENTER ?
|
2470 |
-
(adjust[side] > 0 ? side : opposite) : (newCorner[precedance] === side ? opposite : side);
|
2471 |
-
}
|
2472 |
-
}
|
2473 |
-
|
2474 |
-
function shiftonly(xy, side, opposite) {
|
2475 |
-
if(newCorner[xy] === CENTER) {
|
2476 |
-
css[MARGIN+'-'+side] = shift[xy] = offset[MARGIN+'-'+side] - adjust[side];
|
2477 |
-
}
|
2478 |
-
else {
|
2479 |
-
props = offset[opposite] !== undefined ?
|
2480 |
-
[ adjust[side], -offset[side] ] : [ -adjust[side], offset[side] ];
|
2481 |
-
|
2482 |
-
if( (shift[xy] = Math.max(props[0], props[1])) > props[0] ) {
|
2483 |
-
pos[side] -= adjust[side];
|
2484 |
-
shift[side] = FALSE;
|
2485 |
-
}
|
2486 |
-
|
2487 |
-
css[ offset[opposite] !== undefined ? opposite : side ] = shift[xy];
|
2488 |
-
}
|
2489 |
-
}
|
2490 |
-
|
2491 |
-
// If our tip position isn't fixed e.g. doesn't adjust with viewport...
|
2492 |
-
if(this.corner.fixed !== TRUE) {
|
2493 |
-
// Perform shift/flip adjustments
|
2494 |
-
shiftflip(horizontal, X, Y, LEFT, RIGHT);
|
2495 |
-
shiftflip(vertical, Y, X, TOP, BOTTOM);
|
2496 |
-
|
2497 |
-
// Update and redraw the tip if needed (check cached details of last drawn tip)
|
2498 |
-
if(newCorner.string() !== cache.corner.string() && (cache.cornerTop !== adjust.top || cache.cornerLeft !== adjust.left)) {
|
2499 |
-
this.update(newCorner, FALSE);
|
2500 |
-
}
|
2501 |
-
}
|
2502 |
-
|
2503 |
-
// Setup tip offset properties
|
2504 |
-
offset = this.calculate(newCorner);
|
2505 |
-
|
2506 |
-
// Readjust offset object to make it left/top
|
2507 |
-
if(offset.right !== undefined) { offset.left = -offset.right; }
|
2508 |
-
if(offset.bottom !== undefined) { offset.top = -offset.bottom; }
|
2509 |
-
offset.user = this.offset;
|
2510 |
-
|
2511 |
-
// Perform shift adjustments
|
2512 |
-
if(shift.left = (horizontal === SHIFT && !!adjust.left)) { shiftonly(X, LEFT, RIGHT); }
|
2513 |
-
if(shift.top = (vertical === SHIFT && !!adjust.top)) { shiftonly(Y, TOP, BOTTOM); }
|
2514 |
-
|
2515 |
-
/*
|
2516 |
-
* If the tip is adjusted in both dimensions, or in a
|
2517 |
-
* direction that would cause it to be anywhere but the
|
2518 |
-
* outer border, hide it!
|
2519 |
-
*/
|
2520 |
-
this.element.css(css).toggle(
|
2521 |
-
!((shift.x && shift.y) || (newCorner.x === CENTER && shift.y) || (newCorner.y === CENTER && shift.x))
|
2522 |
-
);
|
2523 |
-
|
2524 |
-
// Adjust position to accomodate tip dimensions
|
2525 |
-
pos.left -= offset.left.charAt ? offset.user :
|
2526 |
-
horizontal !== SHIFT || shift.top || !shift.left && !shift.top ? offset.left + this.border : 0;
|
2527 |
-
pos.top -= offset.top.charAt ? offset.user :
|
2528 |
-
vertical !== SHIFT || shift.left || !shift.left && !shift.top ? offset.top + this.border : 0;
|
2529 |
-
|
2530 |
-
// Cache details
|
2531 |
-
cache.cornerLeft = adjust.left; cache.cornerTop = adjust.top;
|
2532 |
-
cache.corner = newCorner.clone();
|
2533 |
-
},
|
2534 |
-
|
2535 |
-
destroy: function() {
|
2536 |
-
// Unbind events
|
2537 |
-
this.qtip._unbind(this.qtip.tooltip, this._ns);
|
2538 |
-
|
2539 |
-
// Remove the tip element(s)
|
2540 |
-
if(this.qtip.elements.tip) {
|
2541 |
-
this.qtip.elements.tip.find('*')
|
2542 |
-
.remove().end().remove();
|
2543 |
-
}
|
2544 |
-
}
|
2545 |
-
});
|
2546 |
-
|
2547 |
-
TIP = PLUGINS.tip = function(api) {
|
2548 |
-
return new Tip(api, api.options.style.tip);
|
2549 |
-
};
|
2550 |
-
|
2551 |
-
// Initialize tip on render
|
2552 |
-
TIP.initialize = 'render';
|
2553 |
-
|
2554 |
-
// Setup plugin sanitization options
|
2555 |
-
TIP.sanitize = function(options) {
|
2556 |
-
if(options.style && 'tip' in options.style) {
|
2557 |
-
var opts = options.style.tip;
|
2558 |
-
if(typeof opts !== 'object') { opts = options.style.tip = { corner: opts }; }
|
2559 |
-
if(!(/string|boolean/i).test(typeof opts.corner)) { opts.corner = TRUE; }
|
2560 |
-
}
|
2561 |
-
};
|
2562 |
-
|
2563 |
-
// Add new option checks for the plugin
|
2564 |
-
CHECKS.tip = {
|
2565 |
-
'^position.my|style.tip.(corner|mimic|border)$': function() {
|
2566 |
-
// Make sure a tip can be drawn
|
2567 |
-
this.create();
|
2568 |
-
|
2569 |
-
// Reposition the tooltip
|
2570 |
-
this.qtip.reposition();
|
2571 |
-
},
|
2572 |
-
'^style.tip.(height|width)$': function(obj) {
|
2573 |
-
// Re-set dimensions and redraw the tip
|
2574 |
-
this.size = [ obj.width, obj.height ];
|
2575 |
-
this.update();
|
2576 |
-
|
2577 |
-
// Reposition the tooltip
|
2578 |
-
this.qtip.reposition();
|
2579 |
-
},
|
2580 |
-
'^content.title|style.(classes|widget)$': function() {
|
2581 |
-
this.update();
|
2582 |
-
}
|
2583 |
-
};
|
2584 |
-
|
2585 |
-
// Extend original qTip defaults
|
2586 |
-
$.extend(TRUE, QTIP.defaults, {
|
2587 |
-
style: {
|
2588 |
-
tip: {
|
2589 |
-
corner: TRUE,
|
2590 |
-
mimic: FALSE,
|
2591 |
-
width: 6,
|
2592 |
-
height: 6,
|
2593 |
-
border: TRUE,
|
2594 |
-
offset: 0
|
2595 |
-
}
|
2596 |
-
}
|
2597 |
-
});
|
2598 |
-
|
2599 |
-
;PLUGINS.viewport = function(api, position, posOptions, targetWidth, targetHeight, elemWidth, elemHeight)
|
2600 |
-
{
|
2601 |
-
var target = posOptions.target,
|
2602 |
-
tooltip = api.elements.tooltip,
|
2603 |
-
my = posOptions.my,
|
2604 |
-
at = posOptions.at,
|
2605 |
-
adjust = posOptions.adjust,
|
2606 |
-
method = adjust.method.split(' '),
|
2607 |
-
methodX = method[0],
|
2608 |
-
methodY = method[1] || method[0],
|
2609 |
-
viewport = posOptions.viewport,
|
2610 |
-
container = posOptions.container,
|
2611 |
-
cache = api.cache,
|
2612 |
-
adjusted = { left: 0, top: 0 },
|
2613 |
-
fixed, newMy, newClass, containerOffset, containerStatic,
|
2614 |
-
viewportWidth, viewportHeight, viewportScroll, viewportOffset;
|
2615 |
-
|
2616 |
-
// If viewport is not a jQuery element, or it's the window/document, or no adjustment method is used... return
|
2617 |
-
if(!viewport.jquery || target[0] === window || target[0] === document.body || adjust.method === 'none') {
|
2618 |
-
return adjusted;
|
2619 |
-
}
|
2620 |
-
|
2621 |
-
// Cach container details
|
2622 |
-
containerOffset = container.offset() || adjusted;
|
2623 |
-
containerStatic = container.css('position') === 'static';
|
2624 |
-
|
2625 |
-
// Cache our viewport details
|
2626 |
-
fixed = tooltip.css('position') === 'fixed';
|
2627 |
-
viewportWidth = viewport[0] === window ? viewport.width() : viewport.outerWidth(FALSE);
|
2628 |
-
viewportHeight = viewport[0] === window ? viewport.height() : viewport.outerHeight(FALSE);
|
2629 |
-
viewportScroll = { left: fixed ? 0 : viewport.scrollLeft(), top: fixed ? 0 : viewport.scrollTop() };
|
2630 |
-
viewportOffset = viewport.offset() || adjusted;
|
2631 |
-
|
2632 |
-
// Generic calculation method
|
2633 |
-
function calculate(side, otherSide, type, adjust, side1, side2, lengthName, targetLength, elemLength) {
|
2634 |
-
var initialPos = position[side1],
|
2635 |
-
mySide = my[side],
|
2636 |
-
atSide = at[side],
|
2637 |
-
isShift = type === SHIFT,
|
2638 |
-
myLength = mySide === side1 ? elemLength : mySide === side2 ? -elemLength : -elemLength / 2,
|
2639 |
-
atLength = atSide === side1 ? targetLength : atSide === side2 ? -targetLength : -targetLength / 2,
|
2640 |
-
sideOffset = viewportScroll[side1] + viewportOffset[side1] - (containerStatic ? 0 : containerOffset[side1]),
|
2641 |
-
overflow1 = sideOffset - initialPos,
|
2642 |
-
overflow2 = initialPos + elemLength - (lengthName === WIDTH ? viewportWidth : viewportHeight) - sideOffset,
|
2643 |
-
offset = myLength - (my.precedance === side || mySide === my[otherSide] ? atLength : 0) - (atSide === CENTER ? targetLength / 2 : 0);
|
2644 |
-
|
2645 |
-
// shift
|
2646 |
-
if(isShift) {
|
2647 |
-
offset = (mySide === side1 ? 1 : -1) * myLength;
|
2648 |
-
|
2649 |
-
// Adjust position but keep it within viewport dimensions
|
2650 |
-
position[side1] += overflow1 > 0 ? overflow1 : overflow2 > 0 ? -overflow2 : 0;
|
2651 |
-
position[side1] = Math.max(
|
2652 |
-
-containerOffset[side1] + viewportOffset[side1],
|
2653 |
-
initialPos - offset,
|
2654 |
-
Math.min(
|
2655 |
-
Math.max(
|
2656 |
-
-containerOffset[side1] + viewportOffset[side1] + (lengthName === WIDTH ? viewportWidth : viewportHeight),
|
2657 |
-
initialPos + offset
|
2658 |
-
),
|
2659 |
-
position[side1],
|
2660 |
-
|
2661 |
-
// Make sure we don't adjust complete off the element when using 'center'
|
2662 |
-
mySide === 'center' ? initialPos - myLength : 1E9
|
2663 |
-
)
|
2664 |
-
);
|
2665 |
-
|
2666 |
-
}
|
2667 |
-
|
2668 |
-
// flip/flipinvert
|
2669 |
-
else {
|
2670 |
-
// Update adjustment amount depending on if using flipinvert or flip
|
2671 |
-
adjust *= (type === FLIPINVERT ? 2 : 0);
|
2672 |
-
|
2673 |
-
// Check for overflow on the left/top
|
2674 |
-
if(overflow1 > 0 && (mySide !== side1 || overflow2 > 0)) {
|
2675 |
-
position[side1] -= offset + adjust;
|
2676 |
-
newMy.invert(side, side1);
|
2677 |
-
}
|
2678 |
-
|
2679 |
-
// Check for overflow on the bottom/right
|
2680 |
-
else if(overflow2 > 0 && (mySide !== side2 || overflow1 > 0) ) {
|
2681 |
-
position[side1] -= (mySide === CENTER ? -offset : offset) + adjust;
|
2682 |
-
newMy.invert(side, side2);
|
2683 |
-
}
|
2684 |
-
|
2685 |
-
// Make sure we haven't made things worse with the adjustment and reset if so
|
2686 |
-
if(position[side1] < viewportScroll && -position[side1] > overflow2) {
|
2687 |
-
position[side1] = initialPos; newMy = my.clone();
|
2688 |
-
}
|
2689 |
-
}
|
2690 |
-
|
2691 |
-
return position[side1] - initialPos;
|
2692 |
-
}
|
2693 |
-
|
2694 |
-
// Set newMy if using flip or flipinvert methods
|
2695 |
-
if(methodX !== 'shift' || methodY !== 'shift') { newMy = my.clone(); }
|
2696 |
-
|
2697 |
-
// Adjust position based onviewport and adjustment options
|
2698 |
-
adjusted = {
|
2699 |
-
left: methodX !== 'none' ? calculate( X, Y, methodX, adjust.x, LEFT, RIGHT, WIDTH, targetWidth, elemWidth ) : 0,
|
2700 |
-
top: methodY !== 'none' ? calculate( Y, X, methodY, adjust.y, TOP, BOTTOM, HEIGHT, targetHeight, elemHeight ) : 0
|
2701 |
-
};
|
2702 |
-
|
2703 |
-
// Set tooltip position class if it's changed
|
2704 |
-
if(newMy && cache.lastClass !== (newClass = NAMESPACE + '-pos-' + newMy.abbrev())) {
|
2705 |
-
tooltip.removeClass(api.cache.lastClass).addClass( (api.cache.lastClass = newClass) );
|
2706 |
-
}
|
2707 |
-
|
2708 |
-
return adjusted;
|
2709 |
-
};
|
2710 |
-
;PLUGINS.polys = {
|
2711 |
-
// POLY area coordinate calculator
|
2712 |
-
// Special thanks to Ed Cradock for helping out with this.
|
2713 |
-
// Uses a binary search algorithm to find suitable coordinates.
|
2714 |
-
polygon: function(baseCoords, corner) {
|
2715 |
-
var result = {
|
2716 |
-
width: 0, height: 0,
|
2717 |
-
position: {
|
2718 |
-
top: 1e10, right: 0,
|
2719 |
-
bottom: 0, left: 1e10
|
2720 |
-
},
|
2721 |
-
adjustable: FALSE
|
2722 |
-
},
|
2723 |
-
i = 0, next,
|
2724 |
-
coords = [],
|
2725 |
-
compareX = 1, compareY = 1,
|
2726 |
-
realX = 0, realY = 0,
|
2727 |
-
newWidth, newHeight;
|
2728 |
-
|
2729 |
-
// First pass, sanitize coords and determine outer edges
|
2730 |
-
i = baseCoords.length; while(i--) {
|
2731 |
-
next = [ parseInt(baseCoords[--i], 10), parseInt(baseCoords[i+1], 10) ];
|
2732 |
-
|
2733 |
-
if(next[0] > result.position.right){ result.position.right = next[0]; }
|
2734 |
-
if(next[0] < result.position.left){ result.position.left = next[0]; }
|
2735 |
-
if(next[1] > result.position.bottom){ result.position.bottom = next[1]; }
|
2736 |
-
if(next[1] < result.position.top){ result.position.top = next[1]; }
|
2737 |
-
|
2738 |
-
coords.push(next);
|
2739 |
-
}
|
2740 |
-
|
2741 |
-
// Calculate height and width from outer edges
|
2742 |
-
newWidth = result.width = Math.abs(result.position.right - result.position.left);
|
2743 |
-
newHeight = result.height = Math.abs(result.position.bottom - result.position.top);
|
2744 |
-
|
2745 |
-
// If it's the center corner...
|
2746 |
-
if(corner.abbrev() === 'c') {
|
2747 |
-
result.position = {
|
2748 |
-
left: result.position.left + (result.width / 2),
|
2749 |
-
top: result.position.top + (result.height / 2)
|
2750 |
-
};
|
2751 |
-
}
|
2752 |
-
else {
|
2753 |
-
// Second pass, use a binary search algorithm to locate most suitable coordinate
|
2754 |
-
while(newWidth > 0 && newHeight > 0 && compareX > 0 && compareY > 0)
|
2755 |
-
{
|
2756 |
-
newWidth = Math.floor(newWidth / 2);
|
2757 |
-
newHeight = Math.floor(newHeight / 2);
|
2758 |
-
|
2759 |
-
if(corner.x === LEFT){ compareX = newWidth; }
|
2760 |
-
else if(corner.x === RIGHT){ compareX = result.width - newWidth; }
|
2761 |
-
else{ compareX += Math.floor(newWidth / 2); }
|
2762 |
-
|
2763 |
-
if(corner.y === TOP){ compareY = newHeight; }
|
2764 |
-
else if(corner.y === BOTTOM){ compareY = result.height - newHeight; }
|
2765 |
-
else{ compareY += Math.floor(newHeight / 2); }
|
2766 |
-
|
2767 |
-
i = coords.length; while(i--)
|
2768 |
-
{
|
2769 |
-
if(coords.length < 2){ break; }
|
2770 |
-
|
2771 |
-
realX = coords[i][0] - result.position.left;
|
2772 |
-
realY = coords[i][1] - result.position.top;
|
2773 |
-
|
2774 |
-
if((corner.x === LEFT && realX >= compareX) ||
|
2775 |
-
(corner.x === RIGHT && realX <= compareX) ||
|
2776 |
-
(corner.x === CENTER && (realX < compareX || realX > (result.width - compareX))) ||
|
2777 |
-
(corner.y === TOP && realY >= compareY) ||
|
2778 |
-
(corner.y === BOTTOM && realY <= compareY) ||
|
2779 |
-
(corner.y === CENTER && (realY < compareY || realY > (result.height - compareY)))) {
|
2780 |
-
coords.splice(i, 1);
|
2781 |
-
}
|
2782 |
-
}
|
2783 |
-
}
|
2784 |
-
result.position = { left: coords[0][0], top: coords[0][1] };
|
2785 |
-
}
|
2786 |
-
|
2787 |
-
return result;
|
2788 |
-
},
|
2789 |
-
|
2790 |
-
rect: function(ax, ay, bx, by) {
|
2791 |
-
return {
|
2792 |
-
width: Math.abs(bx - ax),
|
2793 |
-
height: Math.abs(by - ay),
|
2794 |
-
position: {
|
2795 |
-
left: Math.min(ax, bx),
|
2796 |
-
top: Math.min(ay, by)
|
2797 |
-
}
|
2798 |
-
};
|
2799 |
-
},
|
2800 |
-
|
2801 |
-
_angles: {
|
2802 |
-
tc: 3 / 2, tr: 7 / 4, tl: 5 / 4,
|
2803 |
-
bc: 1 / 2, br: 1 / 4, bl: 3 / 4,
|
2804 |
-
rc: 2, lc: 1, c: 0
|
2805 |
-
},
|
2806 |
-
ellipse: function(cx, cy, rx, ry, corner) {
|
2807 |
-
var c = PLUGINS.polys._angles[ corner.abbrev() ],
|
2808 |
-
rxc = c === 0 ? 0 : rx * Math.cos( c * Math.PI ),
|
2809 |
-
rys = ry * Math.sin( c * Math.PI );
|
2810 |
-
|
2811 |
-
return {
|
2812 |
-
width: (rx * 2) - Math.abs(rxc),
|
2813 |
-
height: (ry * 2) - Math.abs(rys),
|
2814 |
-
position: {
|
2815 |
-
left: cx + rxc,
|
2816 |
-
top: cy + rys
|
2817 |
-
},
|
2818 |
-
adjustable: FALSE
|
2819 |
-
};
|
2820 |
-
},
|
2821 |
-
circle: function(cx, cy, r, corner) {
|
2822 |
-
return PLUGINS.polys.ellipse(cx, cy, r, r, corner);
|
2823 |
-
}
|
2824 |
-
};;PLUGINS.imagemap = function(api, area, corner, adjustMethod)
|
2825 |
-
{
|
2826 |
-
if(!area.jquery) { area = $(area); }
|
2827 |
-
|
2828 |
-
var shape = area.attr('shape').toLowerCase().replace('poly', 'polygon'),
|
2829 |
-
image = $('img[usemap="#'+area.parent('map').attr('name')+'"]'),
|
2830 |
-
coordsString = $.trim(area.attr('coords')),
|
2831 |
-
coordsArray = coordsString.replace(/,$/, '').split(','),
|
2832 |
-
imageOffset, coords, i, next, result, len;
|
2833 |
-
|
2834 |
-
// If we can't find the image using the map...
|
2835 |
-
if(!image.length) { return FALSE; }
|
2836 |
-
|
2837 |
-
// Pass coordinates string if polygon
|
2838 |
-
if(shape === 'polygon') {
|
2839 |
-
result = PLUGINS.polys.polygon(coordsArray, corner);
|
2840 |
-
}
|
2841 |
-
|
2842 |
-
// Otherwise parse the coordinates and pass them as arguments
|
2843 |
-
else if(PLUGINS.polys[shape]) {
|
2844 |
-
for(i = -1, len = coordsArray.length, coords = []; ++i < len;) {
|
2845 |
-
coords.push( parseInt(coordsArray[i], 10) );
|
2846 |
-
}
|
2847 |
-
|
2848 |
-
result = PLUGINS.polys[shape].apply(
|
2849 |
-
this, coords.concat(corner)
|
2850 |
-
);
|
2851 |
-
}
|
2852 |
-
|
2853 |
-
// If no shapre calculation method was found, return false
|
2854 |
-
else { return FALSE; }
|
2855 |
-
|
2856 |
-
// Make sure we account for padding and borders on the image
|
2857 |
-
imageOffset = image.offset();
|
2858 |
-
imageOffset.left += Math.ceil((image.outerWidth(FALSE) - image.width()) / 2);
|
2859 |
-
imageOffset.top += Math.ceil((image.outerHeight(FALSE) - image.height()) / 2);
|
2860 |
-
|
2861 |
-
// Add image position to offset coordinates
|
2862 |
-
result.position.left += imageOffset.left;
|
2863 |
-
result.position.top += imageOffset.top;
|
2864 |
-
|
2865 |
-
return result;
|
2866 |
-
};;PLUGINS.svg = function(api, svg, corner)
|
2867 |
-
{
|
2868 |
-
var doc = $(document),
|
2869 |
-
elem = svg[0],
|
2870 |
-
root = $(elem.ownerSVGElement),
|
2871 |
-
xScale = 1, yScale = 1,
|
2872 |
-
complex = true,
|
2873 |
-
rootWidth, rootHeight,
|
2874 |
-
mtx, transformed, viewBox,
|
2875 |
-
len, next, i, points,
|
2876 |
-
result, position, dimensions;
|
2877 |
-
|
2878 |
-
// Ascend the parentNode chain until we find an element with getBBox()
|
2879 |
-
while(!elem.getBBox) { elem = elem.parentNode; }
|
2880 |
-
if(!elem.getBBox || !elem.parentNode) { return FALSE; }
|
2881 |
-
|
2882 |
-
// Determine dimensions where possible
|
2883 |
-
rootWidth = root.attr('width') || root.width() || parseInt(root.css('width'), 10);
|
2884 |
-
rootHeight = root.attr('height') || root.height() || parseInt(root.css('height'), 10);
|
2885 |
-
|
2886 |
-
// Add stroke characteristics to scaling
|
2887 |
-
var strokeWidth2 = (parseInt(svg.css('stroke-width'), 10) || 0) / 2;
|
2888 |
-
if(strokeWidth2) {
|
2889 |
-
xScale += strokeWidth2 / rootWidth;
|
2890 |
-
yScale += strokeWidth2 / rootHeight;
|
2891 |
-
}
|
2892 |
-
|
2893 |
-
// Determine which shape calculation to use
|
2894 |
-
switch(elem.nodeName) {
|
2895 |
-
case 'ellipse':
|
2896 |
-
case 'circle':
|
2897 |
-
result = PLUGINS.polys.ellipse(
|
2898 |
-
elem.cx.baseVal.value,
|
2899 |
-
elem.cy.baseVal.value,
|
2900 |
-
(elem.rx || elem.r).baseVal.value + strokeWidth2,
|
2901 |
-
(elem.ry || elem.r).baseVal.value + strokeWidth2,
|
2902 |
-
corner
|
2903 |
-
);
|
2904 |
-
break;
|
2905 |
-
|
2906 |
-
case 'line':
|
2907 |
-
case 'polygon':
|
2908 |
-
case 'polyline':
|
2909 |
-
// Determine points object (line has none, so mimic using array)
|
2910 |
-
points = elem.points || [
|
2911 |
-
{ x: elem.x1.baseVal.value, y: elem.y1.baseVal.value },
|
2912 |
-
{ x: elem.x2.baseVal.value, y: elem.y2.baseVal.value }
|
2913 |
-
];
|
2914 |
-
|
2915 |
-
for(result = [], i = -1, len = points.numberOfItems || points.length; ++i < len;) {
|
2916 |
-
next = points.getItem ? points.getItem(i) : points[i];
|
2917 |
-
result.push.apply(result, [next.x, next.y]);
|
2918 |
-
}
|
2919 |
-
|
2920 |
-
result = PLUGINS.polys.polygon(result, corner);
|
2921 |
-
break;
|
2922 |
-
|
2923 |
-
// Unknown shape or rectangle? Use bounding box
|
2924 |
-
default:
|
2925 |
-
result = elem.getBoundingClientRect();
|
2926 |
-
result = {
|
2927 |
-
width: result.width, height: result.height,
|
2928 |
-
position: {
|
2929 |
-
left: result.left,
|
2930 |
-
top: result.top
|
2931 |
-
}
|
2932 |
-
};
|
2933 |
-
complex = false;
|
2934 |
-
break;
|
2935 |
-
}
|
2936 |
-
|
2937 |
-
// Shortcut assignments
|
2938 |
-
position = result.position;
|
2939 |
-
root = root[0];
|
2940 |
-
|
2941 |
-
// If the shape was complex (i.e. not using bounding box calculations)
|
2942 |
-
if(complex) {
|
2943 |
-
// Convert position into a pixel value
|
2944 |
-
if(root.createSVGPoint) {
|
2945 |
-
mtx = elem.getScreenCTM();
|
2946 |
-
points = root.createSVGPoint();
|
2947 |
-
|
2948 |
-
points.x = position.left;
|
2949 |
-
points.y = position.top;
|
2950 |
-
transformed = points.matrixTransform( mtx );
|
2951 |
-
position.left = transformed.x;
|
2952 |
-
position.top = transformed.y;
|
2953 |
-
}
|
2954 |
-
|
2955 |
-
// Calculate viewBox characteristics
|
2956 |
-
if(root.viewBox && (viewBox = root.viewBox.baseVal) && viewBox.width && viewBox.height) {
|
2957 |
-
xScale *= rootWidth / viewBox.width;
|
2958 |
-
yScale *= rootHeight / viewBox.height;
|
2959 |
-
}
|
2960 |
-
}
|
2961 |
-
|
2962 |
-
// Adjust by scroll offset
|
2963 |
-
position.left += doc.scrollLeft();
|
2964 |
-
position.top += doc.scrollTop();
|
2965 |
-
|
2966 |
-
return result;
|
2967 |
-
};;var MODAL, OVERLAY,
|
2968 |
-
MODALCLASS = 'qtip-modal',
|
2969 |
-
MODALSELECTOR = '.'+MODALCLASS;
|
2970 |
-
|
2971 |
-
OVERLAY = function()
|
2972 |
-
{
|
2973 |
-
var self = this,
|
2974 |
-
focusableElems = {},
|
2975 |
-
current, onLast,
|
2976 |
-
prevState, elem;
|
2977 |
-
|
2978 |
-
// Modified code from jQuery UI 1.10.0 source
|
2979 |
-
// http://code.jquery.com/ui/1.10.0/jquery-ui.js
|
2980 |
-
function focusable(element) {
|
2981 |
-
// Use the defined focusable checker when possible
|
2982 |
-
if($.expr[':'].focusable) { return $.expr[':'].focusable; }
|
2983 |
-
|
2984 |
-
var isTabIndexNotNaN = !isNaN($.attr(element, 'tabindex')),
|
2985 |
-
nodeName = element.nodeName && element.nodeName.toLowerCase(),
|
2986 |
-
map, mapName, img;
|
2987 |
-
|
2988 |
-
if('area' === nodeName) {
|
2989 |
-
map = element.parentNode;
|
2990 |
-
mapName = map.name;
|
2991 |
-
if(!element.href || !mapName || map.nodeName.toLowerCase() !== 'map') {
|
2992 |
-
return false;
|
2993 |
-
}
|
2994 |
-
img = $('img[usemap=#' + mapName + ']')[0];
|
2995 |
-
return !!img && img.is(':visible');
|
2996 |
-
}
|
2997 |
-
return (/input|select|textarea|button|object/.test( nodeName ) ?
|
2998 |
-
!element.disabled :
|
2999 |
-
'a' === nodeName ?
|
3000 |
-
element.href || isTabIndexNotNaN :
|
3001 |
-
isTabIndexNotNaN
|
3002 |
-
);
|
3003 |
-
}
|
3004 |
-
|
3005 |
-
// Focus inputs using cached focusable elements (see update())
|
3006 |
-
function focusInputs(blurElems) {
|
3007 |
-
// Blurring body element in IE causes window.open windows to unfocus!
|
3008 |
-
if(focusableElems.length < 1 && blurElems.length) { blurElems.not('body').blur(); }
|
3009 |
-
|
3010 |
-
// Focus the inputs
|
3011 |
-
else { focusableElems.first().focus(); }
|
3012 |
-
}
|
3013 |
-
|
3014 |
-
// Steal focus from elements outside tooltip
|
3015 |
-
function stealFocus(event) {
|
3016 |
-
if(!elem.is(':visible')) { return; }
|
3017 |
-
|
3018 |
-
var target = $(event.target),
|
3019 |
-
tooltip = current.tooltip,
|
3020 |
-
container = target.closest(SELECTOR),
|
3021 |
-
targetOnTop;
|
3022 |
-
|
3023 |
-
// Determine if input container target is above this
|
3024 |
-
targetOnTop = container.length < 1 ? FALSE :
|
3025 |
-
(parseInt(container[0].style.zIndex, 10) > parseInt(tooltip[0].style.zIndex, 10));
|
3026 |
-
|
3027 |
-
// If we're showing a modal, but focus has landed on an input below
|
3028 |
-
// this modal, divert focus to the first visible input in this modal
|
3029 |
-
// or if we can't find one... the tooltip itself
|
3030 |
-
if(!targetOnTop && target.closest(SELECTOR)[0] !== tooltip[0]) {
|
3031 |
-
focusInputs(target);
|
3032 |
-
}
|
3033 |
-
|
3034 |
-
// Detect when we leave the last focusable element...
|
3035 |
-
onLast = event.target === focusableElems[focusableElems.length - 1];
|
3036 |
-
}
|
3037 |
-
|
3038 |
-
$.extend(self, {
|
3039 |
-
init: function() {
|
3040 |
-
// Create document overlay
|
3041 |
-
elem = self.elem = $('<div />', {
|
3042 |
-
id: 'qtip-overlay',
|
3043 |
-
html: '<div></div>',
|
3044 |
-
mousedown: function() { return FALSE; }
|
3045 |
-
})
|
3046 |
-
.hide();
|
3047 |
-
|
3048 |
-
// Make sure we can't focus anything outside the tooltip
|
3049 |
-
$(document.body).bind('focusin'+MODALSELECTOR, stealFocus);
|
3050 |
-
|
3051 |
-
// Apply keyboard "Escape key" close handler
|
3052 |
-
$(document).bind('keydown'+MODALSELECTOR, function(event) {
|
3053 |
-
if(current && current.options.show.modal.escape && event.keyCode === 27) {
|
3054 |
-
current.hide(event);
|
3055 |
-
}
|
3056 |
-
});
|
3057 |
-
|
3058 |
-
// Apply click handler for blur option
|
3059 |
-
elem.bind('click'+MODALSELECTOR, function(event) {
|
3060 |
-
if(current && current.options.show.modal.blur) {
|
3061 |
-
current.hide(event);
|
3062 |
-
}
|
3063 |
-
});
|
3064 |
-
|
3065 |
-
return self;
|
3066 |
-
},
|
3067 |
-
|
3068 |
-
update: function(api) {
|
3069 |
-
// Update current API reference
|
3070 |
-
current = api;
|
3071 |
-
|
3072 |
-
// Update focusable elements if enabled
|
3073 |
-
if(api.options.show.modal.stealfocus !== FALSE) {
|
3074 |
-
focusableElems = api.tooltip.find('*').filter(function() {
|
3075 |
-
return focusable(this);
|
3076 |
-
});
|
3077 |
-
}
|
3078 |
-
else { focusableElems = []; }
|
3079 |
-
},
|
3080 |
-
|
3081 |
-
toggle: function(api, state, duration) {
|
3082 |
-
var docBody = $(document.body),
|
3083 |
-
tooltip = api.tooltip,
|
3084 |
-
options = api.options.show.modal,
|
3085 |
-
effect = options.effect,
|
3086 |
-
type = state ? 'show': 'hide',
|
3087 |
-
visible = elem.is(':visible'),
|
3088 |
-
visibleModals = $(MODALSELECTOR).filter(':visible:not(:animated)').not(tooltip),
|
3089 |
-
zindex;
|
3090 |
-
|
3091 |
-
// Set active tooltip API reference
|
3092 |
-
self.update(api);
|
3093 |
-
|
3094 |
-
// If the modal can steal the focus...
|
3095 |
-
// Blur the current item and focus anything in the modal we an
|
3096 |
-
if(state && options.stealfocus !== FALSE) {
|
3097 |
-
focusInputs( $(':focus') );
|
3098 |
-
}
|
3099 |
-
|
3100 |
-
// Toggle backdrop cursor style on show
|
3101 |
-
elem.toggleClass('blurs', options.blur);
|
3102 |
-
|
3103 |
-
// Append to body on show
|
3104 |
-
if(state) {
|
3105 |
-
elem.appendTo(document.body);
|
3106 |
-
}
|
3107 |
-
|
3108 |
-
// Prevent modal from conflicting with show.solo, and don't hide backdrop is other modals are visible
|
3109 |
-
if((elem.is(':animated') && visible === state && prevState !== FALSE) || (!state && visibleModals.length)) {
|
3110 |
-
return self;
|
3111 |
-
}
|
3112 |
-
|
3113 |
-
// Stop all animations
|
3114 |
-
elem.stop(TRUE, FALSE);
|
3115 |
-
|
3116 |
-
// Use custom function if provided
|
3117 |
-
if($.isFunction(effect)) {
|
3118 |
-
effect.call(elem, state);
|
3119 |
-
}
|
3120 |
-
|
3121 |
-
// If no effect type is supplied, use a simple toggle
|
3122 |
-
else if(effect === FALSE) {
|
3123 |
-
elem[ type ]();
|
3124 |
-
}
|
3125 |
-
|
3126 |
-
// Use basic fade function
|
3127 |
-
else {
|
3128 |
-
elem.fadeTo( parseInt(duration, 10) || 90, state ? 1 : 0, function() {
|
3129 |
-
if(!state) { elem.hide(); }
|
3130 |
-
});
|
3131 |
-
}
|
3132 |
-
|
3133 |
-
// Reset position and detach from body on hide
|
3134 |
-
if(!state) {
|
3135 |
-
elem.queue(function(next) {
|
3136 |
-
elem.css({ left: '', top: '' });
|
3137 |
-
if(!$(MODALSELECTOR).length) { elem.detach(); }
|
3138 |
-
next();
|
3139 |
-
});
|
3140 |
-
}
|
3141 |
-
|
3142 |
-
// Cache the state
|
3143 |
-
prevState = state;
|
3144 |
-
|
3145 |
-
// If the tooltip is destroyed, set reference to null
|
3146 |
-
if(current.destroyed) { current = NULL; }
|
3147 |
-
|
3148 |
-
return self;
|
3149 |
-
}
|
3150 |
-
});
|
3151 |
-
|
3152 |
-
self.init();
|
3153 |
-
};
|
3154 |
-
OVERLAY = new OVERLAY();
|
3155 |
-
|
3156 |
-
function Modal(api, options) {
|
3157 |
-
this.options = options;
|
3158 |
-
this._ns = '-modal';
|
3159 |
-
|
3160 |
-
this.init( (this.qtip = api) );
|
3161 |
-
}
|
3162 |
-
|
3163 |
-
$.extend(Modal.prototype, {
|
3164 |
-
init: function(qtip) {
|
3165 |
-
var tooltip = qtip.tooltip;
|
3166 |
-
|
3167 |
-
// If modal is disabled... return
|
3168 |
-
if(!this.options.on) { return this; }
|
3169 |
-
|
3170 |
-
// Set overlay reference
|
3171 |
-
qtip.elements.overlay = OVERLAY.elem;
|
3172 |
-
|
3173 |
-
// Add unique attribute so we can grab modal tooltips easily via a SELECTOR, and set z-index
|
3174 |
-
tooltip.addClass(MODALCLASS).css('z-index', QTIP.modal_zindex + $(MODALSELECTOR).length);
|
3175 |
-
|
3176 |
-
// Apply our show/hide/focus modal events
|
3177 |
-
qtip._bind(tooltip, ['tooltipshow', 'tooltiphide'], function(event, api, duration) {
|
3178 |
-
var oEvent = event.originalEvent;
|
3179 |
-
|
3180 |
-
// Make sure mouseout doesn't trigger a hide when showing the modal and mousing onto backdrop
|
3181 |
-
if(event.target === tooltip[0]) {
|
3182 |
-
if(oEvent && event.type === 'tooltiphide' && /mouse(leave|enter)/.test(oEvent.type) && $(oEvent.relatedTarget).closest(OVERLAY.elem[0]).length) {
|
3183 |
-
try { event.preventDefault(); } catch(e) {}
|
3184 |
-
}
|
3185 |
-
else if(!oEvent || (oEvent && oEvent.type !== 'tooltipsolo')) {
|
3186 |
-
this.toggle(event, event.type === 'tooltipshow', duration);
|
3187 |
-
}
|
3188 |
-
}
|
3189 |
-
}, this._ns, this);
|
3190 |
-
|
3191 |
-
// Adjust modal z-index on tooltip focus
|
3192 |
-
qtip._bind(tooltip, 'tooltipfocus', function(event, api) {
|
3193 |
-
// If focus was cancelled before it reached us, don't do anything
|
3194 |
-
if(event.isDefaultPrevented() || event.target !== tooltip[0]) { return; }
|
3195 |
-
|
3196 |
-
var qtips = $(MODALSELECTOR),
|
3197 |
-
|
3198 |
-
// Keep the modal's lower than other, regular qtips
|
3199 |
-
newIndex = QTIP.modal_zindex + qtips.length,
|
3200 |
-
curIndex = parseInt(tooltip[0].style.zIndex, 10);
|
3201 |
-
|
3202 |
-
// Set overlay z-index
|
3203 |
-
OVERLAY.elem[0].style.zIndex = newIndex - 1;
|
3204 |
-
|
3205 |
-
// Reduce modal z-index's and keep them properly ordered
|
3206 |
-
qtips.each(function() {
|
3207 |
-
if(this.style.zIndex > curIndex) {
|
3208 |
-
this.style.zIndex -= 1;
|
3209 |
-
}
|
3210 |
-
});
|
3211 |
-
|
3212 |
-
// Fire blur event for focused tooltip
|
3213 |
-
qtips.filter('.' + CLASS_FOCUS).qtip('blur', event.originalEvent);
|
3214 |
-
|
3215 |
-
// Set the new z-index
|
3216 |
-
tooltip.addClass(CLASS_FOCUS)[0].style.zIndex = newIndex;
|
3217 |
-
|
3218 |
-
// Set current
|
3219 |
-
OVERLAY.update(api);
|
3220 |
-
|
3221 |
-
// Prevent default handling
|
3222 |
-
try { event.preventDefault(); } catch(e) {}
|
3223 |
-
}, this._ns, this);
|
3224 |
-
|
3225 |
-
// Focus any other visible modals when this one hides
|
3226 |
-
qtip._bind(tooltip, 'tooltiphide', function(event) {
|
3227 |
-
if(event.target === tooltip[0]) {
|
3228 |
-
$(MODALSELECTOR).filter(':visible').not(tooltip).last().qtip('focus', event);
|
3229 |
-
}
|
3230 |
-
}, this._ns, this);
|
3231 |
-
},
|
3232 |
-
|
3233 |
-
toggle: function(event, state, duration) {
|
3234 |
-
// Make sure default event hasn't been prevented
|
3235 |
-
if(event && event.isDefaultPrevented()) { return this; }
|
3236 |
-
|
3237 |
-
// Toggle it
|
3238 |
-
OVERLAY.toggle(this.qtip, !!state, duration);
|
3239 |
-
},
|
3240 |
-
|
3241 |
-
destroy: function() {
|
3242 |
-
// Remove modal class
|
3243 |
-
this.qtip.tooltip.removeClass(MODALCLASS);
|
3244 |
-
|
3245 |
-
// Remove bound events
|
3246 |
-
this.qtip._unbind(this.qtip.tooltip, this._ns);
|
3247 |
-
|
3248 |
-
// Delete element reference
|
3249 |
-
OVERLAY.toggle(this.qtip, FALSE);
|
3250 |
-
delete this.qtip.elements.overlay;
|
3251 |
-
}
|
3252 |
-
});
|
3253 |
-
|
3254 |
-
|
3255 |
-
MODAL = PLUGINS.modal = function(api) {
|
3256 |
-
return new Modal(api, api.options.show.modal);
|
3257 |
-
};
|
3258 |
-
|
3259 |
-
// Setup sanitiztion rules
|
3260 |
-
MODAL.sanitize = function(opts) {
|
3261 |
-
if(opts.show) {
|
3262 |
-
if(typeof opts.show.modal !== 'object') { opts.show.modal = { on: !!opts.show.modal }; }
|
3263 |
-
else if(typeof opts.show.modal.on === 'undefined') { opts.show.modal.on = TRUE; }
|
3264 |
-
}
|
3265 |
-
};
|
3266 |
-
|
3267 |
-
// Base z-index for all modal tooltips (use qTip core z-index as a base)
|
3268 |
-
QTIP.modal_zindex = QTIP.zindex - 200;
|
3269 |
-
|
3270 |
-
// Plugin needs to be initialized on render
|
3271 |
-
MODAL.initialize = 'render';
|
3272 |
-
|
3273 |
-
// Setup option set checks
|
3274 |
-
CHECKS.modal = {
|
3275 |
-
'^show.modal.(on|blur)$': function() {
|
3276 |
-
// Initialise
|
3277 |
-
this.destroy();
|
3278 |
-
this.init();
|
3279 |
-
|
3280 |
-
// Show the modal if not visible already and tooltip is visible
|
3281 |
-
this.qtip.elems.overlay.toggle(
|
3282 |
-
this.qtip.tooltip[0].offsetWidth > 0
|
3283 |
-
);
|
3284 |
-
}
|
3285 |
-
};
|
3286 |
-
|
3287 |
-
// Extend original api defaults
|
3288 |
-
$.extend(TRUE, QTIP.defaults, {
|
3289 |
-
show: {
|
3290 |
-
modal: {
|
3291 |
-
on: FALSE,
|
3292 |
-
effect: TRUE,
|
3293 |
-
blur: TRUE,
|
3294 |
-
stealfocus: TRUE,
|
3295 |
-
escape: TRUE
|
3296 |
-
}
|
3297 |
-
}
|
3298 |
-
});
|
3299 |
-
;}));
|
3300 |
-
}( window, document ));
|
3301 |
-
|
3302 |
-
|
1 |
+
/*
|
2 |
+
* qTip2 - Pretty powerful tooltips - v2.2.0
|
3 |
+
* http://qtip2.com
|
4 |
+
*
|
5 |
+
* Copyright (c) 2014 Craig Michael Thompson
|
6 |
+
* Released under the MIT, GPL licenses
|
7 |
+
* http://jquery.org/license
|
8 |
+
*
|
9 |
+
* Date: Sun Mar 16 2014 07:12 EDT-0400
|
10 |
+
* Plugins: tips viewport imagemap svg modal
|
11 |
+
* Styles: css3
|
12 |
+
*/
|
13 |
+
/*global window: false, jQuery: false, console: false, define: false */
|
14 |
+
|
15 |
+
/* Cache window, document, undefined */
|
16 |
+
(function( window, document, undefined ) {
|
17 |
+
|
18 |
+
// Uses AMD or browser globals to create a jQuery plugin.
|
19 |
+
(function( factory ) {
|
20 |
+
"use strict";
|
21 |
+
if(typeof define === 'function' && define.amd) {
|
22 |
+
define(['jquery'], factory);
|
23 |
+
}
|
24 |
+
else if(jQuery && !jQuery.fn.qtip) {
|
25 |
+
factory(jQuery);
|
26 |
+
}
|
27 |
+
}
|
28 |
+
(function($) {
|
29 |
+
"use strict"; // Enable ECMAScript "strict" operation for this function. See more: http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/
|
30 |
+
|
31 |
+
;// Munge the primitives - Paul Irish tip
|
32 |
+
var TRUE = true,
|
33 |
+
FALSE = false,
|
34 |
+
NULL = null,
|
35 |
+
|
36 |
+
// Common variables
|
37 |
+
X = 'x', Y = 'y',
|
38 |
+
WIDTH = 'width',
|
39 |
+
HEIGHT = 'height',
|
40 |
+
|
41 |
+
// Positioning sides
|
42 |
+
TOP = 'top',
|
43 |
+
LEFT = 'left',
|
44 |
+
BOTTOM = 'bottom',
|
45 |
+
RIGHT = 'right',
|
46 |
+
CENTER = 'center',
|
47 |
+
|
48 |
+
// Position adjustment types
|
49 |
+
FLIP = 'flip',
|
50 |
+
FLIPINVERT = 'flipinvert',
|
51 |
+
SHIFT = 'shift',
|
52 |
+
|
53 |
+
// Shortcut vars
|
54 |
+
QTIP, PROTOTYPE, CORNER, CHECKS,
|
55 |
+
PLUGINS = {},
|
56 |
+
NAMESPACE = 'qtip',
|
57 |
+
ATTR_HAS = 'data-hasqtip',
|
58 |
+
ATTR_ID = 'data-qtip-id',
|
59 |
+
WIDGET = ['ui-widget', 'ui-tooltip'],
|
60 |
+
SELECTOR = '.'+NAMESPACE,
|
61 |
+
INACTIVE_EVENTS = 'click dblclick mousedown mouseup mousemove mouseleave mouseenter'.split(' '),
|
62 |
+
|
63 |
+
CLASS_FIXED = NAMESPACE+'-fixed',
|
64 |
+
CLASS_DEFAULT = NAMESPACE + '-default',
|
65 |
+
CLASS_FOCUS = NAMESPACE + '-focus',
|
66 |
+
CLASS_HOVER = NAMESPACE + '-hover',
|
67 |
+
CLASS_DISABLED = NAMESPACE+'-disabled',
|
68 |
+
|
69 |
+
replaceSuffix = '_replacedByqTip',
|
70 |
+
oldtitle = 'oldtitle',
|
71 |
+
trackingBound,
|
72 |
+
|
73 |
+
// Browser detection
|
74 |
+
BROWSER = {
|
75 |
+
/*
|
76 |
+
* IE version detection
|
77 |
+
*
|
78 |
+
* Adapted from: http://ajaxian.com/archives/attack-of-the-ie-conditional-comment
|
79 |
+
* Credit to James Padolsey for the original implemntation!
|
80 |
+
*/
|
81 |
+
ie: (function(){
|
82 |
+
var v = 3, div = document.createElement('div');
|
83 |
+
while ((div.innerHTML = '<!--[if gt IE '+(++v)+']><i></i><![endif]-->')) {
|
84 |
+
if(!div.getElementsByTagName('i')[0]) { break; }
|
85 |
+
}
|
86 |
+
return v > 4 ? v : NaN;
|
87 |
+
}()),
|
88 |
+
|
89 |
+
/*
|
90 |
+
* iOS version detection
|
91 |
+
*/
|
92 |
+
iOS: parseFloat(
|
93 |
+
('' + (/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent) || [0,''])[1])
|
94 |
+
.replace('undefined', '3_2').replace('_', '.').replace('_', '')
|
95 |
+
) || FALSE
|
96 |
+
};
|
97 |
+
|
98 |
;function QTip(target, options, id, attr) {
|
99 |
// Elements and ID
|
100 |
this.id = id;
|
295 |
return this.target;
|
296 |
};
|
297 |
|
298 |
+
;function invalidOpt(a) {
|
299 |
+
return a === NULL || $.type(a) !== 'object';
|
300 |
+
}
|
301 |
+
|
302 |
+
function invalidContent(c) {
|
303 |
+
return !( $.isFunction(c) || (c && c.attr) || c.length || ($.type(c) === 'object' && (c.jquery || c.then) ));
|
304 |
+
}
|
305 |
+
|
306 |
+
// Option object sanitizer
|
307 |
+
function sanitizeOptions(opts) {
|
308 |
+
var content, text, ajax, once;
|
309 |
+
|
310 |
+
if(invalidOpt(opts)) { return FALSE; }
|
311 |
+
|
312 |
+
if(invalidOpt(opts.metadata)) {
|
313 |
+
opts.metadata = { type: opts.metadata };
|
314 |
+
}
|
315 |
+
|
316 |
+
if('content' in opts) {
|
317 |
+
content = opts.content;
|
318 |
+
|
319 |
+
if(invalidOpt(content) || content.jquery || content.done) {
|
320 |
+
content = opts.content = {
|
321 |
+
text: (text = invalidContent(content) ? FALSE : content)
|
322 |
+
};
|
323 |
+
}
|
324 |
+
else { text = content.text; }
|
325 |
+
|
326 |
+
// DEPRECATED - Old content.ajax plugin functionality
|
327 |
+
// Converts it into the proper Deferred syntax
|
328 |
+
if('ajax' in content) {
|
329 |
+
ajax = content.ajax;
|
330 |
+
once = ajax && ajax.once !== FALSE;
|
331 |
+
delete content.ajax;
|
332 |
+
|
333 |
+
content.text = function(event, api) {
|
334 |
+
var loading = text || $(this).attr(api.options.content.attr) || 'Loading...',
|
335 |
+
|
336 |
+
deferred = $.ajax(
|
337 |
+
$.extend({}, ajax, { context: api })
|
338 |
+
)
|
339 |
+
.then(ajax.success, NULL, ajax.error)
|
340 |
+
.then(function(content) {
|
341 |
+
if(content && once) { api.set('content.text', content); }
|
342 |
+
return content;
|
343 |
+
},
|
344 |
+
function(xhr, status, error) {
|
345 |
+
if(api.destroyed || xhr.status === 0) { return; }
|
346 |
+
api.set('content.text', status + ': ' + error);
|
347 |
+
});
|
348 |
+
|
349 |
+
return !once ? (api.set('content.text', loading), deferred) : loading;
|
350 |
+
};
|
351 |
+
}
|
352 |
+
|
353 |
+
if('title' in content) {
|
354 |
+
if(!invalidOpt(content.title)) {
|
355 |
+
content.button = content.title.button;
|
356 |
+
content.title = content.title.text;
|
357 |
+
}
|
358 |
+
|
359 |
+
if(invalidContent(content.title || FALSE)) {
|
360 |
+
content.title = FALSE;
|
361 |
+
}
|
362 |
+
}
|
363 |
+
}
|
364 |
+
|
365 |
+
if('position' in opts && invalidOpt(opts.position)) {
|
366 |
+
opts.position = { my: opts.position, at: opts.position };
|
367 |
+
}
|
368 |
+
|
369 |
+
if('show' in opts && invalidOpt(opts.show)) {
|
370 |
+
opts.show = opts.show.jquery ? { target: opts.show } :
|
371 |
+
opts.show === TRUE ? { ready: TRUE } : { event: opts.show };
|
372 |
+
}
|
373 |
+
|
374 |
+
if('hide' in opts && invalidOpt(opts.hide)) {
|
375 |
+
opts.hide = opts.hide.jquery ? { target: opts.hide } : { event: opts.hide };
|
376 |
+
}
|
377 |
+
|
378 |
+
if('style' in opts && invalidOpt(opts.style)) {
|
379 |
+
opts.style = { classes: opts.style };
|
380 |
+
}
|
381 |
+
|
382 |
+
// Sanitize plugin options
|
383 |
+
$.each(PLUGINS, function() {
|
384 |
+
this.sanitize && this.sanitize(opts);
|
385 |
+
});
|
386 |
+
|
387 |
+
return opts;
|
388 |
+
}
|
389 |
+
|
390 |
+
// Setup builtin .set() option checks
|
391 |
+
CHECKS = PROTOTYPE.checks = {
|
392 |
+
builtin: {
|
393 |
+
// Core checks
|
394 |
+
'^id$': function(obj, o, v, prev) {
|
395 |
+
var id = v === TRUE ? QTIP.nextid : v,
|
396 |
+
new_id = NAMESPACE + '-' + id;
|
397 |
+
|
398 |
+
if(id !== FALSE && id.length > 0 && !$('#'+new_id).length) {
|
399 |
+
this._id = new_id;
|
400 |
+
|
401 |
+
if(this.rendered) {
|
402 |
+
this.tooltip[0].id = this._id;
|
403 |
+
this.elements.content[0].id = this._id + '-content';
|
404 |
+
this.elements.title[0].id = this._id + '-title';
|
405 |
+
}
|
406 |
+
}
|
407 |
+
else { obj[o] = prev; }
|
408 |
+
},
|
409 |
+
'^prerender': function(obj, o, v) {
|
410 |
+
v && !this.rendered && this.render(this.options.show.ready);
|
411 |
+
},
|
412 |
+
|
413 |
+
// Content checks
|
414 |
+
'^content.text$': function(obj, o, v) {
|
415 |
+
this._updateContent(v);
|
416 |
+
},
|
417 |
+
'^content.attr$': function(obj, o, v, prev) {
|
418 |
+
if(this.options.content.text === this.target.attr(prev)) {
|
419 |
+
this._updateContent( this.target.attr(v) );
|
420 |
+
}
|
421 |
+
},
|
422 |
+
'^content.title$': function(obj, o, v) {
|
423 |
+
// Remove title if content is null
|
424 |
+
if(!v) { return this._removeTitle(); }
|
425 |
+
|
426 |
+
// If title isn't already created, create it now and update
|
427 |
+
v && !this.elements.title && this._createTitle();
|
428 |
+
this._updateTitle(v);
|
429 |
+
},
|
430 |
+
'^content.button$': function(obj, o, v) {
|
431 |
+
this._updateButton(v);
|
432 |
+
},
|
433 |
+
'^content.title.(text|button)$': function(obj, o, v) {
|
434 |
+
this.set('content.'+o, v); // Backwards title.text/button compat
|
435 |
+
},
|
436 |
+
|
437 |
+
// Position checks
|
438 |
+
'^position.(my|at)$': function(obj, o, v){
|
439 |
+
'string' === typeof v && (obj[o] = new CORNER(v, o === 'at'));
|
440 |
+
},
|
441 |
+
'^position.container$': function(obj, o, v){
|
442 |
+
this.rendered && this.tooltip.appendTo(v);
|
443 |
+
},
|
444 |
+
|
445 |
+
// Show checks
|
446 |
+
'^show.ready$': function(obj, o, v) {
|
447 |
+
v && (!this.rendered && this.render(TRUE) || this.toggle(TRUE));
|
448 |
+
},
|
449 |
+
|
450 |
+
// Style checks
|
451 |
+
'^style.classes$': function(obj, o, v, p) {
|
452 |
+
this.rendered && this.tooltip.removeClass(p).addClass(v);
|
453 |
+
},
|
454 |
+
'^style.(width|height)': function(obj, o, v) {
|
455 |
+
this.rendered && this.tooltip.css(o, v);
|
456 |
+
},
|
457 |
+
'^style.widget|content.title': function() {
|
458 |
+
this.rendered && this._setWidget();
|
459 |
+
},
|
460 |
+
'^style.def': function(obj, o, v) {
|
461 |
+
this.rendered && this.tooltip.toggleClass(CLASS_DEFAULT, !!v);
|
462 |
+
},
|
463 |
+
|
464 |
+
// Events check
|
465 |
+
'^events.(render|show|move|hide|focus|blur)$': function(obj, o, v) {
|
466 |
+
this.rendered && this.tooltip[($.isFunction(v) ? '' : 'un') + 'bind']('tooltip'+o, v);
|
467 |
+
},
|
468 |
+
|
469 |
+
// Properties which require event reassignment
|
470 |
+
'^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)': function() {
|
471 |
+
if(!this.rendered) { return; }
|
472 |
+
|
473 |
+
// Set tracking flag
|
474 |
+
var posOptions = this.options.position;
|
475 |
+
this.tooltip.attr('tracking', posOptions.target === 'mouse' && posOptions.adjust.mouse);
|
476 |
+
|
477 |
+
// Reassign events
|
478 |
+
this._unassignEvents();
|
479 |
+
this._assignEvents();
|
480 |
+
}
|
481 |
+
}
|
482 |
+
};
|
483 |
+
|
484 |
+
// Dot notation converter
|
485 |
+
function convertNotation(options, notation) {
|
486 |
+
var i = 0, obj, option = options,
|
487 |
+
|
488 |
+
// Split notation into array
|
489 |
+
levels = notation.split('.');
|
490 |
+
|
491 |
+
// Loop through
|
492 |
+
while( option = option[ levels[i++] ] ) {
|
493 |
+
if(i < levels.length) { obj = option; }
|
494 |
+
}
|
495 |
+
|
496 |
+
return [obj || options, levels.pop()];
|
497 |
+
}
|
498 |
+
|
499 |
+
PROTOTYPE.get = function(notation) {
|
500 |
+
if(this.destroyed) { return this; }
|
501 |
+
|
502 |
+
var o = convertNotation(this.options, notation.toLowerCase()),
|
503 |
+
result = o[0][ o[1] ];
|
504 |
+
|
505 |
+
return result.precedance ? result.string() : result;
|
506 |
+
};
|
507 |
+
|
508 |
+
function setCallback(notation, args) {
|
509 |
+
var category, rule, match;
|
510 |
+
|
511 |
+
for(category in this.checks) {
|
512 |
+
for(rule in this.checks[category]) {
|
513 |
+
if(match = (new RegExp(rule, 'i')).exec(notation)) {
|
514 |
+
args.push(match);
|
515 |
+
|
516 |
+
if(category === 'builtin' || this.plugins[category]) {
|
517 |
+
this.checks[category][rule].apply(
|
518 |
+
this.plugins[category] || this, args
|
519 |
+
);
|
520 |
+
}
|
521 |
+
}
|
522 |
+
}
|
523 |
+
}
|
524 |
+
}
|
525 |
+
|
526 |
+
var rmove = /^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,
|
527 |
+
rrender = /^prerender|show\.ready/i;
|
528 |
+
|
529 |
+
PROTOTYPE.set = function(option, value) {
|
530 |
+
if(this.destroyed) { return this; }
|
531 |
+
|
532 |
+
var rendered = this.rendered,
|
533 |
+
reposition = FALSE,
|
534 |
+
options = this.options,
|
535 |
+
checks = this.checks,
|
536 |
+
name;
|
537 |
+
|
538 |
+
// Convert singular option/value pair into object form
|
539 |
+
if('string' === typeof option) {
|
540 |
+
name = option; option = {}; option[name] = value;
|
541 |
+
}
|
542 |
+
else { option = $.extend({}, option); }
|
543 |
+
|
544 |
+
// Set all of the defined options to their new values
|
545 |
+
$.each(option, function(notation, value) {
|
546 |
+
if(rendered && rrender.test(notation)) {
|
547 |
+
delete option[notation]; return;
|
548 |
+
}
|
549 |
+
|
550 |
+
// Set new obj value
|
551 |
+
var obj = convertNotation(options, notation.toLowerCase()), previous;
|
552 |
+
previous = obj[0][ obj[1] ];
|
553 |
+
obj[0][ obj[1] ] = value && value.nodeType ? $(value) : value;
|
554 |
+
|
555 |
+
// Also check if we need to reposition
|
556 |
+
reposition = rmove.test(notation) || reposition;
|
557 |
+
|
558 |
+
// Set the new params for the callback
|
559 |
+
option[notation] = [obj[0], obj[1], value, previous];
|
560 |
+
});
|
561 |
+
|
562 |
+
// Re-sanitize options
|
563 |
+
sanitizeOptions(options);
|
564 |
+
|
565 |
+
/*
|
566 |
+
* Execute any valid callbacks for the set options
|
567 |
+
* Also set positioning flag so we don't get loads of redundant repositioning calls.
|
568 |
+
*/
|
569 |
+
this.positioning = TRUE;
|
570 |
+
$.each(option, $.proxy(setCallback, this));
|
571 |
+
this.positioning = FALSE;
|
572 |
+
|
573 |
+
// Update position if needed
|
574 |
+
if(this.rendered && this.tooltip[0].offsetWidth > 0 && reposition) {
|
575 |
+
this.reposition( options.position.target === 'mouse' ? NULL : this.cache.event );
|
576 |
+
}
|
577 |
+
|
578 |
+
return this;
|
579 |
+
};
|
580 |
+
|
581 |
+
;PROTOTYPE._update = function(content, element, reposition) {
|
582 |
+
var self = this,
|
583 |
+
cache = this.cache;
|
584 |
+
|
585 |
+
// Make sure tooltip is rendered and content is defined. If not return
|
586 |
+
if(!this.rendered || !content) { return FALSE; }
|
587 |
+
|
588 |
+
// Use function to parse content
|
589 |
+
if($.isFunction(content)) {
|
590 |
+
content = content.call(this.elements.target, cache.event, this) || '';
|
591 |
+
}
|
592 |
+
|
593 |
+
// Handle deferred content
|
594 |
+
if($.isFunction(content.then)) {
|
595 |
+
cache.waiting = TRUE;
|
596 |
+
return content.then(function(c) {
|
597 |
+
cache.waiting = FALSE;
|
598 |
+
return self._update(c, element);
|
599 |
+
}, NULL, function(e) {
|
600 |
+
return self._update(e, element);
|
601 |
+
});
|
602 |
+
}
|
603 |
+
|
604 |
+
// If content is null... return false
|
605 |
+
if(content === FALSE || (!content && content !== '')) { return FALSE; }
|
606 |
+
|
607 |
+
// Append new content if its a DOM array and show it if hidden
|
608 |
+
if(content.jquery && content.length > 0) {
|
609 |
+
element.empty().append(
|
610 |
+
content.css({ display: 'block', visibility: 'visible' })
|
611 |
+
);
|
612 |
+
}
|
613 |
+
|
614 |
+
// Content is a regular string, insert the new content
|
615 |
+
else { element.html(content); }
|
616 |
+
|
617 |
+
// Wait for content to be loaded, and reposition
|
618 |
+
return this._waitForContent(element).then(function(images) {
|
619 |
+
if(images.images && images.images.length && self.rendered && self.tooltip[0].offsetWidth > 0) {
|
620 |
+
self.reposition(cache.event, !images.length);
|
621 |
+
}
|
622 |
+
});
|
623 |
+
};
|
624 |
+
|
625 |
+
PROTOTYPE._waitForContent = function(element) {
|
626 |
+
var cache = this.cache;
|
627 |
+
|
628 |
+
// Set flag
|
629 |
+
cache.waiting = TRUE;
|
630 |
+
|
631 |
+
// If imagesLoaded is included, ensure images have loaded and return promise
|
632 |
+
return ( $.fn.imagesLoaded ? element.imagesLoaded() : $.Deferred().resolve([]) )
|
633 |
+
.done(function() { cache.waiting = FALSE; })
|
634 |
+
.promise();
|
635 |
+
};
|
636 |
+
|
637 |
+
PROTOTYPE._updateContent = function(content, reposition) {
|
638 |
+
this._update(content, this.elements.content, reposition);
|
639 |
+
};
|
640 |
+
|
641 |
+
PROTOTYPE._updateTitle = function(content, reposition) {
|
642 |
+
if(this._update(content, this.elements.title, reposition) === FALSE) {
|
643 |
+
this._removeTitle(FALSE);
|
644 |
+
}
|
645 |
+
};
|
646 |
+
|
647 |
+
PROTOTYPE._createTitle = function()
|
648 |
+
{
|
649 |
+
var elements = this.elements,
|
650 |
+
id = this._id+'-title';
|
651 |
+
|
652 |
+
// Destroy previous title element, if present
|
653 |
+
if(elements.titlebar) { this._removeTitle(); }
|
654 |
+
|
655 |
+
// Create title bar and title elements
|
656 |
+
elements.titlebar = $('<div />', {
|
657 |
+
'class': NAMESPACE + '-titlebar ' + (this.options.style.widget ? createWidgetClass('header') : '')
|
658 |
+
})
|
659 |
+
.append(
|
660 |
+
elements.title = $('<div />', {
|
661 |
+
'id': id,
|
662 |
+
'class': NAMESPACE + '-title',
|
663 |
+
'aria-atomic': TRUE
|
664 |
+
})
|
665 |
+
)
|
666 |
+
.insertBefore(elements.content)
|
667 |
+
|
668 |
+
// Button-specific events
|
669 |
+
.delegate('.qtip-close', 'mousedown keydown mouseup keyup mouseout', function(event) {
|
670 |
+
$(this).toggleClass('ui-state-active ui-state-focus', event.type.substr(-4) === 'down');
|
671 |
+
})
|
672 |
+
.delegate('.qtip-close', 'mouseover mouseout', function(event){
|
673 |
+
$(this).toggleClass('ui-state-hover', event.type === 'mouseover');
|
674 |
+
});
|
675 |
+
|
676 |
+
// Create button if enabled
|
677 |
+
if(this.options.content.button) { this._createButton(); }
|
678 |
+
};
|
679 |
+
|
680 |
+
PROTOTYPE._removeTitle = function(reposition)
|
681 |
+
{
|
682 |
+
var elements = this.elements;
|
683 |
+
|
684 |
+
if(elements.title) {
|
685 |
+
elements.titlebar.remove();
|
686 |
+
elements.titlebar = elements.title = elements.button = NULL;
|
687 |
+
|
688 |
+
// Reposition if enabled
|
689 |
+
if(reposition !== FALSE) { this.reposition(); }
|
690 |
+
}
|
691 |
+
};
|
692 |
+
|
693 |
+
;PROTOTYPE.reposition = function(event, effect) {
|
694 |
+
if(!this.rendered || this.positioning || this.destroyed) { return this; }
|
695 |
+
|
696 |
+
// Set positioning flag
|
697 |
+
this.positioning = TRUE;
|
698 |
+
|
699 |
+
var cache = this.cache,
|
700 |
+
tooltip = this.tooltip,
|
701 |
+
posOptions = this.options.position,
|
702 |
+
target = posOptions.target,
|
703 |
+
my = posOptions.my,
|
704 |
+
at = posOptions.at,
|
705 |
+
viewport = posOptions.viewport,
|
706 |
+
container = posOptions.container,
|
707 |
+
adjust = posOptions.adjust,
|
708 |
+
method = adjust.method.split(' '),
|
709 |
+
tooltipWidth = tooltip.outerWidth(FALSE),
|
710 |
+
tooltipHeight = tooltip.outerHeight(FALSE),
|
711 |
+
targetWidth = 0,
|
712 |
+
targetHeight = 0,
|
713 |
+
type = tooltip.css('position'),
|
714 |
+
position = { left: 0, top: 0 },
|
715 |
+
visible = tooltip[0].offsetWidth > 0,
|
716 |
+
isScroll = event && event.type === 'scroll',
|
717 |
+
win = $(window),
|
718 |
+
doc = container[0].ownerDocument,
|
719 |
+
mouse = this.mouse,
|
720 |
+
pluginCalculations, offset;
|
721 |
+
|
722 |
+
// Check if absolute position was passed
|
723 |
+
if($.isArray(target) && target.length === 2) {
|
724 |
+
// Force left top and set position
|
725 |
+
at = { x: LEFT, y: TOP };
|
726 |
+
position = { left: target[0], top: target[1] };
|
727 |
+
}
|
728 |
+
|
729 |
+
// Check if mouse was the target
|
730 |
+
else if(target === 'mouse') {
|
731 |
+
// Force left top to allow flipping
|
732 |
+
at = { x: LEFT, y: TOP };
|
733 |
+
|
734 |
+
// Use the cached mouse coordinates if available, or passed event has no coordinates
|
735 |
+
if(mouse && mouse.pageX && (adjust.mouse || !event || !event.pageX) ) {
|
736 |
+
event = mouse;
|
737 |
+
}
|
738 |
+
|
739 |
+
// If the passed event has no coordinates (such as a scroll event)
|
740 |
+
else if(!event || !event.pageX) {
|
741 |
+
// Use the mouse origin that caused the show event, if distance hiding is enabled
|
742 |
+
if((!adjust.mouse || this.options.show.distance) && cache.origin && cache.origin.pageX) {
|
743 |
+
event = cache.origin;
|
744 |
+
}
|
745 |
+
|
746 |
+
// Use cached event for resize/scroll events
|
747 |
+
else if(!event || (event && (event.type === 'resize' || event.type === 'scroll'))) {
|
748 |
+
event = cache.event;
|
749 |
+
}
|
750 |
+
}
|
751 |
+
|
752 |
+
// Calculate body and container offset and take them into account below
|
753 |
+
if(type !== 'static') { position = container.offset(); }
|
754 |
+
if(doc.body.offsetWidth !== (window.innerWidth || doc.documentElement.clientWidth)) {
|
755 |
+
offset = $(document.body).offset();
|
756 |
+
}
|
757 |
+
|
758 |
+
// Use event coordinates for position
|
759 |
+
position = {
|
760 |
+
left: event.pageX - position.left + (offset && offset.left || 0),
|
761 |
+
top: event.pageY - position.top + (offset && offset.top || 0)
|
762 |
+
};
|
763 |
+
|
764 |
+
// Scroll events are a pain, some browsers
|
765 |
+
if(adjust.mouse && isScroll && mouse) {
|
766 |
+
position.left -= (mouse.scrollX || 0) - win.scrollLeft();
|
767 |
+
position.top -= (mouse.scrollY || 0) - win.scrollTop();
|
768 |
+
}
|
769 |
+
}
|
770 |
+
|
771 |
+
// Target wasn't mouse or absolute...
|
772 |
+
else {
|
773 |
+
// Check if event targetting is being used
|
774 |
+
if(target === 'event') {
|
775 |
+
if(event && event.target && event.type !== 'scroll' && event.type !== 'resize') {
|
776 |
+
cache.target = $(event.target);
|
777 |
+
}
|
778 |
+
else if(!event.target) {
|
779 |
+
cache.target = this.elements.target;
|
780 |
+
}
|
781 |
+
}
|
782 |
+
else if(target !== 'event'){
|
783 |
+
cache.target = $(target.jquery ? target : this.elements.target);
|
784 |
+
}
|
785 |
+
target = cache.target;
|
786 |
+
|
787 |
+
// Parse the target into a jQuery object and make sure there's an element present
|
788 |
+
target = $(target).eq(0);
|
789 |
+
if(target.length === 0) { return this; }
|
790 |
+
|
791 |
+
// Check if window or document is the target
|
792 |
+
else if(target[0] === document || target[0] === window) {
|
793 |
+
targetWidth = BROWSER.iOS ? window.innerWidth : target.width();
|
794 |
+
targetHeight = BROWSER.iOS ? window.innerHeight : target.height();
|
795 |
+
|
796 |
+
if(target[0] === window) {
|
797 |
+
position = {
|
798 |
+
top: (viewport || target).scrollTop(),
|
799 |
+
left: (viewport || target).scrollLeft()
|
800 |
+
};
|
801 |
+
}
|
802 |
+
}
|
803 |
+
|
804 |
+
// Check if the target is an <AREA> element
|
805 |
+
else if(PLUGINS.imagemap && target.is('area')) {
|
806 |
+
pluginCalculations = PLUGINS.imagemap(this, target, at, PLUGINS.viewport ? method : FALSE);
|
807 |
+
}
|
808 |
+
|
809 |
+
// Check if the target is an SVG element
|
810 |
+
else if(PLUGINS.svg && target && target[0].ownerSVGElement) {
|
811 |
+
pluginCalculations = PLUGINS.svg(this, target, at, PLUGINS.viewport ? method : FALSE);
|
812 |
+
}
|
813 |
+
|
814 |
+
// Otherwise use regular jQuery methods
|
815 |
+
else {
|
816 |
+
targetWidth = target.outerWidth(FALSE);
|
817 |
+
targetHeight = target.outerHeight(FALSE);
|
818 |
+
position = target.offset();
|
819 |
+
}
|
820 |
+
|
821 |
+
// Parse returned plugin values into proper variables
|
822 |
+
if(pluginCalculations) {
|
823 |
+
targetWidth = pluginCalculations.width;
|
824 |
+
targetHeight = pluginCalculations.height;
|
825 |
+
offset = pluginCalculations.offset;
|
826 |
+
position = pluginCalculations.position;
|
827 |
+
}
|
828 |
+
|
829 |
+
// Adjust position to take into account offset parents
|
830 |
+
position = this.reposition.offset(target, position, container);
|
831 |
+
|
832 |
+
// Adjust for position.fixed tooltips (and also iOS scroll bug in v3.2-4.0 & v4.3-4.3.2)
|
833 |
+
if((BROWSER.iOS > 3.1 && BROWSER.iOS < 4.1) ||
|
834 |
+
(BROWSER.iOS >= 4.3 && BROWSER.iOS < 4.33) ||
|
835 |
+
(!BROWSER.iOS && type === 'fixed')
|
836 |
+
){
|
837 |
+
position.left -= win.scrollLeft();
|
838 |
+
position.top -= win.scrollTop();
|
839 |
+
}
|
840 |
+
|
841 |
+
// Adjust position relative to target
|
842 |
+
if(!pluginCalculations || (pluginCalculations && pluginCalculations.adjustable !== FALSE)) {
|
843 |
+
position.left += at.x === RIGHT ? targetWidth : at.x === CENTER ? targetWidth / 2 : 0;
|
844 |
+
position.top += at.y === BOTTOM ? targetHeight : at.y === CENTER ? targetHeight / 2 : 0;
|
845 |
+
}
|
846 |
+
}
|
847 |
+
|
848 |
+
// Adjust position relative to tooltip
|
849 |
+
position.left += adjust.x + (my.x === RIGHT ? -tooltipWidth : my.x === CENTER ? -tooltipWidth / 2 : 0);
|
850 |
+
position.top += adjust.y + (my.y === BOTTOM ? -tooltipHeight : my.y === CENTER ? -tooltipHeight / 2 : 0);
|
851 |
+
|
852 |
+
// Use viewport adjustment plugin if enabled
|
853 |
+
if(PLUGINS.viewport) {
|
854 |
+
position.adjusted = PLUGINS.viewport(
|
855 |
+
this, position, posOptions, targetWidth, targetHeight, tooltipWidth, tooltipHeight
|
856 |
+
);
|
857 |
+
|
858 |
+
// Apply offsets supplied by positioning plugin (if used)
|
859 |
+
if(offset && position.adjusted.left) { position.left += offset.left; }
|
860 |
+
if(offset && position.adjusted.top) { position.top += offset.top; }
|
861 |
+
}
|
862 |
+
|
863 |
+
// Viewport adjustment is disabled, set values to zero
|
864 |
+
else { position.adjusted = { left: 0, top: 0 }; }
|
865 |
+
|
866 |
+
// tooltipmove event
|
867 |
+
if(!this._trigger('move', [position, viewport.elem || viewport], event)) { return this; }
|
868 |
+
delete position.adjusted;
|
869 |
+
|
870 |
+
// If effect is disabled, target it mouse, no animation is defined or positioning gives NaN out, set CSS directly
|
871 |
+
if(effect === FALSE || !visible || isNaN(position.left) || isNaN(position.top) || target === 'mouse' || !$.isFunction(posOptions.effect)) {
|
872 |
+
tooltip.css(position);
|
873 |
+
}
|
874 |
+
|
875 |
+
// Use custom function if provided
|
876 |
+
else if($.isFunction(posOptions.effect)) {
|
877 |
+
posOptions.effect.call(tooltip, this, $.extend({}, position));
|
878 |
+
tooltip.queue(function(next) {
|
879 |
+
// Reset attributes to avoid cross-browser rendering bugs
|
880 |
+
$(this).css({ opacity: '', height: '' });
|
881 |
+
if(BROWSER.ie) { this.style.removeAttribute('filter'); }
|
882 |
+
|
883 |
+
next();
|
884 |
+
});
|
885 |
+
}
|
886 |
+
|
887 |
+
// Set positioning flag
|
888 |
+
this.positioning = FALSE;
|
889 |
+
|
890 |
+
return this;
|
891 |
+
};
|
892 |
+
|
893 |
+
// Custom (more correct for qTip!) offset calculator
|
894 |
+
PROTOTYPE.reposition.offset = function(elem, pos, container) {
|
895 |
+
if(!container[0]) { return pos; }
|
896 |
+
|
897 |
+
var ownerDocument = $(elem[0].ownerDocument),
|
898 |
+
quirks = !!BROWSER.ie && document.compatMode !== 'CSS1Compat',
|
899 |
+
parent = container[0],
|
900 |
+
scrolled, position, parentOffset, overflow;
|
901 |
+
|
902 |
+
function scroll(e, i) {
|
903 |
+
pos.left += i * e.scrollLeft();
|
904 |
+
pos.top += i * e.scrollTop();
|
905 |
+
}
|
906 |
+
|
907 |
+
// Compensate for non-static containers offset
|
908 |
+
do {
|
909 |
+
if((position = $.css(parent, 'position')) !== 'static') {
|
910 |
+
if(position === 'fixed') {
|
911 |
+
parentOffset = parent.getBoundingClientRect();
|
912 |
+
scroll(ownerDocument, -1);
|
913 |
+
}
|
914 |
+
else {
|
915 |
+
parentOffset = $(parent).position();
|
916 |
+
parentOffset.left += (parseFloat($.css(parent, 'borderLeftWidth')) || 0);
|
917 |
+
parentOffset.top += (parseFloat($.css(parent, 'borderTopWidth')) || 0);
|
918 |
+
}
|
919 |
+
|
920 |
+
pos.left -= parentOffset.left + (parseFloat($.css(parent, 'marginLeft')) || 0);
|
921 |
+
pos.top -= parentOffset.top + (parseFloat($.css(parent, 'marginTop')) || 0);
|
922 |
+
|
923 |
+
// If this is the first parent element with an overflow of "scroll" or "auto", store it
|
924 |
+
if(!scrolled && (overflow = $.css(parent, 'overflow')) !== 'hidden' && overflow !== 'visible') { scrolled = $(parent); }
|
925 |
+
}
|
926 |
+
}
|
927 |
+
while((parent = parent.offsetParent));
|
928 |
+
|
929 |
+
// Compensate for containers scroll if it also has an offsetParent (or in IE quirks mode)
|
930 |
+
if(scrolled && (scrolled[0] !== ownerDocument[0] || quirks)) {
|
931 |
+
scroll(scrolled, 1);
|
932 |
+
}
|
933 |
+
|
934 |
+
return pos;
|
935 |
+
};
|
936 |
+
|
937 |
+
// Corner class
|
938 |
+
var C = (CORNER = PROTOTYPE.reposition.Corner = function(corner, forceY) {
|
939 |
+
corner = ('' + corner).replace(/([A-Z])/, ' $1').replace(/middle/gi, CENTER).toLowerCase();
|
940 |
+
this.x = (corner.match(/left|right/i) || corner.match(/center/) || ['inherit'])[0].toLowerCase();
|
941 |
+
this.y = (corner.match(/top|bottom|center/i) || ['inherit'])[0].toLowerCase();
|
942 |
+
this.forceY = !!forceY;
|
943 |
+
|
944 |
+
var f = corner.charAt(0);
|
945 |
+
this.precedance = (f === 't' || f === 'b' ? Y : X);
|
946 |
+
}).prototype;
|
947 |
+
|
948 |
+
C.invert = function(z, center) {
|
949 |
+
this[z] = this[z] === LEFT ? RIGHT : this[z] === RIGHT ? LEFT : center || this[z];
|
950 |
+
};
|
951 |
+
|
952 |
+
C.string = function() {
|
953 |
+
var x = this.x, y = this.y;
|
954 |
+
return x === y ? x : this.precedance === Y || (this.forceY && y !== 'center') ? y+' '+x : x+' '+y;
|
955 |
+
};
|
956 |
+
|
957 |
+
C.abbrev = function() {
|
958 |
+
var result = this.string().split(' ');
|
959 |
+
return result[0].charAt(0) + (result[1] && result[1].charAt(0) || '');
|
960 |
+
};
|
961 |
+
|
962 |
+
C.clone = function() {
|
963 |
+
return new CORNER( this.string(), this.forceY );
|
964 |
+
};;
|
965 |
+
PROTOTYPE.toggle = function(state, event) {
|
966 |
+
var cache = this.cache,
|
967 |
+
options = this.options,
|
968 |
+
tooltip = this.tooltip;
|
969 |
+
|
970 |
+
// Try to prevent flickering when tooltip overlaps show element
|
971 |
+
if(event) {
|
972 |
+
if((/over|enter/).test(event.type) && (/out|leave/).test(cache.event.type) &&
|
973 |
+
options.show.target.add(event.target).length === options.show.target.length &&
|
974 |
+
tooltip.has(event.relatedTarget).length) {
|
975 |
+
return this;
|
976 |
+
}
|
977 |
+
|
978 |
+
// Cache event
|
979 |
+
cache.event = cloneEvent(event);
|
980 |
+
}
|
981 |
+
|
982 |
+
// If we're currently waiting and we've just hidden... stop it
|
983 |
+
this.waiting && !state && (this.hiddenDuringWait = TRUE);
|
984 |
+
|
985 |
+
// Render the tooltip if showing and it isn't already
|
986 |
+
if(!this.rendered) { return state ? this.render(1) : this; }
|
987 |
+
else if(this.destroyed || this.disabled) { return this; }
|
988 |
+
|
989 |
+
var type = state ? 'show' : 'hide',
|
990 |
+
opts = this.options[type],
|
991 |
+
otherOpts = this.options[ !state ? 'show' : 'hide' ],
|
992 |
+
posOptions = this.options.position,
|
993 |
+
contentOptions = this.options.content,
|
994 |
+
width = this.tooltip.css('width'),
|
995 |
+
visible = this.tooltip.is(':visible'),
|
996 |
+
animate = state || opts.target.length === 1,
|
997 |
+
sameTarget = !event || opts.target.length < 2 || cache.target[0] === event.target,
|
998 |
+
identicalState, allow, showEvent, delay, after;
|
999 |
+
|
1000 |
+
// Detect state if valid one isn't provided
|
1001 |
+
if((typeof state).search('boolean|number')) { state = !visible; }
|
1002 |
+
|
1003 |
+
// Check if the tooltip is in an identical state to the new would-be state
|
1004 |
+
identicalState = !tooltip.is(':animated') && visible === state && sameTarget;
|
1005 |
+
|
1006 |
+
// Fire tooltip(show/hide) event and check if destroyed
|
1007 |
+
allow = !identicalState ? !!this._trigger(type, [90]) : NULL;
|
1008 |
+
|
1009 |
+
// Check to make sure the tooltip wasn't destroyed in the callback
|
1010 |
+
if(this.destroyed) { return this; }
|
1011 |
+
|
1012 |
+
// If the user didn't stop the method prematurely and we're showing the tooltip, focus it
|
1013 |
+
if(allow !== FALSE && state) { this.focus(event); }
|
1014 |
+
|
1015 |
+
// If the state hasn't changed or the user stopped it, return early
|
1016 |
+
if(!allow || identicalState) { return this; }
|
1017 |
+
|
1018 |
+
// Set ARIA hidden attribute
|
1019 |
+
$.attr(tooltip[0], 'aria-hidden', !!!state);
|
1020 |
+
|
1021 |
+
// Execute state specific properties
|
1022 |
+
if(state) {
|
1023 |
+
// Store show origin coordinates
|
1024 |
+
cache.origin = cloneEvent(this.mouse);
|
1025 |
+
|
1026 |
+
// Update tooltip content & title if it's a dynamic function
|
1027 |
+
if($.isFunction(contentOptions.text)) { this._updateContent(contentOptions.text, FALSE); }
|
1028 |
+
if($.isFunction(contentOptions.title)) { this._updateTitle(contentOptions.title, FALSE); }
|
1029 |
+
|
1030 |
+
// Cache mousemove events for positioning purposes (if not already tracking)
|
1031 |
+
if(!trackingBound && posOptions.target === 'mouse' && posOptions.adjust.mouse) {
|
1032 |
+
$(document).bind('mousemove.'+NAMESPACE, this._storeMouse);
|
1033 |
+
trackingBound = TRUE;
|
1034 |
+
}
|
1035 |
+
|
1036 |
+
// Update the tooltip position (set width first to prevent viewport/max-width issues)
|
1037 |
+
if(!width) { tooltip.css('width', tooltip.outerWidth(FALSE)); }
|
1038 |
+
this.reposition(event, arguments[2]);
|
1039 |
+
if(!width) { tooltip.css('width', ''); }
|
1040 |
+
|
1041 |
+
// Hide other tooltips if tooltip is solo
|
1042 |
+
if(!!opts.solo) {
|
1043 |
+
(typeof opts.solo === 'string' ? $(opts.solo) : $(SELECTOR, opts.solo))
|
1044 |
+
.not(tooltip).not(opts.target).qtip('hide', $.Event('tooltipsolo'));
|
1045 |
+
}
|
1046 |
+
}
|
1047 |
+
else {
|
1048 |
+
// Clear show timer if we're hiding
|
1049 |
+
clearTimeout(this.timers.show);
|
1050 |
+
|
1051 |
+
// Remove cached origin on hide
|
1052 |
+
delete cache.origin;
|
1053 |
+
|
1054 |
+
// Remove mouse tracking event if not needed (all tracking qTips are hidden)
|
1055 |
+
if(trackingBound && !$(SELECTOR+'[tracking="true"]:visible', opts.solo).not(tooltip).length) {
|
1056 |
+
$(document).unbind('mousemove.'+NAMESPACE);
|
1057 |
+
trackingBound = FALSE;
|
1058 |
+
}
|
1059 |
+
|
1060 |
+
// Blur the tooltip
|
1061 |
+
this.blur(event);
|
1062 |
+
}
|
1063 |
+
|
1064 |
+
// Define post-animation, state specific properties
|
1065 |
+
after = $.proxy(function() {
|
1066 |
+
if(state) {
|
1067 |
+
// Prevent antialias from disappearing in IE by removing filter
|
1068 |
+
if(BROWSER.ie) { tooltip[0].style.removeAttribute('filter'); }
|
1069 |
+
|
1070 |
+
// Remove overflow setting to prevent tip bugs
|
1071 |
+
tooltip.css('overflow', '');
|
1072 |
+
|
1073 |
+
// Autofocus elements if enabled
|
1074 |
+
if('string' === typeof opts.autofocus) {
|
1075 |
+
$(this.options.show.autofocus, tooltip).focus();
|
1076 |
+
}
|
1077 |
+
|
1078 |
+
// If set, hide tooltip when inactive for delay period
|
1079 |
+
this.options.show.target.trigger('qtip-'+this.id+'-inactive');
|
1080 |
+
}
|
1081 |
+
else {
|
1082 |
+
// Reset CSS states
|
1083 |
+
tooltip.css({
|
1084 |
+
display: '',
|
1085 |
+
visibility: '',
|
1086 |
+
opacity: '',
|
1087 |
+
left: '',
|
1088 |
+
top: ''
|
1089 |
+
});
|
1090 |
+
}
|
1091 |
+
|
1092 |
+
// tooltipvisible/tooltiphidden events
|
1093 |
+
this._trigger(state ? 'visible' : 'hidden');
|
1094 |
+
}, this);
|
1095 |
+
|
1096 |
+
// If no effect type is supplied, use a simple toggle
|
1097 |
+
if(opts.effect === FALSE || animate === FALSE) {
|
1098 |
+
tooltip[ type ]();
|
1099 |
+
after();
|
1100 |
+
}
|
1101 |
+
|
1102 |
+
// Use custom function if provided
|
1103 |
+
else if($.isFunction(opts.effect)) {
|
1104 |
+
tooltip.stop(1, 1);
|
1105 |
+
opts.effect.call(tooltip, this);
|
1106 |
+
tooltip.queue('fx', function(n) {
|
1107 |
+
after(); n();
|
1108 |
+
});
|
1109 |
+
}
|
1110 |
+
|
1111 |
+
// Use basic fade function by default
|
1112 |
+
else { tooltip.fadeTo(90, state ? 1 : 0, after); }
|
1113 |
+
|
1114 |
+
// If inactive hide method is set, active it
|
1115 |
+
if(state) { opts.target.trigger('qtip-'+this.id+'-inactive'); }
|
1116 |
+
|
1117 |
+
return this;
|
1118 |
+
};
|
1119 |
+
|
1120 |
+
PROTOTYPE.show = function(event) { return this.toggle(TRUE, event); };
|
1121 |
+
|
1122 |
+
PROTOTYPE.hide = function(event) { return this.toggle(FALSE, event); };
|
1123 |
+
|
1124 |
+
;PROTOTYPE.focus = function(event) {
|
1125 |
+
if(!this.rendered || this.destroyed) { return this; }
|
1126 |
+
|
1127 |
+
var qtips = $(SELECTOR),
|
1128 |
+
tooltip = this.tooltip,
|
1129 |
+
curIndex = parseInt(tooltip[0].style.zIndex, 10),
|
1130 |
+
newIndex = QTIP.zindex + qtips.length,
|
1131 |
+
focusedElem;
|
1132 |
+
|
1133 |
+
// Only update the z-index if it has changed and tooltip is not already focused
|
1134 |
+
if(!tooltip.hasClass(CLASS_FOCUS)) {
|
1135 |
+
// tooltipfocus event
|
1136 |
+
if(this._trigger('focus', [newIndex], event)) {
|
1137 |
+
// Only update z-index's if they've changed
|
1138 |
+
if(curIndex !== newIndex) {
|
1139 |
+
// Reduce our z-index's and keep them properly ordered
|
1140 |
+
qtips.each(function() {
|
1141 |
+
if(this.style.zIndex > curIndex) {
|
1142 |
+
this.style.zIndex = this.style.zIndex - 1;
|
1143 |
+
}
|
1144 |
+
});
|
1145 |
+
|
1146 |
+
// Fire blur event for focused tooltip
|
1147 |
+
qtips.filter('.' + CLASS_FOCUS).qtip('blur', event);
|
1148 |
+
}
|
1149 |
+
|
1150 |
+
// Set the new z-index
|
1151 |
+
tooltip.addClass(CLASS_FOCUS)[0].style.zIndex = newIndex;
|
1152 |
+
}
|
1153 |
+
}
|
1154 |
+
|
1155 |
+
return this;
|
1156 |
+
};
|
1157 |
+
|
1158 |
+
PROTOTYPE.blur = function(event) {
|
1159 |
+
if(!this.rendered || this.destroyed) { return this; }
|
1160 |
+
|
1161 |
+
// Set focused status to FALSE
|
1162 |
+
this.tooltip.removeClass(CLASS_FOCUS);
|
1163 |
+
|
1164 |
+
// tooltipblur event
|
1165 |
+
this._trigger('blur', [ this.tooltip.css('zIndex') ], event);
|
1166 |
+
|
1167 |
+
return this;
|
1168 |
+
};
|
1169 |
+
|
1170 |
+
;PROTOTYPE.disable = function(state) {
|
1171 |
+
if(this.destroyed) { return this; }
|
1172 |
+
|
1173 |
+
// If 'toggle' is passed, toggle the current state
|
1174 |
+
if(state === 'toggle') {
|
1175 |
+
state = !(this.rendered ? this.tooltip.hasClass(CLASS_DISABLED) : this.disabled);
|
1176 |
+
}
|
1177 |
+
|
1178 |
+
// Disable if no state passed
|
1179 |
+
else if('boolean' !== typeof state) {
|
1180 |
+
state = TRUE;
|
1181 |
+
}
|
1182 |
+
|
1183 |
+
if(this.rendered) {
|
1184 |
+
this.tooltip.toggleClass(CLASS_DISABLED, state)
|
1185 |
+
.attr('aria-disabled', state);
|
1186 |
+
}
|
1187 |
+
|
1188 |
+
this.disabled = !!state;
|
1189 |
+
|
1190 |
+
return this;
|
1191 |
+
};
|
1192 |
+
|
1193 |
+
PROTOTYPE.enable = function() { return this.disable(FALSE); };
|
1194 |
+
|
1195 |
+
;PROTOTYPE._createButton = function()
|
1196 |
+
{
|
1197 |
+
var self = this,
|
1198 |
+
elements = this.elements,
|
1199 |
+
tooltip = elements.tooltip,
|
1200 |
+
button = this.options.content.button,
|
1201 |
+
isString = typeof button === 'string',
|
1202 |
+
close = isString ? button : 'Close tooltip';
|
1203 |
+
|
1204 |
+
if(elements.button) { elements.button.remove(); }
|
1205 |
+
|
1206 |
+
// Use custom button if one was supplied by user, else use default
|
1207 |
+
if(button.jquery) {
|
1208 |
+
elements.button = button;
|
1209 |
+
}
|
1210 |
+
else {
|
1211 |
+
elements.button = $('<a />', {
|
1212 |
+
'class': 'qtip-close ' + (this.options.style.widget ? '' : NAMESPACE+'-icon'),
|
1213 |
+
'title': close,
|
1214 |
+
'aria-label': close
|
1215 |
+
})
|
1216 |
+
.prepend(
|
1217 |
+
$('<span />', {
|
1218 |
+
'class': 'ui-icon ui-icon-close',
|
1219 |
+
'html': '×'
|
1220 |
+
})
|
1221 |
+
);
|
1222 |
+
}
|
1223 |
+
|
1224 |
+
// Create button and setup attributes
|
1225 |
+
elements.button.appendTo(elements.titlebar || tooltip)
|
1226 |
+
.attr('role', 'button')
|
1227 |
+
.click(function(event) {
|
1228 |
+
if(!tooltip.hasClass(CLASS_DISABLED)) { self.hide(event); }
|
1229 |
+
return FALSE;
|
1230 |
+
});
|
1231 |
+
};
|
1232 |
+
|
1233 |
+
PROTOTYPE._updateButton = function(button)
|
1234 |
+
{
|
1235 |
+
// Make sure tooltip is rendered and if not, return
|
1236 |
+
if(!this.rendered) { return FALSE; }
|
1237 |
+
|
1238 |
+
var elem = this.elements.button;
|
1239 |
+
if(button) { this._createButton(); }
|
1240 |
+
else { elem.remove(); }
|
1241 |
+
};
|
1242 |
+
|
1243 |
+
;// Widget class creator
|
1244 |
+
function createWidgetClass(cls) {
|
1245 |
+
return WIDGET.concat('').join(cls ? '-'+cls+' ' : ' ');
|
1246 |
+
}
|
1247 |
+
|
1248 |
+
// Widget class setter method
|
1249 |
+
PROTOTYPE._setWidget = function()
|
1250 |
+
{
|
1251 |
+
var on = this.options.style.widget,
|
1252 |
+
elements = this.elements,
|
1253 |
+
tooltip = elements.tooltip,
|
1254 |
+
disabled = tooltip.hasClass(CLASS_DISABLED);
|
1255 |
+
|
1256 |
+
tooltip.removeClass(CLASS_DISABLED);
|
1257 |
+
CLASS_DISABLED = on ? 'ui-state-disabled' : 'qtip-disabled';
|
1258 |
+
tooltip.toggleClass(CLASS_DISABLED, disabled);
|
1259 |
+
|
1260 |
+
tooltip.toggleClass('ui-helper-reset '+createWidgetClass(), on).toggleClass(CLASS_DEFAULT, this.options.style.def && !on);
|
1261 |
+
|
1262 |
+
if(elements.content) {
|
1263 |
+
elements.content.toggleClass( createWidgetClass('content'), on);
|
1264 |
+
}
|
1265 |
+
if(elements.titlebar) {
|
1266 |
+
elements.titlebar.toggleClass( createWidgetClass('header'), on);
|
1267 |
+
}
|
1268 |
+
if(elements.button) {
|
1269 |
+
elements.button.toggleClass(NAMESPACE+'-icon', !on);
|
1270 |
+
}
|
1271 |
+
};;function cloneEvent(event) {
|
1272 |
+
return event && {
|
1273 |
+
type: event.type,
|
1274 |
+
pageX: event.pageX,
|
1275 |
+
pageY: event.pageY,
|
1276 |
+
target: event.target,
|
1277 |
+
relatedTarget: event.relatedTarget,
|
1278 |
+
scrollX: event.scrollX || window.pageXOffset || document.body.scrollLeft || document.documentElement.scrollLeft,
|
1279 |
+
scrollY: event.scrollY || window.pageYOffset || document.body.scrollTop || document.documentElement.scrollTop
|
1280 |
+
} || {};
|
1281 |
+
}
|
1282 |
+
|
1283 |
+
function delay(callback, duration) {
|
1284 |
+
// If tooltip has displayed, start hide timer
|
1285 |
+
if(duration > 0) {
|
1286 |
+
return setTimeout(
|
1287 |
+
$.proxy(callback, this), duration
|
1288 |
+
);
|
1289 |
+
}
|
1290 |
+
else{ callback.call(this); }
|
1291 |
+
}
|
1292 |
+
|
1293 |
+
function showMethod(event) {
|
1294 |
+
if(this.tooltip.hasClass(CLASS_DISABLED)) { return FALSE; }
|
1295 |
+
|
1296 |
+
// Clear hide timers
|
1297 |
+
clearTimeout(this.timers.show);
|
1298 |
+
clearTimeout(this.timers.hide);
|
1299 |
+
|
1300 |
+
// Start show timer
|
1301 |
+
this.timers.show = delay.call(this,
|
1302 |
+
function() { this.toggle(TRUE, event); },
|
1303 |
+
this.options.show.delay
|
1304 |
+
);
|
1305 |
+
}
|
1306 |
+
|
1307 |
+
function hideMethod(event) {
|
1308 |
+
if(this.tooltip.hasClass(CLASS_DISABLED)) { return FALSE; }
|
1309 |
+
|
1310 |
+
// Check if new target was actually the tooltip element
|
1311 |
+
var relatedTarget = $(event.relatedTarget),
|
1312 |
+
ontoTooltip = relatedTarget.closest(SELECTOR)[0] === this.tooltip[0],
|
1313 |
+
ontoTarget = relatedTarget[0] === this.options.show.target[0];
|
1314 |
+
|
1315 |
+
// Clear timers and stop animation queue
|
1316 |
+
clearTimeout(this.timers.show);
|
1317 |
+
clearTimeout(this.timers.hide);
|
1318 |
+
|
1319 |
+
// Prevent hiding if tooltip is fixed and event target is the tooltip.
|
1320 |
+
// Or if mouse positioning is enabled and cursor momentarily overlaps
|
1321 |
+
if(this !== relatedTarget[0] &&
|
1322 |
+
(this.options.position.target === 'mouse' && ontoTooltip) ||
|
1323 |
+
(this.options.hide.fixed && (
|
1324 |
+
(/mouse(out|leave|move)/).test(event.type) && (ontoTooltip || ontoTarget))
|
1325 |
+
))
|
1326 |
+
{
|
1327 |
+
try {
|
1328 |
+
event.preventDefault();
|
1329 |
+
event.stopImmediatePropagation();
|
1330 |
+
} catch(e) {}
|
1331 |
+
|
1332 |
+
return;
|
1333 |
+
}
|
1334 |
+
|
1335 |
+
// If tooltip has displayed, start hide timer
|
1336 |
+
this.timers.hide = delay.call(this,
|
1337 |
+
function() { this.toggle(FALSE, event); },
|
1338 |
+
this.options.hide.delay,
|
1339 |
+
this
|
1340 |
+
);
|
1341 |
+
}
|
1342 |
+
|
1343 |
+
function inactiveMethod(event) {
|
1344 |
+
if(this.tooltip.hasClass(CLASS_DISABLED) || !this.options.hide.inactive) { return FALSE; }
|
1345 |
+
|
1346 |
+
// Clear timer
|
1347 |
+
clearTimeout(this.timers.inactive);
|
1348 |
+
|
1349 |
+
this.timers.inactive = delay.call(this,
|
1350 |
+
function(){ this.hide(event); },
|
1351 |
+
this.options.hide.inactive
|
1352 |
+
);
|
1353 |
+
}
|
1354 |
+
|
1355 |
+
function repositionMethod(event) {
|
1356 |
+
if(this.rendered && this.tooltip[0].offsetWidth > 0) { this.reposition(event); }
|
1357 |
+
}
|
1358 |
+
|
1359 |
+
// Store mouse coordinates
|
1360 |
+
PROTOTYPE._storeMouse = function(event) {
|
1361 |
+
(this.mouse = cloneEvent(event)).type = 'mousemove';
|
1362 |
+
};
|
1363 |
+
|
1364 |
+
// Bind events
|
1365 |
+
PROTOTYPE._bind = function(targets, events, method, suffix, context) {
|
1366 |
+
var ns = '.' + this._id + (suffix ? '-'+suffix : '');
|
1367 |
+
events.length && $(targets).bind(
|
1368 |
+
(events.split ? events : events.join(ns + ' ')) + ns,
|
1369 |
+
$.proxy(method, context || this)
|
1370 |
+
);
|
1371 |
+
};
|
1372 |
+
PROTOTYPE._unbind = function(targets, suffix) {
|
1373 |
+
$(targets).unbind('.' + this._id + (suffix ? '-'+suffix : ''));
|
1374 |
+
};
|
1375 |
+
|
1376 |
+
// Apply common event handlers using delegate (avoids excessive .bind calls!)
|
1377 |
+
var ns = '.'+NAMESPACE;
|
1378 |
+
function delegate(selector, events, method) {
|
1379 |
+
$(document.body).delegate(selector,
|
1380 |
+
(events.split ? events : events.join(ns + ' ')) + ns,
|
1381 |
+
function() {
|
1382 |
+
var api = QTIP.api[ $.attr(this, ATTR_ID) ];
|
1383 |
+
api && !api.disabled && method.apply(api, arguments);
|
1384 |
+
}
|
1385 |
+
);
|
1386 |
+
}
|
1387 |
+
|
1388 |
+
$(function() {
|
1389 |
+
delegate(SELECTOR, ['mouseenter', 'mouseleave'], function(event) {
|
1390 |
+
var state = event.type === 'mouseenter',
|
1391 |
+
tooltip = $(event.currentTarget),
|
1392 |
+
target = $(event.relatedTarget || event.target),
|
1393 |
+
options = this.options;
|
1394 |
+
|
1395 |
+
// On mouseenter...
|
1396 |
+
if(state) {
|
1397 |
+
// Focus the tooltip on mouseenter (z-index stacking)
|
1398 |
+
this.focus(event);
|
1399 |
+
|
1400 |
+
// Clear hide timer on tooltip hover to prevent it from closing
|
1401 |
+
tooltip.hasClass(CLASS_FIXED) && !tooltip.hasClass(CLASS_DISABLED) && clearTimeout(this.timers.hide);
|
1402 |
+
}
|
1403 |
+
|
1404 |
+
// On mouseleave...
|
1405 |
+
else {
|
1406 |
+
// Hide when we leave the tooltip and not onto the show target (if a hide event is set)
|
1407 |
+
if(options.position.target === 'mouse' && options.hide.event &&
|
1408 |
+
options.show.target && !target.closest(options.show.target[0]).length) {
|
1409 |
+
this.hide(event);
|
1410 |
+
}
|
1411 |
+
}
|
1412 |
+
|
1413 |
+
// Add hover class
|
1414 |
+
tooltip.toggleClass(CLASS_HOVER, state);
|
1415 |
+
});
|
1416 |
+
|
1417 |
+
// Define events which reset the 'inactive' event handler
|
1418 |
+
delegate('['+ATTR_ID+']', INACTIVE_EVENTS, inactiveMethod);
|
1419 |
+
});
|
1420 |
+
|
1421 |
+
// Event trigger
|
1422 |
+
PROTOTYPE._trigger = function(type, args, event) {
|
1423 |
+
var callback = $.Event('tooltip'+type);
|
1424 |
+
callback.originalEvent = (event && $.extend({}, event)) || this.cache.event || NULL;
|
1425 |
+
|
1426 |
+
this.triggering = type;
|
1427 |
+
this.tooltip.trigger(callback, [this].concat(args || []));
|
1428 |
+
this.triggering = FALSE;
|
1429 |
+
|
1430 |
+
return !callback.isDefaultPrevented();
|
1431 |
+
};
|
1432 |
+
|
1433 |
+
PROTOTYPE._bindEvents = function(showEvents, hideEvents, showTarget, hideTarget, showMethod, hideMethod) {
|
1434 |
+
// If hide and show targets are the same...
|
1435 |
+
if(hideTarget.add(showTarget).length === hideTarget.length) {
|
1436 |
+
var toggleEvents = [];
|
1437 |
+
|
1438 |
+
// Filter identical show/hide events
|
1439 |
+
hideEvents = $.map(hideEvents, function(type) {
|
1440 |
+
var showIndex = $.inArray(type, showEvents);
|
1441 |
+
|
1442 |
+
// Both events are identical, remove from both hide and show events
|
1443 |
+
// and append to toggleEvents
|
1444 |
+
if(showIndex > -1) {
|
1445 |
+
toggleEvents.push( showEvents.splice( showIndex, 1 )[0] );
|
1446 |
+
return;
|
1447 |
+
}
|
1448 |
+
|
1449 |
+
return type;
|
1450 |
+
});
|
1451 |
+
|
1452 |
+
// Toggle events are special case of identical show/hide events, which happen in sequence
|
1453 |
+
toggleEvents.length && this._bind(showTarget, toggleEvents, function(event) {
|
1454 |
+
var state = this.rendered ? this.tooltip[0].offsetWidth > 0 : false;
|
1455 |
+
(state ? hideMethod : showMethod).call(this, event);
|
1456 |
+
});
|
1457 |
+
}
|
1458 |
+
|
1459 |
+
// Apply show/hide/toggle events
|
1460 |
+
this._bind(showTarget, showEvents, showMethod);
|
1461 |
+
this._bind(hideTarget, hideEvents, hideMethod);
|
1462 |
+
};
|
1463 |
+
|
1464 |
+
PROTOTYPE._assignInitialEvents = function(event) {
|
1465 |
+
var options = this.options,
|
1466 |
+
showTarget = options.show.target,
|
1467 |
+
hideTarget = options.hide.target,
|
1468 |
+
showEvents = options.show.event ? $.trim('' + options.show.event).split(' ') : [],
|
1469 |
+
hideEvents = options.hide.event ? $.trim('' + options.hide.event).split(' ') : [];
|
1470 |
+
|
1471 |
+
/*
|
1472 |
+
* Make sure hoverIntent functions properly by using mouseleave as a hide event if
|
1473 |
+
* mouseenter/mouseout is used for show.event, even if it isn't in the users options.
|
1474 |
+
*/
|
1475 |
+
if(/mouse(over|enter)/i.test(options.show.event) && !/mouse(out|leave)/i.test(options.hide.event)) {
|
1476 |
+
hideEvents.push('mouseleave');
|
1477 |
+
}
|
1478 |
+
|
1479 |
+
/*
|
1480 |
+
* Also make sure initial mouse targetting works correctly by caching mousemove coords
|
1481 |
+
* on show targets before the tooltip has rendered. Also set onTarget when triggered to
|
1482 |
+
* keep mouse tracking working.
|
1483 |
+
*/
|
1484 |
+
this._bind(showTarget, 'mousemove', function(event) {
|
1485 |
+
this._storeMouse(event);
|
1486 |
+
this.cache.onTarget = TRUE;
|
1487 |
+
});
|
1488 |
+
|
1489 |
+
// Define hoverIntent function
|
1490 |
+
function hoverIntent(event) {
|
1491 |
+
// Only continue if tooltip isn't disabled
|
1492 |
+
if(this.disabled || this.destroyed) { return FALSE; }
|
1493 |
+
|
1494 |
+
// Cache the event data
|
1495 |
+
this.cache.event = cloneEvent(event);
|
1496 |
+
this.cache.target = event ? $(event.target) : [undefined];
|
1497 |
+
|
1498 |
+
// Start the event sequence
|
1499 |
+
clearTimeout(this.timers.show);
|
1500 |
+
this.timers.show = delay.call(this,
|
1501 |
+
function() { this.render(typeof event === 'object' || options.show.ready); },
|
1502 |
+
options.show.delay
|
1503 |
+
);
|
1504 |
+
}
|
1505 |
+
|
1506 |
+
// Filter and bind events
|
1507 |
+
this._bindEvents(showEvents, hideEvents, showTarget, hideTarget, hoverIntent, function() {
|
1508 |
+
clearTimeout(this.timers.show);
|
1509 |
+
});
|
1510 |
+
|
1511 |
+
// Prerendering is enabled, create tooltip now
|
1512 |
+
if(options.show.ready || options.prerender) { hoverIntent.call(this, event); }
|
1513 |
+
};
|
1514 |
+
|
1515 |
+
// Event assignment method
|
1516 |
+
PROTOTYPE._assignEvents = function() {
|
1517 |
+
var self = this,
|
1518 |
+
options = this.options,
|
1519 |
+
posOptions = options.position,
|
1520 |
+
|
1521 |
+
tooltip = this.tooltip,
|
1522 |
+
showTarget = options.show.target,
|
1523 |
+
hideTarget = options.hide.target,
|
1524 |
+
containerTarget = posOptions.container,
|
1525 |
+
viewportTarget = posOptions.viewport,
|
1526 |
+
documentTarget = $(document),
|
1527 |
+
bodyTarget = $(document.body),
|
1528 |
+
windowTarget = $(window),
|
1529 |
+
|
1530 |
+
showEvents = options.show.event ? $.trim('' + options.show.event).split(' ') : [],
|
1531 |
+
hideEvents = options.hide.event ? $.trim('' + options.hide.event).split(' ') : [];
|
1532 |
+
|
1533 |
+
|
1534 |
+
// Assign passed event callbacks
|
1535 |
+
$.each(options.events, function(name, callback) {
|
1536 |
+
self._bind(tooltip, name === 'toggle' ? ['tooltipshow','tooltiphide'] : ['tooltip'+name], callback, null, tooltip);
|
1537 |
+
});
|
1538 |
+
|
1539 |
+
// Hide tooltips when leaving current window/frame (but not select/option elements)
|
1540 |
+
if(/mouse(out|leave)/i.test(options.hide.event) && options.hide.leave === 'window') {
|
1541 |
+
this._bind(documentTarget, ['mouseout', 'blur'], function(event) {
|
1542 |
+
if(!/select|option/.test(event.target.nodeName) && !event.relatedTarget) {
|
1543 |
+
this.hide(event);
|
1544 |
+
}
|
1545 |
+
});
|
1546 |
+
}
|
1547 |
+
|
1548 |
+
// Enable hide.fixed by adding appropriate class
|
1549 |
+
if(options.hide.fixed) {
|
1550 |
+
hideTarget = hideTarget.add( tooltip.addClass(CLASS_FIXED) );
|
1551 |
+
}
|
1552 |
+
|
1553 |
+
/*
|
1554 |
+
* Make sure hoverIntent functions properly by using mouseleave to clear show timer if
|
1555 |
+
* mouseenter/mouseout is used for show.event, even if it isn't in the users options.
|
1556 |
+
*/
|
1557 |
+
else if(/mouse(over|enter)/i.test(options.show.event)) {
|
1558 |
+
this._bind(hideTarget, 'mouseleave', function() {
|
1559 |
+
clearTimeout(this.timers.show);
|
1560 |
+
});
|
1561 |
+
}
|
1562 |
+
|
1563 |
+
// Hide tooltip on document mousedown if unfocus events are enabled
|
1564 |
+
if(('' + options.hide.event).indexOf('unfocus') > -1) {
|
1565 |
+
this._bind(containerTarget.closest('html'), ['mousedown', 'touchstart'], function(event) {
|
1566 |
+
var elem = $(event.target),
|
1567 |
+
enabled = this.rendered && !this.tooltip.hasClass(CLASS_DISABLED) && this.tooltip[0].offsetWidth > 0,
|
1568 |
+
isAncestor = elem.parents(SELECTOR).filter(this.tooltip[0]).length > 0;
|
1569 |
+
|
1570 |
+
if(elem[0] !== this.target[0] && elem[0] !== this.tooltip[0] && !isAncestor &&
|
1571 |
+
!this.target.has(elem[0]).length && enabled
|
1572 |
+
) {
|
1573 |
+
this.hide(event);
|
1574 |
+
}
|
1575 |
+
});
|
1576 |
+
}
|
1577 |
+
|
1578 |
+
// Check if the tooltip hides when inactive
|
1579 |
+
if('number' === typeof options.hide.inactive) {
|
1580 |
+
// Bind inactive method to show target(s) as a custom event
|
1581 |
+
this._bind(showTarget, 'qtip-'+this.id+'-inactive', inactiveMethod);
|
1582 |
+
|
1583 |
+
// Define events which reset the 'inactive' event handler
|
1584 |
+
this._bind(hideTarget.add(tooltip), QTIP.inactiveEvents, inactiveMethod, '-inactive');
|
1585 |
+
}
|
1586 |
+
|
1587 |
+
// Filter and bind events
|
1588 |
+
this._bindEvents(showEvents, hideEvents, showTarget, hideTarget, showMethod, hideMethod);
|
1589 |
+
|
1590 |
+
// Mouse movement bindings
|
1591 |
+
this._bind(showTarget.add(tooltip), 'mousemove', function(event) {
|
1592 |
+
// Check if the tooltip hides when mouse is moved a certain distance
|
1593 |
+
if('number' === typeof options.hide.distance) {
|
1594 |
+
var origin = this.cache.origin || {},
|
1595 |
+
limit = this.options.hide.distance,
|
1596 |
+
abs = Math.abs;
|
1597 |
+
|
1598 |
+
// Check if the movement has gone beyond the limit, and hide it if so
|
1599 |
+
if(abs(event.pageX - origin.pageX) >= limit || abs(event.pageY - origin.pageY) >= limit) {
|
1600 |
+
this.hide(event);
|
1601 |
+
}
|
1602 |
+
}
|
1603 |
+
|
1604 |
+
// Cache mousemove coords on show targets
|
1605 |
+
this._storeMouse(event);
|
1606 |
+
});
|
1607 |
+
|
1608 |
+
// Mouse positioning events
|
1609 |
+
if(posOptions.target === 'mouse') {
|
1610 |
+
// If mouse adjustment is on...
|
1611 |
+
if(posOptions.adjust.mouse) {
|
1612 |
+
// Apply a mouseleave event so we don't get problems with overlapping
|
1613 |
+
if(options.hide.event) {
|
1614 |
+
// Track if we're on the target or not
|
1615 |
+
this._bind(showTarget, ['mouseenter', 'mouseleave'], function(event) {
|
1616 |
+
this.cache.onTarget = event.type === 'mouseenter';
|
1617 |
+
});
|
1618 |
+
}
|
1619 |
+
|
1620 |
+
// Update tooltip position on mousemove
|
1621 |
+
this._bind(documentTarget, 'mousemove', function(event) {
|
1622 |
+
// Update the tooltip position only if the tooltip is visible and adjustment is enabled
|
1623 |
+
if(this.rendered && this.cache.onTarget && !this.tooltip.hasClass(CLASS_DISABLED) && this.tooltip[0].offsetWidth > 0) {
|
1624 |
+
this.reposition(event);
|
1625 |
+
}
|
1626 |
+
});
|
1627 |
+
}
|
1628 |
+
}
|
1629 |
+
|
1630 |
+
// Adjust positions of the tooltip on window resize if enabled
|
1631 |
+
if(posOptions.adjust.resize || viewportTarget.length) {
|
1632 |
+
this._bind( $.event.special.resize ? viewportTarget : windowTarget, 'resize', repositionMethod );
|
1633 |
+
}
|
1634 |
+
|
1635 |
+
// Adjust tooltip position on scroll of the window or viewport element if present
|
1636 |
+
if(posOptions.adjust.scroll) {
|
1637 |
+
this._bind( windowTarget.add(posOptions.container), 'scroll', repositionMethod );
|
1638 |
+
}
|
1639 |
+
};
|
1640 |
+
|
1641 |
+
// Un-assignment method
|
1642 |
+
PROTOTYPE._unassignEvents = function() {
|
1643 |
+
var targets = [
|
1644 |
+
this.options.show.target[0],
|
1645 |
+
this.options.hide.target[0],
|
1646 |
+
this.rendered && this.tooltip[0],
|
1647 |
+
this.options.position.container[0],
|
1648 |
+
this.options.position.viewport[0],
|
1649 |
+
this.options.position.container.closest('html')[0], // unfocus
|
1650 |
+
window,
|
1651 |
+
document
|
1652 |
+
];
|
1653 |
+
|
1654 |
+
this._unbind($([]).pushStack( $.grep(targets, function(i) {
|
1655 |
+
return typeof i === 'object';
|
1656 |
+
})));
|
1657 |
+
};
|
1658 |
+
|
1659 |
+
;// Initialization method
|
1660 |
+
function init(elem, id, opts) {
|
1661 |
+
var obj, posOptions, attr, config, title,
|
1662 |
+
|
1663 |
+
// Setup element references
|
1664 |
+
docBody = $(document.body),
|
1665 |
+
|
1666 |
+
// Use document body instead of document element if needed
|
1667 |
+
newTarget = elem[0] === document ? docBody : elem,
|
1668 |
+
|
1669 |
+
// Grab metadata from element if plugin is present
|
1670 |
+
metadata = (elem.metadata) ? elem.metadata(opts.metadata) : NULL,
|
1671 |
+
|
1672 |
+
// If metadata type if HTML5, grab 'name' from the object instead, or use the regular data object otherwise
|
1673 |
+
metadata5 = opts.metadata.type === 'html5' && metadata ? metadata[opts.metadata.name] : NULL,
|
1674 |
+
|
1675 |
+
// Grab data from metadata.name (or data-qtipopts as fallback) using .data() method,
|
1676 |
+
html5 = elem.data(opts.metadata.name || 'qtipopts');
|
1677 |
+
|
1678 |
+
// If we don't get an object returned attempt to parse it manualyl without parseJSON
|
1679 |
+
try { html5 = typeof html5 === 'string' ? $.parseJSON(html5) : html5; } catch(e) {}
|
1680 |
+
|
1681 |
+
// Merge in and sanitize metadata
|
1682 |
+
config = $.extend(TRUE, {}, QTIP.defaults, opts,
|
1683 |
+
typeof html5 === 'object' ? sanitizeOptions(html5) : NULL,
|
1684 |
+
sanitizeOptions(metadata5 || metadata));
|
1685 |
+
|
1686 |
+
// Re-grab our positioning options now we've merged our metadata and set id to passed value
|
1687 |
+
posOptions = config.position;
|
1688 |
+
config.id = id;
|
1689 |
+
|
1690 |
+
// Setup missing content if none is detected
|
1691 |
+
if('boolean' === typeof config.content.text) {
|
1692 |
+
attr = elem.attr(config.content.attr);
|
1693 |
+
|
1694 |
+
// Grab from supplied attribute if available
|
1695 |
+
if(config.content.attr !== FALSE && attr) { config.content.text = attr; }
|
1696 |
+
|
1697 |
+
// No valid content was found, abort render
|
1698 |
+
else { return FALSE; }
|
1699 |
+
}
|
1700 |
+
|
1701 |
+
// Setup target options
|
1702 |
+
if(!posOptions.container.length) { posOptions.container = docBody; }
|
1703 |
+
if(posOptions.target === FALSE) { posOptions.target = newTarget; }
|
1704 |
+
if(config.show.target === FALSE) { config.show.target = newTarget; }
|
1705 |
+
if(config.show.solo === TRUE) { config.show.solo = posOptions.container.closest('body'); }
|
1706 |
+
if(config.hide.target === FALSE) { config.hide.target = newTarget; }
|
1707 |
+
if(config.position.viewport === TRUE) { config.position.viewport = posOptions.container; }
|
1708 |
+
|
1709 |
+
// Ensure we only use a single container
|
1710 |
+
posOptions.container = posOptions.container.eq(0);
|
1711 |
+
|
1712 |
+
// Convert position corner values into x and y strings
|
1713 |
+
posOptions.at = new CORNER(posOptions.at, TRUE);
|
1714 |
+
posOptions.my = new CORNER(posOptions.my);
|
1715 |
+
|
1716 |
+
// Destroy previous tooltip if overwrite is enabled, or skip element if not
|
1717 |
+
if(elem.data(NAMESPACE)) {
|
1718 |
+
if(config.overwrite) {
|
1719 |
+
elem.qtip('destroy', true);
|
1720 |
+
}
|
1721 |
+
else if(config.overwrite === FALSE) {
|
1722 |
+
return FALSE;
|
1723 |
+
}
|
1724 |
+
}
|
1725 |
+
|
1726 |
+
// Add has-qtip attribute
|
1727 |
+
elem.attr(ATTR_HAS, id);
|
1728 |
+
|
1729 |
+
// Remove title attribute and store it if present
|
1730 |
+
if(config.suppress && (title = elem.attr('title'))) {
|
1731 |
+
// Final attr call fixes event delegatiom and IE default tooltip showing problem
|
1732 |
+
elem.removeAttr('title').attr(oldtitle, title).attr('title', '');
|
1733 |
+
}
|
1734 |
+
|
1735 |
+
// Initialize the tooltip and add API reference
|
1736 |
+
obj = new QTip(elem, config, id, !!attr);
|
1737 |
+
elem.data(NAMESPACE, obj);
|
1738 |
+
|
1739 |
+
// Catch remove/removeqtip events on target element to destroy redundant tooltip
|
1740 |
+
elem.one('remove.qtip-'+id+' removeqtip.qtip-'+id, function() {
|
1741 |
+
var api; if((api = $(this).data(NAMESPACE))) { api.destroy(true); }
|
1742 |
+
});
|
1743 |
+
|
1744 |
+
return obj;
|
1745 |
+
}
|
1746 |
+
|
1747 |
+
// jQuery $.fn extension method
|
1748 |
+
QTIP = $.fn.qtip = function(options, notation, newValue)
|
1749 |
+
{
|
1750 |
+
var command = ('' + options).toLowerCase(), // Parse command
|
1751 |
+
returned = NULL,
|
1752 |
+
args = $.makeArray(arguments).slice(1),
|
1753 |
+
event = args[args.length - 1],
|
1754 |
+
opts = this[0] ? $.data(this[0], NAMESPACE) : NULL;
|
1755 |
+
|
1756 |
+
// Check for API request
|
1757 |
+
if((!arguments.length && opts) || command === 'api') {
|
1758 |
+
return opts;
|
1759 |
+
}
|
1760 |
+
|
1761 |
+
// Execute API command if present
|
1762 |
+
else if('string' === typeof options) {
|
1763 |
+
this.each(function() {
|
1764 |
+
var api = $.data(this, NAMESPACE);
|
1765 |
+
if(!api) { return TRUE; }
|
1766 |
+
|
1767 |
+
// Cache the event if possible
|
1768 |
+
if(event && event.timeStamp) { api.cache.event = event; }
|
1769 |
+
|
1770 |
+
// Check for specific API commands
|
1771 |
+
if(notation && (command === 'option' || command === 'options')) {
|
1772 |
+
if(newValue !== undefined || $.isPlainObject(notation)) {
|
1773 |
+
api.set(notation, newValue);
|
1774 |
+
}
|
1775 |
+
else {
|
1776 |
+
returned = api.get(notation);
|
1777 |
+
return FALSE;
|
1778 |
+
}
|
1779 |
+
}
|
1780 |
+
|
1781 |
+
// Execute API command
|
1782 |
+
else if(api[command]) {
|
1783 |
+
api[command].apply(api, args);
|
1784 |
+
}
|
1785 |
+
});
|
1786 |
+
|
1787 |
+
return returned !== NULL ? returned : this;
|
1788 |
+
}
|
1789 |
+
|
1790 |
+
// No API commands. validate provided options and setup qTips
|
1791 |
+
else if('object' === typeof options || !arguments.length) {
|
1792 |
+
// Sanitize options first
|
1793 |
+
opts = sanitizeOptions($.extend(TRUE, {}, options));
|
1794 |
+
|
1795 |
+
return this.each(function(i) {
|
1796 |
+
var api, id;
|
1797 |
+
|
1798 |
+
// Find next available ID, or use custom ID if provided
|
1799 |
+
id = $.isArray(opts.id) ? opts.id[i] : opts.id;
|
1800 |
+
id = !id || id === FALSE || id.length < 1 || QTIP.api[id] ? QTIP.nextid++ : id;
|
1801 |
+
|
1802 |
+
// Initialize the qTip and re-grab newly sanitized options
|
1803 |
+
api = init($(this), id, opts);
|
1804 |
+
if(api === FALSE) { return TRUE; }
|
1805 |
+
else { QTIP.api[id] = api; }
|
1806 |
+
|
1807 |
+
// Initialize plugins
|
1808 |
+
$.each(PLUGINS, function() {
|
1809 |
+
if(this.initialize === 'initialize') { this(api); }
|
1810 |
+
});
|
1811 |
+
|
1812 |
+
// Assign initial pre-render events
|
1813 |
+
api._assignInitialEvents(event);
|
1814 |
+
});
|
1815 |
+
}
|
1816 |
+
};
|
1817 |
+
|
1818 |
+
// Expose class
|
1819 |
+
$.qtip = QTip;
|
1820 |
+
|
1821 |
+
// Populated in render method
|
1822 |
+
QTIP.api = {};
|
1823 |
+
;$.each({
|
1824 |
+
/* Allow other plugins to successfully retrieve the title of an element with a qTip applied */
|
1825 |
+
attr: function(attr, val) {
|
1826 |
+
if(this.length) {
|
1827 |
+
var self = this[0],
|
1828 |
+
title = 'title',
|
1829 |
+
api = $.data(self, 'qtip');
|
1830 |
+
|
1831 |
+
if(attr === title && api && 'object' === typeof api && api.options.suppress) {
|
1832 |
+
if(arguments.length < 2) {
|
1833 |
+
return $.attr(self, oldtitle);
|
1834 |
+
}
|
1835 |
+
|
1836 |
+
// If qTip is rendered and title was originally used as content, update it
|
1837 |
+
if(api && api.options.content.attr === title && api.cache.attr) {
|
1838 |
+
api.set('content.text', val);
|
1839 |
+
}
|
1840 |
+
|
1841 |
+
// Use the regular attr method to set, then cache the result
|
1842 |
+
return this.attr(oldtitle, val);
|
1843 |
+
}
|
1844 |
+
}
|
1845 |
+
|
1846 |
+
return $.fn['attr'+replaceSuffix].apply(this, arguments);
|
1847 |
+
},
|
1848 |
+
|
1849 |
+
/* Allow clone to correctly retrieve cached title attributes */
|
1850 |
+
clone: function(keepData) {
|
1851 |
+
var titles = $([]), title = 'title',
|
1852 |
+
|
1853 |
+
// Clone our element using the real clone method
|
1854 |
+
elems = $.fn['clone'+replaceSuffix].apply(this, arguments);
|
1855 |
+
|
1856 |
+
// Grab all elements with an oldtitle set, and change it to regular title attribute, if keepData is false
|
1857 |
+
if(!keepData) {
|
1858 |
+
elems.filter('['+oldtitle+']').attr('title', function() {
|
1859 |
+
return $.attr(this, oldtitle);
|
1860 |
+
})
|
1861 |
+
.removeAttr(oldtitle);
|
1862 |
+
}
|
1863 |
+
|
1864 |
+
return elems;
|
1865 |
+
}
|
1866 |
+
}, function(name, func) {
|
1867 |
+
if(!func || $.fn[name+replaceSuffix]) { return TRUE; }
|
1868 |
+
|
1869 |
+
var old = $.fn[name+replaceSuffix] = $.fn[name];
|
1870 |
+
$.fn[name] = function() {
|
1871 |
+
return func.apply(this, arguments) || old.apply(this, arguments);
|
1872 |
+
};
|
1873 |
+
});
|
1874 |
+
|
1875 |
+
/* Fire off 'removeqtip' handler in $.cleanData if jQuery UI not present (it already does similar).
|
1876 |
+
* This snippet is taken directly from jQuery UI source code found here:
|
1877 |
+
* http://code.jquery.com/ui/jquery-ui-git.js
|
1878 |
+
*/
|
1879 |
+
if(!$.ui) {
|
1880 |
+
$['cleanData'+replaceSuffix] = $.cleanData;
|
1881 |
+
$.cleanData = function( elems ) {
|
1882 |
+
for(var i = 0, elem; (elem = $( elems[i] )).length; i++) {
|
1883 |
+
if(elem.attr(ATTR_HAS)) {
|
1884 |
+
try { elem.triggerHandler('removeqtip'); }
|
1885 |
+
catch( e ) {}
|
1886 |
+
}
|
1887 |
+
}
|
1888 |
+
$['cleanData'+replaceSuffix].apply(this, arguments);
|
1889 |
+
};
|
1890 |
+
}
|
1891 |
+
|
1892 |
+
;// qTip version
|
1893 |
+
QTIP.version = '2.2.0';
|
1894 |
+
|
1895 |
+
// Base ID for all qTips
|
1896 |
+
QTIP.nextid = 0;
|
1897 |
+
|
1898 |
+
// Inactive events array
|
1899 |
+
QTIP.inactiveEvents = INACTIVE_EVENTS;
|
1900 |
+
|
1901 |
+
// Base z-index for all qTips
|
1902 |
+
QTIP.zindex = 15000;
|
1903 |
+
|
1904 |
+
// Define configuration defaults
|
1905 |
+
QTIP.defaults = {
|
1906 |
+
prerender: FALSE,
|
1907 |
+
id: FALSE,
|
1908 |
+
overwrite: TRUE,
|
1909 |
+
suppress: TRUE,
|
1910 |
+
content: {
|
1911 |
+
text: TRUE,
|
1912 |
+
attr: 'title',
|
1913 |
+
title: FALSE,
|
1914 |
+
button: FALSE
|
1915 |
+
},
|
1916 |
+
position: {
|
1917 |
+
my: 'top left',
|
1918 |
+
at: 'bottom right',
|
1919 |
+
target: FALSE,
|
1920 |
+
container: FALSE,
|
1921 |
+
viewport: FALSE,
|
1922 |
+
adjust: {
|
1923 |
+
x: 0, y: 0,
|
1924 |
+
mouse: TRUE,
|
1925 |
+
scroll: TRUE,
|
1926 |
+
resize: TRUE,
|
1927 |
+
method: 'flipinvert flipinvert'
|
1928 |
+
},
|
1929 |
+
effect: function(api, pos, viewport) {
|
1930 |
+
$(this).animate(pos, {
|
1931 |
+
duration: 200,
|
1932 |
+
queue: FALSE
|
1933 |
+
});
|
1934 |
+
}
|
1935 |
+
},
|
1936 |
+
show: {
|
1937 |
+
target: FALSE,
|
1938 |
+
event: 'mouseenter',
|
1939 |
+
effect: TRUE,
|
1940 |
+
delay: 90,
|
1941 |
+
solo: FALSE,
|
1942 |
+
ready: FALSE,
|
1943 |
+
autofocus: FALSE
|
1944 |
+
},
|
1945 |
+
hide: {
|
1946 |
+
target: FALSE,
|
1947 |
+
event: 'mouseleave',
|
1948 |
+
effect: TRUE,
|
1949 |
+
delay: 0,
|
1950 |
+
fixed: FALSE,
|
1951 |
+
inactive: FALSE,
|
1952 |
+
leave: 'window',
|
1953 |
+
distance: FALSE
|
1954 |
+
},
|
1955 |
+
style: {
|
1956 |
+
classes: '',
|
1957 |
+
widget: FALSE,
|
1958 |
+
width: FALSE,
|
1959 |
+
height: FALSE,
|
1960 |
+
def: TRUE
|
1961 |
+
},
|
1962 |
+
events: {
|
1963 |
+
render: NULL,
|
1964 |
+
move: NULL,
|
1965 |
+
show: NULL,
|
1966 |
+
hide: NULL,
|
1967 |
+
toggle: NULL,
|
1968 |
+
visible: NULL,
|
1969 |
+
hidden: NULL,
|
1970 |
+
focus: NULL,
|
1971 |
+
blur: NULL
|
1972 |
+
}
|
1973 |
+
};
|
1974 |
+
|
1975 |
+
;var TIP,
|
1976 |
+
|
1977 |
+
// .bind()/.on() namespace
|
1978 |
+
TIPNS = '.qtip-tip',
|
1979 |
+
|
1980 |
+
// Common CSS strings
|
1981 |
+
MARGIN = 'margin',
|
1982 |
+
BORDER = 'border',
|
1983 |
+
COLOR = 'color',
|
1984 |
+
BG_COLOR = 'background-color',
|
1985 |
+
TRANSPARENT = 'transparent',
|
1986 |
+
IMPORTANT = ' !important',
|
1987 |
+
|
1988 |
+
// Check if the browser supports <canvas/> elements
|
1989 |
+
HASCANVAS = !!document.createElement('canvas').getContext,
|
1990 |
+
|
1991 |
+
// Invalid colour values used in parseColours()
|
1992 |
+
INVALID = /rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i;
|
1993 |
+
|
1994 |
+
// Camel-case method, taken from jQuery source
|
1995 |
+
// http://code.jquery.com/jquery-1.8.0.js
|
1996 |
+
function camel(s) { return s.charAt(0).toUpperCase() + s.slice(1); }
|
1997 |
+
|
1998 |
+
/*
|
1999 |
+
* Modified from Modernizr's testPropsAll()
|
2000 |
+
* http://modernizr.com/downloads/modernizr-latest.js
|
2001 |
+
*/
|
2002 |
+
var cssProps = {}, cssPrefixes = ["Webkit", "O", "Moz", "ms"];
|
2003 |
+
function vendorCss(elem, prop) {
|
2004 |
+
var ucProp = prop.charAt(0).toUpperCase() + prop.slice(1),
|
2005 |
+
props = (prop + ' ' + cssPrefixes.join(ucProp + ' ') + ucProp).split(' '),
|
2006 |
+
cur, val, i = 0;
|
2007 |
+
|
2008 |
+
// If the property has already been mapped...
|
2009 |
+
if(cssProps[prop]) { return elem.css(cssProps[prop]); }
|
2010 |
+
|
2011 |
+
while((cur = props[i++])) {
|
2012 |
+
if((val = elem.css(cur)) !== undefined) {
|
2013 |
+
return cssProps[prop] = cur, val;
|
2014 |
+
}
|
2015 |
+
}
|
2016 |
+
}
|
2017 |
+
|
2018 |
+
// Parse a given elements CSS property into an int
|
2019 |
+
function intCss(elem, prop) {
|
2020 |
+
return Math.ceil(parseFloat(vendorCss(elem, prop)));
|
2021 |
+
}
|
2022 |
+
|
2023 |
+
|
2024 |
+
// VML creation (for IE only)
|
2025 |
+
if(!HASCANVAS) {
|
2026 |
+
var createVML = function(tag, props, style) {
|
2027 |
+
return '<qtipvml:'+tag+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(props||'')+
|
2028 |
+
' style="behavior: url(#default#VML); '+(style||'')+ '" />';
|
2029 |
+
};
|
2030 |
+
}
|
2031 |
+
|
2032 |
+
// Canvas only definitions
|
2033 |
+
else {
|
2034 |
+
var PIXEL_RATIO = window.devicePixelRatio || 1,
|
2035 |
+
BACKING_STORE_RATIO = (function() {
|
2036 |
+
var context = document.createElement('canvas').getContext('2d');
|
2037 |
+
return context.backingStorePixelRatio || context.webkitBackingStorePixelRatio || context.mozBackingStorePixelRatio ||
|
2038 |
+
context.msBackingStorePixelRatio || context.oBackingStorePixelRatio || 1;
|
2039 |
+
}()),
|
2040 |
+
SCALE = PIXEL_RATIO / BACKING_STORE_RATIO;
|
2041 |
+
}
|
2042 |
+
|
2043 |
+
|
2044 |
+
function Tip(qtip, options) {
|
2045 |
+
this._ns = 'tip';
|
2046 |
+
this.options = options;
|
2047 |
+
this.offset = options.offset;
|
2048 |
+
this.size = [ options.width, options.height ];
|
2049 |
+
|
2050 |
+
// Initialize
|
2051 |
+
this.init( (this.qtip = qtip) );
|
2052 |
+
}
|
2053 |
+
|
2054 |
+
$.extend(Tip.prototype, {
|
2055 |
+
init: function(qtip) {
|
2056 |
+
var context, tip;
|
2057 |
+
|
2058 |
+
// Create tip element and prepend to the tooltip
|
2059 |
+
tip = this.element = qtip.elements.tip = $('<div />', { 'class': NAMESPACE+'-tip' }).prependTo(qtip.tooltip);
|
2060 |
+
|
2061 |
+
// Create tip drawing element(s)
|
2062 |
+
if(HASCANVAS) {
|
2063 |
+
// save() as soon as we create the canvas element so FF2 doesn't bork on our first restore()!
|
2064 |
+
context = $('<canvas />').appendTo(this.element)[0].getContext('2d');
|
2065 |
+
|
2066 |
+
// Setup constant parameters
|
2067 |
+
context.lineJoin = 'miter';
|
2068 |
+
context.miterLimit = 100000;
|
2069 |
+
context.save();
|
2070 |
+
}
|
2071 |
+
else {
|
2072 |
+
context = createVML('shape', 'coordorigin="0,0"', 'position:absolute;');
|
2073 |
+
this.element.html(context + context);
|
2074 |
+
|
2075 |
+
// Prevent mousing down on the tip since it causes problems with .live() handling in IE due to VML
|
2076 |
+
qtip._bind( $('*', tip).add(tip), ['click', 'mousedown'], function(event) { event.stopPropagation(); }, this._ns);
|
2077 |
+
}
|
2078 |
+
|
2079 |
+
// Bind update events
|
2080 |
+
qtip._bind(qtip.tooltip, 'tooltipmove', this.reposition, this._ns, this);
|
2081 |
+
|
2082 |
+
// Create it
|
2083 |
+
this.create();
|
2084 |
+
},
|
2085 |
+
|
2086 |
+
_swapDimensions: function() {
|
2087 |
+
this.size[0] = this.options.height;
|
2088 |
+
this.size[1] = this.options.width;
|
2089 |
+
},
|
2090 |
+
_resetDimensions: function() {
|
2091 |
+
this.size[0] = this.options.width;
|
2092 |
+
this.size[1] = this.options.height;
|
2093 |
+
},
|
2094 |
+
|
2095 |
+
_useTitle: function(corner) {
|
2096 |
+
var titlebar = this.qtip.elements.titlebar;
|
2097 |
+
return titlebar && (
|
2098 |
+
corner.y === TOP || (corner.y === CENTER && this.element.position().top + (this.size[1] / 2) + this.options.offset < titlebar.outerHeight(TRUE))
|
2099 |
+
);
|
2100 |
+
},
|
2101 |
+
|
2102 |
+
_parseCorner: function(corner) {
|
2103 |
+
var my = this.qtip.options.position.my;
|
2104 |
+
|
2105 |
+
// Detect corner and mimic properties
|
2106 |
+
if(corner === FALSE || my === FALSE) {
|
2107 |
+
corner = FALSE;
|
2108 |
+
}
|
2109 |
+
else if(corner === TRUE) {
|
2110 |
+
corner = new CORNER( my.string() );
|
2111 |
+
}
|
2112 |
+
else if(!corner.string) {
|
2113 |
+
corner = new CORNER(corner);
|
2114 |
+
corner.fixed = TRUE;
|
2115 |
+
}
|
2116 |
+
|
2117 |
+
return corner;
|
2118 |
+
},
|
2119 |
+
|
2120 |
+
_parseWidth: function(corner, side, use) {
|
2121 |
+
var elements = this.qtip.elements,
|
2122 |
+
prop = BORDER + camel(side) + 'Width';
|
2123 |
+
|
2124 |
+
return (use ? intCss(use, prop) : (
|
2125 |
+
intCss(elements.content, prop) ||
|
2126 |
+
intCss(this._useTitle(corner) && elements.titlebar || elements.content, prop) ||
|
2127 |
+
intCss(elements.tooltip, prop)
|
2128 |
+
)) || 0;
|
2129 |
+
},
|
2130 |
+
|
2131 |
+
_parseRadius: function(corner) {
|
2132 |
+
var elements = this.qtip.elements,
|
2133 |
+
prop = BORDER + camel(corner.y) + camel(corner.x) + 'Radius';
|
2134 |
+
|
2135 |
+
return BROWSER.ie < 9 ? 0 :
|
2136 |
+
intCss(this._useTitle(corner) && elements.titlebar || elements.content, prop) ||
|
2137 |
+
intCss(elements.tooltip, prop) || 0;
|
2138 |
+
},
|
2139 |
+
|
2140 |
+
_invalidColour: function(elem, prop, compare) {
|
2141 |
+
var val = elem.css(prop);
|
2142 |
+
return !val || (compare && val === elem.css(compare)) || INVALID.test(val) ? FALSE : val;
|
2143 |
+
},
|
2144 |
+
|
2145 |
+
_parseColours: function(corner) {
|
2146 |
+
var elements = this.qtip.elements,
|
2147 |
+
tip = this.element.css('cssText', ''),
|
2148 |
+
borderSide = BORDER + camel(corner[ corner.precedance ]) + camel(COLOR),
|
2149 |
+
colorElem = this._useTitle(corner) && elements.titlebar || elements.content,
|
2150 |
+
css = this._invalidColour, color = [];
|
2151 |
+
|
2152 |
+
// Attempt to detect the background colour from various elements, left-to-right precedance
|
2153 |
+
color[0] = css(tip, BG_COLOR) || css(colorElem, BG_COLOR) || css(elements.content, BG_COLOR) ||
|
2154 |
+
css(elements.tooltip, BG_COLOR) || tip.css(BG_COLOR);
|
2155 |
+
|
2156 |
+
// Attempt to detect the correct border side colour from various elements, left-to-right precedance
|
2157 |
+
color[1] = css(tip, borderSide, COLOR) || css(colorElem, borderSide, COLOR) ||
|
2158 |
+
css(elements.content, borderSide, COLOR) || css(elements.tooltip, borderSide, COLOR) || elements.tooltip.css(borderSide);
|
2159 |
+
|
2160 |
+
// Reset background and border colours
|
2161 |
+
$('*', tip).add(tip).css('cssText', BG_COLOR+':'+TRANSPARENT+IMPORTANT+';'+BORDER+':0'+IMPORTANT+';');
|
2162 |
+
|
2163 |
+
return color;
|
2164 |
+
},
|
2165 |
+
|
2166 |
+
_calculateSize: function(corner) {
|
2167 |
+
var y = corner.precedance === Y,
|
2168 |
+
width = this.options['width'],
|
2169 |
+
height = this.options['height'],
|
2170 |
+
isCenter = corner.abbrev() === 'c',
|
2171 |
+
base = (y ? width: height) * (isCenter ? 0.5 : 1),
|
2172 |
+
pow = Math.pow,
|
2173 |
+
round = Math.round,
|
2174 |
+
bigHyp, ratio, result,
|
2175 |
+
|
2176 |
+
smallHyp = Math.sqrt( pow(base, 2) + pow(height, 2) ),
|
2177 |
+
hyp = [ (this.border / base) * smallHyp, (this.border / height) * smallHyp ];
|
2178 |
+
|
2179 |
+
hyp[2] = Math.sqrt( pow(hyp[0], 2) - pow(this.border, 2) );
|
2180 |
+
hyp[3] = Math.sqrt( pow(hyp[1], 2) - pow(this.border, 2) );
|
2181 |
+
|
2182 |
+
bigHyp = smallHyp + hyp[2] + hyp[3] + (isCenter ? 0 : hyp[0]);
|
2183 |
+
ratio = bigHyp / smallHyp;
|
2184 |
+
|
2185 |
+
result = [ round(ratio * width), round(ratio * height) ];
|
2186 |
+
return y ? result : result.reverse();
|
2187 |
+
},
|
2188 |
+
|
2189 |
+
// Tip coordinates calculator
|
2190 |
+
_calculateTip: function(corner, size, scale) {
|
2191 |
+
scale = scale || 1;
|
2192 |
+
size = size || this.size;
|
2193 |
+
|
2194 |
+
var width = size[0] * scale,
|
2195 |
+
height = size[1] * scale,
|
2196 |
+
width2 = Math.ceil(width / 2), height2 = Math.ceil(height / 2),
|
2197 |
+
|
2198 |
+
// Define tip coordinates in terms of height and width values
|
2199 |
+
tips = {
|
2200 |
+
br: [0,0, width,height, width,0],
|
2201 |
+
bl: [0,0, width,0, 0,height],
|
2202 |
+
tr: [0,height, width,0, width,height],
|
2203 |
+
tl: [0,0, 0,height, width,height],
|
2204 |
+
tc: [0,height, width2,0, width,height],
|
2205 |
+
bc: [0,0, width,0, width2,height],
|
2206 |
+
rc: [0,0, width,height2, 0,height],
|
2207 |
+
lc: [width,0, width,height, 0,height2]
|
2208 |
+
};
|
2209 |
+
|
2210 |
+
// Set common side shapes
|
2211 |
+
tips.lt = tips.br; tips.rt = tips.bl;
|
2212 |
+
tips.lb = tips.tr; tips.rb = tips.tl;
|
2213 |
+
|
2214 |
+
return tips[ corner.abbrev() ];
|
2215 |
+
},
|
2216 |
+
|
2217 |
+
// Tip coordinates drawer (canvas)
|
2218 |
+
_drawCoords: function(context, coords) {
|
2219 |
+
context.beginPath();
|
2220 |
+
context.moveTo(coords[0], coords[1]);
|
2221 |
+
context.lineTo(coords[2], coords[3]);
|
2222 |
+
context.lineTo(coords[4], coords[5]);
|
2223 |
+
context.closePath();
|
2224 |
+
},
|
2225 |
+
|
2226 |
+
create: function() {
|
2227 |
+
// Determine tip corner
|
2228 |
+
var c = this.corner = (HASCANVAS || BROWSER.ie) && this._parseCorner(this.options.corner);
|
2229 |
+
|
2230 |
+
// If we have a tip corner...
|
2231 |
+
if( (this.enabled = !!this.corner && this.corner.abbrev() !== 'c') ) {
|
2232 |
+
// Cache it
|
2233 |
+
this.qtip.cache.corner = c.clone();
|
2234 |
+
|
2235 |
+
// Create it
|
2236 |
+
this.update();
|
2237 |
+
}
|
2238 |
+
|
2239 |
+
// Toggle tip element
|
2240 |
+
this.element.toggle(this.enabled);
|
2241 |
+
|
2242 |
+
return this.corner;
|
2243 |
+
},
|
2244 |
+
|
2245 |
+
update: function(corner, position) {
|
2246 |
+
if(!this.enabled) { return this; }
|
2247 |
+
|
2248 |
+
var elements = this.qtip.elements,
|
2249 |
+
tip = this.element,
|
2250 |
+
inner = tip.children(),
|
2251 |
+
options = this.options,
|
2252 |
+
curSize = this.size,
|
2253 |
+
mimic = options.mimic,
|
2254 |
+
round = Math.round,
|
2255 |
+
color, precedance, context,
|
2256 |
+
coords, bigCoords, translate, newSize, border, BACKING_STORE_RATIO;
|
2257 |
+
|
2258 |
+
// Re-determine tip if not already set
|
2259 |
+
if(!corner) { corner = this.qtip.cache.corner || this.corner; }
|
2260 |
+
|
2261 |
+
// Use corner property if we detect an invalid mimic value
|
2262 |
+
if(mimic === FALSE) { mimic = corner; }
|
2263 |
+
|
2264 |
+
// Otherwise inherit mimic properties from the corner object as necessary
|
2265 |
+
else {
|
2266 |
+
mimic = new CORNER(mimic);
|
2267 |
+
mimic.precedance = corner.precedance;
|
2268 |
+
|
2269 |
+
if(mimic.x === 'inherit') { mimic.x = corner.x; }
|
2270 |
+
else if(mimic.y === 'inherit') { mimic.y = corner.y; }
|
2271 |
+
else if(mimic.x === mimic.y) {
|
2272 |
+
mimic[ corner.precedance ] = corner[ corner.precedance ];
|
2273 |
+
}
|
2274 |
+
}
|
2275 |
+
precedance = mimic.precedance;
|
2276 |
+
|
2277 |
+
// Ensure the tip width.height are relative to the tip position
|
2278 |
+
if(corner.precedance === X) { this._swapDimensions(); }
|
2279 |
+
else { this._resetDimensions(); }
|
2280 |
+
|
2281 |
+
// Update our colours
|
2282 |
+
color = this.color = this._parseColours(corner);
|
2283 |
+
|
2284 |
+
// Detect border width, taking into account colours
|
2285 |
+
if(color[1] !== TRANSPARENT) {
|
2286 |
+
// Grab border width
|
2287 |
+
border = this.border = this._parseWidth(corner, corner[corner.precedance]);
|
2288 |
+
|
2289 |
+
// If border width isn't zero, use border color as fill if it's not invalid (1.0 style tips)
|
2290 |
+
if(options.border && border < 1 && !INVALID.test(color[1])) { color[0] = color[1]; }
|
2291 |
+
|
2292 |
+
// Set border width (use detected border width if options.border is true)
|
2293 |
+
this.border = border = options.border !== TRUE ? options.border : border;
|
2294 |
+
}
|
2295 |
+
|
2296 |
+
// Border colour was invalid, set border to zero
|
2297 |
+
else { this.border = border = 0; }
|
2298 |
+
|
2299 |
+
// Determine tip size
|
2300 |
+
newSize = this.size = this._calculateSize(corner);
|
2301 |
+
tip.css({
|
2302 |
+
width: newSize[0],
|
2303 |
+
height: newSize[1],
|
2304 |
+
lineHeight: newSize[1]+'px'
|
2305 |
+
});
|
2306 |
+
|
2307 |
+
// Calculate tip translation
|
2308 |
+
if(corner.precedance === Y) {
|
2309 |
+
translate = [
|
2310 |
+
round(mimic.x === LEFT ? border : mimic.x === RIGHT ? newSize[0] - curSize[0] - border : (newSize[0] - curSize[0]) / 2),
|
2311 |
+
round(mimic.y === TOP ? newSize[1] - curSize[1] : 0)
|
2312 |
+
];
|
2313 |
+
}
|
2314 |
+
else {
|
2315 |
+
translate = [
|
2316 |
+
round(mimic.x === LEFT ? newSize[0] - curSize[0] : 0),
|
2317 |
+
round(mimic.y === TOP ? border : mimic.y === BOTTOM ? newSize[1] - curSize[1] - border : (newSize[1] - curSize[1]) / 2)
|
2318 |
+
];
|
2319 |
+
}
|
2320 |
+
|
2321 |
+
// Canvas drawing implementation
|
2322 |
+
if(HASCANVAS) {
|
2323 |
+
// Grab canvas context and clear/save it
|
2324 |
+
context = inner[0].getContext('2d');
|
2325 |
+
context.restore(); context.save();
|
2326 |
+
context.clearRect(0,0,6000,6000);
|
2327 |
+
|
2328 |
+
// Calculate coordinates
|
2329 |
+
coords = this._calculateTip(mimic, curSize, SCALE);
|
2330 |
+
bigCoords = this._calculateTip(mimic, this.size, SCALE);
|
2331 |
+
|
2332 |
+
// Set the canvas size using calculated size
|
2333 |
+
inner.attr(WIDTH, newSize[0] * SCALE).attr(HEIGHT, newSize[1] * SCALE);
|
2334 |
+
inner.css(WIDTH, newSize[0]).css(HEIGHT, newSize[1]);
|
2335 |
+
|
2336 |
+
// Draw the outer-stroke tip
|
2337 |
+
this._drawCoords(context, bigCoords);
|
2338 |
+
context.fillStyle = color[1];
|
2339 |
+
context.fill();
|
2340 |
+
|
2341 |
+
// Draw the actual tip
|
2342 |
+
context.translate(translate[0] * SCALE, translate[1] * SCALE);
|
2343 |
+
this._drawCoords(context, coords);
|
2344 |
+
context.fillStyle = color[0];
|
2345 |
+
context.fill();
|
2346 |
+
}
|
2347 |
+
|
2348 |
+
// VML (IE Proprietary implementation)
|
2349 |
+
else {
|
2350 |
+
// Calculate coordinates
|
2351 |
+
coords = this._calculateTip(mimic);
|
2352 |
+
|
2353 |
+
// Setup coordinates string
|
2354 |
+
coords = 'm' + coords[0] + ',' + coords[1] + ' l' + coords[2] +
|
2355 |
+
',' + coords[3] + ' ' + coords[4] + ',' + coords[5] + ' xe';
|
2356 |
+
|
2357 |
+
// Setup VML-specific offset for pixel-perfection
|
2358 |
+
translate[2] = border && /^(r|b)/i.test(corner.string()) ?
|
2359 |
+
BROWSER.ie === 8 ? 2 : 1 : 0;
|
2360 |
+
|
2361 |
+
// Set initial CSS
|
2362 |
+
inner.css({
|
2363 |
+
coordsize: (newSize[0]+border) + ' ' + (newSize[1]+border),
|
2364 |
+
antialias: ''+(mimic.string().indexOf(CENTER) > -1),
|
2365 |
+
left: translate[0] - (translate[2] * Number(precedance === X)),
|
2366 |
+
top: translate[1] - (translate[2] * Number(precedance === Y)),
|
2367 |
+
width: newSize[0] + border,
|
2368 |
+
height: newSize[1] + border
|
2369 |
+
})
|
2370 |
+
.each(function(i) {
|
2371 |
+
var $this = $(this);
|
2372 |
+
|
2373 |
+
// Set shape specific attributes
|
2374 |
+
$this[ $this.prop ? 'prop' : 'attr' ]({
|
2375 |
+
coordsize: (newSize[0]+border) + ' ' + (newSize[1]+border),
|
2376 |
+
path: coords,
|
2377 |
+
fillcolor: color[0],
|
2378 |
+
filled: !!i,
|
2379 |
+
stroked: !i
|
2380 |
+
})
|
2381 |
+
.toggle(!!(border || i));
|
2382 |
+
|
2383 |
+
// Check if border is enabled and add stroke element
|
2384 |
+
!i && $this.html( createVML(
|
2385 |
+
'stroke', 'weight="'+(border*2)+'px" color="'+color[1]+'" miterlimit="1000" joinstyle="miter"'
|
2386 |
+
) );
|
2387 |
+
});
|
2388 |
+
}
|
2389 |
+
|
2390 |
+
// Opera bug #357 - Incorrect tip position
|
2391 |
+
// https://github.com/Craga89/qTip2/issues/367
|
2392 |
+
window.opera && setTimeout(function() {
|
2393 |
+
elements.tip.css({
|
2394 |
+
display: 'inline-block',
|
2395 |
+
visibility: 'visible'
|
2396 |
+
});
|
2397 |
+
}, 1);
|
2398 |
+
|
2399 |
+
// Position if needed
|
2400 |
+
if(position !== FALSE) { this.calculate(corner, newSize); }
|
2401 |
+
},
|
2402 |
+
|
2403 |
+
calculate: function(corner, size) {
|
2404 |
+
if(!this.enabled) { return FALSE; }
|
2405 |
+
|
2406 |
+
var self = this,
|
2407 |
+
elements = this.qtip.elements,
|
2408 |
+
tip = this.element,
|
2409 |
+
userOffset = this.options.offset,
|
2410 |
+
isWidget = elements.tooltip.hasClass('ui-widget'),
|
2411 |
+
position = { },
|
2412 |
+
precedance, corners;
|
2413 |
+
|
2414 |
+
// Inherit corner if not provided
|
2415 |
+
corner = corner || this.corner;
|
2416 |
+
precedance = corner.precedance;
|
2417 |
+
|
2418 |
+
// Determine which tip dimension to use for adjustment
|
2419 |
+
size = size || this._calculateSize(corner);
|
2420 |
+
|
2421 |
+
// Setup corners and offset array
|
2422 |
+
corners = [ corner.x, corner.y ];
|
2423 |
+
if(precedance === X) { corners.reverse(); }
|
2424 |
+
|
2425 |
+
// Calculate tip position
|
2426 |
+
$.each(corners, function(i, side) {
|
2427 |
+
var b, bc, br;
|
2428 |
+
|
2429 |
+
if(side === CENTER) {
|
2430 |
+
b = precedance === Y ? LEFT : TOP;
|
2431 |
+
position[ b ] = '50%';
|
2432 |
+
position[MARGIN+'-' + b] = -Math.round(size[ precedance === Y ? 0 : 1 ] / 2) + userOffset;
|
2433 |
+
}
|
2434 |
+
else {
|
2435 |
+
b = self._parseWidth(corner, side, elements.tooltip);
|
2436 |
+
bc = self._parseWidth(corner, side, elements.content);
|
2437 |
+
br = self._parseRadius(corner);
|
2438 |
+
|
2439 |
+
position[ side ] = Math.max(-self.border, i ? bc : (userOffset + (br > b ? br : -b)));
|
2440 |
+
}
|
2441 |
+
});
|
2442 |
+
|
2443 |
+
// Adjust for tip size
|
2444 |
+
position[ corner[precedance] ] -= size[ precedance === X ? 0 : 1 ];
|
2445 |
+
|
2446 |
+
// Set and return new position
|
2447 |
+
tip.css({ margin: '', top: '', bottom: '', left: '', right: '' }).css(position);
|
2448 |
+
return position;
|
2449 |
+
},
|
2450 |
+
|
2451 |
+
reposition: function(event, api, pos, viewport) {
|
2452 |
+
if(!this.enabled) { return; }
|
2453 |
+
|
2454 |
+
var cache = api.cache,
|
2455 |
+
newCorner = this.corner.clone(),
|
2456 |
+
adjust = pos.adjusted,
|
2457 |
+
method = api.options.position.adjust.method.split(' '),
|
2458 |
+
horizontal = method[0],
|
2459 |
+
vertical = method[1] || method[0],
|
2460 |
+
shift = { left: FALSE, top: FALSE, x: 0, y: 0 },
|
2461 |
+
offset, css = {}, props;
|
2462 |
+
|
2463 |
+
function shiftflip(direction, precedance, popposite, side, opposite) {
|
2464 |
+
// Horizontal - Shift or flip method
|
2465 |
+
if(direction === SHIFT && newCorner.precedance === precedance && adjust[side] && newCorner[popposite] !== CENTER) {
|
2466 |
+
newCorner.precedance = newCorner.precedance === X ? Y : X;
|
2467 |
+
}
|
2468 |
+
else if(direction !== SHIFT && adjust[side]){
|
2469 |
+
newCorner[precedance] = newCorner[precedance] === CENTER ?
|
2470 |
+
(adjust[side] > 0 ? side : opposite) : (newCorner[precedance] === side ? opposite : side);
|
2471 |
+
}
|
2472 |
+
}
|
2473 |
+
|
2474 |
+
function shiftonly(xy, side, opposite) {
|
2475 |
+
if(newCorner[xy] === CENTER) {
|
2476 |
+
css[MARGIN+'-'+side] = shift[xy] = offset[MARGIN+'-'+side] - adjust[side];
|
2477 |
+
}
|
2478 |
+
else {
|
2479 |
+
props = offset[opposite] !== undefined ?
|
2480 |
+
[ adjust[side], -offset[side] ] : [ -adjust[side], offset[side] ];
|
2481 |
+
|
2482 |
+
if( (shift[xy] = Math.max(props[0], props[1])) > props[0] ) {
|
2483 |
+
pos[side] -= adjust[side];
|
2484 |
+
shift[side] = FALSE;
|
2485 |
+
}
|
2486 |
+
|
2487 |
+
css[ offset[opposite] !== undefined ? opposite : side ] = shift[xy];
|
2488 |
+
}
|
2489 |
+
}
|
2490 |
+
|
2491 |
+
// If our tip position isn't fixed e.g. doesn't adjust with viewport...
|
2492 |
+
if(this.corner.fixed !== TRUE) {
|
2493 |
+
// Perform shift/flip adjustments
|
2494 |
+
shiftflip(horizontal, X, Y, LEFT, RIGHT);
|
2495 |
+
shiftflip(vertical, Y, X, TOP, BOTTOM);
|
2496 |
+
|
2497 |
+
// Update and redraw the tip if needed (check cached details of last drawn tip)
|
2498 |
+
if(newCorner.string() !== cache.corner.string() && (cache.cornerTop !== adjust.top || cache.cornerLeft !== adjust.left)) {
|
2499 |
+
this.update(newCorner, FALSE);
|
2500 |
+
}
|
2501 |
+
}
|
2502 |
+
|
2503 |
+
// Setup tip offset properties
|
2504 |
+
offset = this.calculate(newCorner);
|
2505 |
+
|
2506 |
+
// Readjust offset object to make it left/top
|
2507 |
+
if(offset.right !== undefined) { offset.left = -offset.right; }
|
2508 |
+
if(offset.bottom !== undefined) { offset.top = -offset.bottom; }
|
2509 |
+
offset.user = this.offset;
|
2510 |
+
|
2511 |
+
// Perform shift adjustments
|
2512 |
+
if(shift.left = (horizontal === SHIFT && !!adjust.left)) { shiftonly(X, LEFT, RIGHT); }
|
2513 |
+
if(shift.top = (vertical === SHIFT && !!adjust.top)) { shiftonly(Y, TOP, BOTTOM); }
|
2514 |
+
|
2515 |
+
/*
|
2516 |
+
* If the tip is adjusted in both dimensions, or in a
|
2517 |
+
* direction that would cause it to be anywhere but the
|
2518 |
+
* outer border, hide it!
|
2519 |
+
*/
|
2520 |
+
this.element.css(css).toggle(
|
2521 |
+
!((shift.x && shift.y) || (newCorner.x === CENTER && shift.y) || (newCorner.y === CENTER && shift.x))
|
2522 |
+
);
|
2523 |
+
|
2524 |
+
// Adjust position to accomodate tip dimensions
|
2525 |
+
pos.left -= offset.left.charAt ? offset.user :
|
2526 |
+
horizontal !== SHIFT || shift.top || !shift.left && !shift.top ? offset.left + this.border : 0;
|
2527 |
+
pos.top -= offset.top.charAt ? offset.user :
|
2528 |
+
vertical !== SHIFT || shift.left || !shift.left && !shift.top ? offset.top + this.border : 0;
|
2529 |
+
|
2530 |
+
// Cache details
|
2531 |
+
cache.cornerLeft = adjust.left; cache.cornerTop = adjust.top;
|
2532 |
+
cache.corner = newCorner.clone();
|
2533 |
+
},
|
2534 |
+
|
2535 |
+
destroy: function() {
|
2536 |
+
// Unbind events
|
2537 |
+
this.qtip._unbind(this.qtip.tooltip, this._ns);
|
2538 |
+
|
2539 |
+
// Remove the tip element(s)
|
2540 |
+
if(this.qtip.elements.tip) {
|
2541 |
+
this.qtip.elements.tip.find('*')
|
2542 |
+
.remove().end().remove();
|
2543 |
+
}
|
2544 |
+
}
|
2545 |
+
});
|
2546 |
+
|
2547 |
+
TIP = PLUGINS.tip = function(api) {
|
2548 |
+
return new Tip(api, api.options.style.tip);
|
2549 |
+
};
|
2550 |
+
|
2551 |
+
// Initialize tip on render
|
2552 |
+
TIP.initialize = 'render';
|
2553 |
+
|
2554 |
+
// Setup plugin sanitization options
|
2555 |
+
TIP.sanitize = function(options) {
|
2556 |
+
if(options.style && 'tip' in options.style) {
|
2557 |
+
var opts = options.style.tip;
|
2558 |
+
if(typeof opts !== 'object') { opts = options.style.tip = { corner: opts }; }
|
2559 |
+
if(!(/string|boolean/i).test(typeof opts.corner)) { opts.corner = TRUE; }
|
2560 |
+
}
|
2561 |
+
};
|
2562 |
+
|
2563 |
+
// Add new option checks for the plugin
|
2564 |
+
CHECKS.tip = {
|
2565 |
+
'^position.my|style.tip.(corner|mimic|border)$': function() {
|
2566 |
+
// Make sure a tip can be drawn
|
2567 |
+
this.create();
|
2568 |
+
|
2569 |
+
// Reposition the tooltip
|
2570 |
+
this.qtip.reposition();
|
2571 |
+
},
|
2572 |
+
'^style.tip.(height|width)$': function(obj) {
|
2573 |
+
// Re-set dimensions and redraw the tip
|
2574 |
+
this.size = [ obj.width, obj.height ];
|
2575 |
+
this.update();
|
2576 |
+
|
2577 |
+
// Reposition the tooltip
|
2578 |
+
this.qtip.reposition();
|
2579 |
+
},
|
2580 |
+
'^content.title|style.(classes|widget)$': function() {
|
2581 |
+
this.update();
|
2582 |
+
}
|
2583 |
+
};
|
2584 |
+
|
2585 |
+
// Extend original qTip defaults
|
2586 |
+
$.extend(TRUE, QTIP.defaults, {
|
2587 |
+
style: {
|
2588 |
+
tip: {
|
2589 |
+
corner: TRUE,
|
2590 |
+
mimic: FALSE,
|
2591 |
+
width: 6,
|
2592 |
+
height: 6,
|
2593 |
+
border: TRUE,
|
2594 |
+
offset: 0
|
2595 |
+
}
|
2596 |
+
}
|
2597 |
+
});
|
2598 |
+
|
2599 |
+
;PLUGINS.viewport = function(api, position, posOptions, targetWidth, targetHeight, elemWidth, elemHeight)
|
2600 |
+
{
|
2601 |
+
var target = posOptions.target,
|
2602 |
+
tooltip = api.elements.tooltip,
|
2603 |
+
my = posOptions.my,
|
2604 |
+
at = posOptions.at,
|
2605 |
+
adjust = posOptions.adjust,
|
2606 |
+
method = adjust.method.split(' '),
|
2607 |
+
methodX = method[0],
|
2608 |
+
methodY = method[1] || method[0],
|
2609 |
+
viewport = posOptions.viewport,
|
2610 |
+
container = posOptions.container,
|
2611 |
+
cache = api.cache,
|
2612 |
+
adjusted = { left: 0, top: 0 },
|
2613 |
+
fixed, newMy, newClass, containerOffset, containerStatic,
|
2614 |
+
viewportWidth, viewportHeight, viewportScroll, viewportOffset;
|
2615 |
+
|
2616 |
+
// If viewport is not a jQuery element, or it's the window/document, or no adjustment method is used... return
|
2617 |
+
if(!viewport.jquery || target[0] === window || target[0] === document.body || adjust.method === 'none') {
|
2618 |
+
return adjusted;
|
2619 |
+
}
|
2620 |
+
|
2621 |
+
// Cach container details
|
2622 |
+
containerOffset = container.offset() || adjusted;
|
2623 |
+
containerStatic = container.css('position') === 'static';
|
2624 |
+
|
2625 |
+
// Cache our viewport details
|
2626 |
+
fixed = tooltip.css('position') === 'fixed';
|
2627 |
+
viewportWidth = viewport[0] === window ? viewport.width() : viewport.outerWidth(FALSE);
|
2628 |
+
viewportHeight = viewport[0] === window ? viewport.height() : viewport.outerHeight(FALSE);
|
2629 |
+
viewportScroll = { left: fixed ? 0 : viewport.scrollLeft(), top: fixed ? 0 : viewport.scrollTop() };
|
2630 |
+
viewportOffset = viewport.offset() || adjusted;
|
2631 |
+
|
2632 |
+
// Generic calculation method
|
2633 |
+
function calculate(side, otherSide, type, adjust, side1, side2, lengthName, targetLength, elemLength) {
|
2634 |
+
var initialPos = position[side1],
|
2635 |
+
mySide = my[side],
|
2636 |
+
atSide = at[side],
|
2637 |
+
isShift = type === SHIFT,
|
2638 |
+
myLength = mySide === side1 ? elemLength : mySide === side2 ? -elemLength : -elemLength / 2,
|
2639 |
+
atLength = atSide === side1 ? targetLength : atSide === side2 ? -targetLength : -targetLength / 2,
|
2640 |
+
sideOffset = viewportScroll[side1] + viewportOffset[side1] - (containerStatic ? 0 : containerOffset[side1]),
|
2641 |
+
overflow1 = sideOffset - initialPos,
|
2642 |
+
overflow2 = initialPos + elemLength - (lengthName === WIDTH ? viewportWidth : viewportHeight) - sideOffset,
|
2643 |
+
offset = myLength - (my.precedance === side || mySide === my[otherSide] ? atLength : 0) - (atSide === CENTER ? targetLength / 2 : 0);
|
2644 |
+
|
2645 |
+
// shift
|
2646 |
+
if(isShift) {
|
2647 |
+
offset = (mySide === side1 ? 1 : -1) * myLength;
|
2648 |
+
|
2649 |
+
// Adjust position but keep it within viewport dimensions
|
2650 |
+
position[side1] += overflow1 > 0 ? overflow1 : overflow2 > 0 ? -overflow2 : 0;
|
2651 |
+
position[side1] = Math.max(
|
2652 |
+
-containerOffset[side1] + viewportOffset[side1],
|
2653 |
+
initialPos - offset,
|
2654 |
+
Math.min(
|
2655 |
+
Math.max(
|
2656 |
+
-containerOffset[side1] + viewportOffset[side1] + (lengthName === WIDTH ? viewportWidth : viewportHeight),
|
2657 |
+
initialPos + offset
|
2658 |
+
),
|
2659 |
+
position[side1],
|
2660 |
+
|
2661 |
+
// Make sure we don't adjust complete off the element when using 'center'
|
2662 |
+
mySide === 'center' ? initialPos - myLength : 1E9
|
2663 |
+
)
|
2664 |
+
);
|
2665 |
+
|
2666 |
+
}
|
2667 |
+
|
2668 |
+
// flip/flipinvert
|
2669 |
+
else {
|
2670 |
+
// Update adjustment amount depending on if using flipinvert or flip
|
2671 |
+
adjust *= (type === FLIPINVERT ? 2 : 0);
|
2672 |
+
|
2673 |
+
// Check for overflow on the left/top
|
2674 |
+
if(overflow1 > 0 && (mySide !== side1 || overflow2 > 0)) {
|
2675 |
+
position[side1] -= offset + adjust;
|
2676 |
+
newMy.invert(side, side1);
|
2677 |
+
}
|
2678 |
+
|
2679 |
+
// Check for overflow on the bottom/right
|
2680 |
+
else if(overflow2 > 0 && (mySide !== side2 || overflow1 > 0) ) {
|
2681 |
+
position[side1] -= (mySide === CENTER ? -offset : offset) + adjust;
|
2682 |
+
newMy.invert(side, side2);
|
2683 |
+
}
|
2684 |
+
|
2685 |
+
// Make sure we haven't made things worse with the adjustment and reset if so
|
2686 |
+
if(position[side1] < viewportScroll && -position[side1] > overflow2) {
|
2687 |
+
position[side1] = initialPos; newMy = my.clone();
|
2688 |
+
}
|
2689 |
+
}
|
2690 |
+
|
2691 |
+
return position[side1] - initialPos;
|
2692 |
+
}
|
2693 |
+
|
2694 |
+
// Set newMy if using flip or flipinvert methods
|
2695 |
+
if(methodX !== 'shift' || methodY !== 'shift') { newMy = my.clone(); }
|
2696 |
+
|
2697 |
+
// Adjust position based onviewport and adjustment options
|
2698 |
+
adjusted = {
|
2699 |
+
left: methodX !== 'none' ? calculate( X, Y, methodX, adjust.x, LEFT, RIGHT, WIDTH, targetWidth, elemWidth ) : 0,
|
2700 |
+
top: methodY !== 'none' ? calculate( Y, X, methodY, adjust.y, TOP, BOTTOM, HEIGHT, targetHeight, elemHeight ) : 0
|
2701 |
+
};
|
2702 |
+
|
2703 |
+
// Set tooltip position class if it's changed
|
2704 |
+
if(newMy && cache.lastClass !== (newClass = NAMESPACE + '-pos-' + newMy.abbrev())) {
|
2705 |
+
tooltip.removeClass(api.cache.lastClass).addClass( (api.cache.lastClass = newClass) );
|
2706 |
+
}
|
2707 |
+
|
2708 |
+
return adjusted;
|
2709 |
+
};
|
2710 |
+
;PLUGINS.polys = {
|
2711 |
+
// POLY area coordinate calculator
|
2712 |
+
// Special thanks to Ed Cradock for helping out with this.
|
2713 |
+
// Uses a binary search algorithm to find suitable coordinates.
|
2714 |
+
polygon: function(baseCoords, corner) {
|
2715 |
+
var result = {
|
2716 |
+
width: 0, height: 0,
|
2717 |
+
position: {
|
2718 |
+
top: 1e10, right: 0,
|
2719 |
+
bottom: 0, left: 1e10
|
2720 |
+
},
|
2721 |
+
adjustable: FALSE
|
2722 |
+
},
|
2723 |
+
i = 0, next,
|
2724 |
+
coords = [],
|
2725 |
+
compareX = 1, compareY = 1,
|
2726 |
+
realX = 0, realY = 0,
|
2727 |
+
newWidth, newHeight;
|
2728 |
+
|
2729 |
+
// First pass, sanitize coords and determine outer edges
|
2730 |
+
i = baseCoords.length; while(i--) {
|
2731 |
+
next = [ parseInt(baseCoords[--i], 10), parseInt(baseCoords[i+1], 10) ];
|
2732 |
+
|
2733 |
+
if(next[0] > result.position.right){ result.position.right = next[0]; }
|
2734 |
+
if(next[0] < result.position.left){ result.position.left = next[0]; }
|
2735 |
+
if(next[1] > result.position.bottom){ result.position.bottom = next[1]; }
|
2736 |
+
if(next[1] < result.position.top){ result.position.top = next[1]; }
|
2737 |
+
|
2738 |
+
coords.push(next);
|
2739 |
+
}
|
2740 |
+
|
2741 |
+
// Calculate height and width from outer edges
|
2742 |
+
newWidth = result.width = Math.abs(result.position.right - result.position.left);
|
2743 |
+
newHeight = result.height = Math.abs(result.position.bottom - result.position.top);
|
2744 |
+
|
2745 |
+
// If it's the center corner...
|
2746 |
+
if(corner.abbrev() === 'c') {
|
2747 |
+
result.position = {
|
2748 |
+
left: result.position.left + (result.width / 2),
|
2749 |
+
top: result.position.top + (result.height / 2)
|
2750 |
+
};
|
2751 |
+
}
|
2752 |
+
else {
|
2753 |
+
// Second pass, use a binary search algorithm to locate most suitable coordinate
|
2754 |
+
while(newWidth > 0 && newHeight > 0 && compareX > 0 && compareY > 0)
|
2755 |
+
{
|
2756 |
+
newWidth = Math.floor(newWidth / 2);
|
2757 |
+
newHeight = Math.floor(newHeight / 2);
|
2758 |
+
|
2759 |
+
if(corner.x === LEFT){ compareX = newWidth; }
|
2760 |
+
else if(corner.x === RIGHT){ compareX = result.width - newWidth; }
|
2761 |
+
else{ compareX += Math.floor(newWidth / 2); }
|
2762 |
+
|
2763 |
+
if(corner.y === TOP){ compareY = newHeight; }
|
2764 |
+
else if(corner.y === BOTTOM){ compareY = result.height - newHeight; }
|
2765 |
+
else{ compareY += Math.floor(newHeight / 2); }
|
2766 |
+
|
2767 |
+
i = coords.length; while(i--)
|
2768 |
+
{
|
2769 |
+
if(coords.length < 2){ break; }
|
2770 |
+
|
2771 |
+
realX = coords[i][0] - result.position.left;
|
2772 |
+
realY = coords[i][1] - result.position.top;
|
2773 |
+
|
2774 |
+
if((corner.x === LEFT && realX >= compareX) ||
|
2775 |
+
(corner.x === RIGHT && realX <= compareX) ||
|
2776 |
+
(corner.x === CENTER && (realX < compareX || realX > (result.width - compareX))) ||
|
2777 |
+
(corner.y === TOP && realY >= compareY) ||
|
2778 |
+
(corner.y === BOTTOM && realY <= compareY) ||
|
2779 |
+
(corner.y === CENTER && (realY < compareY || realY > (result.height - compareY)))) {
|
2780 |
+
coords.splice(i, 1);
|
2781 |
+
}
|
2782 |
+
}
|
2783 |
+
}
|
2784 |
+
result.position = { left: coords[0][0], top: coords[0][1] };
|
2785 |
+
}
|
2786 |
+
|
2787 |
+
return result;
|
2788 |
+
},
|
2789 |
+
|
2790 |
+
rect: function(ax, ay, bx, by) {
|
2791 |
+
return {
|
2792 |
+
width: Math.abs(bx - ax),
|
2793 |
+
height: Math.abs(by - ay),
|
2794 |
+
position: {
|
2795 |
+
left: Math.min(ax, bx),
|
2796 |
+
top: Math.min(ay, by)
|
2797 |
+
}
|
2798 |
+
};
|
2799 |
+
},
|
2800 |
+
|
2801 |
+
_angles: {
|
2802 |
+
tc: 3 / 2, tr: 7 / 4, tl: 5 / 4,
|
2803 |
+
bc: 1 / 2, br: 1 / 4, bl: 3 / 4,
|
2804 |
+
rc: 2, lc: 1, c: 0
|
2805 |
+
},
|
2806 |
+
ellipse: function(cx, cy, rx, ry, corner) {
|
2807 |
+
var c = PLUGINS.polys._angles[ corner.abbrev() ],
|
2808 |
+
rxc = c === 0 ? 0 : rx * Math.cos( c * Math.PI ),
|
2809 |
+
rys = ry * Math.sin( c * Math.PI );
|
2810 |
+
|
2811 |
+
return {
|
2812 |
+
width: (rx * 2) - Math.abs(rxc),
|
2813 |
+
height: (ry * 2) - Math.abs(rys),
|
2814 |
+
position: {
|
2815 |
+
left: cx + rxc,
|
2816 |
+
top: cy + rys
|
2817 |
+
},
|
2818 |
+
adjustable: FALSE
|
2819 |
+
};
|
2820 |
+
},
|
2821 |
+
circle: function(cx, cy, r, corner) {
|
2822 |
+
return PLUGINS.polys.ellipse(cx, cy, r, r, corner);
|
2823 |
+
}
|
2824 |
+
};;PLUGINS.imagemap = function(api, area, corner, adjustMethod)
|
2825 |
+
{
|
2826 |
+
if(!area.jquery) { area = $(area); }
|
2827 |
+
|
2828 |
+
var shape = area.attr('shape').toLowerCase().replace('poly', 'polygon'),
|
2829 |
+
image = $('img[usemap="#'+area.parent('map').attr('name')+'"]'),
|
2830 |
+
coordsString = $.trim(area.attr('coords')),
|
2831 |
+
coordsArray = coordsString.replace(/,$/, '').split(','),
|
2832 |
+
imageOffset, coords, i, next, result, len;
|
2833 |
+
|
2834 |
+
// If we can't find the image using the map...
|
2835 |
+
if(!image.length) { return FALSE; }
|
2836 |
+
|
2837 |
+
// Pass coordinates string if polygon
|
2838 |
+
if(shape === 'polygon') {
|
2839 |
+
result = PLUGINS.polys.polygon(coordsArray, corner);
|
2840 |
+
}
|
2841 |
+
|
2842 |
+
// Otherwise parse the coordinates and pass them as arguments
|
2843 |
+
else if(PLUGINS.polys[shape]) {
|
2844 |
+
for(i = -1, len = coordsArray.length, coords = []; ++i < len;) {
|
2845 |
+
coords.push( parseInt(coordsArray[i], 10) );
|
2846 |
+
}
|
2847 |
+
|
2848 |
+
result = PLUGINS.polys[shape].apply(
|
2849 |
+
this, coords.concat(corner)
|
2850 |
+
);
|
2851 |
+
}
|
2852 |
+
|
2853 |
+
// If no shapre calculation method was found, return false
|
2854 |
+
else { return FALSE; }
|
2855 |
+
|
2856 |
+
// Make sure we account for padding and borders on the image
|
2857 |
+
imageOffset = image.offset();
|
2858 |
+
imageOffset.left += Math.ceil((image.outerWidth(FALSE) - image.width()) / 2);
|
2859 |
+
imageOffset.top += Math.ceil((image.outerHeight(FALSE) - image.height()) / 2);
|
2860 |
+
|
2861 |
+
// Add image position to offset coordinates
|
2862 |
+
result.position.left += imageOffset.left;
|
2863 |
+
result.position.top += imageOffset.top;
|
2864 |
+
|
2865 |
+
return result;
|
2866 |
+
};;PLUGINS.svg = function(api, svg, corner)
|
2867 |
+
{
|
2868 |
+
var doc = $(document),
|
2869 |
+
elem = svg[0],
|
2870 |
+
root = $(elem.ownerSVGElement),
|
2871 |
+
xScale = 1, yScale = 1,
|
2872 |
+
complex = true,
|
2873 |
+
rootWidth, rootHeight,
|
2874 |
+
mtx, transformed, viewBox,
|
2875 |
+
len, next, i, points,
|
2876 |
+
result, position, dimensions;
|
2877 |
+
|
2878 |
+
// Ascend the parentNode chain until we find an element with getBBox()
|
2879 |
+
while(!elem.getBBox) { elem = elem.parentNode; }
|
2880 |
+
if(!elem.getBBox || !elem.parentNode) { return FALSE; }
|
2881 |
+
|
2882 |
+
// Determine dimensions where possible
|
2883 |
+
rootWidth = root.attr('width') || root.width() || parseInt(root.css('width'), 10);
|
2884 |
+
rootHeight = root.attr('height') || root.height() || parseInt(root.css('height'), 10);
|
2885 |
+
|
2886 |
+
// Add stroke characteristics to scaling
|
2887 |
+
var strokeWidth2 = (parseInt(svg.css('stroke-width'), 10) || 0) / 2;
|
2888 |
+
if(strokeWidth2) {
|
2889 |
+
xScale += strokeWidth2 / rootWidth;
|
2890 |
+
yScale += strokeWidth2 / rootHeight;
|
2891 |
+
}
|
2892 |
+
|
2893 |
+
// Determine which shape calculation to use
|
2894 |
+
switch(elem.nodeName) {
|
2895 |
+
case 'ellipse':
|
2896 |
+
case 'circle':
|
2897 |
+
result = PLUGINS.polys.ellipse(
|
2898 |
+
elem.cx.baseVal.value,
|
2899 |
+
elem.cy.baseVal.value,
|
2900 |
+
(elem.rx || elem.r).baseVal.value + strokeWidth2,
|
2901 |
+
(elem.ry || elem.r).baseVal.value + strokeWidth2,
|
2902 |
+
corner
|
2903 |
+
);
|
2904 |
+
break;
|
2905 |
+
|
2906 |
+
case 'line':
|
2907 |
+
case 'polygon':
|
2908 |
+
case 'polyline':
|
2909 |
+
// Determine points object (line has none, so mimic using array)
|
2910 |
+
points = elem.points || [
|
2911 |
+
{ x: elem.x1.baseVal.value, y: elem.y1.baseVal.value },
|
2912 |
+
{ x: elem.x2.baseVal.value, y: elem.y2.baseVal.value }
|
2913 |
+
];
|
2914 |
+
|
2915 |
+
for(result = [], i = -1, len = points.numberOfItems || points.length; ++i < len;) {
|
2916 |
+
next = points.getItem ? points.getItem(i) : points[i];
|
2917 |
+
result.push.apply(result, [next.x, next.y]);
|
2918 |
+
}
|
2919 |
+
|
2920 |
+
result = PLUGINS.polys.polygon(result, corner);
|
2921 |
+
break;
|
2922 |
+
|
2923 |
+
// Unknown shape or rectangle? Use bounding box
|
2924 |
+
default:
|
2925 |
+
result = elem.getBoundingClientRect();
|
2926 |
+
result = {
|
2927 |
+
width: result.width, height: result.height,
|
2928 |
+
position: {
|
2929 |
+
left: result.left,
|
2930 |
+
top: result.top
|
2931 |
+
}
|
2932 |
+
};
|
2933 |
+
complex = false;
|
2934 |
+
break;
|
2935 |
+
}
|
2936 |
+
|
2937 |
+
// Shortcut assignments
|
2938 |
+
position = result.position;
|
2939 |
+
root = root[0];
|
2940 |
+
|
2941 |
+
// If the shape was complex (i.e. not using bounding box calculations)
|
2942 |
+
if(complex) {
|
2943 |
+
// Convert position into a pixel value
|
2944 |
+
if(root.createSVGPoint) {
|
2945 |
+
mtx = elem.getScreenCTM();
|
2946 |
+
points = root.createSVGPoint();
|
2947 |
+
|
2948 |
+
points.x = position.left;
|
2949 |
+
points.y = position.top;
|
2950 |
+
transformed = points.matrixTransform( mtx );
|
2951 |
+
position.left = transformed.x;
|
2952 |
+
position.top = transformed.y;
|
2953 |
+
}
|
2954 |
+
|
2955 |
+
// Calculate viewBox characteristics
|
2956 |
+
if(root.viewBox && (viewBox = root.viewBox.baseVal) && viewBox.width && viewBox.height) {
|
2957 |
+
xScale *= rootWidth / viewBox.width;
|
2958 |
+
yScale *= rootHeight / viewBox.height;
|
2959 |
+
}
|
2960 |
+
}
|
2961 |
+
|
2962 |
+
// Adjust by scroll offset
|
2963 |
+
position.left += doc.scrollLeft();
|
2964 |
+
position.top += doc.scrollTop();
|
2965 |
+
|
2966 |
+
return result;
|
2967 |
+
};;var MODAL, OVERLAY,
|
2968 |
+
MODALCLASS = 'qtip-modal',
|
2969 |
+
MODALSELECTOR = '.'+MODALCLASS;
|
2970 |
+
|
2971 |
+
OVERLAY = function()
|
2972 |
+
{
|
2973 |
+
var self = this,
|
2974 |
+
focusableElems = {},
|
2975 |
+
current, onLast,
|
2976 |
+
prevState, elem;
|
2977 |
+
|
2978 |
+
// Modified code from jQuery UI 1.10.0 source
|
2979 |
+
// http://code.jquery.com/ui/1.10.0/jquery-ui.js
|
2980 |
+
function focusable(element) {
|
2981 |
+
// Use the defined focusable checker when possible
|
2982 |
+
if($.expr[':'].focusable) { return $.expr[':'].focusable; }
|
2983 |
+
|
2984 |
+
var isTabIndexNotNaN = !isNaN($.attr(element, 'tabindex')),
|
2985 |
+
nodeName = element.nodeName && element.nodeName.toLowerCase(),
|
2986 |
+
map, mapName, img;
|
2987 |
+
|
2988 |
+
if('area' === nodeName) {
|
2989 |
+
map = element.parentNode;
|
2990 |
+
mapName = map.name;
|
2991 |
+
if(!element.href || !mapName || map.nodeName.toLowerCase() !== 'map') {
|
2992 |
+
return false;
|
2993 |
+
}
|
2994 |
+
img = $('img[usemap=#' + mapName + ']')[0];
|
2995 |
+
return !!img && img.is(':visible');
|
2996 |
+
}
|
2997 |
+
return (/input|select|textarea|button|object/.test( nodeName ) ?
|
2998 |
+
!element.disabled :
|
2999 |
+
'a' === nodeName ?
|
3000 |
+
element.href || isTabIndexNotNaN :
|
3001 |
+
isTabIndexNotNaN
|
3002 |
+
);
|
3003 |
+
}
|
3004 |
+
|
3005 |
+
// Focus inputs using cached focusable elements (see update())
|
3006 |
+
function focusInputs(blurElems) {
|
3007 |
+
// Blurring body element in IE causes window.open windows to unfocus!
|
3008 |
+
if(focusableElems.length < 1 && blurElems.length) { blurElems.not('body').blur(); }
|
3009 |
+
|
3010 |
+
// Focus the inputs
|
3011 |
+
else { focusableElems.first().focus(); }
|
3012 |
+
}
|
3013 |
+
|
3014 |
+
// Steal focus from elements outside tooltip
|
3015 |
+
function stealFocus(event) {
|
3016 |
+
if(!elem.is(':visible')) { return; }
|
3017 |
+
|
3018 |
+
var target = $(event.target),
|
3019 |
+
tooltip = current.tooltip,
|
3020 |
+
container = target.closest(SELECTOR),
|
3021 |
+
targetOnTop;
|
3022 |
+
|
3023 |
+
// Determine if input container target is above this
|
3024 |
+
targetOnTop = container.length < 1 ? FALSE :
|
3025 |
+
(parseInt(container[0].style.zIndex, 10) > parseInt(tooltip[0].style.zIndex, 10));
|
3026 |
+
|
3027 |
+
// If we're showing a modal, but focus has landed on an input below
|
3028 |
+
// this modal, divert focus to the first visible input in this modal
|
3029 |
+
// or if we can't find one... the tooltip itself
|
3030 |
+
if(!targetOnTop && target.closest(SELECTOR)[0] !== tooltip[0]) {
|
3031 |
+
focusInputs(target);
|
3032 |
+
}
|
3033 |
+
|
3034 |
+
// Detect when we leave the last focusable element...
|
3035 |
+
onLast = event.target === focusableElems[focusableElems.length - 1];
|
3036 |
+
}
|
3037 |
+
|
3038 |
+
$.extend(self, {
|
3039 |
+
init: function() {
|
3040 |
+
// Create document overlay
|
3041 |
+
elem = self.elem = $('<div />', {
|
3042 |
+
id: 'qtip-overlay',
|
3043 |
+
html: '<div></div>',
|
3044 |
+
mousedown: function() { return FALSE; }
|
3045 |
+
})
|
3046 |
+
.hide();
|
3047 |
+
|
3048 |
+
// Make sure we can't focus anything outside the tooltip
|
3049 |
+
$(document.body).bind('focusin'+MODALSELECTOR, stealFocus);
|
3050 |
+
|
3051 |
+
// Apply keyboard "Escape key" close handler
|
3052 |
+
$(document).bind('keydown'+MODALSELECTOR, function(event) {
|
3053 |
+
if(current && current.options.show.modal.escape && event.keyCode === 27) {
|
3054 |
+
current.hide(event);
|
3055 |
+
}
|
3056 |
+
});
|
3057 |
+
|
3058 |
+
// Apply click handler for blur option
|
3059 |
+
elem.bind('click'+MODALSELECTOR, function(event) {
|
3060 |
+
if(current && current.options.show.modal.blur) {
|
3061 |
+
current.hide(event);
|
3062 |
+
}
|
3063 |
+
});
|
3064 |
+
|
3065 |
+
return self;
|
3066 |
+
},
|
3067 |
+
|
3068 |
+
update: function(api) {
|
3069 |
+
// Update current API reference
|
3070 |
+
current = api;
|
3071 |
+
|
3072 |
+
// Update focusable elements if enabled
|
3073 |
+
if(api.options.show.modal.stealfocus !== FALSE) {
|
3074 |
+
focusableElems = api.tooltip.find('*').filter(function() {
|
3075 |
+
return focusable(this);
|
3076 |
+
});
|
3077 |
+
}
|
3078 |
+
else { focusableElems = []; }
|
3079 |
+
},
|
3080 |
+
|
3081 |
+
toggle: function(api, state, duration) {
|
3082 |
+
var docBody = $(document.body),
|
3083 |
+
tooltip = api.tooltip,
|
3084 |
+
options = api.options.show.modal,
|
3085 |
+
effect = options.effect,
|
3086 |
+
type = state ? 'show': 'hide',
|
3087 |
+
visible = elem.is(':visible'),
|
3088 |
+
visibleModals = $(MODALSELECTOR).filter(':visible:not(:animated)').not(tooltip),
|
3089 |
+
zindex;
|
3090 |
+
|
3091 |
+
// Set active tooltip API reference
|
3092 |
+
self.update(api);
|
3093 |
+
|
3094 |
+
// If the modal can steal the focus...
|
3095 |
+
// Blur the current item and focus anything in the modal we an
|
3096 |
+
if(state && options.stealfocus !== FALSE) {
|
3097 |
+
focusInputs( $(':focus') );
|
3098 |
+
}
|
3099 |
+
|
3100 |
+
// Toggle backdrop cursor style on show
|
3101 |
+
elem.toggleClass('blurs', options.blur);
|
3102 |
+
|
3103 |
+
// Append to body on show
|
3104 |
+
if(state) {
|
3105 |
+
elem.appendTo(document.body);
|
3106 |
+
}
|
3107 |
+
|
3108 |
+
// Prevent modal from conflicting with show.solo, and don't hide backdrop is other modals are visible
|
3109 |
+
if((elem.is(':animated') && visible === state && prevState !== FALSE) || (!state && visibleModals.length)) {
|
3110 |
+
return self;
|
3111 |
+
}
|
3112 |
+
|
3113 |
+
// Stop all animations
|
3114 |
+
elem.stop(TRUE, FALSE);
|
3115 |
+
|
3116 |
+
// Use custom function if provided
|
3117 |
+
if($.isFunction(effect)) {
|
3118 |
+
effect.call(elem, state);
|
3119 |
+
}
|
3120 |
+
|
3121 |
+
// If no effect type is supplied, use a simple toggle
|
3122 |
+
else if(effect === FALSE) {
|
3123 |
+
elem[ type ]();
|
3124 |
+
}
|
3125 |
+
|
3126 |
+
// Use basic fade function
|
3127 |
+
else {
|
3128 |
+
elem.fadeTo( parseInt(duration, 10) || 90, state ? 1 : 0, function() {
|
3129 |
+
if(!state) { elem.hide(); }
|
3130 |
+
});
|
3131 |
+
}
|
3132 |
+
|
3133 |
+
// Reset position and detach from body on hide
|
3134 |
+
if(!state) {
|
3135 |
+
elem.queue(function(next) {
|
3136 |
+
elem.css({ left: '', top: '' });
|
3137 |
+
if(!$(MODALSELECTOR).length) { elem.detach(); }
|
3138 |
+
next();
|
3139 |
+
});
|
3140 |
+
}
|
3141 |
+
|
3142 |
+
// Cache the state
|
3143 |
+
prevState = state;
|
3144 |
+
|
3145 |
+
// If the tooltip is destroyed, set reference to null
|
3146 |
+
if(current.destroyed) { current = NULL; }
|
3147 |
+
|
3148 |
+
return self;
|
3149 |
+
}
|
3150 |
+
});
|
3151 |
+
|
3152 |
+
self.init();
|
3153 |
+
};
|
3154 |
+
OVERLAY = new OVERLAY();
|
3155 |
+
|
3156 |
+
function Modal(api, options) {
|
3157 |
+
this.options = options;
|
3158 |
+
this._ns = '-modal';
|
3159 |
+
|
3160 |
+
this.init( (this.qtip = api) );
|
3161 |
+
}
|
3162 |
+
|
3163 |
+
$.extend(Modal.prototype, {
|
3164 |
+
init: function(qtip) {
|
3165 |
+
var tooltip = qtip.tooltip;
|
3166 |
+
|
3167 |
+
// If modal is disabled... return
|
3168 |
+
if(!this.options.on) { return this; }
|
3169 |
+
|
3170 |
+
// Set overlay reference
|
3171 |
+
qtip.elements.overlay = OVERLAY.elem;
|
3172 |
+
|
3173 |
+
// Add unique attribute so we can grab modal tooltips easily via a SELECTOR, and set z-index
|
3174 |
+
tooltip.addClass(MODALCLASS).css('z-index', QTIP.modal_zindex + $(MODALSELECTOR).length);
|
3175 |
+
|
3176 |
+
// Apply our show/hide/focus modal events
|
3177 |
+
qtip._bind(tooltip, ['tooltipshow', 'tooltiphide'], function(event, api, duration) {
|
3178 |
+
var oEvent = event.originalEvent;
|
3179 |
+
|
3180 |
+
// Make sure mouseout doesn't trigger a hide when showing the modal and mousing onto backdrop
|
3181 |
+
if(event.target === tooltip[0]) {
|
3182 |
+
if(oEvent && event.type === 'tooltiphide' && /mouse(leave|enter)/.test(oEvent.type) && $(oEvent.relatedTarget).closest(OVERLAY.elem[0]).length) {
|
3183 |
+
try { event.preventDefault(); } catch(e) {}
|
3184 |
+
}
|
3185 |
+
else if(!oEvent || (oEvent && oEvent.type !== 'tooltipsolo')) {
|
3186 |
+
this.toggle(event, event.type === 'tooltipshow', duration);
|
3187 |
+
}
|
3188 |
+
}
|
3189 |
+
}, this._ns, this);
|
3190 |
+
|
3191 |
+
// Adjust modal z-index on tooltip focus
|
3192 |
+
qtip._bind(tooltip, 'tooltipfocus', function(event, api) {
|
3193 |
+
// If focus was cancelled before it reached us, don't do anything
|
3194 |
+
if(event.isDefaultPrevented() || event.target !== tooltip[0]) { return; }
|
3195 |
+
|
3196 |
+
var qtips = $(MODALSELECTOR),
|
3197 |
+
|
3198 |
+
// Keep the modal's lower than other, regular qtips
|
3199 |
+
newIndex = QTIP.modal_zindex + qtips.length,
|
3200 |
+
curIndex = parseInt(tooltip[0].style.zIndex, 10);
|
3201 |
+
|
3202 |
+
// Set overlay z-index
|
3203 |
+
OVERLAY.elem[0].style.zIndex = newIndex - 1;
|
3204 |
+
|
3205 |
+
// Reduce modal z-index's and keep them properly ordered
|
3206 |
+
qtips.each(function() {
|
3207 |
+
if(this.style.zIndex > curIndex) {
|
3208 |
+
this.style.zIndex -= 1;
|
3209 |
+
}
|
3210 |
+
});
|
3211 |
+
|
3212 |
+
// Fire blur event for focused tooltip
|
3213 |
+
qtips.filter('.' + CLASS_FOCUS).qtip('blur', event.originalEvent);
|
3214 |
+
|
3215 |
+
// Set the new z-index
|
3216 |
+
tooltip.addClass(CLASS_FOCUS)[0].style.zIndex = newIndex;
|
3217 |
+
|
3218 |
+
// Set current
|
3219 |
+
OVERLAY.update(api);
|
3220 |
+
|
3221 |
+
// Prevent default handling
|
3222 |
+
try { event.preventDefault(); } catch(e) {}
|
3223 |
+
}, this._ns, this);
|
3224 |
+
|
3225 |
+
// Focus any other visible modals when this one hides
|
3226 |
+
qtip._bind(tooltip, 'tooltiphide', function(event) {
|
3227 |
+
if(event.target === tooltip[0]) {
|
3228 |
+
$(MODALSELECTOR).filter(':visible').not(tooltip).last().qtip('focus', event);
|
3229 |
+
}
|
3230 |
+
}, this._ns, this);
|
3231 |
+
},
|
3232 |
+
|
3233 |
+
toggle: function(event, state, duration) {
|
3234 |
+
// Make sure default event hasn't been prevented
|
3235 |
+
if(event && event.isDefaultPrevented()) { return this; }
|
3236 |
+
|
3237 |
+
// Toggle it
|
3238 |
+
OVERLAY.toggle(this.qtip, !!state, duration);
|
3239 |
+
},
|
3240 |
+
|
3241 |
+
destroy: function() {
|
3242 |
+
// Remove modal class
|
3243 |
+
this.qtip.tooltip.removeClass(MODALCLASS);
|
3244 |
+
|
3245 |
+
// Remove bound events
|
3246 |
+
this.qtip._unbind(this.qtip.tooltip, this._ns);
|
3247 |
+
|
3248 |
+
// Delete element reference
|
3249 |
+
OVERLAY.toggle(this.qtip, FALSE);
|
3250 |
+
delete this.qtip.elements.overlay;
|
3251 |
+
}
|
3252 |
+
});
|
3253 |
+
|
3254 |
+
|
3255 |
+
MODAL = PLUGINS.modal = function(api) {
|
3256 |
+
return new Modal(api, api.options.show.modal);
|
3257 |
+
};
|
3258 |
+
|
3259 |
+
// Setup sanitiztion rules
|
3260 |
+
MODAL.sanitize = function(opts) {
|
3261 |
+
if(opts.show) {
|
3262 |
+
if(typeof opts.show.modal !== 'object') { opts.show.modal = { on: !!opts.show.modal }; }
|
3263 |
+
else if(typeof opts.show.modal.on === 'undefined') { opts.show.modal.on = TRUE; }
|
3264 |
+
}
|
3265 |
+
};
|
3266 |
+
|
3267 |
+
// Base z-index for all modal tooltips (use qTip core z-index as a base)
|
3268 |
+
QTIP.modal_zindex = QTIP.zindex - 200;
|
3269 |
+
|
3270 |
+
// Plugin needs to be initialized on render
|
3271 |
+
MODAL.initialize = 'render';
|
3272 |
+
|
3273 |
+
// Setup option set checks
|
3274 |
+
CHECKS.modal = {
|
3275 |
+
'^show.modal.(on|blur)$': function() {
|
3276 |
+
// Initialise
|
3277 |
+
this.destroy();
|
3278 |
+
this.init();
|
3279 |
+
|
3280 |
+
// Show the modal if not visible already and tooltip is visible
|
3281 |
+
this.qtip.elems.overlay.toggle(
|
3282 |
+
this.qtip.tooltip[0].offsetWidth > 0
|
3283 |
+
);
|
3284 |
+
}
|
3285 |
+
};
|
3286 |
+
|
3287 |
+
// Extend original api defaults
|
3288 |
+
$.extend(TRUE, QTIP.defaults, {
|
3289 |
+
show: {
|
3290 |
+
modal: {
|
3291 |
+
on: FALSE,
|
3292 |
+
effect: TRUE,
|
3293 |
+
blur: TRUE,
|
3294 |
+
stealfocus: TRUE,
|
3295 |
+
escape: TRUE
|
3296 |
+
}
|
3297 |
+
}
|
3298 |
+
});
|
3299 |
+
;}));
|
3300 |
+
}( window, document ));
|
3301 |
+
|
3302 |
+
|
admin/includes/tooltips/jquery.qtip.min.css
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
-
/* qTip2 v2.2.0 css3 | qtip2.com | Licensed MIT, GPL | Sun Mar 16 2014 07:12:39 */
|
2 |
.qtip{position:absolute;left:-28000px;top:-28000px;display:none;max-width:280px;min-width:50px;font-size:10.5px;line-height:12px;direction:ltr;box-shadow:none;padding:0}.qtip-content{position:relative;padding:5px 9px;overflow:hidden;text-align:left;word-wrap:break-word}.qtip-titlebar{position:relative;padding:5px 35px 5px 10px;overflow:hidden;border-width:0 0 1px;font-weight:700}.qtip-titlebar+.qtip-content{border-top-width:0!important}.qtip-close{position:absolute;right:-9px;top:-9px;cursor:pointer;outline:medium none;border-width:1px;border-style:solid;border-color:transparent}.qtip-titlebar .qtip-close{right:4px;top:50%;margin-top:-9px}* html .qtip-titlebar .qtip-close{top:16px}.qtip-titlebar .ui-icon,.qtip-icon .ui-icon{display:block;text-indent:-1000em;direction:ltr}.qtip-icon,.qtip-icon .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;text-decoration:none}.qtip-icon .ui-icon{width:18px;height:14px;line-height:14px;text-align:center;text-indent:0;font:400 bold 10px/13px Tahoma,sans-serif;color:inherit;background:transparent none no-repeat -100em -100em}.qtip-focus{}.qtip-hover{}.qtip-default{border-width:1px;border-style:solid;border-color:#F1D031;background-color:#FFFFA3;color:#555}.qtip-default .qtip-titlebar{background-color:#FFEF93}.qtip-default .qtip-icon{border-color:#CCC;background:#F1F1F1;color:#777}.qtip-default .qtip-titlebar .qtip-close{border-color:#AAA;color:#111}.qtip-shadow{-webkit-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);-moz-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);box-shadow:1px 1px 3px 1px rgba(0,0,0,.15)}.qtip-rounded,.qtip-tipsy,.qtip-bootstrap{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.qtip-rounded .qtip-titlebar{-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.qtip-youtube{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 3px #333;-moz-box-shadow:0 0 3px #333;box-shadow:0 0 3px #333;color:#fff;border-width:0;background:#4A4A4A;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4A4A4A),color-stop(100%,#000));background-image:-webkit-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-moz-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-ms-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-o-linear-gradient(top,#4A4A4A 0,#000 100%)}.qtip-youtube .qtip-titlebar{background-color:#4A4A4A;background-color:rgba(0,0,0,0)}.qtip-youtube .qtip-content{padding:.75em;font:12px arial,sans-serif;filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);-ms-filter:"progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);"}.qtip-youtube .qtip-icon{border-color:#222}.qtip-youtube .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-jtools{background:#232323;background:rgba(0,0,0,.7);background-image:-webkit-gradient(linear,left top,left bottom,from(#717171),to(#232323));background-image:-moz-linear-gradient(top,#717171,#232323);background-image:-webkit-linear-gradient(top,#717171,#232323);background-image:-ms-linear-gradient(top,#717171,#232323);background-image:-o-linear-gradient(top,#717171,#232323);border:2px solid #ddd;border:2px solid rgba(241,241,241,1);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 12px #333;-moz-box-shadow:0 0 12px #333;box-shadow:0 0 12px #333}.qtip-jtools .qtip-titlebar{background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A)"}.qtip-jtools .qtip-content{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323)"}.qtip-jtools .qtip-titlebar,.qtip-jtools .qtip-content{background:transparent;color:#fff;border:0 dashed transparent}.qtip-jtools .qtip-icon{border-color:#555}.qtip-jtools .qtip-titlebar .ui-state-hover{border-color:#333}.qtip-cluetip{-webkit-box-shadow:4px 4px 5px rgba(0,0,0,.4);-moz-box-shadow:4px 4px 5px rgba(0,0,0,.4);box-shadow:4px 4px 5px rgba(0,0,0,.4);background-color:#D9D9C2;color:#111;border:0 dashed transparent}.qtip-cluetip .qtip-titlebar{background-color:#87876A;color:#fff;border:0 dashed transparent}.qtip-cluetip .qtip-icon{border-color:#808064}.qtip-cluetip .qtip-titlebar .ui-state-hover{border-color:#696952;color:#696952}.qtip-tipsy{background:#000;background:rgba(0,0,0,.87);color:#fff;border:0 solid transparent;font-size:11px;font-family:'Lucida Grande',sans-serif;font-weight:700;line-height:16px;text-shadow:0 1px #000}.qtip-tipsy .qtip-titlebar{padding:6px 35px 0 10px;background-color:transparent}.qtip-tipsy .qtip-content{padding:6px 10px}.qtip-tipsy .qtip-icon{border-color:#222;text-shadow:none}.qtip-tipsy .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-tipped{border:3px solid #959FA9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#F9F9F9;color:#454545;font-weight:400;font-family:serif}.qtip-tipped .qtip-titlebar{border-bottom-width:0;color:#fff;background:#3A79B8;background-image:-webkit-gradient(linear,left top,left bottom,from(#3A79B8),to(#2E629D));background-image:-webkit-linear-gradient(top,#3A79B8,#2E629D);background-image:-moz-linear-gradient(top,#3A79B8,#2E629D);background-image:-ms-linear-gradient(top,#3A79B8,#2E629D);background-image:-o-linear-gradient(top,#3A79B8,#2E629D);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D)"}.qtip-tipped .qtip-icon{border:2px solid #285589;background:#285589}.qtip-tipped .qtip-icon .ui-icon{background-color:#FBFBFB;color:#555}.qtip-bootstrap{font-size:14px;line-height:20px;color:#333;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.qtip-bootstrap .qtip-titlebar{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.qtip-bootstrap .qtip-titlebar .qtip-close{right:11px;top:45%;border-style:none}.qtip-bootstrap .qtip-content{padding:9px 14px}.qtip-bootstrap .qtip-icon{background:transparent}.qtip-bootstrap .qtip-icon .ui-icon{width:auto;height:auto;float:right;font-size:20px;font-weight:700;line-height:18px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.qtip-bootstrap .qtip-icon .ui-icon:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}.qtip:not(.ie9haxors) div.qtip-content,.qtip:not(.ie9haxors) div.qtip-titlebar{filter:none;-ms-filter:none}.qtip .qtip-tip{margin:0 auto;overflow:hidden;z-index:10}x:-o-prefocus,.qtip .qtip-tip{visibility:hidden}.qtip .qtip-tip,.qtip .qtip-tip .qtip-vml,.qtip .qtip-tip canvas{position:absolute;color:#123456;background:transparent;border:0 dashed transparent}.qtip .qtip-tip canvas{top:0;left:0}.qtip .qtip-tip .qtip-vml{behavior:url(#default#VML);display:inline-block;visibility:visible}#qtip-overlay{position:fixed;left:0;top:0;width:100%;height:100%}#qtip-overlay.blurs{cursor:pointer}#qtip-overlay div{position:absolute;left:0;top:0;width:100%;height:100%;background-color:#000;opacity:.7;filter:alpha(opacity=70);-ms-filter:"alpha(Opacity=70)"}
|
1 |
+
/* qTip2 v2.2.0 css3 | qtip2.com | Licensed MIT, GPL | Sun Mar 16 2014 07:12:39 */
|
2 |
.qtip{position:absolute;left:-28000px;top:-28000px;display:none;max-width:280px;min-width:50px;font-size:10.5px;line-height:12px;direction:ltr;box-shadow:none;padding:0}.qtip-content{position:relative;padding:5px 9px;overflow:hidden;text-align:left;word-wrap:break-word}.qtip-titlebar{position:relative;padding:5px 35px 5px 10px;overflow:hidden;border-width:0 0 1px;font-weight:700}.qtip-titlebar+.qtip-content{border-top-width:0!important}.qtip-close{position:absolute;right:-9px;top:-9px;cursor:pointer;outline:medium none;border-width:1px;border-style:solid;border-color:transparent}.qtip-titlebar .qtip-close{right:4px;top:50%;margin-top:-9px}* html .qtip-titlebar .qtip-close{top:16px}.qtip-titlebar .ui-icon,.qtip-icon .ui-icon{display:block;text-indent:-1000em;direction:ltr}.qtip-icon,.qtip-icon .ui-icon{-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;text-decoration:none}.qtip-icon .ui-icon{width:18px;height:14px;line-height:14px;text-align:center;text-indent:0;font:400 bold 10px/13px Tahoma,sans-serif;color:inherit;background:transparent none no-repeat -100em -100em}.qtip-focus{}.qtip-hover{}.qtip-default{border-width:1px;border-style:solid;border-color:#F1D031;background-color:#FFFFA3;color:#555}.qtip-default .qtip-titlebar{background-color:#FFEF93}.qtip-default .qtip-icon{border-color:#CCC;background:#F1F1F1;color:#777}.qtip-default .qtip-titlebar .qtip-close{border-color:#AAA;color:#111}.qtip-shadow{-webkit-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);-moz-box-shadow:1px 1px 3px 1px rgba(0,0,0,.15);box-shadow:1px 1px 3px 1px rgba(0,0,0,.15)}.qtip-rounded,.qtip-tipsy,.qtip-bootstrap{-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.qtip-rounded .qtip-titlebar{-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0}.qtip-youtube{-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 3px #333;-moz-box-shadow:0 0 3px #333;box-shadow:0 0 3px #333;color:#fff;border-width:0;background:#4A4A4A;background-image:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4A4A4A),color-stop(100%,#000));background-image:-webkit-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-moz-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-ms-linear-gradient(top,#4A4A4A 0,#000 100%);background-image:-o-linear-gradient(top,#4A4A4A 0,#000 100%)}.qtip-youtube .qtip-titlebar{background-color:#4A4A4A;background-color:rgba(0,0,0,0)}.qtip-youtube .qtip-content{padding:.75em;font:12px arial,sans-serif;filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);-ms-filter:"progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr=#4a4a4a, EndColorStr=#000000);"}.qtip-youtube .qtip-icon{border-color:#222}.qtip-youtube .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-jtools{background:#232323;background:rgba(0,0,0,.7);background-image:-webkit-gradient(linear,left top,left bottom,from(#717171),to(#232323));background-image:-moz-linear-gradient(top,#717171,#232323);background-image:-webkit-linear-gradient(top,#717171,#232323);background-image:-ms-linear-gradient(top,#717171,#232323);background-image:-o-linear-gradient(top,#717171,#232323);border:2px solid #ddd;border:2px solid rgba(241,241,241,1);-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 0 12px #333;-moz-box-shadow:0 0 12px #333;box-shadow:0 0 12px #333}.qtip-jtools .qtip-titlebar{background-color:transparent;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#717171, endColorstr=#4A4A4A)"}.qtip-jtools .qtip-content{filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#4A4A4A, endColorstr=#232323)"}.qtip-jtools .qtip-titlebar,.qtip-jtools .qtip-content{background:transparent;color:#fff;border:0 dashed transparent}.qtip-jtools .qtip-icon{border-color:#555}.qtip-jtools .qtip-titlebar .ui-state-hover{border-color:#333}.qtip-cluetip{-webkit-box-shadow:4px 4px 5px rgba(0,0,0,.4);-moz-box-shadow:4px 4px 5px rgba(0,0,0,.4);box-shadow:4px 4px 5px rgba(0,0,0,.4);background-color:#D9D9C2;color:#111;border:0 dashed transparent}.qtip-cluetip .qtip-titlebar{background-color:#87876A;color:#fff;border:0 dashed transparent}.qtip-cluetip .qtip-icon{border-color:#808064}.qtip-cluetip .qtip-titlebar .ui-state-hover{border-color:#696952;color:#696952}.qtip-tipsy{background:#000;background:rgba(0,0,0,.87);color:#fff;border:0 solid transparent;font-size:11px;font-family:'Lucida Grande',sans-serif;font-weight:700;line-height:16px;text-shadow:0 1px #000}.qtip-tipsy .qtip-titlebar{padding:6px 35px 0 10px;background-color:transparent}.qtip-tipsy .qtip-content{padding:6px 10px}.qtip-tipsy .qtip-icon{border-color:#222;text-shadow:none}.qtip-tipsy .qtip-titlebar .ui-state-hover{border-color:#303030}.qtip-tipped{border:3px solid #959FA9;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;background-color:#F9F9F9;color:#454545;font-weight:400;font-family:serif}.qtip-tipped .qtip-titlebar{border-bottom-width:0;color:#fff;background:#3A79B8;background-image:-webkit-gradient(linear,left top,left bottom,from(#3A79B8),to(#2E629D));background-image:-webkit-linear-gradient(top,#3A79B8,#2E629D);background-image:-moz-linear-gradient(top,#3A79B8,#2E629D);background-image:-ms-linear-gradient(top,#3A79B8,#2E629D);background-image:-o-linear-gradient(top,#3A79B8,#2E629D);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D);-ms-filter:"progid:DXImageTransform.Microsoft.gradient(startColorstr=#3A79B8, endColorstr=#2E629D)"}.qtip-tipped .qtip-icon{border:2px solid #285589;background:#285589}.qtip-tipped .qtip-icon .ui-icon{background-color:#FBFBFB;color:#555}.qtip-bootstrap{font-size:14px;line-height:20px;color:#333;padding:1px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.qtip-bootstrap .qtip-titlebar{padding:8px 14px;margin:0;font-size:14px;font-weight:400;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 0}.qtip-bootstrap .qtip-titlebar .qtip-close{right:11px;top:45%;border-style:none}.qtip-bootstrap .qtip-content{padding:9px 14px}.qtip-bootstrap .qtip-icon{background:transparent}.qtip-bootstrap .qtip-icon .ui-icon{width:auto;height:auto;float:right;font-size:20px;font-weight:700;line-height:18px;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.qtip-bootstrap .qtip-icon .ui-icon:hover{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}.qtip:not(.ie9haxors) div.qtip-content,.qtip:not(.ie9haxors) div.qtip-titlebar{filter:none;-ms-filter:none}.qtip .qtip-tip{margin:0 auto;overflow:hidden;z-index:10}x:-o-prefocus,.qtip .qtip-tip{visibility:hidden}.qtip .qtip-tip,.qtip .qtip-tip .qtip-vml,.qtip .qtip-tip canvas{position:absolute;color:#123456;background:transparent;border:0 dashed transparent}.qtip .qtip-tip canvas{top:0;left:0}.qtip .qtip-tip .qtip-vml{behavior:url(#default#VML);display:inline-block;visibility:visible}#qtip-overlay{position:fixed;left:0;top:0;width:100%;height:100%}#qtip-overlay.blurs{cursor:pointer}#qtip-overlay div{position:absolute;left:0;top:0;width:100%;height:100%;background-color:#000;opacity:.7;filter:alpha(opacity=70);-ms-filter:"alpha(Opacity=70)"}
|
admin/includes/tooltips/jquery.qtip.min.js
CHANGED
@@ -1,5 +1,4 @@
|
|
1 |
-
/* qTip2 v2.2.0 tips viewport imagemap svg modal | qtip2.com | Licensed MIT, GPL | Sun Mar 16 2014 07:12:37 */
|
2 |
-
|
3 |
-
!function(a,b,c){!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):jQuery&&!jQuery.fn.qtip&&a(jQuery)}(function(d){"use strict";function e(a,b,c,e){this.id=c,this.target=a,this.tooltip=F,this.elements={target:a},this._id=S+"-"+c,this.timers={img:{}},this.options=b,this.plugins={},this.cache={event:{},target:d(),disabled:E,attr:e,onTooltip:E,lastClass:""},this.rendered=this.destroyed=this.disabled=this.waiting=this.hiddenDuringWait=this.positioning=this.triggering=E}function f(a){return a===F||"object"!==d.type(a)}function g(a){return!(d.isFunction(a)||a&&a.attr||a.length||"object"===d.type(a)&&(a.jquery||a.then))}function h(a){var b,c,e,h;return f(a)?E:(f(a.metadata)&&(a.metadata={type:a.metadata}),"content"in a&&(b=a.content,f(b)||b.jquery||b.done?b=a.content={text:c=g(b)?E:b}:c=b.text,"ajax"in b&&(e=b.ajax,h=e&&e.once!==E,delete b.ajax,b.text=function(a,b){var f=c||d(this).attr(b.options.content.attr)||"Loading...",g=d.ajax(d.extend({},e,{context:b})).then(e.success,F,e.error).then(function(a){return a&&h&&b.set("content.text",a),a},function(a,c,d){b.destroyed||0===a.status||b.set("content.text",c+": "+d)});return h?f:(b.set("content.text",f),g)}),"title"in b&&(f(b.title)||(b.button=b.title.button,b.title=b.title.text),g(b.title||E)&&(b.title=E))),"position"in a&&f(a.position)&&(a.position={my:a.position,at:a.position}),"show"in a&&f(a.show)&&(a.show=a.show.jquery?{target:a.show}:a.show===D?{ready:D}:{event:a.show}),"hide"in a&&f(a.hide)&&(a.hide=a.hide.jquery?{target:a.hide}:{event:a.hide}),"style"in a&&f(a.style)&&(a.style={classes:a.style}),d.each(R,function(){this.sanitize&&this.sanitize(a)}),a)}function i(a,b){for(var c,d=0,e=a,f=b.split(".");e=e[f[d++]];)d<f.length&&(c=e);return[c||a,f.pop()]}function j(a,b){var c,d,e;for(c in this.checks)for(d in this.checks[c])(e=new RegExp(d,"i").exec(a))&&(b.push(e),("builtin"===c||this.plugins[c])&&this.checks[c][d].apply(this.plugins[c]||this,b))}function k(a){return V.concat("").join(a?"-"+a+" ":" ")}function l(c){return c&&{type:c.type,pageX:c.pageX,pageY:c.pageY,target:c.target,relatedTarget:c.relatedTarget,scrollX:c.scrollX||a.pageXOffset||b.body.scrollLeft||b.documentElement.scrollLeft,scrollY:c.scrollY||a.pageYOffset||b.body.scrollTop||b.documentElement.scrollTop}||{}}function m(a,b){return b>0?setTimeout(d.proxy(a,this),b):(a.call(this),void 0)}function n(a){return this.tooltip.hasClass(ab)?E:(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this.timers.show=m.call(this,function(){this.toggle(D,a)},this.options.show.delay),void 0)}function o(a){if(this.tooltip.hasClass(ab))return E;var b=d(a.relatedTarget),c=b.closest(W)[0]===this.tooltip[0],e=b[0]===this.options.show.target[0];if(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this!==b[0]&&"mouse"===this.options.position.target&&c||this.options.hide.fixed&&/mouse(out|leave|move)/.test(a.type)&&(c||e))try{a.preventDefault(),a.stopImmediatePropagation()}catch(f){}else this.timers.hide=m.call(this,function(){this.toggle(E,a)},this.options.hide.delay,this)}function p(a){return this.tooltip.hasClass(ab)||!this.options.hide.inactive?E:(clearTimeout(this.timers.inactive),this.timers.inactive=m.call(this,function(){this.hide(a)},this.options.hide.inactive),void 0)}function q(a){this.rendered&&this.tooltip[0].offsetWidth>0&&this.reposition(a)}function r(a,c,e){d(b.body).delegate(a,(c.split?c:c.join(hb+" "))+hb,function(){var a=y.api[d.attr(this,U)];a&&!a.disabled&&e.apply(a,arguments)})}function s(a,c,f){var g,i,j,k,l,m=d(b.body),n=a[0]===b?m:a,o=a.metadata?a.metadata(f.metadata):F,p="html5"===f.metadata.type&&o?o[f.metadata.name]:F,q=a.data(f.metadata.name||"qtipopts");try{q="string"==typeof q?d.parseJSON(q):q}catch(r){}if(k=d.extend(D,{},y.defaults,f,"object"==typeof q?h(q):F,h(p||o)),i=k.position,k.id=c,"boolean"==typeof k.content.text){if(j=a.attr(k.content.attr),k.content.attr===E||!j)return E;k.content.text=j}if(i.container.length||(i.container=m),i.target===E&&(i.target=n),k.show.target===E&&(k.show.target=n),k.show.solo===D&&(k.show.solo=i.container.closest("body")),k.hide.target===E&&(k.hide.target=n),k.position.viewport===D&&(k.position.viewport=i.container),i.container=i.container.eq(0),i.at=new A(i.at,D),i.my=new A(i.my),a.data(S))if(k.overwrite)a.qtip("destroy",!0);else if(k.overwrite===E)return E;return a.attr(T,c),k.suppress&&(l=a.attr("title"))&&a.removeAttr("title").attr(cb,l).attr("title",""),g=new e(a,k,c,!!j),a.data(S,g),a.one("remove.qtip-"+c+" removeqtip.qtip-"+c,function(){var a;(a=d(this).data(S))&&a.destroy(!0)}),g}function t(a){return a.charAt(0).toUpperCase()+a.slice(1)}function u(a,b){var d,e,f=b.charAt(0).toUpperCase()+b.slice(1),g=(b+" "+sb.join(f+" ")+f).split(" "),h=0;if(rb[b])return a.css(rb[b]);for(;d=g[h++];)if((e=a.css(d))!==c)return rb[b]=d,e}function v(a,b){return Math.ceil(parseFloat(u(a,b)))}function w(a,b){this._ns="tip",this.options=b,this.offset=b.offset,this.size=[b.width,b.height],this.init(this.qtip=a)}function x(a,b){this.options=b,this._ns="-modal",this.init(this.qtip=a)}var y,z,A,B,C,D=!0,E=!1,F=null,G="x",H="y",I="width",J="height",K="top",L="left",M="bottom",N="right",O="center",P="flipinvert",Q="shift",R={},S="qtip",T="data-hasqtip",U="data-qtip-id",V=["ui-widget","ui-tooltip"],W="."+S,X="click dblclick mousedown mouseup mousemove mouseleave mouseenter".split(" "),Y=S+"-fixed",Z=S+"-default",$=S+"-focus",_=S+"-hover",ab=S+"-disabled",bb="_replacedByqTip",cb="oldtitle",db={ie:function(){for(var a=3,c=b.createElement("div");(c.innerHTML="<!--[if gt IE "+ ++a+"]><i></i><![endif]-->")&&c.getElementsByTagName("i")[0];);return a>4?a:0/0}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||E};z=e.prototype,z._when=function(a){return d.when.apply(d,a)},z.render=function(a){if(this.rendered||this.destroyed)return this;var b,c=this,e=this.options,f=this.cache,g=this.elements,h=e.content.text,i=e.content.title,j=e.content.button,k=e.position,l=("."+this._id+" ",[]);return d.attr(this.target[0],"aria-describedby",this._id),this.tooltip=g.tooltip=b=d("<div/>",{id:this._id,"class":[S,Z,e.style.classes,S+"-pos-"+e.position.my.abbrev()].join(" "),width:e.style.width||"",height:e.style.height||"",tracking:"mouse"===k.target&&k.adjust.mouse,role:"alert","aria-live":"polite","aria-atomic":E,"aria-describedby":this._id+"-content","aria-hidden":D}).toggleClass(ab,this.disabled).attr(U,this.id).data(S,this).appendTo(k.container).append(g.content=d("<div />",{"class":S+"-content",id:this._id+"-content","aria-atomic":D})),this.rendered=-1,this.positioning=D,i&&(this._createTitle(),d.isFunction(i)||l.push(this._updateTitle(i,E))),j&&this._createButton(),d.isFunction(h)||l.push(this._updateContent(h,E)),this.rendered=D,this._setWidget(),d.each(R,function(a){var b;"render"===this.initialize&&(b=this(c))&&(c.plugins[a]=b)}),this._unassignEvents(),this._assignEvents(),this._when(l).then(function(){c._trigger("render"),c.positioning=E,c.hiddenDuringWait||!e.show.ready&&!a||c.toggle(D,f.event,E),c.hiddenDuringWait=E}),y.api[this.id]=this,this},z.destroy=function(a){function b(){if(!this.destroyed){this.destroyed=D;var a=this.target,b=a.attr(cb);this.rendered&&this.tooltip.stop(1,0).find("*").remove().end().remove(),d.each(this.plugins,function(){this.destroy&&this.destroy()}),clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this._unassignEvents(),a.removeData(S).removeAttr(U).removeAttr(T).removeAttr("aria-describedby"),this.options.suppress&&b&&a.attr("title",b).removeAttr(cb),this._unbind(a),this.options=this.elements=this.cache=this.timers=this.plugins=this.mouse=F,delete y.api[this.id]}}return this.destroyed?this.target:(a===D&&"hide"!==this.triggering||!this.rendered?b.call(this):(this.tooltip.one("tooltiphidden",d.proxy(b,this)),!this.triggering&&this.hide()),this.target)},B=z.checks={builtin:{"^id$":function(a,b,c,e){var f=c===D?y.nextid:c,g=S+"-"+f;f!==E&&f.length>0&&!d("#"+g).length?(this._id=g,this.rendered&&(this.tooltip[0].id=this._id,this.elements.content[0].id=this._id+"-content",this.elements.title[0].id=this._id+"-title")):a[b]=e},"^prerender":function(a,b,c){c&&!this.rendered&&this.render(this.options.show.ready)},"^content.text$":function(a,b,c){this._updateContent(c)},"^content.attr$":function(a,b,c,d){this.options.content.text===this.target.attr(d)&&this._updateContent(this.target.attr(c))},"^content.title$":function(a,b,c){return c?(c&&!this.elements.title&&this._createTitle(),this._updateTitle(c),void 0):this._removeTitle()},"^content.button$":function(a,b,c){this._updateButton(c)},"^content.title.(text|button)$":function(a,b,c){this.set("content."+b,c)},"^position.(my|at)$":function(a,b,c){"string"==typeof c&&(a[b]=new A(c,"at"===b))},"^position.container$":function(a,b,c){this.rendered&&this.tooltip.appendTo(c)},"^show.ready$":function(a,b,c){c&&(!this.rendered&&this.render(D)||this.toggle(D))},"^style.classes$":function(a,b,c,d){this.rendered&&this.tooltip.removeClass(d).addClass(c)},"^style.(width|height)":function(a,b,c){this.rendered&&this.tooltip.css(b,c)},"^style.widget|content.title":function(){this.rendered&&this._setWidget()},"^style.def":function(a,b,c){this.rendered&&this.tooltip.toggleClass(Z,!!c)},"^events.(render|show|move|hide|focus|blur)$":function(a,b,c){this.rendered&&this.tooltip[(d.isFunction(c)?"":"un")+"bind"]("tooltip"+b,c)},"^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)":function(){if(this.rendered){var a=this.options.position;this.tooltip.attr("tracking","mouse"===a.target&&a.adjust.mouse),this._unassignEvents(),this._assignEvents()}}}},z.get=function(a){if(this.destroyed)return this;var b=i(this.options,a.toLowerCase()),c=b[0][b[1]];return c.precedance?c.string():c};var eb=/^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,fb=/^prerender|show\.ready/i;z.set=function(a,b){if(this.destroyed)return this;{var c,e=this.rendered,f=E,g=this.options;this.checks}return"string"==typeof a?(c=a,a={},a[c]=b):a=d.extend({},a),d.each(a,function(b,c){if(e&&fb.test(b))return delete a[b],void 0;var h,j=i(g,b.toLowerCase());h=j[0][j[1]],j[0][j[1]]=c&&c.nodeType?d(c):c,f=eb.test(b)||f,a[b]=[j[0],j[1],c,h]}),h(g),this.positioning=D,d.each(a,d.proxy(j,this)),this.positioning=E,this.rendered&&this.tooltip[0].offsetWidth>0&&f&&this.reposition("mouse"===g.position.target?F:this.cache.event),this},z._update=function(a,b){var c=this,e=this.cache;return this.rendered&&a?(d.isFunction(a)&&(a=a.call(this.elements.target,e.event,this)||""),d.isFunction(a.then)?(e.waiting=D,a.then(function(a){return e.waiting=E,c._update(a,b)},F,function(a){return c._update(a,b)})):a===E||!a&&""!==a?E:(a.jquery&&a.length>0?b.empty().append(a.css({display:"block",visibility:"visible"})):b.html(a),this._waitForContent(b).then(function(a){a.images&&a.images.length&&c.rendered&&c.tooltip[0].offsetWidth>0&&c.reposition(e.event,!a.length)}))):E},z._waitForContent=function(a){var b=this.cache;return b.waiting=D,(d.fn.imagesLoaded?a.imagesLoaded():d.Deferred().resolve([])).done(function(){b.waiting=E}).promise()},z._updateContent=function(a,b){this._update(a,this.elements.content,b)},z._updateTitle=function(a,b){this._update(a,this.elements.title,b)===E&&this._removeTitle(E)},z._createTitle=function(){var a=this.elements,b=this._id+"-title";a.titlebar&&this._removeTitle(),a.titlebar=d("<div />",{"class":S+"-titlebar "+(this.options.style.widget?k("header"):"")}).append(a.title=d("<div />",{id:b,"class":S+"-title","aria-atomic":D})).insertBefore(a.content).delegate(".qtip-close","mousedown keydown mouseup keyup mouseout",function(a){d(this).toggleClass("ui-state-active ui-state-focus","down"===a.type.substr(-4))}).delegate(".qtip-close","mouseover mouseout",function(a){d(this).toggleClass("ui-state-hover","mouseover"===a.type)}),this.options.content.button&&this._createButton()},z._removeTitle=function(a){var b=this.elements;b.title&&(b.titlebar.remove(),b.titlebar=b.title=b.button=F,a!==E&&this.reposition())},z.reposition=function(c,e){if(!this.rendered||this.positioning||this.destroyed)return this;this.positioning=D;var f,g,h=this.cache,i=this.tooltip,j=this.options.position,k=j.target,l=j.my,m=j.at,n=j.viewport,o=j.container,p=j.adjust,q=p.method.split(" "),r=i.outerWidth(E),s=i.outerHeight(E),t=0,u=0,v=i.css("position"),w={left:0,top:0},x=i[0].offsetWidth>0,y=c&&"scroll"===c.type,z=d(a),A=o[0].ownerDocument,B=this.mouse;if(d.isArray(k)&&2===k.length)m={x:L,y:K},w={left:k[0],top:k[1]};else if("mouse"===k)m={x:L,y:K},!B||!B.pageX||!p.mouse&&c&&c.pageX?c&&c.pageX||((!p.mouse||this.options.show.distance)&&h.origin&&h.origin.pageX?c=h.origin:(!c||c&&("resize"===c.type||"scroll"===c.type))&&(c=h.event)):c=B,"static"!==v&&(w=o.offset()),A.body.offsetWidth!==(a.innerWidth||A.documentElement.clientWidth)&&(g=d(b.body).offset()),w={left:c.pageX-w.left+(g&&g.left||0),top:c.pageY-w.top+(g&&g.top||0)},p.mouse&&y&&B&&(w.left-=(B.scrollX||0)-z.scrollLeft(),w.top-=(B.scrollY||0)-z.scrollTop());else{if("event"===k?c&&c.target&&"scroll"!==c.type&&"resize"!==c.type?h.target=d(c.target):c.target||(h.target=this.elements.target):"event"!==k&&(h.target=d(k.jquery?k:this.elements.target)),k=h.target,k=d(k).eq(0),0===k.length)return this;k[0]===b||k[0]===a?(t=db.iOS?a.innerWidth:k.width(),u=db.iOS?a.innerHeight:k.height(),k[0]===a&&(w={top:(n||k).scrollTop(),left:(n||k).scrollLeft()})):R.imagemap&&k.is("area")?f=R.imagemap(this,k,m,R.viewport?q:E):R.svg&&k&&k[0].ownerSVGElement?f=R.svg(this,k,m,R.viewport?q:E):(t=k.outerWidth(E),u=k.outerHeight(E),w=k.offset()),f&&(t=f.width,u=f.height,g=f.offset,w=f.position),w=this.reposition.offset(k,w,o),(db.iOS>3.1&&db.iOS<4.1||db.iOS>=4.3&&db.iOS<4.33||!db.iOS&&"fixed"===v)&&(w.left-=z.scrollLeft(),w.top-=z.scrollTop()),(!f||f&&f.adjustable!==E)&&(w.left+=m.x===N?t:m.x===O?t/2:0,w.top+=m.y===M?u:m.y===O?u/2:0)}return w.left+=p.x+(l.x===N?-r:l.x===O?-r/2:0),w.top+=p.y+(l.y===M?-s:l.y===O?-s/2:0),R.viewport?(w.adjusted=R.viewport(this,w,j,t,u,r,s),g&&w.adjusted.left&&(w.left+=g.left),g&&w.adjusted.top&&(w.top+=g.top)):w.adjusted={left:0,top:0},this._trigger("move",[w,n.elem||n],c)?(delete w.adjusted,e===E||!x||isNaN(w.left)||isNaN(w.top)||"mouse"===k||!d.isFunction(j.effect)?i.css(w):d.isFunction(j.effect)&&(j.effect.call(i,this,d.extend({},w)),i.queue(function(a){d(this).css({opacity:"",height:""}),db.ie&&this.style.removeAttribute("filter"),a()})),this.positioning=E,this):this},z.reposition.offset=function(a,c,e){function f(a,b){c.left+=b*a.scrollLeft(),c.top+=b*a.scrollTop()}if(!e[0])return c;var g,h,i,j,k=d(a[0].ownerDocument),l=!!db.ie&&"CSS1Compat"!==b.compatMode,m=e[0];do"static"!==(h=d.css(m,"position"))&&("fixed"===h?(i=m.getBoundingClientRect(),f(k,-1)):(i=d(m).position(),i.left+=parseFloat(d.css(m,"borderLeftWidth"))||0,i.top+=parseFloat(d.css(m,"borderTopWidth"))||0),c.left-=i.left+(parseFloat(d.css(m,"marginLeft"))||0),c.top-=i.top+(parseFloat(d.css(m,"marginTop"))||0),g||"hidden"===(j=d.css(m,"overflow"))||"visible"===j||(g=d(m)));while(m=m.offsetParent);return g&&(g[0]!==k[0]||l)&&f(g,1),c};var gb=(A=z.reposition.Corner=function(a,b){a=(""+a).replace(/([A-Z])/," $1").replace(/middle/gi,O).toLowerCase(),this.x=(a.match(/left|right/i)||a.match(/center/)||["inherit"])[0].toLowerCase(),this.y=(a.match(/top|bottom|center/i)||["inherit"])[0].toLowerCase(),this.forceY=!!b;var c=a.charAt(0);this.precedance="t"===c||"b"===c?H:G}).prototype;gb.invert=function(a,b){this[a]=this[a]===L?N:this[a]===N?L:b||this[a]},gb.string=function(){var a=this.x,b=this.y;return a===b?a:this.precedance===H||this.forceY&&"center"!==b?b+" "+a:a+" "+b},gb.abbrev=function(){var a=this.string().split(" ");return a[0].charAt(0)+(a[1]&&a[1].charAt(0)||"")},gb.clone=function(){return new A(this.string(),this.forceY)},z.toggle=function(a,c){var e=this.cache,f=this.options,g=this.tooltip;if(c){if(/over|enter/.test(c.type)&&/out|leave/.test(e.event.type)&&f.show.target.add(c.target).length===f.show.target.length&&g.has(c.relatedTarget).length)return this;e.event=l(c)}if(this.waiting&&!a&&(this.hiddenDuringWait=D),!this.rendered)return a?this.render(1):this;if(this.destroyed||this.disabled)return this;var h,i,j,k=a?"show":"hide",m=this.options[k],n=(this.options[a?"hide":"show"],this.options.position),o=this.options.content,p=this.tooltip.css("width"),q=this.tooltip.is(":visible"),r=a||1===m.target.length,s=!c||m.target.length<2||e.target[0]===c.target;return(typeof a).search("boolean|number")&&(a=!q),h=!g.is(":animated")&&q===a&&s,i=h?F:!!this._trigger(k,[90]),this.destroyed?this:(i!==E&&a&&this.focus(c),!i||h?this:(d.attr(g[0],"aria-hidden",!a),a?(e.origin=l(this.mouse),d.isFunction(o.text)&&this._updateContent(o.text,E),d.isFunction(o.title)&&this._updateTitle(o.title,E),!C&&"mouse"===n.target&&n.adjust.mouse&&(d(b).bind("mousemove."+S,this._storeMouse),C=D),p||g.css("width",g.outerWidth(E)),this.reposition(c,arguments[2]),p||g.css("width",""),m.solo&&("string"==typeof m.solo?d(m.solo):d(W,m.solo)).not(g).not(m.target).qtip("hide",d.Event("tooltipsolo"))):(clearTimeout(this.timers.show),delete e.origin,C&&!d(W+'[tracking="true"]:visible',m.solo).not(g).length&&(d(b).unbind("mousemove."+S),C=E),this.blur(c)),j=d.proxy(function(){a?(db.ie&&g[0].style.removeAttribute("filter"),g.css("overflow",""),"string"==typeof m.autofocus&&d(this.options.show.autofocus,g).focus(),this.options.show.target.trigger("qtip-"+this.id+"-inactive")):g.css({display:"",visibility:"",opacity:"",left:"",top:""}),this._trigger(a?"visible":"hidden")},this),m.effect===E||r===E?(g[k](),j()):d.isFunction(m.effect)?(g.stop(1,1),m.effect.call(g,this),g.queue("fx",function(a){j(),a()})):g.fadeTo(90,a?1:0,j),a&&m.target.trigger("qtip-"+this.id+"-inactive"),this))},z.show=function(a){return this.toggle(D,a)},z.hide=function(a){return this.toggle(E,a)},z.focus=function(a){if(!this.rendered||this.destroyed)return this;var b=d(W),c=this.tooltip,e=parseInt(c[0].style.zIndex,10),f=y.zindex+b.length;return c.hasClass($)||this._trigger("focus",[f],a)&&(e!==f&&(b.each(function(){this.style.zIndex>e&&(this.style.zIndex=this.style.zIndex-1)}),b.filter("."+$).qtip("blur",a)),c.addClass($)[0].style.zIndex=f),this},z.blur=function(a){return!this.rendered||this.destroyed?this:(this.tooltip.removeClass($),this._trigger("blur",[this.tooltip.css("zIndex")],a),this)},z.disable=function(a){return this.destroyed?this:("toggle"===a?a=!(this.rendered?this.tooltip.hasClass(ab):this.disabled):"boolean"!=typeof a&&(a=D),this.rendered&&this.tooltip.toggleClass(ab,a).attr("aria-disabled",a),this.disabled=!!a,this)},z.enable=function(){return this.disable(E)},z._createButton=function(){var a=this,b=this.elements,c=b.tooltip,e=this.options.content.button,f="string"==typeof e,g=f?e:"Close tooltip";b.button&&b.button.remove(),b.button=e.jquery?e:d("<a />",{"class":"qtip-close "+(this.options.style.widget?"":S+"-icon"),title:g,"aria-label":g}).prepend(d("<span />",{"class":"ui-icon ui-icon-close",html:"×"})),b.button.appendTo(b.titlebar||c).attr("role","button").click(function(b){return c.hasClass(ab)||a.hide(b),E})},z._updateButton=function(a){if(!this.rendered)return E;var b=this.elements.button;a?this._createButton():b.remove()},z._setWidget=function(){var a=this.options.style.widget,b=this.elements,c=b.tooltip,d=c.hasClass(ab);c.removeClass(ab),ab=a?"ui-state-disabled":"qtip-disabled",c.toggleClass(ab,d),c.toggleClass("ui-helper-reset "+k(),a).toggleClass(Z,this.options.style.def&&!a),b.content&&b.content.toggleClass(k("content"),a),b.titlebar&&b.titlebar.toggleClass(k("header"),a),b.button&&b.button.toggleClass(S+"-icon",!a)},z._storeMouse=function(a){(this.mouse=l(a)).type="mousemove"},z._bind=function(a,b,c,e,f){var g="."+this._id+(e?"-"+e:"");b.length&&d(a).bind((b.split?b:b.join(g+" "))+g,d.proxy(c,f||this))},z._unbind=function(a,b){d(a).unbind("."+this._id+(b?"-"+b:""))};var hb="."+S;d(function(){r(W,["mouseenter","mouseleave"],function(a){var b="mouseenter"===a.type,c=d(a.currentTarget),e=d(a.relatedTarget||a.target),f=this.options;b?(this.focus(a),c.hasClass(Y)&&!c.hasClass(ab)&&clearTimeout(this.timers.hide)):"mouse"===f.position.target&&f.hide.event&&f.show.target&&!e.closest(f.show.target[0]).length&&this.hide(a),c.toggleClass(_,b)}),r("["+U+"]",X,p)}),z._trigger=function(a,b,c){var e=d.Event("tooltip"+a);return e.originalEvent=c&&d.extend({},c)||this.cache.event||F,this.triggering=a,this.tooltip.trigger(e,[this].concat(b||[])),this.triggering=E,!e.isDefaultPrevented()},z._bindEvents=function(a,b,c,e,f,g){if(e.add(c).length===e.length){var h=[];b=d.map(b,function(b){var c=d.inArray(b,a);return c>-1?(h.push(a.splice(c,1)[0]),void 0):b}),h.length&&this._bind(c,h,function(a){var b=this.rendered?this.tooltip[0].offsetWidth>0:!1;(b?g:f).call(this,a)})}this._bind(c,a,f),this._bind(e,b,g)},z._assignInitialEvents=function(a){function b(a){return this.disabled||this.destroyed?E:(this.cache.event=l(a),this.cache.target=a?d(a.target):[c],clearTimeout(this.timers.show),this.timers.show=m.call(this,function(){this.render("object"==typeof a||e.show.ready)},e.show.delay),void 0)}var e=this.options,f=e.show.target,g=e.hide.target,h=e.show.event?d.trim(""+e.show.event).split(" "):[],i=e.hide.event?d.trim(""+e.hide.event).split(" "):[];/mouse(over|enter)/i.test(e.show.event)&&!/mouse(out|leave)/i.test(e.hide.event)&&i.push("mouseleave"),this._bind(f,"mousemove",function(a){this._storeMouse(a),this.cache.onTarget=D}),this._bindEvents(h,i,f,g,b,function(){clearTimeout(this.timers.show)}),(e.show.ready||e.prerender)&&b.call(this,a)},z._assignEvents=function(){var c=this,e=this.options,f=e.position,g=this.tooltip,h=e.show.target,i=e.hide.target,j=f.container,k=f.viewport,l=d(b),m=(d(b.body),d(a)),r=e.show.event?d.trim(""+e.show.event).split(" "):[],s=e.hide.event?d.trim(""+e.hide.event).split(" "):[];d.each(e.events,function(a,b){c._bind(g,"toggle"===a?["tooltipshow","tooltiphide"]:["tooltip"+a],b,null,g)}),/mouse(out|leave)/i.test(e.hide.event)&&"window"===e.hide.leave&&this._bind(l,["mouseout","blur"],function(a){/select|option/.test(a.target.nodeName)||a.relatedTarget||this.hide(a)}),e.hide.fixed?i=i.add(g.addClass(Y)):/mouse(over|enter)/i.test(e.show.event)&&this._bind(i,"mouseleave",function(){clearTimeout(this.timers.show)}),(""+e.hide.event).indexOf("unfocus")>-1&&this._bind(j.closest("html"),["mousedown","touchstart"],function(a){var b=d(a.target),c=this.rendered&&!this.tooltip.hasClass(ab)&&this.tooltip[0].offsetWidth>0,e=b.parents(W).filter(this.tooltip[0]).length>0;b[0]===this.target[0]||b[0]===this.tooltip[0]||e||this.target.has(b[0]).length||!c||this.hide(a)}),"number"==typeof e.hide.inactive&&(this._bind(h,"qtip-"+this.id+"-inactive",p),this._bind(i.add(g),y.inactiveEvents,p,"-inactive")),this._bindEvents(r,s,h,i,n,o),this._bind(h.add(g),"mousemove",function(a){if("number"==typeof e.hide.distance){var b=this.cache.origin||{},c=this.options.hide.distance,d=Math.abs;(d(a.pageX-b.pageX)>=c||d(a.pageY-b.pageY)>=c)&&this.hide(a)}this._storeMouse(a)}),"mouse"===f.target&&f.adjust.mouse&&(e.hide.event&&this._bind(h,["mouseenter","mouseleave"],function(a){this.cache.onTarget="mouseenter"===a.type}),this._bind(l,"mousemove",function(a){this.rendered&&this.cache.onTarget&&!this.tooltip.hasClass(ab)&&this.tooltip[0].offsetWidth>0&&this.reposition(a)})),(f.adjust.resize||k.length)&&this._bind(d.event.special.resize?k:m,"resize",q),f.adjust.scroll&&this._bind(m.add(f.container),"scroll",q)},z._unassignEvents=function(){var c=[this.options.show.target[0],this.options.hide.target[0],this.rendered&&this.tooltip[0],this.options.position.container[0],this.options.position.viewport[0],this.options.position.container.closest("html")[0],a,b];this._unbind(d([]).pushStack(d.grep(c,function(a){return"object"==typeof a})))},y=d.fn.qtip=function(a,b,e){var f=(""+a).toLowerCase(),g=F,i=d.makeArray(arguments).slice(1),j=i[i.length-1],k=this[0]?d.data(this[0],S):F;return!arguments.length&&k||"api"===f?k:"string"==typeof a?(this.each(function(){var a=d.data(this,S);if(!a)return D;if(j&&j.timeStamp&&(a.cache.event=j),!b||"option"!==f&&"options"!==f)a[f]&&a[f].apply(a,i);else{if(e===c&&!d.isPlainObject(b))return g=a.get(b),E;a.set(b,e)}}),g!==F?g:this):"object"!=typeof a&&arguments.length?void 0:(k=h(d.extend(D,{},a)),this.each(function(a){var b,c;return c=d.isArray(k.id)?k.id[a]:k.id,c=!c||c===E||c.length<1||y.api[c]?y.nextid++:c,b=s(d(this),c,k),b===E?D:(y.api[c]=b,d.each(R,function(){"initialize"===this.initialize&&this(b)}),b._assignInitialEvents(j),void 0)}))},d.qtip=e,y.api={},d.each({attr:function(a,b){if(this.length){var c=this[0],e="title",f=d.data(c,"qtip");if(a===e&&f&&"object"==typeof f&&f.options.suppress)return arguments.length<2?d.attr(c,cb):(f&&f.options.content.attr===e&&f.cache.attr&&f.set("content.text",b),this.attr(cb,b))}return d.fn["attr"+bb].apply(this,arguments)},clone:function(a){var b=(d([]),d.fn["clone"+bb].apply(this,arguments));return a||b.filter("["+cb+"]").attr("title",function(){return d.attr(this,cb)}).removeAttr(cb),b}},function(a,b){if(!b||d.fn[a+bb])return D;var c=d.fn[a+bb]=d.fn[a];d.fn[a]=function(){return b.apply(this,arguments)||c.apply(this,arguments)}}),d.ui||(d["cleanData"+bb]=d.cleanData,d.cleanData=function(a){for(var b,c=0;(b=d(a[c])).length;c++)if(b.attr(T))try{b.triggerHandler("removeqtip")}catch(e){}d["cleanData"+bb].apply(this,arguments)}),y.version="2.2.0",y.nextid=0,y.inactiveEvents=X,y.zindex=15e3,y.defaults={prerender:E,id:E,overwrite:D,suppress:D,content:{text:D,attr:"title",title:E,button:E},position:{my:"top left",at:"bottom right",target:E,container:E,viewport:E,adjust:{x:0,y:0,mouse:D,scroll:D,resize:D,method:"flipinvert flipinvert"},effect:function(a,b){d(this).animate(b,{duration:200,queue:E})}},show:{target:E,event:"mouseenter",effect:D,delay:90,solo:E,ready:E,autofocus:E},hide:{target:E,event:"mouseleave",effect:D,delay:0,fixed:E,inactive:E,leave:"window",distance:E},style:{classes:"",widget:E,width:E,height:E,def:D},events:{render:F,move:F,show:F,hide:F,toggle:F,visible:F,hidden:F,focus:F,blur:F}};var ib,jb="margin",kb="border",lb="color",mb="background-color",nb="transparent",ob=" !important",pb=!!b.createElement("canvas").getContext,qb=/rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i,rb={},sb=["Webkit","O","Moz","ms"];if(pb)var tb=a.devicePixelRatio||1,ub=function(){var a=b.createElement("canvas").getContext("2d");return a.backingStorePixelRatio||a.webkitBackingStorePixelRatio||a.mozBackingStorePixelRatio||a.msBackingStorePixelRatio||a.oBackingStorePixelRatio||1}(),vb=tb/ub;else var wb=function(a,b,c){return"<qtipvml:"+a+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(b||"")+' style="behavior: url(#default#VML); '+(c||"")+'" />'};d.extend(w.prototype,{init:function(a){var b,c;c=this.element=a.elements.tip=d("<div />",{"class":S+"-tip"}).prependTo(a.tooltip),pb?(b=d("<canvas />").appendTo(this.element)[0].getContext("2d"),b.lineJoin="miter",b.miterLimit=1e5,b.save()):(b=wb("shape",'coordorigin="0,0"',"position:absolute;"),this.element.html(b+b),a._bind(d("*",c).add(c),["click","mousedown"],function(a){a.stopPropagation()},this._ns)),a._bind(a.tooltip,"tooltipmove",this.reposition,this._ns,this),this.create()},_swapDimensions:function(){this.size[0]=this.options.height,this.size[1]=this.options.width},_resetDimensions:function(){this.size[0]=this.options.width,this.size[1]=this.options.height},_useTitle:function(a){var b=this.qtip.elements.titlebar;return b&&(a.y===K||a.y===O&&this.element.position().top+this.size[1]/2+this.options.offset<b.outerHeight(D))},_parseCorner:function(a){var b=this.qtip.options.position.my;return a===E||b===E?a=E:a===D?a=new A(b.string()):a.string||(a=new A(a),a.fixed=D),a},_parseWidth:function(a,b,c){var d=this.qtip.elements,e=kb+t(b)+"Width";return(c?v(c,e):v(d.content,e)||v(this._useTitle(a)&&d.titlebar||d.content,e)||v(d.tooltip,e))||0},_parseRadius:function(a){var b=this.qtip.elements,c=kb+t(a.y)+t(a.x)+"Radius";return db.ie<9?0:v(this._useTitle(a)&&b.titlebar||b.content,c)||v(b.tooltip,c)||0},_invalidColour:function(a,b,c){var d=a.css(b);return!d||c&&d===a.css(c)||qb.test(d)?E:d},_parseColours:function(a){var b=this.qtip.elements,c=this.element.css("cssText",""),e=kb+t(a[a.precedance])+t(lb),f=this._useTitle(a)&&b.titlebar||b.content,g=this._invalidColour,h=[];return h[0]=g(c,mb)||g(f,mb)||g(b.content,mb)||g(b.tooltip,mb)||c.css(mb),h[1]=g(c,e,lb)||g(f,e,lb)||g(b.content,e,lb)||g(b.tooltip,e,lb)||b.tooltip.css(e),d("*",c).add(c).css("cssText",mb+":"+nb+ob+";"+kb+":0"+ob+";"),h},_calculateSize:function(a){var b,c,d,e=a.precedance===H,f=this.options.width,g=this.options.height,h="c"===a.abbrev(),i=(e?f:g)*(h?.5:1),j=Math.pow,k=Math.round,l=Math.sqrt(j(i,2)+j(g,2)),m=[this.border/i*l,this.border/g*l];return m[2]=Math.sqrt(j(m[0],2)-j(this.border,2)),m[3]=Math.sqrt(j(m[1],2)-j(this.border,2)),b=l+m[2]+m[3]+(h?0:m[0]),c=b/l,d=[k(c*f),k(c*g)],e?d:d.reverse()},_calculateTip:function(a,b,c){c=c||1,b=b||this.size;var d=b[0]*c,e=b[1]*c,f=Math.ceil(d/2),g=Math.ceil(e/2),h={br:[0,0,d,e,d,0],bl:[0,0,d,0,0,e],tr:[0,e,d,0,d,e],tl:[0,0,0,e,d,e],tc:[0,e,f,0,d,e],bc:[0,0,d,0,f,e],rc:[0,0,d,g,0,e],lc:[d,0,d,e,0,g]};return h.lt=h.br,h.rt=h.bl,h.lb=h.tr,h.rb=h.tl,h[a.abbrev()]},_drawCoords:function(a,b){a.beginPath(),a.moveTo(b[0],b[1]),a.lineTo(b[2],b[3]),a.lineTo(b[4],b[5]),a.closePath()},create:function(){var a=this.corner=(pb||db.ie)&&this._parseCorner(this.options.corner);return(this.enabled=!!this.corner&&"c"!==this.corner.abbrev())&&(this.qtip.cache.corner=a.clone(),this.update()),this.element.toggle(this.enabled),this.corner},update:function(b,c){if(!this.enabled)return this;var e,f,g,h,i,j,k,l,m=this.qtip.elements,n=this.element,o=n.children(),p=this.options,q=this.size,r=p.mimic,s=Math.round;b||(b=this.qtip.cache.corner||this.corner),r===E?r=b:(r=new A(r),r.precedance=b.precedance,"inherit"===r.x?r.x=b.x:"inherit"===r.y?r.y=b.y:r.x===r.y&&(r[b.precedance]=b[b.precedance])),f=r.precedance,b.precedance===G?this._swapDimensions():this._resetDimensions(),e=this.color=this._parseColours(b),e[1]!==nb?(l=this.border=this._parseWidth(b,b[b.precedance]),p.border&&1>l&&!qb.test(e[1])&&(e[0]=e[1]),this.border=l=p.border!==D?p.border:l):this.border=l=0,k=this.size=this._calculateSize(b),n.css({width:k[0],height:k[1],lineHeight:k[1]+"px"}),j=b.precedance===H?[s(r.x===L?l:r.x===N?k[0]-q[0]-l:(k[0]-q[0])/2),s(r.y===K?k[1]-q[1]:0)]:[s(r.x===L?k[0]-q[0]:0),s(r.y===K?l:r.y===M?k[1]-q[1]-l:(k[1]-q[1])/2)],pb?(g=o[0].getContext("2d"),g.restore(),g.save(),g.clearRect(0,0,6e3,6e3),h=this._calculateTip(r,q,vb),i=this._calculateTip(r,this.size,vb),o.attr(I,k[0]*vb).attr(J,k[1]*vb),o.css(I,k[0]).css(J,k[1]),this._drawCoords(g,i),g.fillStyle=e[1],g.fill(),g.translate(j[0]*vb,j[1]*vb),this._drawCoords(g,h),g.fillStyle=e[0],g.fill()):(h=this._calculateTip(r),h="m"+h[0]+","+h[1]+" l"+h[2]+","+h[3]+" "+h[4]+","+h[5]+" xe",j[2]=l&&/^(r|b)/i.test(b.string())?8===db.ie?2:1:0,o.css({coordsize:k[0]+l+" "+(k[1]+l),antialias:""+(r.string().indexOf(O)>-1),left:j[0]-j[2]*Number(f===G),top:j[1]-j[2]*Number(f===H),width:k[0]+l,height:k[1]+l}).each(function(a){var b=d(this);b[b.prop?"prop":"attr"]({coordsize:k[0]+l+" "+(k[1]+l),path:h,fillcolor:e[0],filled:!!a,stroked:!a}).toggle(!(!l&&!a)),!a&&b.html(wb("stroke",'weight="'+2*l+'px" color="'+e[1]+'" miterlimit="1000" joinstyle="miter"'))})),a.opera&&setTimeout(function(){m.tip.css({display:"inline-block",visibility:"visible"})},1),c!==E&&this.calculate(b,k)},calculate:function(a,b){if(!this.enabled)return E;var c,e,f=this,g=this.qtip.elements,h=this.element,i=this.options.offset,j=(g.tooltip.hasClass("ui-widget"),{});return a=a||this.corner,c=a.precedance,b=b||this._calculateSize(a),e=[a.x,a.y],c===G&&e.reverse(),d.each(e,function(d,e){var h,k,l;e===O?(h=c===H?L:K,j[h]="50%",j[jb+"-"+h]=-Math.round(b[c===H?0:1]/2)+i):(h=f._parseWidth(a,e,g.tooltip),k=f._parseWidth(a,e,g.content),l=f._parseRadius(a),j[e]=Math.max(-f.border,d?k:i+(l>h?l:-h)))
|
4 |
-
}),j[a[c]]-=b[c===G?0:1],h.css({margin:"",top:"",bottom:"",left:"",right:""}).css(j),j},reposition:function(a,b,d){function e(a,b,c,d,e){a===Q&&j.precedance===b&&k[d]&&j[c]!==O?j.precedance=j.precedance===G?H:G:a!==Q&&k[d]&&(j[b]=j[b]===O?k[d]>0?d:e:j[b]===d?e:d)}function f(a,b,e){j[a]===O?p[jb+"-"+b]=o[a]=g[jb+"-"+b]-k[b]:(h=g[e]!==c?[k[b],-g[b]]:[-k[b],g[b]],(o[a]=Math.max(h[0],h[1]))>h[0]&&(d[b]-=k[b],o[b]=E),p[g[e]!==c?e:b]=o[a])}if(this.enabled){var g,h,i=b.cache,j=this.corner.clone(),k=d.adjusted,l=b.options.position.adjust.method.split(" "),m=l[0],n=l[1]||l[0],o={left:E,top:E,x:0,y:0},p={};this.corner.fixed!==D&&(e(m,G,H,L,N),e(n,H,G,K,M),j.string()===i.corner.string()||i.cornerTop===k.top&&i.cornerLeft===k.left||this.update(j,E)),g=this.calculate(j),g.right!==c&&(g.left=-g.right),g.bottom!==c&&(g.top=-g.bottom),g.user=this.offset,(o.left=m===Q&&!!k.left)&&f(G,L,N),(o.top=n===Q&&!!k.top)&&f(H,K,M),this.element.css(p).toggle(!(o.x&&o.y||j.x===O&&o.y||j.y===O&&o.x)),d.left-=g.left.charAt?g.user:m!==Q||o.top||!o.left&&!o.top?g.left+this.border:0,d.top-=g.top.charAt?g.user:n!==Q||o.left||!o.left&&!o.top?g.top+this.border:0,i.cornerLeft=k.left,i.cornerTop=k.top,i.corner=j.clone()}},destroy:function(){this.qtip._unbind(this.qtip.tooltip,this._ns),this.qtip.elements.tip&&this.qtip.elements.tip.find("*").remove().end().remove()}}),ib=R.tip=function(a){return new w(a,a.options.style.tip)},ib.initialize="render",ib.sanitize=function(a){if(a.style&&"tip"in a.style){var b=a.style.tip;"object"!=typeof b&&(b=a.style.tip={corner:b}),/string|boolean/i.test(typeof b.corner)||(b.corner=D)}},B.tip={"^position.my|style.tip.(corner|mimic|border)$":function(){this.create(),this.qtip.reposition()},"^style.tip.(height|width)$":function(a){this.size=[a.width,a.height],this.update(),this.qtip.reposition()},"^content.title|style.(classes|widget)$":function(){this.update()}},d.extend(D,y.defaults,{style:{tip:{corner:D,mimic:E,width:6,height:6,border:D,offset:0}}}),R.viewport=function(c,d,e,f,g,h,i){function j(a,b,c,e,f,g,h,i,j){var k=d[f],m=v[a],t=w[a],u=c===Q,x=m===f?j:m===g?-j:-j/2,y=t===f?i:t===g?-i:-i/2,z=r[f]+s[f]-(o?0:n[f]),A=z-k,B=k+j-(h===I?p:q)-z,C=x-(v.precedance===a||m===v[b]?y:0)-(t===O?i/2:0);return u?(C=(m===f?1:-1)*x,d[f]+=A>0?A:B>0?-B:0,d[f]=Math.max(-n[f]+s[f],k-C,Math.min(Math.max(-n[f]+s[f]+(h===I?p:q),k+C),d[f],"center"===m?k-x:1e9))):(e*=c===P?2:0,A>0&&(m!==f||B>0)?(d[f]-=C+e,l.invert(a,f)):B>0&&(m!==g||A>0)&&(d[f]-=(m===O?-C:C)+e,l.invert(a,g)),d[f]<r&&-d[f]>B&&(d[f]=k,l=v.clone())),d[f]-k}var k,l,m,n,o,p,q,r,s,t=e.target,u=c.elements.tooltip,v=e.my,w=e.at,x=e.adjust,y=x.method.split(" "),z=y[0],A=y[1]||y[0],B=e.viewport,C=e.container,D=c.cache,F={left:0,top:0};return B.jquery&&t[0]!==a&&t[0]!==b.body&&"none"!==x.method?(n=C.offset()||F,o="static"===C.css("position"),k="fixed"===u.css("position"),p=B[0]===a?B.width():B.outerWidth(E),q=B[0]===a?B.height():B.outerHeight(E),r={left:k?0:B.scrollLeft(),top:k?0:B.scrollTop()},s=B.offset()||F,("shift"!==z||"shift"!==A)&&(l=v.clone()),F={left:"none"!==z?j(G,H,z,x.x,L,N,I,f,h):0,top:"none"!==A?j(H,G,A,x.y,K,M,J,g,i):0},l&&D.lastClass!==(m=S+"-pos-"+l.abbrev())&&u.removeClass(c.cache.lastClass).addClass(c.cache.lastClass=m),F):F},R.polys={polygon:function(a,b){var c,d,e,f={width:0,height:0,position:{top:1e10,right:0,bottom:0,left:1e10},adjustable:E},g=0,h=[],i=1,j=1,k=0,l=0;for(g=a.length;g--;)c=[parseInt(a[--g],10),parseInt(a[g+1],10)],c[0]>f.position.right&&(f.position.right=c[0]),c[0]<f.position.left&&(f.position.left=c[0]),c[1]>f.position.bottom&&(f.position.bottom=c[1]),c[1]<f.position.top&&(f.position.top=c[1]),h.push(c);if(d=f.width=Math.abs(f.position.right-f.position.left),e=f.height=Math.abs(f.position.bottom-f.position.top),"c"===b.abbrev())f.position={left:f.position.left+f.width/2,top:f.position.top+f.height/2};else{for(;d>0&&e>0&&i>0&&j>0;)for(d=Math.floor(d/2),e=Math.floor(e/2),b.x===L?i=d:b.x===N?i=f.width-d:i+=Math.floor(d/2),b.y===K?j=e:b.y===M?j=f.height-e:j+=Math.floor(e/2),g=h.length;g--&&!(h.length<2);)k=h[g][0]-f.position.left,l=h[g][1]-f.position.top,(b.x===L&&k>=i||b.x===N&&i>=k||b.x===O&&(i>k||k>f.width-i)||b.y===K&&l>=j||b.y===M&&j>=l||b.y===O&&(j>l||l>f.height-j))&&h.splice(g,1);f.position={left:h[0][0],top:h[0][1]}}return f},rect:function(a,b,c,d){return{width:Math.abs(c-a),height:Math.abs(d-b),position:{left:Math.min(a,c),top:Math.min(b,d)}}},_angles:{tc:1.5,tr:7/4,tl:5/4,bc:.5,br:.25,bl:.75,rc:2,lc:1,c:0},ellipse:function(a,b,c,d,e){var f=R.polys._angles[e.abbrev()],g=0===f?0:c*Math.cos(f*Math.PI),h=d*Math.sin(f*Math.PI);return{width:2*c-Math.abs(g),height:2*d-Math.abs(h),position:{left:a+g,top:b+h},adjustable:E}},circle:function(a,b,c,d){return R.polys.ellipse(a,b,c,c,d)}},R.imagemap=function(a,b,c){b.jquery||(b=d(b));var e,f,g,h,i,j=b.attr("shape").toLowerCase().replace("poly","polygon"),k=d('img[usemap="#'+b.parent("map").attr("name")+'"]'),l=d.trim(b.attr("coords")),m=l.replace(/,$/,"").split(",");if(!k.length)return E;if("polygon"===j)h=R.polys.polygon(m,c);else{if(!R.polys[j])return E;for(g=-1,i=m.length,f=[];++g<i;)f.push(parseInt(m[g],10));h=R.polys[j].apply(this,f.concat(c))}return e=k.offset(),e.left+=Math.ceil((k.outerWidth(E)-k.width())/2),e.top+=Math.ceil((k.outerHeight(E)-k.height())/2),h.position.left+=e.left,h.position.top+=e.top,h},R.svg=function(a,c,e){for(var f,g,h,i,j,k,l,m,n,o,p,q=d(b),r=c[0],s=d(r.ownerSVGElement),t=1,u=1,v=!0;!r.getBBox;)r=r.parentNode;if(!r.getBBox||!r.parentNode)return E;f=s.attr("width")||s.width()||parseInt(s.css("width"),10),g=s.attr("height")||s.height()||parseInt(s.css("height"),10);var w=(parseInt(c.css("stroke-width"),10)||0)/2;switch(w&&(t+=w/f,u+=w/g),r.nodeName){case"ellipse":case"circle":o=R.polys.ellipse(r.cx.baseVal.value,r.cy.baseVal.value,(r.rx||r.r).baseVal.value+w,(r.ry||r.r).baseVal.value+w,e);break;case"line":case"polygon":case"polyline":for(n=r.points||[{x:r.x1.baseVal.value,y:r.y1.baseVal.value},{x:r.x2.baseVal.value,y:r.y2.baseVal.value}],o=[],m=-1,k=n.numberOfItems||n.length;++m<k;)l=n.getItem?n.getItem(m):n[m],o.push.apply(o,[l.x,l.y]);o=R.polys.polygon(o,e);break;default:o=r.getBoundingClientRect(),o={width:o.width,height:o.height,position:{left:o.left,top:o.top}},v=!1}return p=o.position,s=s[0],v&&(s.createSVGPoint&&(h=r.getScreenCTM(),n=s.createSVGPoint(),n.x=p.left,n.y=p.top,i=n.matrixTransform(h),p.left=i.x,p.top=i.y),s.viewBox&&(j=s.viewBox.baseVal)&&j.width&&j.height&&(t*=f/j.width,u*=g/j.height)),p.left+=q.scrollLeft(),p.top+=q.scrollTop(),o};var xb,yb,zb="qtip-modal",Ab="."+zb;yb=function(){function a(a){if(d.expr[":"].focusable)return d.expr[":"].focusable;var b,c,e,f=!isNaN(d.attr(a,"tabindex")),g=a.nodeName&&a.nodeName.toLowerCase();return"area"===g?(b=a.parentNode,c=b.name,a.href&&c&&"map"===b.nodeName.toLowerCase()?(e=d("img[usemap=#"+c+"]")[0],!!e&&e.is(":visible")):!1):/input|select|textarea|button|object/.test(g)?!a.disabled:"a"===g?a.href||f:f}function c(a){k.length<1&&a.length?a.not("body").blur():k.first().focus()}function e(a){if(i.is(":visible")){var b,e=d(a.target),h=f.tooltip,j=e.closest(W);b=j.length<1?E:parseInt(j[0].style.zIndex,10)>parseInt(h[0].style.zIndex,10),b||e.closest(W)[0]===h[0]||c(e),g=a.target===k[k.length-1]}}var f,g,h,i,j=this,k={};d.extend(j,{init:function(){return i=j.elem=d("<div />",{id:"qtip-overlay",html:"<div></div>",mousedown:function(){return E}}).hide(),d(b.body).bind("focusin"+Ab,e),d(b).bind("keydown"+Ab,function(a){f&&f.options.show.modal.escape&&27===a.keyCode&&f.hide(a)}),i.bind("click"+Ab,function(a){f&&f.options.show.modal.blur&&f.hide(a)}),j},update:function(b){f=b,k=b.options.show.modal.stealfocus!==E?b.tooltip.find("*").filter(function(){return a(this)}):[]},toggle:function(a,e,g){var k=(d(b.body),a.tooltip),l=a.options.show.modal,m=l.effect,n=e?"show":"hide",o=i.is(":visible"),p=d(Ab).filter(":visible:not(:animated)").not(k);return j.update(a),e&&l.stealfocus!==E&&c(d(":focus")),i.toggleClass("blurs",l.blur),e&&i.appendTo(b.body),i.is(":animated")&&o===e&&h!==E||!e&&p.length?j:(i.stop(D,E),d.isFunction(m)?m.call(i,e):m===E?i[n]():i.fadeTo(parseInt(g,10)||90,e?1:0,function(){e||i.hide()}),e||i.queue(function(a){i.css({left:"",top:""}),d(Ab).length||i.detach(),a()}),h=e,f.destroyed&&(f=F),j)}}),j.init()},yb=new yb,d.extend(x.prototype,{init:function(a){var b=a.tooltip;return this.options.on?(a.elements.overlay=yb.elem,b.addClass(zb).css("z-index",y.modal_zindex+d(Ab).length),a._bind(b,["tooltipshow","tooltiphide"],function(a,c,e){var f=a.originalEvent;if(a.target===b[0])if(f&&"tooltiphide"===a.type&&/mouse(leave|enter)/.test(f.type)&&d(f.relatedTarget).closest(yb.elem[0]).length)try{a.preventDefault()}catch(g){}else(!f||f&&"tooltipsolo"!==f.type)&&this.toggle(a,"tooltipshow"===a.type,e)},this._ns,this),a._bind(b,"tooltipfocus",function(a,c){if(!a.isDefaultPrevented()&&a.target===b[0]){var e=d(Ab),f=y.modal_zindex+e.length,g=parseInt(b[0].style.zIndex,10);yb.elem[0].style.zIndex=f-1,e.each(function(){this.style.zIndex>g&&(this.style.zIndex-=1)}),e.filter("."+$).qtip("blur",a.originalEvent),b.addClass($)[0].style.zIndex=f,yb.update(c);try{a.preventDefault()}catch(h){}}},this._ns,this),a._bind(b,"tooltiphide",function(a){a.target===b[0]&&d(Ab).filter(":visible").not(b).last().qtip("focus",a)},this._ns,this),void 0):this},toggle:function(a,b,c){return a&&a.isDefaultPrevented()?this:(yb.toggle(this.qtip,!!b,c),void 0)},destroy:function(){this.qtip.tooltip.removeClass(zb),this.qtip._unbind(this.qtip.tooltip,this._ns),yb.toggle(this.qtip,E),delete this.qtip.elements.overlay}}),xb=R.modal=function(a){return new x(a,a.options.show.modal)},xb.sanitize=function(a){a.show&&("object"!=typeof a.show.modal?a.show.modal={on:!!a.show.modal}:"undefined"==typeof a.show.modal.on&&(a.show.modal.on=D))},y.modal_zindex=y.zindex-200,xb.initialize="render",B.modal={"^show.modal.(on|blur)$":function(){this.destroy(),this.init(),this.qtip.elems.overlay.toggle(this.qtip.tooltip[0].offsetWidth>0)}},d.extend(D,y.defaults,{show:{modal:{on:E,effect:D,blur:D,stealfocus:D,escape:D}}})})}(window,document);
|
5 |
-
//# sourceMappingURL=http://cdnjs.cloudflare.com/ajax/libs/qtip2/2.2.0//var/www/qtip2/build/tmp/tmp-11954r9wgiyo/jquery.qtip.min.map
|
1 |
+
/* qTip2 v2.2.0 tips viewport imagemap svg modal | qtip2.com | Licensed MIT, GPL | Sun Mar 16 2014 07:12:37 */
|
2 |
+
|
3 |
+
!function(a,b,c){!function(a){"use strict";"function"==typeof define&&define.amd?define(["jquery"],a):jQuery&&!jQuery.fn.qtip&&a(jQuery)}(function(d){"use strict";function e(a,b,c,e){this.id=c,this.target=a,this.tooltip=F,this.elements={target:a},this._id=S+"-"+c,this.timers={img:{}},this.options=b,this.plugins={},this.cache={event:{},target:d(),disabled:E,attr:e,onTooltip:E,lastClass:""},this.rendered=this.destroyed=this.disabled=this.waiting=this.hiddenDuringWait=this.positioning=this.triggering=E}function f(a){return a===F||"object"!==d.type(a)}function g(a){return!(d.isFunction(a)||a&&a.attr||a.length||"object"===d.type(a)&&(a.jquery||a.then))}function h(a){var b,c,e,h;return f(a)?E:(f(a.metadata)&&(a.metadata={type:a.metadata}),"content"in a&&(b=a.content,f(b)||b.jquery||b.done?b=a.content={text:c=g(b)?E:b}:c=b.text,"ajax"in b&&(e=b.ajax,h=e&&e.once!==E,delete b.ajax,b.text=function(a,b){var f=c||d(this).attr(b.options.content.attr)||"Loading...",g=d.ajax(d.extend({},e,{context:b})).then(e.success,F,e.error).then(function(a){return a&&h&&b.set("content.text",a),a},function(a,c,d){b.destroyed||0===a.status||b.set("content.text",c+": "+d)});return h?f:(b.set("content.text",f),g)}),"title"in b&&(f(b.title)||(b.button=b.title.button,b.title=b.title.text),g(b.title||E)&&(b.title=E))),"position"in a&&f(a.position)&&(a.position={my:a.position,at:a.position}),"show"in a&&f(a.show)&&(a.show=a.show.jquery?{target:a.show}:a.show===D?{ready:D}:{event:a.show}),"hide"in a&&f(a.hide)&&(a.hide=a.hide.jquery?{target:a.hide}:{event:a.hide}),"style"in a&&f(a.style)&&(a.style={classes:a.style}),d.each(R,function(){this.sanitize&&this.sanitize(a)}),a)}function i(a,b){for(var c,d=0,e=a,f=b.split(".");e=e[f[d++]];)d<f.length&&(c=e);return[c||a,f.pop()]}function j(a,b){var c,d,e;for(c in this.checks)for(d in this.checks[c])(e=new RegExp(d,"i").exec(a))&&(b.push(e),("builtin"===c||this.plugins[c])&&this.checks[c][d].apply(this.plugins[c]||this,b))}function k(a){return V.concat("").join(a?"-"+a+" ":" ")}function l(c){return c&&{type:c.type,pageX:c.pageX,pageY:c.pageY,target:c.target,relatedTarget:c.relatedTarget,scrollX:c.scrollX||a.pageXOffset||b.body.scrollLeft||b.documentElement.scrollLeft,scrollY:c.scrollY||a.pageYOffset||b.body.scrollTop||b.documentElement.scrollTop}||{}}function m(a,b){return b>0?setTimeout(d.proxy(a,this),b):(a.call(this),void 0)}function n(a){return this.tooltip.hasClass(ab)?E:(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this.timers.show=m.call(this,function(){this.toggle(D,a)},this.options.show.delay),void 0)}function o(a){if(this.tooltip.hasClass(ab))return E;var b=d(a.relatedTarget),c=b.closest(W)[0]===this.tooltip[0],e=b[0]===this.options.show.target[0];if(clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this!==b[0]&&"mouse"===this.options.position.target&&c||this.options.hide.fixed&&/mouse(out|leave|move)/.test(a.type)&&(c||e))try{a.preventDefault(),a.stopImmediatePropagation()}catch(f){}else this.timers.hide=m.call(this,function(){this.toggle(E,a)},this.options.hide.delay,this)}function p(a){return this.tooltip.hasClass(ab)||!this.options.hide.inactive?E:(clearTimeout(this.timers.inactive),this.timers.inactive=m.call(this,function(){this.hide(a)},this.options.hide.inactive),void 0)}function q(a){this.rendered&&this.tooltip[0].offsetWidth>0&&this.reposition(a)}function r(a,c,e){d(b.body).delegate(a,(c.split?c:c.join(hb+" "))+hb,function(){var a=y.api[d.attr(this,U)];a&&!a.disabled&&e.apply(a,arguments)})}function s(a,c,f){var g,i,j,k,l,m=d(b.body),n=a[0]===b?m:a,o=a.metadata?a.metadata(f.metadata):F,p="html5"===f.metadata.type&&o?o[f.metadata.name]:F,q=a.data(f.metadata.name||"qtipopts");try{q="string"==typeof q?d.parseJSON(q):q}catch(r){}if(k=d.extend(D,{},y.defaults,f,"object"==typeof q?h(q):F,h(p||o)),i=k.position,k.id=c,"boolean"==typeof k.content.text){if(j=a.attr(k.content.attr),k.content.attr===E||!j)return E;k.content.text=j}if(i.container.length||(i.container=m),i.target===E&&(i.target=n),k.show.target===E&&(k.show.target=n),k.show.solo===D&&(k.show.solo=i.container.closest("body")),k.hide.target===E&&(k.hide.target=n),k.position.viewport===D&&(k.position.viewport=i.container),i.container=i.container.eq(0),i.at=new A(i.at,D),i.my=new A(i.my),a.data(S))if(k.overwrite)a.qtip("destroy",!0);else if(k.overwrite===E)return E;return a.attr(T,c),k.suppress&&(l=a.attr("title"))&&a.removeAttr("title").attr(cb,l).attr("title",""),g=new e(a,k,c,!!j),a.data(S,g),a.one("remove.qtip-"+c+" removeqtip.qtip-"+c,function(){var a;(a=d(this).data(S))&&a.destroy(!0)}),g}function t(a){return a.charAt(0).toUpperCase()+a.slice(1)}function u(a,b){var d,e,f=b.charAt(0).toUpperCase()+b.slice(1),g=(b+" "+sb.join(f+" ")+f).split(" "),h=0;if(rb[b])return a.css(rb[b]);for(;d=g[h++];)if((e=a.css(d))!==c)return rb[b]=d,e}function v(a,b){return Math.ceil(parseFloat(u(a,b)))}function w(a,b){this._ns="tip",this.options=b,this.offset=b.offset,this.size=[b.width,b.height],this.init(this.qtip=a)}function x(a,b){this.options=b,this._ns="-modal",this.init(this.qtip=a)}var y,z,A,B,C,D=!0,E=!1,F=null,G="x",H="y",I="width",J="height",K="top",L="left",M="bottom",N="right",O="center",P="flipinvert",Q="shift",R={},S="qtip",T="data-hasqtip",U="data-qtip-id",V=["ui-widget","ui-tooltip"],W="."+S,X="click dblclick mousedown mouseup mousemove mouseleave mouseenter".split(" "),Y=S+"-fixed",Z=S+"-default",$=S+"-focus",_=S+"-hover",ab=S+"-disabled",bb="_replacedByqTip",cb="oldtitle",db={ie:function(){for(var a=3,c=b.createElement("div");(c.innerHTML="<!--[if gt IE "+ ++a+"]><i></i><![endif]-->")&&c.getElementsByTagName("i")[0];);return a>4?a:0/0}(),iOS:parseFloat((""+(/CPU.*OS ([0-9_]{1,5})|(CPU like).*AppleWebKit.*Mobile/i.exec(navigator.userAgent)||[0,""])[1]).replace("undefined","3_2").replace("_",".").replace("_",""))||E};z=e.prototype,z._when=function(a){return d.when.apply(d,a)},z.render=function(a){if(this.rendered||this.destroyed)return this;var b,c=this,e=this.options,f=this.cache,g=this.elements,h=e.content.text,i=e.content.title,j=e.content.button,k=e.position,l=("."+this._id+" ",[]);return d.attr(this.target[0],"aria-describedby",this._id),this.tooltip=g.tooltip=b=d("<div/>",{id:this._id,"class":[S,Z,e.style.classes,S+"-pos-"+e.position.my.abbrev()].join(" "),width:e.style.width||"",height:e.style.height||"",tracking:"mouse"===k.target&&k.adjust.mouse,role:"alert","aria-live":"polite","aria-atomic":E,"aria-describedby":this._id+"-content","aria-hidden":D}).toggleClass(ab,this.disabled).attr(U,this.id).data(S,this).appendTo(k.container).append(g.content=d("<div />",{"class":S+"-content",id:this._id+"-content","aria-atomic":D})),this.rendered=-1,this.positioning=D,i&&(this._createTitle(),d.isFunction(i)||l.push(this._updateTitle(i,E))),j&&this._createButton(),d.isFunction(h)||l.push(this._updateContent(h,E)),this.rendered=D,this._setWidget(),d.each(R,function(a){var b;"render"===this.initialize&&(b=this(c))&&(c.plugins[a]=b)}),this._unassignEvents(),this._assignEvents(),this._when(l).then(function(){c._trigger("render"),c.positioning=E,c.hiddenDuringWait||!e.show.ready&&!a||c.toggle(D,f.event,E),c.hiddenDuringWait=E}),y.api[this.id]=this,this},z.destroy=function(a){function b(){if(!this.destroyed){this.destroyed=D;var a=this.target,b=a.attr(cb);this.rendered&&this.tooltip.stop(1,0).find("*").remove().end().remove(),d.each(this.plugins,function(){this.destroy&&this.destroy()}),clearTimeout(this.timers.show),clearTimeout(this.timers.hide),this._unassignEvents(),a.removeData(S).removeAttr(U).removeAttr(T).removeAttr("aria-describedby"),this.options.suppress&&b&&a.attr("title",b).removeAttr(cb),this._unbind(a),this.options=this.elements=this.cache=this.timers=this.plugins=this.mouse=F,delete y.api[this.id]}}return this.destroyed?this.target:(a===D&&"hide"!==this.triggering||!this.rendered?b.call(this):(this.tooltip.one("tooltiphidden",d.proxy(b,this)),!this.triggering&&this.hide()),this.target)},B=z.checks={builtin:{"^id$":function(a,b,c,e){var f=c===D?y.nextid:c,g=S+"-"+f;f!==E&&f.length>0&&!d("#"+g).length?(this._id=g,this.rendered&&(this.tooltip[0].id=this._id,this.elements.content[0].id=this._id+"-content",this.elements.title[0].id=this._id+"-title")):a[b]=e},"^prerender":function(a,b,c){c&&!this.rendered&&this.render(this.options.show.ready)},"^content.text$":function(a,b,c){this._updateContent(c)},"^content.attr$":function(a,b,c,d){this.options.content.text===this.target.attr(d)&&this._updateContent(this.target.attr(c))},"^content.title$":function(a,b,c){return c?(c&&!this.elements.title&&this._createTitle(),this._updateTitle(c),void 0):this._removeTitle()},"^content.button$":function(a,b,c){this._updateButton(c)},"^content.title.(text|button)$":function(a,b,c){this.set("content."+b,c)},"^position.(my|at)$":function(a,b,c){"string"==typeof c&&(a[b]=new A(c,"at"===b))},"^position.container$":function(a,b,c){this.rendered&&this.tooltip.appendTo(c)},"^show.ready$":function(a,b,c){c&&(!this.rendered&&this.render(D)||this.toggle(D))},"^style.classes$":function(a,b,c,d){this.rendered&&this.tooltip.removeClass(d).addClass(c)},"^style.(width|height)":function(a,b,c){this.rendered&&this.tooltip.css(b,c)},"^style.widget|content.title":function(){this.rendered&&this._setWidget()},"^style.def":function(a,b,c){this.rendered&&this.tooltip.toggleClass(Z,!!c)},"^events.(render|show|move|hide|focus|blur)$":function(a,b,c){this.rendered&&this.tooltip[(d.isFunction(c)?"":"un")+"bind"]("tooltip"+b,c)},"^(show|hide|position).(event|target|fixed|inactive|leave|distance|viewport|adjust)":function(){if(this.rendered){var a=this.options.position;this.tooltip.attr("tracking","mouse"===a.target&&a.adjust.mouse),this._unassignEvents(),this._assignEvents()}}}},z.get=function(a){if(this.destroyed)return this;var b=i(this.options,a.toLowerCase()),c=b[0][b[1]];return c.precedance?c.string():c};var eb=/^position\.(my|at|adjust|target|container|viewport)|style|content|show\.ready/i,fb=/^prerender|show\.ready/i;z.set=function(a,b){if(this.destroyed)return this;{var c,e=this.rendered,f=E,g=this.options;this.checks}return"string"==typeof a?(c=a,a={},a[c]=b):a=d.extend({},a),d.each(a,function(b,c){if(e&&fb.test(b))return delete a[b],void 0;var h,j=i(g,b.toLowerCase());h=j[0][j[1]],j[0][j[1]]=c&&c.nodeType?d(c):c,f=eb.test(b)||f,a[b]=[j[0],j[1],c,h]}),h(g),this.positioning=D,d.each(a,d.proxy(j,this)),this.positioning=E,this.rendered&&this.tooltip[0].offsetWidth>0&&f&&this.reposition("mouse"===g.position.target?F:this.cache.event),this},z._update=function(a,b){var c=this,e=this.cache;return this.rendered&&a?(d.isFunction(a)&&(a=a.call(this.elements.target,e.event,this)||""),d.isFunction(a.then)?(e.waiting=D,a.then(function(a){return e.waiting=E,c._update(a,b)},F,function(a){return c._update(a,b)})):a===E||!a&&""!==a?E:(a.jquery&&a.length>0?b.empty().append(a.css({display:"block",visibility:"visible"})):b.html(a),this._waitForContent(b).then(function(a){a.images&&a.images.length&&c.rendered&&c.tooltip[0].offsetWidth>0&&c.reposition(e.event,!a.length)}))):E},z._waitForContent=function(a){var b=this.cache;return b.waiting=D,(d.fn.imagesLoaded?a.imagesLoaded():d.Deferred().resolve([])).done(function(){b.waiting=E}).promise()},z._updateContent=function(a,b){this._update(a,this.elements.content,b)},z._updateTitle=function(a,b){this._update(a,this.elements.title,b)===E&&this._removeTitle(E)},z._createTitle=function(){var a=this.elements,b=this._id+"-title";a.titlebar&&this._removeTitle(),a.titlebar=d("<div />",{"class":S+"-titlebar "+(this.options.style.widget?k("header"):"")}).append(a.title=d("<div />",{id:b,"class":S+"-title","aria-atomic":D})).insertBefore(a.content).delegate(".qtip-close","mousedown keydown mouseup keyup mouseout",function(a){d(this).toggleClass("ui-state-active ui-state-focus","down"===a.type.substr(-4))}).delegate(".qtip-close","mouseover mouseout",function(a){d(this).toggleClass("ui-state-hover","mouseover"===a.type)}),this.options.content.button&&this._createButton()},z._removeTitle=function(a){var b=this.elements;b.title&&(b.titlebar.remove(),b.titlebar=b.title=b.button=F,a!==E&&this.reposition())},z.reposition=function(c,e){if(!this.rendered||this.positioning||this.destroyed)return this;this.positioning=D;var f,g,h=this.cache,i=this.tooltip,j=this.options.position,k=j.target,l=j.my,m=j.at,n=j.viewport,o=j.container,p=j.adjust,q=p.method.split(" "),r=i.outerWidth(E),s=i.outerHeight(E),t=0,u=0,v=i.css("position"),w={left:0,top:0},x=i[0].offsetWidth>0,y=c&&"scroll"===c.type,z=d(a),A=o[0].ownerDocument,B=this.mouse;if(d.isArray(k)&&2===k.length)m={x:L,y:K},w={left:k[0],top:k[1]};else if("mouse"===k)m={x:L,y:K},!B||!B.pageX||!p.mouse&&c&&c.pageX?c&&c.pageX||((!p.mouse||this.options.show.distance)&&h.origin&&h.origin.pageX?c=h.origin:(!c||c&&("resize"===c.type||"scroll"===c.type))&&(c=h.event)):c=B,"static"!==v&&(w=o.offset()),A.body.offsetWidth!==(a.innerWidth||A.documentElement.clientWidth)&&(g=d(b.body).offset()),w={left:c.pageX-w.left+(g&&g.left||0),top:c.pageY-w.top+(g&&g.top||0)},p.mouse&&y&&B&&(w.left-=(B.scrollX||0)-z.scrollLeft(),w.top-=(B.scrollY||0)-z.scrollTop());else{if("event"===k?c&&c.target&&"scroll"!==c.type&&"resize"!==c.type?h.target=d(c.target):c.target||(h.target=this.elements.target):"event"!==k&&(h.target=d(k.jquery?k:this.elements.target)),k=h.target,k=d(k).eq(0),0===k.length)return this;k[0]===b||k[0]===a?(t=db.iOS?a.innerWidth:k.width(),u=db.iOS?a.innerHeight:k.height(),k[0]===a&&(w={top:(n||k).scrollTop(),left:(n||k).scrollLeft()})):R.imagemap&&k.is("area")?f=R.imagemap(this,k,m,R.viewport?q:E):R.svg&&k&&k[0].ownerSVGElement?f=R.svg(this,k,m,R.viewport?q:E):(t=k.outerWidth(E),u=k.outerHeight(E),w=k.offset()),f&&(t=f.width,u=f.height,g=f.offset,w=f.position),w=this.reposition.offset(k,w,o),(db.iOS>3.1&&db.iOS<4.1||db.iOS>=4.3&&db.iOS<4.33||!db.iOS&&"fixed"===v)&&(w.left-=z.scrollLeft(),w.top-=z.scrollTop()),(!f||f&&f.adjustable!==E)&&(w.left+=m.x===N?t:m.x===O?t/2:0,w.top+=m.y===M?u:m.y===O?u/2:0)}return w.left+=p.x+(l.x===N?-r:l.x===O?-r/2:0),w.top+=p.y+(l.y===M?-s:l.y===O?-s/2:0),R.viewport?(w.adjusted=R.viewport(this,w,j,t,u,r,s),g&&w.adjusted.left&&(w.left+=g.left),g&&w.adjusted.top&&(w.top+=g.top)):w.adjusted={left:0,top:0},this._trigger("move",[w,n.elem||n],c)?(delete w.adjusted,e===E||!x||isNaN(w.left)||isNaN(w.top)||"mouse"===k||!d.isFunction(j.effect)?i.css(w):d.isFunction(j.effect)&&(j.effect.call(i,this,d.extend({},w)),i.queue(function(a){d(this).css({opacity:"",height:""}),db.ie&&this.style.removeAttribute("filter"),a()})),this.positioning=E,this):this},z.reposition.offset=function(a,c,e){function f(a,b){c.left+=b*a.scrollLeft(),c.top+=b*a.scrollTop()}if(!e[0])return c;var g,h,i,j,k=d(a[0].ownerDocument),l=!!db.ie&&"CSS1Compat"!==b.compatMode,m=e[0];do"static"!==(h=d.css(m,"position"))&&("fixed"===h?(i=m.getBoundingClientRect(),f(k,-1)):(i=d(m).position(),i.left+=parseFloat(d.css(m,"borderLeftWidth"))||0,i.top+=parseFloat(d.css(m,"borderTopWidth"))||0),c.left-=i.left+(parseFloat(d.css(m,"marginLeft"))||0),c.top-=i.top+(parseFloat(d.css(m,"marginTop"))||0),g||"hidden"===(j=d.css(m,"overflow"))||"visible"===j||(g=d(m)));while(m=m.offsetParent);return g&&(g[0]!==k[0]||l)&&f(g,1),c};var gb=(A=z.reposition.Corner=function(a,b){a=(""+a).replace(/([A-Z])/," $1").replace(/middle/gi,O).toLowerCase(),this.x=(a.match(/left|right/i)||a.match(/center/)||["inherit"])[0].toLowerCase(),this.y=(a.match(/top|bottom|center/i)||["inherit"])[0].toLowerCase(),this.forceY=!!b;var c=a.charAt(0);this.precedance="t"===c||"b"===c?H:G}).prototype;gb.invert=function(a,b){this[a]=this[a]===L?N:this[a]===N?L:b||this[a]},gb.string=function(){var a=this.x,b=this.y;return a===b?a:this.precedance===H||this.forceY&&"center"!==b?b+" "+a:a+" "+b},gb.abbrev=function(){var a=this.string().split(" ");return a[0].charAt(0)+(a[1]&&a[1].charAt(0)||"")},gb.clone=function(){return new A(this.string(),this.forceY)},z.toggle=function(a,c){var e=this.cache,f=this.options,g=this.tooltip;if(c){if(/over|enter/.test(c.type)&&/out|leave/.test(e.event.type)&&f.show.target.add(c.target).length===f.show.target.length&&g.has(c.relatedTarget).length)return this;e.event=l(c)}if(this.waiting&&!a&&(this.hiddenDuringWait=D),!this.rendered)return a?this.render(1):this;if(this.destroyed||this.disabled)return this;var h,i,j,k=a?"show":"hide",m=this.options[k],n=(this.options[a?"hide":"show"],this.options.position),o=this.options.content,p=this.tooltip.css("width"),q=this.tooltip.is(":visible"),r=a||1===m.target.length,s=!c||m.target.length<2||e.target[0]===c.target;return(typeof a).search("boolean|number")&&(a=!q),h=!g.is(":animated")&&q===a&&s,i=h?F:!!this._trigger(k,[90]),this.destroyed?this:(i!==E&&a&&this.focus(c),!i||h?this:(d.attr(g[0],"aria-hidden",!a),a?(e.origin=l(this.mouse),d.isFunction(o.text)&&this._updateContent(o.text,E),d.isFunction(o.title)&&this._updateTitle(o.title,E),!C&&"mouse"===n.target&&n.adjust.mouse&&(d(b).bind("mousemove."+S,this._storeMouse),C=D),p||g.css("width",g.outerWidth(E)),this.reposition(c,arguments[2]),p||g.css("width",""),m.solo&&("string"==typeof m.solo?d(m.solo):d(W,m.solo)).not(g).not(m.target).qtip("hide",d.Event("tooltipsolo"))):(clearTimeout(this.timers.show),delete e.origin,C&&!d(W+'[tracking="true"]:visible',m.solo).not(g).length&&(d(b).unbind("mousemove."+S),C=E),this.blur(c)),j=d.proxy(function(){a?(db.ie&&g[0].style.removeAttribute("filter"),g.css("overflow",""),"string"==typeof m.autofocus&&d(this.options.show.autofocus,g).focus(),this.options.show.target.trigger("qtip-"+this.id+"-inactive")):g.css({display:"",visibility:"",opacity:"",left:"",top:""}),this._trigger(a?"visible":"hidden")},this),m.effect===E||r===E?(g[k](),j()):d.isFunction(m.effect)?(g.stop(1,1),m.effect.call(g,this),g.queue("fx",function(a){j(),a()})):g.fadeTo(90,a?1:0,j),a&&m.target.trigger("qtip-"+this.id+"-inactive"),this))},z.show=function(a){return this.toggle(D,a)},z.hide=function(a){return this.toggle(E,a)},z.focus=function(a){if(!this.rendered||this.destroyed)return this;var b=d(W),c=this.tooltip,e=parseInt(c[0].style.zIndex,10),f=y.zindex+b.length;return c.hasClass($)||this._trigger("focus",[f],a)&&(e!==f&&(b.each(function(){this.style.zIndex>e&&(this.style.zIndex=this.style.zIndex-1)}),b.filter("."+$).qtip("blur",a)),c.addClass($)[0].style.zIndex=f),this},z.blur=function(a){return!this.rendered||this.destroyed?this:(this.tooltip.removeClass($),this._trigger("blur",[this.tooltip.css("zIndex")],a),this)},z.disable=function(a){return this.destroyed?this:("toggle"===a?a=!(this.rendered?this.tooltip.hasClass(ab):this.disabled):"boolean"!=typeof a&&(a=D),this.rendered&&this.tooltip.toggleClass(ab,a).attr("aria-disabled",a),this.disabled=!!a,this)},z.enable=function(){return this.disable(E)},z._createButton=function(){var a=this,b=this.elements,c=b.tooltip,e=this.options.content.button,f="string"==typeof e,g=f?e:"Close tooltip";b.button&&b.button.remove(),b.button=e.jquery?e:d("<a />",{"class":"qtip-close "+(this.options.style.widget?"":S+"-icon"),title:g,"aria-label":g}).prepend(d("<span />",{"class":"ui-icon ui-icon-close",html:"×"})),b.button.appendTo(b.titlebar||c).attr("role","button").click(function(b){return c.hasClass(ab)||a.hide(b),E})},z._updateButton=function(a){if(!this.rendered)return E;var b=this.elements.button;a?this._createButton():b.remove()},z._setWidget=function(){var a=this.options.style.widget,b=this.elements,c=b.tooltip,d=c.hasClass(ab);c.removeClass(ab),ab=a?"ui-state-disabled":"qtip-disabled",c.toggleClass(ab,d),c.toggleClass("ui-helper-reset "+k(),a).toggleClass(Z,this.options.style.def&&!a),b.content&&b.content.toggleClass(k("content"),a),b.titlebar&&b.titlebar.toggleClass(k("header"),a),b.button&&b.button.toggleClass(S+"-icon",!a)},z._storeMouse=function(a){(this.mouse=l(a)).type="mousemove"},z._bind=function(a,b,c,e,f){var g="."+this._id+(e?"-"+e:"");b.length&&d(a).bind((b.split?b:b.join(g+" "))+g,d.proxy(c,f||this))},z._unbind=function(a,b){d(a).unbind("."+this._id+(b?"-"+b:""))};var hb="."+S;d(function(){r(W,["mouseenter","mouseleave"],function(a){var b="mouseenter"===a.type,c=d(a.currentTarget),e=d(a.relatedTarget||a.target),f=this.options;b?(this.focus(a),c.hasClass(Y)&&!c.hasClass(ab)&&clearTimeout(this.timers.hide)):"mouse"===f.position.target&&f.hide.event&&f.show.target&&!e.closest(f.show.target[0]).length&&this.hide(a),c.toggleClass(_,b)}),r("["+U+"]",X,p)}),z._trigger=function(a,b,c){var e=d.Event("tooltip"+a);return e.originalEvent=c&&d.extend({},c)||this.cache.event||F,this.triggering=a,this.tooltip.trigger(e,[this].concat(b||[])),this.triggering=E,!e.isDefaultPrevented()},z._bindEvents=function(a,b,c,e,f,g){if(e.add(c).length===e.length){var h=[];b=d.map(b,function(b){var c=d.inArray(b,a);return c>-1?(h.push(a.splice(c,1)[0]),void 0):b}),h.length&&this._bind(c,h,function(a){var b=this.rendered?this.tooltip[0].offsetWidth>0:!1;(b?g:f).call(this,a)})}this._bind(c,a,f),this._bind(e,b,g)},z._assignInitialEvents=function(a){function b(a){return this.disabled||this.destroyed?E:(this.cache.event=l(a),this.cache.target=a?d(a.target):[c],clearTimeout(this.timers.show),this.timers.show=m.call(this,function(){this.render("object"==typeof a||e.show.ready)},e.show.delay),void 0)}var e=this.options,f=e.show.target,g=e.hide.target,h=e.show.event?d.trim(""+e.show.event).split(" "):[],i=e.hide.event?d.trim(""+e.hide.event).split(" "):[];/mouse(over|enter)/i.test(e.show.event)&&!/mouse(out|leave)/i.test(e.hide.event)&&i.push("mouseleave"),this._bind(f,"mousemove",function(a){this._storeMouse(a),this.cache.onTarget=D}),this._bindEvents(h,i,f,g,b,function(){clearTimeout(this.timers.show)}),(e.show.ready||e.prerender)&&b.call(this,a)},z._assignEvents=function(){var c=this,e=this.options,f=e.position,g=this.tooltip,h=e.show.target,i=e.hide.target,j=f.container,k=f.viewport,l=d(b),m=(d(b.body),d(a)),r=e.show.event?d.trim(""+e.show.event).split(" "):[],s=e.hide.event?d.trim(""+e.hide.event).split(" "):[];d.each(e.events,function(a,b){c._bind(g,"toggle"===a?["tooltipshow","tooltiphide"]:["tooltip"+a],b,null,g)}),/mouse(out|leave)/i.test(e.hide.event)&&"window"===e.hide.leave&&this._bind(l,["mouseout","blur"],function(a){/select|option/.test(a.target.nodeName)||a.relatedTarget||this.hide(a)}),e.hide.fixed?i=i.add(g.addClass(Y)):/mouse(over|enter)/i.test(e.show.event)&&this._bind(i,"mouseleave",function(){clearTimeout(this.timers.show)}),(""+e.hide.event).indexOf("unfocus")>-1&&this._bind(j.closest("html"),["mousedown","touchstart"],function(a){var b=d(a.target),c=this.rendered&&!this.tooltip.hasClass(ab)&&this.tooltip[0].offsetWidth>0,e=b.parents(W).filter(this.tooltip[0]).length>0;b[0]===this.target[0]||b[0]===this.tooltip[0]||e||this.target.has(b[0]).length||!c||this.hide(a)}),"number"==typeof e.hide.inactive&&(this._bind(h,"qtip-"+this.id+"-inactive",p),this._bind(i.add(g),y.inactiveEvents,p,"-inactive")),this._bindEvents(r,s,h,i,n,o),this._bind(h.add(g),"mousemove",function(a){if("number"==typeof e.hide.distance){var b=this.cache.origin||{},c=this.options.hide.distance,d=Math.abs;(d(a.pageX-b.pageX)>=c||d(a.pageY-b.pageY)>=c)&&this.hide(a)}this._storeMouse(a)}),"mouse"===f.target&&f.adjust.mouse&&(e.hide.event&&this._bind(h,["mouseenter","mouseleave"],function(a){this.cache.onTarget="mouseenter"===a.type}),this._bind(l,"mousemove",function(a){this.rendered&&this.cache.onTarget&&!this.tooltip.hasClass(ab)&&this.tooltip[0].offsetWidth>0&&this.reposition(a)})),(f.adjust.resize||k.length)&&this._bind(d.event.special.resize?k:m,"resize",q),f.adjust.scroll&&this._bind(m.add(f.container),"scroll",q)},z._unassignEvents=function(){var c=[this.options.show.target[0],this.options.hide.target[0],this.rendered&&this.tooltip[0],this.options.position.container[0],this.options.position.viewport[0],this.options.position.container.closest("html")[0],a,b];this._unbind(d([]).pushStack(d.grep(c,function(a){return"object"==typeof a})))},y=d.fn.qtip=function(a,b,e){var f=(""+a).toLowerCase(),g=F,i=d.makeArray(arguments).slice(1),j=i[i.length-1],k=this[0]?d.data(this[0],S):F;return!arguments.length&&k||"api"===f?k:"string"==typeof a?(this.each(function(){var a=d.data(this,S);if(!a)return D;if(j&&j.timeStamp&&(a.cache.event=j),!b||"option"!==f&&"options"!==f)a[f]&&a[f].apply(a,i);else{if(e===c&&!d.isPlainObject(b))return g=a.get(b),E;a.set(b,e)}}),g!==F?g:this):"object"!=typeof a&&arguments.length?void 0:(k=h(d.extend(D,{},a)),this.each(function(a){var b,c;return c=d.isArray(k.id)?k.id[a]:k.id,c=!c||c===E||c.length<1||y.api[c]?y.nextid++:c,b=s(d(this),c,k),b===E?D:(y.api[c]=b,d.each(R,function(){"initialize"===this.initialize&&this(b)}),b._assignInitialEvents(j),void 0)}))},d.qtip=e,y.api={},d.each({attr:function(a,b){if(this.length){var c=this[0],e="title",f=d.data(c,"qtip");if(a===e&&f&&"object"==typeof f&&f.options.suppress)return arguments.length<2?d.attr(c,cb):(f&&f.options.content.attr===e&&f.cache.attr&&f.set("content.text",b),this.attr(cb,b))}return d.fn["attr"+bb].apply(this,arguments)},clone:function(a){var b=(d([]),d.fn["clone"+bb].apply(this,arguments));return a||b.filter("["+cb+"]").attr("title",function(){return d.attr(this,cb)}).removeAttr(cb),b}},function(a,b){if(!b||d.fn[a+bb])return D;var c=d.fn[a+bb]=d.fn[a];d.fn[a]=function(){return b.apply(this,arguments)||c.apply(this,arguments)}}),d.ui||(d["cleanData"+bb]=d.cleanData,d.cleanData=function(a){for(var b,c=0;(b=d(a[c])).length;c++)if(b.attr(T))try{b.triggerHandler("removeqtip")}catch(e){}d["cleanData"+bb].apply(this,arguments)}),y.version="2.2.0",y.nextid=0,y.inactiveEvents=X,y.zindex=15e3,y.defaults={prerender:E,id:E,overwrite:D,suppress:D,content:{text:D,attr:"title",title:E,button:E},position:{my:"top left",at:"bottom right",target:E,container:E,viewport:E,adjust:{x:0,y:0,mouse:D,scroll:D,resize:D,method:"flipinvert flipinvert"},effect:function(a,b){d(this).animate(b,{duration:200,queue:E})}},show:{target:E,event:"mouseenter",effect:D,delay:90,solo:E,ready:E,autofocus:E},hide:{target:E,event:"mouseleave",effect:D,delay:0,fixed:E,inactive:E,leave:"window",distance:E},style:{classes:"",widget:E,width:E,height:E,def:D},events:{render:F,move:F,show:F,hide:F,toggle:F,visible:F,hidden:F,focus:F,blur:F}};var ib,jb="margin",kb="border",lb="color",mb="background-color",nb="transparent",ob=" !important",pb=!!b.createElement("canvas").getContext,qb=/rgba?\(0, 0, 0(, 0)?\)|transparent|#123456/i,rb={},sb=["Webkit","O","Moz","ms"];if(pb)var tb=a.devicePixelRatio||1,ub=function(){var a=b.createElement("canvas").getContext("2d");return a.backingStorePixelRatio||a.webkitBackingStorePixelRatio||a.mozBackingStorePixelRatio||a.msBackingStorePixelRatio||a.oBackingStorePixelRatio||1}(),vb=tb/ub;else var wb=function(a,b,c){return"<qtipvml:"+a+' xmlns="urn:schemas-microsoft.com:vml" class="qtip-vml" '+(b||"")+' style="behavior: url(#default#VML); '+(c||"")+'" />'};d.extend(w.prototype,{init:function(a){var b,c;c=this.element=a.elements.tip=d("<div />",{"class":S+"-tip"}).prependTo(a.tooltip),pb?(b=d("<canvas />").appendTo(this.element)[0].getContext("2d"),b.lineJoin="miter",b.miterLimit=1e5,b.save()):(b=wb("shape",'coordorigin="0,0"',"position:absolute;"),this.element.html(b+b),a._bind(d("*",c).add(c),["click","mousedown"],function(a){a.stopPropagation()},this._ns)),a._bind(a.tooltip,"tooltipmove",this.reposition,this._ns,this),this.create()},_swapDimensions:function(){this.size[0]=this.options.height,this.size[1]=this.options.width},_resetDimensions:function(){this.size[0]=this.options.width,this.size[1]=this.options.height},_useTitle:function(a){var b=this.qtip.elements.titlebar;return b&&(a.y===K||a.y===O&&this.element.position().top+this.size[1]/2+this.options.offset<b.outerHeight(D))},_parseCorner:function(a){var b=this.qtip.options.position.my;return a===E||b===E?a=E:a===D?a=new A(b.string()):a.string||(a=new A(a),a.fixed=D),a},_parseWidth:function(a,b,c){var d=this.qtip.elements,e=kb+t(b)+"Width";return(c?v(c,e):v(d.content,e)||v(this._useTitle(a)&&d.titlebar||d.content,e)||v(d.tooltip,e))||0},_parseRadius:function(a){var b=this.qtip.elements,c=kb+t(a.y)+t(a.x)+"Radius";return db.ie<9?0:v(this._useTitle(a)&&b.titlebar||b.content,c)||v(b.tooltip,c)||0},_invalidColour:function(a,b,c){var d=a.css(b);return!d||c&&d===a.css(c)||qb.test(d)?E:d},_parseColours:function(a){var b=this.qtip.elements,c=this.element.css("cssText",""),e=kb+t(a[a.precedance])+t(lb),f=this._useTitle(a)&&b.titlebar||b.content,g=this._invalidColour,h=[];return h[0]=g(c,mb)||g(f,mb)||g(b.content,mb)||g(b.tooltip,mb)||c.css(mb),h[1]=g(c,e,lb)||g(f,e,lb)||g(b.content,e,lb)||g(b.tooltip,e,lb)||b.tooltip.css(e),d("*",c).add(c).css("cssText",mb+":"+nb+ob+";"+kb+":0"+ob+";"),h},_calculateSize:function(a){var b,c,d,e=a.precedance===H,f=this.options.width,g=this.options.height,h="c"===a.abbrev(),i=(e?f:g)*(h?.5:1),j=Math.pow,k=Math.round,l=Math.sqrt(j(i,2)+j(g,2)),m=[this.border/i*l,this.border/g*l];return m[2]=Math.sqrt(j(m[0],2)-j(this.border,2)),m[3]=Math.sqrt(j(m[1],2)-j(this.border,2)),b=l+m[2]+m[3]+(h?0:m[0]),c=b/l,d=[k(c*f),k(c*g)],e?d:d.reverse()},_calculateTip:function(a,b,c){c=c||1,b=b||this.size;var d=b[0]*c,e=b[1]*c,f=Math.ceil(d/2),g=Math.ceil(e/2),h={br:[0,0,d,e,d,0],bl:[0,0,d,0,0,e],tr:[0,e,d,0,d,e],tl:[0,0,0,e,d,e],tc:[0,e,f,0,d,e],bc:[0,0,d,0,f,e],rc:[0,0,d,g,0,e],lc:[d,0,d,e,0,g]};return h.lt=h.br,h.rt=h.bl,h.lb=h.tr,h.rb=h.tl,h[a.abbrev()]},_drawCoords:function(a,b){a.beginPath(),a.moveTo(b[0],b[1]),a.lineTo(b[2],b[3]),a.lineTo(b[4],b[5]),a.closePath()},create:function(){var a=this.corner=(pb||db.ie)&&this._parseCorner(this.options.corner);return(this.enabled=!!this.corner&&"c"!==this.corner.abbrev())&&(this.qtip.cache.corner=a.clone(),this.update()),this.element.toggle(this.enabled),this.corner},update:function(b,c){if(!this.enabled)return this;var e,f,g,h,i,j,k,l,m=this.qtip.elements,n=this.element,o=n.children(),p=this.options,q=this.size,r=p.mimic,s=Math.round;b||(b=this.qtip.cache.corner||this.corner),r===E?r=b:(r=new A(r),r.precedance=b.precedance,"inherit"===r.x?r.x=b.x:"inherit"===r.y?r.y=b.y:r.x===r.y&&(r[b.precedance]=b[b.precedance])),f=r.precedance,b.precedance===G?this._swapDimensions():this._resetDimensions(),e=this.color=this._parseColours(b),e[1]!==nb?(l=this.border=this._parseWidth(b,b[b.precedance]),p.border&&1>l&&!qb.test(e[1])&&(e[0]=e[1]),this.border=l=p.border!==D?p.border:l):this.border=l=0,k=this.size=this._calculateSize(b),n.css({width:k[0],height:k[1],lineHeight:k[1]+"px"}),j=b.precedance===H?[s(r.x===L?l:r.x===N?k[0]-q[0]-l:(k[0]-q[0])/2),s(r.y===K?k[1]-q[1]:0)]:[s(r.x===L?k[0]-q[0]:0),s(r.y===K?l:r.y===M?k[1]-q[1]-l:(k[1]-q[1])/2)],pb?(g=o[0].getContext("2d"),g.restore(),g.save(),g.clearRect(0,0,6e3,6e3),h=this._calculateTip(r,q,vb),i=this._calculateTip(r,this.size,vb),o.attr(I,k[0]*vb).attr(J,k[1]*vb),o.css(I,k[0]).css(J,k[1]),this._drawCoords(g,i),g.fillStyle=e[1],g.fill(),g.translate(j[0]*vb,j[1]*vb),this._drawCoords(g,h),g.fillStyle=e[0],g.fill()):(h=this._calculateTip(r),h="m"+h[0]+","+h[1]+" l"+h[2]+","+h[3]+" "+h[4]+","+h[5]+" xe",j[2]=l&&/^(r|b)/i.test(b.string())?8===db.ie?2:1:0,o.css({coordsize:k[0]+l+" "+(k[1]+l),antialias:""+(r.string().indexOf(O)>-1),left:j[0]-j[2]*Number(f===G),top:j[1]-j[2]*Number(f===H),width:k[0]+l,height:k[1]+l}).each(function(a){var b=d(this);b[b.prop?"prop":"attr"]({coordsize:k[0]+l+" "+(k[1]+l),path:h,fillcolor:e[0],filled:!!a,stroked:!a}).toggle(!(!l&&!a)),!a&&b.html(wb("stroke",'weight="'+2*l+'px" color="'+e[1]+'" miterlimit="1000" joinstyle="miter"'))})),a.opera&&setTimeout(function(){m.tip.css({display:"inline-block",visibility:"visible"})},1),c!==E&&this.calculate(b,k)},calculate:function(a,b){if(!this.enabled)return E;var c,e,f=this,g=this.qtip.elements,h=this.element,i=this.options.offset,j=(g.tooltip.hasClass("ui-widget"),{});return a=a||this.corner,c=a.precedance,b=b||this._calculateSize(a),e=[a.x,a.y],c===G&&e.reverse(),d.each(e,function(d,e){var h,k,l;e===O?(h=c===H?L:K,j[h]="50%",j[jb+"-"+h]=-Math.round(b[c===H?0:1]/2)+i):(h=f._parseWidth(a,e,g.tooltip),k=f._parseWidth(a,e,g.content),l=f._parseRadius(a),j[e]=Math.max(-f.border,d?k:i+(l>h?l:-h)))
|
4 |
+
}),j[a[c]]-=b[c===G?0:1],h.css({margin:"",top:"",bottom:"",left:"",right:""}).css(j),j},reposition:function(a,b,d){function e(a,b,c,d,e){a===Q&&j.precedance===b&&k[d]&&j[c]!==O?j.precedance=j.precedance===G?H:G:a!==Q&&k[d]&&(j[b]=j[b]===O?k[d]>0?d:e:j[b]===d?e:d)}function f(a,b,e){j[a]===O?p[jb+"-"+b]=o[a]=g[jb+"-"+b]-k[b]:(h=g[e]!==c?[k[b],-g[b]]:[-k[b],g[b]],(o[a]=Math.max(h[0],h[1]))>h[0]&&(d[b]-=k[b],o[b]=E),p[g[e]!==c?e:b]=o[a])}if(this.enabled){var g,h,i=b.cache,j=this.corner.clone(),k=d.adjusted,l=b.options.position.adjust.method.split(" "),m=l[0],n=l[1]||l[0],o={left:E,top:E,x:0,y:0},p={};this.corner.fixed!==D&&(e(m,G,H,L,N),e(n,H,G,K,M),j.string()===i.corner.string()||i.cornerTop===k.top&&i.cornerLeft===k.left||this.update(j,E)),g=this.calculate(j),g.right!==c&&(g.left=-g.right),g.bottom!==c&&(g.top=-g.bottom),g.user=this.offset,(o.left=m===Q&&!!k.left)&&f(G,L,N),(o.top=n===Q&&!!k.top)&&f(H,K,M),this.element.css(p).toggle(!(o.x&&o.y||j.x===O&&o.y||j.y===O&&o.x)),d.left-=g.left.charAt?g.user:m!==Q||o.top||!o.left&&!o.top?g.left+this.border:0,d.top-=g.top.charAt?g.user:n!==Q||o.left||!o.left&&!o.top?g.top+this.border:0,i.cornerLeft=k.left,i.cornerTop=k.top,i.corner=j.clone()}},destroy:function(){this.qtip._unbind(this.qtip.tooltip,this._ns),this.qtip.elements.tip&&this.qtip.elements.tip.find("*").remove().end().remove()}}),ib=R.tip=function(a){return new w(a,a.options.style.tip)},ib.initialize="render",ib.sanitize=function(a){if(a.style&&"tip"in a.style){var b=a.style.tip;"object"!=typeof b&&(b=a.style.tip={corner:b}),/string|boolean/i.test(typeof b.corner)||(b.corner=D)}},B.tip={"^position.my|style.tip.(corner|mimic|border)$":function(){this.create(),this.qtip.reposition()},"^style.tip.(height|width)$":function(a){this.size=[a.width,a.height],this.update(),this.qtip.reposition()},"^content.title|style.(classes|widget)$":function(){this.update()}},d.extend(D,y.defaults,{style:{tip:{corner:D,mimic:E,width:6,height:6,border:D,offset:0}}}),R.viewport=function(c,d,e,f,g,h,i){function j(a,b,c,e,f,g,h,i,j){var k=d[f],m=v[a],t=w[a],u=c===Q,x=m===f?j:m===g?-j:-j/2,y=t===f?i:t===g?-i:-i/2,z=r[f]+s[f]-(o?0:n[f]),A=z-k,B=k+j-(h===I?p:q)-z,C=x-(v.precedance===a||m===v[b]?y:0)-(t===O?i/2:0);return u?(C=(m===f?1:-1)*x,d[f]+=A>0?A:B>0?-B:0,d[f]=Math.max(-n[f]+s[f],k-C,Math.min(Math.max(-n[f]+s[f]+(h===I?p:q),k+C),d[f],"center"===m?k-x:1e9))):(e*=c===P?2:0,A>0&&(m!==f||B>0)?(d[f]-=C+e,l.invert(a,f)):B>0&&(m!==g||A>0)&&(d[f]-=(m===O?-C:C)+e,l.invert(a,g)),d[f]<r&&-d[f]>B&&(d[f]=k,l=v.clone())),d[f]-k}var k,l,m,n,o,p,q,r,s,t=e.target,u=c.elements.tooltip,v=e.my,w=e.at,x=e.adjust,y=x.method.split(" "),z=y[0],A=y[1]||y[0],B=e.viewport,C=e.container,D=c.cache,F={left:0,top:0};return B.jquery&&t[0]!==a&&t[0]!==b.body&&"none"!==x.method?(n=C.offset()||F,o="static"===C.css("position"),k="fixed"===u.css("position"),p=B[0]===a?B.width():B.outerWidth(E),q=B[0]===a?B.height():B.outerHeight(E),r={left:k?0:B.scrollLeft(),top:k?0:B.scrollTop()},s=B.offset()||F,("shift"!==z||"shift"!==A)&&(l=v.clone()),F={left:"none"!==z?j(G,H,z,x.x,L,N,I,f,h):0,top:"none"!==A?j(H,G,A,x.y,K,M,J,g,i):0},l&&D.lastClass!==(m=S+"-pos-"+l.abbrev())&&u.removeClass(c.cache.lastClass).addClass(c.cache.lastClass=m),F):F},R.polys={polygon:function(a,b){var c,d,e,f={width:0,height:0,position:{top:1e10,right:0,bottom:0,left:1e10},adjustable:E},g=0,h=[],i=1,j=1,k=0,l=0;for(g=a.length;g--;)c=[parseInt(a[--g],10),parseInt(a[g+1],10)],c[0]>f.position.right&&(f.position.right=c[0]),c[0]<f.position.left&&(f.position.left=c[0]),c[1]>f.position.bottom&&(f.position.bottom=c[1]),c[1]<f.position.top&&(f.position.top=c[1]),h.push(c);if(d=f.width=Math.abs(f.position.right-f.position.left),e=f.height=Math.abs(f.position.bottom-f.position.top),"c"===b.abbrev())f.position={left:f.position.left+f.width/2,top:f.position.top+f.height/2};else{for(;d>0&&e>0&&i>0&&j>0;)for(d=Math.floor(d/2),e=Math.floor(e/2),b.x===L?i=d:b.x===N?i=f.width-d:i+=Math.floor(d/2),b.y===K?j=e:b.y===M?j=f.height-e:j+=Math.floor(e/2),g=h.length;g--&&!(h.length<2);)k=h[g][0]-f.position.left,l=h[g][1]-f.position.top,(b.x===L&&k>=i||b.x===N&&i>=k||b.x===O&&(i>k||k>f.width-i)||b.y===K&&l>=j||b.y===M&&j>=l||b.y===O&&(j>l||l>f.height-j))&&h.splice(g,1);f.position={left:h[0][0],top:h[0][1]}}return f},rect:function(a,b,c,d){return{width:Math.abs(c-a),height:Math.abs(d-b),position:{left:Math.min(a,c),top:Math.min(b,d)}}},_angles:{tc:1.5,tr:7/4,tl:5/4,bc:.5,br:.25,bl:.75,rc:2,lc:1,c:0},ellipse:function(a,b,c,d,e){var f=R.polys._angles[e.abbrev()],g=0===f?0:c*Math.cos(f*Math.PI),h=d*Math.sin(f*Math.PI);return{width:2*c-Math.abs(g),height:2*d-Math.abs(h),position:{left:a+g,top:b+h},adjustable:E}},circle:function(a,b,c,d){return R.polys.ellipse(a,b,c,c,d)}},R.imagemap=function(a,b,c){b.jquery||(b=d(b));var e,f,g,h,i,j=b.attr("shape").toLowerCase().replace("poly","polygon"),k=d('img[usemap="#'+b.parent("map").attr("name")+'"]'),l=d.trim(b.attr("coords")),m=l.replace(/,$/,"").split(",");if(!k.length)return E;if("polygon"===j)h=R.polys.polygon(m,c);else{if(!R.polys[j])return E;for(g=-1,i=m.length,f=[];++g<i;)f.push(parseInt(m[g],10));h=R.polys[j].apply(this,f.concat(c))}return e=k.offset(),e.left+=Math.ceil((k.outerWidth(E)-k.width())/2),e.top+=Math.ceil((k.outerHeight(E)-k.height())/2),h.position.left+=e.left,h.position.top+=e.top,h},R.svg=function(a,c,e){for(var f,g,h,i,j,k,l,m,n,o,p,q=d(b),r=c[0],s=d(r.ownerSVGElement),t=1,u=1,v=!0;!r.getBBox;)r=r.parentNode;if(!r.getBBox||!r.parentNode)return E;f=s.attr("width")||s.width()||parseInt(s.css("width"),10),g=s.attr("height")||s.height()||parseInt(s.css("height"),10);var w=(parseInt(c.css("stroke-width"),10)||0)/2;switch(w&&(t+=w/f,u+=w/g),r.nodeName){case"ellipse":case"circle":o=R.polys.ellipse(r.cx.baseVal.value,r.cy.baseVal.value,(r.rx||r.r).baseVal.value+w,(r.ry||r.r).baseVal.value+w,e);break;case"line":case"polygon":case"polyline":for(n=r.points||[{x:r.x1.baseVal.value,y:r.y1.baseVal.value},{x:r.x2.baseVal.value,y:r.y2.baseVal.value}],o=[],m=-1,k=n.numberOfItems||n.length;++m<k;)l=n.getItem?n.getItem(m):n[m],o.push.apply(o,[l.x,l.y]);o=R.polys.polygon(o,e);break;default:o=r.getBoundingClientRect(),o={width:o.width,height:o.height,position:{left:o.left,top:o.top}},v=!1}return p=o.position,s=s[0],v&&(s.createSVGPoint&&(h=r.getScreenCTM(),n=s.createSVGPoint(),n.x=p.left,n.y=p.top,i=n.matrixTransform(h),p.left=i.x,p.top=i.y),s.viewBox&&(j=s.viewBox.baseVal)&&j.width&&j.height&&(t*=f/j.width,u*=g/j.height)),p.left+=q.scrollLeft(),p.top+=q.scrollTop(),o};var xb,yb,zb="qtip-modal",Ab="."+zb;yb=function(){function a(a){if(d.expr[":"].focusable)return d.expr[":"].focusable;var b,c,e,f=!isNaN(d.attr(a,"tabindex")),g=a.nodeName&&a.nodeName.toLowerCase();return"area"===g?(b=a.parentNode,c=b.name,a.href&&c&&"map"===b.nodeName.toLowerCase()?(e=d("img[usemap=#"+c+"]")[0],!!e&&e.is(":visible")):!1):/input|select|textarea|button|object/.test(g)?!a.disabled:"a"===g?a.href||f:f}function c(a){k.length<1&&a.length?a.not("body").blur():k.first().focus()}function e(a){if(i.is(":visible")){var b,e=d(a.target),h=f.tooltip,j=e.closest(W);b=j.length<1?E:parseInt(j[0].style.zIndex,10)>parseInt(h[0].style.zIndex,10),b||e.closest(W)[0]===h[0]||c(e),g=a.target===k[k.length-1]}}var f,g,h,i,j=this,k={};d.extend(j,{init:function(){return i=j.elem=d("<div />",{id:"qtip-overlay",html:"<div></div>",mousedown:function(){return E}}).hide(),d(b.body).bind("focusin"+Ab,e),d(b).bind("keydown"+Ab,function(a){f&&f.options.show.modal.escape&&27===a.keyCode&&f.hide(a)}),i.bind("click"+Ab,function(a){f&&f.options.show.modal.blur&&f.hide(a)}),j},update:function(b){f=b,k=b.options.show.modal.stealfocus!==E?b.tooltip.find("*").filter(function(){return a(this)}):[]},toggle:function(a,e,g){var k=(d(b.body),a.tooltip),l=a.options.show.modal,m=l.effect,n=e?"show":"hide",o=i.is(":visible"),p=d(Ab).filter(":visible:not(:animated)").not(k);return j.update(a),e&&l.stealfocus!==E&&c(d(":focus")),i.toggleClass("blurs",l.blur),e&&i.appendTo(b.body),i.is(":animated")&&o===e&&h!==E||!e&&p.length?j:(i.stop(D,E),d.isFunction(m)?m.call(i,e):m===E?i[n]():i.fadeTo(parseInt(g,10)||90,e?1:0,function(){e||i.hide()}),e||i.queue(function(a){i.css({left:"",top:""}),d(Ab).length||i.detach(),a()}),h=e,f.destroyed&&(f=F),j)}}),j.init()},yb=new yb,d.extend(x.prototype,{init:function(a){var b=a.tooltip;return this.options.on?(a.elements.overlay=yb.elem,b.addClass(zb).css("z-index",y.modal_zindex+d(Ab).length),a._bind(b,["tooltipshow","tooltiphide"],function(a,c,e){var f=a.originalEvent;if(a.target===b[0])if(f&&"tooltiphide"===a.type&&/mouse(leave|enter)/.test(f.type)&&d(f.relatedTarget).closest(yb.elem[0]).length)try{a.preventDefault()}catch(g){}else(!f||f&&"tooltipsolo"!==f.type)&&this.toggle(a,"tooltipshow"===a.type,e)},this._ns,this),a._bind(b,"tooltipfocus",function(a,c){if(!a.isDefaultPrevented()&&a.target===b[0]){var e=d(Ab),f=y.modal_zindex+e.length,g=parseInt(b[0].style.zIndex,10);yb.elem[0].style.zIndex=f-1,e.each(function(){this.style.zIndex>g&&(this.style.zIndex-=1)}),e.filter("."+$).qtip("blur",a.originalEvent),b.addClass($)[0].style.zIndex=f,yb.update(c);try{a.preventDefault()}catch(h){}}},this._ns,this),a._bind(b,"tooltiphide",function(a){a.target===b[0]&&d(Ab).filter(":visible").not(b).last().qtip("focus",a)},this._ns,this),void 0):this},toggle:function(a,b,c){return a&&a.isDefaultPrevented()?this:(yb.toggle(this.qtip,!!b,c),void 0)},destroy:function(){this.qtip.tooltip.removeClass(zb),this.qtip._unbind(this.qtip.tooltip,this._ns),yb.toggle(this.qtip,E),delete this.qtip.elements.overlay}}),xb=R.modal=function(a){return new x(a,a.options.show.modal)},xb.sanitize=function(a){a.show&&("object"!=typeof a.show.modal?a.show.modal={on:!!a.show.modal}:"undefined"==typeof a.show.modal.on&&(a.show.modal.on=D))},y.modal_zindex=y.zindex-200,xb.initialize="render",B.modal={"^show.modal.(on|blur)$":function(){this.destroy(),this.init(),this.qtip.elems.overlay.toggle(this.qtip.tooltip[0].offsetWidth>0)}},d.extend(D,y.defaults,{show:{modal:{on:E,effect:D,blur:D,stealfocus:D,escape:D}}})})}(window,document);
|
|
admin/views/admin-widget.php
CHANGED
@@ -1,61 +1,61 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Represents the admin view for Google Maps Builder widget.
|
4 |
-
* *
|
5 |
-
* @package Google_Maps_Builder
|
6 |
-
* @author Devin Walker <devin@wordimpress.com>
|
7 |
-
* @license GPL-2.0+
|
8 |
-
* @link http://wordimpress.com
|
9 |
-
* @copyright 2014 WordImpress, Devin Walker
|
10 |
-
*/
|
11 |
-
|
12 |
-
?>
|
13 |
-
<!-- Title -->
|
14 |
-
<p>
|
15 |
-
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Widget Title', $this->plugin_slug ); ?></label>
|
16 |
-
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo $title; ?>" />
|
17 |
-
</p>
|
18 |
-
|
19 |
-
|
20 |
-
<!-- API Options -->
|
21 |
-
<p class="widget-api-option">
|
22 |
-
<label for="<?php echo $this->get_field_id( 'api_option' ); ?>"><?php _e( 'API Request Method:', $this->plugin_slug ); ?></label><br />
|
23 |
-
<span class="wpgp-method-span place-details-api-option-wrap">
|
24 |
-
<input type="radio" name="<?php echo $this->get_field_name( 'api_option' ); ?>" class="<?php echo $this->get_field_id( 'api_option' ); ?> " value="0" <?php checked( '0', $api_option ); ?>><span class="wpgp-method-label"><?php _e( 'Place Details', $this->plugin_slug ); ?></span><img src="<?php echo GMB_PLUGIN_URL . '/admin/assets/img/help.png' ?>" title="<?php _e( 'Google Place Details allows you to display more details about a particular establishment. This method returns more comprehensive information about the indicated place such as its complete address, phone number, user rating and reviews.', $this->plugin_slug ); ?>" class="tooltip-info" width="16" height="16" /><br />
|
25 |
-
</span>
|
26 |
-
<span class="wpgp-method-span place-search-api-option-wrap">
|
27 |
-
<input type="radio" name="<?php echo $this->get_field_name( 'api_option' ); ?>" class="<?php echo $this->get_field_id( 'api_option' ); ?> business-api-option" value="1" <?php checked( '1', $api_option ); ?>><span class="wpgp-method-label"><?php _e( 'Place Search', $this->plugin_slug ); ?></span><img src="<?php echo GMB_PLUGIN_URL . '/admin/assets/img/help.png' ?>" title="<?php _e( 'This option allows you to query for place information on a variety of categories, such as: establishments, prominent points of interest, geographic locations, and more. You can search for places either by proximity or a text string. A Place Search returns a list of Places along with summary information about each Place; additional information is available via a Place Details query.', $this->plugin_slug ); ?>" class="tooltip-info" width="16" height="16" />
|
28 |
-
</span>
|
29 |
-
</p>
|
30 |
-
|
31 |
-
<!-- Google Places Lookup Autocomplete Search Form -->
|
32 |
-
<div class="google-autocomplete-map-wrap" <?php if ( $api_option == '0' ) { ?> style="display:block;" <?php } ?>>
|
33 |
-
<input class="pac-input controls" type="text" placeholder="Enter a location">
|
34 |
-
|
35 |
-
<div class="map-canvas"></div>
|
36 |
-
|
37 |
-
<div class="type-selector controls">
|
38 |
-
<ul class="map-control-list clearfix">
|
39 |
-
<li>
|
40 |
-
<input type="radio" name="type" id="changetype-all" checked="checked">
|
41 |
-
<label for="changetype-all"><?php _e( 'All' ); ?></label>
|
42 |
-
</li>
|
43 |
-
<li>
|
44 |
-
<input type="radio" name="type" id="changetype-establishment">
|
45 |
-
<label for="changetype-establishment"><?php _e( 'Establishments' ); ?></label>
|
46 |
-
</li>
|
47 |
-
<li>
|
48 |
-
<input type="radio" name="type" id="changetype-geocode">
|
49 |
-
<label for="changetype-geocode"><?php _e( 'Geocodes' ); ?></label>
|
50 |
-
</li>
|
51 |
-
</ul>
|
52 |
-
</div>
|
53 |
-
|
54 |
-
|
55 |
-
<input class="widefat place-detail-reference" id="<?php echo $this->get_field_id( 'place_detail_reference' ); ?>" name="<?php echo $this->get_field_name( 'place_detail_reference' ); ?>" type="text" value="<?php echo $place_detail_reference; ?>" />
|
56 |
-
|
57 |
-
</div>
|
58 |
-
|
59 |
-
<div class="widget-footer">
|
60 |
-
<div class="powered-by-google"></div>
|
61 |
-
</div>
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Represents the admin view for Google Maps Builder widget.
|
4 |
+
* *
|
5 |
+
* @package Google_Maps_Builder
|
6 |
+
* @author Devin Walker <devin@wordimpress.com>
|
7 |
+
* @license GPL-2.0+
|
8 |
+
* @link http://wordimpress.com
|
9 |
+
* @copyright 2014 WordImpress, Devin Walker
|
10 |
+
*/
|
11 |
+
|
12 |
+
?>
|
13 |
+
<!-- Title -->
|
14 |
+
<p>
|
15 |
+
<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Widget Title', $this->plugin_slug ); ?></label>
|
16 |
+
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo $title; ?>" />
|
17 |
+
</p>
|
18 |
+
|
19 |
+
|
20 |
+
<!-- API Options -->
|
21 |
+
<p class="widget-api-option">
|
22 |
+
<label for="<?php echo $this->get_field_id( 'api_option' ); ?>"><?php _e( 'API Request Method:', $this->plugin_slug ); ?></label><br />
|
23 |
+
<span class="wpgp-method-span place-details-api-option-wrap">
|
24 |
+
<input type="radio" name="<?php echo $this->get_field_name( 'api_option' ); ?>" class="<?php echo $this->get_field_id( 'api_option' ); ?> " value="0" <?php checked( '0', $api_option ); ?>><span class="wpgp-method-label"><?php _e( 'Place Details', $this->plugin_slug ); ?></span><img src="<?php echo GMB_PLUGIN_URL . '/admin/assets/img/help.png' ?>" title="<?php _e( 'Google Place Details allows you to display more details about a particular establishment. This method returns more comprehensive information about the indicated place such as its complete address, phone number, user rating and reviews.', $this->plugin_slug ); ?>" class="tooltip-info" width="16" height="16" /><br />
|
25 |
+
</span>
|
26 |
+
<span class="wpgp-method-span place-search-api-option-wrap">
|
27 |
+
<input type="radio" name="<?php echo $this->get_field_name( 'api_option' ); ?>" class="<?php echo $this->get_field_id( 'api_option' ); ?> business-api-option" value="1" <?php checked( '1', $api_option ); ?>><span class="wpgp-method-label"><?php _e( 'Place Search', $this->plugin_slug ); ?></span><img src="<?php echo GMB_PLUGIN_URL . '/admin/assets/img/help.png' ?>" title="<?php _e( 'This option allows you to query for place information on a variety of categories, such as: establishments, prominent points of interest, geographic locations, and more. You can search for places either by proximity or a text string. A Place Search returns a list of Places along with summary information about each Place; additional information is available via a Place Details query.', $this->plugin_slug ); ?>" class="tooltip-info" width="16" height="16" />
|
28 |
+
</span>
|
29 |
+
</p>
|
30 |
+
|
31 |
+
<!-- Google Places Lookup Autocomplete Search Form -->
|
32 |
+
<div class="google-autocomplete-map-wrap" <?php if ( $api_option == '0' ) { ?> style="display:block;" <?php } ?>>
|
33 |
+
<input class="pac-input controls" type="text" placeholder="Enter a location">
|
34 |
+
|
35 |
+
<div class="map-canvas"></div>
|
36 |
+
|
37 |
+
<div class="type-selector controls">
|
38 |
+
<ul class="map-control-list clearfix">
|
39 |
+
<li>
|
40 |
+
<input type="radio" name="type" id="changetype-all" checked="checked">
|
41 |
+
<label for="changetype-all"><?php _e( 'All' ); ?></label>
|
42 |
+
</li>
|
43 |
+
<li>
|
44 |
+
<input type="radio" name="type" id="changetype-establishment">
|
45 |
+
<label for="changetype-establishment"><?php _e( 'Establishments' ); ?></label>
|
46 |
+
</li>
|
47 |
+
<li>
|
48 |
+
<input type="radio" name="type" id="changetype-geocode">
|
49 |
+
<label for="changetype-geocode"><?php _e( 'Geocodes' ); ?></label>
|
50 |
+
</li>
|
51 |
+
</ul>
|
52 |
+
</div>
|
53 |
+
|
54 |
+
|
55 |
+
<input class="widefat place-detail-reference" id="<?php echo $this->get_field_id( 'place_detail_reference' ); ?>" name="<?php echo $this->get_field_name( 'place_detail_reference' ); ?>" type="text" value="<?php echo $place_detail_reference; ?>" />
|
56 |
+
|
57 |
+
</div>
|
58 |
+
|
59 |
+
<div class="widget-footer">
|
60 |
+
<div class="powered-by-google"></div>
|
61 |
+
</div>
|
admin/views/logo-svg-small.php
CHANGED
@@ -1,33 +1,33 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* LOGO SVG
|
4 |
-
*
|
5 |
-
* @package Google_Maps_Builder
|
6 |
-
* @author Devin Walker <devin@wordimpress.com>
|
7 |
-
* @license GPL-2.0+
|
8 |
-
* @link http://wordimpress.com
|
9 |
-
* @copyright 2014 WordImpress, Devin Walker
|
10 |
-
*/
|
11 |
-
?>
|
12 |
-
|
13 |
-
<svg height="35px" id="Layer_1" style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="35px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="flat_x5F_8">
|
14 |
-
<g>
|
15 |
-
<path d="M424.574,447.998l-25.471-6.039l77.041-316.293c-11.028-18.652-24.314-35.824-39.56-51.053 l-19.13,78.383L202.053,101.92L226.582,1.405c-19.051,2.152-37.457,6.407-55.006,12.514L152.948,90.28L77.144,72.303 c-13.296,12.945-25.186,27.313-35.437,42.88l99.446,23.58L85.485,367.595l-67.161-15.896c8.636,21.324,20.039,41.22,33.805,59.239 l21.566,5.14l-3.812,15.668c12.955,13.675,27.366,25.967,43.053,36.515l9.862-40.541l245.086,58.11 C388.496,475.764,407.523,462.987,424.574,447.998z M190.26,150.403l215.405,51.075l-55.666,228.84l-215.405-51.081 L190.26,150.403z" style="fill:#FFF8A3;" />
|
16 |
-
<path d="M417.456,152.996l-40.345-9.564l-41.879,41.348l70.433,16.699l-55.666,228.84l-212.431-50.377 l-60.126,59.369c10.944,10.652,22.775,20.396,35.497,28.951l9.862-40.541l245.086,58.111 c20.608-10.068,39.637-22.846,56.688-37.834l-25.471-6.039l77.041-316.293c-9.802-16.58-21.396-31.982-34.558-45.895l-8.246,8.143 L417.456,152.996z" style="fill:#E1D78F;" />
|
17 |
-
<g>
|
18 |
-
<path d="M69.887,431.748l3.812-15.668l-21.566-5.141C57.67,418.198,63.612,425.135,69.887,431.748z" style="fill:#AAC26F;" />
|
19 |
-
<path d="M-0.344,255.718c0,33.956,6.664,66.331,18.67,95.981l67.161,15.896l55.668-228.832l-99.446-23.58 C15.153,155.528-0.344,203.8-0.344,255.718z" style="fill:#AAC26F;" />
|
20 |
-
<path d="M255.657-0.283c-9.836,0-19.527,0.611-29.074,1.688L202.054,101.92l215.402,51.075l19.13-78.382 C390.268,28.338,326.307-0.283,255.657-0.283z" style="fill:#AAC26F;" />
|
21 |
-
<path d="M152.949,90.28l18.628-76.361c-35.746,12.424-67.882,32.539-94.432,58.386L152.949,90.28z" style="fill:#AAC26F;" />
|
22 |
-
</g>
|
23 |
-
<polygon points="134.594,379.237 349.999,430.318 405.665,201.479 190.26,150.403 " style="fill:#6AAFDA;" />
|
24 |
-
<g>
|
25 |
-
<path d="M112.939,468.262c40.778,27.436,89.875,43.455,142.718,43.455 c40.263,0,78.341-9.322,112.229-25.885l-245.085-58.111L112.939,468.262z" style="fill:#5E9CC1;" />
|
26 |
-
<polygon points="405.665,201.479 335.232,184.779 137.568,379.941 349.999,430.318 " style="fill:#5E9CC1;" />
|
27 |
-
</g>
|
28 |
-
<path d="M511.656,255.718c0-47.491-12.975-91.925-35.512-130.052l-77.041,316.293l25.471,6.039 C477.936,401.082,511.656,332.359,511.656,255.718z" style="fill:#C6A963;" />
|
29 |
-
<path d="M497.996,113.431c0,48.554-67.83,190.112-89.042,190.112c-20.666,0-89.044-141.56-89.044-190.112 c0-48.554,39.865-87.915,89.044-87.915C458.131,25.516,497.996,64.877,497.996,113.431z" style="fill:#F05D4A;" />
|
30 |
-
<path d="M454.284,115.528c0-24.716-20.296-44.749-45.33-44.749c-25.033,0-45.33,20.033-45.33,44.749 c0,24.719,20.297,44.758,45.33,44.758C433.988,160.284,454.284,140.246,454.284,115.528z" style="fill:#BD4231;" />
|
31 |
-
</g>
|
32 |
-
</g>
|
33 |
-
<g id="Layer_1_1_" /></svg>
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* LOGO SVG
|
4 |
+
*
|
5 |
+
* @package Google_Maps_Builder
|
6 |
+
* @author Devin Walker <devin@wordimpress.com>
|
7 |
+
* @license GPL-2.0+
|
8 |
+
* @link http://wordimpress.com
|
9 |
+
* @copyright 2014 WordImpress, Devin Walker
|
10 |
+
*/
|
11 |
+
?>
|
12 |
+
|
13 |
+
<svg height="35px" id="Layer_1" style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="35px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="flat_x5F_8">
|
14 |
+
<g>
|
15 |
+
<path d="M424.574,447.998l-25.471-6.039l77.041-316.293c-11.028-18.652-24.314-35.824-39.56-51.053 l-19.13,78.383L202.053,101.92L226.582,1.405c-19.051,2.152-37.457,6.407-55.006,12.514L152.948,90.28L77.144,72.303 c-13.296,12.945-25.186,27.313-35.437,42.88l99.446,23.58L85.485,367.595l-67.161-15.896c8.636,21.324,20.039,41.22,33.805,59.239 l21.566,5.14l-3.812,15.668c12.955,13.675,27.366,25.967,43.053,36.515l9.862-40.541l245.086,58.11 C388.496,475.764,407.523,462.987,424.574,447.998z M190.26,150.403l215.405,51.075l-55.666,228.84l-215.405-51.081 L190.26,150.403z" style="fill:#FFF8A3;" />
|
16 |
+
<path d="M417.456,152.996l-40.345-9.564l-41.879,41.348l70.433,16.699l-55.666,228.84l-212.431-50.377 l-60.126,59.369c10.944,10.652,22.775,20.396,35.497,28.951l9.862-40.541l245.086,58.111 c20.608-10.068,39.637-22.846,56.688-37.834l-25.471-6.039l77.041-316.293c-9.802-16.58-21.396-31.982-34.558-45.895l-8.246,8.143 L417.456,152.996z" style="fill:#E1D78F;" />
|
17 |
+
<g>
|
18 |
+
<path d="M69.887,431.748l3.812-15.668l-21.566-5.141C57.67,418.198,63.612,425.135,69.887,431.748z" style="fill:#AAC26F;" />
|
19 |
+
<path d="M-0.344,255.718c0,33.956,6.664,66.331,18.67,95.981l67.161,15.896l55.668-228.832l-99.446-23.58 C15.153,155.528-0.344,203.8-0.344,255.718z" style="fill:#AAC26F;" />
|
20 |
+
<path d="M255.657-0.283c-9.836,0-19.527,0.611-29.074,1.688L202.054,101.92l215.402,51.075l19.13-78.382 C390.268,28.338,326.307-0.283,255.657-0.283z" style="fill:#AAC26F;" />
|
21 |
+
<path d="M152.949,90.28l18.628-76.361c-35.746,12.424-67.882,32.539-94.432,58.386L152.949,90.28z" style="fill:#AAC26F;" />
|
22 |
+
</g>
|
23 |
+
<polygon points="134.594,379.237 349.999,430.318 405.665,201.479 190.26,150.403 " style="fill:#6AAFDA;" />
|
24 |
+
<g>
|
25 |
+
<path d="M112.939,468.262c40.778,27.436,89.875,43.455,142.718,43.455 c40.263,0,78.341-9.322,112.229-25.885l-245.085-58.111L112.939,468.262z" style="fill:#5E9CC1;" />
|
26 |
+
<polygon points="405.665,201.479 335.232,184.779 137.568,379.941 349.999,430.318 " style="fill:#5E9CC1;" />
|
27 |
+
</g>
|
28 |
+
<path d="M511.656,255.718c0-47.491-12.975-91.925-35.512-130.052l-77.041,316.293l25.471,6.039 C477.936,401.082,511.656,332.359,511.656,255.718z" style="fill:#C6A963;" />
|
29 |
+
<path d="M497.996,113.431c0,48.554-67.83,190.112-89.042,190.112c-20.666,0-89.044-141.56-89.044-190.112 c0-48.554,39.865-87.915,89.044-87.915C458.131,25.516,497.996,64.877,497.996,113.431z" style="fill:#F05D4A;" />
|
30 |
+
<path d="M454.284,115.528c0-24.716-20.296-44.749-45.33-44.749c-25.033,0-45.33,20.033-45.33,44.749 c0,24.719,20.297,44.758,45.33,44.758C433.988,160.284,454.284,140.246,454.284,115.528z" style="fill:#BD4231;" />
|
31 |
+
</g>
|
32 |
+
</g>
|
33 |
+
<g id="Layer_1_1_" /></svg>
|
admin/views/logo-svg.php
CHANGED
@@ -1,34 +1,34 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* LOGO SVG
|
4 |
-
|
5 |
-
*
|
6 |
-
* @package Google_Maps_Builder
|
7 |
-
* @author Devin Walker <devin@wordimpress.com>
|
8 |
-
* @license GPL-2.0+
|
9 |
-
* @link http://wordimpress.com
|
10 |
-
* @copyright 2014 WordImpress, Devin Walker
|
11 |
-
*/
|
12 |
-
?>
|
13 |
-
|
14 |
-
<svg height="200px" id="Layer_1" style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="200px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="flat_x5F_8">
|
15 |
-
<g>
|
16 |
-
<path d="M424.574,447.998l-25.471-6.039l77.041-316.293c-11.028-18.652-24.314-35.824-39.56-51.053 l-19.13,78.383L202.053,101.92L226.582,1.405c-19.051,2.152-37.457,6.407-55.006,12.514L152.948,90.28L77.144,72.303 c-13.296,12.945-25.186,27.313-35.437,42.88l99.446,23.58L85.485,367.595l-67.161-15.896c8.636,21.324,20.039,41.22,33.805,59.239 l21.566,5.14l-3.812,15.668c12.955,13.675,27.366,25.967,43.053,36.515l9.862-40.541l245.086,58.11 C388.496,475.764,407.523,462.987,424.574,447.998z M190.26,150.403l215.405,51.075l-55.666,228.84l-215.405-51.081 L190.26,150.403z" style="fill:#FFF8A3;" />
|
17 |
-
<path d="M417.456,152.996l-40.345-9.564l-41.879,41.348l70.433,16.699l-55.666,228.84l-212.431-50.377 l-60.126,59.369c10.944,10.652,22.775,20.396,35.497,28.951l9.862-40.541l245.086,58.111 c20.608-10.068,39.637-22.846,56.688-37.834l-25.471-6.039l77.041-316.293c-9.802-16.58-21.396-31.982-34.558-45.895l-8.246,8.143 L417.456,152.996z" style="fill:#E1D78F;" />
|
18 |
-
<g>
|
19 |
-
<path d="M69.887,431.748l3.812-15.668l-21.566-5.141C57.67,418.198,63.612,425.135,69.887,431.748z" style="fill:#AAC26F;" />
|
20 |
-
<path d="M-0.344,255.718c0,33.956,6.664,66.331,18.67,95.981l67.161,15.896l55.668-228.832l-99.446-23.58 C15.153,155.528-0.344,203.8-0.344,255.718z" style="fill:#AAC26F;" />
|
21 |
-
<path d="M255.657-0.283c-9.836,0-19.527,0.611-29.074,1.688L202.054,101.92l215.402,51.075l19.13-78.382 C390.268,28.338,326.307-0.283,255.657-0.283z" style="fill:#AAC26F;" />
|
22 |
-
<path d="M152.949,90.28l18.628-76.361c-35.746,12.424-67.882,32.539-94.432,58.386L152.949,90.28z" style="fill:#AAC26F;" />
|
23 |
-
</g>
|
24 |
-
<polygon points="134.594,379.237 349.999,430.318 405.665,201.479 190.26,150.403 " style="fill:#6AAFDA;" />
|
25 |
-
<g>
|
26 |
-
<path d="M112.939,468.262c40.778,27.436,89.875,43.455,142.718,43.455 c40.263,0,78.341-9.322,112.229-25.885l-245.085-58.111L112.939,468.262z" style="fill:#5E9CC1;" />
|
27 |
-
<polygon points="405.665,201.479 335.232,184.779 137.568,379.941 349.999,430.318 " style="fill:#5E9CC1;" />
|
28 |
-
</g>
|
29 |
-
<path d="M511.656,255.718c0-47.491-12.975-91.925-35.512-130.052l-77.041,316.293l25.471,6.039 C477.936,401.082,511.656,332.359,511.656,255.718z" style="fill:#C6A963;" />
|
30 |
-
<path d="M497.996,113.431c0,48.554-67.83,190.112-89.042,190.112c-20.666,0-89.044-141.56-89.044-190.112 c0-48.554,39.865-87.915,89.044-87.915C458.131,25.516,497.996,64.877,497.996,113.431z" style="fill:#F05D4A;" />
|
31 |
-
<path d="M454.284,115.528c0-24.716-20.296-44.749-45.33-44.749c-25.033,0-45.33,20.033-45.33,44.749 c0,24.719,20.297,44.758,45.33,44.758C433.988,160.284,454.284,140.246,454.284,115.528z" style="fill:#BD4231;" />
|
32 |
-
</g>
|
33 |
-
</g>
|
34 |
-
<g id="Layer_1_1_" /></svg>
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* LOGO SVG
|
4 |
+
|
5 |
+
*
|
6 |
+
* @package Google_Maps_Builder
|
7 |
+
* @author Devin Walker <devin@wordimpress.com>
|
8 |
+
* @license GPL-2.0+
|
9 |
+
* @link http://wordimpress.com
|
10 |
+
* @copyright 2014 WordImpress, Devin Walker
|
11 |
+
*/
|
12 |
+
?>
|
13 |
+
|
14 |
+
<svg height="200px" id="Layer_1" style="enable-background:new 0 0 512 512;" version="1.1" viewBox="0 0 512 512" width="200px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><g id="flat_x5F_8">
|
15 |
+
<g>
|
16 |
+
<path d="M424.574,447.998l-25.471-6.039l77.041-316.293c-11.028-18.652-24.314-35.824-39.56-51.053 l-19.13,78.383L202.053,101.92L226.582,1.405c-19.051,2.152-37.457,6.407-55.006,12.514L152.948,90.28L77.144,72.303 c-13.296,12.945-25.186,27.313-35.437,42.88l99.446,23.58L85.485,367.595l-67.161-15.896c8.636,21.324,20.039,41.22,33.805,59.239 l21.566,5.14l-3.812,15.668c12.955,13.675,27.366,25.967,43.053,36.515l9.862-40.541l245.086,58.11 C388.496,475.764,407.523,462.987,424.574,447.998z M190.26,150.403l215.405,51.075l-55.666,228.84l-215.405-51.081 L190.26,150.403z" style="fill:#FFF8A3;" />
|
17 |
+
<path d="M417.456,152.996l-40.345-9.564l-41.879,41.348l70.433,16.699l-55.666,228.84l-212.431-50.377 l-60.126,59.369c10.944,10.652,22.775,20.396,35.497,28.951l9.862-40.541l245.086,58.111 c20.608-10.068,39.637-22.846,56.688-37.834l-25.471-6.039l77.041-316.293c-9.802-16.58-21.396-31.982-34.558-45.895l-8.246,8.143 L417.456,152.996z" style="fill:#E1D78F;" />
|
18 |
+
<g>
|
19 |
+
<path d="M69.887,431.748l3.812-15.668l-21.566-5.141C57.67,418.198,63.612,425.135,69.887,431.748z" style="fill:#AAC26F;" />
|
20 |
+
<path d="M-0.344,255.718c0,33.956,6.664,66.331,18.67,95.981l67.161,15.896l55.668-228.832l-99.446-23.58 C15.153,155.528-0.344,203.8-0.344,255.718z" style="fill:#AAC26F;" />
|
21 |
+
<path d="M255.657-0.283c-9.836,0-19.527,0.611-29.074,1.688L202.054,101.92l215.402,51.075l19.13-78.382 C390.268,28.338,326.307-0.283,255.657-0.283z" style="fill:#AAC26F;" />
|
22 |
+
<path d="M152.949,90.28l18.628-76.361c-35.746,12.424-67.882,32.539-94.432,58.386L152.949,90.28z" style="fill:#AAC26F;" />
|
23 |
+
</g>
|
24 |
+
<polygon points="134.594,379.237 349.999,430.318 405.665,201.479 190.26,150.403 " style="fill:#6AAFDA;" />
|
25 |
+
<g>
|
26 |
+
<path d="M112.939,468.262c40.778,27.436,89.875,43.455,142.718,43.455 c40.263,0,78.341-9.322,112.229-25.885l-245.085-58.111L112.939,468.262z" style="fill:#5E9CC1;" />
|
27 |
+
<polygon points="405.665,201.479 335.232,184.779 137.568,379.941 349.999,430.318 " style="fill:#5E9CC1;" />
|
28 |
+
</g>
|
29 |
+
<path d="M511.656,255.718c0-47.491-12.975-91.925-35.512-130.052l-77.041,316.293l25.471,6.039 C477.936,401.082,511.656,332.359,511.656,255.718z" style="fill:#C6A963;" />
|
30 |
+
<path d="M497.996,113.431c0,48.554-67.83,190.112-89.042,190.112c-20.666,0-89.044-141.56-89.044-190.112 c0-48.554,39.865-87.915,89.044-87.915C458.131,25.516,497.996,64.877,497.996,113.431z" style="fill:#F05D4A;" />
|
31 |
+
<path d="M454.284,115.528c0-24.716-20.296-44.749-45.33-44.749c-25.033,0-45.33,20.033-45.33,44.749 c0,24.719,20.297,44.758,45.33,44.758C433.988,160.284,454.284,140.246,454.284,115.528z" style="fill:#BD4231;" />
|
32 |
+
</g>
|
33 |
+
</g>
|
34 |
+
<g id="Layer_1_1_" /></svg>
|
admin/views/settings-page.php
CHANGED
@@ -1,86 +1,86 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Represents the view for the administration dashboard.
|
4 |
-
*
|
5 |
-
* This includes the header, options, and other information that should provide
|
6 |
-
* The User Interface to the end user.
|
7 |
-
*
|
8 |
-
* @package Google_Maps_Builder
|
9 |
-
* @author Devin Walker <devin@wordimpress.com>
|
10 |
-
* @license GPL-2.0+
|
11 |
-
* @link http://wordimpress.com
|
12 |
-
* @copyright 2014 WordImpress, Devin Walker
|
13 |
-
*/
|
14 |
-
|
15 |
-
?>
|
16 |
-
|
17 |
-
<div class="wrap">
|
18 |
-
|
19 |
-
<?php global $current_user;
|
20 |
-
$user_id = $current_user->ID;
|
21 |
-
// Check that the user hasn't already clicked to ignore the welcome message and that they have appropriate permissions
|
22 |
-
if ( ! get_user_meta( $user_id, 'gmb_hide_welcome' ) && current_user_can( 'install_plugins' ) ) {
|
23 |
-
?>
|
24 |
-
<div class="container welcome-header">
|
25 |
-
<div class="row">
|
26 |
-
|
27 |
-
<div class="col-md-9">
|
28 |
-
<h1 class="main-heading"><?php _e( 'Welcome to Google Maps Builder', $this->plugin_slug ); ?> <?php echo $this->meta['Version']; ?></h1>
|
29 |
-
|
30 |
-
<p class="main-subheading"><?php _e( 'Thanks for using Google Maps Builder', $this->plugin_slug ); ?> <?php echo $this->meta['Version']; ?>. <?php _e( 'To get started, read over the documentation, take a gander at the settings, and build yourself some maps! If you enjoy this plugin please consider telling a friend, following us or purchasing the Pro edition (coming soon!).', $this->plugin_slug ); ?></p>
|
31 |
-
<?php include( 'social-media.php' ); ?>
|
32 |
-
|
33 |
-
</div>
|
34 |
-
|
35 |
-
<div class="col-md-3">
|
36 |
-
<div class="logo-svg">
|
37 |
-
<?php include( 'logo-svg.php' ); ?>
|
38 |
-
</div>
|
39 |
-
</div>
|
40 |
-
</div>
|
41 |
-
</div>
|
42 |
-
|
43 |
-
<?php } ?>
|
44 |
-
|
45 |
-
<div class="logo-svg logo-svg-small pull-left" <?php echo
|
46 |
-
|
47 |
-
<div class="gmb-plugin-heading">Google Maps Builder <?php echo $this->meta['Version']; ?></div>
|
48 |
-
<?php include
|
49 |
-
</div>
|
50 |
-
|
51 |
-
|
52 |
-
<?php
|
53 |
-
/**
|
54 |
-
* Option tabs
|
55 |
-
*
|
56 |
-
* Better organize our options in tabs
|
57 |
-
*
|
58 |
-
* @see: http://code.tutsplus.com/tutorials/the-complete-guide-to-the-wordpress-settings-api-part-5-tabbed-navigation-for-your-settings-page--wp-24971
|
59 |
-
*/
|
60 |
-
$active_tab = isset($_GET['tab']) ? $_GET['tab'] : 'map_options';
|
61 |
-
?>
|
62 |
-
<h2 class="nav-tab-wrapper">
|
63 |
-
<a href="?post_type=google_maps&page=<?php echo self::$key; ?>" class="nav-tab <?php echo $active_tab == 'map_options' ? 'nav-tab-active' : ''; ?>"><?php _e('Map Options', $this->plugin_slug); ?></a>
|
64 |
-
<a href="?post_type=google_maps&page=<?php echo self::$key; ?>&tab=general_settings" class="nav-tab <?php echo $active_tab == 'general_settings' ? 'nav-tab-active' : ''; ?>"><?php _e('General Options', $this->plugin_slug); ?></a>
|
65 |
-
</h2>
|
66 |
-
|
67 |
-
|
68 |
-
<?php
|
69 |
-
/**
|
70 |
-
* Get the appropriate tab
|
71 |
-
*/
|
72 |
-
switch ($active_tab) {
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
}
|
83 |
-
?>
|
84 |
-
|
85 |
-
|
86 |
</div>
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Represents the view for the administration dashboard.
|
4 |
+
*
|
5 |
+
* This includes the header, options, and other information that should provide
|
6 |
+
* The User Interface to the end user.
|
7 |
+
*
|
8 |
+
* @package Google_Maps_Builder
|
9 |
+
* @author Devin Walker <devin@wordimpress.com>
|
10 |
+
* @license GPL-2.0+
|
11 |
+
* @link http://wordimpress.com
|
12 |
+
* @copyright 2014 WordImpress, Devin Walker
|
13 |
+
*/
|
14 |
+
|
15 |
+
?>
|
16 |
+
|
17 |
+
<div class="wrap">
|
18 |
+
|
19 |
+
<?php global $current_user;
|
20 |
+
$user_id = $current_user->ID;
|
21 |
+
// Check that the user hasn't already clicked to ignore the welcome message and that they have appropriate permissions
|
22 |
+
if ( ! get_user_meta( $user_id, 'gmb_hide_welcome' ) && current_user_can( 'install_plugins' ) ) {
|
23 |
+
?>
|
24 |
+
<div class="container welcome-header">
|
25 |
+
<div class="row">
|
26 |
+
|
27 |
+
<div class="col-md-9">
|
28 |
+
<h1 class="main-heading"><?php _e( 'Welcome to Google Maps Builder', $this->plugin_slug ); ?> <?php echo $this->meta['Version']; ?></h1>
|
29 |
+
|
30 |
+
<p class="main-subheading"><?php _e( 'Thanks for using Google Maps Builder', $this->plugin_slug ); ?> <?php echo $this->meta['Version']; ?>. <?php _e( 'To get started, read over the documentation, take a gander at the settings, and build yourself some maps! If you enjoy this plugin please consider telling a friend, following us or purchasing the Pro edition (coming soon!).', $this->plugin_slug ); ?></p>
|
31 |
+
<?php include( 'social-media.php' ); ?>
|
32 |
+
|
33 |
+
</div>
|
34 |
+
|
35 |
+
<div class="col-md-3">
|
36 |
+
<div class="logo-svg">
|
37 |
+
<?php include( 'logo-svg.php' ); ?>
|
38 |
+
</div>
|
39 |
+
</div>
|
40 |
+
</div>
|
41 |
+
</div>
|
42 |
+
|
43 |
+
<?php } ?>
|
44 |
+
|
45 |
+
<div class="logo-svg logo-svg-small pull-left" <?php echo( ! get_user_meta( $user_id, 'gmb_hide_welcome' ) ?
|
46 |
+
'style="display:none;"' : '' ); ?>>
|
47 |
+
<div class="gmb-plugin-heading">Google Maps Builder <?php echo $this->meta['Version']; ?></div>
|
48 |
+
<?php include( 'logo-svg-small.php' ); ?>
|
49 |
+
</div>
|
50 |
+
|
51 |
+
|
52 |
+
<?php
|
53 |
+
/**
|
54 |
+
* Option tabs
|
55 |
+
*
|
56 |
+
* Better organize our options in tabs
|
57 |
+
*
|
58 |
+
* @see: http://code.tutsplus.com/tutorials/the-complete-guide-to-the-wordpress-settings-api-part-5-tabbed-navigation-for-your-settings-page--wp-24971
|
59 |
+
*/
|
60 |
+
$active_tab = isset( $_GET['tab'] ) ? $_GET['tab'] : 'map_options';
|
61 |
+
?>
|
62 |
+
<h2 class="nav-tab-wrapper">
|
63 |
+
<a href="?post_type=google_maps&page=<?php echo self::$key; ?>" class="nav-tab <?php echo $active_tab == 'map_options' ? 'nav-tab-active' : ''; ?>"><?php _e( 'Map Options', $this->plugin_slug ); ?></a>
|
64 |
+
<a href="?post_type=google_maps&page=<?php echo self::$key; ?>&tab=general_settings" class="nav-tab <?php echo $active_tab == 'general_settings' ? 'nav-tab-active' : ''; ?>"><?php _e( 'General Options', $this->plugin_slug ); ?></a>
|
65 |
+
</h2>
|
66 |
+
|
67 |
+
|
68 |
+
<?php
|
69 |
+
/**
|
70 |
+
* Get the appropriate tab
|
71 |
+
*/
|
72 |
+
switch ( $active_tab ) {
|
73 |
+
case 'map_options':
|
74 |
+
include( 'tab-map-options.php' );
|
75 |
+
break;
|
76 |
+
case 'general_settings':
|
77 |
+
include( 'tab-general-settings.php' );
|
78 |
+
break;
|
79 |
+
default :
|
80 |
+
include( 'tab-map-options.php' );
|
81 |
+
break;
|
82 |
+
}
|
83 |
+
?>
|
84 |
+
|
85 |
+
|
86 |
</div>
|
admin/views/tab-map-options.php
CHANGED
@@ -17,7 +17,7 @@
|
|
17 |
<div class="col-md-10">
|
18 |
|
19 |
<h3><?php _e('Default Map Settings', $this->plugin_slug); ?></h3>
|
20 |
-
<p><?php _e('The following settings change the default map options that display when created a new map.
|
21 |
<?php cmb_metabox_form( $this->map_option_fields(), self::$key ); ?>
|
22 |
</div>
|
23 |
|
17 |
<div class="col-md-10">
|
18 |
|
19 |
<h3><?php _e('Default Map Settings', $this->plugin_slug); ?></h3>
|
20 |
+
<p><?php _e('The following settings change the default map options that display when created a new map.', $this->plugin_slug); ?></p>
|
21 |
<?php cmb_metabox_form( $this->map_option_fields(), self::$key ); ?>
|
22 |
</div>
|
23 |
|
google-maps-builder.php
CHANGED
@@ -1,64 +1,64 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Google Maps Builder
|
4 |
-
*
|
5 |
-
* @package Google_Maps_Builder
|
6 |
-
* @author Devin Walker <devin@wordimpress.com>
|
7 |
-
* @license GPL-2.0+
|
8 |
-
* @link http://wordimpress.com
|
9 |
-
* @copyright 2014 WordImpress, Devin Walker
|
10 |
-
*
|
11 |
-
* @wordpress-google-places
|
12 |
-
* Plugin Name: Google Maps Builder
|
13 |
-
* Plugin URI: http://wordimpress.com/
|
14 |
-
* Description: Create stylish and powerful Google Maps quickly and easily.
|
15 |
-
* Version: 1.0.
|
16 |
-
* Author:
|
17 |
-
* Author URI: http://wordimpress.com/
|
18 |
-
* Text Domain: google-maps-builder
|
19 |
-
* License: GPL-2.0+
|
20 |
-
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
21 |
-
* Domain Path: /languages
|
22 |
-
*/
|
23 |
-
|
24 |
-
// If this file is called directly, abort.
|
25 |
-
if ( ! defined( 'WPINC' ) ) {
|
26 |
-
die;
|
27 |
-
}
|
28 |
-
// Define Constants
|
29 |
-
define( 'GMB_PLUGIN_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
|
30 |
-
define( 'GMB_PLUGIN_URL', plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) );
|
31 |
-
define( 'GMB_PLUGIN_BASE', plugin_basename( __FILE__ ) );
|
32 |
-
define( 'GMB_DEBUG', false );
|
33 |
-
|
34 |
-
/*----------------------------------------------------------------------------*
|
35 |
-
* Public-Facing Functionality
|
36 |
-
*----------------------------------------------------------------------------*/
|
37 |
-
require_once( plugin_dir_path( __FILE__ ) . 'public/class-wordpress-google-maps.php' );
|
38 |
-
//require_once( plugin_dir_path( __FILE__ ) . 'public/class-wordpress-google-maps-widget.php' );
|
39 |
-
require_once( plugin_dir_path( __FILE__ ) . 'admin/class-wordpress-google-maps-settings.php' );
|
40 |
-
require_once( plugin_dir_path( __FILE__ ) . 'public/class-wordpress-google-maps-engine.php' );
|
41 |
-
|
42 |
-
|
43 |
-
/*
|
44 |
-
* Register hooks that are fired when the plugin is activated or deactivated.
|
45 |
-
* When the plugin is deleted, the uninstall.php file is loaded.
|
46 |
-
*/
|
47 |
-
register_activation_hook( __FILE__, array( 'Google_Maps_Builder', 'activate' ) );
|
48 |
-
register_deactivation_hook( __FILE__, array( 'Google_Maps_Builder', 'deactivate' ) );
|
49 |
-
|
50 |
-
/*
|
51 |
-
* Get instances of Google_Maps_Builder class
|
52 |
-
*/
|
53 |
-
add_action( 'plugins_loaded', array( 'Google_Maps_Builder', 'get_instance' ) );
|
54 |
-
add_action( 'plugins_loaded', array( 'Google_Maps_Builder_Engine', 'get_instance' ) );
|
55 |
-
|
56 |
-
/*----------------------------------------------------------------------------*
|
57 |
-
* Dashboard and Administrative Functionality
|
58 |
-
*----------------------------------------------------------------------------*/
|
59 |
-
if ( is_admin() ) {
|
60 |
-
|
61 |
-
require_once( plugin_dir_path( __FILE__ ) . 'admin/class-wordpress-google-maps-admin.php' );
|
62 |
-
add_action( 'plugins_loaded', array( 'Google_Maps_Builder_Admin', 'get_instance' ) );
|
63 |
-
|
64 |
-
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Google Maps Builder
|
4 |
+
*
|
5 |
+
* @package Google_Maps_Builder
|
6 |
+
* @author Devin Walker <devin@wordimpress.com>
|
7 |
+
* @license GPL-2.0+
|
8 |
+
* @link http://wordimpress.com
|
9 |
+
* @copyright 2014 WordImpress, Devin Walker
|
10 |
+
*
|
11 |
+
* @wordpress-google-places
|
12 |
+
* Plugin Name: Google Maps Builder
|
13 |
+
* Plugin URI: http://wordimpress.com/
|
14 |
+
* Description: Create stylish and powerful Google Maps quickly and easily.
|
15 |
+
* Version: 1.0.4
|
16 |
+
* Author: WordImpress
|
17 |
+
* Author URI: http://wordimpress.com/
|
18 |
+
* Text Domain: google-maps-builder
|
19 |
+
* License: GPL-2.0+
|
20 |
+
* License URI: http://www.gnu.org/licenses/gpl-2.0.txt
|
21 |
+
* Domain Path: /languages
|
22 |
+
*/
|
23 |
+
|
24 |
+
// If this file is called directly, abort.
|
25 |
+
if ( ! defined( 'WPINC' ) ) {
|
26 |
+
die;
|
27 |
+
}
|
28 |
+
// Define Constants
|
29 |
+
define( 'GMB_PLUGIN_PATH', untrailingslashit( plugin_dir_path( __FILE__ ) ) );
|
30 |
+
define( 'GMB_PLUGIN_URL', plugins_url( basename( plugin_dir_path( __FILE__ ) ), basename( __FILE__ ) ) );
|
31 |
+
define( 'GMB_PLUGIN_BASE', plugin_basename( __FILE__ ) );
|
32 |
+
define( 'GMB_DEBUG', false );
|
33 |
+
|
34 |
+
/*----------------------------------------------------------------------------*
|
35 |
+
* Public-Facing Functionality
|
36 |
+
*----------------------------------------------------------------------------*/
|
37 |
+
require_once( plugin_dir_path( __FILE__ ) . 'public/class-wordpress-google-maps.php' );
|
38 |
+
//require_once( plugin_dir_path( __FILE__ ) . 'public/class-wordpress-google-maps-widget.php' );
|
39 |
+
require_once( plugin_dir_path( __FILE__ ) . 'admin/class-wordpress-google-maps-settings.php' );
|
40 |
+
require_once( plugin_dir_path( __FILE__ ) . 'public/class-wordpress-google-maps-engine.php' );
|
41 |
+
|
42 |
+
|
43 |
+
/*
|
44 |
+
* Register hooks that are fired when the plugin is activated or deactivated.
|
45 |
+
* When the plugin is deleted, the uninstall.php file is loaded.
|
46 |
+
*/
|
47 |
+
register_activation_hook( __FILE__, array( 'Google_Maps_Builder', 'activate' ) );
|
48 |
+
register_deactivation_hook( __FILE__, array( 'Google_Maps_Builder', 'deactivate' ) );
|
49 |
+
|
50 |
+
/*
|
51 |
+
* Get instances of Google_Maps_Builder class
|
52 |
+
*/
|
53 |
+
add_action( 'plugins_loaded', array( 'Google_Maps_Builder', 'get_instance' ) );
|
54 |
+
add_action( 'plugins_loaded', array( 'Google_Maps_Builder_Engine', 'get_instance' ) );
|
55 |
+
|
56 |
+
/*----------------------------------------------------------------------------*
|
57 |
+
* Dashboard and Administrative Functionality
|
58 |
+
*----------------------------------------------------------------------------*/
|
59 |
+
if ( is_admin() ) {
|
60 |
+
|
61 |
+
require_once( plugin_dir_path( __FILE__ ) . 'admin/class-wordpress-google-maps-admin.php' );
|
62 |
+
add_action( 'plugins_loaded', array( 'Google_Maps_Builder_Admin', 'get_instance' ) );
|
63 |
+
|
64 |
+
}
|
includes/map-icons/README.md
CHANGED
@@ -1,118 +1,118 @@
|
|
1 |
-
Map-Icons
|
2 |
-
=========
|
3 |
-
|
4 |
-
Version 2.1
|
5 |
-
|
6 |
-
Website: <http://map-icons.com/>
|
7 |
-
|
8 |
-
Demo: <http://map-icons.com/demo.html>
|
9 |
-
|
10 |
-
##Summary
|
11 |
-
|
12 |
-
Map Icons is an icon font for use with Google Maps API and Google Places API using SVG markers and icon labels
|
13 |
-
|
14 |
-
Map Icons makes [Google Maps Markers](https://developers.google.com/maps/documentation/javascript/reference#Marker) dynamic with control over shape, color, size, and icon easily changed using options in the marker object as well as simple [SVG Notation](http://www.w3.org/TR/SVG/paths.html#PathData) and CSS.
|
15 |
-
|
16 |
-
##Markers
|
17 |
-
|
18 |
-
* MAP_PIN
|
19 |
-
* SQUARE_PIN
|
20 |
-
* SHEILD
|
21 |
-
* ROUTE
|
22 |
-
* ROUNDED
|
23 |
-
|
24 |
-
##Usage
|
25 |
-
Map Icons extends the [Google Maps Marker](https://developers.google.com/maps/documentation/javascript/reference#Marker) Object to enable either an image or SVG marker to be used with the icon placed on top as a label.
|
26 |
-
|
27 |
-
###Creating a Marker
|
28 |
-
|
29 |
-
```
|
30 |
-
var marker = new Marker({
|
31 |
-
map: map,
|
32 |
-
title: 'Map Icons',
|
33 |
-
position: userLocation,
|
34 |
-
zIndex: 9,
|
35 |
-
icon: {
|
36 |
-
path: MAP_PIN,
|
37 |
-
fillColor: '#0E77E9',
|
38 |
-
fillOpacity: 1,
|
39 |
-
strokeColor: '',
|
40 |
-
strokeWeight: 0,
|
41 |
-
scale: 1/2
|
42 |
-
},
|
43 |
-
label: '<i class="map-icon-parking"></i>'
|
44 |
-
});
|
45 |
-
```
|
46 |
-
|
47 |
-
###Styling the Icon
|
48 |
-
```
|
49 |
-
.marker-label,
|
50 |
-
.marker-icon {
|
51 |
-
z-index: 99;
|
52 |
-
position: absolute;
|
53 |
-
display: block;
|
54 |
-
margin-top: -50px;
|
55 |
-
margin-left: -25px;
|
56 |
-
width: 50px;
|
57 |
-
height: 50px;
|
58 |
-
font-size: 30px !important;
|
59 |
-
text-align: center;
|
60 |
-
color: #FFFFFF;
|
61 |
-
white-space: nowrap;
|
62 |
-
}
|
63 |
-
```
|
64 |
-
|
65 |
-
##Changelog
|
66 |
-
|
67 |
-
#### Version 2.1
|
68 |
-
|
69 |
-
* Changed icon- prefix to map-icon-
|
70 |
-
* Added ROUNDED marker
|
71 |
-
* Fixed SVG Markers to center on LatLng
|
72 |
-
|
73 |
-
#### Version 2.0
|
74 |
-
|
75 |
-
* Added Activity Icons
|
76 |
-
* Fix Marker Docs with SVG Notation
|
77 |
-
|
78 |
-
#### Version 1.2
|
79 |
-
|
80 |
-
* Fixed Icons to be Pixel Grid Aligned
|
81 |
-
* Added User Interface Icons
|
82 |
-
* Added Marker Icons
|
83 |
-
|
84 |
-
#### Version 1.1
|
85 |
-
|
86 |
-
* Added Marker Shapes
|
87 |
-
|
88 |
-
#### Version 1.0
|
89 |
-
|
90 |
-
* Initial Commit
|
91 |
-
|
92 |
-
##Author
|
93 |
-
|
94 |
-
Email: <scott@map-icons.com>
|
95 |
-
|
96 |
-
Twitter: [@scottdejonge](http://twitter.com/scottdejonge)
|
97 |
-
|
98 |
-
GitHub: <https://github.com/scottdejonge>
|
99 |
-
|
100 |
-
|
101 |
-
##License
|
102 |
-
###Font License
|
103 |
-
|
104 |
-
Applies to all desktop and webfont files in the following directory: `map-icon/font/`
|
105 |
-
|
106 |
-
Map Icons licensed under [SIL OFL 1.1](http://scripts.sil.org/OFL)
|
107 |
-
|
108 |
-
###Code License
|
109 |
-
|
110 |
-
Applies to code inside: `map-icons.css`, `map-icons.js` and `map-icons-min.js`.
|
111 |
-
|
112 |
-
Code licensed under [MIT License](http://opensource.org/licenses/mit-license.html)
|
113 |
-
|
114 |
-
###Documentation License
|
115 |
-
|
116 |
-
Applies to all Map Icons project files that are not a part of the Font or Code licenses.
|
117 |
-
|
118 |
Documentation licensed under [CC BY 3.0](http://creativecommons.org/licenses/by/3.0/)
|
1 |
+
Map-Icons
|
2 |
+
=========
|
3 |
+
|
4 |
+
Version 2.1
|
5 |
+
|
6 |
+
Website: <http://map-icons.com/>
|
7 |
+
|
8 |
+
Demo: <http://map-icons.com/demo.html>
|
9 |
+
|
10 |
+
##Summary
|
11 |
+
|
12 |
+
Map Icons is an icon font for use with Google Maps API and Google Places API using SVG markers and icon labels
|
13 |
+
|
14 |
+
Map Icons makes [Google Maps Markers](https://developers.google.com/maps/documentation/javascript/reference#Marker) dynamic with control over shape, color, size, and icon easily changed using options in the marker object as well as simple [SVG Notation](http://www.w3.org/TR/SVG/paths.html#PathData) and CSS.
|
15 |
+
|
16 |
+
##Markers
|
17 |
+
|
18 |
+
* MAP_PIN
|
19 |
+
* SQUARE_PIN
|
20 |
+
* SHEILD
|
21 |
+
* ROUTE
|
22 |
+
* ROUNDED
|
23 |
+
|
24 |
+
##Usage
|
25 |
+
Map Icons extends the [Google Maps Marker](https://developers.google.com/maps/documentation/javascript/reference#Marker) Object to enable either an image or SVG marker to be used with the icon placed on top as a label.
|
26 |
+
|
27 |
+
###Creating a Marker
|
28 |
+
|
29 |
+
```
|
30 |
+
var marker = new Marker({
|
31 |
+
map: map,
|
32 |
+
title: 'Map Icons',
|
33 |
+
position: userLocation,
|
34 |
+
zIndex: 9,
|
35 |
+
icon: {
|
36 |
+
path: MAP_PIN,
|
37 |
+
fillColor: '#0E77E9',
|
38 |
+
fillOpacity: 1,
|
39 |
+
strokeColor: '',
|
40 |
+
strokeWeight: 0,
|
41 |
+
scale: 1/2
|
42 |
+
},
|
43 |
+
label: '<i class="map-icon-parking"></i>'
|
44 |
+
});
|
45 |
+
```
|
46 |
+
|
47 |
+
###Styling the Icon
|
48 |
+
```
|
49 |
+
.marker-label,
|
50 |
+
.marker-icon {
|
51 |
+
z-index: 99;
|
52 |
+
position: absolute;
|
53 |
+
display: block;
|
54 |
+
margin-top: -50px;
|
55 |
+
margin-left: -25px;
|
56 |
+
width: 50px;
|
57 |
+
height: 50px;
|
58 |
+
font-size: 30px !important;
|
59 |
+
text-align: center;
|
60 |
+
color: #FFFFFF;
|
61 |
+
white-space: nowrap;
|
62 |
+
}
|
63 |
+
```
|
64 |
+
|
65 |
+
##Changelog
|
66 |
+
|
67 |
+
#### Version 2.1
|
68 |
+
|
69 |
+
* Changed icon- prefix to map-icon-
|
70 |
+
* Added ROUNDED marker
|
71 |
+
* Fixed SVG Markers to center on LatLng
|
72 |
+
|
73 |
+
#### Version 2.0
|
74 |
+
|
75 |
+
* Added Activity Icons
|
76 |
+
* Fix Marker Docs with SVG Notation
|
77 |
+
|
78 |
+
#### Version 1.2
|
79 |
+
|
80 |
+
* Fixed Icons to be Pixel Grid Aligned
|
81 |
+
* Added User Interface Icons
|
82 |
+
* Added Marker Icons
|
83 |
+
|
84 |
+
#### Version 1.1
|
85 |
+
|
86 |
+
* Added Marker Shapes
|
87 |
+
|
88 |
+
#### Version 1.0
|
89 |
+
|
90 |
+
* Initial Commit
|
91 |
+
|
92 |
+
##Author
|
93 |
+
|
94 |
+
Email: <scott@map-icons.com>
|
95 |
+
|
96 |
+
Twitter: [@scottdejonge](http://twitter.com/scottdejonge)
|
97 |
+
|
98 |
+
GitHub: <https://github.com/scottdejonge>
|
99 |
+
|
100 |
+
|
101 |
+
##License
|
102 |
+
###Font License
|
103 |
+
|
104 |
+
Applies to all desktop and webfont files in the following directory: `map-icon/font/`
|
105 |
+
|
106 |
+
Map Icons licensed under [SIL OFL 1.1](http://scripts.sil.org/OFL)
|
107 |
+
|
108 |
+
###Code License
|
109 |
+
|
110 |
+
Applies to code inside: `map-icons.css`, `map-icons.js` and `map-icons-min.js`.
|
111 |
+
|
112 |
+
Code licensed under [MIT License](http://opensource.org/licenses/mit-license.html)
|
113 |
+
|
114 |
+
###Documentation License
|
115 |
+
|
116 |
+
Applies to all Map Icons project files that are not a part of the Font or Code licenses.
|
117 |
+
|
118 |
Documentation licensed under [CC BY 3.0](http://creativecommons.org/licenses/by/3.0/)
|
includes/map-icons/css/map-icons.css
CHANGED
@@ -1,568 +1,568 @@
|
|
1 |
-
@font-face {
|
2 |
-
font-family: 'map-icons';
|
3 |
-
src:url('../fonts/map-icons.eot');
|
4 |
-
src:url('../fonts/map-icons.eot?#iefix') format('embedded-opentype'),
|
5 |
-
url('../fonts/map-icons.woff') format('woff'),
|
6 |
-
url('../fonts/map-icons.ttf') format('truetype'),
|
7 |
-
url('../fonts/map-icons.svg#map-icons') format('svg');
|
8 |
-
font-weight: normal;
|
9 |
-
font-style: normal;
|
10 |
-
}
|
11 |
-
|
12 |
-
/* Use the following CSS code if you want to use data attributes for inserting your icons */
|
13 |
-
[data-icon]:before {
|
14 |
-
font-family: 'map-icons';
|
15 |
-
content: attr(data-icon);
|
16 |
-
speak: none;
|
17 |
-
font-weight: normal;
|
18 |
-
font-variant: normal;
|
19 |
-
text-transform: none;
|
20 |
-
line-height: 1;
|
21 |
-
-webkit-font-smoothing: antialiased;
|
22 |
-
-moz-osx-font-smoothing: grayscale;
|
23 |
-
}
|
24 |
-
|
25 |
-
/* Use the following CSS code if you want to have a class per icon */
|
26 |
-
/*
|
27 |
-
Instead of a list of all class selectors,
|
28 |
-
you can use the generic selector below, but it's slower:
|
29 |
-
[class*="map-icon-"] {
|
30 |
-
*/
|
31 |
-
.map-icon-map-pin, .map-icon-expand, .map-icon-fullscreen, .map-icon-square-pin, .map-icon-route-pin, .map-icon-sheild, .map-icon-liquor-store, .map-icon-bicycle-store, .map-icon-hardware-store, .map-icon-insurance-agency, .map-icon-lawyer, .map-icon-real-estate-agency, .map-icon-art-gallery, .map-icon-campground, .map-icon-bakery, .map-icon-bar, .map-icon-amusement-park, .map-icon-aquarium, .map-icon-airport, .map-icon-bank, .map-icon-car-rental, .map-icon-car-dealer, .map-icon-hospital, .map-icon-hair-care, .map-icon-gym, .map-icon-grocery-or-supermarket, .map-icon-general-contractor, .map-icon-pharmacy, .map-icon-point-of-interest, .map-icon-political, .map-icon-post-box, .map-icon-health, .map-icon-post-office, .map-icon-real-estate-agency-copy, .map-icon-hindu-temple, .map-icon-restaurant, .map-icon-female, .map-icon-male, .map-icon-zoo, .map-icon-veterinary-care, .map-icon-car-repair, .map-icon-university, .map-icon-travel-agency, .map-icon-transit-station, .map-icon-beauty-salon, .map-icon-electronics-store, .map-icon-search, .map-icon-zoom-out-alt, .map-icon-movie-rental, .map-icon-atm, .map-icon-jewelry-store, .map-icon-car-wash, .map-icon-unisex, .map-icon-rv-park, .map-icon-school, .map-icon-clothing-store, .map-icon-laundry, .map-icon-casino, .map-icon-place-of-worship, .map-icon-furniture-store, .map-icon-zoom-in-alt, .map-icon-zoom-in, .map-icon-department-store, .map-icon-fire-station, .map-icon-church, .map-icon-library, .map-icon-shopping-mall, .map-icon-local-government, .map-icon-spa, .map-icon-convenience-store, .map-icon-police, .map-icon-route, .map-icon-zoom-out, .map-icon-location-arrow, .map-icon-postal-code, .map-icon-locksmith, .map-icon-doctor, .map-icon-mosque, .map-icon-stadium, .map-icon-storage, .map-icon-movie-theater, .map-icon-electrician, .map-icon-moving-company, .map-icon-postal-code-prefix, .map-icon-crosshairs, .map-icon-compass, .map-icon-dentist, .map-icon-plumber, .map-icon-museum, .map-icon-finance, .map-icon-parking, .map-icon-courthouse, .map-icon-accounting, .map-icon-store, .map-icon-subway-station, .map-icon-natural-feature, .map-icon-florist, .map-icon-food, .map-icon-night-club, .map-icon-synagogue, .map-icon-taxi-stand, .map-icon-painter, .map-icon-train-station, .map-icon-pet-store, .map-icon-gas-station, .map-icon-funeral-home, .map-icon-cemetery, .map-icon-bowling-alley, .map-icon-roofing-contractor, .map-icon-physiotherapist, .map-icon-embassy, .map-icon-city-hall, .map-icon-bus-station, .map-icon-park, .map-icon-lodging, .map-icon-toilet, .map-icon-circle, .map-icon-square-rounded, .map-icon-square, .map-icon-book-store, .map-icon-cafe, .map-icon-wheelchair, .map-icon-volume-control-telephone, .map-icon-sign-language, .map-icon-low-vision-access, .map-icon-open-captioning, .map-icon-closed-captioning, .map-icon-braille, .map-icon-audio-description, .map-icon-assistive-listening-system, .map-icon-abseiling, .map-icon-tennis, .map-icon-skateboarding, .map-icon-playground, .map-icon-inline-skating, .map-icon-hang-gliding, .map-icon-climbing, .map-icon-baseball, .map-icon-archery, .map-icon-wind-surfing, .map-icon-scuba-diving, .map-icon-sailing, .map-icon-marina, .map-icon-canoe, .map-icon-boat-tour, .map-icon-boat-ramp, .map-icon-swimming, .map-icon-whale-watching, .map-icon-waterskiing, .map-icon-surfing, .map-icon-rafting, .map-icon-kayaking, .map-icon-jet-skiing, .map-icon-fishing-pier, .map-icon-fish-cleaning, .map-icon-diving, .map-icon-boating, .map-icon-fishing, .map-icon-cross-country-skiing, .map-icon-skiing, .map-icon-snowmobile, .map-icon-snowboarding, .map-icon-snow, .map-icon-snow-shoeing, .map-icon-sledding, .map-icon-ski-jumping, .map-icon-ice-skating, .map-icon-ice-fishing, .map-icon-chairlift, .map-icon-golf, .map-icon-horse-riding, .map-icon-motobike-trail, .map-icon-trail-walking, .map-icon-viewing, .map-icon-walking, .map-icon-bicycling {
|
32 |
-
font-family: 'map-icons';
|
33 |
-
speak: none;
|
34 |
-
font-style: normal;
|
35 |
-
font-weight: normal;
|
36 |
-
font-variant: normal;
|
37 |
-
text-transform: none;
|
38 |
-
line-height: 1;
|
39 |
-
-webkit-font-smoothing: antialiased;
|
40 |
-
}
|
41 |
-
.map-icon-map-pin:before {
|
42 |
-
content: "\e000";
|
43 |
-
}
|
44 |
-
.map-icon-expand:before {
|
45 |
-
content: "\e001";
|
46 |
-
}
|
47 |
-
.map-icon-fullscreen:before {
|
48 |
-
content: "\e002";
|
49 |
-
}
|
50 |
-
.map-icon-square-pin:before {
|
51 |
-
content: "\e003";
|
52 |
-
}
|
53 |
-
.map-icon-route-pin:before {
|
54 |
-
content: "\e004";
|
55 |
-
}
|
56 |
-
.map-icon-sheild:before {
|
57 |
-
content: "\e005";
|
58 |
-
}
|
59 |
-
.map-icon-liquor-store:before {
|
60 |
-
content: "\e006";
|
61 |
-
}
|
62 |
-
.map-icon-bicycle-store:before {
|
63 |
-
content: "\e007";
|
64 |
-
}
|
65 |
-
.map-icon-hardware-store:before {
|
66 |
-
content: "\e008";
|
67 |
-
}
|
68 |
-
.map-icon-insurance-agency:before {
|
69 |
-
content: "\e009";
|
70 |
-
}
|
71 |
-
.map-icon-lawyer:before {
|
72 |
-
content: "\e00a";
|
73 |
-
}
|
74 |
-
.map-icon-real-estate-agency:before {
|
75 |
-
content: "\e00b";
|
76 |
-
}
|
77 |
-
.map-icon-art-gallery:before {
|
78 |
-
content: "\e00c";
|
79 |
-
}
|
80 |
-
.map-icon-campground:before {
|
81 |
-
content: "\e00d";
|
82 |
-
}
|
83 |
-
.map-icon-bakery:before {
|
84 |
-
content: "\e00e";
|
85 |
-
}
|
86 |
-
.map-icon-bar:before {
|
87 |
-
content: "\e00f";
|
88 |
-
}
|
89 |
-
.map-icon-amusement-park:before {
|
90 |
-
content: "\e010";
|
91 |
-
}
|
92 |
-
.map-icon-aquarium:before {
|
93 |
-
content: "\e011";
|
94 |
-
}
|
95 |
-
.map-icon-airport:before {
|
96 |
-
content: "\e012";
|
97 |
-
}
|
98 |
-
.map-icon-bank:before {
|
99 |
-
content: "\e013";
|
100 |
-
}
|
101 |
-
.map-icon-car-rental:before {
|
102 |
-
content: "\e016";
|
103 |
-
}
|
104 |
-
.map-icon-car-dealer:before {
|
105 |
-
content: "\e017";
|
106 |
-
}
|
107 |
-
.map-icon-hospital:before {
|
108 |
-
content: "\e018";
|
109 |
-
}
|
110 |
-
.map-icon-hair-care:before {
|
111 |
-
content: "\e019";
|
112 |
-
}
|
113 |
-
.map-icon-gym:before {
|
114 |
-
content: "\e01a";
|
115 |
-
}
|
116 |
-
.map-icon-grocery-or-supermarket:before {
|
117 |
-
content: "\e01b";
|
118 |
-
}
|
119 |
-
.map-icon-general-contractor:before {
|
120 |
-
content: "\e01c";
|
121 |
-
}
|
122 |
-
.map-icon-pharmacy:before {
|
123 |
-
content: "\e01d";
|
124 |
-
}
|
125 |
-
.map-icon-point-of-interest:before {
|
126 |
-
content: "\e01e";
|
127 |
-
}
|
128 |
-
.map-icon-political:before {
|
129 |
-
content: "\e01f";
|
130 |
-
}
|
131 |
-
.map-icon-post-box:before {
|
132 |
-
content: "\e020";
|
133 |
-
}
|
134 |
-
.map-icon-health:before {
|
135 |
-
content: "\e021";
|
136 |
-
}
|
137 |
-
.map-icon-post-office:before {
|
138 |
-
content: "\e022";
|
139 |
-
}
|
140 |
-
.map-icon-real-estate-agency-copy:before {
|
141 |
-
content: "\e023";
|
142 |
-
}
|
143 |
-
.map-icon-hindu-temple:before {
|
144 |
-
content: "\e024";
|
145 |
-
}
|
146 |
-
.map-icon-restaurant:before {
|
147 |
-
content: "\e025";
|
148 |
-
}
|
149 |
-
.map-icon-female:before {
|
150 |
-
content: "\e026";
|
151 |
-
}
|
152 |
-
.map-icon-male:before {
|
153 |
-
content: "\e027";
|
154 |
-
}
|
155 |
-
.map-icon-zoo:before {
|
156 |
-
content: "\e028";
|
157 |
-
}
|
158 |
-
.map-icon-veterinary-care:before {
|
159 |
-
content: "\e029";
|
160 |
-
}
|
161 |
-
.map-icon-car-repair:before {
|
162 |
-
content: "\e02a";
|
163 |
-
}
|
164 |
-
.map-icon-university:before {
|
165 |
-
content: "\e02b";
|
166 |
-
}
|
167 |
-
.map-icon-travel-agency:before {
|
168 |
-
content: "\e02c";
|
169 |
-
}
|
170 |
-
.map-icon-transit-station:before {
|
171 |
-
content: "\e02d";
|
172 |
-
}
|
173 |
-
.map-icon-beauty-salon:before {
|
174 |
-
content: "\e02e";
|
175 |
-
}
|
176 |
-
.map-icon-electronics-store:before {
|
177 |
-
content: "\e02f";
|
178 |
-
}
|
179 |
-
.map-icon-search:before {
|
180 |
-
content: "\e030";
|
181 |
-
}
|
182 |
-
.map-icon-zoom-out-alt:before {
|
183 |
-
content: "\e031";
|
184 |
-
}
|
185 |
-
.map-icon-movie-rental:before {
|
186 |
-
content: "\e032";
|
187 |
-
}
|
188 |
-
.map-icon-atm:before {
|
189 |
-
content: "\e033";
|
190 |
-
}
|
191 |
-
.map-icon-jewelry-store:before {
|
192 |
-
content: "\e034";
|
193 |
-
}
|
194 |
-
.map-icon-car-wash:before {
|
195 |
-
content: "\e035";
|
196 |
-
}
|
197 |
-
.map-icon-unisex:before {
|
198 |
-
content: "\e036";
|
199 |
-
}
|
200 |
-
.map-icon-rv-park:before {
|
201 |
-
content: "\e037";
|
202 |
-
}
|
203 |
-
.map-icon-school:before {
|
204 |
-
content: "\e038";
|
205 |
-
}
|
206 |
-
.map-icon-clothing-store:before {
|
207 |
-
content: "\e039";
|
208 |
-
}
|
209 |
-
.map-icon-laundry:before {
|
210 |
-
content: "\e03a";
|
211 |
-
}
|
212 |
-
.map-icon-casino:before {
|
213 |
-
content: "\e03b";
|
214 |
-
}
|
215 |
-
.map-icon-place-of-worship:before {
|
216 |
-
content: "\e03c";
|
217 |
-
}
|
218 |
-
.map-icon-furniture-store:before {
|
219 |
-
content: "\e03d";
|
220 |
-
}
|
221 |
-
.map-icon-zoom-in-alt:before {
|
222 |
-
content: "\e03e";
|
223 |
-
}
|
224 |
-
.map-icon-zoom-in:before {
|
225 |
-
content: "\e03f";
|
226 |
-
}
|
227 |
-
.map-icon-department-store:before {
|
228 |
-
content: "\e040";
|
229 |
-
}
|
230 |
-
.map-icon-fire-station:before {
|
231 |
-
content: "\e041";
|
232 |
-
}
|
233 |
-
.map-icon-church:before {
|
234 |
-
content: "\e042";
|
235 |
-
}
|
236 |
-
.map-icon-library:before {
|
237 |
-
content: "\e043";
|
238 |
-
}
|
239 |
-
.map-icon-shopping-mall:before {
|
240 |
-
content: "\e044";
|
241 |
-
}
|
242 |
-
.map-icon-local-government:before {
|
243 |
-
content: "\e045";
|
244 |
-
}
|
245 |
-
.map-icon-spa:before {
|
246 |
-
content: "\e046";
|
247 |
-
}
|
248 |
-
.map-icon-convenience-store:before {
|
249 |
-
content: "\e047";
|
250 |
-
}
|
251 |
-
.map-icon-police:before {
|
252 |
-
content: "\e048";
|
253 |
-
}
|
254 |
-
.map-icon-route:before {
|
255 |
-
content: "\e049";
|
256 |
-
}
|
257 |
-
.map-icon-zoom-out:before {
|
258 |
-
content: "\e04a";
|
259 |
-
}
|
260 |
-
.map-icon-location-arrow:before {
|
261 |
-
content: "\e04b";
|
262 |
-
}
|
263 |
-
.map-icon-postal-code:before {
|
264 |
-
content: "\e04c";
|
265 |
-
}
|
266 |
-
.map-icon-locksmith:before {
|
267 |
-
content: "\e04d";
|
268 |
-
}
|
269 |
-
.map-icon-doctor:before {
|
270 |
-
content: "\e04e";
|
271 |
-
}
|
272 |
-
.map-icon-mosque:before {
|
273 |
-
content: "\e04f";
|
274 |
-
}
|
275 |
-
.map-icon-stadium:before {
|
276 |
-
content: "\e050";
|
277 |
-
}
|
278 |
-
.map-icon-storage:before {
|
279 |
-
content: "\e051";
|
280 |
-
}
|
281 |
-
.map-icon-movie-theater:before {
|
282 |
-
content: "\e052";
|
283 |
-
}
|
284 |
-
.map-icon-electrician:before {
|
285 |
-
content: "\e053";
|
286 |
-
}
|
287 |
-
.map-icon-moving-company:before {
|
288 |
-
content: "\e054";
|
289 |
-
}
|
290 |
-
.map-icon-postal-code-prefix:before {
|
291 |
-
content: "\e055";
|
292 |
-
}
|
293 |
-
.map-icon-crosshairs:before {
|
294 |
-
content: "\e056";
|
295 |
-
}
|
296 |
-
.map-icon-compass:before {
|
297 |
-
content: "\e057";
|
298 |
-
}
|
299 |
-
.map-icon-dentist:before {
|
300 |
-
content: "\e058";
|
301 |
-
}
|
302 |
-
.map-icon-plumber:before {
|
303 |
-
content: "\e059";
|
304 |
-
}
|
305 |
-
.map-icon-museum:before {
|
306 |
-
content: "\e05b";
|
307 |
-
}
|
308 |
-
.map-icon-finance:before {
|
309 |
-
content: "\e05a";
|
310 |
-
}
|
311 |
-
.map-icon-parking:before {
|
312 |
-
content: "\e05c";
|
313 |
-
}
|
314 |
-
.map-icon-courthouse:before {
|
315 |
-
content: "\e05d";
|
316 |
-
}
|
317 |
-
.map-icon-accounting:before {
|
318 |
-
content: "\e05e";
|
319 |
-
}
|
320 |
-
.map-icon-store:before {
|
321 |
-
content: "\e05f";
|
322 |
-
}
|
323 |
-
.map-icon-subway-station:before {
|
324 |
-
content: "\e060";
|
325 |
-
}
|
326 |
-
.map-icon-natural-feature:before {
|
327 |
-
content: "\e061";
|
328 |
-
}
|
329 |
-
.map-icon-florist:before {
|
330 |
-
content: "\e062";
|
331 |
-
}
|
332 |
-
.map-icon-food:before {
|
333 |
-
content: "\e063";
|
334 |
-
}
|
335 |
-
.map-icon-night-club:before {
|
336 |
-
content: "\e064";
|
337 |
-
}
|
338 |
-
.map-icon-synagogue:before {
|
339 |
-
content: "\e065";
|
340 |
-
}
|
341 |
-
.map-icon-taxi-stand:before {
|
342 |
-
content: "\e066";
|
343 |
-
}
|
344 |
-
.map-icon-painter:before {
|
345 |
-
content: "\e067";
|
346 |
-
}
|
347 |
-
.map-icon-train-station:before {
|
348 |
-
content: "\e068";
|
349 |
-
}
|
350 |
-
.map-icon-pet-store:before {
|
351 |
-
content: "\e069";
|
352 |
-
}
|
353 |
-
.map-icon-gas-station:before {
|
354 |
-
content: "\e06a";
|
355 |
-
}
|
356 |
-
.map-icon-funeral-home:before {
|
357 |
-
content: "\e06b";
|
358 |
-
}
|
359 |
-
.map-icon-cemetery:before {
|
360 |
-
content: "\e06c";
|
361 |
-
}
|
362 |
-
.map-icon-bowling-alley:before {
|
363 |
-
content: "\e06d";
|
364 |
-
}
|
365 |
-
.map-icon-roofing-contractor:before {
|
366 |
-
content: "\e06e";
|
367 |
-
}
|
368 |
-
.map-icon-physiotherapist:before {
|
369 |
-
content: "\e06f";
|
370 |
-
}
|
371 |
-
.map-icon-embassy:before {
|
372 |
-
content: "\e070";
|
373 |
-
}
|
374 |
-
.map-icon-city-hall:before {
|
375 |
-
content: "\e071";
|
376 |
-
}
|
377 |
-
.map-icon-bus-station:before {
|
378 |
-
content: "\e072";
|
379 |
-
}
|
380 |
-
.map-icon-park:before {
|
381 |
-
content: "\e073";
|
382 |
-
}
|
383 |
-
.map-icon-lodging:before {
|
384 |
-
content: "\e074";
|
385 |
-
}
|
386 |
-
.map-icon-toilet:before {
|
387 |
-
content: "\e075";
|
388 |
-
}
|
389 |
-
.map-icon-circle:before {
|
390 |
-
content: "\e076";
|
391 |
-
}
|
392 |
-
.map-icon-square-rounded:before {
|
393 |
-
content: "\e077";
|
394 |
-
}
|
395 |
-
.map-icon-square:before {
|
396 |
-
content: "\e078";
|
397 |
-
}
|
398 |
-
.map-icon-book-store:before {
|
399 |
-
content: "\e014";
|
400 |
-
}
|
401 |
-
.map-icon-cafe:before {
|
402 |
-
content: "\e015";
|
403 |
-
}
|
404 |
-
.map-icon-wheelchair:before {
|
405 |
-
content: "\e079";
|
406 |
-
}
|
407 |
-
.map-icon-volume-control-telephone:before {
|
408 |
-
content: "\e07a";
|
409 |
-
}
|
410 |
-
.map-icon-sign-language:before {
|
411 |
-
content: "\e07b";
|
412 |
-
}
|
413 |
-
.map-icon-low-vision-access:before {
|
414 |
-
content: "\e07c";
|
415 |
-
}
|
416 |
-
.map-icon-open-captioning:before {
|
417 |
-
content: "\e07d";
|
418 |
-
}
|
419 |
-
.map-icon-closed-captioning:before {
|
420 |
-
content: "\e07e";
|
421 |
-
}
|
422 |
-
.map-icon-braille:before {
|
423 |
-
content: "\e07f";
|
424 |
-
}
|
425 |
-
.map-icon-audio-description:before {
|
426 |
-
content: "\e080";
|
427 |
-
}
|
428 |
-
.map-icon-assistive-listening-system:before {
|
429 |
-
content: "\e081";
|
430 |
-
}
|
431 |
-
.map-icon-abseiling:before {
|
432 |
-
content: "\e082";
|
433 |
-
}
|
434 |
-
.map-icon-tennis:before {
|
435 |
-
content: "\e083";
|
436 |
-
}
|
437 |
-
.map-icon-skateboarding:before {
|
438 |
-
content: "\e084";
|
439 |
-
}
|
440 |
-
.map-icon-playground:before {
|
441 |
-
content: "\e085";
|
442 |
-
}
|
443 |
-
.map-icon-inline-skating:before {
|
444 |
-
content: "\e086";
|
445 |
-
}
|
446 |
-
.map-icon-hang-gliding:before {
|
447 |
-
content: "\e087";
|
448 |
-
}
|
449 |
-
.map-icon-climbing:before {
|
450 |
-
content: "\e088";
|
451 |
-
}
|
452 |
-
.map-icon-baseball:before {
|
453 |
-
content: "\e089";
|
454 |
-
}
|
455 |
-
.map-icon-archery:before {
|
456 |
-
content: "\e08a";
|
457 |
-
}
|
458 |
-
.map-icon-wind-surfing:before {
|
459 |
-
content: "\e08b";
|
460 |
-
}
|
461 |
-
.map-icon-scuba-diving:before {
|
462 |
-
content: "\e08c";
|
463 |
-
}
|
464 |
-
.map-icon-sailing:before {
|
465 |
-
content: "\e08d";
|
466 |
-
}
|
467 |
-
.map-icon-marina:before {
|
468 |
-
content: "\e08e";
|
469 |
-
}
|
470 |
-
.map-icon-canoe:before {
|
471 |
-
content: "\e08f";
|
472 |
-
}
|
473 |
-
.map-icon-boat-tour:before {
|
474 |
-
content: "\e090";
|
475 |
-
}
|
476 |
-
.map-icon-boat-ramp:before {
|
477 |
-
content: "\e091";
|
478 |
-
}
|
479 |
-
.map-icon-swimming:before {
|
480 |
-
content: "\e092";
|
481 |
-
}
|
482 |
-
.map-icon-whale-watching:before {
|
483 |
-
content: "\e093";
|
484 |
-
}
|
485 |
-
.map-icon-waterskiing:before {
|
486 |
-
content: "\e094";
|
487 |
-
}
|
488 |
-
.map-icon-surfing:before {
|
489 |
-
content: "\e095";
|
490 |
-
}
|
491 |
-
.map-icon-rafting:before {
|
492 |
-
content: "\e096";
|
493 |
-
}
|
494 |
-
.map-icon-kayaking:before {
|
495 |
-
content: "\e097";
|
496 |
-
}
|
497 |
-
.map-icon-jet-skiing:before {
|
498 |
-
content: "\e099";
|
499 |
-
}
|
500 |
-
.map-icon-fishing-pier:before {
|
501 |
-
content: "\e09a";
|
502 |
-
}
|
503 |
-
.map-icon-fish-cleaning:before {
|
504 |
-
content: "\e09b";
|
505 |
-
}
|
506 |
-
.map-icon-diving:before {
|
507 |
-
content: "\e09c";
|
508 |
-
}
|
509 |
-
.map-icon-boating:before {
|
510 |
-
content: "\e09d";
|
511 |
-
}
|
512 |
-
.map-icon-fishing:before {
|
513 |
-
content: "\e098";
|
514 |
-
}
|
515 |
-
.map-icon-cross-country-skiing:before {
|
516 |
-
content: "\e09e";
|
517 |
-
}
|
518 |
-
.map-icon-skiing:before {
|
519 |
-
content: "\e09f";
|
520 |
-
}
|
521 |
-
.map-icon-snowmobile:before {
|
522 |
-
content: "\e0a0";
|
523 |
-
}
|
524 |
-
.map-icon-snowboarding:before {
|
525 |
-
content: "\e0a1";
|
526 |
-
}
|
527 |
-
.map-icon-snow:before {
|
528 |
-
content: "\e0a2";
|
529 |
-
}
|
530 |
-
.map-icon-snow-shoeing:before {
|
531 |
-
content: "\e0a3";
|
532 |
-
}
|
533 |
-
.map-icon-sledding:before {
|
534 |
-
content: "\e0a4";
|
535 |
-
}
|
536 |
-
.map-icon-ski-jumping:before {
|
537 |
-
content: "\e0a5";
|
538 |
-
}
|
539 |
-
.map-icon-ice-skating:before {
|
540 |
-
content: "\e0a6";
|
541 |
-
}
|
542 |
-
.map-icon-ice-fishing:before {
|
543 |
-
content: "\e0a7";
|
544 |
-
}
|
545 |
-
.map-icon-chairlift:before {
|
546 |
-
content: "\e0a8";
|
547 |
-
}
|
548 |
-
.map-icon-golf:before {
|
549 |
-
content: "\e0a9";
|
550 |
-
}
|
551 |
-
.map-icon-horse-riding:before {
|
552 |
-
content: "\e0aa";
|
553 |
-
}
|
554 |
-
.map-icon-motobike-trail:before {
|
555 |
-
content: "\e0ab";
|
556 |
-
}
|
557 |
-
.map-icon-trail-walking:before {
|
558 |
-
content: "\e0ac";
|
559 |
-
}
|
560 |
-
.map-icon-viewing:before {
|
561 |
-
content: "\e0ad";
|
562 |
-
}
|
563 |
-
.map-icon-walking:before {
|
564 |
-
content: "\e0ae";
|
565 |
-
}
|
566 |
-
.map-icon-bicycling:before {
|
567 |
-
content: "\e0af";
|
568 |
-
}
|
1 |
+
@font-face {
|
2 |
+
font-family: 'map-icons';
|
3 |
+
src:url('../fonts/map-icons.eot');
|
4 |
+
src:url('../fonts/map-icons.eot?#iefix') format('embedded-opentype'),
|
5 |
+
url('../fonts/map-icons.woff') format('woff'),
|
6 |
+
url('../fonts/map-icons.ttf') format('truetype'),
|
7 |
+
url('../fonts/map-icons.svg#map-icons') format('svg');
|
8 |
+
font-weight: normal;
|
9 |
+
font-style: normal;
|
10 |
+
}
|
11 |
+
|
12 |
+
/* Use the following CSS code if you want to use data attributes for inserting your icons */
|
13 |
+
[data-icon]:before {
|
14 |
+
font-family: 'map-icons';
|
15 |
+
content: attr(data-icon);
|
16 |
+
speak: none;
|
17 |
+
font-weight: normal;
|
18 |
+
font-variant: normal;
|
19 |
+
text-transform: none;
|
20 |
+
line-height: 1;
|
21 |
+
-webkit-font-smoothing: antialiased;
|
22 |
+
-moz-osx-font-smoothing: grayscale;
|
23 |
+
}
|
24 |
+
|
25 |
+
/* Use the following CSS code if you want to have a class per icon */
|
26 |
+
/*
|
27 |
+
Instead of a list of all class selectors,
|
28 |
+
you can use the generic selector below, but it's slower:
|
29 |
+
[class*="map-icon-"] {
|
30 |
+
*/
|
31 |
+
.map-icon-map-pin, .map-icon-expand, .map-icon-fullscreen, .map-icon-square-pin, .map-icon-route-pin, .map-icon-sheild, .map-icon-liquor-store, .map-icon-bicycle-store, .map-icon-hardware-store, .map-icon-insurance-agency, .map-icon-lawyer, .map-icon-real-estate-agency, .map-icon-art-gallery, .map-icon-campground, .map-icon-bakery, .map-icon-bar, .map-icon-amusement-park, .map-icon-aquarium, .map-icon-airport, .map-icon-bank, .map-icon-car-rental, .map-icon-car-dealer, .map-icon-hospital, .map-icon-hair-care, .map-icon-gym, .map-icon-grocery-or-supermarket, .map-icon-general-contractor, .map-icon-pharmacy, .map-icon-point-of-interest, .map-icon-political, .map-icon-post-box, .map-icon-health, .map-icon-post-office, .map-icon-real-estate-agency-copy, .map-icon-hindu-temple, .map-icon-restaurant, .map-icon-female, .map-icon-male, .map-icon-zoo, .map-icon-veterinary-care, .map-icon-car-repair, .map-icon-university, .map-icon-travel-agency, .map-icon-transit-station, .map-icon-beauty-salon, .map-icon-electronics-store, .map-icon-search, .map-icon-zoom-out-alt, .map-icon-movie-rental, .map-icon-atm, .map-icon-jewelry-store, .map-icon-car-wash, .map-icon-unisex, .map-icon-rv-park, .map-icon-school, .map-icon-clothing-store, .map-icon-laundry, .map-icon-casino, .map-icon-place-of-worship, .map-icon-furniture-store, .map-icon-zoom-in-alt, .map-icon-zoom-in, .map-icon-department-store, .map-icon-fire-station, .map-icon-church, .map-icon-library, .map-icon-shopping-mall, .map-icon-local-government, .map-icon-spa, .map-icon-convenience-store, .map-icon-police, .map-icon-route, .map-icon-zoom-out, .map-icon-location-arrow, .map-icon-postal-code, .map-icon-locksmith, .map-icon-doctor, .map-icon-mosque, .map-icon-stadium, .map-icon-storage, .map-icon-movie-theater, .map-icon-electrician, .map-icon-moving-company, .map-icon-postal-code-prefix, .map-icon-crosshairs, .map-icon-compass, .map-icon-dentist, .map-icon-plumber, .map-icon-museum, .map-icon-finance, .map-icon-parking, .map-icon-courthouse, .map-icon-accounting, .map-icon-store, .map-icon-subway-station, .map-icon-natural-feature, .map-icon-florist, .map-icon-food, .map-icon-night-club, .map-icon-synagogue, .map-icon-taxi-stand, .map-icon-painter, .map-icon-train-station, .map-icon-pet-store, .map-icon-gas-station, .map-icon-funeral-home, .map-icon-cemetery, .map-icon-bowling-alley, .map-icon-roofing-contractor, .map-icon-physiotherapist, .map-icon-embassy, .map-icon-city-hall, .map-icon-bus-station, .map-icon-park, .map-icon-lodging, .map-icon-toilet, .map-icon-circle, .map-icon-square-rounded, .map-icon-square, .map-icon-book-store, .map-icon-cafe, .map-icon-wheelchair, .map-icon-volume-control-telephone, .map-icon-sign-language, .map-icon-low-vision-access, .map-icon-open-captioning, .map-icon-closed-captioning, .map-icon-braille, .map-icon-audio-description, .map-icon-assistive-listening-system, .map-icon-abseiling, .map-icon-tennis, .map-icon-skateboarding, .map-icon-playground, .map-icon-inline-skating, .map-icon-hang-gliding, .map-icon-climbing, .map-icon-baseball, .map-icon-archery, .map-icon-wind-surfing, .map-icon-scuba-diving, .map-icon-sailing, .map-icon-marina, .map-icon-canoe, .map-icon-boat-tour, .map-icon-boat-ramp, .map-icon-swimming, .map-icon-whale-watching, .map-icon-waterskiing, .map-icon-surfing, .map-icon-rafting, .map-icon-kayaking, .map-icon-jet-skiing, .map-icon-fishing-pier, .map-icon-fish-cleaning, .map-icon-diving, .map-icon-boating, .map-icon-fishing, .map-icon-cross-country-skiing, .map-icon-skiing, .map-icon-snowmobile, .map-icon-snowboarding, .map-icon-snow, .map-icon-snow-shoeing, .map-icon-sledding, .map-icon-ski-jumping, .map-icon-ice-skating, .map-icon-ice-fishing, .map-icon-chairlift, .map-icon-golf, .map-icon-horse-riding, .map-icon-motobike-trail, .map-icon-trail-walking, .map-icon-viewing, .map-icon-walking, .map-icon-bicycling {
|
32 |
+
font-family: 'map-icons';
|
33 |
+
speak: none;
|
34 |
+
font-style: normal;
|
35 |
+
font-weight: normal;
|
36 |
+
font-variant: normal;
|
37 |
+
text-transform: none;
|
38 |
+
line-height: 1;
|
39 |
+
-webkit-font-smoothing: antialiased;
|
40 |
+
}
|
41 |
+
.map-icon-map-pin:before {
|
42 |
+
content: "\e000";
|
43 |
+
}
|
44 |
+
.map-icon-expand:before {
|
45 |
+
content: "\e001";
|
46 |
+
}
|
47 |
+
.map-icon-fullscreen:before {
|
48 |
+
content: "\e002";
|
49 |
+
}
|
50 |
+
.map-icon-square-pin:before {
|
51 |
+
content: "\e003";
|
52 |
+
}
|
53 |
+
.map-icon-route-pin:before {
|
54 |
+
content: "\e004";
|
55 |
+
}
|
56 |
+
.map-icon-sheild:before {
|
57 |
+
content: "\e005";
|
58 |
+
}
|
59 |
+
.map-icon-liquor-store:before {
|
60 |
+
content: "\e006";
|
61 |
+
}
|
62 |
+
.map-icon-bicycle-store:before {
|
63 |
+
content: "\e007";
|
64 |
+
}
|
65 |
+
.map-icon-hardware-store:before {
|
66 |
+
content: "\e008";
|
67 |
+
}
|
68 |
+
.map-icon-insurance-agency:before {
|
69 |
+
content: "\e009";
|
70 |
+
}
|
71 |
+
.map-icon-lawyer:before {
|
72 |
+
content: "\e00a";
|
73 |
+
}
|
74 |
+
.map-icon-real-estate-agency:before {
|
75 |
+
content: "\e00b";
|
76 |
+
}
|
77 |
+
.map-icon-art-gallery:before {
|
78 |
+
content: "\e00c";
|
79 |
+
}
|
80 |
+
.map-icon-campground:before {
|
81 |
+
content: "\e00d";
|
82 |
+
}
|
83 |
+
.map-icon-bakery:before {
|
84 |
+
content: "\e00e";
|
85 |
+
}
|
86 |
+
.map-icon-bar:before {
|
87 |
+
content: "\e00f";
|
88 |
+
}
|
89 |
+
.map-icon-amusement-park:before {
|
90 |
+
content: "\e010";
|
91 |
+
}
|
92 |
+
.map-icon-aquarium:before {
|
93 |
+
content: "\e011";
|
94 |
+
}
|
95 |
+
.map-icon-airport:before {
|
96 |
+
content: "\e012";
|
97 |
+
}
|
98 |
+
.map-icon-bank:before {
|
99 |
+
content: "\e013";
|
100 |
+
}
|
101 |
+
.map-icon-car-rental:before {
|
102 |
+
content: "\e016";
|
103 |
+
}
|
104 |
+
.map-icon-car-dealer:before {
|
105 |
+
content: "\e017";
|
106 |
+
}
|
107 |
+
.map-icon-hospital:before {
|
108 |
+
content: "\e018";
|
109 |
+
}
|
110 |
+
.map-icon-hair-care:before {
|
111 |
+
content: "\e019";
|
112 |
+
}
|
113 |
+
.map-icon-gym:before {
|
114 |
+
content: "\e01a";
|
115 |
+
}
|
116 |
+
.map-icon-grocery-or-supermarket:before {
|
117 |
+
content: "\e01b";
|
118 |
+
}
|
119 |
+
.map-icon-general-contractor:before {
|
120 |
+
content: "\e01c";
|
121 |
+
}
|
122 |
+
.map-icon-pharmacy:before {
|
123 |
+
content: "\e01d";
|
124 |
+
}
|
125 |
+
.map-icon-point-of-interest:before {
|
126 |
+
content: "\e01e";
|
127 |
+
}
|
128 |
+
.map-icon-political:before {
|
129 |
+
content: "\e01f";
|
130 |
+
}
|
131 |
+
.map-icon-post-box:before {
|
132 |
+
content: "\e020";
|
133 |
+
}
|
134 |
+
.map-icon-health:before {
|
135 |
+
content: "\e021";
|
136 |
+
}
|
137 |
+
.map-icon-post-office:before {
|
138 |
+
content: "\e022";
|
139 |
+
}
|
140 |
+
.map-icon-real-estate-agency-copy:before {
|
141 |
+
content: "\e023";
|
142 |
+
}
|
143 |
+
.map-icon-hindu-temple:before {
|
144 |
+
content: "\e024";
|
145 |
+
}
|
146 |
+
.map-icon-restaurant:before {
|
147 |
+
content: "\e025";
|
148 |
+
}
|
149 |
+
.map-icon-female:before {
|
150 |
+
content: "\e026";
|
151 |
+
}
|
152 |
+
.map-icon-male:before {
|
153 |
+
content: "\e027";
|
154 |
+
}
|
155 |
+
.map-icon-zoo:before {
|
156 |
+
content: "\e028";
|
157 |
+
}
|
158 |
+
.map-icon-veterinary-care:before {
|
159 |
+
content: "\e029";
|
160 |
+
}
|
161 |
+
.map-icon-car-repair:before {
|
162 |
+
content: "\e02a";
|
163 |
+
}
|
164 |
+
.map-icon-university:before {
|
165 |
+
content: "\e02b";
|
166 |
+
}
|
167 |
+
.map-icon-travel-agency:before {
|
168 |
+
content: "\e02c";
|
169 |
+
}
|
170 |
+
.map-icon-transit-station:before {
|
171 |
+
content: "\e02d";
|
172 |
+
}
|
173 |
+
.map-icon-beauty-salon:before {
|
174 |
+
content: "\e02e";
|
175 |
+
}
|
176 |
+
.map-icon-electronics-store:before {
|
177 |
+
content: "\e02f";
|
178 |
+
}
|
179 |
+
.map-icon-search:before {
|
180 |
+
content: "\e030";
|
181 |
+
}
|
182 |
+
.map-icon-zoom-out-alt:before {
|
183 |
+
content: "\e031";
|
184 |
+
}
|
185 |
+
.map-icon-movie-rental:before {
|
186 |
+
content: "\e032";
|
187 |
+
}
|
188 |
+
.map-icon-atm:before {
|
189 |
+
content: "\e033";
|
190 |
+
}
|
191 |
+
.map-icon-jewelry-store:before {
|
192 |
+
content: "\e034";
|
193 |
+
}
|
194 |
+
.map-icon-car-wash:before {
|
195 |
+
content: "\e035";
|
196 |
+
}
|
197 |
+
.map-icon-unisex:before {
|
198 |
+
content: "\e036";
|
199 |
+
}
|
200 |
+
.map-icon-rv-park:before {
|
201 |
+
content: "\e037";
|
202 |
+
}
|
203 |
+
.map-icon-school:before {
|
204 |
+
content: "\e038";
|
205 |
+
}
|
206 |
+
.map-icon-clothing-store:before {
|
207 |
+
content: "\e039";
|
208 |
+
}
|
209 |
+
.map-icon-laundry:before {
|
210 |
+
content: "\e03a";
|
211 |
+
}
|
212 |
+
.map-icon-casino:before {
|
213 |
+
content: "\e03b";
|
214 |
+
}
|
215 |
+
.map-icon-place-of-worship:before {
|
216 |
+
content: "\e03c";
|
217 |
+
}
|
218 |
+
.map-icon-furniture-store:before {
|
219 |
+
content: "\e03d";
|
220 |
+
}
|
221 |
+
.map-icon-zoom-in-alt:before {
|
222 |
+
content: "\e03e";
|
223 |
+
}
|
224 |
+
.map-icon-zoom-in:before {
|
225 |
+
content: "\e03f";
|
226 |
+
}
|
227 |
+
.map-icon-department-store:before {
|
228 |
+
content: "\e040";
|
229 |
+
}
|
230 |
+
.map-icon-fire-station:before {
|
231 |
+
content: "\e041";
|
232 |
+
}
|
233 |
+
.map-icon-church:before {
|
234 |
+
content: "\e042";
|
235 |
+
}
|
236 |
+
.map-icon-library:before {
|
237 |
+
content: "\e043";
|
238 |
+
}
|
239 |
+
.map-icon-shopping-mall:before {
|
240 |
+
content: "\e044";
|
241 |
+
}
|
242 |
+
.map-icon-local-government:before {
|
243 |
+
content: "\e045";
|
244 |
+
}
|
245 |
+
.map-icon-spa:before {
|
246 |
+
content: "\e046";
|
247 |
+
}
|
248 |
+
.map-icon-convenience-store:before {
|
249 |
+
content: "\e047";
|
250 |
+
}
|
251 |
+
.map-icon-police:before {
|
252 |
+
content: "\e048";
|
253 |
+
}
|
254 |
+
.map-icon-route:before {
|
255 |
+
content: "\e049";
|
256 |
+
}
|
257 |
+
.map-icon-zoom-out:before {
|
258 |
+
content: "\e04a";
|
259 |
+
}
|
260 |
+
.map-icon-location-arrow:before {
|
261 |
+
content: "\e04b";
|
262 |
+
}
|
263 |
+
.map-icon-postal-code:before {
|
264 |
+
content: "\e04c";
|
265 |
+
}
|
266 |
+
.map-icon-locksmith:before {
|
267 |
+
content: "\e04d";
|
268 |
+
}
|
269 |
+
.map-icon-doctor:before {
|
270 |
+
content: "\e04e";
|
271 |
+
}
|
272 |
+
.map-icon-mosque:before {
|
273 |
+
content: "\e04f";
|
274 |
+
}
|
275 |
+
.map-icon-stadium:before {
|
276 |
+
content: "\e050";
|
277 |
+
}
|
278 |
+
.map-icon-storage:before {
|
279 |
+
content: "\e051";
|
280 |
+
}
|
281 |
+
.map-icon-movie-theater:before {
|
282 |
+
content: "\e052";
|
283 |
+
}
|
284 |
+
.map-icon-electrician:before {
|
285 |
+
content: "\e053";
|
286 |
+
}
|
287 |
+
.map-icon-moving-company:before {
|
288 |
+
content: "\e054";
|
289 |
+
}
|
290 |
+
.map-icon-postal-code-prefix:before {
|
291 |
+
content: "\e055";
|
292 |
+
}
|
293 |
+
.map-icon-crosshairs:before {
|
294 |
+
content: "\e056";
|
295 |
+
}
|
296 |
+
.map-icon-compass:before {
|
297 |
+
content: "\e057";
|
298 |
+
}
|
299 |
+
.map-icon-dentist:before {
|
300 |
+
content: "\e058";
|
301 |
+
}
|
302 |
+
.map-icon-plumber:before {
|
303 |
+
content: "\e059";
|
304 |
+
}
|
305 |
+
.map-icon-museum:before {
|
306 |
+
content: "\e05b";
|
307 |
+
}
|
308 |
+
.map-icon-finance:before {
|
309 |
+
content: "\e05a";
|
310 |
+
}
|
311 |
+
.map-icon-parking:before {
|
312 |
+
content: "\e05c";
|
313 |
+
}
|
314 |
+
.map-icon-courthouse:before {
|
315 |
+
content: "\e05d";
|
316 |
+
}
|
317 |
+
.map-icon-accounting:before {
|
318 |
+
content: "\e05e";
|
319 |
+
}
|
320 |
+
.map-icon-store:before {
|
321 |
+
content: "\e05f";
|
322 |
+
}
|
323 |
+
.map-icon-subway-station:before {
|
324 |
+
content: "\e060";
|
325 |
+
}
|
326 |
+
.map-icon-natural-feature:before {
|
327 |
+
content: "\e061";
|
328 |
+
}
|
329 |
+
.map-icon-florist:before {
|
330 |
+
content: "\e062";
|
331 |
+
}
|
332 |
+
.map-icon-food:before {
|
333 |
+
content: "\e063";
|
334 |
+
}
|
335 |
+
.map-icon-night-club:before {
|
336 |
+
content: "\e064";
|
337 |
+
}
|
338 |
+
.map-icon-synagogue:before {
|
339 |
+
content: "\e065";
|
340 |
+
}
|
341 |
+
.map-icon-taxi-stand:before {
|
342 |
+
content: "\e066";
|
343 |
+
}
|
344 |
+
.map-icon-painter:before {
|
345 |
+
content: "\e067";
|
346 |
+
}
|
347 |
+
.map-icon-train-station:before {
|
348 |
+
content: "\e068";
|
349 |
+
}
|
350 |
+
.map-icon-pet-store:before {
|
351 |
+
content: "\e069";
|
352 |
+
}
|
353 |
+
.map-icon-gas-station:before {
|
354 |
+
content: "\e06a";
|
355 |
+
}
|
356 |
+
.map-icon-funeral-home:before {
|
357 |
+
content: "\e06b";
|
358 |
+
}
|
359 |
+
.map-icon-cemetery:before {
|
360 |
+
content: "\e06c";
|
361 |
+
}
|
362 |
+
.map-icon-bowling-alley:before {
|
363 |
+
content: "\e06d";
|
364 |
+
}
|
365 |
+
.map-icon-roofing-contractor:before {
|
366 |
+
content: "\e06e";
|
367 |
+
}
|
368 |
+
.map-icon-physiotherapist:before {
|
369 |
+
content: "\e06f";
|
370 |
+
}
|
371 |
+
.map-icon-embassy:before {
|
372 |
+
content: "\e070";
|
373 |
+
}
|
374 |
+
.map-icon-city-hall:before {
|
375 |
+
content: "\e071";
|
376 |
+
}
|
377 |
+
.map-icon-bus-station:before {
|
378 |
+
content: "\e072";
|
379 |
+
}
|
380 |
+
.map-icon-park:before {
|
381 |
+
content: "\e073";
|
382 |
+
}
|
383 |
+
.map-icon-lodging:before {
|
384 |
+
content: "\e074";
|
385 |
+
}
|
386 |
+
.map-icon-toilet:before {
|
387 |
+
content: "\e075";
|
388 |
+
}
|
389 |
+
.map-icon-circle:before {
|
390 |
+
content: "\e076";
|
391 |
+
}
|
392 |
+
.map-icon-square-rounded:before {
|
393 |
+
content: "\e077";
|
394 |
+
}
|
395 |
+
.map-icon-square:before {
|
396 |
+
content: "\e078";
|
397 |
+
}
|
398 |
+
.map-icon-book-store:before {
|
399 |
+
content: "\e014";
|
400 |
+
}
|
401 |
+
.map-icon-cafe:before {
|
402 |
+
content: "\e015";
|
403 |
+
}
|
404 |
+
.map-icon-wheelchair:before {
|
405 |
+
content: "\e079";
|
406 |
+
}
|
407 |
+
.map-icon-volume-control-telephone:before {
|
408 |
+
content: "\e07a";
|
409 |
+
}
|
410 |
+
.map-icon-sign-language:before {
|
411 |
+
content: "\e07b";
|
412 |
+
}
|
413 |
+
.map-icon-low-vision-access:before {
|
414 |
+
content: "\e07c";
|
415 |
+
}
|
416 |
+
.map-icon-open-captioning:before {
|
417 |
+
content: "\e07d";
|
418 |
+
}
|
419 |
+
.map-icon-closed-captioning:before {
|
420 |
+
content: "\e07e";
|
421 |
+
}
|
422 |
+
.map-icon-braille:before {
|
423 |
+
content: "\e07f";
|
424 |
+
}
|
425 |
+
.map-icon-audio-description:before {
|
426 |
+
content: "\e080";
|
427 |
+
}
|
428 |
+
.map-icon-assistive-listening-system:before {
|
429 |
+
content: "\e081";
|
430 |
+
}
|
431 |
+
.map-icon-abseiling:before {
|
432 |
+
content: "\e082";
|
433 |
+
}
|
434 |
+
.map-icon-tennis:before {
|
435 |
+
content: "\e083";
|
436 |
+
}
|
437 |
+
.map-icon-skateboarding:before {
|
438 |
+
content: "\e084";
|
439 |
+
}
|
440 |
+
.map-icon-playground:before {
|
441 |
+
content: "\e085";
|
442 |
+
}
|
443 |
+
.map-icon-inline-skating:before {
|
444 |
+
content: "\e086";
|
445 |
+
}
|
446 |
+
.map-icon-hang-gliding:before {
|
447 |
+
content: "\e087";
|
448 |
+
}
|
449 |
+
.map-icon-climbing:before {
|
450 |
+
content: "\e088";
|
451 |
+
}
|
452 |
+
.map-icon-baseball:before {
|
453 |
+
content: "\e089";
|
454 |
+
}
|
455 |
+
.map-icon-archery:before {
|
456 |
+
content: "\e08a";
|
457 |
+
}
|
458 |
+
.map-icon-wind-surfing:before {
|
459 |
+
content: "\e08b";
|
460 |
+
}
|
461 |
+
.map-icon-scuba-diving:before {
|
462 |
+
content: "\e08c";
|
463 |
+
}
|
464 |
+
.map-icon-sailing:before {
|
465 |
+
content: "\e08d";
|
466 |
+
}
|
467 |
+
.map-icon-marina:before {
|
468 |
+
content: "\e08e";
|
469 |
+
}
|
470 |
+
.map-icon-canoe:before {
|
471 |
+
content: "\e08f";
|
472 |
+
}
|
473 |
+
.map-icon-boat-tour:before {
|
474 |
+
content: "\e090";
|
475 |
+
}
|
476 |
+
.map-icon-boat-ramp:before {
|
477 |
+
content: "\e091";
|
478 |
+
}
|
479 |
+
.map-icon-swimming:before {
|
480 |
+
content: "\e092";
|
481 |
+
}
|
482 |
+
.map-icon-whale-watching:before {
|
483 |
+
content: "\e093";
|
484 |
+
}
|
485 |
+
.map-icon-waterskiing:before {
|
486 |
+
content: "\e094";
|
487 |
+
}
|
488 |
+
.map-icon-surfing:before {
|
489 |
+
content: "\e095";
|
490 |
+
}
|
491 |
+
.map-icon-rafting:before {
|
492 |
+
content: "\e096";
|
493 |
+
}
|
494 |
+
.map-icon-kayaking:before {
|
495 |
+
content: "\e097";
|
496 |
+
}
|
497 |
+
.map-icon-jet-skiing:before {
|
498 |
+
content: "\e099";
|
499 |
+
}
|
500 |
+
.map-icon-fishing-pier:before {
|
501 |
+
content: "\e09a";
|
502 |
+
}
|
503 |
+
.map-icon-fish-cleaning:before {
|
504 |
+
content: "\e09b";
|
505 |
+
}
|
506 |
+
.map-icon-diving:before {
|
507 |
+
content: "\e09c";
|
508 |
+
}
|
509 |
+
.map-icon-boating:before {
|
510 |
+
content: "\e09d";
|
511 |
+
}
|
512 |
+
.map-icon-fishing:before {
|
513 |
+
content: "\e098";
|
514 |
+
}
|
515 |
+
.map-icon-cross-country-skiing:before {
|
516 |
+
content: "\e09e";
|
517 |
+
}
|
518 |
+
.map-icon-skiing:before {
|
519 |
+
content: "\e09f";
|
520 |
+
}
|
521 |
+
.map-icon-snowmobile:before {
|
522 |
+
content: "\e0a0";
|
523 |
+
}
|
524 |
+
.map-icon-snowboarding:before {
|
525 |
+
content: "\e0a1";
|
526 |
+
}
|
527 |
+
.map-icon-snow:before {
|
528 |
+
content: "\e0a2";
|
529 |
+
}
|
530 |
+
.map-icon-snow-shoeing:before {
|
531 |
+
content: "\e0a3";
|
532 |
+
}
|
533 |
+
.map-icon-sledding:before {
|
534 |
+
content: "\e0a4";
|
535 |
+
}
|
536 |
+
.map-icon-ski-jumping:before {
|
537 |
+
content: "\e0a5";
|
538 |
+
}
|
539 |
+
.map-icon-ice-skating:before {
|
540 |
+
content: "\e0a6";
|
541 |
+
}
|
542 |
+
.map-icon-ice-fishing:before {
|
543 |
+
content: "\e0a7";
|
544 |
+
}
|
545 |
+
.map-icon-chairlift:before {
|
546 |
+
content: "\e0a8";
|
547 |
+
}
|
548 |
+
.map-icon-golf:before {
|
549 |
+
content: "\e0a9";
|
550 |
+
}
|
551 |
+
.map-icon-horse-riding:before {
|
552 |
+
content: "\e0aa";
|
553 |
+
}
|
554 |
+
.map-icon-motobike-trail:before {
|
555 |
+
content: "\e0ab";
|
556 |
+
}
|
557 |
+
.map-icon-trail-walking:before {
|
558 |
+
content: "\e0ac";
|
559 |
+
}
|
560 |
+
.map-icon-viewing:before {
|
561 |
+
content: "\e0ad";
|
562 |
+
}
|
563 |
+
.map-icon-walking:before {
|
564 |
+
content: "\e0ae";
|
565 |
+
}
|
566 |
+
.map-icon-bicycling:before {
|
567 |
+
content: "\e0af";
|
568 |
+
}
|
includes/map-icons/demo.html
CHANGED
@@ -1,124 +1,124 @@
|
|
1 |
-
<!DOCTYPE html>
|
2 |
-
<html>
|
3 |
-
<head>
|
4 |
-
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
|
5 |
-
<meta charset="utf-8">
|
6 |
-
<title>Map Icons Demo</title>
|
7 |
-
<link rel="shortcut icon" href="images/favicon.ico" />
|
8 |
-
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
|
9 |
-
<link rel="stylesheet" type="text/css" href="css/map-icons.css" />
|
10 |
-
<script src="js/map-icons.js"></script>
|
11 |
-
<style>
|
12 |
-
body, html {
|
13 |
-
width: 100%;
|
14 |
-
height: 100%;
|
15 |
-
margin: 0;
|
16 |
-
padding: 0;
|
17 |
-
}
|
18 |
-
|
19 |
-
#map-canvas {
|
20 |
-
width: 100%;
|
21 |
-
height: 100%;
|
22 |
-
}
|
23 |
-
|
24 |
-
.marker-label,
|
25 |
-
.marker-icon {
|
26 |
-
z-index: 99;
|
27 |
-
position: absolute;
|
28 |
-
display: block;
|
29 |
-
margin-top: -50px;
|
30 |
-
margin-left: -25px;
|
31 |
-
width: 50px;
|
32 |
-
height: 50px;
|
33 |
-
font-size: 30px !important;
|
34 |
-
text-align: center;
|
35 |
-
color: #FFFFFF;
|
36 |
-
white-space: nowrap;
|
37 |
-
}
|
38 |
-
</style>
|
39 |
-
<script>
|
40 |
-
function initialize() {
|
41 |
-
var mapOptions = {
|
42 |
-
zoom: 12,
|
43 |
-
center: new google.maps.LatLng(-33.9, 151.2),
|
44 |
-
mapTypeId: google.maps.MapTypeId.ROADMAP,
|
45 |
-
styles: [
|
46 |
-
{stylers: [{ visibility: 'simplified' }]},
|
47 |
-
{elementType: 'labels', stylers: [{ visibility: 'off' }]}
|
48 |
-
]
|
49 |
-
}
|
50 |
-
var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
|
51 |
-
|
52 |
-
var marker1 = new Marker({
|
53 |
-
map: map,
|
54 |
-
zIndex: 9,
|
55 |
-
title: 'Map Icons',
|
56 |
-
position: new google.maps.LatLng(-33.890542, 151.274856),
|
57 |
-
icon: {
|
58 |
-
path: MAP_PIN,
|
59 |
-
fillColor: '#0E77E9',
|
60 |
-
fillOpacity: 1,
|
61 |
-
strokeColor: '',
|
62 |
-
strokeWeight: 0,
|
63 |
-
scale: 1/2
|
64 |
-
},
|
65 |
-
label: '<i class="map-icon-walking"></i>'
|
66 |
-
});
|
67 |
-
|
68 |
-
var marker2 = new Marker({
|
69 |
-
map: map,
|
70 |
-
zIndex: 9,
|
71 |
-
title: 'Map Icons',
|
72 |
-
position: new google.maps.LatLng(-33.923036, 151.259052),
|
73 |
-
icon: {
|
74 |
-
path: SQUARE_PIN,
|
75 |
-
fillColor: '#0E77E9',
|
76 |
-
fillOpacity: 1,
|
77 |
-
strokeColor: '',
|
78 |
-
strokeWeight: 0,
|
79 |
-
scale: 1/2
|
80 |
-
},
|
81 |
-
label: '<i class="map-icon-cafe"></i>'
|
82 |
-
});
|
83 |
-
|
84 |
-
var marker3 = new Marker({
|
85 |
-
map: map,
|
86 |
-
zIndex: 9,
|
87 |
-
title: 'Map Icons',
|
88 |
-
position: new google.maps.LatLng(-34.028249, 151.157507),
|
89 |
-
icon: {
|
90 |
-
path: SHEILD,
|
91 |
-
fillColor: '#0E77E9',
|
92 |
-
fillOpacity: 1,
|
93 |
-
strokeColor: '',
|
94 |
-
strokeWeight: 0,
|
95 |
-
scale: 1/2
|
96 |
-
},
|
97 |
-
label: '<i class="map-icon-car-wash"></i>'
|
98 |
-
});
|
99 |
-
|
100 |
-
var marker4 = new Marker({
|
101 |
-
map: map,
|
102 |
-
zIndex: 9,
|
103 |
-
title: 'Map Icons',
|
104 |
-
position: new google.maps.LatLng(-33.80010128657071, 151.28747820854187),
|
105 |
-
icon: {
|
106 |
-
path: ROUTE,
|
107 |
-
fillColor: '#0E77E9',
|
108 |
-
fillOpacity: 1,
|
109 |
-
strokeColor: '',
|
110 |
-
strokeWeight: 0,
|
111 |
-
scale: 1/2
|
112 |
-
},
|
113 |
-
label: '<i class="map-icon-male"></i>'
|
114 |
-
});
|
115 |
-
}
|
116 |
-
|
117 |
-
google.maps.event.addDomListener(window, 'load', initialize);
|
118 |
-
|
119 |
-
</script>
|
120 |
-
</head>
|
121 |
-
<body>
|
122 |
-
<div id="map-canvas"></div>
|
123 |
-
</body>
|
124 |
</html>
|
1 |
+
<!DOCTYPE html>
|
2 |
+
<html>
|
3 |
+
<head>
|
4 |
+
<meta name="viewport" content="initial-scale=1.0, user-scalable=no">
|
5 |
+
<meta charset="utf-8">
|
6 |
+
<title>Map Icons Demo</title>
|
7 |
+
<link rel="shortcut icon" href="images/favicon.ico" />
|
8 |
+
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
|
9 |
+
<link rel="stylesheet" type="text/css" href="css/map-icons.css" />
|
10 |
+
<script src="js/map-icons.js"></script>
|
11 |
+
<style>
|
12 |
+
body, html {
|
13 |
+
width: 100%;
|
14 |
+
height: 100%;
|
15 |
+
margin: 0;
|
16 |
+
padding: 0;
|
17 |
+
}
|
18 |
+
|
19 |
+
#map-canvas {
|
20 |
+
width: 100%;
|
21 |
+
height: 100%;
|
22 |
+
}
|
23 |
+
|
24 |
+
.marker-label,
|
25 |
+
.marker-icon {
|
26 |
+
z-index: 99;
|
27 |
+
position: absolute;
|
28 |
+
display: block;
|
29 |
+
margin-top: -50px;
|
30 |
+
margin-left: -25px;
|
31 |
+
width: 50px;
|
32 |
+
height: 50px;
|
33 |
+
font-size: 30px !important;
|
34 |
+
text-align: center;
|
35 |
+
color: #FFFFFF;
|
36 |
+
white-space: nowrap;
|
37 |
+
}
|
38 |
+
</style>
|
39 |
+
<script>
|
40 |
+
function initialize() {
|
41 |
+
var mapOptions = {
|
42 |
+
zoom: 12,
|
43 |
+
center: new google.maps.LatLng(-33.9, 151.2),
|
44 |
+
mapTypeId: google.maps.MapTypeId.ROADMAP,
|
45 |
+
styles: [
|
46 |
+
{stylers: [{ visibility: 'simplified' }]},
|
47 |
+
{elementType: 'labels', stylers: [{ visibility: 'off' }]}
|
48 |
+
]
|
49 |
+
}
|
50 |
+
var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
|
51 |
+
|
52 |
+
var marker1 = new Marker({
|
53 |
+
map: map,
|
54 |
+
zIndex: 9,
|
55 |
+
title: 'Map Icons',
|
56 |
+
position: new google.maps.LatLng(-33.890542, 151.274856),
|
57 |
+
icon: {
|
58 |
+
path: MAP_PIN,
|
59 |
+
fillColor: '#0E77E9',
|
60 |
+
fillOpacity: 1,
|
61 |
+
strokeColor: '',
|
62 |
+
strokeWeight: 0,
|
63 |
+
scale: 1/2
|
64 |
+
},
|
65 |
+
label: '<i class="map-icon-walking"></i>'
|
66 |
+
});
|
67 |
+
|
68 |
+
var marker2 = new Marker({
|
69 |
+
map: map,
|
70 |
+
zIndex: 9,
|
71 |
+
title: 'Map Icons',
|
72 |
+
position: new google.maps.LatLng(-33.923036, 151.259052),
|
73 |
+
icon: {
|
74 |
+
path: SQUARE_PIN,
|
75 |
+
fillColor: '#0E77E9',
|
76 |
+
fillOpacity: 1,
|
77 |
+
strokeColor: '',
|
78 |
+
strokeWeight: 0,
|
79 |
+
scale: 1/2
|
80 |
+
},
|
81 |
+
label: '<i class="map-icon-cafe"></i>'
|
82 |
+
});
|
83 |
+
|
84 |
+
var marker3 = new Marker({
|
85 |
+
map: map,
|
86 |
+
zIndex: 9,
|
87 |
+
title: 'Map Icons',
|
88 |
+
position: new google.maps.LatLng(-34.028249, 151.157507),
|
89 |
+
icon: {
|
90 |
+
path: SHEILD,
|
91 |
+
fillColor: '#0E77E9',
|
92 |
+
fillOpacity: 1,
|
93 |
+
strokeColor: '',
|
94 |
+
strokeWeight: 0,
|
95 |
+
scale: 1/2
|
96 |
+
},
|
97 |
+
label: '<i class="map-icon-car-wash"></i>'
|
98 |
+
});
|
99 |
+
|
100 |
+
var marker4 = new Marker({
|
101 |
+
map: map,
|
102 |
+
zIndex: 9,
|
103 |
+
title: 'Map Icons',
|
104 |
+
position: new google.maps.LatLng(-33.80010128657071, 151.28747820854187),
|
105 |
+
icon: {
|
106 |
+
path: ROUTE,
|
107 |
+
fillColor: '#0E77E9',
|
108 |
+
fillOpacity: 1,
|
109 |
+
strokeColor: '',
|
110 |
+
strokeWeight: 0,
|
111 |
+
scale: 1/2
|
112 |
+
},
|
113 |
+
label: '<i class="map-icon-male"></i>'
|
114 |
+
});
|
115 |
+
}
|
116 |
+
|
117 |
+
google.maps.event.addDomListener(window, 'load', initialize);
|
118 |
+
|
119 |
+
</script>
|
120 |
+
</head>
|
121 |
+
<body>
|
122 |
+
<div id="map-canvas"></div>
|
123 |
+
</body>
|
124 |
</html>
|
includes/map-icons/fonts/map-icons.dev.svg
CHANGED
@@ -1,1394 +1,1394 @@
|
|
1 |
-
<?xml version="1.0" standalone="no"?>
|
2 |
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
-
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
-
<metadata>
|
5 |
-
This is a custom SVG font generated by IcoMoon.
|
6 |
-
<iconset grid="16"></iconset>
|
7 |
-
</metadata>
|
8 |
-
<defs>
|
9 |
-
<font id="map-icons" horiz-adv-x="512" >
|
10 |
-
<font-face units-per-em="512" ascent="480" descent="-32" />
|
11 |
-
<missing-glyph horiz-adv-x="512" />
|
12 |
-
<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
|
13 |
-
<glyph unicode="" d="M 256.154,455.424c-79.872,0-144.599-63.529-144.599-141.865C 111.555,235.203, 256.154-21.76, 256.154-21.76s 144.609,256.963, 144.609,335.319
|
14 |
-
C 400.763,391.895, 335.995,455.424, 256.154,455.424z" data-tags="map-pin" />
|
15 |
-
<glyph unicode="" d="M 20.48,318.638L 20.48,459.52L 166.902,459.52L 220.785,418.56L 130.99,418.56L 225.28,318.638L 166.902,264.96L 71.68,354.55L 71.68,264.755 zM 491.52,134.38L 491.52-11.52L 345.098-11.52L 291.215,29.44L 381.010,29.44L 286.72,131.871L 345.098,186.798L 440.32,98.468L 440.32,188.262 z" data-tags="expand" />
|
16 |
-
<glyph unicode="" d="M 20.48,318.638L 20.48,459.52L 166.902,459.52L 220.785,418.56L 130.99,418.56L 225.28,318.638L 166.902,264.96L 71.68,354.55L 71.68,264.755 zM 345.62,459.52L 491.52,459.52L 491.52,318.116L 450.56,264.243L 450.56,354.028L 348.129,259.738L 293.202,315.607L 381.532,408.32L 291.738,408.32 zM 491.52,134.38L 491.52-11.52L 345.098-11.52L 291.215,29.44L 381.010,29.44L 286.72,131.871L 345.098,186.798L 440.32,98.468L 440.32,188.262 zM 166.38-11.52L 20.48-11.52L 20.48,134.902L 61.44,188.785L 61.44,98.99L 163.871,193.28L 218.798,134.902L 130.468,39.68L 220.262,39.68 z" data-tags="fullscreen" />
|
17 |
-
<glyph unicode="" d="M 460.8,469.76L 51.2,469.76L 51.2,60.16L 205.752,60.16L 261.448-22.272L 317.153,60.16L 460.8,60.16 z" data-tags="square-pin" />
|
18 |
-
<glyph unicode="" d="M 486.349,259.072C 484.045,383.57, 411.822,433.039, 408.863,434.995l-11.172,7.639l-11.254-7.619c-18.698-12.687-38.083-19.128-57.61-19.128
|
19 |
-
c-32.338,0-54.292,17.408-55.224,18.166L 261.007,444.16l-12.503-10.138c-0.922-0.737-22.866-18.135-55.214-18.135c-19.507,0-38.881,6.431-57.61,19.159
|
20 |
-
l-11.203,7.557l-11.284-7.629C 105.533,429.711, 38.298,380.047, 35.86,259.686C 34.888,249.201, 63.805,51.057, 261.11-6.4
|
21 |
-
C 475.617,56.289, 487.455,245.996, 486.349,259.072z" data-tags="route-pin" />
|
22 |
-
<glyph unicode="" d="M 435.814,304.814c 2.847,33.853, 13.056,64.932, 31.027,93.43L 397.885,464.64c-21.78-18.053-46.602-28.058-74.701-29.819
|
23 |
-
c-25.764-2.243-50.176,2.468-73.155,14.162c-23.613-11.305-47.933-16.046-73.277-14.162c-26.235,2.253-49.9,11.213-71.096,27.075L 36.526,395.52
|
24 |
-
c 17.009-28.897, 26.481-59.136, 28.334-90.706c 0.881-14.531-3.42-34.56-13.097-60.416c-5.059-14.336-8.878-26.778-11.5-37.171
|
25 |
-
c-2.417-10.332-3.922-18.708-4.434-25.006c-0.348-27.556, 7.68-52.439, 24.146-74.568c 12.872-16.148, 34.099-33.987, 63.57-53.494
|
26 |
-
c 32.236-15.8, 57.19-26.051, 74.67-30.423c 5.018-2.263, 9.912-4.424, 14.5-6.502c 4.557-2.089, 9.441-4.147, 14.531-6.38
|
27 |
-
c 11.008-6.349, 18.719-13.22, 22.784-20.316c 4.997,7.69, 12.892,14.377, 23.378,20.316c 7.393,3.113, 13.67,5.786, 18.698,8.161
|
28 |
-
c 5.028,2.15, 8.776,3.738, 10.947,4.71c 3.738,1.772, 8.622,3.82, 14.561,6.083c 5.96,2.263, 13.363,5.028, 22.159,8.1
|
29 |
-
c 17.029,5.796, 29.43,11.295, 37.304,16.251c 28.59,19.497, 49.49,37.059, 62.792,52.736c 17.050,22.2, 25.344,47.206, 24.965,75.305
|
30 |
-
c-1.014,12.595-6.554,32.727-16.609,60.16C 438.661,269.097, 434.432,289.843, 435.814,304.814z" data-tags="sheild" />
|
31 |
-
<glyph unicode="" d="M 143.36,316.16c 30.72-10.24, 51.2-36.332, 51.2-70.738l0-264.366 C 194.56-27.075, 202.783-32, 194.386-32L 42.824-32 C 34.447-32, 30.72-27.075, 30.72-18.954L 30.72,245.422
|
32 |
-
C 30.72,279.91, 51.2,308.439, 81.92,316.16L 81.92,439.040 l 61.44,0 L 143.36,316.16 zM 81.92,480L 143.36,480L 143.36,459.52L 81.92,459.52zM 361.011,431.002c-4.68,0.666-8.274,4.465-8.274,9.042c0,3.348, 2.007,6.267, 4.925,7.926c-2.918,1.536-4.925,6.943-4.925,10.322
|
33 |
-
C 352.737,463.37, 357.018,469.76, 362.322,469.76l 47.964,0 c 5.335,0, 9.585-6.39, 9.585-11.459c0-3.533-1.997-7.649-5.038-9.134
|
34 |
-
c 2.918-1.587, 5.038-5.059, 5.038-8.53c0-4.588-3.461-8.673-8.12-9.288l 61.082-149.504C 476.416,272.128, 481.28,261.202, 481.28,250.47L 481.28-11.52
|
35 |
-
c0-9.994, 0.266-20.48-10.24-20.48L 316.529-32 C 305.859-32, 307.2-21.514, 307.2-11.52L 307.2,254.72 c0,10.721, 1.997,17.265, 5.601,26.993L 361.011,431.002zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76z" data-tags="liquor_store" />
|
36 |
-
<glyph unicode="" d="M 418.908,248.054c-12.964,0-25.283-2.662-36.475-7.444l-31.498,53.975l 23.736,40.684c 3.226,5.55, 1.352,12.677-4.188,15.923
|
37 |
-
c-2.437,1.413-5.151,3.973-7.721,3.553C 362.086,354.857, 361.431,357.12, 360.745,357.12l-46.561,0 c-6.42,0-11.633-8.94-11.633-15.36
|
38 |
-
c0-6.431, 5.212-15.36, 11.633-15.36l 30.177,0 l-13.588-20.48L 194.806,305.92 l 27.156,51.2l 10.762,0 c 6.42,0, 11.633,3.809, 11.633,10.24s-5.212,10.24-11.633,10.24l-58.194,0
|
39 |
-
c-6.41,0-11.633-3.809-11.633-10.24s 5.212-10.24, 11.633-10.24l 20.47,0 l-65.423-114.33c-11.203,4.782-23.542,6.349-36.495,6.349
|
40 |
-
C 41.677,249.139,0,206.909,0,155.505c0-51.415, 41.677-93.358, 93.092-93.358s 93.092,41.544, 93.092,92.959c0,30.106-14.356,56.74-36.557,73.769l 24.914,42.66
|
41 |
-
l 71.414-122.429c 0.082-0.133, 0.184-0.256, 0.276-0.389c 0.092-0.174, 0.205-0.317, 0.307-0.461c 0.082-0.133, 0.143-0.236, 0.236-0.348
|
42 |
-
c 0.287-0.379, 0.604-0.727, 0.922-1.065c 0.031-0.041, 0.072-0.082, 0.113-0.133c 0.102-0.102, 0.205-0.195, 0.317-0.287
|
43 |
-
c 0.102-0.092, 0.215-0.184, 0.328-0.266c 0.287-0.246, 0.594-0.502, 0.901-0.717c 0.123-0.092, 0.246-0.164, 0.379-0.246
|
44 |
-
c 0.102-0.061, 0.195-0.123, 0.297-0.195c 0.041-0.020, 0.072-0.051, 0.123-0.072c 0.010-0.020, 0.031-0.020, 0.041-0.041
|
45 |
-
c 0.317-0.174, 0.645-0.328, 0.983-0.481c 0.041-0.031, 0.072-0.041, 0.113-0.051c 0.072-0.031, 0.154-0.092, 0.236-0.123
|
46 |
-
c 0.020,0, 0.051-0.020, 0.082-0.020c 0.236-0.102, 0.502-0.184, 0.748-0.266c 0.236-0.082, 0.461-0.174, 0.696-0.225
|
47 |
-
c 0.051-0.010, 0.102-0.010, 0.143-0.041c 0.092-0.010, 0.174-0.020, 0.256-0.041c 0.143-0.031, 0.297-0.051, 0.451-0.092
|
48 |
-
c 0.696-0.133, 1.382-0.215, 2.089-0.215l0,0 c 0.010,0, 0.010-0.635, 0.010-0.635c 0.020,0, 0.031-0.604, 0.041-0.604l 70.564,0
|
49 |
-
c 5.755-40.96, 44.831-80.845, 92.293-80.845c 51.415,0, 93.092,41.994, 93.092,93.409C 512,206.060, 470.323,248.054, 418.908,248.054z M 162.908,154.962
|
50 |
-
c0-38.574-31.252-69.827-69.816-69.827c-38.564,0-69.816,31.263-69.816,69.827c0,38.554, 31.252,69.806, 69.816,69.806
|
51 |
-
c 8.673,0, 16.947-1.649, 24.607-4.547l-34.662-59.412c-3.236-5.54-1.352-12.667, 4.198-15.923c 1.843-1.065, 3.86-1.577, 5.847-1.577
|
52 |
-
c 4.004,0, 7.895,2.068, 10.066,5.765l 34.673,59.453C 153.139,195.717, 162.908,176.476, 162.908,154.962z M 256,180.541L 194.806,285.44l 122.399,0 L 256,180.541z
|
53 |
-
M 337.449,269.476l 24.924-43.704C 343.101,210.985, 329.789,193.28, 326.615,162.56l-50.36,0 L 337.449,269.476z M 374.18,204.503L 398.664,162.56l-48.517,0
|
54 |
-
C 352.952,183.040, 361.677,194.048, 374.18,204.503z M 418.908,84.5c-34.58,0-63.232,26.86-68.772,57.58l 68.741,0 c 0.031,0, 0.031,0.604, 0.051,0.604
|
55 |
-
c 0.696,0, 1.393,0.41, 2.079,0.543c 0.164,0.041, 0.307,0.215, 0.471,0.236c 0.635,0.154, 1.28,0.42, 1.935,0.676
|
56 |
-
c 0.061,0.031, 0.133,0.133, 0.215,0.164c 0.379,0.174, 0.768,0.379, 1.157,0.594c 0.092,0.051, 0.174,0.154, 0.276,0.215
|
57 |
-
c 0.348,0.225, 0.676,0.492, 1.034,0.748c 0.266,0.225, 0.573,0.44, 0.799,0.676c 0.287,0.256, 0.532,0.553, 0.778,0.85
|
58 |
-
c 0.236,0.266, 0.502,0.553, 0.696,0.87c 0.205,0.276, 0.41,0.625, 0.584,0.942c 0.184,0.328, 0.369,0.635, 0.532,0.973
|
59 |
-
c 0.154,0.348, 0.266,0.707, 0.399,1.065c 0.123,0.348, 0.236,0.696, 0.317,1.065c 0.092,0.369, 0.123,0.696, 0.174,1.065
|
60 |
-
c 0.061,0.44, 0.113,0.819, 0.133,1.26c0,0.123, 0.031,0.236, 0.031,0.358c0,0.215-0.051,0.43-0.051,0.655
|
61 |
-
c-0.041,0.44-0.072,0.84-0.143,1.27c-0.051,0.379-0.154,0.707-0.236,1.085c-0.102,0.358-0.195,0.707-0.338,1.065
|
62 |
-
c-0.164,0.399-0.338,0.778-0.532,1.157c-0.102,0.205-0.174,0.41-0.276,0.604l-34.662,59.412c 7.68,2.898, 15.944,4.547, 24.607,4.547
|
63 |
-
c 38.574,0, 69.827-31.57, 69.827-70.124C 488.745,116.081, 457.482,84.5, 418.908,84.5z" data-tags="bicycle_store" />
|
64 |
-
<glyph unicode="" d="M 128.522-26.726c-3.482-6.103-13.394-7.066-22.139-2.048l-54.743,31.16c-8.704,4.966-12.954,13.947-9.462,20.040L 275.005,391.506
|
65 |
-
c 33.485,54.129-83.558,49.357-112.292,33.423C 184.443,463.892, 253.696,476.754, 298.609,480l 13.066-0.85c 25.385-12.646, 61.788-31.621, 85.78-47.534
|
66 |
-
c 17.623-27.679, 36.209-42.25, 62.525-42.179c 34.345-26.317-19.302-98.109-53.053-64.86c 0.184,16.425-47.473,58.921-80.855,23.91L 128.522-26.726z" data-tags="hardware_store" />
|
67 |
-
<glyph unicode="" d="M 261.233,450.386L 12.984,244.48L 71.68,244.48 l0-245.76 l 368.64,0 L 440.32,244.48 l 64.184,0 L 261.233,450.386z M 316.846,70.4L 200.632,70.4 l 24.371,109.681c-14.735,10.24-24.371,25.661-24.371,44.544
|
68 |
-
c0,31.109, 26.020,55.695, 58.102,55.695c 32.102,0, 58.112-25.528, 58.112-56.637c0-18.893-9.636-33.229-24.361-43.438L 316.846,70.4z" data-tags="insurance_agency" />
|
69 |
-
<glyph unicode="" d="M 3.021,197.571c 4.198-32.512, 31.918-57.61, 65.587-57.61c 33.628,0, 61.327,25.098, 65.536,57.61L 3.021,197.571 zM 360.264,64.461c0-5.663-4.567-10.271-10.22-10.271L 159.007,54.19 c-5.612,0-10.24,4.608-10.24,10.271l0,0c0,5.622, 4.618,10.168, 10.24,10.168l 191.027,0
|
70 |
-
C 355.686,74.629, 360.264,70.083, 360.264,64.461L 360.264,64.461zM 149.883,48.957L 359.158,48.957L 359.158,19.395L 149.883,19.395zM 377.856,197.571c 4.188-32.512, 31.939-57.61, 65.556-57.61c 33.638,0, 61.348,25.098, 65.526,57.61L 377.856,197.571 zM 505.334,218.143l-53.688,73.953l 28.703,0 c 6.984,0, 12.605,5.724, 12.605,12.8c0,7.014-5.632,12.677-12.605,12.677L 328.305,317.573
|
71 |
-
c-9.062,24.996-30.935,43.776-57.692,48.456L 270.612,391.229 L 270.612,405.934 c0,7.096-5.693,12.759-12.749,12.759c-0.389,0-0.768-0.082-1.188-0.133
|
72 |
-
c-0.379,0.051-0.788,0.133-1.188,0.133c-7.055,0-12.728-5.663-12.728-12.759l0-14.705 l0-25.18 c-26.757-4.68-48.62-23.46-57.672-48.456L 33.014,317.594
|
73 |
-
c-6.932,0-12.585-5.663-12.585-12.677c0-7.086, 5.652-12.8, 12.585-12.8l 27.392,0 l-53.699-73.953L0,218.163 l0-13.66 l 137.196,0 l0,13.66 L 130.458,218.163 L 76.78,292.096
|
74 |
-
l 103.741,0 l 9.8,0 l 11.069,0 c0,2.888, 0.317,5.724, 0.748,8.438c 0.44,1.28, 0.737,2.58, 0.737,3.922c 4.69,19.763, 20.132,35.461, 39.885,40.274
|
75 |
-
l0-97.403 l0-42.854 l-0.532,0 c-1.096-52.756-26.194-98.765-63.427-124.621l 74.404,0 l 3.482,0 l 6.973,0 l 70.932,0 c-37.243,25.856-62.321,71.864-63.478,124.621l-0.492,0
|
76 |
-
l0,42.854 l0,97.403 c 19.722-4.813, 35.215-20.511, 39.875-40.274c 0.041-1.341, 0.317-2.642, 0.768-3.922c 0.41-2.724, 0.666-5.55, 0.666-8.438l 11.141,0
|
77 |
-
l 9.789,0 l 102.38,0 l-53.699-73.953l-6.697,0 l0-13.66 L 512,204.483 l0,13.66 L 505.334,218.143 z M 63.13,218.143L 20.275,218.143 l 42.854,59.034L 63.13,218.143 z M 74.097,218.143l0,59.034
|
78 |
-
l 42.854-59.034L 74.097,218.143 z M 437.944,218.143l-42.875,0 l 42.875,59.034L 437.944,218.143 z M 448.86,218.143l0,59.034 l 42.906-59.034L 448.86,218.143 zM 81.316,335.37c0-6.953-5.693-12.687-12.698-12.687c-7.035,0-12.749,5.734-12.749,12.687c0,7.025, 5.714,12.759, 12.749,12.759
|
79 |
-
C 75.622,348.14, 81.316,342.395, 81.316,335.37zM 456.141,336.046c0-7.076-5.693-12.687-12.718-12.687c-7.055,0-12.718,5.612-12.718,12.687c0,7.025, 5.663,12.749, 12.718,12.749
|
80 |
-
C 450.447,348.795, 456.141,343.071, 456.141,336.046z" data-tags="lawyer" />
|
81 |
-
<glyph unicode="" d="M 145.787,75.52l 312.146,0 L 457.933,342.589 L 145.787,342.589 L 145.787,75.52 z M 304.394,316.006l 112.538-98.284l-28.355,0 l0-117.924 l-65.905,0 L 322.673,183.040 l-41.626,0 l0-83.241 L 218.624,99.799 L 218.624,217.723
|
82 |
-
l-29.082,0 L 304.394,316.006zM 111.104,408.484L 111.104,469.576L 41.738,469.576L 41.738-32L 111.104-32L 111.104,377.262L 471.818,377.262L 471.818,408.484 z" data-tags="real_estate_agency" />
|
83 |
-
<glyph unicode="" d="M 217.201,418.56C 87.849,418.56, 10.24,314.798, 10.24,262.912c0-51.886, 25.866-90.798, 77.609-90.798
|
84 |
-
c 51.743,0, 77.619-12.964, 77.619-51.876c0-51.876, 38.799-90.788, 90.542-90.788c 168.161,0, 245.76,90.788, 245.76,181.576
|
85 |
-
C 501.76,366.674, 372.388,418.56, 217.201,418.56L 217.201,418.56z M 184.863,366.674c 17.859,0, 32.338-14.52, 32.338-32.42
|
86 |
-
c0-17.92-14.479-32.43-32.338-32.43s-32.338,14.52-32.338,32.43C 152.525,352.154, 167.004,366.674, 184.863,366.674z M 288.328,366.674
|
87 |
-
c 17.859,0, 32.338-14.52, 32.338-32.42c0-17.92-14.479-32.43-32.338-32.43c-17.848,0-32.328,14.52-32.328,32.43
|
88 |
-
C 256,352.154, 270.479,366.674, 288.328,366.674z M 391.813,314.798c 17.869,0, 32.348-14.51, 32.348-32.43c0-17.92-14.479-32.42-32.348-32.42
|
89 |
-
c-17.859,0-32.328,14.51-32.328,32.42C 359.475,300.278, 373.955,314.798, 391.813,314.798z M 94.321,288.85c 17.859,0, 32.328-14.51, 32.328-32.41
|
90 |
-
c0-17.92-14.479-32.43-32.328-32.43s-32.338,14.52-32.338,32.43C 61.983,274.34, 76.462,288.85, 94.321,288.85z M 256,159.15
|
91 |
-
c 21.432,0, 38.799-17.408, 38.799-38.922c0-21.484-17.367-38.902-38.799-38.902s-38.799,17.418-38.799,38.902
|
92 |
-
C 217.201,141.742, 234.568,159.15, 256,159.15L 256,159.15z" data-tags="art_gallery" />
|
93 |
-
<glyph unicode="" d="M 256,418.56c-12.933,0-18.78-6.308-22.63-13.169L 72.499,102.574L 37.734,102.574 c-15.176,0-27.494-11.725-27.494-26.327
|
94 |
-
c0-14.572, 12.319-26.317, 27.494-26.317l 50.125,0 l 336.302,0 l 50.125,0 c 15.165,0, 27.494,11.745, 27.494,26.317c0,14.612-12.319,26.327-27.494,26.327L 439.501,102.574
|
95 |
-
l-160.86,302.828C 274.78,412.252, 268.943,418.56, 256,418.56L 256,418.56z M 256,286.904l 90.542-184.33L 165.458,102.574 L 256,286.904z" data-tags="campground" />
|
96 |
-
<glyph unicode="" d="M 387.41,328.325c 3.41-53.299-22.446-90.665-22.446-90.665c 3.359,41.052-13.281,97.792-13.281,97.792c-14.213,2.785-36.925-0.205-36.925-0.205
|
97 |
-
c 3.277-44.278-19.241-82.944-35.871-97.178c 8.223,49.101-4.864,86.252-4.864,86.252c-22.497,5.673-54.743,2.202-54.743,2.202
|
98 |
-
c 7.004-52.234-21.811-90.665-21.811-90.665c 4.772,36.413-14.684,83.118-14.684,83.118c-16.517,1.075-42.834-4.301-42.834-4.301
|
99 |
-
c 13.875-24.791, 2.796-79.278, 2.796-79.278c-7.567,44.554-33.004,70.83-33.004,70.83C-36.116,244.111, 2.304,158.536, 73.626,133.048
|
100 |
-
c 67.287-24.003, 284.099-35.83, 381.102,6.257C 551.741,181.412, 483.43,299.735, 387.41,328.325z" data-tags="bakery" />
|
101 |
-
<glyph unicode="" d="M 40.96,469.76l 57.344-462.643c 1.792-14.428, 14.326-28.877, 28.682-28.877l 258.028,0 c 14.346,0, 26.9,14.449, 28.662,28.877L 471.040,469.76
|
102 |
-
L 40.96,469.76 z M 105.472,411.945l 301.046,0 l-13.435-115.661L 118.917,296.284 L 105.472,411.945z" data-tags="bar" />
|
103 |
-
<glyph unicode="" d="M 408.801,192.389c 4.741-2.324, 10.516-2.284, 12.831,0.113c 2.345,2.386, 0.317,6.154-4.485,8.366l-83.743,38.789
|
104 |
-
c-4.803,2.232-12.872,2.796-17.91,1.28l-29.952-8.98c-5.089-1.526-11.725-2.775-14.735-2.775c-3.011,0-5.519,4.239-5.519,9.441l0,91.331
|
105 |
-
c0,5.192, 4.332,9.452, 9.636,9.452l 217.18,0 c 5.325,0, 9.646,4.25, 9.646,9.452L 501.75,379.525 c0,5.202-4.168,10.67-9.236,12.155L 263.803,458.414
|
106 |
-
c-5.069,1.485-13.384,1.485-18.452-0.020L 19.446,391.69C 14.387,390.205, 10.24,384.717, 10.24,379.525l0-30.659 c0-5.202, 4.332-9.452, 9.626-9.452l 214.323,0
|
107 |
-
c 5.304,0, 9.636-4.26, 9.636-9.452l0-91.382 c0-5.192-4.332-9.452-9.636-9.462l-3.891,0 c-5.304-0.010-12.739,2.959-16.548,6.584l-51.671,49.347
|
108 |
-
c-3.82,3.635-11.254,6.595-16.558,6.595l-23.9,0 c-5.284,0-11.663,3.123-14.152,6.922c-2.468,3.809-8.223,6.902-12.78,6.902
|
109 |
-
s-5.96-3.564-3.092-7.946l 0.451-0.686c 2.867-4.372, 2.877-11.571, 0.061-15.964l-25.846-40.182c-2.806-4.413-1.935-10.865, 2.007-14.356
|
110 |
-
l 1.833-1.649c 3.942-3.482, 10.967-4.383, 15.667-1.956l 27.689,14.408c 4.71,2.437, 10.865,0.85, 13.722-3.523l 30.382-46.51
|
111 |
-
c 2.877-4.383, 1.915-10.732-2.13-14.090l-13.896-11.602c-4.045-3.359-6.4-10.25-5.233-15.34l 18.012-78.356
|
112 |
-
c 1.167-5.089, 6.339-8.192, 11.479-6.912l 12.524,3.092c 5.151,1.29, 8.387,6.472, 7.26,11.551l-12.196,52.992
|
113 |
-
c-1.167,5.069, 2.058,10.373, 7.188,11.735l 30.792,8.253c 5.1,1.372, 13.629,2.468, 18.934,2.468l 3.891,0 c 5.304,0, 9.636-4.25, 9.636-9.421l0-93.972
|
114 |
-
c0-5.181-4.332-9.431-9.636-9.431L 19.866,38.072 c-5.294,0-9.626-4.239-9.626-9.462l0-30.638 C 10.24-7.281, 14.572-11.52, 19.866-11.52l 468.255,0
|
115 |
-
c 5.304,0, 9.626,4.239, 9.626,9.472l0,30.638 c0,5.222-4.332,9.462-9.626,9.462L 274.934,38.052 c-5.315,0-9.636,4.25-9.636,9.431l0,93.972
|
116 |
-
c0,5.171, 4.332,9.421, 9.636,9.421l 11.1,0 c 5.304,0, 13.773-1.096, 18.924-2.468l 30.792-8.253c 5.14-1.362, 8.376-6.656, 7.188-11.735
|
117 |
-
l-12.165-52.992c-1.188-5.079, 2.068-10.26, 7.219-11.551l 12.544-3.092c 5.151-1.28, 10.281,1.823, 11.469,6.912l 18.033,78.356
|
118 |
-
c 1.198,5.089-1.075,11.878-4.997,15.176c-3.912,3.256-7.363,10.199-7.67,15.38l-1.567,27.72c-0.317,5.181, 3.338,7.526, 8.090,5.192
|
119 |
-
L 408.801,192.389z" data-tags="amusement_park" />
|
120 |
-
<glyph unicode="" d="M 10.24,414.659c0,0, 23.112-40.96, 23.112-67.133s-22.979-65.075-22.979-65.075c0-6.083, 4.106-8.151, 8.97-4.669l 75.602,54.231
|
121 |
-
c 15.268-11.274, 45.179-26.235, 66.898-38.523l0-43.889 l 48.486,27.607c 15.565-3.533, 31.355-5.775, 48.261-5.775c 101.878,0, 184.586,66.099, 184.586,77.117
|
122 |
-
c0,9.574-62.198,60.754-145.418,73.964L 205.23,469.76l0-51.067 c-43.377-12.022-87.747-36.956-110.275-53.596l-75.878,54.231C 14.223,422.82, 10.24,420.741, 10.24,414.659
|
123 |
-
M 360.97,335.135c-11.991,0-21.729,9.861-21.729,22.047s 9.738,22.036, 21.729,22.036c 12.012,0, 21.688-9.851, 21.688-22.036
|
124 |
-
S 372.982,335.135, 360.97,335.135 M 501.76,143.309c0,6.093-3.983,8.172-8.837,4.669l-75.51-54.252c-22.528,16.64-66.447,41.574-109.885,53.586L 307.528,198.4
|
125 |
-
l-92.897-47.237c-83.251-13.199-145.623-64.399-145.623-73.974c0-11.018, 82.627-77.148, 184.494-77.148c 16.896,0, 33.065,2.294, 48.609,5.837L 350.956-21.76
|
126 |
-
l0,43.878 c 21.688,12.319, 51.251,27.259, 66.447,38.574l 75.407-54.241c 4.905-3.533, 8.899-1.423, 8.899,4.618c0,0-23.020,38.902-23.020,65.096
|
127 |
-
C 478.7,102.359, 501.76,143.309, 501.76,143.309 M 166.042,77.896c-12.001,0-21.699,9.841-21.699,22.047c0,12.165, 9.697,21.996, 21.699,21.996
|
128 |
-
c 11.981,0, 21.709-9.841, 21.709-21.996C 187.75,87.736, 178.033,77.896, 166.042,77.896" data-tags="aquarium" />
|
129 |
-
<glyph unicode="" d="M 492.022,108.186C 497.377,106.455, 501.76,109.64, 501.76,115.272l0,35.779 c0,5.632-3.963,12.595-8.796,15.483L 305.756,278.098
|
130 |
-
C 300.923,280.975, 296.96,287.949, 296.96,293.571L 296.96,418.56 c0,5.632-1.72,14.51-3.83,19.743c0,0-11.172,27.73-30.72,30.822C 260.321,469.494, 258.202,469.76, 256.072,469.76
|
131 |
-
C 256.051,469.76, 256.020,469.76, 256,469.76c-0.010,0-0.020,0-0.031,0c-2.468,0.020-4.905-0.287-7.301-0.737C 247.91,468.89, 247.194,468.705, 246.456,468.531
|
132 |
-
c-1.147-0.297-2.263-0.635-3.359-1.044c-16.261-5.427-24.637-29.030-24.637-29.030C 216.576,433.142, 215.040,424.192, 215.040,418.56l0-124.989
|
133 |
-
c0-5.632-3.963-12.595-8.796-15.483L 19.036,166.533C 14.203,163.645, 10.24,156.682, 10.24,151.050l0-35.779 c0-5.632, 4.383-8.817, 9.738-7.076l 185.324,60.16
|
134 |
-
C 210.657,170.086, 215.040,166.902, 215.040,161.27l0-97.618 c0-5.632-3.686-13.015-8.192-16.394l-24.576-18.452c-4.506-3.379-8.192-10.762-8.192-16.394L 174.080-11.52
|
135 |
-
c0-5.632, 4.434-8.97, 9.841-7.414l 62.208,17.869c 5.407,1.556, 14.275,1.556, 19.681,0l 62.269-17.869C 333.486-20.49, 337.92-17.152, 337.92-11.52l0,23.941
|
136 |
-
c0,5.632-3.686,13.015-8.192,16.394l-24.576,18.452c-4.495,3.379-8.192,10.762-8.192,16.394l0,97.618 c0,5.632, 4.383,8.817, 9.738,7.076L 492.022,108.186z" data-tags="airport" />
|
137 |
-
<glyph unicode="" d="M 355.144,215.798c-14.725,11.612-36.823,20.89-66.294,27.822L 266.24,248.955l0,96.563 c 1.004-0.44, 2.099-0.768, 3.062-1.249
|
138 |
-
C 288.492,334.551, 298.803,316.16, 300.216,295.68l 76.964,0 c-1.403,40.96-16.538,71.25-45.404,92.652C 312.596,402.555, 290.724,411.699, 266.24,416.307L 266.24,469.76 l-71.68,0 l0-51.814
|
139 |
-
c-33.147-4.096-59.433-14.766-78.735-32.113c-25.272-22.712-37.898-51.22-37.898-85.545c0-37.612, 12.913-65.26, 38.738-82.944
|
140 |
-
c 14.459-10.025, 40.52-19.333, 77.896-27.955l0-104.612 c-13.629,3.758-24.31,9.943-31.836,18.883C 155.464,112.343, 150.6,121.6, 148.122,142.080L 71.68,142.080
|
141 |
-
c0-40.96, 14.449-70.349, 43.356-93.143c 20.869-16.445, 47.432-26.44, 79.524-30.771L 194.56-21.76 l 71.68,0 l0,39.25 c 34.13,4.086, 61.686,14.981, 82.555,32.809
|
142 |
-
c 27.064,23.142, 40.602,52.224, 40.602,87.235C 389.396,171.684, 377.979,197.765, 355.144,215.798z M 170.68,275.364c-12.442,6.758-18.657,17.019-18.657,30.72
|
143 |
-
c0,14.909, 6.308,26.593, 18.924,34.908c 6.656,4.393, 14.582,7.588, 23.613,9.697l0-84.214 C 183.45,269.711, 175.432,272.681, 170.68,275.364z
|
144 |
-
M 277.944,86.876c-3.553-1.229-7.516-2.243-11.704-3.133L 266.24,172.8 c 12.339-3.656, 22.077-7.639, 29.164-11.919c 11.182-6.932, 16.783-16.794, 16.783-29.44
|
145 |
-
C 312.177,109.773, 300.759,94.853, 277.944,86.876z" data-tags="bank" />
|
146 |
-
<glyph unicode="" d="M 419.84,439.040L 226.068,439.040 c-15.391,20.48-40.612,38.42-69.14,38.42c-46.868,0-84.859-36.618-84.859-83.487c0-46.879, 37.99-82.299, 84.859-82.299
|
147 |
-
c 35.645,0, 66.14,24.965, 78.725,55.685l 28.211,0 l 20.449,20.46L 304.753,367.36l 12.749,0 l 20.439,20.46L 358.39,367.36l 12.739,0 l 20.449,20.46L 412.027,367.36L 419.84,367.36 l0-2.877
|
148 |
-
l-1.782-0.42l 40.346,39.547L 419.84,439.040z M 129.464,371.354c-13.558,0-24.566,11.008-24.566,24.586s 11.008,24.576, 24.566,24.576
|
149 |
-
c 13.578,0, 24.586-10.998, 24.586-24.576S 143.043,371.354, 129.464,371.354zM 440.32,172.8l-5.663,0 l-62.915,113.92C 369.029,291.645, 362.189,295.68, 356.557,295.68L 165.683,295.68 c-5.632,0-12.472-4.035-15.186-8.96L 87.572,172.8L 81.92,172.8
|
150 |
-
c-11.264,0-20.48-9.216-20.48-20.48l0-102.4 c0-11.264, 9.216-20.48, 20.48-20.48l 20.48,0 l0-30.72 c0-16.896, 13.824-30.72, 30.72-30.72l 10.24,0 c 16.896,0, 30.72,13.824, 30.72,30.72l0,30.72 l 174.080,0 l0-30.72 c0-16.896, 13.824-30.72, 30.72-30.72l 10.24,0 c 16.896,0, 30.72,13.824, 30.72,30.72l0,30.72
|
151 |
-
l 20.48,0 c 11.264,0, 20.48,9.216, 20.48,20.48L 460.8,152.32 C 460.8,163.584, 451.584,172.8, 440.32,172.8z M 117.76,90.88C 103.619,90.88, 92.16,102.339, 92.16,116.48s 11.459,25.6, 25.6,25.6s 25.6-11.459, 25.6-25.6
|
152 |
-
S 131.901,90.88, 117.76,90.88z M 138.24,172.8l 41.503,82.995C 182.262,260.844, 188.928,264.96, 194.56,264.96l 133.12,0 c 5.632,0, 12.298-4.116, 14.817-9.165L 384,172.8L 138.24,172.8 z M 404.48,90.88
|
153 |
-
c-14.141,0-25.6,11.459-25.6,25.6s 11.459,25.6, 25.6,25.6s 25.6-11.459, 25.6-25.6S 418.621,90.88, 404.48,90.88z" data-tags="car_rental" />
|
154 |
-
<glyph unicode="" d="M 489.298,358.318c-7.045,5.55-25.938,10.004-40.079,13.322L 430.080,374.2L 430.080,420.465 c0-0.205, 9.339,0.379, 9.8,0.154
|
155 |
-
C 449.065,415.959, 462.295,408.32, 462.981,398.080l 36.905,0 c-0.686,20.48-16.241,33.403-30.085,43.663C 460.616,448.553, 450.56,452.188, 430.080,454.39L 430.080,480 l-20.48,0 l0-24.822
|
156 |
-
c-20.48-1.966-27.095-7.066-36.342-15.391C 361.165,428.902, 355.779,415.242, 355.779,398.797c0-18.022, 5.151-31.263, 17.531-39.741
|
157 |
-
C 380.232,354.253, 389.12,349.788, 409.6,345.651l0-50.125 c-10.24,1.812-10.26,1.352-13.875,5.642C 392.243,305.326, 391.291,316.16, 390.103,316.16L 353.485,316.16
|
158 |
-
c0-20.48, 5.54-30.29, 19.405-41.216C 382.884,267.069, 389.12,265.677, 409.6,263.608L 409.6,244.48 l 20.48,0 l0,18.801 c 20.48,1.976, 37.878,7.188, 47.882,15.729
|
159 |
-
c 12.984,11.090, 23.603,25.027, 23.603,41.8C 501.555,337.172, 500.244,349.665, 489.298,358.318z M 399.544,386.847
|
160 |
-
c-5.96,3.246-8.253,8.161-8.253,14.725c0,7.148, 1.976,12.739, 8.018,16.732C 402.493,420.403, 399.36,421.929, 409.6,422.943l0-40.346
|
161 |
-
C 399.36,384.154, 401.797,385.567, 399.544,386.847z M 444.017,296.53C 442.296,295.936, 430.080,295.465, 430.080,295.045l0,42.67 c 20.48-1.761, 18.903-3.656, 22.303-5.714
|
162 |
-
c 5.335-3.318, 8.018-8.049, 8.018-14.1C 460.401,307.497, 454.922,300.36, 444.017,296.53zM 394.445,172.8l-5.663,0 l-62.915,113.92C 323.154,291.645, 316.314,295.68, 310.682,295.68L 119.798,295.68 c-5.632,0-12.472-4.035-15.186-8.96L 41.697,172.8L 36.045,172.8
|
163 |
-
C 24.771,172.8, 10.24,163.584, 10.24,152.32l0-102.4 c0-11.264, 14.531-20.48, 25.805-20.48L 51.2,29.44 l0-30.72 c0-16.896, 19.149-30.72, 36.045-30.72l 10.24,0 c 16.896,0, 25.395,13.824, 25.395,30.72l0,30.72 l 174.080,0 l0-30.72 c0-16.896, 19.139-30.72, 36.045-30.72
|
164 |
-
l 10.24,0 c 16.896,0, 25.395,13.824, 25.395,30.72l0,30.72 l 25.805,0 c 11.264,0, 15.155,9.216, 15.155,20.48L 409.6,152.32 C 409.6,163.584, 405.699,172.8, 394.445,172.8z M 71.885,90.88c-14.141,0-25.6,11.459-25.6,25.6
|
165 |
-
S 57.743,142.080, 71.885,142.080s 25.6-11.459, 25.6-25.6S 86.016,90.88, 71.885,90.88z M 92.365,172.8l 41.503,82.995C 136.376,260.844, 143.053,264.96, 148.685,264.96l 133.12,0
|
166 |
-
c 5.632,0, 12.298-4.116, 14.817-9.165L 338.125,172.8L 92.365,172.8 z M 358.605,90.88c-14.141,0-25.6,11.459-25.6,25.6s 11.459,25.6, 25.6,25.6s 25.6-11.459, 25.6-25.6
|
167 |
-
S 372.736,90.88, 358.605,90.88z" data-tags="car_dealer" />
|
168 |
-
<glyph unicode="" d="M 378.88,469.76c-5.632,0-10.24-4.608-10.24-10.24l0-143.36 c0-5.632-4.608-10.24-10.24-10.24L 153.6,305.92 c-5.632,0-10.24,4.608-10.24,10.24L 143.36,459.52 c0,5.632-4.608,10.24-10.24,10.24L 40.96,469.76 C 35.328,469.76, 30.72,465.152, 30.72,459.52l0-471.040
|
169 |
-
c0-5.632, 4.608-10.24, 10.24-10.24l 92.16,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 143.36,152.32 c0,5.632, 4.608,10.24, 10.24,10.24l 204.8,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-163.84 c0-5.632, 4.608-10.24, 10.24-10.24l 92.16,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 481.28,459.52
|
170 |
-
c0,5.632-4.608,10.24-10.24,10.24L 378.88,469.76 z" data-tags="hospital" />
|
171 |
-
<glyph unicode="" d="M 432.466,220.826c 3.553,4.372, 10.834,9.4, 16.169,11.162l 43.971,17.951C 497.644,252.467, 501.76,259.144, 501.76,264.765L 501.76,390.195
|
172 |
-
c0,5.632-4.311,11.878-9.574,13.875c0,0-91.986,34.97-153.61,34.97c-57.344,0-136.622-30.239-136.622-30.239
|
173 |
-
c-5.263-2.007-14.141-4.209-19.732-4.905L 20.408,386.509C 14.817,385.823, 10.24,380.652, 10.24,375.020l0-85.135 c0-5.632, 4.526-11.090, 10.066-12.124l 161.741-26.102
|
174 |
-
c 5.55-0.922, 14.387-3.379, 19.62-5.458l 110.766-28.334c 5.56-0.84, 11.633-5.878, 13.466-11.213l 65.116-188.017
|
175 |
-
c 1.843-5.335, 7.721-8.212, 13.056-6.42l 68.844,23.153c 5.335,1.792, 8.202,7.608, 6.359,12.943l-45.199,130.386
|
176 |
-
c-1.843,5.335-3.4,9.994-3.471,10.373c0,0,0,0-0.082,0.389C 425.103,211.722, 432.466,220.826, 432.466,220.826z M 353.884,288.502
|
177 |
-
c-25.702,0-46.459,20.48-46.459,45.722c0,25.252, 20.756,45.722, 46.459,45.722c 25.62,0, 46.438-20.48, 46.438-45.722
|
178 |
-
C 400.323,308.982, 379.505,288.502, 353.884,288.502z" data-tags="hair_care" />
|
179 |
-
<glyph unicode="" d="M 183.931,20.49c 3.83-4.127, 3.604-10.66-0.512-14.5l-22.241-20.797c-4.116-3.84-10.619-3.615-14.449,0.522L 17.203,125.307
|
180 |
-
c-3.83,4.127-3.594,10.65, 0.522,14.5l 22.272,20.767c 4.116,3.85, 10.619,3.615, 14.449-0.522L 183.931,20.49zM 349.204,283.146c 3.83-4.127, 3.594-10.66-0.522-14.5L 208.701,137.882c-4.116-3.84-10.619-3.615-14.449,0.522l-33.413,36.055
|
181 |
-
c-3.83,4.127-3.594,10.66, 0.522,14.5l 139.95,130.765c 4.106,3.84, 10.609,3.615, 14.438-0.522L 349.204,283.146zM 231.557,65.004c 3.83-4.127, 3.594-10.65-0.522-14.5l-22.272-20.787c-4.116-3.85-10.619-3.615-14.449,0.522L 64.86,169.83
|
182 |
-
c-3.83,4.127-3.604,10.66, 0.512,14.5l 22.231,20.777c 4.116,3.84, 10.619,3.615, 14.449-0.522L 231.557,65.004zM 447.242,278.139c 3.83-4.127, 3.594-10.66-0.532-14.5l-22.262-20.787c-4.116-3.84-10.619-3.615-14.459,0.512L 280.515,382.925
|
183 |
-
c-3.84,4.127-3.604,10.65, 0.512,14.5l 22.323,20.838c 4.106,3.84, 10.609,3.615, 14.438-0.522L 447.242,278.139zM 494.797,322.58c 3.83-4.127, 3.594-10.66-0.522-14.51l-22.221-20.777c-4.106-3.85-10.609-3.615-14.438,0.512L 328.161,427.428
|
184 |
-
c-3.83,4.127-3.604,10.66, 0.512,14.51l 22.241,20.818c 4.106,3.85, 10.598,3.625, 14.428-0.512L 494.797,322.58z" data-tags="gym" />
|
185 |
-
<glyph unicode="" d="M 409.6,49.92A40.96,40.96 180 1 1 491.52,49.920000000000016A40.96,40.96 180 1 1 409.6,49.920000000000016zM 112.64,49.92A40.96,40.96 180 1 1 194.56,49.920000000000016A40.96,40.96 180 1 1 112.64,49.920000000000016zM 481.28,142.080L 161.495,142.080 l 6.83,11.080c 2.929,4.751, 3.789,10.496, 2.386,15.903l-6.666,25.661l 296.786,15.421C 472.084,210.719, 481.28,220.416, 481.28,231.68
|
186 |
-
L 481.28,367.36 c0,11.264-9.216,20.48-20.48,20.48L 113.859,387.84 l-4.004,15.391C 107.51,412.262, 99.359,418.56, 90.030,418.56L 20.48,418.56 C 9.175,418.56,0,409.385,0,398.080s 9.175-20.48, 20.48-20.48l 53.719,0 l 54.682-210.381
|
187 |
-
l-21.504-34.867c-3.891-6.318-4.065-14.254-0.44-20.726C 110.541,105.144, 117.381,101.12, 124.805,101.12L 481.28,101.12 c 11.305,0, 20.48,9.175, 20.48,20.48S 492.585,142.080, 481.28,142.080z" data-tags="grocery_or_supermarket" />
|
188 |
-
<glyph unicode="" d="M 363.356,326.052c-2.54,0-4.956,1.71-4.956,4.209l0,63.283 C 358.4,396.042, 357.028,398.080, 354.478,398.080L 157.512,398.080 C 154.962,398.080, 153.6,396.042, 153.6,393.544
|
189 |
-
l0-63.283 C 153.6,327.762, 150.845,326.4, 148.285,326.4L 14.838,326.4 C 12.319,326.4, 10.24,323.666, 10.24,321.198l0-70.349 C 10.24,248.371, 12.319,244.48, 14.838,244.48l 214.897,0
|
190 |
-
C 232.284,244.48, 235.52,248.371, 235.52,250.849l0,15.002 C 235.52,268.349, 236.462,275.2, 239.002,275.2l 34.007,0 C 275.548,275.2, 276.48,268.349, 276.48,265.851l0-15.002
|
191 |
-
C 276.48,248.371, 279.716,244.48, 282.245,244.48l 214.886,0 C 499.692,244.48, 501.76,248.371, 501.76,250.849l0,70.349 C 501.76,323.676, 499.692,326.4, 497.142,326.4L 363.704,326.4 L 363.356,326.052z
|
192 |
-
M 185.272,326.4C 182.733,326.4, 184.32,327.762, 184.32,330.25l0,35.973 C 184.32,368.732, 182.733,367.36, 185.272,367.36l 141.455,0 C 329.267,367.36, 327.68,368.732, 327.68,366.223l0-35.973
|
193 |
-
C 327.68,327.762, 329.267,326.4, 326.728,326.4L 185.272,326.4 zM 277.043,175.749c0-2.478-1.495-2.949-4.035-2.949L 239.002,172.8 C 236.462,172.8, 235.52,171.704, 235.52,174.182l0,50.565
|
194 |
-
C 235.52,227.226, 232.284,234.24, 229.745,234.24L 14.838,234.24 C 12.319,234.24, 10.24,227.226, 10.24,224.748l0-149.801 C 10.24,72.458, 12.319,70.4, 14.838,70.4l 482.304,0
|
195 |
-
C 499.692,70.4, 501.76,72.458, 501.76,74.936L 501.76,224.748 C 501.76,227.226, 499.692,234.24, 497.142,234.24L 282.245,234.24 C 279.716,234.24, 276.48,227.226, 276.48,224.748l0-50.565 L 277.043,175.749z
|
196 |
-
" data-tags="general_contractor" />
|
197 |
-
<glyph unicode="" d="M 402.964,305.92L 106.496,305.92 C 53.555,305.92, 10.24,268.646, 10.24,218.88c0-49.766, 43.315-87.040, 96.256-87.040l 296.468,0 c 52.92,0, 96.236,37.284, 96.236,87.040
|
198 |
-
C 499.2,268.646, 455.885,305.92, 402.964,305.92z M 402.995,152.32L 256,152.32 L 256,285.44 l 146.995,0 c 39.035,0, 71.004-29.85, 71.004-66.56S 442.040,152.32, 402.995,152.32z" data-tags="pharmacy" />
|
199 |
-
<glyph unicode="" d="M 317.44,223.98c-33.884,0-61.399-27.494-61.399-61.42c0-33.956, 27.525-61.44, 61.399-61.44c 33.894,0, 61.42,27.484, 61.42,61.44
|
200 |
-
C 378.86,196.475, 351.334,223.98, 317.44,223.98zM 440.33,346.911L 389.734,448.973C 385.649,461.076, 374.19,469.76, 360.663,469.76l-84.388,0 c-13.763,0-25.242-8.929-29.225-21.248L 194.632,346.88L 71.67,346.88
|
201 |
-
C 37.796,346.88, 10.24,319.355, 10.24,285.43L 10.24-21.76 l 491.52,0 L 501.76,285.43 C 501.76,319.355, 474.225,346.911, 440.33,346.911z M 102.4,223.98c-16.998,0-30.73,13.742-30.73,30.7
|
202 |
-
c0,17.019, 13.742,30.751, 30.73,30.751s 30.71-13.732, 30.71-30.751C 133.11,237.722, 119.398,223.98, 102.4,223.98z M 317.44,39.619
|
203 |
-
c-67.84,0-122.89,55.060-122.89,122.941c0,67.85, 55.040,122.87, 122.89,122.87c 67.85,0, 122.89-55.009, 122.89-122.87
|
204 |
-
C 440.33,94.679, 385.29,39.619, 317.44,39.619z" data-tags="point_of_interest" />
|
205 |
-
<glyph unicode="" d="M 126.29,254.72L 153.6,254.72 l0-163.84 l 40.96,0 L 194.56,234.24 l 40.96,0 l0-143.36 l 40.96,0 L 276.48,234.24 l 40.96,0 l0-143.36 l 40.96,0 L 358.4,254.72 l 27.3,0 C 393.236,254.72, 399.36,262.257, 399.36,269.046c0,4.106-2.263,8.735-5.683,10.967
|
206 |
-
l 0.020,0.532l-0.215,0.379c-0.123,0.072, 1.475,0.266, 1.372,0.338L 266.24,347.505l0,19.374 c 20.48-10.844, 40.458,7.834, 71.68-3.4L 337.92,406.272
|
207 |
-
c-31.242,11.223-51.2-7.444-71.68,3.4L 266.24,412.416 C 266.24,415.805, 259.779,418.56, 256,418.56s-10.24-2.755-10.24-6.144l0-64.911 l-128.604-66.109
|
208 |
-
c-0.123-0.061, 2.898-0.133, 2.775-0.215L 122.88,281.068l0-0.020 c-10.24-2.232-7.946-7.885-7.946-11.991C 114.924,262.257, 118.753,254.72, 126.29,254.72zM 143.36,80.64L 112.64,49.92L 399.36,49.92L 368.64,80.64 zM 368.64,244.48l0-153.6 l 9.062,0 l 4.004-5.663l 27.3-25.59L 418.662,49.92L 501.76,49.92 L 501.76,244.48 L 368.64,244.48 z M 430.080,121.6l-30.72,0 l0,30.72 l 30.72,0 L 430.080,121.6 z M 430.080,183.040l-30.72,0 l0,30.72 l 30.72,0 L 430.080,183.040 z M 471.040,121.6l-20.48,0 l0,30.72 l 20.48,0 L 471.040,121.6 z
|
209 |
-
M 471.040,183.040l-20.48,0 l0,30.72 l 20.48,0 L 471.040,183.040 zM 134.287,90.88L 143.36,90.88 L 143.36,244.48 L 10.24,244.48 l0-194.56 l 83.087,0 l 9.646,8.684l 27.31,26.624L 134.287,90.88z M 61.44,121.6L 40.96,121.6 l0,30.72 l 20.48,0 L 61.44,121.6 L 61.44,121.6z M 61.44,183.040L 40.96,183.040 l0,30.72 l 20.48,0 L 61.44,183.040 L 61.44,183.040z M 112.64,121.6L 81.92,121.6 l0,30.72 l 30.72,0
|
210 |
-
L 112.64,121.6 z M 112.64,183.040L 81.92,183.040 l0,30.72 l 30.72,0 L 112.64,183.040 z" data-tags="political" />
|
211 |
-
<glyph unicode="" d="M 296.95,433.736C 222.218,433.736, 163.84,374.559, 163.84,301.548l0-211.005 L 163.84-11.52 l 51.2,0 L 215.040,90.88 l 163.84,0 l0-102.4 l 51.2,0 l0,102.062 L 430.080,301.548 C 430.080,374.559, 371.712,433.736, 296.95,433.736z
|
212 |
-
M 40.96,459.52l 75.407-122.88l 7.864,0 C 129.004,387.84, 163.84,429.865, 215.040,448.84L 215.040,459.52 L 40.96,459.52 z" data-tags="post_box" />
|
213 |
-
<glyph unicode="" d="M 501.76,305.92c0,5.632-4.608,10.24-10.24,10.24L 358.4,316.16 c-5.632,0-10.24,4.608-10.24,10.24L 348.16,459.52 c0,5.632-4.608,10.24-10.24,10.24L 174.080,469.76 c-5.632,0-10.24-4.608-10.24-10.24l0-133.12 c0-5.632-4.608-10.24-10.24-10.24L 20.48,316.16
|
214 |
-
c-5.632,0-10.24-4.608-10.24-10.24l0-163.84 c0-5.632, 4.608-10.24, 10.24-10.24l 133.12,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-133.12 c0-5.632, 4.608-10.24, 10.24-10.24l 163.84,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 348.16,121.6 c0,5.632, 4.608,10.24, 10.24,10.24l 133.12,0
|
215 |
-
c 5.632,0, 10.24,4.608, 10.24,10.24L 501.76,305.92 z" data-tags="health" />
|
216 |
-
<glyph unicode="" d="M 30.116,398.080c-30.116,0-15.053-7.977,0-20.214L 256,205.947l 225.884,171.387c 15.073,12.237, 30.116,20.746,0,20.746
|
217 |
-
L 240.937,398.080 L 30.116,398.080 z M0,357.673l0-253.215 c0-14.899, 15.237-34.058, 27.29-34.058l 457.421,0 c 12.063,0, 27.29,19.159, 27.29,34.058l0,253.215 l-256-195.328
|
218 |
-
L0,357.673z" data-tags="post_office" />
|
219 |
-
<glyph unicode="" d="M 112.64,60.16c0-5.632, 4.608-10.24, 10.24-10.24l 348.16,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 481.28,357.12 c0,5.632-4.608,10.24-10.24,10.24L 122.88,367.36 c-5.632,0-10.24-4.608-10.24-10.24L 112.64,60.16 z M 289.751,319.939
|
220 |
-
c 4.28,3.666, 11.254,3.625, 15.493-0.072l 113.787-99.369C 423.27,216.791, 422.134,213.76, 416.502,213.76L 409.6,213.76 c-5.632,0-10.24-4.608-10.24-10.24l0-112.64
|
221 |
-
c0-5.632-4.608-10.24-10.24-10.24l-51.2,0 c-5.632,0-10.24,4.608-10.24,10.24l0,81.92 c0,5.632-4.608,10.24-10.24,10.24l-40.96,0 c-5.632,0-10.24-4.608-10.24-10.24l0-81.92 c0-5.632-4.608-10.24-10.24-10.24l-51.2,0 c-5.632,0-10.24,4.608-10.24,10.24
|
222 |
-
L 194.56,203.52 c0,5.632-4.608,10.24-10.24,10.24l-8.417,0 c-5.632,0-6.738,2.99-2.458,6.656L 289.751,319.939zM 102.4,418.56C 96.768,418.56, 92.16,423.168, 92.16,428.8L 92.16,459.52 c0,5.632-4.608,10.24-10.24,10.24L 40.96,469.76 C 35.328,469.76, 30.72,465.152, 30.72,459.52l0-471.040 c0-5.632, 4.608-10.24, 10.24-10.24l 40.96,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 92.16,377.6
|
223 |
-
c0,5.632, 4.608,10.24, 10.24,10.24l 368.64,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 481.28,408.32 c0,5.632-4.608,10.24-10.24,10.24L 102.4,418.56 z" data-tags="real_estate_agency copy" />
|
224 |
-
<glyph unicode="" d="M 281.692,381.911c 6.195-5.673, 12.063-11.028, 16.466-17.756l 2.447-3.738l 4.045,1.925c 11.244,5.376, 18.913,13.978, 26.327,22.292
|
225 |
-
c 5.591,6.267, 10.875,12.196, 17.5,16.65l 4.116,2.775l-2.652,4.209c-11.54,18.309-26.593,33.546-44.728,45.302l-3.799,2.468l-2.908-3.482
|
226 |
-
c-11.407-13.67-24.033-26.45-37.519-37.98l-2.959-2.54l 1.659-3.533C 265.011,397.169, 273.49,389.417, 281.692,381.911zM 347.546,304.425c 38.492,0, 70.011,15.729, 88.75,44.298l 2.232,3.4l-2.796,2.949c-3.256,3.42-6.369,6.994-9.482,10.568
|
227 |
-
c-9.288,10.66-18.903,21.678-32.44,28.989l-4.721,2.55L 386.765,392.325c-15.831-32.973-46.479-39.895-69.396-39.895
|
228 |
-
c-40.172,0-88.453,22.415-109.916,51.046l-16.896,22.538l 7.895-27.044C 213.125,348.6, 282.808,304.425, 347.546,304.425zM 214.712,216.023c 15.995,30.433, 16.66,66.068, 1.69,98.376c-14.766,31.887-42.097,54.364-73.093,60.16
|
229 |
-
c-6.564,1.229-13.036,1.833-19.241,1.833c-37.642,0-62.28-21.975-86.098-43.213c-8.673-7.731-16.865-15.084-25.61-21.32l-6.113-4.465
|
230 |
-
l 6.287-4.311c 2.007-1.3, 7.055-8.97, 11.121-14.807C 36.557,269.742, 47.309,254.72, 58.737,254.72c0,0, 0.010,0, 0.010,0
|
231 |
-
c 4.024,0, 7.782,4.772, 20.879,19.497c 5.519,6.195, 11.766,14.070, 15.114,16.722c 14.971,11.889, 35.492,28.17, 57.907,28.17
|
232 |
-
c 3.021,0, 6.062-0.297, 9.021-0.891c 10.373-2.079, 16.64-6.881, 19.149-14.694c 5.14-16.005-6.666-40.54-16.794-51.374
|
233 |
-
c-5.11-5.478-10.701-9.421-16.63-13.599c-8.499-5.99-17.285-12.196-24.545-23.101l-2.355-3.543l 3.062-2.97
|
234 |
-
c 4.424-4.28, 8.817-8.581, 13.21-12.882c 11.366-11.131, 23.122-22.641, 35.185-33.516l 4.045-3.645l 3.4,4.26
|
235 |
-
c 7.649,9.595, 15.718,19.804, 23.634,30.239c 2.13-3.164, 4.393-6.4, 6.717-9.718c 17.459-24.965, 37.253-53.258, 24.34-90.235
|
236 |
-
c-9.615-27.556-42.086-45.496-78.664-42.865c-43.254,3.031-81.756,39.956-117.729,112.886c-2.243,4.557-4.086,9.667-5.868,14.612
|
237 |
-
c-4.168,11.571-8.489,23.532-18.545,30.966l-10.086,7.455l 1.987-12.38c 10.557-65.864, 41.503-129.423, 82.79-170.025
|
238 |
-
c 24.975-24.596, 65.956-40.489, 104.397-40.489c 44.411,0, 91.996,23.081, 92.324,87.859c 0.287,60.672-37.181,100.076-67.297,131.738L 214.712,216.023zM 494.971,271.657c-11.93,22.19-56.781,38.369-79.278,33.444c-34.079-7.434-57.969-26.716-79.053-43.735
|
239 |
-
c-21.576-17.428-40.223-32.471-65.106-32.471c-7.475,0-15.124,1.331-23.378,4.055l-13.107,4.332l 7.107-11.827
|
240 |
-
c 16.323-27.167, 35.379-40.376, 58.255-40.376c 18.586,0.010, 37.612,8.919, 56.463,20.46l 4.229-12.534c 9.574-28.355, 51.251-70.41, 89.19-70.41
|
241 |
-
c 0.758,0, 1.516,0.020, 2.273,0.061c 16.558,0.737, 30.382,10.066, 39.987,27.003C 512.236,184.34, 510.013,243.722, 494.971,271.657z M 382.935,222.648
|
242 |
-
c 27.976,19.016, 57.364,38.543, 81.439,34.294c 10.476-18.207, 6.195-33.884, 0.625-43.96c-10.629-19.18-33.915-32.584-56.648-32.584
|
243 |
-
c-10.711,0-26.081,3.052-38.492,17.572l-8.735,10.209C 368.425,212.797, 375.706,217.743, 382.935,222.648z" data-tags="hindu_temple" />
|
244 |
-
<glyph unicode="" d="M 225.28,460.216L 225.28,346.88 l-20.48,0 L 204.8,459.52 c0,5.652-4.588,10.24-10.24,10.24s-10.24-4.588-10.24-10.24l0-112.64 l-20.48,0 L 163.84,459.889 c0,13.179-20.48,12.728-20.48,0.338L 143.36,346.88 l-20.48,0 L 122.88,459.418
|
245 |
-
c0,13.957-20.48,13.445-20.48,0.553l0-148.193 c0-21.371, 20.48-35.461, 40.96-35.461L 143.36,8.96 c0-40.96, 61.44-40.96, 61.44,0L 204.8,276.306 c 20.48,0, 40.96,17.019, 40.96,33.044L 245.76,459.889
|
246 |
-
C 245.76,472.945, 225.28,472.443, 225.28,460.216zM 317.44,428.8l0-256 l 20.48,0 l0-163.84 c0-40.96, 71.68-40.96, 71.68,0L 409.6,428.8 C 409.6,480, 317.44,480, 317.44,428.8z" data-tags="restaurant" />
|
247 |
-
<glyph unicode="" d="M 337.029,152.32l-60.508,166.267c-0.225,0.522-0.348,1.106-0.348,1.71c0,2.427, 2.038,4.393, 4.577,4.393
|
248 |
-
c 2.161,0, 3.973-1.444, 4.454-3.369L 326.339,213.76c 2.734-6.154, 13.978-10.24, 21.371-10.24c 9.882,0, 10.906,19.405, 10.691,20.48l-41.134,106.056
|
249 |
-
C 313.692,353.823, 289.69,377.6, 262.298,377.6L 208.691,377.6 c-27.392,0-53.176-23.777-56.75-47.544L 112.65,224c-0.891-2.038,0-20.48, 10.68-20.48
|
250 |
-
c 8.305,0, 19.354,2.898, 21.371,10.24l 39.68,108.022c 0.635,1.7, 2.335,2.908, 4.311,2.908c 2.529,0, 4.567-1.966, 4.567-4.383
|
251 |
-
c0-0.553-0.092-1.085-0.287-1.567L 134.021,152.32c-0.113-0.492,0-9.738,0-10.24c0-3.543, 8.55-10.24, 12.268-10.24L 184.32,131.84 l0-134.093
|
252 |
-
C 184.32-12.902, 193.7-21.76, 204.8-21.76c 11.1,0, 20.48,8.868, 20.48,19.507L 225.28,131.932 c0,2.898, 20.48,2.806, 20.48-0.092l0-133.12 c0-10.65, 9.39-20.48, 20.48-20.48c 11.121,0, 20.48,9.841, 20.48,20.48L 286.72,131.84
|
253 |
-
l 39.619,0 c 3.707,0, 10.691,6.697, 10.691,10.24C 337.029,142.899, 337.326,151.613, 337.029,152.32zM 192,432.64A42.24,42.24 180 1 1 276.48,432.64A42.24,42.24 180 1 1 192,432.64z" data-tags="female" />
|
254 |
-
<glyph unicode="" d="M 184.32-1.28c0-12.626, 7.864-20.48, 20.48-20.48c 12.646,0, 20.48,7.854, 20.48,20.48L 225.28,193.28 l 20.48,0 l0-194.56 c0-12.605, 7.854-20.48, 20.48-20.48c 12.626,0, 20.48,7.854, 20.48,20.48L 286.72,326.4 l 10.24,0 l0-120.975
|
255 |
-
c0-24.525, 30.781-24.525, 30.72,0L 327.68,329.871 C 327.68,356.966, 308.163,377.6, 276.48,377.6l-81.92,0 c-28.877,0-51.2-17.603-51.2-46.971L 143.36,203.52 c0-20.48, 30.72-20.48, 30.72,0L 174.080,326.4 l 10.24,0 L 184.32-1.28 zM 192,432.64A42.24,42.24 180 1 1 276.48,432.64A42.24,42.24 180 1 1 192,432.64z" data-tags="male" />
|
256 |
-
<glyph unicode="" d="M 470.303,183.562l-1.116,3.011c-3.502,9.441-7.834,21.176-18.934,27.822c-7.731,4.628-16.722,6.236-24.648,7.649
|
257 |
-
c-4.076,0.727-7.936,1.434-11.244,2.437c-0.973,0.287-1.935,0.655-2.908,1.024c-0.154,0.051-0.307,0.092-0.461,0.154
|
258 |
-
c-31.826,25.559-96.266,26.255-136.407,62.403C 217.057,339.835, 170.885,391.895, 118.958,469.76L 54.077,417.843c-4.506-3.604-13.107-6.492-13.107-19.466
|
259 |
-
c0-6.482, 6.595-7.475, 14.367-5.069l 36.598,11.561L 194.56,262.083c0-25.958,0-53.688,0-77.885c0-18.022-0.297-34.427, 14.991-43.745L 171.008-21.76l 25.958,0
|
260 |
-
l 24.392,77.025L 245.76,93.358l0-38.943 L 245.76-21.76 l 30.72,0 L 276.48,106.322 c0,0-0.358,25.958, 25.6,25.958s 25.6-25.958, 25.6-25.958l0-90.839 L 327.68-21.76 l 20.48,0 L 348.16,80.64 l 56.484-102.4l 25.958,0
|
261 |
-
C 417.618,19.2, 399.36,15.483, 399.36,54.415l0,25.958 c0,27.218, 30.72,51.917, 30.72,77.875l0,25.938 c0,6.164-0.799,11.622-2.202,16.558
|
262 |
-
c 4.526-0.922, 8.684-2.038, 11.848-3.942c 4.905-2.939, 7.619-10.271, 10.24-17.357l 1.188-3.195c 2.017-5.274, 7.926-7.926, 13.21-5.919l 0.010,0.010
|
263 |
-
C 469.668,172.37, 472.32,178.278, 470.303,183.562z" data-tags="zoo" />
|
264 |
-
<glyph unicode="" d="M 189.235,286.72c 23.859,4.055, 41.554,25.784, 44.247,51.743c 2.734,26.399, 8.899,132.485-30.925,125.737
|
265 |
-
C 99.256,446.679, 106.506,272.691, 189.235,286.72zM 325.151,286.72c 82.708-14.029, 89.958,159.959-13.343,177.49c-39.813,6.748-33.659-99.338-30.935-125.737
|
266 |
-
C 283.576,312.504, 301.292,290.775, 325.151,286.72zM 146.801,204.749c0,13.804-4.925,26.317-12.861,35.42c-13.056,17.060-54.559,51.558-64.748,42.721C 47.923,264.397, 48.609,218.88, 61.42,185.805
|
267 |
-
c 6.584-18.391, 22.487-31.324, 41.073-31.324C 126.956,154.481, 146.801,176.988, 146.801,204.749zM 445.164,282.89c-10.168,8.837-51.671-25.661-64.727-42.721c-7.936-9.103-12.872-21.617-12.872-35.42
|
268 |
-
c0-27.761, 19.866-50.268, 44.308-50.268c 18.596,0, 34.509,12.933, 41.093,31.324C 465.746,218.88, 466.452,264.397, 445.164,282.89zM 361.851,126.454c-37.642,18.77-36.475,54.917-45.036,87.9c-6.81,26.307-30.925,45.763-59.628,45.763
|
269 |
-
c-28.088,0-51.784-18.647-59.177-44.155c-9.165-31.56-3.645-68.301-44.677-89.262c-33.331-10.865-46.828-26.716-46.828-64.205
|
270 |
-
c0-30.454, 26.143-63.058, 59.884-67.113c 37.642-5.673, 67.011,1.741, 90.798,15.299c 23.788-13.558, 53.135-20.961, 90.839-15.299
|
271 |
-
c 33.72,4.055, 59.873,36.536, 59.873,67.113C 407.89,100.803, 395.254,115.077, 361.851,126.454z M 317.44,80.64l-39.025,0 l 0.051-40.96l-42.557,0 l 0.061,40.96L 194.56,80.64 l0,40.96
|
272 |
-
l 41.421,0 l-0.061,40.96l 42.557,0 l-0.051-40.96L 317.44,121.6 L 317.44,80.64 z" data-tags="veterinary_care" />
|
273 |
-
<glyph unicode="" d="M 219.484,401.265L 194.56,367.36l-58.204,0 c 7.178-20.48, 30.679-39.793, 63.498-33.382c 9.728,0.655, 42.547,5.868, 56.146,2.662
|
274 |
-
c 18.104-4.342, 10.557-4.362, 43.018-30.413L 460.8,172.8c 9.912-8.755, 22.589-5.171, 31.365,4.721C 500.941,187.433, 501.432,205.005, 491.52,213.76L 286.72,377.6
|
275 |
-
c-12.82,10.291-16.056,24.545-20.48,40.96c-8.602,28.211-40.233,50.842-71.281,50.842C 169.943,469.402, 143.022,447.764, 133.12,428.8l 61.44,0 L 219.484,401.265zM 359.977,152.32L 359.977,152.32l-63.304,109.875C 294.175,266.752, 287.857,275.2, 282.665,275.2L 106.455,275.2 c-5.192,0-11.51-8.448-14.019-13.005L 30.72,152.32L 29.143,152.32
|
276 |
-
C 18.749,152.32, 10.24,148.541, 10.24,138.138l0-94.515 C 10.24,33.219, 18.749,29.44, 29.143,29.44L 51.2,29.44 l0-33.075 C 51.2-19.241, 60.805-32, 76.401-32l 9.452,0
|
277 |
-
C 101.458-32, 112.64-19.241, 112.64-3.635L 112.64,29.44 l 163.84,0 l0-33.075 c0-15.596, 11.182-28.365, 26.778-28.365l 9.452,0 C 328.315-32, 337.92-19.241, 337.92-3.635L 337.92,29.44 l 22.057,0
|
278 |
-
C 370.371,29.44, 378.88,33.219, 378.88,43.622l0,94.515 C 378.88,148.541, 370.371,152.32, 359.977,152.32z M 62.228,81.428c-13.056,0-23.634,10.578-23.634,23.634
|
279 |
-
s 10.578,23.634, 23.634,23.634c 13.046,0, 23.634-10.578, 23.634-23.634S 75.284,81.428, 62.228,81.428z M 81.132,152.32l 38.308,80.159
|
280 |
-
C 121.764,237.128, 127.928,244.48, 133.12,244.48l 122.88,0 c 5.192,0, 11.346-7.352, 13.681-12.001L 307.988,152.32L 81.132,152.32 z M 326.892,81.428
|
281 |
-
c-13.046,0-23.634,10.578-23.634,23.634s 10.578,23.634, 23.634,23.634s 23.634-10.578, 23.634-23.634S 339.937,81.428, 326.892,81.428zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76z" data-tags="car_repair" />
|
282 |
-
<glyph unicode="" d="M 255.99,199.619c-55.357,0-102.39-16.097-133.11-41.329L 122.88,111.36 l 266.24,0 l0,46.93 C 358.4,183.521, 311.357,199.619, 255.99,199.619zM 500.429,223.703L 255.345,336.64L 10.363,223.703L 51.2,205.015l0-28.744 c-10.24-2.12-10.271-7.485-10.271-13.865c0-3.768, 1.249-8.182, 3.625-10.824
|
283 |
-
L 30.546,121.6l 49.971,0 l-13.885,30.003c 2.335,2.642, 4.25,6.533, 4.25,10.301C 70.881,168.274, 61.44,174.162, 61.44,176.282l0,23.931 l 51.2-22.999L 112.64,179.251
|
284 |
-
c 30.72,26.716, 84.695,43.674, 143.34,43.674C 314.644,222.925, 368.64,205.967, 399.36,179.251l0-2.038 L 500.429,223.703z" data-tags="university" />
|
285 |
-
<glyph unicode="" d="M 471.040,336.64L 348.16,336.64 l0,40.714 C 348.16,406.548, 329.308,439.040, 300.145,439.040l-98.222,0 C 172.728,439.040, 153.6,406.548, 153.6,377.354L 153.6,336.64 L 40.96,336.64 c-11.264,0-20.48-9.216-20.48-20.48l0-296.96 c0-11.264, 9.216-20.48, 20.48-20.48
|
286 |
-
l 430.080,0 c 11.264,0, 20.48,9.216, 20.48,20.48L 491.52,316.16 C 491.52,327.424, 482.304,336.64, 471.040,336.64z M 307.2,29.44L 194.56,29.44 l0,10.926 c0,0.236, 6.277,0.543, 9.277,0.901s 5.632,0.963, 7.793,1.802
|
287 |
-
c 3.84,1.444, 8.141,3.512, 9.708,6.205S 225.28,55.552, 225.28,59.986l0,104.755 c0,4.198-2.54,7.895-4.465,11.069s-5.11,5.734-7.987,7.649
|
288 |
-
c-2.161,1.444-3.676,2.816-8.059,4.137S 194.56,189.768, 194.56,190.126l0,13.138 l 83.712,4.68L 276.48,205.251l0-142.92 c0-4.198, 3.236-7.772, 5.038-10.711
|
289 |
-
s 5.55-5.13, 8.909-6.574c 2.396-1.075, 4.966-2.038, 7.854-2.877S 307.2,40.735, 307.2,40.366L 307.2,29.44 z M 211.139,272.753
|
290 |
-
c0,9.124, 3.512,16.916, 10.527,23.398s 15.391,9.718, 25.108,9.718s 18.063-3.236, 25.016-9.718s 10.445-14.285, 10.445-23.398s-3.512-16.886-10.527-23.306
|
291 |
-
s-15.329-9.626-24.934-9.626c-9.718,0-18.094,3.205-25.108,9.626S 211.139,263.629, 211.139,272.753z M 317.44,336.64L 184.32,336.64 l0,40.714 C 184.32,388.28, 195.379,408.32, 206.305,408.32
|
292 |
-
l 82.452,0 C 299.663,408.32, 317.44,388.28, 317.44,377.354L 317.44,336.64 z" data-tags="travel_agency" />
|
293 |
-
<glyph unicode="" d="M 212.132,234.24L 32.348,234.24 c-5.243,0-9.554,3.215-9.554,8.346c0,0.85, 0.154,1.178, 0.328,1.946l 9.574,61.501
|
294 |
-
C 33.495,310.374, 37.396,305.92, 42.086,305.92l 160.328,0 c 4.649,0, 8.581,4.219, 9.37-0.123l 9.585-65.526c 0.154-0.788, 0.338,1.27, 0.338,0.389
|
295 |
-
C 221.706,235.571, 217.364,234.24, 212.132,234.24z M 204.933,156.733c-10.107,0-18.34,7.997-18.34,17.92c0,9.871, 8.223,17.818, 18.34,17.818
|
296 |
-
c 10.056,0, 18.278-7.946, 18.278-17.818C 223.212,164.731, 214.999,156.733, 204.933,156.733z M 39.281,156.733c-10.025,0-18.248,7.997-18.248,17.92
|
297 |
-
c0,9.871, 8.212,17.818, 18.248,17.818c 10.168,0, 18.371-7.946, 18.371-17.818C 57.651,164.731, 49.449,156.733, 39.281,156.733z M 61.44,357.12l 112.64,0 l0-30.72 L 61.44,326.4
|
298 |
-
C 51.2,326.4, 51.2,357.12, 61.44,357.12z M 232.428,329.441c-3.267,15.79-14.459,22.139-30.095,28.498c-15.606,6.339-52.562,13.926-79.749,13.926
|
299 |
-
c-27.3,0-64.051-7.598-79.657-13.926c-15.616-6.359-26.982-12.708-30.249-28.498L0,241.521L0,121.6 l 18.278,0 l0,0c0-51.2, 34.417-51.2, 34.417,0l0,0l 137.636,0 l0,0
|
300 |
-
c0-51.2, 34.406-51.2, 34.406,0l0,0L 245.76,121.6 L 245.76,241.521 L 232.428,329.441zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76zM 458.332,120.637c0,0.256-0.276,0.666-0.819,1.485c0,0.236, 0.154,0.41, 0.41,0.563c 0.246,0.154, 0.41,0.276, 0.41,0.563
|
301 |
-
c 7.66,3.164, 14.633,7.066, 20.869,11.684c 6.216,4.669, 9.503,11.469, 11.663,20.47C 491.080,156.447, 491.52,158.884, 491.52,162.601L 491.52,348.713
|
302 |
-
c0,4.495-0.44,9.155-3.082,13.885c-2.662,4.823-5.519,9.134-9.523,12.964c-3.963,3.789-9.697,7.014-14.633,9.554
|
303 |
-
C 460.012,387.308, 450.56,388.475, 450.56,388.751L 450.56,387.84 l 1.382,0 L 318.74,387.84 L 317.44,387.84 L 317.44,388.577 c-10.24-0.471-7.741-1.536-11.284-3.256c-4.915-2.396-10.025-5.448-14.121-9.165
|
304 |
-
c-4.096-3.686-8.202-7.875-10.854-12.493C 278.528,358.963, 276.48,354.427, 276.48,349.88l0-188.887 c0-3.174, 1.26-6.492, 2.796-9.943
|
305 |
-
c 1.618-3.451, 3.809-6.676, 6.185-9.697c 2.376-3.113, 5.1-5.888, 7.895-8.387c 2.775-2.509, 5.55-4.577, 8.212-6.164
|
306 |
-
c 1.28-0.543, 3.656-1.362, 7.004-2.417c 3.256-1.055, 4.813-1.638, 4.567-2.161L 258.642,39.68l 31.805,0 l 39.793,61.44l 109.793,0 l 39.752-61.44L 512,39.68 L 458.332,120.637z
|
307 |
-
M 366.152,377.6l 36.465,0 c 8.018,0, 14.592-2.212, 14.592-10.24c0-8.018-6.574-10.24-14.592-10.24l-36.465,0 c-8.028,0-14.592,2.222-14.592,10.24
|
308 |
-
C 351.56,375.388, 358.124,377.6, 366.152,377.6z M 460.8,283.894C 460.8,267.776, 447.744,254.72, 431.626,254.72L 326.134,254.72 C 310.016,254.72, 296.96,267.776, 296.96,283.894l0,23.583
|
309 |
-
C 296.96,323.584, 310.016,336.64, 326.134,336.64l 105.503,0 C 447.744,336.64, 460.8,323.584, 460.8,307.466L 460.8,283.894 z M 339.21,154.225c-4.106-4.239-9.247-6.349-15.309-6.349
|
310 |
-
c-6.113,0-11.090,2.109-14.961,6.349c-3.83,4.229-5.755,9.441-5.755,15.544c0,5.56, 1.997,10.394, 5.99,14.49
|
311 |
-
c 3.963,4.116, 8.878,6.195, 14.725,6.195c 6.062,0, 11.203-1.966, 15.309-5.755c 4.106-3.891, 6.164-8.94, 6.164-15.36
|
312 |
-
C 345.375,163.502, 343.316,158.454, 339.21,154.225z M 430.295,154.225c-4.106,4.229-6.185,9.441-6.185,15.544c0,6.113, 2.181,11.049, 6.574,14.94
|
313 |
-
c 4.393,3.779, 9.492,5.755, 15.34,5.755c 6.052,0, 11.049-2.079, 14.899-6.195c 3.83-4.096, 5.775-8.929, 5.775-14.49
|
314 |
-
c0-6.103-2.007-11.305-5.98-15.544c-4.004-4.239-9.021-6.349-15.145-6.349C 439.491,147.866, 434.391,149.975, 430.295,154.225z" data-tags="transit_station" />
|
315 |
-
<glyph unicode="" d="M 356.157,411.761L 284.979,411.761 c-12.861-0.041-12.38-19.21,0-19.098l 71.178,0 l0-9.8 L 284.979,382.863 c-12.79,0.113-12.319-19.046,0-19.098l 71.178,0 l0-9.544
|
316 |
-
l0-0.471 L 284.979,353.751 c-12.79,0-12.319-19.149,0-19.098l 71.178,0 l0-9.544 L 284.979,325.11 c-12.524-0.092-12.319-19.261,0-19.323l 71.178,0 l0-9.564 L 284.979,296.223
|
317 |
-
c-12.524,0.041-12.575-19.098,0-19.098l 71.178,0 l0-9.544 L 284.979,267.581 c-12.524-0.041-12.575-19.2,0-19.108l 71.178,0 l0-9.779 L 284.979,238.694
|
318 |
-
c-12.524,0.113-12.575-19.026,0-19.098l 71.178,0 l0-9.523 L 284.979,210.074 c-12.524,0.010-12.319-19.169,0-19.108l 71.178,0 l0-185.948
|
319 |
-
c 0.041-28.334, 43.080-27.822, 43.203,0L 399.36,440.166 c-0.123,12.943-10.752,29.307-28.242,29.358L 284.979,469.524 c-12.861-0.010-12.38-19.18,0-19.098l 71.178-0.236
|
320 |
-
l0-9.523 L 284.979,440.668 c-12.841,0.061-12.36-19.098,0-19.108l 71.178,0 L 356.157,411.761 L 356.157,411.761zM 280.084,82.094C 280.044,115.169, 245.76,150.743, 204.8,127.703L 204.8,254.208 L 178.309,462.848C 177.756,468.367, 173.076,469.668, 169.933,469.76
|
321 |
-
c-3.246-0.092-9.748-1.393-10.455-6.912L 133.12,254.208l0-126.505 c-40.96,23.040-74.138-12.759-74.148-45.353c 0.010-29, 22.333-52.818, 52.541-52.746
|
322 |
-
c 30.433-0.072, 52.326,26.624, 52.326,52.746L 163.84,213.76 l 10.24,0 l0-131.41 c0-29.245, 22.651-50.893, 47.821-52.265c-0.42-16.036, 4.813-38.912, 14.664-47.985
|
323 |
-
c 11.551-10.65, 25.303,2.97, 19.661,14.060c-5.448,10.322-10.793,16.435-6.451,38.973C 267.919,43.53, 280.044,61.204, 280.084,82.094z
|
324 |
-
M 112.681,56.074c-14.295,0.092-25.846,11.684-25.866,26.020c 0.020,14.326, 11.571,25.969, 25.866,26.051c 14.193-0.082, 25.754-11.725, 25.856-26.051
|
325 |
-
C 138.435,67.748, 126.874,56.156, 112.681,56.074z M 200.448,82.094c 0.092,14.326, 11.633,25.969, 25.866,26.051
|
326 |
-
c 14.254-0.082, 25.815-11.725, 25.856-26.051c-0.041-14.336-11.592-25.928-25.856-26.020C 212.081,56.156, 200.53,67.748, 200.448,82.094z" data-tags="beauty_salon" />
|
327 |
-
<glyph unicode="" d="M 253.112-21.76C 134.943-21.76, 38.799,74.383, 38.799,192.563c0,75.633, 38.666,144.21, 103.444,183.429c 13.885,8.407, 31.928,3.963, 40.325-9.902
|
328 |
-
c 8.397-13.865, 3.953-31.918-9.902-40.325c-47.053-28.488-75.141-78.295-75.141-133.202c0-85.801, 69.796-155.597, 155.597-155.597
|
329 |
-
c 85.801,0, 155.587,69.796, 155.587,155.597c0,55.808-30.147,107.674-78.715,135.322c-14.1,8.028-19.005,25.948-10.988,40.038
|
330 |
-
c 8.028,14.080, 25.948,18.995, 40.038,10.977c 66.867-38.072, 108.39-109.486, 108.39-186.348C 467.425,74.383, 371.302-21.76, 253.112-21.76zM 250.88,195.492c-16.21,0-35.84,13.148-35.84,29.358L 215.040,436.234 c0,16.21, 19.63,29.358, 35.84,29.358c 16.21,0, 35.84-13.148, 35.84-29.358l0-211.384
|
331 |
-
C 286.72,208.64, 267.090,195.492, 250.88,195.492z" data-tags="electronics_store" />
|
332 |
-
<glyph unicode="" d="M 365.158,177.521c 17.009,28.047, 26.952,60.908, 26.952,96.102c0,102.697-83.098,185.856-185.815,185.897
|
333 |
-
C 103.67,459.489, 20.48,376.32, 20.48,273.644c0-102.584, 83.2-185.743, 185.876-185.743c 35.226,0, 68.045,9.953, 96.092,26.962L 428.841-11.52L 491.52,51.19
|
334 |
-
L 365.158,177.521z M 206.336,158.669c-63.508,0.154-114.852,51.476-114.964,114.852C 91.494,337.029, 142.848,388.362, 206.336,388.506
|
335 |
-
c 63.478-0.164, 114.842-51.487, 114.975-114.985C 321.178,210.217, 269.793,158.822, 206.336,158.669z" data-tags="search" />
|
336 |
-
<glyph unicode="" d="M 365.158,177.521c 17.009,28.047, 26.952,60.908, 26.952,96.102c0,102.697-83.098,185.856-185.815,185.897
|
337 |
-
C 103.67,459.489, 20.48,376.32, 20.48,273.644c0-102.584, 83.2-185.743, 185.876-185.743c 35.226,0, 68.045,9.953, 96.092,26.962L 428.841-11.52L 491.52,51.19
|
338 |
-
L 365.158,177.521z M 206.336,158.669c-63.508,0.154-114.852,51.476-114.964,114.852C 91.494,337.029, 142.848,388.362, 206.336,388.506
|
339 |
-
c 63.478-0.164, 114.842-51.487, 114.975-114.985C 321.178,210.217, 269.793,158.822, 206.336,158.669zM 122.88,295.68L 286.72,295.68L 286.72,254.72L 122.88,254.72z" data-tags="zoom-out-alt" />
|
340 |
-
<glyph unicode="" d="M 261.192,248.863c-15.483,0-28.068-12.585-28.068-28.058c0-15.473, 12.585-28.058, 28.068-28.058c 15.473,0, 28.068,12.585, 28.068,28.058
|
341 |
-
C 289.26,236.278, 276.664,248.863, 261.192,248.863zM 428.278,438.292C 428.278,450.017, 418.775,459.52, 407.060,459.52L 103.148,459.52 C 91.423,459.52, 81.92,450.017, 81.92,438.292l0-428.605 C 81.92-2.028, 91.423-11.52, 103.148-11.52l 303.913,0
|
342 |
-
c 11.725,0, 21.217,9.492, 21.217,21.207L 428.278,438.292 z M 261.192,86.63c-73.984,0-134.175,60.18-134.175,134.175c0,73.974, 60.191,134.164, 134.175,134.164
|
343 |
-
c 73.974,0, 134.154-60.191, 134.154-134.164C 395.336,146.811, 335.155,86.63, 261.192,86.63z" data-tags="movie_rental" />
|
344 |
-
<glyph unicode="" d="M 423.987,255.867l-25.18,105.124c-4.413,18.34-22.999,29.86-41.441,25.334c-16.22-3.963-24.105-15.196-27.3-23.101
|
345 |
-
c-3.779-9.329-20.644-51.599-24.586-60.334c-1.382-3.031-4.301-4.628-4.895-4.895c-3.348-1.485-36.864-15.626-36.864-15.626l0-0.061
|
346 |
-
c-6.615-3.103-11.203-9.718-11.203-17.439c0-10.68, 8.745-19.343, 19.528-19.343c 2.324,0, 4.536,0.481, 6.615,1.219
|
347 |
-
c0-0.010-0.020-0.041,0-0.072c 0.215,0.092, 44.493,18.493, 44.493,18.493c 6.103,2.847, 9.083,6.451, 12.114,11.704
|
348 |
-
c 1.27,2.212, 5.13,11.469, 8.274,19.067l 26.849-112.282C 370.381,121.498, 370.36,9.677, 370.36,9.677c-0.051-17.285, 11.889-31.375, 29.338-31.437
|
349 |
-
c 17.469-0.061, 30.095,13.896, 30.208,31.212c0,0, 0.174,195.656, 0.174,205.343C 430.060,224.451, 426.22,247.398, 423.987,255.867zM 287.171,430.643A39.475,39.117 180 1 1 366.121,430.64300000000003A39.475,39.117 180 1 1 287.171,430.64300000000003zM 175.421,100.076l0-43.827 c 5.683,1.044, 10.281,3.645, 13.855,7.813c 3.543,4.168, 5.315,9.042, 5.315,14.653
|
350 |
-
c0,5.018-1.485,9.349-4.454,12.995C 187.126,95.314, 182.221,98.099, 175.421,100.076zM 148.347,168.141c-2.662-3.584-4.004-7.557-4.004-11.899c0-3.994, 1.219-7.66, 3.625-11.059c 2.437-3.42, 6.113-6.185, 10.998-8.274
|
351 |
-
l0,38.881 l0,0C 154.511,174.295, 150.958,171.735, 148.347,168.141zM 252.488,220.201l 0.041,0 l-61.184,122.747l-0.010-0.113c-4.495,9.298-14.039,15.718-25.139,15.718l-56.392,0
|
352 |
-
C 94.413,358.564, 81.92,346.194, 81.92,330.936l0-215.081 c0-0.031,0-0.061,0-0.092L 81.92-21.76 l 173.732,0 L 255.652,206.356 C 255.631,211.313, 254.495,216.003, 252.488,220.201z
|
353 |
-
M 209.971,48.486c-8.294-9.288-19.804-14.981-34.519-17.070l0-21.023 l-16.456,0 l0,20.46 c-13.087,1.567-23.685,6.41-31.877,14.49
|
354 |
-
c-8.151,8.1-13.363,19.517-15.626,34.273l 29.594,3.164c 1.198-6.001, 3.461-11.172, 6.81-15.534c 3.308-4.342, 7.014-7.485, 11.090-9.431
|
355 |
-
l0,47.084 c-14.807,4.198-25.692,10.557-32.584,19.026c-6.932,8.499-10.394,18.811-10.394,30.956c0,12.288, 3.901,22.61, 11.756,30.976
|
356 |
-
c 7.823,8.346, 18.227,13.169, 31.232,14.428l0,11.131 l 16.456,0 l0-11.131 c 12.001-1.413, 21.576-5.478, 28.682-12.175c 7.086-6.687, 11.622-15.688, 13.599-26.921
|
357 |
-
l-28.682-3.707c-1.751,8.827-6.277,14.838-13.599,17.981l0-43.93 c 18.135-4.884, 30.495-11.192, 37.079-18.934
|
358 |
-
c 6.564-7.762, 9.861-17.705, 9.861-29.839C 222.392,69.202, 218.255,57.784, 209.971,48.486z" data-tags="atm" />
|
359 |
-
<glyph unicode="" d="M 475.914,268.421l-0.133,1.034c-0.287,1.444-0.819,2.898-1.3,3.707L 409.6,377.6c0,0-8.274,10.24-10.24,10.24c-30.72,0-245.76,0-276.48,0L 39.731,276.705
|
360 |
-
l-0.983-1.024L 38.615,275.2c-0.655-1.034-1.219-2.202-1.72-3.584L 36.557,270.623c-0.492-1.7-0.717-3.174-0.655-5.386
|
361 |
-
c 0.072-1.434, 0.328-2.857, 0.788-4.342l 0.389-1.116c 0.522-1.321, 1.167-2.529, 1.925-3.604l 201.021-254.638l 0.41-0.584
|
362 |
-
c 1.034-1.331, 2.294-2.509, 3.83-3.584l 1.167-0.727c 1.147-0.717, 2.345-1.29, 4.086-1.925l 1.137-0.379C 252.621-6.164, 254.331-6.4, 256-6.4
|
363 |
-
c 1.69,0, 3.338,0.225, 5.56,0.799l 1.362,0.481c 1.331,0.471, 2.529,1.055, 3.973,1.946l 0.901,0.563c 1.546,1.096, 2.785,2.284, 3.471,3.215
|
364 |
-
l 201.277,254.904c 0.901,1.167, 1.659,2.478, 2.56,4.803c 0.492,1.29, 0.707,2.54, 0.819,3.287c 0.092,0.522, 0.154,1.055, 0.154,1.321
|
365 |
-
l 0.082,1.044C 476.16,266.988, 476.047,268.012, 475.914,268.421z M 367.985,275.2l 28.652,51.845L 425.267,275.2L 367.985,275.2 z M 350.802,244.48l 67.973,0 L 305.48,100.966
|
366 |
-
L 350.802,244.48z M 333.988,290.744L 292.608,346.88l 72.397,0 L 333.988,290.744z M 201.441,244.48l 109.148,0 L 256,71.66L 201.441,244.48z M 212.265,275.2L 256,334.551L 299.735,275.2
|
367 |
-
L 212.265,275.2 z M 181.463,295.393L 162.499,346.88l 56.904,0 L 181.463,295.393z M 206.541,100.956L 93.235,244.48l 67.983,0 L 206.541,100.956z M 129.69,326.687L 148.664,275.2L 91.75,275.2
|
368 |
-
L 129.69,326.687z" data-tags="jewelry_store" />
|
369 |
-
<glyph unicode="" d="M-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76zM 440.32,418.56L 440.32,459.52L 71.68,459.52L 71.68,418.56L0,418.56L0-21.76L 40.96-21.76L 40.96,377.6L 71.68,377.6L 71.68,336.64L 440.32,336.64L 440.32,377.6L 471.040,377.6L 471.040-21.76L 512-21.76L 512,418.56 zM 430.612,183.040L 430.612,183.040l-66.816,113.92C 361.144,301.885, 354.478,305.92, 348.989,305.92L 163,305.92 c-5.489,0-12.155-4.035-14.797-8.96L 81.398,183.040
|
370 |
-
l0,0C 70.42,183.040, 61.44,173.824, 61.44,162.56l0-102.4 c0-11.264, 8.98-20.48, 19.958-20.48L 102.4,39.68 l0-30.72 c0-16.896, 12.421-30.72, 28.877-30.72l 9.984,0 C 157.716-21.76, 174.080-7.936, 174.080,8.96l0,30.72 l 163.84,0 l0-30.72
|
371 |
-
c0-16.896, 16.353-30.72, 32.819-30.72l 9.984,0 c 16.456,0, 28.877,13.824, 28.877,30.72l0,30.72 l 21.012,0 C 441.58,39.68, 450.56,48.896, 450.56,60.16L 450.56,162.56 C 450.56,173.824, 441.58,183.040, 430.612,183.040z
|
372 |
-
M 116.316,101.12c-13.773,0-24.945,11.459-24.945,25.6s 11.172,25.6, 24.945,25.6c 13.783,0, 24.945-11.459, 24.945-25.6S 130.099,101.12, 116.316,101.12z M 131.277,183.040
|
373 |
-
l 45.425,83.005c 2.458,5.038, 8.96,9.155, 14.438,9.155l 129.71,0 c 5.489,0, 11.991-4.116, 14.438-9.155L 380.723,183.040L 131.277,183.040 z M 395.684,101.12
|
374 |
-
c-13.773,0-24.945,11.459-24.945,25.6s 11.172,25.6, 24.945,25.6c 13.783,0, 24.955-11.459, 24.955-25.6S 409.457,101.12, 395.684,101.12z" data-tags="car_wash" />
|
375 |
-
<glyph unicode="" d="M 192,432.64A42.24,42.24 180 1 1 276.48,432.64A42.24,42.24 180 1 1 192,432.64zM 225.28,377.6l-30.72,0 c-28.877,0-51.2-17.603-51.2-46.971L 143.36,203.52 c0-20.48, 30.72-20.48, 30.72,0L 174.080,326.4 l 10.24,0 l0-327.68 c0-12.626, 7.864-20.48, 20.48-20.48c 12.646,0, 20.48,7.854, 20.48,20.48L 225.28,193.28 L 225.28,377.6 zM 358.4,224l-41.134,106.056C 313.692,353.823, 289.69,377.6, 262.298,377.6L 235.52,377.6 l0-243.538 c 5.12-0.020, 10.24-0.768, 10.24-2.222l0-133.12 c0-10.65, 9.39-20.48, 20.48-20.48
|
376 |
-
c 11.121,0, 20.48,9.841, 20.48,20.48L 286.72,131.84 l 39.619,0 c 3.707,0, 10.691,6.697, 10.691,10.24c0,0.819, 0.297,9.533,0,10.24l-60.508,166.267
|
377 |
-
c-0.225,0.522-0.348,1.106-0.348,1.71c0,2.427, 2.038,4.393, 4.577,4.393c 2.161,0, 3.973-1.444, 4.454-3.369L 326.339,213.76
|
378 |
-
c 2.734-6.154, 13.978-10.24, 21.371-10.24C 357.591,203.52, 358.615,222.925, 358.4,224z" data-tags="unisex" />
|
379 |
-
<glyph unicode="" d="M 286.556,165.335c-23.050,0-41.759-18.944-41.759-42.342c0-23.388, 18.719-42.363, 41.759-42.363c 23.060,0, 41.748,18.975, 41.748,42.363
|
380 |
-
C 328.315,146.401, 309.617,165.335, 286.556,165.335z M 286.556,100.577c-12.237,0-22.118,10.025-22.118,22.415c0,12.38, 9.882,22.456, 22.118,22.456
|
381 |
-
c 12.196,0, 22.129-10.076, 22.129-22.456C 308.695,110.602, 298.762,100.577, 286.556,100.577zM 459.336,352.061C 444.559,357.161, 349.204,367.36, 286.433,367.36c-62.761,0-163.84-10.332-178.801-14.756C 106.086,352.154, 61.44,339.845, 61.44,291.441L 61.44,162.253
|
382 |
-
C 61.44,153.477, 64.727,142.080, 69.581,142.080L 10.24,142.080 l0-20.48 l 224.922,0 c0,30.72, 23.163,52.449, 51.692,52.449c 28.57,0, 51.722-21.729, 51.722-52.449l 125.245,0
|
383 |
-
C 484.803,121.6, 501.76,141.015, 501.76,162.253L 501.76,298.312 C 501.76,319.56, 485.786,342.917, 459.336,352.061z M 205.169,250.9c0-4.035-2.877-6.42-6.83-6.42
|
384 |
-
l-67.41,0 C 126.945,244.48, 122.88,245.996, 122.88,250.030l0,47.739 C 122.88,301.783, 126.945,305.92, 130.918,305.92l 67.41,0 C 202.281,305.92, 204.8,301.783, 204.8,297.769l0-47.739
|
385 |
-
L 205.169,250.9z M 450.56,250.030C 450.56,245.996, 447.386,244.48, 443.392,244.48L 294.236,244.48 C 290.253,244.48, 286.72,245.996, 286.72,250.030l0,47.739
|
386 |
-
C 286.72,301.783, 290.253,305.92, 294.236,305.92L 443.392,305.92 c 4.004,0, 7.168-4.137, 7.168-8.151L 450.56,250.030 z" data-tags="rv_park" />
|
387 |
-
<glyph unicode="" d="M 307.2,398.080l0-337.92 L 61.44,60.16 L 61.44,398.080 L 307.2,398.080 M 348.16,439.040L 20.48,439.040 l0-430.080 l 327.68,0 L 348.16,439.040 L 348.16,439.040zM 92.16,357.12L 276.48,357.12L 276.48,316.16L 92.16,316.16zM 92.16,285.44L 276.48,285.44L 276.48,244.48L 92.16,244.48zM 92.16,213.76L 276.48,213.76L 276.48,172.8L 92.16,172.8zM 92.16,142.080L 276.48,142.080L 276.48,101.12L 92.16,101.12zM 409.6,357.12L 491.52,357.12L 491.52,70.4L 409.6,70.4zM 450.621,469.76C 428.155,469.76, 409.6,451.686, 409.6,429.445L 409.6,387.84 l 81.92,0 L 491.52,429.445 C 491.52,451.686, 472.996,469.76, 450.621,469.76zM 408.965,39.68L 450.345-25.723L 491.52,39.68 z" data-tags="school" />
|
388 |
-
<glyph unicode="" d="M 484.966,328.96c 0.819-2.97-0.215-6.246-1.946-8.806l-55.194-82.125c-2.048-3.174-6.349-4.915-9.943-4.915c-1.024,0-3.891,0.205-5.007,0.512
|
389 |
-
L 368.64,244.48l0-194.56 c0-5.939-4.198-10.24-10.24-10.24L 143.36,39.68 c-6.042,0-10.24,4.301-10.24,10.24L 133.12,244.48 l-39.731-10.957c-4.608-1.434-8.602,0.41-11.162,4.403l-54.784,81.92
|
390 |
-
c-1.741,2.662-2.253,5.632-1.434,8.602c 0.717,3.072, 2.867,5.12, 5.632,6.554L 143.36,387.84c 10.24,0, 51.2,0, 51.2,0c 6.042,0, 10.24-4.198, 10.24-10.24c0-21.094, 29.594-36.045, 50.688-36.045
|
391 |
-
c 21.094,0, 51.712,14.848, 51.712,36.045c0,5.939, 4.198,10.24, 10.24,10.24c0,0, 40.96,0, 51.2,0l 110.592-51.814C 482.099,334.592, 484.147,332.032, 484.966,328.96z" data-tags="clothing_store" />
|
392 |
-
<glyph unicode="" d="M 61.44,367.36l0-345.498 C 61.44,6.81, 74.107-11.52, 89.702-11.52l 340.152,0 C 445.409-11.52, 460.8,6.81, 460.8,21.862L 460.8,367.36 L 61.44,367.36 z M 260.71,93.174
|
393 |
-
c-60.006,0-108.657,47.043-108.657,105.093c0,58.051, 48.65,105.093, 108.657,105.093s 108.657-47.043, 108.657-105.093
|
394 |
-
C 369.367,140.206, 320.717,93.174, 260.71,93.174zM 429.855,469.76L 89.702,469.76 C 74.107,469.76, 61.44,459.182, 61.44,444.109L 61.44,387.84 l 399.36,0 L 460.8,444.109 C 460.8,459.182, 445.409,469.76, 429.855,469.76z M 194.56,408.32L 81.92,408.32 L 81.92,449.28 l 112.64,0 L 194.56,408.32 z M 390.615,411.187
|
395 |
-
c-12.79,0-23.122,10.025-23.122,22.405c0,12.36, 10.332,22.385, 23.122,22.385s 23.153-10.025, 23.153-22.385C 413.757,421.222, 403.405,411.187, 390.615,411.187z
|
396 |
-
" data-tags="laundry" />
|
397 |
-
<glyph unicode="" d="M 501.76,372.593c 6.185,4.68, 10.24,12.012, 10.24,20.367C 512,407.101, 500.541,418.56, 486.4,418.56S 460.8,407.101, 460.8,392.96c0-8.346, 4.055-15.688, 10.24-20.367L 471.040,213.76 l-92.16,0 l0-81.92 l 102.4,0
|
398 |
-
l0,3.041 c 15.002,6.083, 25.6,20.726, 25.6,37.919c0,7.076-1.956,13.64-5.12,19.446L 501.76,372.593 zM 61.44,305.92c 10.455,0, 17.715-1.761, 30.72,0c0,0-41.124-27.3-41.124-61.44L 102.4,244.48 c0,0, 0.061,56.873, 30.72,92.16l-10.24,10.24c0,0-20.48-10.24-40.96,0c0,0-20.48,0-40.96-10.24l0,10.24 L 30.72,346.88 l0-61.44 l 10.24,0
|
399 |
-
C 40.96,285.44, 40.96,305.92, 61.44,305.92zM 204.8,305.92c 10.455,0, 17.715-1.761, 30.72,0c0,0-41.124-27.3-41.124-61.44L 245.76,244.48 c0,0, 0.061,56.873, 30.72,92.16l-10.24,10.24c0,0-20.48-10.24-40.96,0c0,0-20.48,0-40.96-10.24l0,10.24 l-10.24,0 l0-61.44 l 10.24,0
|
400 |
-
C 184.32,285.44, 184.32,305.92, 204.8,305.92zM 389.12,408.32L 389.12,428.8 L 265.011,428.8 c-4.669,20.5-22.927,35.84-44.851,35.84S 179.978,449.3, 175.309,428.8L 51.2,428.8 l0-20.48 L0,408.32 l0-419.84 l 450.56,0 L 450.56,408.32 L 389.12,408.32 z M 163.84,367.36l 122.88,0 l0-143.36 L 163.84,224 L 163.84,367.36 z M 20.48,367.36l 122.88,0 l0-143.36 L 20.48,224
|
401 |
-
L 20.48,367.36 z M 389.12,39.68L 51.2,39.68 l0,71.68 l 337.92,0 L 389.12,39.68 z M 430.080,224L 307.2,224 L 307.2,367.36 l 122.88,0 L 430.080,224 zM 348.16,305.92c 10.455,0, 17.715-1.761, 30.72,0c0,0-41.124-27.3-41.124-61.44L 389.12,244.48 c0,0, 0.061,56.873, 30.72,92.16l-10.24,10.24c0,0-20.48-10.24-40.96,0c0,0-20.48,0-40.96-10.24l0,10.24 l-10.24,0 l0-61.44 l 10.24,0
|
402 |
-
C 327.68,285.44, 327.68,305.92, 348.16,305.92z" data-tags="casino" />
|
403 |
-
<glyph unicode="" d="M 443.187,337.705L 255.57,469.76l-42.24-29.778l 0.635-0.492L 48.742,322.038l0,0l0,0L 10.24,295.342l0-62.495 l 39.311,26.491L 49.551-21.76 l 3.973,0 l 42.854,0 l 6.359,0
|
404 |
-
l 303.237,0 l 13.23,0 l 39.465,0 l 3.789,0 L 462.459,261.847 L 501.76,232.847l0,62.495 L 443.187,337.705z M 403.456,38.124L 101.99,38.124 L 101.99,297.134 L 256.174,408.125L 403.456,302.131L 403.456,38.124 zM 186.726,267.356c 10.977,0, 20.050,9.042, 20.050,20.347c0,11.284-9.073,20.419-20.050,20.419c-11.11,0-20.101-9.144-20.101-20.419
|
405 |
-
C 166.625,276.398, 175.616,267.356, 186.726,267.356zM 159.355,70.676c0-6.277, 4.485-12.196, 10.68-12.196c 6.226,0, 10.588,4.495, 10.588,10.803l0,95.242 l 13.117,0 l0-95.242
|
406 |
-
c0-6.298, 3.84-11.5, 10.035-11.5c 6.226,0, 10.742,6.615, 10.742,12.902l-0.502,167.035l 12.472,0 l0-66.529 c0-6.656, 13.107-6.656, 13.107,0l0,65.044
|
407 |
-
c0,13.548-10.547,26.778-26.235,26.778l-53.217,0.123c-14.223,0-25.395-11.858-25.395-26.573l0-65.372 c0-6.656, 13.097-6.656, 13.097,0l0,66.529 l 11.653,0
|
408 |
-
L 159.355,70.676zM 329.134,267.356c 11.018,0, 20.101,9.042, 20.101,20.347c0,11.284-9.083,20.419-20.101,20.419c-11.049,0-20.142-9.144-20.142-20.419
|
409 |
-
C 308.992,276.398, 318.075,267.356, 329.134,267.356zM 301.814,70.676c0-6.277, 5.263-12.196, 11.459-12.196c 6.277,0, 11.54,4.495, 11.54,10.803l0,95.242 l 6.564,0 l0-95.242
|
410 |
-
c0-6.298, 6.195-11.5, 12.431-11.5c 6.236,0, 11.94,6.615, 11.94,12.902l 0.696,167.035l 7.711,0 l0-66.529 c0-6.656, 19.651-6.656, 19.651,0l0,65.044
|
411 |
-
c0,13.548-11.438,26.778-27.105,26.778l-52.746,0.123c-14.254,0-24.996-11.858-24.996-26.573l0-65.372 c0-6.656, 13.107-6.656, 13.107,0l0,66.529 l 9.841,0
|
412 |
-
L 301.814,70.676z" data-tags="place_of_worship" />
|
413 |
-
<glyph unicode="" d="M 476.109,367.36L 36.055,367.36 c-14.152,0-25.733-12.872-25.733-25.6c0-12.728, 11.581-25.59, 25.733-25.59l 6.216,0 l0-51.2 l 428.247,0 l0,51.2 l 5.591,0
|
414 |
-
c 14.162,0, 25.733,12.861, 25.733,25.59C 501.842,354.488, 490.271,367.36, 476.109,367.36z M 256.082,290.355c-7.107,0-12.861,5.929-12.861,13.23
|
415 |
-
s 5.755,13.23, 12.861,13.23c 7.117,0, 12.861-5.929, 12.861-13.23S 263.199,290.355, 256.082,290.355zM 42.271,162.58l 428.247,0 L 470.518,244.48 L 42.271,244.48 L 42.271,162.58 z M 256.082,217.61c 7.117,0, 12.861-5.919, 12.861-13.22c0-7.311-5.745-13.23-12.861-13.23
|
416 |
-
c-7.107,0-12.861,5.919-12.861,13.23C 243.21,211.692, 248.975,217.61, 256.082,217.61zM 42.271,91.955l0-26.47 l0-33.065 c0-7.27, 0.911-13.23, 7.987-13.23l 51.446,0 c 7.076,0, 10.281,5.96, 10.281,13.23l0,37.99 l 288.819,0 l0-37.99
|
417 |
-
c0-7.27, 2.58-13.23, 9.646-13.23l 51.456,0 c 7.055,0, 8.602,5.96, 8.602,13.23l0,33.065 l0,26.47 L 470.508,142.080 L 42.271,142.080 L 42.271,91.955 z M 256.082,118.405
|
418 |
-
c 7.117,0, 12.861-5.929, 12.861-13.22c0-7.322-5.745-13.22-12.861-13.22c-7.107,0-12.861,5.898-12.861,13.22
|
419 |
-
C 243.21,112.466, 248.975,118.405, 256.082,118.405z" data-tags="furniture_store" />
|
420 |
-
<glyph unicode="" d="M 365.158,177.521c 17.009,28.047, 26.952,60.908, 26.952,96.102c0,102.697-83.098,185.856-185.815,185.897
|
421 |
-
C 103.67,459.489, 20.48,376.32, 20.48,273.644c0-102.584, 83.2-185.743, 185.876-185.743c 35.226,0, 68.045,9.953, 96.092,26.962L 428.841-11.52L 491.52,51.19
|
422 |
-
L 365.158,177.521z M 206.336,158.669c-63.508,0.154-114.852,51.476-114.964,114.852C 91.494,337.029, 142.848,388.362, 206.336,388.506
|
423 |
-
c 63.478-0.164, 114.842-51.487, 114.975-114.985C 321.178,210.217, 269.793,158.822, 206.336,158.669zM 286.72,295.68L 225.28,295.68L 225.28,357.12L 184.32,357.12L 184.32,295.68L 122.88,295.68L 122.88,254.72L 184.32,254.72L 184.32,193.28L 225.28,193.28L 225.28,254.72L 286.72,254.72 z" data-tags="zoom-in-alt" />
|
424 |
-
<glyph unicode="" d="M 491.52,275.2L 307.2,275.2L 307.2,459.52L 204.8,459.52L 204.8,275.2L 20.48,275.2L 20.48,172.8L 204.8,172.8L 204.8-11.52L 307.2-11.52L 307.2,172.8L 491.52,172.8 z" data-tags="zoom-in" />
|
425 |
-
<glyph unicode="" d="M 348.16,367.36L 348.16,398.449 C 348.16,423.854, 326.564,449.28, 301.169,449.28l-85.432,0 C 190.351,449.28, 163.84,423.854, 163.84,398.449L 163.84,367.36 l-54.395,0 L 51.2,8.96l 411.515,0 l-59.167,358.4L 348.16,367.36 z
|
426 |
-
M 194.56,398.449C 194.56,407.962, 206.234,418.56, 215.736,418.56l 85.432,0 C 310.661,418.56, 317.44,407.962, 317.44,398.449L 317.44,367.36 L 194.56,367.36 L 194.56,398.449 z" data-tags="department_store" />
|
427 |
-
<glyph unicode="" d="M 259.43,231.199c0,0-49.551-39.864-49.551-72.090c0-14.428, 21.238-28.846, 49.551-28.846c 28.293,0, 49.531,14.418, 49.531,28.846
|
428 |
-
C 308.961,192.492, 259.43,231.199, 259.43,231.199zM 440.074,304.067c 2.867,35.103, 13.046,67.328, 30.966,96.86L 402.237,469.76c-21.729-18.719-46.49-29.082-74.547-30.915
|
429 |
-
c-25.702-2.324-50.063,2.56-72.97,14.694c-23.572-11.735-47.841-16.64-73.144-14.694c-26.163,2.345-49.787,11.622-70.932,28.068L 41.646,398.111
|
430 |
-
c 16.968-29.962, 26.419-61.307, 28.273-94.044c 0.881-15.073-3.42-35.809-13.066-62.638c-5.048-14.868-8.858-27.761-11.469-38.543
|
431 |
-
c-2.417-10.701-3.922-19.405-4.413-25.917c-0.358-28.57, 7.66-54.385, 24.095-77.312c 12.841-16.742, 34.017-35.236, 63.427-55.45
|
432 |
-
c 32.184-16.384, 57.078-27.013, 74.516-31.56c 4.987-2.335, 9.892-4.567, 14.459-6.717c 4.557-2.171, 9.431-4.301, 14.51-6.625
|
433 |
-
c 10.967-6.564, 18.668-13.691, 22.743-21.053c 4.966,7.956, 12.841,14.909, 23.327,21.053c 7.393,3.226, 13.629,6.031, 18.657,8.479
|
434 |
-
c 5.007,2.222, 8.755,3.871, 10.916,4.874c 3.727,1.853, 8.632,3.973, 14.531,6.308c 5.949,2.345, 13.332,5.212, 22.118,8.407
|
435 |
-
c 16.988,6.011, 29.379,11.704, 37.222,16.845c 28.529,20.214, 49.388,38.4, 62.648,54.682c 17.029,23.020, 25.293,48.937, 24.914,78.080
|
436 |
-
c-1.014,13.046-6.533,33.925-16.558,62.362C 442.941,267.039, 438.702,288.543, 440.074,304.067z M 259.43,101.427
|
437 |
-
c-62.536,0-120.32,51.651-120.32,115.354c0,43.264, 33.075,84.132, 42.465,100.936l 28.303-43.264l 49.551,72.090l 49.531-72.090l 28.344,43.264
|
438 |
-
c 9.359-16.804, 42.465-57.672, 42.465-100.936C 379.771,153.078, 321.976,101.427, 259.43,101.427z" data-tags="fire_station" />
|
439 |
-
<glyph unicode="" d="M 501.76,250.665L 266.24,362.076L 266.24,408.32L 296.96,408.32L 296.96,428.8L 266.24,428.8L 266.24,469.76L 245.76,469.76L 245.76,428.8L 215.040,428.8L 215.040,408.32L 245.76,408.32L 245.76,362.076L 81.326,284.201L 81.326,284.201L 81.326,284.201L 10.24,250.665L 10.24,234.24L 81.92,234.24L 81.92-21.76L 204.8-21.76L 204.8,131.84L 307.2,131.84L 307.2-21.76L 430.080-21.76L 430.080,234.24L 501.76,234.24 z" data-tags="church" />
|
440 |
-
<glyph unicode="" d="M 257.577,302.367c 40.479,0, 73.155,32.942, 73.155,73.554c0,40.53-32.666,73.359-73.155,73.359c-40.428,0-73.247-32.84-73.247-73.359
|
441 |
-
C 184.33,335.319, 217.16,302.367, 257.577,302.367zM 328.755,285.44c 33.495,0, 47.555-28.611, 47.555-28.611l 108.104-148.941c 4.475-6.646, 7.107-14.776, 7.107-23.552
|
442 |
-
c0-23.142-18.719-41.953-41.789-41.953c-5.519,0-10.865,1.198-15.555,3.021L 368.64,63.57L 368.64-1.28 L 143.36-1.28 l0,64.85 l-65.556-18.196
|
443 |
-
C 73.196,43.571, 67.891,42.342, 62.351,42.342c-23.050,0-41.861,18.739-41.861,41.882c0,8.765, 2.591,16.763, 7.229,23.429l 108.032,149.176
|
444 |
-
c0,0, 14.049,28.611, 47.401,28.611L 328.755,285.44 z M 256.061,43.899L 256.061,43.899l 84.439,28.058l-1.833,0.512c-58.419,17.121-36.024,94.495, 22.252,77.179
|
445 |
-
L 368.64,146.903l0,87.255 l-112.527-37.1L 143.36,234.158l0-87.255 l 7.721,2.755c 58.245,17.306, 80.876-60.058, 22.497-77.179l-2.048-0.512L 256.061,43.899
|
446 |
-
L 256.061,43.899z" data-tags="library" />
|
447 |
-
<glyph unicode="" d="M 261.908,388.475c 23.521-1.731, 44.093,15.032, 45.957,37.356c 1.884,22.436-15.667,42.066-39.188,43.796c-23.552,1.71-44.124-14.95-45.947-37.386
|
448 |
-
C 220.897,409.815, 238.459,390.226, 261.908,388.475zM 438.098,60.16l-14.213,122.88l-23.060,0 c 0.215,10.24, 0.184,11.377-0.522,17.592c-0.686,6.359-2.703,11.008-5.99,12.472
|
449 |
-
c 2.693,2.867, 4.485,6.513, 4.833,10.619c 0.522,6.472-2.509,12.524-7.578,16.128l-58.696,38.584l-43.213,81.367
|
450 |
-
c-7.158,10.65-19.282,19.241-33.915,20.47c-11.244,0.778-21.586-2.939-29.952-8.468l-85.75-66.376c-2.826-2.273-4.946-5.263-5.908-8.858
|
451 |
-
l-19.978-80.394C 113.981,215.409, 112.64,214.548, 112.64,213.791c0-0.010,0-0.020,0-0.031l-0.164,0 c-3.348,0-6.4-3.195-7.567-7.424
|
452 |
-
C 103.782,202.189, 102.4,196.71, 102.4,192.276C 102.4,189.082, 102.4,183.040, 102.4,183.040L 80.138,183.040 L 65.925,60.16l 57.436,0 l-25.18-40.294c-1.638-3.123-3.564-7.537-3.901-11.796
|
453 |
-
c-1.239-15.258, 10.639-28.518, 26.563-29.737c 11.377-0.758, 21.166,4.731, 27.116,13.496L 190.454,60.16l 5.56,0 l-0.87,7.547l 11.786,18.964
|
454 |
-
c 1.28,2.54, 5.345,8.755, 5.796,11.704l 14.397,62.566l 61.45-64.236l 19.292-96.573c 3.082-11.418, 12.933-20.838, 26.040-21.801
|
455 |
-
c 15.944-1.208, 29.901,10.045, 31.171,25.272c 0.113,1.905-0.225,3.338-0.174,5.612L 354.826,60.16l 18.207,0 L 438.098,60.16 z M 112.2,193.382
|
456 |
-
c 0.573,4.844, 2.386,7.598, 5.581,7.598c 0.42,0, 0.778,0.010, 1.198,0.020c 3.226-3.901, 8.018-6.574, 13.548-7.025
|
457 |
-
c 6.339-0.492, 12.032,2.243, 15.903,6.482c 0.86-0.727, 1.546-1.823, 2.017-3.338c 0.85-2.939, 1.341-6.308, 1.341-9.083
|
458 |
-
c0-1.659-0.082-4.997-0.195-4.997l-20.644,0 l-19.046,0 C 111.77,183.040, 111.811,189.624, 112.2,193.382z M 170.885,183.040l-12.134,0
|
459 |
-
c 0.256,10.24, 0.184,11.377-0.481,17.592c-0.573,5.325-2.079,9.441-4.465,11.551l 15.145,65.966l 29.87,23.112L 170.885,183.040z M 393.687,183.040L 373.043,183.040
|
460 |
-
l-19.077,0 c-0.164,0-0.113,6.584, 0.297,10.342c 0.532,4.844, 2.376,7.598, 5.581,7.598c 4.598,0, 8.765,0.143, 12.462,0.225
|
461 |
-
c 3.717,0.133, 8.786,0.317, 15.165,0.317c 2.447,0, 4.106-1.454, 5.028-4.413c 0.881-2.939, 1.352-6.308, 1.352-9.083
|
462 |
-
C 393.851,186.378, 393.759,183.040, 393.687,183.040z M 265.216,206.418l 19.251,81.265l 16.189-30.546c 1.28-2.099, 2.796-3.83, 4.792-5.458L 363.274,213.76l-8.735,0
|
463 |
-
c-3.348,0-4.577-3.195-5.734-7.424C 347.709,202.189, 348.16,196.71, 348.16,192.276C 348.16,189.082, 348.16,183.040, 348.16,183.040l-25.928,0 l-4.188-36.147L 265.216,206.418z" data-tags="shopping_mall" />
|
464 |
-
<glyph unicode="" d="M 471.040,183.040L 471.040-21.76L 317.44-21.76L 317.44,19.2L 184.32,19.2L 184.32-21.76L 40.96-21.76L 40.96,183.040 zM 378.358,220.365c-5.878,25.692-19.139,48.282-40.038,65.546C 318.075,302.735, 294.124,305.92, 266.342,316.16L 266.24,316.16 L 266.24,380.959
|
465 |
-
c0,0.287, 2.775,0.512, 5.366,1.444c 3.676,1.28, 7.148,2.755, 11.745,4.352c 4.516,1.526, 8.602,2.806, 12.861,3.707
|
466 |
-
c 4.178,0.993, 7.076,1.413, 9.062,1.413c 3.86,0, 8.745-0.614, 14.459-1.864c 5.816-1.413, 12.012-2.939, 18.309-4.669
|
467 |
-
c 6.564-1.987, 12.421-3.492, 18.104-4.772c 5.417-1.239, 9.953-1.751, 13.711-1.751C 375.839,378.808, 378.88,379.638, 389.12,381.46L 389.12,455.619
|
468 |
-
c-10.24-2.437-12.052-3.779-19.272-3.779c-3.758,0-8.407,0.573-13.834,1.946c-5.663,1.085-11.5,2.775-18.063,4.68
|
469 |
-
c-6.298,1.915-12.247,3.359-17.746,4.567c-5.56,1.321-9.175,1.956-13.107,1.956c-13.036,0-30.618-3.082-40.858-8.765L 266.24,469.76 l-20.48,0 l0-153.6 l-0.645,0
|
470 |
-
c-27.566-10.24-51.702-14.008-71.926-30.833c-20.5-17.285-33.812-38.41-40.11-64.113c0,0-19.63,2.785-19.63-17.695l 286.413,0
|
471 |
-
C 399.862,224, 378.358,220.365, 378.358,220.365z" data-tags="local_government" />
|
472 |
-
<glyph unicode="" d="M 483.645,60.16c0,0-74.045,0-166.205,0l0-40.735 L 317.44,19.2 c 40.96,0, 66.877,0, 66.877,0c 28.959,0, 41.513,0, 56.689,0l 44.339,0
|
473 |
-
C 499.149,19.2, 501.76,31.232, 501.76,31.232l0,9.933 C 501.76,41.165, 501.637,60.16, 483.645,60.16zM 460.657,68.25C 483.328,68.25, 501.76,86.702, 501.76,109.435c0,22.804-18.432,41.196-41.103,41.196c-22.641,0-41.021-18.401-41.021-41.196
|
474 |
-
C 419.635,86.712, 438.016,68.25, 460.657,68.25zM 374.088,70.4c 21.565,0, 38.912,15.196, 38.912,36.731c-0.010,21.494-17.418,32.768-38.82,32.932L 317.44,132.874L 317.44,70.4 L 374.088,70.4 L 374.088,70.4zM 189.676,337.326c 25.18,0, 45.548,20.48, 45.548,45.742C 235.223,408.33, 214.856,428.8, 189.676,428.8c-25.16,0-45.558-20.47-45.558-45.732
|
475 |
-
C 144.118,357.806, 164.516,337.326, 189.676,337.326zM 143.165,189.297c-0.113,0.215-0.297,0.338-0.41,0.594l-20.644,48.067L 122.081,142.080l 61.696,0 l 13.476,14.336l-36.547,14.070
|
476 |
-
C 152.044,173.742, 145.889,181.115, 143.165,189.297zM 156.242,193.608c 1.997-4.485, 5.693-8.12, 10.342-9.789l 70.42-26.102c 9.011-3.983, 19.538,0.154, 23.491,9.196
|
477 |
-
c 3.953,9.103-0.154,19.702-9.175,23.665l-64.973,24.535l-20.070,48.138l 13.087,4.874l 17.009-41.247L 245.76,208.568l0,50.401 l 26.214-15.596l 13.066-65.823
|
478 |
-
c 3.205-9.4, 13.353-14.346, 22.712-11.1c 9.267,3.215, 14.193,13.466, 11.008,22.825l-14.643,63.396c-0.963,3.553-3,6.656-5.755,8.98
|
479 |
-
c-7.506,8.315-45.466,50.76-48.169,53.596C 246.231,319.222, 237.169,326.4, 220.047,326.4l-61.44,0 c-34.918,0-41.636-35.635-34.499-53.76L 156.242,193.608zM 307.2,131.84L 30.382,131.84 C 20.306,131.84, 10.24,126.157, 10.24,113.654c0-2.898,0-8.202,0-8.202L 10.24,19.2 c0,0, 18.012,0, 23.859,0L 307.2,19.2 L 307.2,131.84 z" data-tags="spa" />
|
480 |
-
<glyph unicode="" d="M 419.84,285.44l-2.785,0 c-0.758,1.311-1.638,2.58-2.724,3.738L 296.12,415.826C 296.643,418.355, 296.96,420.977, 296.96,423.68C 296.96,443.474, 282.378,459.52, 264.376,459.52
|
481 |
-
c-6.943,0-30.3,0-37.243,0C 209.142,459.52, 194.56,443.474, 194.56,423.68c0-2.703, 0.328-5.325, 0.84-7.854L 77.189,289.178
|
482 |
-
C 76.114,288.020, 75.233,286.751, 74.465,285.44L 20.48,285.44 l0-71.68 l 20.48,0 l0-153.6 c0-28.283, 22.927-51.2, 51.2-51.2l 327.68,0 c 28.283,0, 51.2,22.917, 51.2,51.2L 471.040,213.76 l 20.48,0 l0,71.68 L 419.84,285.44 z M 227.144,387.84
|
483 |
-
c 6.943,0, 30.3,0, 37.243,0c 0.573,0, 1.096,0.154, 1.669,0.184L 361.789,285.44L 129.731,285.44 l 95.744,102.584C 226.038,387.994, 226.57,387.84, 227.144,387.84z M 133.12,70.4
|
484 |
-
c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 92.16,193.28 c0,11.264, 9.216,20.48, 20.48,20.48s 20.48-9.216, 20.48-20.48L 133.12,70.4 z M 225.28,70.4c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 184.32,193.28 c0,11.264, 9.216,20.48, 20.48,20.48s 20.48-9.216, 20.48-20.48L 225.28,70.4 z
|
485 |
-
M 327.68,70.4c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 286.72,193.28 c0,11.264, 9.216,20.48, 20.48,20.48s 20.48-9.216, 20.48-20.48L 327.68,70.4 z M 419.84,70.4c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 378.88,193.28 c0,11.264, 9.216,20.48, 20.48,20.48
|
486 |
-
s 20.48-9.216, 20.48-20.48L 419.84,70.4 z" data-tags="convenience_store" />
|
487 |
-
<glyph unicode="" d="M 292.669,269.629c0-34.499-28.559-34.499-43.95-34.499l-19.19,0 l0,65.219 l 24.115,0 C 267.131,300.349, 292.669,300.349, 292.669,269.629zM 440.084,304.067c 2.847,35.103, 13.015,67.318, 30.956,96.85L 402.237,469.76c-21.74-18.719-46.479-29.082-74.537-30.915
|
488 |
-
c-25.692-2.324-50.084,2.56-72.98,14.684c-23.562-11.735-47.831-16.64-73.134-14.684c-26.173,2.345-49.787,11.622-70.943,28.068L 41.646,398.1
|
489 |
-
c 16.968-29.952, 26.419-61.307, 28.283-94.034c 0.881-15.073-3.42-35.82-13.066-62.638C 51.814,226.56, 47.995,213.658, 45.394,202.885
|
490 |
-
c-2.406-10.701-3.912-19.405-4.413-25.917c-0.358-28.58, 7.66-54.385, 24.095-77.312c 12.841-16.742, 34.017-35.226, 63.427-55.45
|
491 |
-
c 32.174-16.384, 57.078-27.023, 74.516-31.549c 4.987-2.345, 9.892-4.588, 14.459-6.717c 4.547-2.191, 9.421-4.311, 14.51-6.625
|
492 |
-
c 10.967-6.574, 18.678-13.711, 22.733-21.064c 4.977,7.956, 12.851,14.909, 23.316,21.064c 7.393,3.215, 13.65,6.021, 18.668,8.479
|
493 |
-
c 5.018,2.202, 8.755,3.86, 10.926,4.874c 3.717,1.853, 8.602,3.963, 14.51,6.298c 5.97,2.345, 13.332,5.222, 22.129,8.397
|
494 |
-
c 16.998,6.031, 29.368,11.715, 37.233,16.855c 28.518,20.224, 49.367,38.4, 62.638,54.671c 17.019,23.030, 25.283,48.947, 24.904,78.090
|
495 |
-
c-1.004,13.046-6.523,33.925-16.548,62.372C 442.931,267.039, 438.692,288.543, 440.084,304.067z M 313.62,209.756
|
496 |
-
c-16.333-10.691-38.789-10.691-50.514-10.691l-32.205,0 l0-88.125 l-48.425,0 L 182.477,336.998 l 68.741,0 c 31.949,0, 58.665-2.058, 77.22-24.678
|
497 |
-
c 11.581-14.397, 13.537-30.751, 13.537-42.373C 341.955,243.62, 331.11,221.399, 313.62,209.756z" data-tags="police" />
|
498 |
-
<glyph unicode="" d="M 486.451,269.527C 484.076,398.94, 409.385,450.365, 406.323,452.413L 394.752,460.339l-11.633-7.905c-19.343-13.189-39.393-19.886-59.566-19.886
|
499 |
-
c-33.475,0-56.156,18.104-57.129,18.883l-13.025,10.506l-12.933-10.527c-0.942-0.768-23.654-18.872-57.108-18.872
|
500 |
-
c-20.183,0-40.223,6.687-59.587,19.917l-11.592,7.864l-11.674-7.926C 92.57,446.915, 23.030,395.295, 20.511,270.162
|
501 |
-
c-1.004-10.885, 28.908-216.842, 232.97-276.593C 475.392,58.737, 487.578,255.928, 486.451,269.527z M 61.604,267.049l 0.031-2.918
|
502 |
-
C 62.044,287.754, 65.341,316.16, 71.731,326.4l 363.407,0 c 6.42-10.24, 9.748-38.717, 10.117-62.505l 0.143,0.102c 0.809-6.595-7.311-192-191.918-229.222
|
503 |
-
C 88.207,71.25, 60.877,260.966, 61.604,267.049z" data-tags="route" />
|
504 |
-
<glyph unicode="" d="M 20.48,275.2L 491.52,275.2L 491.52,172.8L 20.48,172.8z" data-tags="zoom-out" />
|
505 |
-
<glyph unicode="" d="M 332.974-12.616L 260.557,203.52L 25.211,203.52L 477.798,457.513 z" data-tags="location-arrow" />
|
506 |
-
<glyph unicode="" d="M 256,480c-84.828,0-153.6-68.157-153.6-152.228c0-84.081, 153.6-359.782, 153.6-359.782s 153.6,275.702, 153.6,359.782C 409.6,411.843, 340.828,480, 256,480z
|
507 |
-
M 255.498,282.245c-26.184,0-47.401,21.043-47.401,46.981c0,25.958, 21.217,46.991, 47.401,46.991c 26.204,0, 47.421-21.033, 47.421-46.991
|
508 |
-
C 302.92,303.288, 281.702,282.245, 255.498,282.245z" data-tags="postal_code" />
|
509 |
-
<glyph unicode="" d="M 441.958,264.96L 419.84,264.96 l0,88.392 C 419.84,411.494, 361.513,469.76, 303.37,469.76l-97.085,0 C 148.173,469.76, 92.16,411.494, 92.16,353.352L 92.16,264.96 L 67.686,264.96 C 60.754,264.96, 51.2,254.085, 51.2,247.962l0-260.69
|
510 |
-
C 51.2-18.852, 60.754-21.76, 67.686-21.76l 374.272,0 c 6.953,0, 18.842,2.908, 18.842,9.032L 460.8,247.962 C 460.8,254.085, 448.911,264.96, 441.958,264.96z M 304.261,19.2l-98.826,0
|
511 |
-
l 20.736,102.062c-12.534,8.878-20.736,25.61-20.736,42.035c0,27.064, 22.129,50.115, 49.408,50.115c 27.279,0, 49.418-21.391, 49.418-48.435
|
512 |
-
c0-16.435-8.202-35.113-20.716-44.001L 304.261,19.2z M 348.16,264.96L 163.84,264.96 l0,88.392 C 163.84,379.75, 181.176,398.080, 207.268,398.080l 95.119,0 C 328.479,398.080, 348.16,379.75, 348.16,353.352L 348.16,264.96 z" data-tags="locksmith" />
|
513 |
-
<glyph unicode="" d="M 439.542,346.88L 389.12,346.88 L 389.12,400.394 C 389.12,438.651, 358.932,469.76, 320.573,469.76L 191.437,469.76 C 153.057,469.76, 122.88,438.651, 122.88,400.394L 122.88,346.88 L 72.448,346.88 C 38.083,346.88, 10.24,320.348, 10.24,286.085
|
514 |
-
l0-235.592 C 10.24,16.241, 38.083-11.52, 72.448-11.52l 367.094,0 C 473.897-11.52, 501.76,16.241, 501.76,50.504L 501.76,286.085 C 501.76,320.348, 473.897,346.88, 439.542,346.88z M 163.84,400.394
|
515 |
-
C 163.84,414.72, 177.070,428.8, 191.437,428.8l 129.137,0 C 334.899,428.8, 348.16,414.72, 348.16,400.394L 348.16,346.88 L 163.84,346.88 L 163.84,400.394 z M 368.64,121.6l-71.68,0 l0-71.68 l-81.92,0 l0,71.68 l-71.68,0 l0,81.92 l 71.68,0 l0,71.68 l 81.92,0 l0-71.68 l 71.68,0 L 368.64,121.6 z" data-tags="doctor" />
|
516 |
-
<glyph unicode="" d="M 491.745,207.084c-14.295-66.755-63.406-121.59-128.164-143.114c-19.866-6.615-40.448-9.964-61.184-9.964
|
517 |
-
c-83.446,0-157.225,53.146-183.603,132.239c-16.333,48.957-12.585,101.335, 10.547,147.497c 23.132,46.152, 62.884,80.558, 111.923,96.87
|
518 |
-
c 46.131,15.319, 96.225,12.759, 140.39-7.055l 9.574,18.053C 327.096,481.229, 247.214,490.711, 175.391,466.821C 110.438,445.225, 57.795,399.657, 27.156,338.534
|
519 |
-
c-30.638-61.133-35.594-130.519-13.967-195.379C 48.128,38.39, 145.848-32, 256.358-32c 27.464,0, 54.712,4.434, 81.009,13.169
|
520 |
-
c 98.028,32.604, 166.564,120.115, 174.612,222.966L 491.745,207.084zM 365.537,330.465L 314.194,426.557L 288.082,319.273L 181.289,298.281L 279.050,242.77L 262.236,132.219L 345.252,207.729L 448.123,158.372L 395.581,261.048L 478.771,341.35 z" data-tags="mosque" />
|
521 |
-
<glyph unicode="" d="M 352.645,300.268c 35.82,0, 64.983,28.682, 64.983,64.215C 417.628,400.005, 388.475,428.8, 352.645,428.8c-35.963,0-65.178-28.795-65.178-64.317
|
522 |
-
C 287.468,328.95, 316.692,300.268, 352.645,300.268zM 501.76,143.544l0,81.306 L 414.054,274.176c-14.858,7.455-31.375,9.984-47.882,6.502c-6.758-1.382-13.117-3.963-20.265-7.895
|
523 |
-
c-0.778-0.215-26.819-11.571-41.953-46.5L 243.558,106.138c0,0-59.505-11.397-84.408-16.148c-1.966-1.3-4.076-2.355-6.093-3.594l-15.411,55.101
|
524 |
-
c-6.38,22.405, 17.418,54.886, 18.309,56.207c 15.749,22.784, 20.060,52.797, 11.786,82.524c-7.537,26.88-24.699,49.541-47.043,62.29
|
525 |
-
c-17.48,9.82-37.13,12.524-54.968,7.67c-13.855-3.758-26.204-11.817-35.748-23.398c-0.123-0.113-7.383-10.752-7.383-10.752
|
526 |
-
c-12.841-22.354-15.8-50.371-8.376-77.394c 7.537-27.136, 24.504-49.705, 46.961-62.28l 5.376-2.816c 0.717-0.051, 37.704-14.961, 44.134-36.352
|
527 |
-
c-0.082-0.113, 9.708-35.092, 17.695-63.601c-2.048-0.881-4.014-1.946-6.083-2.765c 0.297-0.215, 0.85-0.553, 1.188-0.788
|
528 |
-
c-1.802-2.755-4.966-8.858-4.741-15.104c0-1.987, 0.164-3.973, 0.543-5.898c 3.41-17.664, 20.91-29.46, 38.789-25.866l 114.125,21.955
|
529 |
-
c0,0, 9.708,2.918, 13.865,5.847c 5.356,3.758, 9.39,11.643, 9.39,11.643l 29.993,59.628c0,0, 20.675-96.358, 21.074-98.14
|
530 |
-
c-0.348-0.266-2.028-2.099-4.762-4.905l 155.679,0 c-2.345,13.681-3.901,22.456-3.901,22.559c0,0.225-4.905,21.617-4.905,21.617
|
531 |
-
c 0.164-0.154-13.353,60.027-23.685,107.131c 16.466-9.421, 31.386-17.797, 32.215-18.248C 497.295,151.992, 499.067,148.623, 501.76,143.544z M 109.435,192.963
|
532 |
-
c-11.561-3.072-23.91-1.208-35.748,5.315c-16.486,9.216-29.225,26.368-34.683,47.063c-5.816,20.623-3.697,41.748, 5.693,58.030l 5.243,7.557
|
533 |
-
c 6.185,7.506, 13.681,12.524, 22.671,15.012c 28.713,7.711, 60.334-15.78, 70.554-52.47C 153.231,236.943, 138.158,200.694, 109.435,192.963z" data-tags="stadium" />
|
534 |
-
<glyph unicode="" d="M 30.72,418.56L 481.28,418.56L 481.28,367.36L 30.72,367.36zM 61.44,346.88l0-337.92 l 389.12,0 L 450.56,346.88 L 61.44,346.88 z M 327.68,254.72L 174.080,254.72 l0,30.72 l 153.6,0 L 327.68,254.72 z" data-tags="storage" />
|
535 |
-
<glyph unicode="" d="M 432.282,346.88l-58.102,0 l 58.46,56.054L 374.804,459.52l-81.859,0 l 58.644-56.044L 291.471,346.88l-69.519,0 l 59.781,56.054L 222.679,459.52l-83.261,0 l 58.644-56.044
|
536 |
-
L 137.861,346.88L 78.94,346.88 l 59.812,56.054L 79.585,459.52L 20.48,459.52 l0-471.040 l 471.040,0 L 491.52,459.52 l-57.774,0 L 491.52,403.159L 432.282,346.88z M 430.080,49.92L 81.92,49.92 l0,61.44 l 348.16,0 L 430.080,49.92 z M 430.080,162.56L 81.92,162.56 l0,61.44 l 348.16,0 L 430.080,162.56 z" data-tags="movie_theater" />
|
537 |
-
<glyph unicode="" d="M 419.84,336.64l-51.2,0 L 368.64,450.109 C 368.64,460.964, 359.475,469.76, 348.16,469.76s-20.48-8.796-20.48-19.651L 327.68,336.64 L 163.84,336.64 L 163.84,450.109 C 163.84,460.964, 154.675,469.76, 143.35,469.76
|
538 |
-
C 132.035,469.76, 122.88,460.964, 122.88,450.109L 122.88,336.64 L 71.68,336.64 c-5.663,0-10.24-8.899-10.24-14.326L 61.44,273.152 c0-58.972, 102.4-127.447, 102.4-222.167L 163.84,19.2 l 40.96,0 l0-40.96 l 81.92,0 l0,40.96 l 40.96,0 l0,31.785
|
539 |
-
c0,94.72, 102.4,163.205, 102.4,222.167l0,49.162 C 430.080,327.741, 425.503,336.64, 419.84,336.64 M 234.568,168.827C 235.233,170.977, 233.882,172.8, 231.537,172.8l-39.782,0
|
540 |
-
c-2.355,0-3.021,1.331-1.526,3.062c0,0, 81.971,104.028, 83.569,106.035c 1.208,1.905, 2.54,1.239, 2.12-0.952
|
541 |
-
c-0.635-2.775-18.135-73.748-18.135-73.748C 256.932,205.107, 258.161,203.52, 260.485,203.52l 39.803,0 c 2.345,0, 3.092-1.577, 1.659-3.359
|
542 |
-
c0,0-82.094-106.516-83.569-108.298c-1.485-1.782-2.857-1.239-2.109,1.792C 217.016,96.696, 234.568,168.827, 234.568,168.827" data-tags="electrician" />
|
543 |
-
<glyph unicode="" d="M 87.286,164.659c-20.255,0-36.71-16.558-36.71-36.905C 50.575,107.397, 67.041,90.88, 87.286,90.88c 20.296,0, 36.762,16.517, 36.762,36.884
|
544 |
-
C 124.047,148.101, 107.592,164.659, 87.286,164.659z M 87.286,108.739c-10.117,0-18.35,8.264-18.35,18.463c0,10.158, 8.233,18.442, 18.35,18.442
|
545 |
-
c 10.168,0, 18.401-8.284, 18.401-18.442C 105.697,117.002, 97.464,108.739, 87.286,108.739zM 410.286,164.659c-20.285,0-36.731-16.558-36.731-36.905c0-20.357, 16.435-36.884, 36.731-36.884c 20.275,0, 36.762,16.517, 36.762,36.884
|
546 |
-
C 447.048,148.101, 430.572,164.659, 410.286,164.659z M 410.286,108.739c-10.127,0-18.371,8.264-18.371,18.463
|
547 |
-
c 0.010,10.158, 8.243,18.442, 18.371,18.442c 10.158,0, 18.401-8.284, 18.401-18.442C 428.687,117.002, 420.454,108.739, 410.286,108.739zM 491.592,336.64L 168.561,336.64 c-5.601,0-10.168-4.567-10.168-10.209l0-92.59 l-20.347,0 l0,56.842 c0,5.652-4.557,10.209-10.179,10.209L 58.563,300.892
|
548 |
-
c-12.083,0-22.876-8.929-24.812-21.709l0,0.666 l-10.813-61.307l 0.020-0.215C 15.616,217.078, 10.24,210.698, 10.24,203.213c0-1.096, 0.123-2.222, 0.338-3.277
|
549 |
-
L 10.24,200.028l 15.258-68.966l 15.892,0 l0,0.625 c0,24.719, 20.224,44.739, 45.158,44.739c 24.914,0, 45.148-20.019, 45.148-44.739l0-0.625 l 232.714,0 l0,0.625
|
550 |
-
c0,24.719, 20.234,44.739, 45.128,44.739c 24.934,0, 45.169-20.019, 45.169-44.739c0-0.205,0-0.42-0.041-0.625l 0.041,0 L 501.76,131.062 L 501.76,326.431
|
551 |
-
C 501.76,332.063, 497.213,336.64, 491.592,336.64z M 102.431,284.303l0-50.463 l-61.030,0 l 7.629,42.813c 0.635,5.12, 5.089,8.899, 9.533,8.899l 43.868,0 L 102.431,284.303 z" data-tags="moving_company" />
|
552 |
-
<glyph unicode="" d="M 256,480c-84.828,0-153.6-68.157-153.6-152.228c0-84.081, 153.6-359.782, 153.6-359.782s 153.6,275.702, 153.6,359.782C 409.6,411.843, 340.828,480, 256,480z
|
553 |
-
M 255.498,282.245c-26.184,0-47.401,21.043-47.401,46.981c0,25.958, 21.217,46.991, 47.401,46.991c 26.204,0, 47.421-21.033, 47.421-46.991
|
554 |
-
C 302.92,303.288, 281.702,282.245, 255.498,282.245z" data-tags="postal_code_prefix" />
|
555 |
-
<glyph unicode="" d="M 256,469.76C 120.484,469.76, 10.24,359.516, 10.24,224c0-135.506, 110.244-245.76, 245.76-245.76c 135.506,0, 245.76,110.254, 245.76,245.76C 501.76,359.516, 391.506,469.76, 256,469.76z M 286.72,21.76L 286.72,111.36 l-61.44,0
|
556 |
-
l0-89.6 C 136.96,35.144, 67.144,104.96, 53.76,193.28L 143.36,193.28 l0,61.44 L 53.76,254.72 C 67.144,343.040, 136.96,412.856, 225.28,426.24L 225.28,336.64 l 61.44,0 L 286.72,426.24
|
557 |
-
C 375.040,412.856, 444.856,343.040, 458.24,254.72L 368.64,254.72 l0-61.44 l 89.6,0 C 444.856,104.96, 375.040,35.144, 286.72,21.76z" data-tags="crosshairs" />
|
558 |
-
<glyph unicode="" d="M 256-21.76C 120.484-21.76, 10.24,88.494, 10.24,224C 10.24,359.516, 120.484,469.76, 256,469.76c 135.506,0, 245.76-110.244, 245.76-245.76C 501.76,88.494, 391.506-21.76, 256-21.76z M 256,428.8
|
559 |
-
C 143.073,428.8, 51.2,336.927, 51.2,224c0-112.927, 91.873-204.8, 204.8-204.8c 112.927,0, 204.8,91.873, 204.8,204.8C 460.8,336.927, 368.927,428.8, 256,428.8zM 256.461,395.52C 256.461,395.52, 184.32,271.913, 184.32,234.24c0-3.983,0-16.548,0-20.48c0-37.663, 72.356-163.84, 72.356-163.84S 327.68,173.476, 327.68,211.139
|
560 |
-
c0,3.963,0,19.22,0,23.163C 327.68,271.974, 256.461,395.52, 256.461,395.52z M 256,183.040c-22.62,0-40.96,18.34-40.96,40.96c0,22.62, 18.34,40.96, 40.96,40.96c 22.62,0, 40.96-18.34, 40.96-40.96
|
561 |
-
C 296.96,201.38, 278.62,183.040, 256,183.040z" data-tags="compass" />
|
562 |
-
<glyph unicode="" d="M 254.433,200.776c 36.321,0, 53.156-27.546, 56.689-66.683c 0.829-9.359-0.010-23.009-1.229-38.82C 305.818,42.762, 301.128-21.76, 336.077-21.76
|
563 |
-
c 29.594,0, 44.759,56.73, 53.545,121.405c 8.458,64.020-0.522,95.877, 3.912,124.314c 8.407,53.862, 55.419,102.154, 40.899,170.834
|
564 |
-
c-8.049,38.103-29.041,56.013-49.807,63.56c-47.862,17.418-78.787-16.148-130.191-16.148c-51.395,0-82.299,33.567-130.181,16.148
|
565 |
-
c-20.756-7.537-41.759-25.457-49.828-63.56c-14.49-68.68, 32.512-116.961, 40.95-170.834c 4.393-28.426-4.536-60.293, 3.912-124.314
|
566 |
-
C 128.051,34.97, 143.247-21.76, 172.81-21.76c 34.929,0, 30.269,64.522, 26.194,117.033c-1.188,15.821-2.089,29.471-1.239,38.83
|
567 |
-
C 201.288,173.23, 218.368,200.776, 254.433,200.776z" data-tags="dentist" />
|
568 |
-
<glyph unicode="" d="M 201.38,345.129l-75.069,0 L 126.31,419.133 l 20.47,0 L 146.78,459.52 L 10.24,459.52 l0-40.387 l 20.48,0 l0-114.381 c0-29.737, 24.453-53.832, 54.61-53.832l 116.050,0 l0-20.193 l 40.97,0 L 242.35,365.302 l-40.97,0
|
569 |
-
L 201.38,345.129 zM 481.26,176.906l0,114.381 c0,29.727-24.443,53.832-54.569,53.832L 310.62,345.119 l0,20.173 l-40.97,0 l0-134.584 l 40.97,0 l0,20.204 l 75.080,0 l0-74.004 l-20.449,0
|
570 |
-
l0-40.387 L 501.76,136.52 l0,40.387 L 481.26,176.906 zM 470.743,25.385c0,20.419-37.253,77.486-37.253,77.486s-37.816-57.068-37.816-77.486c0-20.378, 16.814-36.905, 37.54-36.905
|
571 |
-
C 453.929-11.52, 470.743,5.007, 470.743,25.385z" data-tags="plumber" />
|
572 |
-
<glyph unicode="" d="M 94.925,285.44l 40.1,0 l 6.164-184.32L 89.59,101.12 L 94.925,285.44L 94.925,285.44z M 61.44,90.88l 389.12,0 l0-20.48 l 30.72,0 l0-30.72 l 20.48,0 l0-20.48 L 10.24,19.2 l0,20.48 l 20.48,0 l0,30.72 l 30.72,0 L 61.44,90.88 L 61.44,90.88z M 471.040,338.565L 256.020,428.8L 40.96,338.565L 40.96,326.4
|
573 |
-
l 430.080,0 L 471.040,338.565 L 471.040,338.565z M 81.92,316.16l 348.16,0 l0-20.48 L 81.92,295.68 L 81.92,316.16 z M 376.177,285.44l 40.079,0 l 6.216-184.32l-51.671,0 L 376.177,285.44z M 282.46,285.44l 40.079,0 l 6.144-184.32l-51.62,0 L 282.46,285.44
|
574 |
-
L 282.46,285.44z M 188.723,285.44l 40.090,0 l 6.103-184.32l-51.599,0 L 188.723,285.44z" data-tags="museum" />
|
575 |
-
<glyph unicode="" d="M 277.668,202.957C 275.313,204.39, 276.48,205.711, 266.24,206.93l0-29.665 c0,0.287, 4.424,0.635, 5.612,1.044
|
576 |
-
c 7.598,2.662, 11.407,7.629, 11.407,14.858C 283.259,197.356, 281.385,200.653, 277.668,202.957zM 231.578,251.361c0-4.557, 2.079-7.987, 6.216-10.24c 1.587-0.891, 4.26-1.884, 7.956-2.959l0,28.068
|
577 |
-
c-3.011-0.707-5.652-1.772-7.875-3.226C 233.677,260.219, 231.578,256.328, 231.578,251.361zM 256,326.4c-50.903,0-92.16-45.855-92.16-102.4c0-56.535, 41.257-102.4, 92.16-102.4c 50.903,0, 92.16,45.865, 92.16,102.4C 348.16,280.545, 306.903,326.4, 256,326.4z M 295.465,166.103
|
578 |
-
C 288.512,160.164, 276.48,156.529, 266.24,155.156L 266.24,142.080 l-20.48,0 l0,13.312 c-10.691,1.454-19.548,3.072-26.501,8.55C 209.613,171.54, 204.8,183.040, 204.8,193.28l 25.477,0
|
579 |
-
c 0.829,0, 2.447-8.202, 4.864-11.1c 2.509-2.98, 6.072-3.328, 10.619-4.588l0,34.867 c-12.462,2.877-21.146,5.98-25.969,9.318
|
580 |
-
c-8.612,5.888-12.913,15.114-12.913,27.648c0,11.438, 4.209,20.941, 12.636,28.508c 6.431,5.786, 15.196,9.339, 26.245,10.711L 245.76,305.92 l 20.48,0 l0-17.818
|
581 |
-
c 10.24-1.526, 17.162-6.277, 23.552-11.018C 299.407,269.947, 306.176,264.96, 306.637,244.48l-25.661,0 c-0.481,10.24-5.622,14.664-12.001,17.9
|
582 |
-
C 268.636,262.543, 266.24,264.356, 266.24,264.499l0-32.184 l 9.236-1.782c 9.82-2.314, 18.903-5.407, 23.798-9.267c 7.619-6.021, 10.568-14.715, 10.568-26.081
|
583 |
-
C 309.862,183.511, 304.476,173.824, 295.465,166.103zM 440.32,357.12L 71.68,357.12 L0,357.12 l0-71.68 l0-122.88 l0-71.68 l 71.68,0 l 368.64,0 l 71.68,0 l0,71.68 L 512,285.44 l0,71.68 L 440.32,357.12 z M 491.52,159.785c-23.839-6.584-41.841-24.566-48.425-48.425L 68.905,111.36
|
584 |
-
c-6.595,23.839-24.576,41.841-48.425,48.425L 20.48,288.215 c 23.849,6.595, 41.83,24.576, 48.425,48.425l 374.426,0 c 6.881-23.112, 25.078-41.308, 48.189-48.189L 491.52,159.785 z
|
585 |
-
" data-tags="finance" />
|
586 |
-
<glyph unicode="" d="M 303.278,480L 71.68,480 l0-512 l 112.64,0 L 184.32,131.84 l 118.958,0 c 127.631,0, 177.091,101.079, 177.091,184.525C 480.369,399.38, 430.909,480, 303.278,480z M 272.425,234.24L 184.32,234.24 L 184.32,387.84 l 88.105,0
|
587 |
-
c 52.357,0, 99-11.551, 99-76.667C 371.415,245.658, 324.782,234.24, 272.425,234.24zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76z" data-tags="parking" />
|
588 |
-
<glyph unicode="" d="M 185.344,228.68L 91.095,281.825L 123.853,339.272L 218.122,286.157 zM 373.453,179.651L 214.2,269.353L 197.827,240.599L 357.059,150.886 zM 392.786,168.745L 376.361,140.012L 458.486,93.788L 474.911,122.491 zM 370.668,140.012c-1.26-2.243-4.7-2.775-7.69-1.137l0,0c-2.98,1.679-4.301,4.864-3.031,7.137l 19.2,33.638
|
589 |
-
c 1.321,2.284, 4.762,2.836, 7.721,1.137l0,0c 2.939-1.679, 4.27-4.936, 3-7.219L 370.668,140.012zM 491.827,121.59c-3.267,1.802-6.871,2.642-10.353,2.54l-21.002-36.782c 1.69-3.082, 4.209-5.775, 7.526-7.578
|
590 |
-
c 9.257-5.243, 20.9-2.222, 25.989,6.676l 5.386,9.523C 504.474,104.929, 501.115,116.347, 491.827,121.59zM 227.236,297.226c-2.468-4.465-8.090-5.96-12.544-3.502l-82.493,46.51c-4.465,2.478-5.97,8.059-3.471,12.524l0,0
|
591 |
-
c 2.509,4.383, 8.141,5.949, 12.595,3.42l 82.473-46.449C 228.219,307.2, 229.796,301.609, 227.236,297.226L 227.236,297.226zM 238.797,317.42c-2.54-4.454-8.161-5.96-12.564-3.482l-82.524,46.5c-4.434,2.478-5.99,8.069-3.451,12.462l0,0
|
592 |
-
c 2.478,4.454, 8.11,6.001, 12.595,3.492l 82.493-46.459C 239.8,327.424, 241.316,321.823, 238.797,317.42L 238.797,317.42zM 169.083,195.113c-2.54-4.403-8.161-5.898-12.585-3.42l-82.555,46.51c-4.424,2.458-5.97,8.059-3.461,12.524l0,0
|
593 |
-
c 2.509,4.321, 8.212,5.949, 12.585,3.42l 82.514-46.51C 170.015,205.169, 171.551,199.567, 169.083,195.113L 169.083,195.113zM 180.613,215.378c-2.509-4.454-8.131-5.949-12.636-3.43L 85.484,258.406c-4.403,2.529-5.97,8.12-3.471,12.524l0,0
|
594 |
-
c 2.55,4.444, 8.172,5.949, 12.605,3.43l 82.483-46.459C 181.524,225.382, 183.122,219.771, 180.613,215.378L 180.613,215.378zM 42.179,132.649L 187.628,132.649L 187.628,115.927L 42.179,115.927zM 219.392,97.772c-0.932,5.581-5.755,9.861-11.622,9.861L 22.077,107.633 c-5.857,0-10.711-4.28-11.622-9.861L 10.24,97.772 l0-27.382 l 209.367,0 l0,27.382
|
595 |
-
L 219.392,97.772 z" data-tags="courthouse" />
|
596 |
-
<glyph unicode="" d="M 419.84,469.76L 92.16,469.76 C 69.632,469.76, 51.2,451.328, 51.2,428.8l0-409.6 c0-22.528, 18.432-40.96, 40.96-40.96l 327.68,0 c 22.528,0, 40.96,18.432, 40.96,40.96L 460.8,428.8 C 460.8,451.328, 442.368,469.76, 419.84,469.76z M 174.080,60.16c0-11.264-9.216-20.48-20.48-20.48l-40.96,0
|
597 |
-
c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 174.080,60.16 z M 174.080,142.080c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0
|
598 |
-
c 11.264,0, 20.48-9.216, 20.48-20.48L 174.080,142.080 z M 174.080,224c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 174.080,224 z M 296.96,60.16c0-11.264-9.216-20.48-20.48-20.48
|
599 |
-
l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 296.96,60.16 z M 296.96,142.080c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0
|
600 |
-
c 11.264,0, 20.48-9.216, 20.48-20.48L 296.96,142.080 z M 296.96,224c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 296.96,224 z M 419.84,60.16c0-11.264-9.216-20.48-20.48-20.48
|
601 |
-
l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,60.16 z M 419.84,142.080c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0
|
602 |
-
c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,142.080 z M 419.84,224c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,224 z M 419.84,316.16c0-11.264-9.216-20.48-20.48-20.48
|
603 |
-
L 112.64,295.68 c-11.264,0-20.48,9.216-20.48,20.48L 92.16,398.080 c0,11.264, 9.216,20.48, 20.48,20.48l 286.72,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,316.16 z" data-tags="accounting" />
|
604 |
-
<glyph unicode="" d="M 409.6,285.44l0-40.96 L 112.64,244.48 l0,40.96 L 409.6,285.44 M 419.84,295.68L 102.4,295.68 l0-61.44 l 317.44,0 L 419.84,295.68 L 419.84,295.68zM 261.755,449.628L0,264.96l 61.44,0 l0-36.936 L 61.44,39.68 l 40.96,0 L 102.4,193.28 l 81.92,0 l0-153.6 l 26.931,0 L 460.8,39.68 l0,8.98 L 460.8,228.024 L 460.8,264.96 l 51.2,0 L 261.755,449.628z M 430.080,101.12L 235.52,101.12 l0,92.16 l 194.56,0 L 430.080,101.12 z M 430.080,224L 92.16,224 l0,81.92 l 337.92,0 L 430.080,224
|
605 |
-
z" data-tags="store" />
|
606 |
-
<glyph unicode="" d="M 512-32l-0.154,256.604c0,141.117-114.545,255.447-255.662,255.447c-141.117,0-255.662-114.412-255.662-255.539l 2.058-256.87L 61.44-32.215
|
607 |
-
l0,256.717 C 61.44,334.49, 146.043,423.639, 256,423.639c 109.978,0, 194.56-89.16, 194.56-199.148L 450.56-32 L 512-32 zM 339.937,60.918c0,0.276-0.297,0.778-0.942,1.72c0,0.266, 0.164,0.461, 0.492,0.635c 0.266,0.143, 0.451,0.307, 0.451,0.635
|
608 |
-
c 8.806,3.635, 16.804,8.090, 23.951,13.414c 7.148,5.345, 11.325,13.169, 13.804,23.511C 377.969,102.031, 378.88,104.817, 378.88,109.066L 378.88,322.601
|
609 |
-
c0,5.151-0.911,10.496-3.963,15.933c-3.031,5.53-6.523,10.476-11.162,14.868c-4.495,4.352-9.431,7.383-15.073,10.301
|
610 |
-
C 343.050,366.592, 337.787,367.36, 332.595,367.36L 317.44,367.36 L 194.56,367.36 l-14.766,0 c-4.874,0-10.117-0.686-15.77-3.43c-5.642-2.734-10.834-5.908-15.524-10.189
|
611 |
-
c-4.7-4.229-8.172-8.858-11.223-14.152C 134.267,334.193, 133.12,329.165, 133.12,323.942l0-216.719 c0-3.615, 0.553-7.455, 2.335-11.366
|
612 |
-
c 1.833-3.983, 3.901-7.7, 6.636-11.141c 2.744-3.564, 5.622-6.769, 8.827-9.636c 3.195-2.888, 6.226-5.243, 9.298-7.045
|
613 |
-
c 1.485-0.625, 4.127-1.577, 7.956-2.775c 3.779-1.219, 5.519-1.946, 5.233-2.519L 110.889-32l 36.465,0 l 45.65,61.44L 318.976,29.44 l 45.588-61.44l 36.925,0
|
614 |
-
L 339.937,60.918z M 204.8,346.88c0,5.632, 4.608,10.24, 10.24,10.24l 81.92,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-10.24 c0-5.632-4.608-10.24-10.24-10.24l-81.92,0 c-5.632,0-10.24,4.608-10.24,10.24L 204.8,346.88 z M 164.495,296.858
|
615 |
-
c 1.362,2.888, 2.427,5.509, 4.547,7.977c 2.161,2.437, 4.321,5.939, 7.199,7.465C 179.118,313.836, 181.77,316.16, 184.812,316.16L 194.56,316.16 l 122.88,0 l 9.267,0
|
616 |
-
c 2.734,0, 5.448-2.202, 8.202-3.359c 2.744-1.229, 5.243-3.717, 7.547-5.827c 2.273-2.12, 3.174-4.833, 4.588-7.26
|
617 |
-
C 348.385,297.339, 348.16,294.328, 348.16,291.594l0-48.374 c0-2.765, 0.133-5.335-1.362-7.936c-1.516-2.662-3.052-4.956-5.509-6.932
|
618 |
-
c-2.447-1.935-4.772-2.437-7.506-3.615C 331.039,223.447, 328.52,224, 325.816,224L 185.723,224 c-0.338,0-1.096-0.952-2.304-0.707
|
619 |
-
c-1.208,0.328-2.15,0.092-2.765,0.399c-5.151,0.901-8.315,3.369-12.288,7.936C 164.424,236.227, 163.84,240.916, 163.84,246.405l0,41.513
|
620 |
-
C 163.84,290.959, 163.144,293.949, 164.495,296.858z M 203.274,99.482c-4.7-4.864-10.588-7.291-17.551-7.291c-6.994,0-12.708,2.427-17.132,7.291
|
621 |
-
c-4.424,4.854-6.615,10.834-6.615,17.807c0,6.39, 2.304,11.93, 6.851,16.63c 4.557,4.731, 10.199,7.096, 16.896,7.096
|
622 |
-
c 6.963,0, 12.841-2.243, 17.551-6.584c 4.721-4.485, 7.086-10.26, 7.086-17.623C 210.36,110.111, 207.995,104.325, 203.274,99.482z M 307.753,99.482
|
623 |
-
c-4.69,4.854-7.055,10.834-7.055,17.807c0,7.025, 2.488,12.667, 7.516,17.152c 5.048,4.342, 10.885,6.584, 17.613,6.584
|
624 |
-
c 6.943,0, 12.657-2.365, 17.060-7.096c 4.434-4.7, 6.646-10.24, 6.646-16.63c0-6.984-2.263-12.964-6.871-17.807
|
625 |
-
c-4.547-4.864-10.332-7.291-17.336-7.291C 318.331,92.191, 312.494,94.618, 307.753,99.482z" data-tags="subway_station" />
|
626 |
-
<glyph unicode="" d="M 122.88,469.76L 215.040,469.76L 215.040,398.080L 122.88,398.080zM 314.604,174.623c-8.94,0-17.644,9.124-17.644,18.125L 296.96,377.6 l 145.275,0 l 59.689-254.751L 501.76,107.735L 501.76-5.478 c0-8.704-7.24-16.282-15.862-16.282
|
627 |
-
L 348.467-21.76 C 339.937-21.76, 337.92-14.182, 337.92-5.478L 337.92,172.8 l-20.48,0 M 197.437,174.418c 8.868,0, 17.603,8.796, 17.603,17.859L 215.040,377.6 L 69.857,377.6 L 10.097,122.706L 10.24,107.264l0-113.183 C 10.24-14.664, 17.48-21.76, 26.092-21.76l 137.267,0
|
628 |
-
C 172.104-21.76, 174.080-14.664, 174.080-5.919L 174.080,172.8 l 20.48,0 M 235.52,377.6L 276.48,377.6L 276.48,203.52L 235.52,203.52zM 296.96,469.76L 399.36,469.76L 399.36,398.080L 296.96,398.080z" data-tags="natural_feature" />
|
629 |
-
<glyph unicode="" d="M 261.673,109.599c 36.874-172.145, 244.931-31.222, 38.298,88.689c 227.738-132.178, 228.28,183.46, 0.461,51.384
|
630 |
-
c 227.82,132.065-44.206,289.946-44.257,25.692c 0.051,264.253-272.015,106.496-44.308-25.692c-227.707,132.198-227.973-183.45-0.195-51.364
|
631 |
-
c-206.746-119.849, 0.84-260.936, 37.724-88.443L 261.673,109.599z M 228.772,223.969c0,15.217, 12.268,27.525, 27.382,27.525
|
632 |
-
c 15.124,0, 27.372-12.308, 27.372-27.525c0-15.196-12.247-27.525-27.372-27.525C 241.050,196.454, 228.772,208.773, 228.772,223.969z" data-tags="florist" />
|
633 |
-
<glyph unicode="" d="M 500.675,324.823L 460.38,8.96L 324.28,8.96 l-40.131,317.44l 166.154,0 l 32.84,113.428L 501.76,434.217l-31.508-109.158L 500.675,324.823zM 264.909,142.080c0,0, 5.089,40.96-65.485,40.96L 87.030,183.040 c-70.472,0-65.485-40.96-65.485-40.96L 264.909,142.080 zM 21.545,49.92c0,0-4.987-40.96, 65.485-40.96l 112.404,0 c 70.574,0, 65.485,40.96, 65.485,40.96L 21.545,49.92 zM 254.351,70.4c 11.551,0, 20.879,11.407, 20.879,25.59c0,14.264-9.329,25.61-20.879,25.61L 31.13,121.6
|
634 |
-
C 19.63,121.6, 10.24,110.254, 10.24,95.99C 10.24,81.807, 19.63,70.4, 31.13,70.4L 254.351,70.4 z" data-tags="food" />
|
635 |
-
<glyph unicode="" d="M-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76zM 481.28,387.84L 327.68,387.84 c0,0-10.24-81.92, 10.24-163.84c 8.233-13.722, 28.57-21.115, 51.2-22.989L 389.12,101.12 l-3.41,0 L 348.16,70.4l 112.64,0 l-36.7,30.72L 419.84,101.12 l0,100.639
|
636 |
-
c 21.709,2.816, 41.605,10.383, 51.2,22.241C 491.52,295.68, 481.28,387.84, 481.28,387.84z M 471.040,326.4L 337.92,326.4 l0,51.2 l 133.12,0 L 471.040,326.4 zM 220.16,101.12L 163.84,101.12 l0,87.040 L 276.48,357.12L 10.24,357.12 l 112.64-168.96L 122.88,101.12 L 66.56,101.12 C 58.071,101.12, 51.2,94.239, 51.2,85.76S 58.071,70.4, 66.56,70.4l 153.6,0 c 8.489,0, 15.36,6.881, 15.36,15.36
|
637 |
-
S 228.649,101.12, 220.16,101.12z" data-tags="night_club" />
|
638 |
-
<glyph unicode="" d="M 256,469.76l 72.52-123.965L 471.040,345.764l-71.25-121.754L 471.040,102.216l-142.5-0.020L 256-21.76l-72.53,123.955L 40.96,102.216l 71.25,121.795L 40.96,345.764
|
639 |
-
l 142.52,0.031L 256,469.76z M 163.041,223.898L 209.009,142.080l 93.85,0 l 46.090,81.818L 302.868,305.92l-93.706,0 L 163.041,223.898z M 353.679,142.080l 41.38,0 l-20.675,35.359
|
640 |
-
L 353.679,142.080z M 116.91,142.080l 41.39,0 l-20.705,35.369L 116.91,142.080z M 235.428,346.88l 41.39,0 l-20.695,35.348L 235.428,346.88z M 374.385,270.582L 395.059,305.92l-41.38,0
|
641 |
-
L 374.385,270.582z M 137.595,270.561L 158.29,305.92l-41.39,0 L 137.595,270.561z M 256.123,65.792L 276.818,101.12L 235.418,101.12 L 256.123,65.792z" data-tags="synagogue" />
|
642 |
-
<glyph unicode="" d="M 467.958,232.755l-80.794,136.12C 383.949,374.856, 376.187,377.6, 369.541,377.6L 296.96,377.6 L 296.96,439.040 c0,11.264-9.216,20.48-20.48,20.48l-51.2,0 c-11.264,0-20.48-9.216-20.48-20.48l0-61.44 l-61.030,0
|
643 |
-
c-6.656,0-14.746-2.744-17.961-8.724L 44.698,231.68C 31.375,231.68, 20.48,221.573, 20.48,207.903l0-124.303 C 20.48,69.929, 31.375,60.16, 44.698,60.16L 71.68,60.16 l0-38.707
|
644 |
-
C 71.68,0.932, 85.279-11.52, 105.257-11.52l 12.114,0 C 137.349-11.52, 153.6,0.932, 153.6,21.453L 153.6,60.16 l 204.8,0 l0-38.707 c0-20.521, 17.551-32.973, 37.53-32.973l 12.124,0
|
645 |
-
C 428.032-11.52, 440.32,0.932, 440.32,21.453L 440.32,60.16 l 28.293,0 C 481.925,60.16, 491.52,69.929, 491.52,83.599L 491.52,207.903 C 491.52,221.573, 481.28,232.755, 467.958,232.755z M 87.091,133.325
|
646 |
-
c-16.722,0-30.29,13.906-30.29,31.068c0,17.172, 13.558,31.078, 30.29,31.078s 30.28-13.906, 30.28-31.078
|
647 |
-
C 117.371,147.231, 103.823,133.325, 87.091,133.325z M 105.257,234.24l 55.132,96.020C 163.379,336.384, 171.274,336.64, 177.93,336.64l 157.45,0
|
648 |
-
c 6.656,0, 14.551-0.256, 17.531-6.38L 408.054,234.24L 105.257,234.24 z M 426.209,133.325c-16.712,0-30.28,13.906-30.28,31.068
|
649 |
-
c0,17.172, 13.568,31.078, 30.28,31.078c 16.722,0, 30.29-13.906, 30.29-31.078C 456.499,147.231, 442.931,133.325, 426.209,133.325z" data-tags="taxi_stand" />
|
650 |
-
<glyph unicode="" d="M 499.292,395.735C 496.814,406.876, 496.66,408.32, 471.644,408.32l-25.149,0 l-5.028,13.814c-6.636,20.040-28.938,39.137-51.159,44.708
|
651 |
-
c-12.861,3.215-58.675,3.779-170.486,3C 79.258,468.859, 65.71,468.060, 51.804,461.804C 20.675,447.816, 3.523,412.549, 12.718,381.491
|
652 |
-
c 6.42-21.647, 19.917-37.673, 39.086-46.285c 13.896-6.246, 27.443-6.902, 168.008-7.875c 111.8-0.788, 157.624,0.102, 170.476,3.328
|
653 |
-
c 22.292,5.581, 44.534,25.364, 51.231,45.588c 5.048,15.206, 5.274,15.36, 21.76,14.275l 16.64-1.096l 1.106-52.49l 1.096-52.48l-48.773-11.52
|
654 |
-
c-26.788-6.339-60.344-14.438-74.547-18.012c-14.193-3.564-48.589-11.93-76.431-18.586l-50.627-12.114l-0.010-26.583
|
655 |
-
c-0.010-26.419, 2.304-26.665-13.476-39.854L 204.8,144.527l0-83.149 l0,0L 204.8-21.76 l 34.857,0 L 276.48-21.76 l0,83.139 l0,83.149 l-14.653,13.435
|
656 |
-
c-15.626,13.066-15.34,14.019-14.152,34.12l 1.546,20.664l 18.063,4.495c 9.841,2.488, 41.185,10.107, 69.581,16.978
|
657 |
-
c 28.396,6.851, 77.148,18.616, 108.288,26.153L 501.76,274.053l0,54.559 C 501.76,358.595, 500.644,389.55, 499.292,395.735z M 253.696,22.927
|
658 |
-
c0-8.622-1.628-10.404-10.394-11.315c-11.039-1.126-15.811,4.342-13.455,15.401c 0.922,4.311, 4.721,6.175, 12.585,6.175
|
659 |
-
C 252.426,33.178, 253.696,32.010, 253.696,22.927z" data-tags="painter" />
|
660 |
-
<glyph unicode="" d="M 354.724,92.856c0,0.348-0.399,1.065-1.157,2.212c0,0.328, 0.215,0.625, 0.584,0.829c 0.358,0.215, 0.584,0.44, 0.584,0.829
|
661 |
-
c 10.762,4.444, 20.541,9.943, 29.297,16.425c 8.745,6.554, 14.602,16.118, 17.623,28.764c 0.317,1.495, 1.116,4.905, 2.202,10.117L 403.855,413.368
|
662 |
-
c0,6.308-1.884,12.851-5.601,19.507c-3.717,6.769-8.356,12.82-13.978,18.196c-5.56,5.325-11.756,9.841-18.678,13.425
|
663 |
-
C 358.676,468.019, 352.082,469.76, 345.743,469.76L 158.71,469.76 c-5.97,0-12.411-1.638-19.302-4.987c-6.912-3.359-13.251-7.649-18.985-12.872
|
664 |
-
c-5.755-5.171-10.516-11.059-14.234-17.541c-3.727-6.605-5.601-12.974-5.601-19.354l0-265.226 c0-4.465, 1.178-9.124, 3.348-13.957
|
665 |
-
c 2.253-4.854, 5.038-9.39, 8.376-13.629c 3.338-4.362, 7.014-8.264, 10.926-11.776s 7.711-6.42, 11.448-8.643
|
666 |
-
c 1.802-0.758, 5.11-1.925, 9.8-3.41c 4.588-1.475, 6.738-2.57, 6.39-3.287L 74.322-21.105l 44.657,0 l 55.88,80.988l 154.163,0 l 55.818-80.988L 430.080-21.105
|
667 |
-
L 354.724,92.856z M 207.811,447.447c0,1.874, 0.891,3.789, 2.796,5.888c 1.833,2.038, 3.686,3.021, 5.581,3.021l 71.496,0
|
668 |
-
c 0.717,0, 2.263-0.717, 4.485-2.181c 2.202-1.495, 3.318-2.98, 3.318-4.465l0-27.361 c0-1.874-0.942-3.594-2.775-5.018
|
669 |
-
c-1.884-1.536-3.584-2.314-5.018-2.314l-72.038,0 c-1.167,0.778-1.874,1.331-2.273,1.772c-1.075,0.717-2.324,1.7-3.615,3.082
|
670 |
-
c-1.311,1.249-1.956,2.621-1.956,4.106L 207.811,447.447 z M 135.752,370.934c0,3.717, 0.881,7.363, 2.529,10.916c 1.659,3.533, 3.82,6.758, 6.42,9.779
|
671 |
-
c 2.621,2.99, 5.693,5.335, 9.196,7.209c 3.564,1.884, 7.219,2.806, 10.936,2.806l 173.701,0 c 3.297,0, 6.656-0.778, 10.004-2.191
|
672 |
-
c 3.359-1.495, 6.42-3.584, 9.236-6.164C 360.581,390.707, 362.783,387.84, 364.483,384.87c 1.659-2.908, 2.478-6.103, 2.478-9.452l0-59.218
|
673 |
-
c0-3.359-0.901-6.533-2.765-9.728c-1.864-3.246-4.28-6.052-7.26-8.468c-3.021-2.376-6.124-4.342-9.503-5.775
|
674 |
-
c-3.338-1.587-6.697-2.253-10.025-2.253L 165.949,289.976 c-0.41,0-1.341,0.174-2.826,0.502c-1.475,0.389-2.621,0.758-3.369,1.157
|
675 |
-
c-6.298,1.085-11.868,4.454-16.722,10.056c-4.854,5.591-7.281,11.715-7.281,18.401L 135.752,370.934 z M 187.453,140.268
|
676 |
-
c-5.765-5.949-12.984-8.919-21.504-8.919c-8.571,0-15.565,2.97-20.992,8.919c-5.386,5.939-8.079,13.251-8.079,21.821
|
677 |
-
c0,7.813, 2.806,14.582, 8.407,20.337c 5.571,5.786, 12.462,8.714, 20.664,8.714c 8.52,0, 15.729-2.765, 21.504-8.079
|
678 |
-
c 5.775-5.458, 8.653-12.554, 8.653-21.555C 196.106,153.303, 193.229,146.207, 187.453,140.268z M 315.341,140.268
|
679 |
-
c-5.755,5.939-8.684,13.251-8.684,21.821c0,8.581, 3.062,15.514, 9.216,20.972c 6.164,5.325, 13.322,8.079, 21.545,8.079
|
680 |
-
c 8.499,0, 15.524-2.918, 20.92-8.714c 5.376-5.755, 8.12-12.534, 8.12-20.337c0-8.571-2.816-15.882-8.397-21.821
|
681 |
-
c-5.622-5.949-12.657-8.919-21.258-8.919C 328.264,131.348, 321.096,134.318, 315.341,140.268z" data-tags="train_station" />
|
682 |
-
<glyph unicode="" d="M 256,260.116c 28.713,0, 52.818-19.456, 59.628-45.763c 8.561-32.983, 7.404-69.13, 45.036-87.9c 33.403-11.366, 46.039-25.651, 46.039-63.949
|
683 |
-
c0-30.566-26.153-63.058-59.873-67.113c-37.704-5.663-67.052,1.741-90.839,15.299c-23.788-13.558-53.146-20.972-90.798-15.299
|
684 |
-
c-33.741,4.055-59.884,36.659-59.884,67.113c0,37.478, 13.486,53.34, 46.828,64.205c 41.032,20.961, 35.523,57.702, 44.677,89.262
|
685 |
-
C 204.216,241.469, 227.912,260.116, 256,260.116L 256,260.116z M 443.976,282.89c-10.168,8.837-51.671-25.661-64.727-42.721
|
686 |
-
c-7.936-9.103-12.872-21.617-12.872-35.42c0-27.761, 19.866-50.268, 44.308-50.268c 18.596,0, 34.509,12.933, 41.093,31.324
|
687 |
-
C 464.568,218.88, 465.275,264.397, 443.976,282.89L 443.976,282.89z M 68.004,282.89C 46.735,264.397, 47.421,218.88, 60.232,185.805
|
688 |
-
c 6.584-18.391, 22.487-31.324, 41.073-31.324c 24.463,0, 44.308,22.508, 44.308,50.268c0,13.804-4.925,26.317-12.861,35.42
|
689 |
-
C 119.685,257.229, 78.193,291.727, 68.004,282.89L 68.004,282.89z M 310.63,464.21c 103.301-17.531, 96.051-191.508, 13.343-177.49
|
690 |
-
c-23.859,4.055-41.574,25.784-44.268,51.743C 276.972,364.861, 270.817,470.948, 310.63,464.21L 310.63,464.21z M 201.37,464.21
|
691 |
-
c 39.823,6.748, 33.659-99.338, 30.925-125.737c-2.693-25.969-20.388-47.688-44.247-51.743C 105.318,272.691, 98.079,446.679, 201.37,464.21z" data-tags="pet_store" />
|
692 |
-
<glyph unicode="" d="M 461.844,376.781c 5.622,5.622, 13.537,11.735, 21.617,19.108l 7.465,6.257l-20.347,22.835L 463.933,418.765
|
693 |
-
c-28.119-25.549-45.036-40.991-53.299-72.643c-8.202-31.468-8.53-63.324-7.67-93.102c 0.901-30.7, 2.058-50.954, 10.639-73.544l 3.236-8.325
|
694 |
-
c 8.233-20.716, 20.695-52.009, 20.695-92.262c0-48.63-19.702-73.298-58.552-73.298c-35.348,0-54.415,23.593-56.648,70.205
|
695 |
-
c-1.014,20.654, 4.782,46.152, 10.875,73.093c 5.151,22.743, 10.455,46.275, 13.066,71.25c 2.888,27.535-0.727,47.217-11.305,59.034
|
696 |
-
C 321.393,294.339, 300.493,295.68, 282.081,295.68L 276.48,295.68 L 276.48,437.617 C 276.48,449.905, 267.561,459.52, 255.345,459.52L 43.981,459.52 C 31.785,459.52, 20.48,449.905, 20.48,437.617L 20.48-11.52 l 256,0 L 276.48,264.96 l 5.612,0
|
697 |
-
c 12.595,0, 25.641-1.413, 30.075-6.359c 2.376-2.662, 6.021-11.284, 3.615-34.54c-2.427-23.183-7.567-46.111-12.524-67.953
|
698 |
-
c-6.564-29.071-12.79-56.719-11.561-81.644c 3.021-63.273, 34.857-99.635, 87.286-99.635c 55.88,0, 89.242,38.892, 89.242,104.12
|
699 |
-
c0,46.172-14.285,82.145-22.856,103.7l-3.092,7.854c-6.164,16.271-7.547,31.355-8.397,57.672c 9.861,0.225, 21.801,0.461, 27.167,0.461
|
700 |
-
c 12.278,0, 18.452,7.199, 21.084,19.671c 1.536,7.27-0.84,16.804-0.84,34.109l0,4.588 C 481.28,352.748, 474.286,365.814, 461.844,376.781z M 245.76,285.44L 51.2,285.44 L 51.2,418.56 l 194.56,0
|
701 |
-
L 245.76,285.44 z M 450.56,302.377c0-8.94, 2.355-17.49, 2.058-22.927c-6.124-0.092-13.169-0.256-20.337-0.42c 0.266,19.753, 2.458,39.864, 7.506,59.228
|
702 |
-
c 1.372,5.161, 0.963,9.708, 3.031,13.947C 448.276,346.952, 450.56,339.077, 450.56,306.985L 450.56,302.377 z" data-tags="gas_station" />
|
703 |
-
<glyph unicode="" d="M 258.478,458.609L 10.24,244.48l 61.44,0 l0-256 l 368.64,0 L 440.32,244.48 l 61.44,0 L 258.478,458.609z M 348.16,172.8l-71.68,0 l0-123.781 L 276.009,49.92l-48.896,0 L 225.28,49.019L 225.28,172.8 l-61.44,0 l0,40.96 l 61.44,0 l0,92.16 l 51.2,0 l0-92.16 l 71.68,0 L 348.16,172.8 z" data-tags="funeral_home" />
|
704 |
-
<glyph unicode="" d="M 256,469.76C 154.235,469.76, 71.68,388.772, 71.68,288.881L 71.68-21.76 l 368.64,0 L 440.32,288.881 C 440.32,388.772, 357.827,469.76, 256,469.76z" data-tags="cemetery" />
|
705 |
-
<glyph unicode="" d="M 323.277,171.192c0,0-19.22,48.056-37.868,93.942c0,0-6.246,27.576-1.362,64.174c0,0, 13.271,55.941, 5.888,82.391
|
706 |
-
c0,0-11.336,22.661-34.888,24.238c0,0-32.502-2.294-38.574-33.915c0,0-1.587-18.227, 3.461-39.26c0,0, 18.196-69.601-1.761-115.026
|
707 |
-
c0,0-27.843-58.173-30.054-71.496c0,0-10.424-56.996-0.164-98.97c0,0, 21.545-71.813, 37.315-95.601c0,0, 31.99-8.161, 59.433,0.727
|
708 |
-
c0,0, 32.901,53.268, 39.475,101.407C 324.198,83.804, 332.411,134.666, 323.277,171.192zM 425.769,205.025c0,0-19.21,48.067-37.939,93.932c0,0-6.236,27.587-1.372,64.123c0,0, 13.292,55.941, 5.888,82.452
|
709 |
-
c0,0-11.284,22.661-34.857,24.218c0,0-32.512-2.284-38.574-33.894c0,0-1.597-18.237, 3.512-39.27c0,0, 18.207-69.663-1.812-115.016
|
710 |
-
c0,0-4.321-9.124-9.708-20.818c 17.48-42.957, 34.273-84.92, 34.273-84.92l 0.266-0.727l 0.174-0.717c 9.605-38.205, 1.434-89.569, 1.137-91.474
|
711 |
-
c-3.113-22.876-11.735-46.264-20.244-65.331c 0.379-0.686, 0.85-1.475, 1.26-2.079c0,0, 31.959-8.172, 59.433,0.778
|
712 |
-
c0,0, 32.881,53.197, 39.465,101.366C 426.67,117.658, 434.913,168.509, 425.769,205.025zM 196.864,252.099c 1.085,2.386, 1.987,5.018, 2.836,7.598c-4.997,12.411-10.445,25.743-15.821,39.035c0,0-6.308,27.648-1.372,64.174
|
713 |
-
c0,0, 13.281,55.89, 5.908,82.401c0,0-11.336,22.671-34.898,24.228c0,0-32.532-2.345-38.564-33.833c0,0-1.577-18.309, 3.523-39.281
|
714 |
-
c0,0, 18.207-69.642-1.812-115.067c0,0-27.843-58.184-30.065-71.496c0,0-10.435-57.006-0.164-98.97c0,0, 21.545-71.823, 37.304-95.549
|
715 |
-
c0,0, 32-8.233, 59.433,0.737c0,0, 0.635,0.993, 1.71,2.847c-10.035,26.399-18.248,53.576-18.872,55.767c-10.67,43.745-0.399,101.079,0,103.27
|
716 |
-
C 168.325,192.133, 192.215,242.473, 196.864,252.099z" data-tags="bowling_alley" />
|
717 |
-
<glyph unicode="" d="M 83.446,315.525l 62.054,0 l-0.543-36.608l-61.512-55.357L 83.446,315.525 L 83.446,315.525zM 255.048,335.79L 10.24,119.869L 36.045,90.88l 220.006,194.089L 476.017,90.88L 501.76,119.869L 256.993,335.79L 256,336.64L 255.048,335.79z" data-tags="roofing_contractor" />
|
718 |
-
<glyph unicode="" d="M 359.434,372.951c 19.241,0, 34.806,16.005, 34.806,35.789c0,19.661-15.575,35.676-34.806,35.676c-19.098,0-34.683-16.005-34.683-35.676
|
719 |
-
C 324.751,388.956, 340.326,372.951, 359.434,372.951zM 385.3,364.943l-50.698,0 l-86.405,88.893c-6.748,7.301-17.961,7.649-25.068,0.594c-7.096-6.943-7.444-18.483-0.676-25.784
|
720 |
-
l 90.296-93.010l0-308.244 c0-11.182, 8.704-20.122, 19.456-20.122c 10.875,0, 19.569,8.94, 19.569,20.122L 351.775,194.58 l 15.79,0 l 0.123-167.199
|
721 |
-
c0-11.182, 8.806-20.122, 19.558-20.122c 10.783,0, 19.466,8.94, 19.466,20.122L 406.6,335.616l 90.307,93.010c 6.748,7.301, 6.4,18.842-0.696,25.784
|
722 |
-
c-7.086,7.055-18.309,6.717-25.068-0.594L 385.3,364.943zM 201.605,228.956c-5.263,5.54-12.483,8.827-20.48,8.827l-72.694,0 c-8.008,0-15.217-3.297-20.367-8.827l-72.919-75.008
|
723 |
-
c-6.748-7.301-6.513-18.831, 0.584-25.784c 7.086-6.943, 18.432-6.707, 25.068,0.594l 56.535,58.163l0-77.701 L 33.925,109.22
|
724 |
-
c-11.663,0-21.074-9.646-21.074-21.668c0-6.236, 2.294-11.776, 6.42-15.78l 71.414-73.462c 6.298-9.544, 18.657-12.605, 28.508-6.707
|
725 |
-
c 10.404,6.113, 13.855,19.651, 7.895,30.239l-40.745,41.81l 0.799-0.113l 116.972,0 l-40.858-41.8c-5.837-10.598-2.406-24.136, 7.885-30.249
|
726 |
-
c 9.851-5.898, 22.333-2.847, 28.631,6.697l 71.414,73.462c 4.106,4.014, 6.41,9.554, 6.41,15.78c0,12.022-9.39,21.658-21.053,21.658l-63.304,0
|
727 |
-
l0,76.892 l 55.511-57.334c 6.758-7.311, 17.961-7.547, 25.057-0.594c 7.096,6.943, 7.342,18.483, 0.584,25.774L 201.605,228.956zM 145.531,245.443c 19.108,0, 34.56,15.995, 34.56,35.676c0,19.784-15.452,35.676-34.56,35.676c-19.128,0-34.703-15.892-34.703-35.676
|
728 |
-
C 110.828,261.437, 126.413,245.443, 145.531,245.443z" data-tags="physiotherapist" />
|
729 |
-
<glyph unicode="" d="M 117.371,469.76c-13.957,0-25.211-11.54-25.211-25.866l0-25.866 l0-25.876 l0-155.208 l0-232.817
|
730 |
-
c0-12.923, 12.605-25.876, 25.211-25.876c 12.595,0, 25.201,12.964, 25.201,25.876l0,265.155 c 8.612,3.758, 16.988,6.472, 25.211,6.472
|
731 |
-
c 50.412,0, 124.774-64.686, 176.445-64.686c 22.026,0, 53.565,8.919, 75.612,25.876l0,181.084 c-25.006-19.241-50.34-38.81-75.612-38.81
|
732 |
-
c-50.412,0-125.86,64.676-176.445,64.676c-8.499,0-16.794-1.556-25.211-3.236l0,3.236 C 142.572,458.22, 131.318,469.76, 117.371,469.76z" data-tags="embassy" />
|
733 |
-
<glyph unicode="" d="M 79.288,256.768l 35.686,0 l0-229.376 l 53.545,0 L 168.52,224 l 53.545,0 l0-196.608 l 53.535,0 L 275.599,224 l 53.555,0 l0-196.608 l 53.545,0 L 382.7,256.768 l 35.676,0 c 9.861,0, 17.859,7.332, 17.859,16.384
|
734 |
-
c0,5.468-2.949,10.281-7.444,13.251l 0.031,0.031l-0.266,0.154c-0.154,0.102-0.317,0.184-0.461,0.276l-170.342,88.156L 257.751,400.845
|
735 |
-
c 31.457-14.459, 57.354,10.445, 98.15-4.526L 355.901,453.366 c-40.817,14.971-66.703-9.912-98.15,4.536L 257.751,461.568 c0,4.536-3.983,8.192-8.919,8.192
|
736 |
-
S 239.923,466.104, 239.923,461.568l0-86.548 L 69.581,286.884c-0.154-0.092-0.307-0.195-0.461-0.276l-0.256-0.174l0-0.031
|
737 |
-
c-4.475-2.97-7.414-7.793-7.414-13.251C 61.44,264.1, 69.437,256.768, 79.288,256.768zM 97.126,10.998L 61.44-21.76L 436.244-21.76L 400.538,10.998 z" data-tags="city_hall" />
|
738 |
-
<glyph unicode="" d="M 421.499,224L 93.614,224 c-9.554,0-17.418,8.212-17.418,17.551c0,1.556, 0.287,3.318, 0.604,4.731l 17.449,121.846
|
739 |
-
C 95.734,376.044, 102.861,377.6, 111.391,377.6l 292.383,0 c 8.468,0, 15.657-1.423, 17.121-9.308l 17.449-124.068c 0.266-1.444, 0.614-2.294, 0.614-3.85
|
740 |
-
C 438.948,231.035, 431.043,224, 421.499,224z M 408.381,87.347c-18.463,0-33.434,14.531-33.434,32.645c0,17.992, 14.971,32.502, 33.434,32.502
|
741 |
-
c 18.34,0, 33.341-14.51, 33.341-32.502C 441.723,101.878, 426.721,87.347, 408.381,87.347z M 106.291,87.347c-18.33,0-33.311,14.531-33.311,32.645
|
742 |
-
c0,17.992, 14.981,32.502, 33.311,32.502c 18.514,0, 33.464-14.51, 33.464-32.502C 139.756,101.878, 124.805,87.347, 106.291,87.347z M 163.84,449.28l 204.8,0 l0-30.72 L 163.84,418.56
|
743 |
-
C 143.36,418.56, 143.36,449.28, 163.84,449.28z M 452.628,402.278c-5.98,28.805-23.45,40.407-51.948,51.999c-28.447,11.551-94.372,25.395-143.954,25.395
|
744 |
-
c-49.797,0-116.060-13.855-144.538-25.395C 83.702,442.675, 66.519,431.084, 60.59,402.278L 40.96,241.93L 40.96,19.2 l 30.72,0 l0-20.48 c0-40.96, 51.2-40.96, 51.2,0l0,20.48 l 256,0 l0-20.48 c0-40.96, 61.44-40.96, 61.44,0l0,20.48 l 30.72,0
|
745 |
-
L 471.040,241.93 L 452.628,402.278z" data-tags="bus_station" />
|
746 |
-
<glyph unicode="" d="M 175.104,213.76l 152.269,0 l-50.104,133.12l-51.948,0 L 175.104,213.76z M 92.16,346.88L 92.16,387.84 l 327.68,0 l0-40.96 l-80.599,0 l 50.227-133.12L 512,213.76 l0-40.96 L 408.197,172.8 l 58.665-143.36l-56.924,0 l-58.655,143.36L 161.608,172.8
|
747 |
-
L 103.219,29.44L 46.285,29.44 l 58.337,143.36L0,172.8 l0,40.96 l 123.31,0 l 50.186,133.12L 92.16,346.88 z" data-tags="park" />
|
748 |
-
<glyph unicode="" d="M 471.040,152.32l0-81.92 l 40.96,0 L 512,193.28 L 40.96,193.28 L 40.96,360.602 c0,11.5-8.899,20.91-20.48,20.91l0,0c-11.54,0-20.48-9.4-20.48-20.91L0,70.4 l 40.96,0 l0,81.92 L 471.040,152.32 zM 105.779,276.716c 20.9,0, 37.755,16.927, 37.755,37.827c0,20.756-16.855,37.632-37.755,37.632c-20.869,0-37.714-16.865-37.714-37.632
|
749 |
-
C 68.065,293.652, 84.91,276.716, 105.779,276.716zM 512,224l-0.143,49.879c-0.133,16.445-13.926,26.808-30.095,28.764L 185.242,331.653c-0.532,0.143-1.71,0.092-2.202,0.092
|
750 |
-
c-10.301,0-19.2-8.54-19.2-18.79L 163.84,254.72 L 87.521,254.72 c-10.353,0-18.698-5.12-18.698-15.35C 68.823,228.977, 77.169,224, 87.521,224L 512,224 z" data-tags="lodging" />
|
751 |
-
<glyph unicode="" d="M 61.44-6.4c0-12.626, 7.864-20.48, 20.48-20.48c 12.646,0, 20.48,7.854, 20.48,20.48L 102.4,183.040 l 20.48,0 l0-189.44 c0-12.605, 7.854-20.48, 20.48-20.48c 12.626,0, 20.48,7.854, 20.48,20.48L 163.84,316.16 l 10.24,0 l0-115.855
|
752 |
-
c0-24.525, 30.781-24.525, 30.72,0L 204.8,324.751 C 204.8,351.846, 185.283,367.36, 153.6,367.36L 71.68,367.36 c-28.877,0-51.2-12.483-51.2-41.851L 20.48,193.28 c0-20.48, 30.72-20.48, 30.72,0L 51.2,316.16 l 10.24,0 L 61.44-6.4 zM 470.149,147.2l-60.508,166.267c-0.225,0.522-0.348,1.106-0.348,1.71c0,2.427, 2.038,4.393, 4.577,4.393
|
753 |
-
c 2.161,0, 3.973-1.444, 4.454-3.369L 459.459,208.64c 2.734-6.154, 13.978-10.24, 21.371-10.24c 9.882,0, 10.906,19.405, 10.691,20.48l-41.134,103.496
|
754 |
-
C 446.812,346.143, 422.81,367.36, 395.418,367.36L 341.811,367.36 c-27.392,0-53.166-21.217-56.75-44.984l-39.291-104.776c-0.891-2.038,0-19.845, 10.691-19.845
|
755 |
-
c 8.305,0, 19.354,3.215, 21.361,10.557l 39.68,108.175c 0.635,1.7, 2.345,2.99, 4.321,2.99c 2.519,0, 4.557-1.925, 4.557-4.342
|
756 |
-
c0-0.553-0.092-1.065-0.276-1.546l-58.962-166.41c-0.123-0.492,0-12.288,0-12.79c0-3.543, 8.561-12.8, 12.268-12.8L 317.44,121.59 l0-128.973
|
757 |
-
c0-10.65, 9.38-19.507, 20.48-19.507s 20.48,8.868, 20.48,19.507L 358.4,126.812 c0,2.898, 20.48,2.806, 20.48-0.092l0-133.12 c0-10.65, 9.39-20.48, 20.48-20.48c 11.121,0, 20.48,9.841, 20.48,20.48L 419.84,121.6 l 39.619,0
|
758 |
-
c 3.707,0, 10.691,9.257, 10.691,12.8C 470.149,135.219, 470.446,146.493, 470.149,147.2zM 69.12,427.52A42.24,42.24 180 1 1 153.6,427.52A42.24,42.24 180 1 1 69.12,427.52zM 325.12,427.52A42.24,42.24 180 1 1 409.6,427.52A42.24,42.24 180 1 1 325.12,427.52z" data-tags="toilet" />
|
759 |
-
<glyph unicode="" d="M 10.24,224A245.76,245.76 180 1 1 501.76,224A245.76,245.76 180 1 1 10.24,224z" data-tags="circle" />
|
760 |
-
<glyph unicode="" d="M 501.76,60.16c0-45.056-36.864-81.92-81.92-81.92L 92.16-21.76 c-45.056,0-81.92,36.864-81.92,81.92L 10.24,387.84 c0,45.056, 36.864,81.92, 81.92,81.92l 327.68,0 c 45.056,0, 81.92-36.864, 81.92-81.92L 501.76,60.16 z" data-tags="square-rounded" />
|
761 |
-
<glyph unicode="" d="M 10.24,469.76L 501.76,469.76L 501.76-21.76L 10.24-21.76z" data-tags="square" />
|
762 |
-
<glyph unicode="" d="M 419.84,70.4L 419.84,418.56 c0,22.528-18.432,40.96-40.96,40.96L 133.12,459.52 c-22.528,0-40.96-18.432-40.96-40.96l0-389.12 c0-22.528, 18.432-40.96, 40.96-40.96l 245.76,0 c 19.026,0, 40.96,0, 40.96,20.48c0,4.26,0,0,0,10.24L 143.36,19.2 c-11.264,0-20.48,9.216-20.48,20.48
|
763 |
-
l0,30.72 L 419.84,70.4 z M 143.36,377.6c0,5.632, 4.608,10.24, 10.24,10.24l 204.8,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-20.48 c0-5.632-4.608-10.24-10.24-10.24L 153.6,346.88 c-5.632,0-10.24,4.608-10.24,10.24L 143.36,377.6 z M 143.36,295.68c0,5.632, 4.608,10.24, 10.24,10.24l 204.8,0
|
764 |
-
c 5.632,0, 10.24-4.608, 10.24-10.24l0-20.48 c0-5.632-4.608-10.24-10.24-10.24L 153.6,264.96 c-5.632,0-10.24,4.608-10.24,10.24L 143.36,295.68 z" data-tags="book_store" />
|
765 |
-
<glyph unicode="" d="M 378.88,408.32l-40.96,0 L 133.12,408.32 L 92.16,408.32 l0-40.96 l0-102.4 l0-133.12 c0-22.528, 18.432-40.96, 40.96-40.96l 204.8,0 c 22.528,0, 40.96,18.432, 40.96,40.96l0,51.2 c 62.218,0, 112.64,50.432, 112.64,112.64S 441.098,408.32, 378.88,408.32z M 378.88,234.24l0,30.72 l0,92.16
|
766 |
-
c 33.935,0, 61.44-27.505, 61.44-61.44C 440.32,261.755, 412.815,234.24, 378.88,234.24zM 20.48,70.4l0-23.562 C 20.48,27.423, 41.667,19.2, 67.584,19.2L 444.416,19.2 c 25.907,0, 47.104,8.223, 47.104,27.638L 491.52,70.4 L 20.48,70.4 z" data-tags="cafe" />
|
767 |
-
<glyph unicode="" d="M 171.858,387.84c 22.723,0, 40.96,18.483, 40.96,40.96c0,22.723-18.237,40.96-40.96,40.96c-22.589,0-40.96-18.248-40.96-40.96C 130.898,406.323, 149.268,387.84, 171.858,387.84zM 200.776,12.288c-69.755,0-126.321,57.354-126.321,128.379c0,38.881, 17.295,73.574, 44.278,97.167l-2.243,40.161
|
768 |
-
C 71.311,249.303, 40.96,198.83, 40.96,140.667C 40.96,51.046, 112.466-21.76, 200.776-21.76C 265.759-21.76, 323.195,24.023, 348.16,80.64l-24.33,33.505
|
769 |
-
C 311.808,56.136, 261.468,12.288, 200.776,12.288zM 450.56,90.88l-20.48,0 l-81.92,112.64c-4.434,7.793-20.48,30.72-40.96,30.72l-92.16,0 l0,40.96 l 81.92,0 c 10.609,0, 22.057,4.516, 22.057,15.421
|
770 |
-
C 319.017,301.445, 307.866,305.92, 296.96,305.92l-81.92,0 l0,40.96 c-1.505,22.712-20.48,30.72-40.858,30.249C 153.6,376.658, 143.36,367.36, 143.36,346.88l0-143.36 c 1.946-22.999, 18.504-30.72, 40.96-30.72l 122.88,0 l 71.68-92.16
|
771 |
-
c 4.618-7.639, 20.48-30.72, 20.48-30.72l 51.2,0 c 10.568,0, 20.48,9.605, 20.48,20.48C 471.040,81.224, 461.455,90.88, 450.56,90.88z" data-tags="wheelchair" />
|
772 |
-
<glyph unicode="" d="M 174.080,264.96l 27.464,0 C 209.777,264.96, 215.040,277.064, 215.040,285.235l0,86.467 C 215.040,379.884, 209.777,377.6, 201.544,377.6L 174.080,377.6 L 174.080,264.96 zM 174.080,101.12l 27.464,0 C 209.777,101.12, 215.040,91.617, 215.040,83.425l0-86.446 c0-8.131-5.263-18.739-13.496-18.739L 174.080-21.76 L 174.080,101.12 zM 137.83,183.040c-0.236,79.022, 14.623,81.92, 23.091,81.92C 161.853,264.96, 163.84,264.96, 163.84,264.96L 163.84,377.6 c0,0-2.683,0-3.502,0C 145.254,377.6, 71.68,352.809, 71.68,177.93
|
773 |
-
C 71.68,3.041, 145.254-21.76, 160.338-21.76C 161.157-21.76, 163.84-21.76, 163.84-21.76L 163.84,101.12 c0,0-1.987,0-2.918,0C 152.453,101.12, 138.056,104.059, 137.83,183.040zM 237.527,353.239c 4.987-5.97, 7.649-13.517, 7.649-21.289c0-7.772-2.662-15.319-7.649-21.299l 16.353-13.455
|
774 |
-
c 7.997,9.748, 12.431,22.098, 12.431,34.755c0,12.646-4.434,25.016-12.431,34.755L 237.527,353.239zM 290.099,258.376c 17.859,19.558, 27.73,44.913, 27.73,71.434c0,26.399-9.748,51.753-27.617,71.25l-15.903-13.865
|
775 |
-
c 14.387-15.667, 22.395-36.024, 22.395-57.385c0-21.412-7.997-41.841-22.63-57.569L 290.099,258.376zM 326.287,219.556c 27.74,29.297, 43.059,67.707, 43.059,108.042c0,40.212-15.186,78.51-42.701,107.807l-15.667-14.275
|
776 |
-
c 23.9-25.364, 37.14-58.614, 37.14-93.542c0-35.052-13.24-68.352-37.376-93.768L 326.287,219.556zM 362.619,180.726c 37.478,39.117, 58.143,90.522, 58.143,144.722c0,54.016-20.521,105.267-57.805,144.312l-15.299-14.623
|
777 |
-
c 33.526-35.103, 51.978-81.172, 51.978-129.69c0-48.742-18.565-94.935-52.326-130.017L 362.619,180.726z" data-tags="volume-control-telephone" />
|
778 |
-
<glyph unicode="" d="M 367.411,44.155c-3.318-4.506-4.874-5.458-9.021-11.274c-6.902-8.909, 1.894-22.436, 6.277-20.306
|
779 |
-
c 5.11,1.915, 8.428,12.114, 14.008,15.442c 2.857,1.536, 10.455,12.698, 17.572,20.285c 5.233,5.949, 9.032,8.561, 14.008,14.725
|
780 |
-
c 8.428,10.455, 10.209,18.401, 17.572,29.563c 4.516,5.816, 7.731,7.598, 11.878,14.725c 21.965,41.554, 15.544,60.18, 36.567,89.856
|
781 |
-
c 6.4,8.776, 13.64,10.916, 23.849,16.138c 9.503,69.222-21.965,107.919-21.719,108.042c-26.481-15.432-40.724-21.729-68.147-20.296
|
782 |
-
c-10.322,0.113-15.79,4.506-25.989,3.564c-9.513-0.358-14.356-3.912-23.869-7.127c-14.592-4.506-22.548-8.54-37.857-13.292
|
783 |
-
c-9.738-2.734-15.913-2.847-26.010-6.287c-8.663-3.686-4.506-0.717-10.557-7.721c-7.844-8.673-5.939-15.432-13.302-30.28
|
784 |
-
c-9.144-19.466-8.069-22.077-2.847-24.453c-3.441-9.964-4.27-16.62-3.441-27.423c 0.952-8.192-2.499-13.885, 6.287-20.419
|
785 |
-
c 11.991-8.899, 37.161-29.798, 43.571-30.147c 9.615,0.348, 37.632-0.717, 51.866,9.144c 3.205,2.007, 4.157,4.045, 1.434-3.564
|
786 |
-
c-0.594-0.963-35.502-28.14-39.291-28.017c-44.401-1.434-29.563-3.922-32.287-2.857c-2.263,0-23.634,26.132-36.567,16.865
|
787 |
-
c-4.874-2.97-7.127-5.816-9.021-11.172c 1.659-3.441, 9.492-8.888, 16.742-13.414c 10.455-6.646, 11.397-13.65, 21.842-16.138
|
788 |
-
c 12.708-2.857, 26.235-0.952, 34.314-2.028c 3.092-0.829, 31.099,7.373, 48.548,16.742c 16.159,8.315-22.19-16.015-31.57-28.006
|
789 |
-
c-28.262-8.899-20.296-9.257-33.72-11.991c-12.462-2.847-11.868-2.13-20.419-4.874c-8.776-2.13-16.015-14.131-7.711-20.419
|
790 |
-
c 4.987-4.147, 20.541,1.669, 35.85,2.13c 6.769,0.123, 34.417,12.831, 40.724,16.159c 15.667,8.417, 27.187,20.060, 36.454,26.706
|
791 |
-
C 406.221,91.638, 378.921,58.163, 367.411,44.155L 367.411,44.155z M 281.815,214.753c 9.38-7.475, 14.131-29.798, 14.008-29.563
|
792 |
-
c 17.213-5.458, 28.129-16.855, 28.129-16.855c 26.481,14.725, 27.085,8.079, 38.595,16.855c 9.503,6.533, 9.032,8.55, 14.008,25.989
|
793 |
-
c 4.628,14.141-11.756,12.831-25.293,38.595c-23.501-8.899-36.198-4.874-44.155-4.157C 303.544,246.088, 304.128,231.731, 281.815,214.753L 281.815,214.753
|
794 |
-
zM 144.22,397.926c 3.328,4.751, 4.864,5.704, 9.144,11.284c 6.646,9.144-2.017,22.671-6.298,21.012
|
795 |
-
c-5.222-2.376-8.54-12.585-14.838-16.148c-2.263-1.3-9.851-12.462-16.855-20.306c-5.222-5.704-9.021-8.315-14.008-14.838
|
796 |
-
c-8.54-10.086-10.209-18.043-17.572-28.733c-4.506-6.4-7.834-8.069-11.878-15.432c-21.955-41.318-15.667-59.945-36.567-89.16
|
797 |
-
c-6.4-9.38-13.65-11.397-23.859-16.855c-9.492-69.1, 21.852-107.684, 21.729-107.448c 26.47,15.094, 40.602,21.381, 68.147,20.429
|
798 |
-
c 10.322-0.604, 15.79-4.987, 25.999-4.27c 9.503,0.594, 14.367,4.147, 23.859,7.004c 14.602,4.864, 22.559,8.899, 37.161,13.414
|
799 |
-
c 10.445,2.97, 16.62,3.092, 26.706,7.014c 8.673,3.195, 4.516,0.225, 10.568,7.014c 7.711,8.899, 5.939,15.657, 12.585,30.136
|
800 |
-
c 9.851,19.845, 8.786,22.436, 3.564,24.576c 3.328,10.209, 4.27,16.742, 3.441,27.423c-1.065,8.315, 2.499,14.131-6.287,20.296
|
801 |
-
c-11.991,9.267-37.161,30.157-43.448,30.28c-9.738-0.123-37.755,0.952-51.999-8.428c-3.205-2.488-4.157-4.506-1.423,2.734
|
802 |
-
c 0.594,1.3, 35.502,28.488, 39.291,28.846c 44.401,0.952, 29.563,3.441, 32.297,2.13c 2.253,0.236, 23.624-25.876, 36.567-16.855
|
803 |
-
c 4.741,3.195, 7.117,6.052, 9.144,11.151c-1.782,3.676-9.615,9.155-16.855,13.302c-10.445,6.994-11.51,13.998-21.842,16.261
|
804 |
-
c-12.708,3.082-26.358,1.188-34.314,2.734c-3.082,0.358-31.109-7.844-48.435-16.855c-16.384-8.673, 22.088,15.667, 31.57,28.129
|
805 |
-
c 28.14,8.438, 20.070,8.786, 33.72,11.878c 12.349,2.499, 11.756,1.782, 20.306,4.27c 8.663,2.376, 16.015,14.254, 7.711,21.012
|
806 |
-
c-5.1,3.799-20.531-2.017-35.727-2.13c-6.881-0.471-34.55-13.179-40.837-16.742c-15.667-8.192-27.187-19.825-36.444-25.999
|
807 |
-
C 105.277,350.679, 132.7,384.041, 144.22,397.926L 144.22,397.926z M 229.816,227.338c-9.38,7.711-14.131,30.024-14.008,30.147
|
808 |
-
c-17.213,5.11-28.14,16.507-28.14,16.148c-26.47-14.367-27.177-7.721-38.584-16.148c-9.615-6.892-9.021-9.021-14.008-25.887
|
809 |
-
c-4.639-14.725, 11.633-13.292, 25.283-38.697c 23.511,8.561, 36.219,4.516, 44.165,3.574C 208.087,196.229, 207.493,210.596, 229.816,227.338
|
810 |
-
L 229.816,227.338z" data-tags="sign-language" />
|
811 |
-
<glyph unicode="" d="M 226.632,436.357c 0.225,21.053-17.080,38.482-38.185,38.257c-21.565,0.225-38.994-17.203-38.881-38.257
|
812 |
-
c-0.113-21.555, 17.316-38.82, 38.881-38.871C 209.541,397.537, 226.857,414.802, 226.632,436.357L 226.632,436.357zM 337.654,225.106L 214.139,374.948c-6.42,9.523-42.209,13.527-57.344,1.372L 96.696,266.967l 14.787-92.436
|
813 |
-
c 15.032-24.136, 44.851,0.287, 36.475,13.476l-10.086,65.485L 163.84,305.92l0-122.88 l-61.44-163.84c-10.67-35.779, 40.643-54.938, 51.2-20.48l 71.68,184.32l0,92.16 l-30.075,41.595
|
814 |
-
c-1.495,1.782-1.27,4.475, 0.573,6.021c 1.833,1.495, 4.475,1.26, 5.97-0.512l 102.748-121.508
|
815 |
-
C 321.034,178.196, 354.171,202.23, 337.654,225.106zM 290.396,17.254l-60.672,150.968L 204.8,101.12l 35.604-104.131C 254.73-36.547, 305.080-16.927, 290.396,17.254zM 451.297-17.388c 0.123-0.123, 0.225-0.287, 0.225-0.348c 2.406-2.867, 6.656-3.154, 9.523-0.799
|
816 |
-
c 2.519,2.181, 2.99,6.021, 1.26,8.765L 347.965,188.754c-0.123,0.123-0.225,0.236-0.338,0.399c-2.304,2.765-6.543,3.164-9.411,0.748
|
817 |
-
c-2.519-2.181-2.755-5.847-1.137-8.765L 451.297-17.388z" data-tags="low-vision-access" />
|
818 |
-
<glyph unicode="" d="M 130.949,124.621c-63.539,0-112.486,35.717-112.486,102.246c0,67.318, 47.36,106.035, 112.486,106.035c 65.106,0, 112.476-38.728, 112.476-106.035
|
819 |
-
C 243.415,160.338, 194.478,124.621, 130.949,124.621z M 130.949,177.244c 22.948,0, 34.253,19.558, 34.253,49.234c0,23.347-4.864,53.811-34.253,53.811
|
820 |
-
c-29.399,0-34.263-30.464-34.263-53.811C 96.686,196.803, 107.991,177.244, 130.949,177.244zM 410.276,254.72c-0.338,10.24-3.389,14.111-8.253,18.975c-4.864,5.263-11.643,7.25-20.357,7.25c-29.266,0-34.13-30.792-34.13-54.139
|
821 |
-
c0-29.676, 11.305-50.924, 34.13-50.924c 20.357,0, 28.273,17.398, 30.525,27.638l 79.022,0 c-6.779-61.44-54.938-80.425-109.548-80.425
|
822 |
-
c-63.519,0-112.364,36.485-112.364,103.014c0,67.318, 47.37,107.745, 112.364,107.745c 52.695,0, 102.318-27.935, 107.96-79.135L 410.276,254.72 z" data-tags="open-captioning" />
|
823 |
-
<glyph unicode="" d="M 159.734,244.48c-0.338,10.24-3.277,17.725-8.253,22.589c-4.864,5.253-11.643,9.062-20.234,9.062c-29.399,0-34.253-29.891-34.253-53.238
|
824 |
-
c0-29.665, 11.305-48.978, 34.253-48.978c 20.234,0, 28.15,9.134, 30.403,29.614l 79.022,0 c-6.779-61.44-54.938-81.94-109.425-81.94
|
825 |
-
c-63.539,0-112.486,35.738-112.486,102.267c0,67.318, 47.36,103.741, 112.486,103.741c 52.562,0, 102.308-21.678, 107.848-83.118L 159.734,244.48 zM 410.583,244.48c-0.338,10.24-3.389,17.725-8.253,22.589c-4.864,5.253-11.643,9.062-20.357,9.062c-29.266,0-34.13-29.891-34.13-53.238
|
826 |
-
c0-29.665, 11.305-48.978, 34.13-48.978c 20.357,0, 28.273,9.134, 30.525,29.614L 491.52,203.53 c-6.779-61.44-54.938-81.94-109.548-81.94
|
827 |
-
c-63.529,0-112.364,35.738-112.364,102.267c0,67.318, 47.37,103.741, 112.364,103.741c 52.695,0, 102.308-21.678, 107.971-83.118L 410.583,244.48 z" data-tags="closed-captioning" />
|
828 |
-
<glyph unicode="" d="M 40.96,70.4l 50.115,0 c 18.821,0, 31.611-6.697, 31.611-25.231c0-9.708-4.823-16.835-13.394-20.992c 12.063-3.441, 18.217-13.906, 18.217-26.286
|
829 |
-
c0-20.142-17.132-29.891-35.113-29.891L 40.96-32 L 40.96,70.4 z M 61.44,29.44l 26.86,0 c 7.598,0, 13.261,2.12, 13.261,10.455C 101.56,49.357, 94.321,49.92, 86.61,49.92L 61.44,49.92 L 61.44,29.44 z M 61.44-11.52
|
830 |
-
l 28.068,0 c 8.684,0, 16.169,4.495, 16.169,14.817c0,10.117-6.4,15.903-15.688,15.903L 61.44,19.2 L 61.44-11.52 zM 143.36,39.68l 20.48,0 l0-10.24 l 0.225,0 c 3.625,10.24, 14.94,14.828, 24.596,14.828c 1.331,0, 5.898-0.788, 5.898-1.208l0-18.35 c-10.24,0.43-6.789,0.666-9.083,0.666
|
831 |
-
c-14.479,0-21.637-10.383-21.637-23.050L 163.84-32 l-20.48,0 L 143.36,39.68 zM 203.049,19.2c 1.085,20.48, 16.64,24.33, 32.686,24.33c 14.356,0, 30.505-2.949, 30.505-20.204l0-37.407 c0-6.513, 2.796-17.92, 4.618-17.92l-19.907,0
|
832 |
-
c-0.727,0-1.331,5.55-1.454,7.905c-6.277-6.523-15.442-8.387-24.125-8.387c-13.64,0-24.494,7.055-24.494,21.78
|
833 |
-
c0,16.302, 12.175,20.152, 24.494,21.965c 12.073,1.69, 23.286,1.444, 23.286,9.482c0,8.499-5.786,9.554-12.79,9.554
|
834 |
-
c-7.475,0-12.308-0.85-13.025-11.090L 203.049,19.21 z M 245.76,5.1c0-2.888-8.796-3.011-14.961-4.147c-6.154-1.27-10.988-3.318-10.988-10.568
|
835 |
-
c0-7.352, 4.71-9.165, 11.1-9.165c 15.442,0, 14.838,12.237, 14.838,16.527L 245.75,5.1 zM 308.879,52.951L 289.075,52.951 l0,16.23 l 19.804,0 L 308.879,52.951 z M 286.72,39.68l 20.48,0 l0-71.68 l-20.48,0 L 286.72,39.68 zM 327.68,70.4l 20.48,0 l0-102.4 l-20.48,0 L 327.68,70.4 zM 368.64,70.4l 20.48,0 l0-102.4 l-20.48,0 L 368.64,70.4 zM 426.998-1.28c 0.614-10.24, 6.625-18.842, 17.623-18.842c 7.967,0, 14.356,8.602, 15.565,8.602l 17.367,0 c-5.54-10.24-17.367-22.344-33.536-22.344
|
836 |
-
c-22.671,0-36.68,16.486-36.68,38.769c0,21.524, 14.848,37.233, 36.68,37.233c 24.381,0, 36.209-22.938, 34.867-43.418L 426.998-1.28 z M 459.1,8.96
|
837 |
-
c-1.812,10.24-6.031,15.258-15.688,15.258c-12.554,0-16.169-5.018-16.415-15.258L 459.1,8.96 zM 112.64,147.2A35.84,35.84 180 1 1 184.32,147.2A35.84,35.84 180 1 1 112.64,147.2zM 112.64,290.56A35.84,35.84 180 1 1 184.32,290.56A35.84,35.84 180 1 1 112.64,290.56zM 112.64,433.92A35.84,35.84 180 1 1 184.32,433.92A35.84,35.84 180 1 1 112.64,433.92zM 327.68,147.2A35.84,35.84 180 1 1 399.36,147.2A35.84,35.84 180 1 1 327.68,147.2zM 327.68,290.56A35.84,35.84 180 1 1 399.36,290.56A35.84,35.84 180 1 1 327.68,290.56zM 327.68,433.92A35.84,35.84 180 1 1 399.36,433.92A35.84,35.84 180 1 1 327.68,433.92z" data-tags="braille" />
|
838 |
-
<glyph unicode="" d="M 263.946,275.2L 256,275.2 l0-92.16 l 7.946,0 c 24.402,0, 44.042,21.75, 44.042,46.152C 307.988,253.46, 288.348,275.2, 263.946,275.2zM 409.6,408.32L 102.4,408.32 C 46.080,408.32,0,362.24,0,305.92l0-143.36 c0-56.32, 46.080-102.4, 102.4-102.4l 307.2,0 c 56.32,0, 102.4,46.080, 102.4,102.4L 512,305.92 C 512,362.24, 465.92,408.32, 409.6,408.32z M 204.8,152.32l-40.96,0 l0,20.48 l-60.314,0
|
839 |
-
l-14.019-20.48L 36.321,152.32 l 118.876,163.84L 204.8,316.16 L 204.8,152.32 z M 276.48,152.32l-10.24,0 l-51.2,0 L 215.040,316.16 l 53.289,0 l 0.502,0 c 45.67,0, 81.91-37.14, 81.91-82.944C 350.74,187.535, 322.161,152.32, 276.48,152.32z
|
840 |
-
M 366.182,152.32l-8.878,0 l-5.263,0 c 18.268,20.48, 28.662,48.886, 28.662,77.793c0,32.532-13.148,65.567-36.168,86.047l 5.14,0 l 10.015,0 l 5.263,0
|
841 |
-
c 20.511-30.72, 32.031-54.139, 32.031-86.047c0-28.396-9.011-57.313-25.539-77.793L 366.182,152.32 z M 407.972,152.32l-9.001,0 l-5.263,0
|
842 |
-
c 18.391,20.48, 28.785,48.886, 28.785,77.793c0,32.532-13.271,65.567-36.291,86.047l 5.263,0 l 9.892,0 l 5.243,0 c 20.531-30.72, 32.174-54.139, 32.174-86.047
|
843 |
-
c0-28.396-9.144-57.313-25.661-77.793L 407.972,152.32 z M 454.902,152.32L 449.638,152.32 l-9.001,0 l-5.263,0 c 18.391,20.48, 28.785,48.886, 28.785,77.793
|
844 |
-
c0,32.532-13.271,65.567-36.291,86.047l 5.263,0 l 9.892,0 l 5.243,0 c 20.531-30.72, 32.174-54.139, 32.174-86.047C 480.43,201.708, 471.286,172.8, 454.902,152.32zM 163.84,203.52L 163.84,263.967L 126.3,203.52 zM 253.809,231.188M 253.809,231.188M 253.809,231.188" data-tags="audio-description" />
|
845 |
-
<glyph unicode="" d="M 456.796,469.76l-29.143,0 l-99.246-108.81c 10.435-5.396,
|
846 |
-
C 465.121,469.76, 478.73,469.76, 456.796,469.76zM 10.24-21.76l 92.948,0 l 138.721,150.497l-82.872,55.214L 10.24,27.761l0-2.314 C 10.24,2.099, 10.24,7.496, 10.24-21.76zM 253.952,224.809M 253.952,224.809M 253.952,224.809M 246.415,326.4l 9.892,0 c 55.296,0, 87.081-53.975, 87.296-89.631c-0.215-6.943-1.935-13.507-9.789-13.353
|
847 |
-
c-16.568-0.154-10.66,27.556-24.361,50.207C 303.002,284.805, 282.235,305.92, 258.57,305.92l-8.714,0 c-12.698,0-36.577-8.448-52.603-32.604
|
848 |
-
c-20.060-29.102-6.881-51.067-23.726-50.964c-2.58-0.113-10.004,1.505-9.892,13.568C 164.393,290.673, 214.579,326.4, 246.415,326.4L 246.415,326.4zM 253.952,19.2c 20.756,0, 32.768,23.112, 32.768,37.571l0,30.126 c0,61.532, 66.601,85.832, 66.376,147.476c 0.215,57.764-50.944,101.325-100.209,101.222
|
849 |
-
c-40.878,0.102-68.27-26.255-78.807-39.905c-31.631-39.107-13.189-76.38-35.553-76.38c-6.349,0-12.462,3.604-12.564,16.241
|
850 |
-
c-0.983,61.204, 49.551,125.972, 129.096,126.075c 64.164-0.113, 126.566-51.21, 126.566-129.577c0-72.612-64.205-87.839-64.205-151.511l0-27.218
|
851 |
-
c0-28.017-24.361-60.017-65.341-60.191c-1.495,0.44-2.888,0.973-4.823,1.188c-7.526,2.253-12.636,9.032-10.803,16.773
|
852 |
-
C 238.623,17.818, 245.023,19.2, 253.42,19.2L 253.952,19.2 L 253.952,19.2z" data-tags="assistive-listening-system" />
|
853 |
-
<glyph unicode="" d="M 358.492,218.45c-3.348,13.24-20.204,23.695-32.87,17.572L 276.48,213.76l0,87.9 l 86.354,135.608c 6.267,9.902, 3.85,23.030-6.236,29.379
|
854 |
-
c-9.964,6.236-22.938,3.338-28.539-6.349L 255.693,345.047l-43.633-0.113c-2.796,0-5.571-0.451-8.376-1.556l-75.428-29.379L 89.395,372.521
|
855 |
-
C 83.005,382.31, 69.796,385.208, 59.832,378.87s-12.872-19.579-6.482-29.481l 48.497-72.98c 5.489-8.458, 17.019-12.237, 26.757-8.233L 184.32,289.649L 184.32,193.28
|
856 |
-
l-75.745-167.803c-5.714-12.81, 0.553-26.88, 13.885-34.345c 13.332-7.465, 28.682-3.113, 34.222,9.677l 60.938,139.080
|
857 |
-
c 5.366-1.556, 11.192-2.243, 17.132-2.243c 5.489,0, 10.865,1.004, 15.677,2.785l 68.413,31.826l 14.991-59.976
|
858 |
-
c 3.338-13.343, 16.957-21.473, 30.413-18.135c 13.435,3.338, 21.484,16.814, 18.125,30.157L 358.492,218.45zM 296.96,253.819l0-15.903 C 399.36,289.3, 439.071,465.306, 439.071,480l-14.326,0 C 419.369,443.29, 378.88,296.438, 296.96,253.819zM 224.338,352.717c 20.951,0, 37.97,16.794, 37.97,37.601c0,20.797-17.019,37.724-37.97,37.724c-20.951,0-37.97-16.916-37.97-37.724
|
859 |
-
C 186.368,369.51, 203.387,352.717, 224.338,352.717zM 256-32L 276.48-32L 276.48,137.656L 256,121.6 z" data-tags="abseiling" />
|
860 |
-
<glyph unicode="" d="M 59.484,232.090c-10.353,0-18.821-8.468-18.821-18.79c0-10.312, 8.479-18.637, 18.821-18.637c 10.342,0, 18.698,8.325, 18.698,18.637
|
861 |
-
C 78.182,223.621, 69.827,232.090, 59.484,232.090zM 320.481,388.342c 22.436,0, 40.755,18.135, 40.755,40.643c0,22.508-18.319,40.776-40.755,40.776c-22.559,0-40.888-18.268-40.888-40.776
|
862 |
-
C 279.593,406.477, 297.923,388.342, 320.481,388.342zM 495.903,25.723l-66.324,78.090c0,0-20.716,120.566-20.716,120.822c0,0.113-3.103,13.67-3.103,13.67
|
863 |
-
c 0.123-0.133-8.335,38.031-14.817,67.86c 10.342-5.96, 19.681-11.305, 20.183-11.561c 0.502-1.106, 35.144-66.867, 35.144-66.867
|
864 |
-
c 2.642-4.864, 7.025-8.468, 12.237-10.066c 5.356-1.618, 10.977-1.126, 15.841,1.495c 4.864,2.478, 8.479,6.83, 10.076,12.175
|
865 |
-
c 1.782,5.212, 1.239,10.824-1.382,15.657L 445.061,319.232c0,0-1.516,2.611-3.502,4.588c-2.744,2.734-8.755,6.093-8.755,6.093l-73.779,41.902
|
866 |
-
c-9.359,4.721-19.702,6.328-30.065,4.096c-4.26-0.87-8.223-2.488-12.698-4.977c-0.522-0.113-16.855-7.322-26.317-29.471l-37.888-76.073
|
867 |
-
c0,0-57.733-11.182-59.73-11.561c-0.492-0.123-1.014-0.246-1.372-0.492l-53.924,38.042c-12.093,8.448-13.578,33.812-13.722,34.806
|
868 |
-
c-1.485,17.398-11.469,33.812-27.423,45.128C 81.439,381.501, 63.969,385.843, 48.005,383.252c-12.472-2.12-23.060-8.581-29.798-18.043
|
869 |
-
C 12.984,357.878, 10.24,349.051, 10.24,339.61c0-0.133, 0.748-8.223, 0.748-8.223c 2.755-16.015, 12.595-30.935, 27.064-41.257
|
870 |
-
c 14.582-10.312, 31.918-14.674, 47.872-11.94l 3.748,0.748c 0.369,0.246, 24.31,7.598, 36.024-0.379c0-0.113, 40.325-28.457, 51.057-36.045
|
871 |
-
c-1.116-1.741-3.113-5.581-2.99-9.574c0-1.249, 0.133-2.478, 0.379-3.717c 2.12-11.203, 13.076-18.657, 24.31-16.425l 71.547,13.937
|
872 |
-
c0,0, 6.124,1.864, 8.745,3.738c 3.379,2.355, 5.857,7.322, 5.857,7.322l 18.821,37.796c0,0, 12.984-61.030, 13.199-62.147
|
873 |
-
c-1.485-1.495-58.696-62.034-58.696-62.034l-2.202-1.249C 250.081,145.080, 245.76,138.373, 245.76,131.267l0-128.266 C 245.76-10.701, 257.71-21.76, 271.421-21.76
|
874 |
-
C 285.020-21.76, 296.96-10.701, 296.96,3c0,0,0,105.39,0,107.141c 10.24,5.458, 49.603,51.569, 61.317,63.785c 1.26-7.209, 12.82-72.253, 12.82-72.253
|
875 |
-
c 1.004-5.724, 3.881-10.936, 7.997-15.145c0-0.143, 78.838-92.887, 78.838-92.887c 4.383-4.936, 10.373-8.069, 16.968-8.684
|
876 |
-
c 6.615-0.502, 12.995,1.597, 18.115,5.816c 5.724,4.864, 8.735,11.95, 8.735,18.924C 501.75,15.401, 499.896,21.002, 495.903,25.723z
|
877 |
-
M 102.625,305.418c-4.362-6.093-11.090-10.066-19.446-11.561c-11.725-1.976-24.822,1.372-35.779,9.329c-11.090,7.844-18.586,19.016-20.572,30.7
|
878 |
-
L 26.317,339.732c0,6.093, 1.628,11.551, 4.997,16.282c 10.844,15.155, 35.645,16.148, 55.337,2.232C 106.24,344.32, 113.469,320.584, 102.625,305.418z" data-tags="tennis" />
|
879 |
-
<glyph unicode="" d="M 182.6-7.485A13.885,14.275 180 1 1 210.371-7.485000000000014A13.885,14.275 180 1 1 182.6-7.485000000000014zM 308.716-21.494c 7.66,0, 13.865,6.451, 13.865,14.449c0,7.905-6.195,14.326-13.865,14.326c-7.68,0-13.875-6.42-13.875-14.326
|
880 |
-
C 294.84-15.043, 301.036-21.494, 308.716-21.494zM 284.764,393.943c 20.357,0, 36.905,17.029, 36.905,37.97C 321.659,452.844, 305.121,469.76, 284.764,469.76c-20.347,0-36.905-16.916-36.905-37.847
|
881 |
-
C 247.859,410.972, 264.417,393.943, 284.764,393.943zM 84.644,62.228C 82.903,58.87, 81.92,55.060, 81.92,50.934c0-13.332, 10.568-24.207, 23.624-24.207c 9.37,0, 17.418,5.601, 21.228,13.67
|
882 |
-
l 80.497,142.336l-33.423,34.386L 84.644,62.228zM 259.062,68.618c-3.799-8.069-11.858-13.681-21.217-13.681c-12.954,0-23.501,10.875-23.501,24.207c0,4.137, 0.973,7.936, 2.724,11.305
|
883 |
-
l 35.052,63.375l-68.362,69.898c-26.235,27.095-7.506,56.433-7.506,56.433l 36.792,66.857l-97.587-0.113c-10.772,0-19.374,9.554-19.374,20.531
|
884 |
-
C 96.072,378.296, 104.673,387.84, 115.446,387.84l 295.352,0 C 421.478,387.84, 430.080,378.276, 430.080,367.309C 430.080,356.332, 421.478,346.88, 410.798,346.88L 298.138,346.88 l-53.76-96.85l 54.743-55.654
|
885 |
-
c 19.18-18.934, 6.758-40.202, 6.758-40.202L 259.062,68.618zM 348.16,29.44c0-5.663-4.577-10.24-10.24-10.24L 163.84,19.2 c-5.652,0-10.24,4.577-10.24,10.24l0,0c0,5.663, 4.588,10.24, 10.24,10.24l 174.080,0 C 343.583,39.68, 348.16,35.103, 348.16,29.44L 348.16,29.44z" data-tags="skateboarding" />
|
886 |
-
<glyph unicode="" d="M 73.789,161.116c 29.542,0, 53.443,24.566, 53.443,54.968c0,30.239-23.9,54.815-53.443,54.815C 44.37,270.899, 20.48,246.323, 20.48,216.084
|
887 |
-
C 20.48,185.692, 44.37,161.116, 73.789,161.116zM 373.105,66.744c 2.488,1.761, 5.775,1.229, 7.588-1.198l 9.882-14.049c 1.679-2.437, 1.167-5.939-1.188-7.844l-72.499-54.139
|
888 |
-
c-2.345-1.761-5.755-1.208-7.608,1.208l-9.851,14.049c-1.69,2.437-1.157,5.929, 1.188,7.823L 373.105,66.744zM 291.154,136.55L 262.4,188.396L 247.306,177.060L 276.060,124.938 zM 224.072,257.659L 112.251,459.52L 90.86,459.377L 208.845,246.18 zM 329.349,150.856C 335.667,155.576, 350.126,162.56, 358.4,162.56l 102.4,0 c 20.214,0, 30.72-20.337, 30.72-41.001C 491.52,100.772, 481.014,90.88, 460.8,90.88l-92.16,0 l-110.961-87.060
|
889 |
-
c-38.994-28.867-62.628,2.847-62.628,2.847l-86.866,89.385c-14.572,17.951-11.418,52.111, 6.052,67.236l 120.207,88.033
|
890 |
-
c 11.94,10.24, 29.665,8.632, 39.782-3.512c 9.994-12.288, 8.417-30.659-3.543-40.919l-76.954-57.928l 55.286-56.156L 329.349,150.856z" data-tags="playground" />
|
891 |
-
<glyph unicode="" d="M 360.233,469.76c-23.101,0-41.851-19.036-41.851-42.383c0-23.439, 18.749-42.363, 41.851-42.363c 23.235,0, 42.056,18.924, 42.056,42.363
|
892 |
-
C 402.289,450.724, 383.457,469.76, 360.233,469.76zM 43.387,177.51c-3.625,5.898-11.244,7.69-17.039,4.045c-5.847-3.676-7.608-11.356-3.973-17.265
|
893 |
-
c 3.645-5.786, 11.233-7.567, 17.162-3.983C 45.261,164.004, 47.012,171.674, 43.387,177.51zM 52.009,142.94c-3.625,5.786-11.244,7.578-17.152,3.901c-5.734-3.604-7.485-11.336-3.86-17.121
|
894 |
-
c 3.635-5.99, 11.254-7.69, 16.978-4.045C 53.821,129.362, 55.593,137.052, 52.009,142.94zM 60.58,108.257c-3.574,5.96-11.346,7.68-17.091,4.004c-5.908-3.645-7.608-11.315-3.963-17.265
|
895 |
-
c 3.574-5.775, 11.336-7.537, 17.080-3.891C 62.464,94.74, 64.215,102.482, 60.58,108.257zM 69.1,73.687c-3.625,5.786-11.244,7.567-16.968,4.055c-5.919-3.789-7.619-11.459-4.045-17.306
|
896 |
-
c 3.635-5.898, 11.254-7.68, 17.152-4.004C 70.973,60.109, 72.735,67.799, 69.1,73.687zM 270.51,3.226c-6.584-2.212-10.23-9.226-8.12-15.841c 2.171-6.646, 9.155-10.189, 15.636-8.141
|
897 |
-
c 6.523,2.14, 10.148,9.175, 8.11,15.708C 284.017,1.567, 277.033,5.171, 270.51,3.226zM 305.777,2.918c-6.554-1.997-10.107-9.124-8.018-15.636c 2.109-6.656, 9.134-10.322, 15.626-8.182
|
898 |
-
c 6.461,2.089, 10.086,9.206, 7.997,15.749C 319.232,1.382, 312.381,5.059, 305.777,2.918zM 341.258,2.806c-6.636-2.109-10.281-9.124-8.11-15.77c 2.089-6.523, 9.083-10.189, 15.626-8.059
|
899 |
-
c 6.472,1.997, 10.076,9.083, 7.916,15.739C 354.724,1.26, 347.72,4.956, 341.258,2.806zM 376.474,2.662c-6.461-2.14-10.097-9.175-8.018-15.729c 2.161-6.595, 9.165-10.189, 15.626-8.1
|
900 |
-
c 6.513,2.15, 10.076,9.083, 8.018,15.677C 389.99,1.157, 382.966,4.71, 376.474,2.662zM 460.78,305.92l-73.277,0 l-36.239,59.259c-6.257,13.384-19.364,22.589-34.847,23.214c-3.021,0.154-5.755-0.297-8.53-0.911l-184.197-43.756
|
901 |
-
c-11.141-2.632-18.125-13.793-15.462-25.139c 2.499-11.244, 13.466-18.196, 24.596-15.657l 122.993,22.405L 162.335,162.56L 94.31,162.56 L 94.208,162.56 L 62.341,162.56 l 22.139-80.824
|
902 |
-
c 0.748-2.621, 0.748,0.266, 1.608-1.116c 3.113-5.14, 9.769-5.028, 14.746-1.894c 2.724,1.608, 4.495,5.304, 4.997,8.233l 13.24,41.155
|
903 |
-
l 0.502,1.884c0,0, 61.153,0.358, 61.614,0.358c 12.268,0, 22.774,3.43, 29.010,13.824l 28.344,47.442l 63.089-64.748L 274.893,19.2c0,0, 92.211,0, 92.6,0
|
904 |
-
c 5.96,0, 10.844,6.236, 10.844,12.175c0,4.7-2.877,8.612-6.451,10.609l-39.977,22.692l 19.19,76.544c0,0, 4.762,16.271-10.332,31.171
|
905 |
-
l-51.61,52.255c0,0, 27.576,45.793, 45.251,75.213L 358.4,264.96c 10.24,0, 11.612,0, 15.79,0l 86.211,0 c 11.5,0, 20.767,8.94, 20.879,20.408
|
906 |
-
C 481.382,296.98, 472.136,305.92, 460.78,305.92z" data-tags="inline-skating" />
|
907 |
-
<glyph unicode="" d="M 295.465,185.784c 13.281-4.495, 27.72,2.253, 32.358,15.227c 4.618,12.943-2.427,27.013-15.718,31.519
|
908 |
-
c-13.302,4.506-27.74-2.365-32.358-15.309C 275.231,204.329, 282.173,190.157, 295.465,185.784zM 503.828,347.116c0,0-85.975,10.076-264.53,10.076C 107.592,357.192,0,347.116,0,347.116s 44.616-19.139, 36.874-78.469
|
909 |
-
c0,0, 64.020,7.434, 90.839-45.978l 120.248,35.523l-7.864-78.152L 189.235,167.885c-4.506-1.014-8.315-3.154-11.428-5.847L 66.222,57.108
|
910 |
-
c-6.584-6.072-6.697-16.323-0.338-22.61c 6.236-6.431, 16.753-6.656, 23.224-0.573l 83.958,78.787l 102.861,24.535l-0.696-0.215l 17.101,4.28
|
911 |
-
l 15.718-17.459c 2.427-2.58, 5.888-4.157, 9.595-4.157l 55.357-0.215c 6.943,0, 12.708,5.509, 12.708,12.38l0,0
|
912 |
-
c0,5.97-4.27,10.578-9.933,11.94l-41.257,139.889l 171.848,50.708C 514.58,337.9, 513.884,346.051, 503.828,347.116z M 363.418,144.364
|
913 |
-
c-12.595,0-33.638,0.113-39.987,0.113c-6.011,6.636-29.829,32.87-29.829,32.87c-0.338,0.451-0.922,0.563-1.27,0.901
|
914 |
-
c-6.011,6.861-15.596,10.455-25.18,8.223l-14.92-3.615l 7.977,78.94l 62.976,18.565L 363.418,144.364z" data-tags="hang-gliding" />
|
915 |
-
<glyph unicode="" d="M 65.864,259.328c-2.222-4.557-3.84-9.605-4.69-15.032c-0.379-2.693-0.625-5.417-0.625-8.12l 1.976-124.16L 19.466,19.61
|
916 |
-
c-1.485-2.724-2.591-5.898-3.082-9.236c-2.355-15.278, 8.161-29.45, 23.501-31.795c 11.878-1.843, 23.255,4.188, 28.703,14.193l 47.37,101.007
|
917 |
-
c 0.983,2.345, 1.864,4.813, 2.222,7.516c 0.133,1.229, 0.256,2.591, 0.256,3.809l-0.369,76.759l 72.796-31.662l 11.756-75.018
|
918 |
-
c 2.345-10.967, 11.377-19.732, 23.132-21.565c 15.34-2.212, 29.563,8.264, 31.928,23.398c 0.358,2.591, 0.358,5.181, 0.113,7.639l-14.346,90.563
|
919 |
-
c-1.731,8.745-7.537,16.261-15.708,20.091l-65.065,28.795l 41.431,71.823l 20.552-25.999c 2.099-2.335, 4.823-4.311, 7.905-5.54l 78.316-22.784
|
920 |
-
c 10.404-2.222, 21.043,3.185, 25.108,13.169c 4.577,11.336-0.85,24.146-12.114,28.703c-0.379,0.123-0.748,0.246-1.116,0.369l-68.045,19.958
|
921 |
-
l-51.22,61.225c-7.67,8.131-17.94,13.916-29.809,15.78c-20.787,3.072-40.52-6.779-50.913-23.532L 65.864,259.328zM 290.519,81.316l-4.946-37.202l-134.717-32.635L 152.156-11.52l 328.561,0 C 492.36-11.52, 501.76-2.181, 501.76,9.4L 501.391,450.427l-45.015,10.465
|
922 |
-
l-25.866-115.948l-43.244-18.104l-38.349-106.916l 36.434-81.807l-10.26-31.406L 290.519,81.316zM 199.045,386.232c 23.132,0, 41.933,18.719, 41.933,41.759C 240.968,451.021, 222.177,469.76, 199.045,469.76s-41.943-18.739-41.943-41.769
|
923 |
-
C 157.092,404.951, 175.903,386.232, 199.045,386.232zM 115.599,379.699c 3.215,5.663, 1.352,13.056-4.454,16.261L 90.849,407.788C 85.043,410.993, 77.732,409.139, 74.394,403.354L 11.807,295.793
|
924 |
-
c-3.215-5.663-1.362-12.933, 4.444-16.261l 20.419-11.715c 5.683-3.318, 12.995-1.352, 16.323,4.321L 115.599,379.699z" data-tags="climbing" />
|
925 |
-
<glyph unicode="" d="M 300.38,340.644c 19.425,0, 35.236,17.285, 35.236,38.543c0,21.268-15.811,38.554-35.236,38.554c-19.456,0-35.277-17.285-35.277-38.554
|
926 |
-
C 265.103,357.929, 280.924,340.644, 300.38,340.644zM 398.141,4.024L 348.16,172.8L 348.16,305.92 c0,18.084-20.541,20.48-20.541,20.48l-53.146,0 l-14.049,0 c0,0-8.837-5.069-14.664-10.24l-33.065-15.155l-40.837,45.404
|
927 |
-
c-6.656,8.643-18.401,10.25-26.307,2.98c-8.008-7.27-8.417-20.285-1.772-29.041l 52.060-56.883c 3.553-4.106, 8.428-6.84, 13.937-6.84
|
928 |
-
c 4.055,0-1.966,1.444, 1.167,3.779L 245.76,275.2l0-102.4 l-53.002-168.448c-3.85-15.237, 9.339-30.925, 23.357-35.021c 13.947-4.086, 30.751,4.997, 34.499,20.244
|
929 |
-
l 47.073,151.347l 47.329-151.695c 3.717-15.34, 19.405-24.33, 33.341-20.234C 392.294-26.931, 401.961-11.223, 398.141,4.024zM 134.523,301.066c 1.761-1.987, 4.782-2.038, 6.656,0l 0.625,0.573c 1.782,2.058, 1.884,5.345,0,7.332l-10.189,11.428
|
930 |
-
c-1.884,2.048-4.905,2.048-6.779,0.051l-0.512-0.625c-1.864-2.048-1.976-5.294-0.102-7.281L 134.523,301.066zM 232.018,430.469l-60.16-71.127l 7.301-8.131l 67.123,63.283l 44.626,44.974c 1.782,2.161, 2.908,4.997, 2.908,8.079
|
931 |
-
c0,6.82-4.997,12.39-11.131,12.452c-3.011,0.051-5.612-1.198-7.68-3.133L 232.018,430.469z" data-tags="baseball" />
|
932 |
-
<glyph unicode="" d="M 193.075,371.487c 22.958,0, 41.38,18.985, 41.38,42.373c0,23.398-18.422,42.383-41.38,42.383c-22.784,0-41.39-18.985-41.39-42.383
|
933 |
-
C 151.685,390.472, 170.291,371.487, 193.075,371.487zM 204.8,357.12L 81.92,357.12 c-20.48,0-20.48-30.72,0-30.72l 122.88,0 C 225.28,326.4, 225.28,357.12, 204.8,357.12zM 399.36,344.279c0,46.971-16.435,91.843-46.387,127.201C 353.106,471.603, 345.416,480, 345.416,480l-116.531-119.276l-1.987-1.966
|
934 |
-
c 0.358-0.532, 0.881-0.891, 1.106-1.495c 1.792-3.267, 2.785-6.902, 3.195-10.527c 0.123-1.495,0-3.041-0.174-4.588
|
935 |
-
c-0.225-3.154-0.819-6.246-2.14-9.175l-0.123-0.297c-0.287-0.532-0.41-1.188-0.748-1.782c-0.225-0.42-0.471-1.147-0.758-1.495
|
936 |
-
C 222.136,321.352, 213.371,316.16, 202.721,316.16L 133.12,316.16 l0-154.47 c0-0.123,0-9.236,0-9.37l-22.395-155.986c-2.447-12.851, 7.342-25.354, 19.896-27.853
|
937 |
-
C 143.176-34.15, 161.28-24.504, 163.84-11.52l 20.48,174.080l 10.24,0 l 34.714-175.391c 2.56-12.984, 20.5-21.32, 33.167-18.688c 12.452,2.499, 19.395,15.002, 16.947,27.853
|
938 |
-
L 245.76,162.877L 245.76,302.264 l 95.498-93.542c0,0, 9.759,8.448, 9.759,8.561C 380.826,252.611, 399.36,297.492, 399.36,344.279z M 378.255,326.4
|
939 |
-
c-3.42-30.72-21.32-67.871-43.756-95.048C 313.764,252.518, 266.24,292.383, 245.76,318.505L 245.76,326.4 L 378.255,326.4 z M 378.255,357.12L 244.756,357.12
|
940 |
-
c 24.525,30.72, 70.38,72.018, 93.88,96C 361.175,425.984, 374.958,398.080, 378.255,357.12z" data-tags="archery" />
|
941 |
-
<glyph unicode="" d="M 491.52-21.76c-10.199,0-20.173,2.324-28.979,6.236c-9.042,4.157-19.231,6.584-29.901,6.584
|
942 |
-
c-10.557,0-20.756-2.417-29.798-6.584C 393.943-19.436, 384.072-21.76, 373.76-21.76c-10.301,0-20.173,2.324-28.989,6.236
|
943 |
-
c-9.042,4.157-19.241,6.584-29.911,6.584c-10.547,0-20.746-2.417-29.85-6.584C 276.214-19.436, 266.312-21.76, 255.99-21.76
|
944 |
-
c-10.26,0-20.183,2.324-28.969,6.236c-9.103,4.157-19.241,6.584-29.901,6.584c-10.619,0-20.756-2.417-29.85-6.584
|
945 |
-
C 158.413-19.436, 148.552-21.76, 138.24-21.76c-10.332,0-20.183,2.324-29.020,6.236c-9.021,4.157-19.241,6.584-29.86,6.584
|
946 |
-
c-10.67,0-20.828-2.417-29.85-6.584C 40.663-19.436, 30.802-21.76, 20.48-21.76l0,42.803 c 10.322,0, 20.183,2.324, 29.020,6.236
|
947 |
-
c 9.021,4.055, 19.19,6.482, 29.85,6.482c 10.619,0, 20.828-2.417, 29.86-6.482c 8.847-3.922, 18.698-6.236, 29.020-6.236
|
948 |
-
c 10.322,0, 20.173,2.324, 29.020,6.236c 9.093,4.055, 19.231,6.482, 29.85,6.482c 10.67,0, 20.808-2.417, 29.901-6.482
|
949 |
-
c 8.786-3.922, 18.708-6.236, 28.969-6.236c 10.322,0, 20.224,2.324, 29.020,6.236c 9.103,4.055, 19.302,6.482, 29.85,6.482
|
950 |
-
c 10.67,0, 20.869-2.417, 29.911-6.482c 8.817-3.922, 18.688-6.236, 28.989-6.236c 10.312,0, 20.183,2.324, 29.082,6.236
|
951 |
-
c 9.042,4.055, 19.241,6.482, 29.798,6.482c 10.67,0, 20.859-2.417, 29.901-6.482c 8.806-3.922, 18.78-6.236, 28.979-6.236L 491.5-21.76 zM 71.035,225.915c 15.77,0, 28.559,12.575, 28.559,28.047c0,15.452-12.79,28.037-28.559,28.037
|
952 |
-
c-15.729,0-28.508-12.585-28.508-28.037C 42.527,238.479, 55.306,225.915, 71.035,225.915zM 196.465,101.12l-81.633,0 c-12.012,0-22.446,5.765-27.146,15.954l-30.198,67.113c-0.584,2.304-0.881,4.291-0.881,6.728
|
953 |
-
c0,16.261, 13.373,29.266, 29.86,29.266l 66.314,0.041l 45.507,20.275c 0.707,0.451, 2.57,0.891, 4.577,0.891c 7.793,0, 14.193-6.359, 14.193-13.978
|
954 |
-
c0-4.741-2.468-9.011-6.103-11.551l-49.49-20.808C 158.177,192.522, 151.962,193.28, 151.962,193.28l-29.798,0 l 24.986-61.44l 55.183,0 l0,0
|
955 |
-
c 5.448,0, 9.267,0.461, 12.595-2.417l 54.088-49.418l0,0c 7.557-6.902, 7.967-17.981, 0.932-25.477c-7.086-7.383-18.944-6.298-26.511,0.625l0,0
|
956 |
-
L 196.465,101.12zM 450.836,190.362c 1.044-1.741, 3.604-2.417, 5.98-2.417c 4.536,0, 8.315,3.697, 8.315,8.305
|
957 |
-
c0,2.202-1.075,4.157-2.12,6.021c-51.016,95.775-188.744,67.277-205.629,61.041c-2.806-1.044-4.454-4.157-4.454-7.281
|
958 |
-
c0-4.485, 3.748-8.192, 8.315-8.192c 1.413,0, 2.109,0.123, 3.338,0.461C 399.677,278.19, 443.668,202.476, 450.836,190.362z M 474.296,181.699
|
959 |
-
L 301.548,74.496L 144.271,469.76C 285.010,451.41, 463.954,343.849, 474.296,181.699z" data-tags="wind-surfing" />
|
960 |
-
<glyph unicode="" d="M 10.24,428.8L 88.238,347.976L 118.211,375.255L 91.075,428.554 zM 361.841,202.414c 14.735-4.116, 30.597,4.342, 34.775,19.548c 4.045,14.93-4.557,30.628-19.436,34.867l-11.54,3.226
|
961 |
-
l-14.981-54.292L 361.841,202.414zM 352.758,263.547l-93.338,26.655c-6.144,1.618-12.339-2.13-14.070-8.346l-8.724-31.631
|
962 |
-
c-1.71-6.226, 1.597-12.575, 7.864-14.449l 93.409-26.409L 352.758,263.547zM 367.483,173.629c-7.117,6.851-15.964,12.329-26.255,15.196l-113.183,32.123l0,0l-69.53,125.030
|
963 |
-
c-3.686,6.472-9.585,11.581-17.203,13.701c-15.237,4.352-31.089-4.731-35.256-20.173c-2.089-7.352-1.106-14.817, 2.212-21.166l 86.979-154.665
|
964 |
-
c0,0, 7.127-11.581, 25.057-17.572l 158.126-44.964l 73.339-75.459c 2.458-2.611, 5.663-4.598, 9.462-5.734c 11.059-3.113, 22.6,3.625, 25.805,14.715
|
965 |
-
c 2.099,7.834-0.358,16.056-5.898,21.166L 367.483,173.629zM 451.901,142.367l 16.435-21.791L 501.76,157.573l-28.242,15.954c 2.683,20.050-9.605,39.465-29.256,45.066
|
966 |
-
c-21.617,6.113-44.104-6.595-50.104-28.518c-6.164-22.047, 6.502-44.698, 28.119-50.811C 432.599,136.284, 443.044,137.902, 451.901,142.367z" data-tags="scuba-diving" />
|
967 |
-
<glyph unicode="" d="M 481.28-21.76c-9.748,0-19.292,2.253-27.699,6.113c-8.632,4.065-18.381,6.451-28.611,6.451
|
968 |
-
c-10.097,0-19.845-2.376-28.477-6.451C 387.953-19.507, 378.511-21.76, 368.66-21.76c-9.769,0-19.292,2.253-27.73,6.113
|
969 |
-
c-8.612,4.065-18.381,6.451-28.59,6.451c-10.107,0-19.855-2.376-28.518-6.451C 275.343-19.507, 265.861-21.76, 256.051-21.76
|
970 |
-
c-9.871,0-19.292,2.253-27.771,6.113c-8.632,4.065-18.401,6.451-28.539,6.451c-10.209,0-19.978-2.376-28.611-6.451
|
971 |
-
C 162.703-19.507, 153.231-21.76, 143.35-21.76c-9.81,0-19.292,2.253-27.75,6.113c-8.643,4.065-18.401,6.451-28.559,6.451
|
972 |
-
c-10.158,0-19.917-2.376-28.559-6.451C 50.012-19.507, 40.591-21.76, 30.72-21.76l0,42.004 c 9.871,0, 19.292,2.253, 27.761,6.113
|
973 |
-
c 8.643,3.963, 18.401,6.339, 28.559,6.339c 10.148,0, 19.907-2.376, 28.559-6.339c 8.468-3.86, 17.94-6.113, 27.75-6.113
|
974 |
-
c 9.882,0, 19.354,2.253, 27.771,6.113c 8.632,3.963, 18.401,6.339, 28.611,6.339c 10.138,0, 19.907-2.376, 28.539-6.339
|
975 |
-
c 8.489-3.86, 17.9-6.113, 27.771-6.113c 9.81,0, 19.292,2.253, 27.771,6.113c 8.663,3.963, 18.412,6.339, 28.518,6.339
|
976 |
-
c 10.209,0, 19.978-2.376, 28.59-6.339c 8.438-3.86, 17.961-6.113, 27.73-6.113c 9.851,0, 19.292,2.253, 27.832,6.113
|
977 |
-
c 8.632,3.963, 18.381,6.339, 28.477,6.339c 10.23,0, 19.978-2.376, 28.611-6.339c 8.407-3.86, 17.951-6.113, 27.699-6.113L 481.27-21.76 zM 296.96,469.76L 296.96,152.32L 43.899,152.32 zM 327.68,396.861C 327.68,361.421, 489.953,264.96, 478.136,152.32L 327.68,152.32 L 327.68,396.861 L 327.68,396.861zM 445.716,131.84l-69.99,0 L 102.4,131.84 l0-63.488 c 10.24-1.024, 8.663-2.161, 12.155-3.86c 8.468-3.738, 18.473-5.99, 28.283-5.99
|
978 |
-
c 9.882,0, 19.62,2.253, 28.037,5.99c 8.632,4.076, 18.534,6.451, 28.744,6.451c 10.138,0, 19.968-2.365, 28.6-6.451
|
979 |
-
c 8.489-3.738, 17.93-5.99, 27.802-5.99c 9.81,0, 19.302,2.253, 27.781,5.99c 8.663,4.076, 18.422,6.451, 28.529,6.451
|
980 |
-
c 10.209,0, 19.988-2.365, 28.6-6.451c 8.438-3.738, 17.961-5.99, 27.73-5.99c 1.915,0, 3.686,0.451, 5.489,0.676
|
981 |
-
c 0.225,0, 0.225-0.225, 0.461-0.225c 1.219,0, 2.12,0.563, 3.359,0.563c 2.243,0.338, 4.475,0.573, 6.728,1.126
|
982 |
-
c 20.173,4.188, 33.219,20.541, 33.219,20.541L 457.185,131.84L 445.716,131.84 z" data-tags="sailing" />
|
983 |
-
<glyph unicode="" d="M 257.198,374.17c-15.104,0-27.556,12.513-27.556,27.853c0,15.442, 12.452,27.843, 27.556,27.843
|
984 |
-
c 15.37,0, 27.699-12.401, 27.699-27.843C 284.897,386.683, 272.568,374.17, 257.198,374.17z M 480.799,130.396l-14.756,92.436
|
985 |
-
c-1.679,8.643-9.196,15.217-18.135,15.217c-5.437,0-10.281-2.314-13.793-6.093l-67.983-64.102c-1.065-0.973-2.161-2.058-3.144-3.41
|
986 |
-
c-6.39-8.745-4.567-21.156, 4.137-27.73c 1.659-1.198, 3.502-2.058, 5.315-2.796l 17.029-5.724C 373.064,81.51, 325.816,39.281, 276.48,29.44L 276.48,336.64
|
987 |
-
c 24.177,10.342, 48.077,37.396, 48.077,65.382C 324.557,439.48, 294.431,469.76, 257.198,469.76c-37.1,0-67.338-30.28-67.338-67.738
|
988 |
-
c0-27.986, 21.586-55.040, 45.65-65.382l0-307.2 c-50.422,9.124-96.317,51.2-113.132,98.765l 17.183,5.724c 1.812,0.737, 3.615,1.597, 5.315,2.796
|
989 |
-
c 8.694,6.574, 10.629,18.985, 4.116,27.73c-0.983,1.352-1.935,2.437-3.154,3.41l-67.973,64.102c-3.389,3.779-8.346,6.093-13.67,6.093
|
990 |
-
c-9.062,0-16.691-6.574-18.258-15.217l-14.756-92.436C 30.843,128.942, 30.72,127.365, 30.72,125.768c0-10.916, 8.827-19.825, 19.722-19.825
|
991 |
-
c 2.048,0, 3.983,0.256, 5.796,0.87l 15.964,5.222C 97.597,34.437, 170.25-21.76, 256-21.76c 85.74,0, 158.423,56.197, 183.818,133.919l 15.974-5.335
|
992 |
-
c 1.792-0.614, 3.758-0.87, 5.786-0.87c 10.885,0, 19.712,8.899, 19.712,19.825C 481.28,127.365, 481.167,128.942, 480.799,130.396z" data-tags="marina" />
|
993 |
-
<glyph unicode="" d="M 178.555,348.058c 25.231,0, 45.568,20.408, 45.568,45.527C 224.123,418.693, 203.776,439.040, 178.555,439.040
|
994 |
-
c-25.18,0-45.578-20.347-45.578-45.455C 132.966,368.466, 153.375,348.058, 178.555,348.058zM 10.24,99.41c 10.24,0, 20.982,2.458, 30.177,6.584c 9.441,4.362, 20.142,6.922, 31.212,6.922c 11.080,0, 21.76-2.56, 31.15-6.922
|
995 |
-
c 9.257-4.116, 19.589-6.523, 30.362-6.523c 10.721,0, 21.043,2.396, 30.249,6.523c 9.38,4.362, 20.050,6.922, 31.191,6.922
|
996 |
-
c 11.069,0, 21.668-2.56, 31.171-6.922c 9.155-4.116, 19.528-6.523, 30.249-6.523c 10.721,0, 21.094,2.396, 30.239,6.523
|
997 |
-
c 9.503,4.362, 20.122,6.922, 31.242,6.922c 11.080,0, 21.678-2.56, 31.119-6.922c 9.257-4.116, 19.589-6.523, 30.321-6.523
|
998 |
-
c 10.752,0, 21.043,2.396, 30.3,6.523c 9.38,4.362, 20.040,6.922, 31.109,6.922c 9.503,0, 18.719-1.812, 27.034-5.059
|
999 |
-
c 13.537,14.756, 21.934,34.406, 21.934,55.921c0,45.814-37.181,82.903-83.046,82.903l-9.308-0.993c-10.209-41.339-51.651-43.080-51.651-43.080
|
1000 |
-
L 155.648,202.66l-15.852,9.308l 38.226,64l 41.851-24.125c 25.057-16.21, 38.103,6.513, 38.103,6.513l 41.964,68.26
|
1001 |
-
c 18.237,29.655-20.449,53.432-38.574,23.665l-29.379-47.841l-69.816,38.543c-48.384,26.921-68.884-17.674-68.884-17.674l-54.835-93.716
|
1002 |
-
c-9.329-19.476-1.065-27.843-1.065-27.843L 10.24,201.789L 10.24,99.41 zM 501.76,8.96c-10.732,0-21.043,2.376-30.188,6.513c-9.492,4.362-20.111,6.912-31.242,6.912
|
1003 |
-
c-11.069,0-21.729-2.55-31.109-6.912C 399.964,11.336, 389.673,8.96, 378.921,8.96c-10.732,0-21.064,2.376-30.321,6.513
|
1004 |
-
c-9.441,4.362-20.040,6.912-31.119,6.912c-11.121,0-21.74-2.55-31.242-6.912C 277.094,11.336, 266.721,8.96, 256,8.96
|
1005 |
-
c-10.711,0-21.094,2.376-30.249,6.513c-9.503,4.362-20.101,6.912-31.171,6.912c-11.131,0-21.801-2.55-31.181-6.912
|
1006 |
-
C 154.194,11.336, 143.872,8.96, 133.151,8.96c-10.783,0-21.105,2.376-30.362,6.513c-9.39,4.362-20.050,6.912-31.13,6.912
|
1007 |
-
c-11.069,0-21.74-2.55-31.171-6.912C 31.283,11.336, 20.961,8.96, 10.24,8.96l0,45.23 c 10.721,0, 21.043,2.437, 30.249,6.574
|
1008 |
-
c 9.441,4.352, 20.101,6.912, 31.171,6.912c 11.080,0, 21.75-2.56, 31.13-6.912c 9.257-4.127, 19.579-6.574, 30.362-6.574
|
1009 |
-
c 10.721,0, 21.043,2.437, 30.249,6.574c 9.38,4.352, 20.050,6.912, 31.181,6.912c 11.069,0, 21.668-2.56, 31.171-6.912
|
1010 |
-
c 9.155-4.127, 19.528-6.574, 30.249-6.574c 10.721,0, 21.094,2.437, 30.239,6.574c 9.503,4.352, 20.122,6.912, 31.242,6.912
|
1011 |
-
c 11.080,0, 21.678-2.56, 31.119-6.912c 9.257-4.127, 19.589-6.574, 30.321-6.574c 10.752,0, 21.043,2.437, 30.3,6.574
|
1012 |
-
c 9.38,4.352, 20.040,6.912, 31.109,6.912c 11.131,0, 21.75-2.56, 31.242-6.912c 9.155-4.127, 19.456-6.574, 30.188-6.574L 501.76,8.96 z" data-tags="canoe" />
|
1013 |
-
<glyph unicode="" d="M 491.52,60.16c-10.24,0-18.985,2.314-27.996,6.298c-9.38,4.209-18.964,6.676-29.932,6.676
|
1014 |
-
c-10.916,0-21.012-2.468-30.249-6.676C 394.209,62.474, 384.307,60.16, 373.678,60.16c-10.568,0-20.654,2.314-29.778,6.298
|
1015 |
-
c-9.308,4.209-19.712,6.676-30.628,6.676c-10.957,0-21.412-2.468-30.792-6.676c-9.011-3.994-19.22-6.298-29.798-6.298
|
1016 |
-
c-10.578,0-20.787,2.314-29.819,6.298c-9.37,4.209-19.825,6.676-30.74,6.676c-10.977,0-21.494-2.468-30.74-6.676
|
1017 |
-
C 152.3,62.474, 142.131,60.16, 131.553,60.16c-10.629,0-20.797,2.314-29.932,6.298c-9.257,4.209-19.773,6.676-30.689,6.676
|
1018 |
-
c-10.916,0-21.494-2.468-30.802-6.676C 31.037,62.474, 20.48,60.16, 10.24,60.16l0,43.725 c 10.24,0, 20.797,2.355, 29.88,6.359c 9.318,4.198, 19.855,6.676, 30.771,6.676
|
1019 |
-
c 10.916,0, 21.453-2.478, 30.71-6.676c 9.144-4.004, 19.313-6.359, 29.942-6.359c 10.588,0, 20.746,2.355, 29.829,6.359
|
1020 |
-
c 9.247,4.198, 19.773,6.676, 30.751,6.676c 10.916,0, 21.371-2.478, 30.74-6.676c 9.021-4.004, 19.251-6.359, 29.829-6.359
|
1021 |
-
c 10.578,0, 20.808,2.355, 29.819,6.359c 9.38,4.198, 19.845,6.676, 30.812,6.676c 10.916,0, 21.381-2.478, 30.689-6.676
|
1022 |
-
c 9.134-4.004, 19.323-6.359, 29.891-6.359c 10.629,0, 20.746,2.355, 29.88,6.359c 9.236,4.198, 19.773,6.676, 30.689,6.676
|
1023 |
-
c 10.967,0, 19.671-2.478, 29.051-6.676C 472.535,106.24, 481.28,103.885, 491.52,103.885L 491.52,60.16 zM 10.527,244.48l-0.174-101.478c 10.578,0, 20.746,3.185, 29.829,7.178c 9.318,4.219, 19.835,7.137, 30.74,7.137
|
1024 |
-
c 10.916,0, 21.432-2.243, 30.689-6.461c 9.144-4.004, 19.302-6.185, 29.932-6.185c 10.588,0, 20.746,2.345, 29.829,6.339
|
1025 |
-
c 9.247,4.219, 19.773,6.717, 30.74,6.717c 10.916,0, 21.371-2.447, 30.74-6.666c 9.021-4.004, 19.251-6.287, 29.829-6.287
|
1026 |
-
c 10.578,0, 20.808,2.304, 29.819,6.298c 9.38,4.219, 19.845,6.687, 30.812,6.687c 10.916,0, 21.381-2.468, 30.689-6.687
|
1027 |
-
c 9.134-4.004, 19.323-6.287, 29.891-6.287c 2.99,0, 5.857,0.625, 8.786,0.952c 5.335,1.116, 10.742,1.628, 15.923,3.645
|
1028 |
-
c 0.113,0.051, 0.236,0.113, 0.348,0.174c 38.502,15.278, 71.711,51.313, 92.447,79.524L 501.76,244.48L 10.527,244.48 zM 284.713,357.12l 71.035,0 l 0.635,0 l 0.461,0 c 0.809,0, 19.476,2.877, 25.743-10.783L 409.692,285.44c-13.036,0-45.046,0-92.396,0
|
1029 |
-
L 284.713,357.12z M 92.16,291.768C 92.16,286.996, 88.228,285.44, 83.405,285.44L 43.745,285.44 C 38.912,285.44, 30.72,286.996, 30.72,291.768l0,58.665 C 30.72,355.144, 38.912,357.12, 43.745,357.12l 39.649,0
|
1030 |
-
C 88.228,357.12, 92.16,355.144, 92.16,350.433L 92.16,291.768 z M 256,291.768C 256,286.996, 251.72,285.44, 246.835,285.44l-39.598,0 C 202.353,285.44, 194.56,286.996, 194.56,291.768l0,58.665
|
1031 |
-
C 194.56,355.144, 202.353,357.12, 207.237,357.12l 39.598,0 C 251.72,357.12, 256,355.144, 256,350.433L 256,291.768 z M 174.080,291.768C 174.080,286.996, 169.82,285.44, 164.946,285.44l-39.363,0
|
1032 |
-
C 120.689,285.44, 112.64,286.996, 112.64,291.768l0,58.665 C 112.64,355.144, 120.689,357.12, 125.583,357.12l 39.363,0 C 169.82,357.12, 174.080,355.144, 174.080,350.433L 174.080,291.768 z M 394.701,364.237
|
1033 |
-
C 382.915,389.857, 351.017,387.84, 351.017,387.84L 10.291,387.84 L 10.24,264.96l 427.162,0 L 394.701,364.237z" data-tags="boat-tour" />
|
1034 |
-
<glyph unicode="" d="M 87.040,407.378l 97.946-27.023L 239.35,418.56l 18.913-4.659l-53.852-38.318l 296.806-82.463l-21.719-80.712l-297.912,82.237
|
1035 |
-
C 66.171,329.452, 87.214,407.378, 87.214,407.378M 347.72,200.878c-0.358,6.738-1.638,13.158-3.84,19.22l 135.997-37.857l-4.362-16.783L 347.72,200.878zM 224.164,234.998c 3.666,5.335, 8.008,10.148, 12.943,14.316L 10.24,311.982l0-18.053 L 224.164,234.998zM 280.34,175.237c 12.196,0, 22.098,9.923, 22.098,22.118c0,12.237-9.902,22.139-22.098,22.139
|
1036 |
-
c-12.237,0-22.129-9.902-22.129-22.139C 258.212,185.16, 268.104,175.237, 280.34,175.237z M 501.76,39.68c-10.762,0-21.002,2.437-30.136,6.636
|
1037 |
-
c-9.503,4.301-20.101,6.881-31.201,6.881c-11.059,0-21.719-2.58-31.078-6.881C 400.077,42.117, 389.857,39.68, 379.085,39.68
|
1038 |
-
c-10.762,0-21.023,2.437-30.259,6.636c-9.421,4.301-19.999,6.881-31.078,6.881c-11.121,0-21.699-2.58-31.181-6.881
|
1039 |
-
C 277.422,42.117, 267.059,39.68, 256.348,39.68c-10.701,0-21.002,2.437-30.198,6.636c-9.482,4.301-20.142,6.881-31.191,6.881
|
1040 |
-
c-11.059,0-21.709-2.58-31.078-6.881C 154.685,42.117, 144.333,39.68, 133.612,39.68c-10.701,0-21.002,2.437-30.259,6.636
|
1041 |
-
c-9.38,4.301-20.029,6.881-31.089,6.881c-11.049,0-21.699-2.58-31.13-6.881C 31.949,42.117, 21.586,39.68, 10.936,39.68L 10.24,219.955l 248.084-68.465
|
1042 |
-
c-17.101,8.264-28.979,25.6-28.979,45.865c0,28.201, 22.804,51.026, 50.985,51.026c 28.099,0, 50.964-22.825, 50.964-51.026c0-28.18-22.856-50.995-50.964-50.995
|
1043 |
-
c-1.7,0-3.379,0.338-5.018,0.481l 226.079-62.341L 501.76,39.68z" data-tags="boat-ramp" />
|
1044 |
-
<glyph unicode="" d="M 501.76,70.4c-10.762,0-21.012,2.376-30.228,6.564c-9.39,4.239-20.029,6.799-31.15,6.799c-11.172,0-21.821-2.58-31.222-6.799
|
1045 |
-
C 399.954,72.776, 389.693,70.4, 378.921,70.4c-10.752,0-21.053,2.376-30.208,6.564c-9.554,4.239-20.214,6.799-31.212,6.799
|
1046 |
-
c-11.131,0-21.791-2.58-31.222-6.799C 277.115,72.776, 266.701,70.4, 256.041,70.4c-10.772,0-21.023,2.376-30.31,6.564
|
1047 |
-
c-9.431,4.239-20.050,6.799-31.089,6.799c-11.131,0-21.78-2.58-31.212-6.799C 154.266,72.776, 143.852,70.4, 133.079,70.4
|
1048 |
-
c-10.609,0-21.023,2.376-30.188,6.564C 93.46,81.203, 82.801,83.763, 71.68,83.763c-11.049,0-21.647-2.58-31.099-6.799
|
1049 |
-
C 31.273,72.776, 21.012,70.4, 10.24,70.4l0,45.015 c 10.762,0, 21.023,2.437, 30.341,6.461C 50.033,126.218, 60.631,128.778, 71.68,128.778
|
1050 |
-
c 11.121,0, 21.78-2.56, 31.212-6.902c 9.165-4.024, 19.579-6.461, 30.188-6.461c 10.762,0, 21.187,2.437, 30.351,6.461
|
1051 |
-
c 9.421,4.342, 20.081,6.902, 31.212,6.902c 11.039,0, 21.647-2.56, 31.089-6.902c 9.288-4.024, 19.538-6.461, 30.31-6.461
|
1052 |
-
c 10.66,0, 21.064,2.437, 30.239,6.461c 9.431,4.342, 20.091,6.902, 31.222,6.902c 10.988,0, 21.637-2.56, 31.212-6.902
|
1053 |
-
c 9.165-4.024, 19.456-6.461, 30.208-6.461c 10.772,0, 21.033,2.437, 30.239,6.461c 9.4,4.342, 20.050,6.902, 31.222,6.902
|
1054 |
-
c 11.121,0, 21.76-2.56, 31.15-6.902c 9.216-4.024, 19.466-6.461, 30.228-6.461L 501.76,70.4 zM 430.572,197.745c 32.276,0, 58.47,26.112, 58.47,58.143c0,32.061-26.194,58.040-58.47,58.040c-32.328,0-58.491-25.989-58.491-58.040
|
1055 |
-
C 372.081,223.857, 395.919,197.745, 430.572,197.745zM 90.020,165.059c 4.536-1.075, 8.817-2.642, 12.882-4.465c 9.165-4.116, 19.579-6.564, 30.198-6.564c 10.752,0, 21.187,2.437, 30.341,6.564
|
1056 |
-
c 9.431,4.239, 20.081,6.922, 31.212,6.922c 11.039,0, 21.668-2.683, 31.089-6.922c 9.277-4.116, 19.538-6.564, 30.31-6.564
|
1057 |
-
c 10.65,0, 21.074,2.437, 30.228,6.564c 9.441,4.239, 20.091,6.922, 31.222,6.922c 10.998,0, 21.658-2.683, 31.212-6.922
|
1058 |
-
c 9.175-4.116, 19.456-6.564, 30.228-6.564c 7.834,0, 15.38,1.321, 22.497,3.543l-97.536,174.653l 113.449,20.552
|
1059 |
-
c 16.65,3.154, 28.733,16.138, 28.733,32.758c0,18.33-15.022,33.024-33.403,33.024c-1.321,0-2.55,0-3.789-0.113L 233.646,386.785
|
1060 |
-
c-12.298-2.796-28.59-20.675-19.313-42.609c 0.512-1.208, 0.973-2.335, 1.495-3.533l 45.732-81.951L 90.020,165.059z" data-tags="swimming" />
|
1061 |
-
<glyph unicode="" d="M 491.52-21.76c-10.301,0-20.183,2.355-28.979,6.369c-9.144,4.25-19.343,6.728-29.901,6.728c-10.66,0-20.879-2.478-29.901-6.728
|
1062 |
-
C 393.943-19.405, 383.959-21.76, 373.77-21.76c-10.332,0-20.285,2.355-29.092,6.369c-9.042,4.25-19.241,6.728-29.901,6.728
|
1063 |
-
c-10.557,0-20.767-2.478-29.798-6.728C 276.193-19.405, 266.22-21.76, 255.898-21.76c-10.322,0-20.173,2.355-28.969,6.369
|
1064 |
-
c-9.042,4.25-19.21,6.728-29.88,6.728c-10.557,0-20.777-2.478-29.911-6.728C 158.341-19.405, 148.5-21.76, 138.23-21.76
|
1065 |
-
c-10.322,0-20.173,2.355-28.969,6.369c-9.021,4.25-19.241,6.728-29.901,6.728c-10.557,0-20.756-2.478-29.901-6.728C 40.653-19.405, 30.802-21.76, 20.48-21.76
|
1066 |
-
l0,43.786 c 10.322,0, 20.173,2.365, 28.969,6.4c 9.155,4.106, 19.343,6.595, 29.901,6.595c 10.67,0, 20.879-2.478, 29.901-6.595
|
1067 |
-
c 8.796-4.035, 18.647-6.4, 28.969-6.4c 10.271,0, 20.111,2.365, 28.918,6.4c 9.134,4.106, 19.354,6.595, 29.911,6.595
|
1068 |
-
c 10.67,0, 20.838-2.478, 29.88-6.595c 8.796-4.035, 18.647-6.4, 28.969-6.4c 10.312,0, 20.285,2.365, 29.082,6.4
|
1069 |
-
c 9.032,4.106, 19.241,6.595, 29.798,6.595c 10.66,0, 20.859-2.478, 29.901-6.595c 8.796-4.035, 18.76-6.4, 29.092-6.4
|
1070 |
-
c 10.189,0, 20.173,2.365, 28.969,6.4c 9.021,4.106, 19.241,6.595, 29.901,6.595c 10.557,0, 20.756-2.478, 29.901-6.595
|
1071 |
-
c 8.796-4.035, 18.678-6.4, 28.979-6.4L 491.52-21.76 zM 301.281,68.659c 4.465,0.942, 8.919,1.413, 13.496,1.413c 10.66,0, 20.859-2.468, 29.901-6.595c 8.796-4.035, 18.76-6.39, 29.092-6.39
|
1072 |
-
c 10.189,0, 20.173,2.355, 28.969,6.39c 6.216,2.806, 12.902,5.069, 20.060,6.011C 418.918,186.972, 297.175,291.789, 291.441,297.216
|
1073 |
-
c-5.98,5.437-11.5,17.347-7.619,31.406l 29.071,96.799c 5.171,15.002, 2.591,35.062-4.557,41.083c-4.106,3.308-12.79,5.673-18.668-1.065
|
1074 |
-
l-78.664-89.825c-17.244-18.422-2.806-38.134-3.154-38.021c-26.757,9.687-58.173,3.195-77.23-4.71l-64.983-33.188
|
1075 |
-
c-6.451-2.714-9.257-10.967-5.857-16.517c 10.793-17.367, 46.561-17.48, 121.088-9.329C 301.281,286.843, 301.404,92.621, 301.281,68.659z" data-tags="whale-watching" />
|
1076 |
-
<glyph unicode="" d="M 303.196,35.195c 3.523,0.594, 7.045,0.809, 10.68,0.809c 10.977,0, 21.504-2.499, 30.843-6.84c 9.083-3.953, 19.241-6.349, 29.88-6.349
|
1077 |
-
s 20.941,2.396, 30.024,6.349c 9.298,4.342, 19.825,6.84, 30.72,6.84c 11.018,0, 19.292-2.499, 28.59-6.84c 9.083-3.953, 17.347-6.349, 27.587-6.349L 491.52-21.76
|
1078 |
-
c-10.24,0-18.514,2.396-27.587,6.513c-9.298,4.157-18.708,6.717-29.727,6.717c-10.895,0-20.849-2.56-30.147-6.717
|
1079 |
-
C 394.967-19.364, 384.963-21.76, 374.323-21.76s-20.664,2.396-29.737,6.513c-9.339,4.157-19.794,6.717-30.771,6.717
|
1080 |
-
c-10.895,0-21.412-2.56-30.853-6.717C 273.889-19.364, 263.731-21.76, 253.092-21.76c-10.65,0-20.808,2.396-29.88,6.513
|
1081 |
-
c-9.298,4.157-19.794,6.717-30.802,6.717c-11.018,0-21.545-2.56-30.863-6.717C 152.484-19.364, 142.305-21.76, 131.727-21.76
|
1082 |
-
c-10.65,0-20.818,2.396-29.88,6.513c-9.441,4.157-19.978,6.717-30.863,6.717c-11.008,0-21.545-2.56-30.843-6.717
|
1083 |
-
C 31.058-19.364, 20.89-21.76, 10.24-21.76l0,44.575 c 10.65,0, 20.818,2.396, 29.901,6.349c 9.298,4.342, 19.835,6.84, 30.843,6.84
|
1084 |
-
c 10.885,0, 21.412-2.499, 30.863-6.84c 9.062-3.953, 19.241-6.349, 29.88-6.349c 10.578,0, 20.756,2.396, 29.819,6.349
|
1085 |
-
c 5.345,2.396, 10.895,4.342, 16.701,5.396l 283.116,50.104c 9.175,2.161, 21.658,8.509, 25.999,19.446c 0.86,2.079, 3.86,2.673, 6.4,2.56
|
1086 |
-
C 498.381,106.404, 501.76,102.451, 501.76,97.874c0-7.209-5.581-27.392-36.516-33.628L 303.196,35.195zM 57.549,388.444c 22.62,0, 41.021,18.258, 41.021,40.724C 98.57,451.625, 80.169,469.76, 57.549,469.76C 34.939,469.76, 16.66,451.625, 16.66,429.169
|
1087 |
-
C 16.66,406.692, 34.939,388.444, 57.549,388.444zM 176.66,59.802c 2.068-9.021, 13.076-17.664, 24.576-17.664l-0.133-0.123c 14.367,0, 26.112,11.54, 26.112,25.938l-0.481,4.219l-31.191,132.956
|
1088 |
-
c-2.662,8.53-10.783,16.589-19.128,19.958l0,0l-45.906,27.382l-20.931,89.6l 129.004,0.236c 10.537,0, 19.016,7.117, 19.016,17.582
|
1089 |
-
c0,10.445-8.479,17.705-19.016,17.705L 52.337,377.59 c-18.606,0-27.218-11.94-25.027-23.47l 26.378-118.159c 2.068-11.172, 9.431-20.224, 19.374-25.16
|
1090 |
-
l 0.594-0.072l 76.78-44.739L 176.66,59.802zM 266.24,357.12L 501.76,357.12L 501.76,346.88L 266.24,346.88z" data-tags="waterskiing" />
|
1091 |
-
<glyph unicode="" d="M 96.42,116.838c 137.411-58.092, 241.777-91.965, 388.782-138.537c 3.011-0.461, 5.786,1.628, 6.246,4.772
|
1092 |
-
c 0.461,3.021-1.608,5.939-4.628,6.523C 255.263,62.822, 73.492,143.964, 32.020,162.826c-4.291,1.731-9.277-0.236-10.885-4.444
|
1093 |
-
c-1.741-4.311, 0.113-8.96, 4.28-10.588c 10.312-4.649, 20.5-9.185, 30.351-13.496l-32.666-25.027c-3.707-5.468-2.089-12.462, 3.359-16.179
|
1094 |
-
c 4.055-2.796, 9.851-2.447, 13.783,0.123L 96.42,116.838zM 475.689,263.465l-106.957,98.734c 0.799-0.051, 1.556-0.236, 2.365-0.236c 21.658,0, 39.148,17.695, 39.148,39.465
|
1095 |
-
S 392.755,440.883, 371.098,440.883c-21.78,0-39.27-17.695-39.27-39.465c0-8.315, 2.591-16.015, 6.963-22.395l-72.52,25.999l-39.158,56.924
|
1096 |
-
c-3.011,4.198-7.649,6.994-13.066,7.69c-10.189,1.157-19.579-6.287-20.726-16.65c-0.461-4.311, 0.584-8.499, 2.662-11.991l 39.926-58.204
|
1097 |
-
c 1.853-2.324, 4.178-4.301, 6.953-5.591l 46.336-18.278l-76.073-39.117c-10.65-6.052-18.186-16.763-20.265-29.225l 0.348-69.97l-70.369-31.887
|
1098 |
-
c-7.875-3.84-13.548-11.756-13.896-21.197c-0.573-13.507, 9.851-24.791, 23.286-25.385c 4.168-0.215, 8.223,0.696, 11.704,2.458l 86.098,39.096
|
1099 |
-
c 6.144,3.267, 10.772,9.196, 12.278,16.425l-0.113,43.54l 59.761-53.791l-11.008-91.607c0-0.584-0.113-1.157-0.113-1.751
|
1100 |
-
c-0.584-13.496, 9.861-24.914, 23.286-25.498c 12.616-0.461, 23.388,8.735, 25.129,21.187l 12.861,104.55c0,0.461, 0.113,0.922, 0.113,1.403
|
1101 |
-
c 0.225,7.332-2.652,13.967-7.526,18.616l-55.357,49.48l 83.405,41.216l 77.384-71.598c 3.471-3.379, 8.223-5.468, 13.322-5.468
|
1102 |
-
c 10.424,0.113, 18.76,8.612, 18.657,18.975C 482.079,254.966, 479.519,259.973, 475.689,263.465z" data-tags="surfing" />
|
1103 |
-
<glyph unicode="" d="M 220.088,398.070l-5.55-9.933C 210.913,380.785, 203.418,377.6, 194.847,377.6l-13.046,0 c 7.485-10.24, 19.466-18.627, 33.352-18.627
|
1104 |
-
c 22.712,0, 40.847,17.162, 40.847,39.813L 256,398.080 l-33.976,0 C 221.174,398.080, 220.324,398.92, 220.088,398.070zM 194.847,387.84c 4.475,0, 8.448,1.556, 10.271,5.407l 5.427,9.708C 212.603,407.409, 216.955,408.32, 222.024,408.32l 42.527,0
|
1105 |
-
c-5.56,20.48-25.487,39.404-49.060,39.404c-27.904,0-50.493-20.664-50.493-48.62c0-4.465, 0.481-11.264, 1.69-11.264L 194.847,387.84 zM 334.684,162.56c 37.878,0, 136.817,11.602, 164.055,37.642c-12.257,37.642-60.58,40.653-104.919,21.484c-7.619-3.297-17.756-5.734-29.358-7.905
|
1106 |
-
l-9.062,35.082c 7.24,3.738, 12.022,11.397, 11.581,20.009c-0.461,11.756-10.322,20.941-22.077,20.46l-6.656,25.692
|
1107 |
-
c 6.543,4.936, 9.984,13.261, 8.038,21.75c-2.662,11.51-14.080,18.801-25.62,16.21c0,0-93.809-0.84-123.228-8.735
|
1108 |
-
c-29.358-7.895-39.26-57.231-39.26-57.231L 132.383,203.52L 10.24,203.52 l0-40.96 L 334.684,162.56 z M 250.358,307.927l 72.786,3l 5.796-22.292
|
1109 |
-
c-19.681-0.963-54.661-2.775-85.893-4.516L 250.358,307.927z M 230.062,241.408l 109.814,4.936l 9.124-34.949
|
1110 |
-
c-44.82-6.441-102.932-7.363-130.417-7.475L 230.062,241.408zM 435.261,115.364c0,0, 66.499,0.84, 66.499,65.741c0,2.601-0.256,4.557-0.481,6.963C 459.776,158.075, 348.877,152.32, 334.858,152.32L 10.24,152.32 l0-50.217
|
1111 |
-
c 7.854,0, 15.954,1.823, 23.071,4.936c 11.725,5.417, 24.771,8.315, 37.581,8.315c 12.8,0, 25.733-2.898, 37.202-8.202
|
1112 |
-
c 7.608-3.379, 15.462-5.059, 23.439-5.059c 8.1,0, 15.944,1.679, 23.194,4.936c 11.837,5.417, 24.76,8.315, 37.571,8.315
|
1113 |
-
c 12.923,0, 25.61-2.775, 37.335-8.202c 7.363-3.379, 15.452-5.059, 23.439-5.059c 7.967,0, 15.821,1.679, 23.183,4.936
|
1114 |
-
c 11.725,5.417, 24.781,8.315, 37.458,8.315c 13.036,0, 25.62-2.775, 37.325-8.202c 7.496-3.379, 15.575-5.059, 23.439-5.059
|
1115 |
-
c 0.983,0, 1.884,0.123, 2.836,0.123l 9.677-37.1c-4.178-0.717-8.335-1.219-12.636-1.219c-10.619,0-20.9,2.304-29.962,6.4
|
1116 |
-
c-9.298,4.342-19.804,6.861-30.802,6.861c-10.977,0-21.504-2.519-30.802-6.861c-9.062-4.096-19.22-6.4-29.85-6.4s-20.9,2.304-29.962,6.4
|
1117 |
-
c-9.298,4.342-19.804,6.861-30.802,6.861c-10.998,0-21.504-2.519-30.802-6.861c-9.062-4.096-19.21-6.4-29.839-6.4
|
1118 |
-
c-10.506,0-20.777,2.304-29.839,6.4c-9.308,4.342-19.814,6.861-30.802,6.861c-10.875,0-21.391-2.519-30.689-6.861
|
1119 |
-
C 31.027,66.202, 20.869,63.898, 10.24,63.898L 10.24,19.2 c 10.629,0, 20.787,2.284, 29.962,6.38c 9.298,4.342, 19.814,6.881, 30.689,6.881
|
1120 |
-
c 10.988,0, 21.494-2.54, 30.802-6.881c 9.062-4.096, 19.333-6.38, 29.839-6.38c 10.629,0, 20.777,2.284, 29.839,6.38
|
1121 |
-
c 9.298,4.342, 19.814,6.881, 30.802,6.881c 11.008,0, 21.504-2.54, 30.802-6.881c 9.062-4.096, 19.333-6.38, 29.962-6.38s 20.787,2.284, 29.85,6.38
|
1122 |
-
c 9.298,4.342, 19.825,6.881, 30.802,6.881c 10.998,0, 21.504-2.54, 30.802-6.881c 9.062-4.096, 19.343-6.38, 29.962-6.38
|
1123 |
-
c 10.496,0, 20.797,2.284, 29.839,6.38c 9.318,4.342, 19.825,6.881, 30.822,6.881c 10.977,0, 19.374-2.54, 28.672-6.881C 472.75,21.484, 481.28,19.2, 491.52,19.2
|
1124 |
-
l0,44.698 c-10.24,0-18.77,2.304-27.832,6.4c-9.298,4.342-18.749,6.861-29.727,6.861c-10.998,0-20.972-2.519-30.29-6.861
|
1125 |
-
c-0.717-0.317-1.178-0.543-1.925-0.84l-9.165,35.656c 1.7,0.604, 3.4,1.198, 5.018,1.925C 409.334,112.456, 422.461,115.364, 435.261,115.364z
|
1126 |
-
" data-tags="rafting" />
|
1127 |
-
<glyph unicode="" d="M 424.407,164.403c-10.209,0-19.958-2.437-28.6-6.636c-8.54-3.84-17.951-6.164-27.832-6.164c-9.851,0-19.272,2.324-27.802,6.164
|
1128 |
-
c-8.653,4.198-18.401,6.636-28.6,6.636c-10.097,0-19.855-2.437-28.611-6.636c-8.428-3.84-17.828-6.164-27.699-6.164
|
1129 |
-
c-9.882,0-19.415,2.324-27.853,6.164c-8.643,4.198-18.391,6.636-28.611,6.636c-10.199,0-19.948-2.437-28.59-6.636
|
1130 |
-
c-8.53-3.84-17.94-6.164-27.761-6.164c-9.871,0-19.292,2.324-27.822,6.164c-8.632,4.198-18.278,6.636-28.477,6.636
|
1131 |
-
c-10.22,0-19.476-2.437-28.129-6.636C 49.51,153.917, 40.96,151.603, 30.72,151.603l0-43.131 c 10.24,0, 18.79,2.345, 27.32,6.175
|
1132 |
-
c 8.643,4.188, 18.156,6.625, 28.375,6.625c 10.199,0, 19.722-2.437, 28.355-6.625c 7.188-3.256, 15.084-5.1, 23.276-5.704l-34.57-35.666
|
1133 |
-
c-10.998,7.076-25.6,5.806-35.133-4.086l-39.598-41.021c-10.998-11.397-11.008-29.86,0-41.37c 11.1-11.397, 28.938-11.397, 39.916,0l 39.608,41.011
|
1134 |
-
c 8.98,9.329, 10.537,23.255, 4.925,34.304l 47.616,49.275c 3.256,1.065, 6.39,1.864, 9.421,3.256c 8.643,4.188, 18.401,6.625, 28.59,6.625
|
1135 |
-
c 10.22,0, 19.968-2.437, 28.611-6.625c 8.438-3.83, 17.971-6.175, 27.853-6.175c 9.871,0, 19.261,2.345, 27.699,6.175
|
1136 |
-
c 8.745,4.188, 18.514,6.625, 28.611,6.625c 10.199,0, 19.948-2.437, 28.6-6.625c 8.53-3.83, 17.951-6.175, 27.802-6.175
|
1137 |
-
c 9.882,0, 19.292,2.345, 27.832,6.175c 8.643,4.188, 18.391,6.625, 28.6,6.625c 10.189,0, 20.081-2.437, 28.826-6.625
|
1138 |
-
C 461.65,110.807, 471.040,108.472, 481.28,108.472L 481.28,151.603 c-10.24,0-19.63,2.324-28.037,6.164C 444.488,161.956, 434.596,164.403, 424.407,164.403zM 443.587,375.306l 39.598,41.032c 11.1,11.5, 11.1,29.993,0,41.39c-10.998,11.5-28.948,11.5-39.936,0L 403.661,416.696
|
1139 |
-
c-9.544-9.882-10.762-24.996-3.809-36.27l-49.244-51.098l-97.812,37.55c-2.57,1.516-5.274,2.785-8.294,3.727
|
1140 |
-
c-21.34,6.615-43.889-5.929-50.289-28.027l-30.054-104.704C 163.768,236.657, 163.666,234.24, 163.553,234.24L 30.72,234.24 l0-55.368 c 10.24,0, 14.367,1.751, 20.992,4.762
|
1141 |
-
c 10.875,5.233, 22.774,8.028, 34.673,8.028c 11.878,0, 23.777-2.796, 34.437-7.926c 7.055-3.246, 14.295-4.864, 21.699-4.864
|
1142 |
-
c 7.465,0, 14.715,1.608, 21.453,4.762c 10.988,5.233, 22.989,8.028, 34.857,8.028c 12.012,0, 23.777-2.673, 34.683-7.926
|
1143 |
-
c 6.84-3.246, 14.356-4.864, 21.76-4.864c 7.414,0, 14.674,1.608, 21.514,4.762c 10.885,5.233, 22.999,8.028, 34.785,8.028
|
1144 |
-
c 12.104,0, 23.777-2.673, 34.642-7.926c 6.963-3.246, 14.49-4.864, 21.76-4.864c 7.424,0, 14.817,1.608, 21.545,4.762
|
1145 |
-
c 10.885,5.233, 22.999,8.028, 34.888,8.028c 1.997,0, 10.189-0.645, 18.289,4.925c 14.346,6.502, 19.743,10.22, 32.287,18.186
|
1146 |
-
C 485.325,221.338, 493.496,234.24, 471.040,234.24c-10.24,0-194.56,0-194.56,0l 60.099,59.412l 7.629-3.011c 9.646-3.604, 20.408,1.505, 24.003,11.51
|
1147 |
-
c 2.468,7.076, 0.573,14.756-4.147,19.866l 46.438,48.302C 421.151,364.493, 434.596,366.019, 443.587,375.306z M 259.41,234.24l-11.991,0 l 24.218,83.958
|
1148 |
-
l 50.033-19.343L 259.41,234.24zM 259.082,419.451l-5.161-10.404C 250.552,401.971, 243.61,398.080, 235.633,398.080l-12.134,0 c 6.973-10.24, 20.367-16.712, 33.26-16.712
|
1149 |
-
C 277.842,381.368, 296.96,399.196, 296.96,421.059L 296.96,418.56 l-36.076,0 C 260.096,418.56, 259.308,420.27, 259.082,419.451zM 235.633,408.32c 4.157,0, 7.864,2.591, 9.544,6.298l 5.048,9.185C 252.129,428.114, 256.164,428.8, 260.884,428.8l 39.465,0
|
1150 |
-
c-5.171,20.48-23.665,38.728-45.527,38.728c-25.938,0-46.92-20.664-46.92-47.616c0-4.301, 0.451-11.592, 1.577-11.592L 235.633,408.32 z" data-tags="kayaking" />
|
1151 |
-
<glyph unicode="" d="M 168.755,358.267c 21.832,2.632, 37.325,22.845, 34.744,45.087c-2.58,22.252-22.415,38.031-44.247,35.41
|
1152 |
-
c-21.832-2.775-37.263-22.845-34.683-45.087C 127.273,371.415, 146.924,355.635, 168.755,358.267zM 495.841,167.168c-2.109,1.075-164.321,85.023-164.321,85.023l-41.185,54.057l-2.55,0.604C 282.163,312.105, 276.48,311.624, 266.24,305.889l0-0.123
|
1153 |
-
c0-4.301-2.273-10.639, 0.563-15.79l 31.539-40.172l 0.625-0.369l-25.088-59.187l-67.092,17.111l-2.867,24.525l 55.286,6.799
|
1154 |
-
c 2.468,0.113, 5.059,0.84, 7.404,2.15c 9.165,4.895, 12.687,16.507, 7.875,25.825c-3.758,7.178-11.264,11.008-18.657,10.168l-56.31-6.932
|
1155 |
-
l-5.048,42.568c-2.693,22.129-22.538,38.031-44.247,35.4c-21.76-2.755-37.376-22.979-34.796-45.21l 11.735-98.417
|
1156 |
-
c 1.413-12.564, 8.745-23.439, 18.483-29.778l-88.443-10.762l-27.576-69.591c 1.055,0.471, 2.222,0.594, 3.164,1.065
|
1157 |
-
c 11.387,5.386, 24.064,8.264, 36.506,8.264c 12.442,0, 24.996-2.867, 36.27-8.131c 7.158-3.338, 15.022-5.018, 22.651-5.018
|
1158 |
-
c 7.69,0, 15.432,1.679, 22.477,4.895c 11.387,5.386, 23.941,8.264, 36.506,8.264c 12.442,0, 24.965-2.867, 36.127-8.131
|
1159 |
-
c 7.27-3.338, 15.135-5.018, 22.774-5.018c 7.741,0, 15.37,1.679, 22.528,4.895c 11.387,5.386, 24.074,8.264, 36.506,8.264s 24.996-2.867, 36.147-8.131
|
1160 |
-
c 2.703-1.188, 5.642-2.028, 8.571-2.867c 45.189,12.104, 125.235,35.4, 146.821,55.132C 502.999,153.303, 504.187,162.99, 495.841,167.168zM 10.24,8.96c 10.332,0, 20.306,2.386, 29.112,6.451c 9.032,4.311, 19.251,6.81, 29.932,6.81s 20.777-2.499, 29.932-6.81
|
1161 |
-
C 108.012,11.346, 117.873,8.96, 128.205,8.96c 10.271,0, 20.132,2.386, 29.051,6.451c 9.032,4.311, 19.241,6.81, 29.932,6.81
|
1162 |
-
c 10.568,0, 20.777-2.499, 29.901-6.81c 8.806-4.055, 18.668-6.451, 29-6.451c 10.322,0, 20.183,2.386, 29.102,6.451
|
1163 |
-
c 9.052,4.311, 19.251,6.81, 29.942,6.81c 10.557,0, 20.777-2.499, 29.809-6.81C 343.849,11.346, 353.71,8.96, 364.032,8.96
|
1164 |
-
c 10.342,0, 20.193,2.386, 29,6.451c 9.165,4.311, 19.374,6.81, 29.932,6.81c 10.67,0, 20.541-2.499, 29.563-6.81C 461.332,11.346, 471.040,8.96, 481.28,8.96
|
1165 |
-
l0,44.37 c-10.24,0-19.948,2.365-28.764,6.441c-9.021,4.321-19.067,6.707-29.737,6.707c-10.557,0-20.685-2.386-29.839-6.707
|
1166 |
-
c-8.806-4.065-18.616-6.441-28.959-6.441c-10.322,0-20.152,2.365-29.071,6.441c-9.032,4.321-19.241,6.707-29.798,6.707
|
1167 |
-
c-10.691,0-20.89-2.386-29.942-6.707c-8.919-4.065-18.77-6.441-29.092-6.441c-10.332,0-20.183,2.365-28.989,6.441
|
1168 |
-
c-9.124,4.321-19.333,6.707-29.901,6.707c-10.68,0-20.9-2.386-29.932-6.707c-8.919-4.065-18.78-6.441-29.051-6.441
|
1169 |
-
c-10.332,0-20.193,2.365-28.989,6.441c-9.155,4.321-19.251,6.707-29.932,6.707s-20.9-2.386-29.932-6.707
|
1170 |
-
C 30.546,55.695, 20.572,53.33, 10.24,53.33L 10.24,8.96 z" data-tags="jet-skiing" />
|
1171 |
-
<glyph unicode="" d="M 256.778,402.627c 18.156,0, 32.799,14.602, 32.799,32.707c0,17.971-14.643,32.696-32.799,32.696s-32.799-14.725-32.799-32.696
|
1172 |
-
C 223.98,417.239, 238.623,402.627, 256.778,402.627zM 462.479,27.761c-9.042,4.198-19.22,6.646-29.88,6.646c-10.537,0-20.716-2.447-29.88-6.646
|
1173 |
-
c-8.776-3.86-18.616-6.195-28.918-6.195s-20.265,2.345-29.061,6.195c-9.021,4.198-19.2,6.646-29.86,6.646s-20.859-2.447-29.88-6.646
|
1174 |
-
c-8.899-3.86-18.739-6.195-29.041-6.195c-10.312,0-20.152,2.345-29.051,6.195c-9.021,4.198-19.21,6.646-29.87,6.646
|
1175 |
-
c-10.537,0-20.726-2.447-29.87-6.646c-8.786-3.86-18.596-6.195-28.846-6.195c-10.301,0-20.265,2.345-29.051,6.195
|
1176 |
-
c-9.021,4.198-19.21,6.646-29.87,6.646c-10.66,0-20.849-2.447-29.87-6.646C 40.632,23.9, 30.792,21.555, 20.48,21.555L 20.48-21.76
|
1177 |
-
c 10.312,0, 20.152,2.222, 29.051,6.195c 9.021,4.198, 19.21,6.646, 29.87,6.646c 10.66,0, 20.849-2.447, 29.87-6.646
|
1178 |
-
C 118.047-19.538, 128.020-21.76, 138.322-21.76c 10.25,0, 20.060,2.222, 28.846,6.195c 9.144,4.198, 19.323,6.646, 29.87,6.646
|
1179 |
-
c 10.66,0, 20.849-2.447, 29.87-6.646C 235.807-19.538, 245.647-21.76, 255.959-21.76c 10.301,0, 20.142,2.222, 29.041,6.195
|
1180 |
-
c 9.021,4.198, 19.22,6.646, 29.88,6.646s 20.838-2.447, 29.86-6.646C 353.536-19.538, 363.5-21.76, 373.801-21.76s 20.142,2.222, 28.918,6.195
|
1181 |
-
c 9.165,4.198, 19.343,6.646, 29.88,6.646c 10.66,0, 20.838-2.447, 29.88-6.646C 471.357-19.538, 481.219-21.76, 491.52-21.76l0,43.315
|
1182 |
-
C 481.219,21.555, 471.357,23.9, 462.479,27.761zM 465.183,469.32c-2.355,0.932-5.919,0.358-7.803-1.403L 337.398,347.126C 335.524,347.945, 333.036,346.88, 330.803,346.88c0,0-35.144,0-45.322,0
|
1183 |
-
c-7.741,10.24-48.732,50.237-48.732,50.237c-2.099,2.109-4.803,4.045-7.496,4.741c-9.37,8.182-23.542,8.448-32.563-0.543l-70.124-70.349
|
1184 |
-
C 123.873,328.284, 122.88,324.741, 122.88,320.768L 122.88,275.2 L 20.48,275.2 l0-20.48 l 102.4,0 l0-117.996 c0-14.602, 10.936-26.399, 25.528-26.399c 14.5,0, 25.672,11.796, 25.672,26.399L 174.080,254.72 l 71.68,0 l0-153.6 L 20.48,101.12 l0-30.72
|
1185 |
-
l 245.76,0 L 266.24,254.72 l 30.72,0 l0,20.48 L 174.080,275.2 l0,8.438 l 66.304,65.853l 27.064-27.761C 270.356,318.7, 274.575,316.16, 278.917,316.16l 51.876,0 C 339.722,316.16, 348.16,317.522, 348.16,326.4
|
1186 |
-
c0,2.109, 0.676,8.366,0,10.24c 28.344,28.262, 102.4,97.761, 112.64,111.892C 460.8,420.618, 460.8,70.4, 460.8,70.4l 10.24,0 L 471.040,463.483 C 471.040,466.053, 467.517,468.265, 465.183,469.32z" data-tags="fishing-pier" />
|
1187 |
-
<glyph unicode="" d="M 24.832,135.793L 24.832,135.793c-0.338,0.379-0.461,0.727-0.461,1.219c0,0.993, 0.696,1.833, 1.731,1.833l 49.787-0.133
|
1188 |
-
c 2.529,0, 4.485,2.079, 4.485,4.649c0,1.956-0.922,3.308-2.765,4.403l-45.199,22.856c-0.799,0.604-1.382,1.577-1.382,2.693
|
1189 |
-
c0,0.86, 0.348,1.72, 0.809,2.212l0,0c0,0, 118.62,111.473, 381.010,3.4l 72.1,37.417c 0.686,0.379, 1.505,0.625, 2.417,0.625
|
1190 |
-
c 2.98,0, 5.53-2.703, 5.53-5.878c0-1.219-0.348-2.202-0.819-3.041l-42.537-56.228l 42.537-56.248c 0.471-0.85, 0.819-1.946, 0.819-3.041
|
1191 |
-
c0-3.297-2.55-5.99-5.53-5.99c-0.911,0-1.731,0.246-2.417,0.604l-72.1,37.53C 412.856,124.662, 161.966,18.565, 24.832,135.793z
|
1192 |
-
M 104.868,158.761c 9.544,0, 17.080,8.090, 17.080,18.145c0,10.23-7.537,18.278-17.080,18.278c-9.421,0-16.957-8.049-16.957-18.278
|
1193 |
-
C 87.91,166.851, 95.447,158.761, 104.868,158.761zM 327.68,346.88l0-61.44 l 145.101,0 C 488.755,285.44, 501.76,299.172, 501.76,316.16c0,17.121-13.005,30.72-28.979,30.72L 327.68,346.88 zM 60.375,302.643l 13.23,5.868l 8.274-15.043l0,0l 13.343,10.271l 9.544-14.182l 12.769,11.008l 10.353-13.455l 12.073,11.735l 10.977-12.82
|
1194 |
-
l 11.622,12.339l 11.612-12.339l 11.612,12.339l 11.5-12.339l 11.622,12.339l 11.571-12.339l 11.622,12.339l 11.612-12.339l 11.5,12.339l 11.622-12.339
|
1195 |
-
l 11.622,12.339l 11.612-12.339l 13.588,12.339L 317.44,286.013L 317.44,346.88 L 10.24,346.88 l0-0.369 C 20.48,328.796, 41.175,313.754, 60.375,302.643z" data-tags="fish-cleaning" />
|
1196 |
-
<glyph unicode="" d="M 481.28-11.53c-9.861,0-19.302,2.243-27.709,6.042c-8.653,4.024-18.422,6.359-28.6,6.359c-10.189,0-19.855-2.345-28.611-6.359
|
1197 |
-
c-8.397-3.799-17.807-6.042-27.709-6.042c-9.861,0-19.302,2.243-27.72,6.042c-8.745,4.024-18.381,6.359-28.611,6.359
|
1198 |
-
c-10.199,0-19.948-2.345-28.611-6.359c-8.387-3.799-17.828-6.042-27.689-6.042c-9.892,0-19.313,2.243-27.832,6.042
|
1199 |
-
c-8.643,4.024-18.371,6.359-28.477,6.359c-10.199,0-19.968-2.345-28.59-6.359c-8.417-3.799-17.848-6.042-27.668-6.042
|
1200 |
-
c-9.861,0-19.282,2.243-27.822,6.042c-8.632,4.024-18.391,6.359-28.488,6.359c-10.22,0-19.968-2.345-28.611-6.359
|
1201 |
-
c-8.417-3.799-17.951-6.042-27.822-6.042L 30.71,29.952 c 9.861,0, 19.405,2.243, 27.822,6.042c 8.643,3.901, 18.401,6.257, 28.611,6.257
|
1202 |
-
c 10.086,0, 19.845-2.355, 28.488-6.257c 8.54-3.799, 17.961-6.042, 27.822-6.042c 9.82,0, 19.241,2.243, 27.668,6.042
|
1203 |
-
c 8.632,3.901, 18.391,6.257, 28.59,6.257c 10.097,0, 19.835-2.355, 28.477-6.257c 8.52-3.799, 17.94-6.042, 27.832-6.042
|
1204 |
-
c 9.861,0, 19.292,2.243, 27.689,6.042c 8.663,3.901, 18.412,6.257, 28.611,6.257c 10.23,0, 19.855-2.355, 28.611-6.257
|
1205 |
-
c 8.417-3.799, 17.859-6.042, 27.72-6.042c 9.902,0, 19.313,2.243, 27.709,6.042c 8.745,3.901, 18.422,6.257, 28.611,6.257
|
1206 |
-
c 10.179,0, 19.948-2.355, 28.6-6.257c 8.407-3.799, 17.848-6.042, 27.709-6.042L 481.28-11.53 zM 158.218,191.826c 20.982,0, 38.021,16.988, 38.021,37.908c0,20.91-17.039,37.796-38.021,37.796c-20.931,0-37.97-16.886-37.97-37.796
|
1207 |
-
C 120.248,208.824, 137.288,191.826, 158.218,191.826zM 163.604,60.805c-5.949-10.179-19.077-13.65-29.225-7.619c-10.199,5.919-13.681,19.016-7.741,29.204l 88.125,151.255
|
1208 |
-
c 3.215,5.704, 7.936,10.404, 13.537,13.527l 113.316,68.424l 76.954,130.57l0,0c 7.301,12.749, 23.552,17.101, 36.362,9.841
|
1209 |
-
c 12.657-7.383, 17.039-23.593, 9.728-36.229l0,0l-92.201-156.396c-3.144-5.714-7.854-10.404-13.568-13.527l-133.724-82.852L 163.604,60.805z" data-tags="diving" />
|
1210 |
-
<glyph unicode="" d="M 512,70.4c-10.24,0-20.552,2.417-29.45,6.523c-9.144,4.342-19.466,6.902-30.147,6.902c-10.824,0-21.125-2.56-30.29-6.902
|
1211 |
-
c-9.011-4.096-18.985-6.523-29.44-6.523c-10.322,0-20.429,2.417-29.317,6.523c-9.165,4.342-19.476,6.902-30.269,6.902
|
1212 |
-
c-10.701,0-21.033-2.56-30.157-6.902C 293.888,72.817, 283.914,70.4, 273.469,70.4c-10.445,0-20.429,2.417-29.327,6.523
|
1213 |
-
c-9.144,4.342-19.476,6.902-30.249,6.902c-10.813,0-21.012-2.56-30.167-6.902C 174.715,72.817, 164.751,70.4, 154.296,70.4
|
1214 |
-
c-10.455,0-20.357,2.417-29.266,6.523c-9.257,4.342-19.476,6.902-30.28,6.902c-10.803,0-18.104-2.56-27.372-6.902C 58.481,72.817, 51.2,70.4, 40.96,70.4
|
1215 |
-
l0,44.831 c 10.24,0, 17.521,2.417, 26.419,6.523c 9.257,4.229, 18.022,6.789, 28.826,6.789c 10.803,0, 20.285-2.56, 29.553-6.789
|
1216 |
-
c 8.909-4.096, 18.452-6.523, 28.908-6.523c 10.455,0, 20.234,2.417, 29.256,6.523c 9.155,4.229, 19.261,6.789, 30.075,6.789
|
1217 |
-
c 10.772,0, 21.053-2.56, 30.198-6.789c 8.899-4.096, 18.852-6.523, 29.297-6.523c 10.445,0, 20.408,2.417, 29.44,6.523
|
1218 |
-
c 9.134,4.229, 19.446,6.789, 30.147,6.789c 10.793,0, 21.115-2.56, 30.269-6.789c 8.888-4.096, 18.995-6.523, 29.317-6.523
|
1219 |
-
c 10.455,0, 20.429,2.417, 29.44,6.523c 9.165,4.229, 19.466,6.789, 30.29,6.789c 10.68,0, 21.012-2.56, 30.147-6.789
|
1220 |
-
c 8.899-4.096, 19.21-6.523, 29.45-6.523L 511.99,70.4 zM 392.069,257.649l 86.692-6.892l-6.543,45.087L 408.576,300.421c-17.203,0.85-14.725-16.681-14.725-16.681L 392.069,257.649zM 231.311,267.919c 15.923,0, 28.744,13.046, 28.744,29.235c0,16.2-12.81,29.235-28.744,29.235c-15.903,0-28.692-13.046-28.692-29.235
|
1221 |
-
C 202.619,280.965, 215.409,267.919, 231.311,267.919zM 53.914,155.228c 3.676,1.085, 7.25,2.529, 10.568,4.106c 9.267,4.342, 19.476,6.892, 30.28,6.892c 10.803,0, 21.023-2.55, 30.28-6.892
|
1222 |
-
c 8.909-4.106, 18.811-6.523, 29.266-6.523c 10.455,0, 20.419,2.406, 29.44,6.523c 9.155,4.342, 19.354,6.892, 30.167,6.892
|
1223 |
-
c 10.772,0, 21.105-2.55, 30.249-6.892c 8.899-4.106, 18.883-6.523, 29.327-6.523c 10.445,0, 20.419,2.406, 29.45,6.523
|
1224 |
-
c 9.134,4.342, 19.456,6.892, 30.157,6.892c 10.793,0, 21.115-2.55, 30.269-6.892c 8.888-4.106, 18.995-6.523, 29.317-6.523
|
1225 |
-
c 10.455,0, 20.429,2.406, 29.44,6.523c 9.165,4.342, 19.466,6.892, 30.29,6.892c 10.68,0, 21.012-2.55, 30.147-6.892
|
1226 |
-
c 8.899-4.106, 18.883-6.523, 29.338-6.523l-9.748,79.944L 141.824,263.455l 54.385,55.828l-23.869,2.171l-54.313-55.951L 0.010,275.415
|
1227 |
-
C-0.707,234.455, 44.165,166.349, 53.914,155.228L 53.914,155.228z" data-tags="boating" />
|
1228 |
-
<glyph unicode="" d="M 299.121,141.967c 11.141,0, 20.070,8.878, 20.070,19.855c0,10.906-8.929,19.855-20.070,19.855s-20.193-8.95-20.193-19.855
|
1229 |
-
C 278.927,150.845, 287.98,141.967, 299.121,141.967z M 501.76-1.178c-122.88-1.761-245.647,20.746-341.115,96.389l0,0
|
1230 |
-
c-0.614,0.532-1.628,1.26-1.628,2.099c0,1.812, 1.075,3.195, 2.796,3.195l 93.921-0.123c 4.526,0, 8.212,3.676, 8.212,8.202
|
1231 |
-
c0,3.379-1.618,5.745-5.284,7.547l-85.115,40.069c-1.577,0.973-2.703,2.652-2.703,4.721c0,1.444, 2.161,2.826, 3.144,3.86l0,0
|
1232 |
-
c0,0, 102.492,90.317, 327.772,88.34L 501.76-1.178 zM 453.161,449.27c-73.667-0.819-145.828-31.805-226.755-97.26c-3,0.819-9.667,2.56-9.667,2.56
|
1233 |
-
c-12.851,0-23.327-10.25-23.327-22.897c0,0, 0.911-4.28, 1.464-6.912c-2.427-2.294-65.382-60.498-65.382-60.498l-55.613-51.681
|
1234 |
-
c-5.233-4.7-11.96-7.045-19.036-6.748C 47.821,206.182, 41.37,209.203, 36.68,214.262c-4.557,5.018-6.799,11.244-6.799,17.5
|
1235 |
-
c0,7.066, 2.877,14.121, 8.53,19.2c0,0, 4.198,2.304, 7.383,4.096c 0.676-4.69, 2.632-19.046, 2.632-19.046l 45.353,56.965l-50.033-16.814
|
1236 |
-
c-13.189-4.475-18.606-11.028-18.811-11.295c-18.34-16.312-19.773-45.036-2.826-63.508c 17.050-18.524, 46.162-19.845, 64.911-3.062l 0.481,0.604
|
1237 |
-
l 52.726,49.469c0,0, 65.055,60.713, 67.205,62.72c 3.123-0.829, 9.308-2.365, 9.308-2.365c 12.79,0, 23.194,10.281, 23.194,22.968
|
1238 |
-
c0,0-0.625,3.348-1.106,5.765c 78.295,63.488, 146.77,93.604, 215.316,94.382c 14.080,0.154, 25.334-1.69, 43.817-5.581L 501.76,425.421L 501.76,443.505
|
1239 |
-
l-2.447,0.512C 480.215,448.031, 467.681,449.444, 453.161,449.27z" data-tags="fishing" />
|
1240 |
-
<glyph unicode="" d="M 337.224,411.443A37.714,37.837 180 1 1 412.652,411.443A37.714,37.837 180 1 1 337.224,411.443zM 135.782,47.852L 10.24,174.141l 0.051-22.057l 116.849-117.627c 13.425-14.592, 36.424,2.284, 36.424,2.284l-11.028,11.848
|
1241 |
-
c0,0-10.865-7.148-16.486-1.065L 135.782,47.852zM 10.24,285.44L 143.36,285.44L 143.36,275.2L 10.24,275.2zM 487.117,321.341L 501.76,314.409L 355.891,19.2L 339.743,19.2 zM 245.053,345.508l-58.706-67.973c-3.451-4.301-8.745-6.984-14.653-6.984c-10.527,0-18.985,8.54-18.985,19.046
|
1242 |
-
c0,5.693, 2.447,10.772, 6.4,14.244l 63.273,73.114c 3.502,4.188, 8.745,6.871, 14.643,6.871l 91.628,0.051c 6.738,0, 12.759-2.744, 17.213-6.984
|
1243 |
-
l 58.419-58.593l 48.404,48.425c 3.4,2.898, 7.813,4.639, 12.585,4.639c 10.865,0, 19.61-8.827, 19.61-19.661c0-4.741-1.618-9.042-4.403-12.452
|
1244 |
-
l-58.368-58.982c-17.705-17.766-31.98-2.683-31.98-2.683l-35.799,36.076l-55.982-64.901l 51.292-51.436c0,0, 10.803-10.056, 4.628-30.106l-28.744-128.471
|
1245 |
-
C 323.246,27.576, 313.385,19.2, 301.64,19.2c-13.466,0-24.402,10.936-24.402,24.463c0,2.13, 0.215,4.188, 0.788,6.154l 23.613,105.441l-58.255,56.76
|
1246 |
-
l-50.125-56.023c0,0-8.131-10.056-29.635-9.277l-101.642-0.174c-11.366-0.215-21.668,7.608-24.228,19.108c-3.011,13.179, 5.12,26.143, 18.268,29.041
|
1247 |
-
c 2.058,0.461, 4.116,0.676, 6.124,0.563l 87.45-0.215l 129.28,150.303L 245.053,345.508zM 469.248,17.48C 469.217,7.578, 461.015-1.28, 451.174-1.28L 153.6-1.28 l0-10.24 l 297.533,0 c 16.558-0.092, 30.065,12.687, 30.147,29.327
|
1248 |
-
L 469.248,17.48z" data-tags="cross-country-skiing" />
|
1249 |
-
<glyph unicode="" d="M 452.301,289.106c 21.688,0, 39.219,17.736, 39.219,39.567c0,21.811-17.531,39.444-39.219,39.444
|
1250 |
-
c-21.586,0-39.158-17.623-39.158-39.444C 413.143,306.852, 430.715,289.106, 452.301,289.106zM 441.252,18.381L 28.57,262.738L 20.48,248.791l 412.498-244.419c 18.913-11.315, 43.325-5.14, 54.6,13.998l-13.691,8.305
|
1251 |
-
C 467.159,15.237, 452.475,11.602, 441.252,18.381zM 480.932,201.82l-70.185,41.308l-8.1,105.841c-1.208,12.667-8.038,24.033-17.981,31.037l-101.079,60.334
|
1252 |
-
c-23.839,16.169-56.064,9.81-72.141-14.356c-8.847-13.189-11.284-29.87-6.943-43.407l 27.423-90.563l-82.729-26.604
|
1253 |
-
c-10.353-4.198-18.35-13.998-19.732-26.020c-2.14-17.623, 10.875-29.297, 28.406-31.375c 3.994-0.481, 6.646,0.676, 10.353,1.618l 112.927,37.693
|
1254 |
-
c 8.284,3.031, 17.336,11.325, 18.217,18.555c 0.645,5.253, 2.314,9.687, 1.219,12.841l-17.183,61.962l 67.912-40.735l 8.212-59.402
|
1255 |
-
c 0.707-10.383, 5.396-17.848, 13.322-22.282l 88.75-52.275c 9.708-5.376, 21.975-1.761, 27.29,8.161C 494.295,183.982, 490.639,196.465, 480.932,201.82
|
1256 |
-
z" data-tags="skiing" />
|
1257 |
-
<glyph unicode="" d="M 211.855,353.096c 20.275,0, 36.669,16.886, 36.669,37.908C 248.525,411.802, 232.131,428.8, 211.855,428.8
|
1258 |
-
C 191.57,428.8, 175.104,411.802, 175.104,391.004C 175.104,369.981, 191.57,353.096, 211.855,353.096zM 255.037,49.92l 174.684,0 c0,0, 11.295-2.048, 33.751,16.507L 501.76,95.242l0-33.997 l-39.055-30.085c0,0-11.602-9.718-31.15-11.96
|
1259 |
-
L 240.394,19.2 L 255.037,49.92zM 11.704,19.2L 186.47,19.2L 201.001,49.92L 199.598,49.92L 24.832,49.92L 10.24,19.2 zM 230.308,305.736c0,21.627-18.104,39.199-38.339,39.199c-20.265,0-38.369-17.572-38.369-39.199l0-95.836
|
1260 |
-
C 153.6,197.765, 162.468,183.040, 170.639,183.040L 88.535,183.040 l-44.39-87.89c-0.973-1.956-1.403-6.134-1.403-8.448C 42.732,78.838, 54.077,70.4, 61.44,70.4l 296.96,0
|
1261 |
-
c0,0, 13.404-1.178, 32.993,15.258l 78.592,62.228L 440.32,203.52c0,0-6.717,13.527-31.816,17.592l-59.331,10.701l-31.826,56.791l-1.362,0.594
|
1262 |
-
C 311.327,294.861, 307.2,295.455, 296.96,290.601l0-0.123 c0-3.697-5.233-9.708-3.164-15.022L 317.44,233.359l0-0.338 l-31.099-53.76L 225.28,203.561L 225.28,224 l 52.111,0
|
1263 |
-
c 2.294,0, 4.669,1.925, 6.932,2.959c 9.001,3.564, 13.435,15.155, 9.964,24.648c-2.57,7.404-9.103,12.216-15.903,12.329l-48.179,0.328
|
1264 |
-
L 230.308,305.736" data-tags="snowmobile" />
|
1265 |
-
<glyph unicode="" d="M 355.144,402.647A39.342,38.717 180 1 1 433.828,402.647A39.342,38.717 180 1 1 355.144,402.647zM 485.13,256.932l-110.838,100.27c-3.717,3.533-7.997,6.4-12.769,8.458l-86.354,30.249l-39.229,55.972
|
1266 |
-
c-3.011,3.983-7.639,6.83-13.087,7.526c-10.332,1.137-19.61-6.164-20.9-16.333c-0.461-4.332, 0.584-8.448, 2.785-11.868l 40.018-56.986
|
1267 |
-
c 1.853-2.386, 4.178-4.219, 6.963-5.478l 46.438-18.043l-76.36-38.369c-10.568-6.052-18.217-16.445-20.306-28.785l 0.461-68.639l-70.502-31.293
|
1268 |
-
c-8.008-3.645-13.701-11.53-14.060-20.767c-0.236-5.468, 1.485-10.527, 4.434-14.694l-38.021,14.234c-7.137,2.693-12.708,8.387-15.135,15.636
|
1269 |
-
c-4.352,12.749-18.401,19.599-31.345,15.299c-12.943-4.28-19.896-18.094-15.555-30.843c 7.199-21.043, 23.45-37.683, 44.452-45.548L 396.452-6.605
|
1270 |
-
c 21.125-7.956, 44.472-6.185, 63.836,4.823c 11.848,6.687, 15.903,21.535, 9.175,33.178c-6.851,11.663-21.944,15.647-33.761,8.98
|
1271 |
-
c-6.502-3.707-14.531-4.311-21.719-1.567l-81.879,30.648c 8.509,2.877, 14.971,10.291, 16.2,19.374l 12.892,102.666
|
1272 |
-
c 0.102,0.461, 0.102,0.922, 0.102,1.382c 0.358,7.188-2.56,13.814-7.557,18.371l-55.46,48.425l 83.569,40.53l 77.629-70.328
|
1273 |
-
c 3.502-3.318, 8.141-5.376, 13.353-5.376c 10.455,0.113, 18.811,8.458, 18.698,18.729C 491.52,248.719, 488.95,253.635, 485.13,256.932z M 310.917,184.893
|
1274 |
-
l-11.039-90.122c0-0.44-0.102-1.024-0.102-1.577c-0.205-4.68, 1.004-9.052, 3.195-12.82l-155.576,58.225
|
1275 |
-
c 1.761,0.43, 3.492,0.983, 5.069,1.761l 86.374,38.39c 6.154,3.287, 10.793,9.103, 12.308,16.087l-0.225,42.691L 310.917,184.893z" data-tags="snowboarding" />
|
1276 |
-
<glyph unicode="" d="M 235.52-8.335l0,64.942 l-34.376-20.398L 184.32,46.797l0,22.825 l 51.2,30.577l0,42.68 l-40.96-25.098l0,45.22 l-40.96-21.443l0-61.338 l-16.927-12.595L 122.88,79.002
|
1277 |
-
l0,41.083 L 65.802,88.115L 40.96,98.345l0,25.897 l 58.214,32.461L 61.44,175.36l0,23.757 l 21.74,11.54l 53.391-31.416l 36.987,21.34l-0.84,0.666l-37.53,21.74
|
1278 |
-
l 36.536,22.815l-36.628,21.33L 81.715,235.878L 61.44,245.801l0,23.624 l 36.27,20.255L 40.96,320.942l0,25.897 l 23.767,11.407L 122.88,325.509l0,41.738 l 15.206,11.54
|
1279 |
-
l 19.896-12.083l-0.573-62.515l 37.612-21.729l 0.338,44.145L 235.52,305.111l0,42.67 l-51.2,30.597L 184.32,401.050 l 16.824,10.752L 235.52,391.404L 235.52,456.202 L 255.939,469.76L 276.48,456.202
|
1280 |
-
l0-64.799 l 39.997,20.797L 337.92,399.718l0-20.398 l-61.44-31.539l0-42.67 l 40.96,23.214l0-46.428 l 40.96,21.34l0,66.806 l 14.899,8.868L 389.12,370.053l0-42.67 l 59.822,31.539L 471.040,346.45
|
1281 |
-
l0-24.156 l-56.269-32.461L 450.56,269.824l0-23.081 l-18.739-10.199l-54.548,32.338l-37.673-24.023l 36.342-22.815l-37.468-21.729l 38.625-20.398l 55.183,30.577
|
1282 |
-
L 450.56,198.042l0-22.016 l-33.997-19.323l 54.477-32.461l0-25.498 l-25.825-10.619L 389.12,118.723l0-40.499 l-15.565-10.742L 358.4,78.223l0,61.46 l-40.96,22.661l0-42.68 l-40.96,23.224
|
1283 |
-
l0-42.68 l 51.2-30.577l0-24.156 l-16.865-9.257L 276.48,56.596l0-64.942 L 255.939-21.76L 235.52-8.335z M 220.508,223.058L 239.821,193.28l 35.983,0 l 16.517,29.778L 274.872,254.72
|
1284 |
-
l-35.983,0 L 220.508,223.058z" data-tags="snow" />
|
1285 |
-
<glyph unicode="" d="M 354.478,390.554c 21.647,0, 39.127,17.756, 39.127,39.608C 393.605,452.004, 376.125,469.76, 354.478,469.76c-21.668,0-39.281-17.756-39.281-39.608
|
1286 |
-
C 315.197,408.31, 332.81,390.554, 354.478,390.554zM 459.745,239.483c-6.83-15.882-21.412-11.11-21.412-11.11l-61.399,23.378c-6.154,2.222-10.885,7.363-12.524,13.67l-13.885,40.888
|
1287 |
-
l-21.668-60.17l 63.713-67.41C 400.548,164.577, 399.36,154.194, 399.36,154.194l0-93 l0,0c0,0, 41.605-18.575, 41.605-41.472
|
1288 |
-
c0-22.907-18.166-41.482-40.868-41.482c-3.236,0-6.257,0.348-9.38,1.167L 256,9.656l0,20.101 l 102.4,22.671l0,84.695 l-68.803,68.588l-10.783-71.864
|
1289 |
-
c-1.72-9.124-8.387-17.644-12.114-21.852l-47.309-55.255c-0.686,0.594-1.649,0.594-2.57,0.471l 2.509-0.471
|
1290 |
-
c 12.247-9.697, 18.616-25.928, 14.797-42.179c-5.181-22.313-27.433-36.096-49.449-30.843c-3.236,0.809-6.246,1.874-9.144,3.267L 51.2,47.995
|
1291 |
-
l 4.639,19.517l 114.022-1.638l 54.211,63.191L 240.845,253.389l 35.195,94.054l-48.722-28.273L 198.246,261.683c-8.806-18.227-24.668-8.643-24.668-8.643
|
1292 |
-
c-14.367,8.294-8.806,22.313-8.806,22.313l 29.768,60.754c 7.997,15.421, 14.367,17.756, 14.367,17.756l 69.571,38.441
|
1293 |
-
c 15.165,10.516, 32.778,2.335, 32.778,2.335l 40.069-15.309c 20.040-7.25, 20.859-18.575, 20.859-18.575l 24.791-80.036l 53.391-19.036
|
1294 |
-
C 450.365,261.683, 464.732,255.488, 459.745,239.483z M 397.199-2.949c 1.065-0.123, 2.089-0.236, 3.144-0.236c 12.513,0, 22.211,10.281, 22.211,22.907
|
1295 |
-
c0,12.605-12.954,22.886-23.194,22.886l0-4.792 c0-12.032-9.216-21.842-21.176-21.842c-10.527,0-18.637,7.711-20.582,17.756l-62.925-14.019L 397.199-2.949
|
1296 |
-
z M 185.969,2.775c 0.932-0.471, 1.853-0.686, 2.888-0.942c 12.278-2.908, 24.443,4.69, 27.341,16.947c 2.191,9.349-1.628,18.698-8.929,23.951
|
1297 |
-
l-9.267-10.875c-7.875-9.103-21.545-10.148-30.577-2.212c-5.325,4.68-7.404,11.315-7.055,17.869l-68.977,1.178L 185.969,2.775z" data-tags="snow-shoeing" />
|
1298 |
-
<glyph unicode="" d="M 440.044,137.124c 25.774,0, 46.725,21.699, 46.725,48.517c0,26.675-20.961,48.271-46.725,48.271
|
1299 |
-
c-25.897,0-46.746-21.586-46.746-48.271C 393.288,158.822, 414.136,137.124, 440.044,137.124zM 475.904,28.918c 2.099-0.737, 3.092-1.096, 5.427-1.096c 11.96,0, 21.053,10.056, 21.053,22.436
|
1300 |
-
c0,9.339-5.908,17.459-13.783,20.736l-64.819,26.081l-47.155,86.62c0,0-3.912,9.564-17.5,14.797L 204.698,262.543l-91.761,160.973
|
1301 |
-
C 107.602,432.732, 97.812,439.040, 86.569,439.040C 69.581,439.040, 55.869,424.735, 55.869,407.142c0-5.581, 1.413-10.803, 3.871-15.411l 113.92-200.028L 101.437,221.542
|
1302 |
-
l-18.156-12.206L 371.845,90.88l-0.123,0 l 11.827-18.504c0,0, 4.68-9.964, 18.637-15.657l 35.84-14.213c-23.316-24.136-56.003-13.609-56.003-13.609
|
1303 |
-
L 29.686,175.503L 10.24,163.533l 370.422-150.641C 423.424-3.246, 460.8,35.461, 460.8,35.461l0-0.123 L 475.904,28.918z" data-tags="sledding" />
|
1304 |
-
<glyph unicode="" d="M 346.685,392.131c 21.289,0, 38.39,17.316, 38.39,38.758S 367.985,469.76, 346.685,469.76c-21.197,0-38.318-17.428-38.318-38.871
|
1305 |
-
S 325.489,392.131, 346.685,392.131zM 183.849,234.721l 138.004,90.235c 18.022,11.571, 23.47,35.656, 12.022,53.883c-11.315,18.237-35.236,23.736-53.268,12.155l-101.745-66.488
|
1306 |
-
c-5.775-3.789-10.312-8.724-13.251-14.449L 59.689,98.857c-6.236-12.503-1.352-27.638, 10.885-33.946c 12.237-6.287, 27.31-1.372, 33.536,11.018
|
1307 |
-
L 183.849,234.721zM 452.649,249.508c 18.248,11.581, 23.921,35.881, 12.462,54.354l-13.384-8.253c 6.912-11.121, 3.523-25.682-7.465-32.563L 20.48-8.335L 28.867-21.76
|
1308 |
-
L 452.649,249.508z" data-tags="ski-jumping" />
|
1309 |
-
<glyph unicode="" d="M 446.802,379.617C 471.552,379.617, 491.52,399.841, 491.52,424.694C 491.52,449.597, 471.552,469.76, 446.802,469.76c-24.617,0-44.585-20.163-44.585-45.066
|
1310 |
-
C 402.207,399.841, 422.185,379.617, 446.802,379.617zM 317.44-11.52l 122.88,0 c0,0, 10.24,1.055, 10.24,10.24l0,10.24 l 10.24,0 c0,0, 4.209-27.74-19.016-30.72L 317.44-21.76 L 317.44-11.52 zM 30.72,80.64l 81.92-81.92c0,0, 6.748-2.54, 13.22,3.932l 6.472,6.523L 143.36-1.28c0,0-18.381-26.829-36.905-12.36L 20.48,73.196L 30.72,80.64zM 347.187,113.9l 0.143-81.592c0-15.34, 10.813-27.761, 26.010-27.761c 13.937,0, 26.020,16.23, 26.020,27.761L 399.36,145.848
|
1311 |
-
c0,7.905-1.782,15.084-7.045,20.142l-65.331,66.437l 87.921,88.371c 16.456,20.726, 7.967,45.578, 7.967,45.578
|
1312 |
-
c-9.042,27.566-39.956,28.518-39.956,28.518L 157.338,394.957c-11.991,0-21.77-9.82-21.77-21.985c0-12.237, 9.81-21.996, 21.811-21.996
|
1313 |
-
l 155.771-0.246l-65.556-65.925c-9.411-9.697-14.182-20.603-14.182-34.857c0-13.691, 5.396-25.928, 14.449-34.867L 347.187,113.9zM 233.902,202.639c-2.13,2.028-4.024,4.239-5.765,6.595L 97.966,77.568c-9.851-7.987-13.056-22.057-7.148-33.782
|
1314 |
-
c 6.779-13.435, 23.173-18.77, 36.475-11.858c 1.823,0.963, 3.461,2.099, 5.028,3.359L 265.933,170.373L 233.902,202.639z" data-tags="ice-skating" />
|
1315 |
-
<glyph unicode="" d="M 501.76-5.325c-112.64-1.649-234.496,20.398-327.619,94.72l0,0c-0.481,0.594, 0.758,1.178, 0.758,2.14c0,1.649, 2.232,3.072, 4.014,3.072
|
1316 |
-
l 91.965-0.123c 4.536,0, 8.325,3.564, 8.325,8.069c0,3.308-1.464,5.571-4.905,7.352l-82.831,39.352c-1.669,0.952-2.591,2.611-2.591,4.618
|
1317 |
-
c0,1.546-2.58,2.847-1.628,3.799l0,0c0,0, 99.461,88.781, 314.501,86.764L 501.75-5.325 z M 313.743,135.281c 10.865,0, 19.681,8.765, 19.681,19.538
|
1318 |
-
c0,10.803-8.817,19.456-19.681,19.456c-10.742,0-19.558-8.663-19.558-19.456C 294.185,144.046, 303.002,135.281, 313.743,135.281zM 10.24,459.52L 102.4,459.52L 102.4,387.84L 10.24,387.84zM 194.56,459.52L 501.76,459.52L 501.76,387.84L 194.56,387.84zM 143.36,352c-10.24-2.488-13.302-9.841-13.302-18.36c0-8.54, 3.062-15.892, 13.302-18.616l0-120.32 c0-15.524-14.766-27.965-30.392-27.965
|
1319 |
-
c-15.503,0-29.184,12.452-29.184,27.965c0,3.789, 0.133,7.465, 1.567,10.793l 0.901-0.952l 9.759-9.021l-6.277,54.897l-16.138-36.997
|
1320 |
-
c-4.884-11.377-3.717-18.719-3.717-18.719c0-22.405, 19.282-40.663, 41.82-40.663c 22.661,0, 41.882,18.258, 41.882,40.663L 153.58,315.259
|
1321 |
-
c 10.24,2.734, 13.117,9.953, 13.117,18.381c0,8.53-2.877,15.882-13.117,18.596L 153.58,459.52 l-10.24,0 L 143.34,352 z" data-tags="ice-fishing" />
|
1322 |
-
<glyph unicode="" d="M 436.214,99.379c 18.831,6.164, 28.969,26.184, 22.774,44.861l-13.65-4.362c 3.727-11.192-2.478-23.265-13.64-26.962L 72.991-8.335
|
1323 |
-
L 77.609-21.76L 436.214,99.379zM 105.912,308.91c 19.681,5.704, 30.945,26.286, 25.201,45.865c-5.755,19.569-26.44,30.761-46.182,25.057
|
1324 |
-
c-19.732-5.704-31.119-26.286-25.252-45.865C 65.434,314.388, 86.067,303.196, 105.912,308.91zM 90.685,257.679c-19.63,37.13, 36.7,67.215, 57.446,31.201l 40.448-76.298l 77.015,21.719c 12.739,3.584, 30.341-10.189, 30.341-26.399
|
1325 |
-
l 0.43-108.739c 0.123-26.952-40.243-27.064-40.243,0.215c-0.123,25.293-0.788,79.196-0.788,79.196l-80.364-23.931
|
1326 |
-
c-17.592-5.038-32.143,3.676-39.014,16.548L 90.685,257.679zM 215.040,240.445L 215.040,469.76L 194.56,469.76L 194.56,236.083 zM 53.699,208.118c-11.049,21.586, 17.48,35.901, 28.529,14.316l 34.785-67.564c 7.557-13.978, 22.333-23.501, 39.363-23.501
|
1327 |
-
c 5.294,0, 10.25,1.352, 15.104,2.355l 43.827,12.739c 23.235,6.943, 32.246-23.47, 8.806-30.321l-46.1-13.292
|
1328 |
-
c-6.871-2.13-14.316-3.236-21.985-3.236c-29.655,0-55.306,16.66-67.932,41.042L 53.699,208.118z" data-tags="chairlift" />
|
1329 |
-
<glyph unicode="" d="M 204.001,387.062c-20.173,0-36.506-16.138-36.506-36.045c0-20.009, 16.333-36.137, 36.506-36.137c 20.070,0, 36.403,16.138, 36.403,36.137
|
1330 |
-
C 240.404,370.924, 224.082,387.062, 204.001,387.062zM 388.844,315.761c-1.311,7.741-7.721,12.165-8.038,12.493L 166.513,469.76L 146.637,440.904c-3.697-5.755-2.109-13.261, 3.553-17.029
|
1331 |
-
c 5.734-3.758, 13.24-2.202, 16.988,3.543l 11.581,16.691l 174.029-115.087l-142.602-25.764c-10.025-1.659-17.316-11.827-15.114-21.668l 30.996-120.289
|
1332 |
-
l-100.28-150.794c-6.011-10.281-2.376-23.552, 7.997-29.399c 10.465-5.97, 23.798-2.335, 29.747,7.956c0,0, 104.663,157.747, 105.103,158.751
|
1333 |
-
c0,0, 5.407-21.893, 5.407-22.006L 258.263,7.424c-1.976-11.725, 6.072-22.774, 17.869-24.76c 11.909-1.997, 23.163,5.97, 25.16,17.684
|
1334 |
-
l 16.189,121.733c 0.451,3.103-0.102,9.943-0.87,12.933L 280.883,277.504l 93.071,16.804C 383.877,296.079, 390.615,305.695, 388.844,315.761z" data-tags="golf" />
|
1335 |
-
<glyph unicode="" d="M 201.513,393.452c 18.975,0, 34.284,14.776, 34.284,32.973C 235.796,444.744, 220.488,459.52, 201.513,459.52
|
1336 |
-
c-18.842,0-34.15-14.776-34.15-33.096C 167.363,408.228, 182.671,393.452, 201.513,393.452zM 455.803,298.26l-36.25,6.697l-21.094-40.479c 3.41-0.788, 6.932-1.137, 10.588-1.137
|
1337 |
-
C 431.555,263.352, 450.396,278.129, 455.803,298.26z M 10.24,229.919C 10.24,256.748, 32.737,275.2, 60.539,275.2L 163.84,275.2 l0,76.964 c0,18.309, 16.886,33.085, 35.85,33.085
|
1338 |
-
S 235.52,370.473, 235.52,352.164l0-11.366 l 50.371-12.513c 8.817-1.925, 14.397-10.455, 12.411-18.985c-1.997-8.653-10.732-13.988-19.671-12.063L 235.52,307.016L 235.52,275.2
|
1339 |
-
l 50.575,0 L 425.318,415.98l-4.137-35.318l 68.547-43.592c 11.325-6.257, 15.442-20.142, 8.97-31.048c-5.079-8.765-15.206-12.872-24.75-11.162
|
1340 |
-
l-5.53,1.075c-6.605-25.815-30.761-44.78-59.372-44.78c-5.642,0-12.585,0.809-17.766,2.171L 337.92,150.876l0-140.575
|
1341 |
-
C 337.92-1.751, 329.861-11.52, 317.379-11.52C 304.876-11.52, 296.96-1.751, 296.96,10.312L 296.96,152.32 L 180.797,152.32 l-20.5-33.024l 42.885-98.284
|
1342 |
-
c 6.236-10.557, 2.355-23.665-8.468-29.573c-10.967-6.031-25.262-2.171-31.508,8.407L 112.64,113.797L 112.64,150.067 l-20.48-34.007l0-105.748
|
1343 |
-
C 92.16-1.751, 79.084-11.52, 66.601-11.52C 54.118-11.52, 40.96-1.751, 40.96,10.312L 40.96,132.465 l 20.48,28.334l0,95.846 L 40.96,229.12L 40.96,152.32 L 10.24,152.32 L 10.24,229.919 z" data-tags="horse-riding" />
|
1344 |
-
<glyph unicode="" d="M 281.487,408.32c-6.257,20.48-28.18,40.714-54.077,40.714c-30.925,0-55.931-25.754-55.931-55.634
|
1345 |
-
c0-5.028, 0.604-5.56, 1.935-15.8l 22.405,0 c 1.659,0, 3.441-4.086, 3.441-4.086c 6.748-9.421, 18.033-14.623, 30.751-14.623
|
1346 |
-
c 20.695,0, 37.519,16.466, 37.519,36.485C 267.54,399.985, 268.769,408.32, 266.752,408.32L 281.487,408.32 zM 279.941,86.282c-5.857-5.775-13.988-10.168-23.132-10.168l-0.041,117.545l 84.081,23.337l 21.105-40.151
|
1347 |
-
L 279.941,86.282zM 209.336,353.71c-5.55,6.001-13.568,10.476-22.6,10.476c-9.554,0-18.135-3.901-23.624-10.65l-66.724-98.417
|
1348 |
-
c-2.714-4.383-4.27-9.421-4.27-14.889c0-10.168, 5.069-18.995, 13.148-24.259L 194.56,167.956l0-81.787 c0-11.561, 8.54-20.982, 20.48-20.982
|
1349 |
-
c 11.909,0, 20.48,9.421, 20.48,20.982l0,102.134 c0,0, 4.229,16.282-14.858,25.149l-55.142,28.273l 41.011,60.047l 21.76-32.758
|
1350 |
-
c 4.321-6.636, 10.24-9.206, 15.585-9.103l 55.429-1.26c 22.569,0, 22.61,26.788, 0.041,26.788l-44.923,0 L 209.336,353.71zM 454.666,221.184c 0.901-0.86, 1.403-1.935, 1.403-3.328c0-2.57-2.232-4.721-4.874-4.721
|
1351 |
-
c-0.727,0-1.188,0-1.782,0.225c-9.585,3.963-15.667,6.4-26.778,6.4c-7.363,0-16.486-2.437-27.013-10.691l-9.718,18.606
|
1352 |
-
c 12.155,3.553, 22.129,6.646, 32.594,6.646C 435.067,234.332, 443.771,231.014, 454.666,221.184zM 82.401,206.807l 93.952-50.094l 0.215-20.122L 69.274,193.751c-7.741,3.86-18.196,6.113-25.61,6.113
|
1353 |
-
c-11.069,0-17.203-2.447-26.726-6.41c-0.614-0.215-1.116-0.215-1.761-0.215c-2.673,0-4.936,2.15-4.936,4.71
|
1354 |
-
c0,1.393, 0.543,2.458, 1.434,3.318c 10.895,9.841, 21.975,13.148, 38.574,13.148C 58.767,214.405, 69.11,213.453, 82.401,206.807zM 91.136,22.487c 30.607,0, 55.398,23.962, 55.398,53.617c0,29.655-24.781,53.637-55.398,53.637
|
1355 |
-
c-30.597,0-55.388-23.992-55.388-53.637C 35.748,46.449, 60.539,22.487, 91.136,22.487z M 11.182,76.114c0,42.711, 35.799,77.414, 79.954,77.414
|
1356 |
-
c 44.206,0, 80.005-34.703, 80.005-77.414S 135.342-1.28, 91.136-1.28C 46.971-1.28, 11.182,33.403, 11.182,76.114zM 421.786,22.487c 30.607,0, 55.47,23.962, 55.47,53.617c0,29.655-24.863,53.637-55.47,53.637
|
1357 |
-
c-30.566,0-55.368-23.992-55.368-53.637C 366.418,46.449, 391.219,22.487, 421.786,22.487z M 341.852,76.114c0,42.711, 35.738,77.414, 79.944,77.414
|
1358 |
-
c 44.155,0, 79.974-34.703, 79.974-77.414S 465.951-1.28, 421.786-1.28C 377.59-1.28, 341.852,33.403, 341.852,76.114zM 404.163,164.536l-38.84,75.059C 360.223,248.586, 350.3,254.72, 338.934,254.72l-25.405,0 c-4.905,0-8.96-3.881-8.96-8.704
|
1359 |
-
c0-4.803, 4.055-8.632, 8.96-8.632l 25.405,0.143c 4.26,0, 9.021-2.785, 10.824-6.861l 36.598-72.131L 404.163,164.536z" data-tags="motobike-trail" />
|
1360 |
-
<glyph unicode="" d="M 246.477,385.464c 21.012,0, 37.98,16.63, 37.98,37.089C 284.457,443.003, 267.489,459.52, 246.477,459.52
|
1361 |
-
c-21.023,0-38.113-16.517-38.113-36.977C 208.364,402.084, 225.454,385.464, 246.477,385.464zM 182.19,379.331c 1.454,5.693-2.253,11.377-7.987,12.8l-31.693,7.444c-5.96,1.311-11.796-2.089-13.158-7.762
|
1362 |
-
l-26.634-107.315c-1.464-5.693, 2.13-11.377, 7.977-12.8l 31.805-7.444c 5.734-1.423, 11.694,2.079, 13.036,7.772L 182.19,379.331zM 328.458-2.335c0-0.215-0.113-0.44-0.113-0.543c0-4.7, 3.932-8.54, 8.755-8.54
|
1363 |
-
c 4.383,0, 8.090,3.277, 8.663,7.444L 409.6,333.056c0,0.215,0,0.44,0,0.655c0,4.598-3.82,8.428-8.653,8.428
|
1364 |
-
c-4.383,0-7.762-3.287-8.653-7.444L 328.458-2.335zM 116.091,19.763c-0.338-1.751-0.44-3.492-0.44-5.253c0-14.438, 11.919-26.030, 26.747-26.030
|
1365 |
-
c 12.145,0, 22.364,7.875, 25.62,18.586l 45.967,185.211l 43.827-184.105C 260.628-3.205, 271.196-11.52, 283.668-11.52c 14.838,0, 26.747,11.592, 26.747,26.030
|
1366 |
-
c0,1.976-0.225,3.83-0.573,5.693l-60.119,244.603l 5.059,21.555l 3.942-16.957c 3.594-11.049, 13.926-12.145, 13.926-12.145l 61.932-15.319
|
1367 |
-
c 1.239-0.215, 2.468-0.328, 3.717-0.328c 10.107,0, 18.319,7.875, 18.319,17.715c0,8.417-5.96,15.534-14.060,17.388l-53.596,13.128
|
1368 |
-
l-14.725,58.194c-6.973,32.492-38.881,31.724-38.881,31.724c-31.017,0.768-38.779-30.945-38.779-30.945L 116.091,19.763z" data-tags="trail-walking" />
|
1369 |
-
<glyph unicode="" d="M 51.2,428.8L 225.28,428.8L 225.28,408.32L 204.8,408.32L 204.8,393.943L 51.2,380.283 zM 297.37,379.095c 22.098,0, 39.946,17.94, 39.946,40.151C 337.316,441.467, 319.468,459.52, 297.37,459.52c-22.088,0-40.049-18.053-40.049-40.274
|
1370 |
-
C 257.321,397.036, 275.282,379.095, 297.37,379.095zM 327.629,381.358c 11.448,11.407, 29.88,11.407, 41.359,0l 86.497-86.845C 458.793,291.185, 460.8,286.546, 460.8,281.559l0-260.659
|
1371 |
-
C 460.8,2.959, 448.041-11.52, 430.213-11.52C 412.355-11.52, 399.36,2.959, 399.36,20.9l0,215.040 l-82.258,81.132l-33.075-32.43
|
1372 |
-
c-3.656-4.393-9.503-7.25-15.78-7.25c-5.775,0-11.192,2.499-14.858,6.533l-55.665,55.951c-7.086,8.438-6.564,21.268, 1.833,28.396
|
1373 |
-
c 8.387,7.127, 20.89,5.939, 28.006-2.499l 42.168-42.65L 327.629,381.358zM 159.437,368.998c-0.829,3.922-4.26,6.769-8.274,6.769c-4.137,0-5.714-2.97-6.42-7.004L 133.12,291.185L 133.12-11.52 l 112.64,0 l0,40.96 l-72.253,0
|
1374 |
-
l-0.471,259.891L 159.437,368.998z" data-tags="viewing" />
|
1375 |
-
<glyph unicode="" d="M 244.183,383.242c 20.613,0.543, 36.844,18.084, 36.311,39.014C 279.951,443.453, 262.871,459.899, 242.258,459.52
|
1376 |
-
c-20.511-0.553-36.741-18.084-36.311-39.117C 206.479,399.36, 223.672,382.7, 244.183,383.242zM 370.739,256.87l-54.569,30.484l-45.189,71.854c-7.25,9.236-18.575,16.067-31.498,15.903
|
1377 |
-
c-9.718-0.328-18.268-4.803-25.108-10.813l-68.065-69.55c-2.243-2.406-3.789-5.458-4.321-8.796l-8.714-76.605
|
1378 |
-
c-0.102-0.829-0.102-1.526-0.154-2.355c 0.266-9.503, 8.008-16.876, 17.295-16.712c 8.714,0.215, 15.38,7.762, 16.343,16.056l 7.168,65.741
|
1379 |
-
l 23.706,24.095l-21.197-184.238l-39.311-86.927c-1.178-3.062-2.406-7.332-2.304-11.356c 0.379-14.203, 11.971-25.457, 25.907-25.139
|
1380 |
-
c 9.871,0.276, 17.9,6.349, 22.221,14.971l 42.107,93.819c 0.85,2.509, 3.84,8.632, 3.942,11.407l 4.915,45.404l 43.366-147.681
|
1381 |
-
c 3.727-10.322, 13.24-18.135, 24.668-17.807c 13.885,0.379, 24.996,12.145, 24.678,26.399c-0.113,1.864-0.655,3.052-0.748,5.192l-60.252,204.78
|
1382 |
-
l 7.69,66.55l 16.988-26.88c 1.167-1.751, 2.775-3.389, 4.588-4.526l 59.607-33.382c 2.877-0.932, 5.13-1.7, 7.782-1.7
|
1383 |
-
c 9.421,0.266, 16.783,8.192, 16.579,17.756C 378.665,248.668, 375.439,254.024, 370.739,256.87z" data-tags="walking" />
|
1384 |
-
<glyph unicode="" d="M 115.743,38.185c 42.895,0, 77.67,35.686, 77.67,79.606c0,44.052-34.775,79.749-77.67,79.749
|
1385 |
-
c-42.793,0-77.599-35.697-77.599-79.749C 38.144,73.871, 72.95,38.185, 115.743,38.185z M 20.48,117.791c0,54.026, 42.742,97.751, 95.263,97.751
|
1386 |
-
c 52.675,0, 95.334-43.725, 95.334-97.751c0-54.006-42.66-97.608-95.334-97.608C 63.222,20.183, 20.48,63.785, 20.48,117.791zM 396.298,37.212c 42.742,0, 77.558,35.686, 77.558,79.626c0,44.022-34.816,79.708-77.558,79.708
|
1387 |
-
c-42.916,0-77.742-35.686-77.742-79.708C 318.556,72.899, 353.382,37.212, 396.298,37.212z M 300.902,116.838c0,54.006, 42.742,97.72, 95.396,97.72
|
1388 |
-
c 52.48,0, 95.222-43.715, 95.222-97.72C 491.52,62.915, 448.778,19.2, 396.298,19.2C 343.644,19.2, 300.902,62.915, 300.902,116.838zM 301.199,355.369c 19.784,0, 35.86,16.384, 35.86,36.659C 337.060,412.314, 320.983,428.8, 301.199,428.8s-35.85-16.486-35.85-36.772
|
1389 |
-
C 265.349,371.743, 281.416,355.369, 301.199,355.369zM 302.705,264.96c-5.202,0-10.803,3.113-14.92,9.841l-23.276,37.622l-48.026-48.66l 44.493-23.9
|
1390 |
-
c 18.319-8.991, 15.514-25.395, 15.514-25.395l0-103.383 c0-11.725-9.052-21.258-20.48-21.258c-11.428,0-20.48,9.544-20.48,21.258l0,82.76 l-77.353,43.94
|
1391 |
-
c-9.206,5.315-15.503,15.401-15.503,26.89c0,7.926, 2.826,15.196, 7.69,20.613l 75.756,77.783c 9.4,10.957, 22.518,9.216, 22.518,9.216
|
1392 |
-
c 15.872,0, 24.228-14.213, 24.228-14.213l 37.693-63.242L 368.64,294.943c 20.48,0, 20.48-29.983,0-29.983L 302.705,264.96 z" data-tags="bicycling" />
|
1393 |
-
<glyph unicode=" " horiz-adv-x="256" />
|
1 |
+
<?xml version="1.0" standalone="no"?>
|
2 |
+
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
|
3 |
+
<svg xmlns="http://www.w3.org/2000/svg">
|
4 |
+
<metadata>
|
5 |
+
This is a custom SVG font generated by IcoMoon.
|
6 |
+
<iconset grid="16"></iconset>
|
7 |
+
</metadata>
|
8 |
+
<defs>
|
9 |
+
<font id="map-icons" horiz-adv-x="512" >
|
10 |
+
<font-face units-per-em="512" ascent="480" descent="-32" />
|
11 |
+
<missing-glyph horiz-adv-x="512" />
|
12 |
+
<glyph class="hidden" unicode="" d="M0,480L 512 -32L0 -32 z" horiz-adv-x="0" />
|
13 |
+
<glyph unicode="" d="M 256.154,455.424c-79.872,0-144.599-63.529-144.599-141.865C 111.555,235.203, 256.154-21.76, 256.154-21.76s 144.609,256.963, 144.609,335.319
|
14 |
+
C 400.763,391.895, 335.995,455.424, 256.154,455.424z" data-tags="map-pin" />
|
15 |
+
<glyph unicode="" d="M 20.48,318.638L 20.48,459.52L 166.902,459.52L 220.785,418.56L 130.99,418.56L 225.28,318.638L 166.902,264.96L 71.68,354.55L 71.68,264.755 zM 491.52,134.38L 491.52-11.52L 345.098-11.52L 291.215,29.44L 381.010,29.44L 286.72,131.871L 345.098,186.798L 440.32,98.468L 440.32,188.262 z" data-tags="expand" />
|
16 |
+
<glyph unicode="" d="M 20.48,318.638L 20.48,459.52L 166.902,459.52L 220.785,418.56L 130.99,418.56L 225.28,318.638L 166.902,264.96L 71.68,354.55L 71.68,264.755 zM 345.62,459.52L 491.52,459.52L 491.52,318.116L 450.56,264.243L 450.56,354.028L 348.129,259.738L 293.202,315.607L 381.532,408.32L 291.738,408.32 zM 491.52,134.38L 491.52-11.52L 345.098-11.52L 291.215,29.44L 381.010,29.44L 286.72,131.871L 345.098,186.798L 440.32,98.468L 440.32,188.262 zM 166.38-11.52L 20.48-11.52L 20.48,134.902L 61.44,188.785L 61.44,98.99L 163.871,193.28L 218.798,134.902L 130.468,39.68L 220.262,39.68 z" data-tags="fullscreen" />
|
17 |
+
<glyph unicode="" d="M 460.8,469.76L 51.2,469.76L 51.2,60.16L 205.752,60.16L 261.448-22.272L 317.153,60.16L 460.8,60.16 z" data-tags="square-pin" />
|
18 |
+
<glyph unicode="" d="M 486.349,259.072C 484.045,383.57, 411.822,433.039, 408.863,434.995l-11.172,7.639l-11.254-7.619c-18.698-12.687-38.083-19.128-57.61-19.128
|
19 |
+
c-32.338,0-54.292,17.408-55.224,18.166L 261.007,444.16l-12.503-10.138c-0.922-0.737-22.866-18.135-55.214-18.135c-19.507,0-38.881,6.431-57.61,19.159
|
20 |
+
l-11.203,7.557l-11.284-7.629C 105.533,429.711, 38.298,380.047, 35.86,259.686C 34.888,249.201, 63.805,51.057, 261.11-6.4
|
21 |
+
C 475.617,56.289, 487.455,245.996, 486.349,259.072z" data-tags="route-pin" />
|
22 |
+
<glyph unicode="" d="M 435.814,304.814c 2.847,33.853, 13.056,64.932, 31.027,93.43L 397.885,464.64c-21.78-18.053-46.602-28.058-74.701-29.819
|
23 |
+
c-25.764-2.243-50.176,2.468-73.155,14.162c-23.613-11.305-47.933-16.046-73.277-14.162c-26.235,2.253-49.9,11.213-71.096,27.075L 36.526,395.52
|
24 |
+
c 17.009-28.897, 26.481-59.136, 28.334-90.706c 0.881-14.531-3.42-34.56-13.097-60.416c-5.059-14.336-8.878-26.778-11.5-37.171
|
25 |
+
c-2.417-10.332-3.922-18.708-4.434-25.006c-0.348-27.556, 7.68-52.439, 24.146-74.568c 12.872-16.148, 34.099-33.987, 63.57-53.494
|
26 |
+
c 32.236-15.8, 57.19-26.051, 74.67-30.423c 5.018-2.263, 9.912-4.424, 14.5-6.502c 4.557-2.089, 9.441-4.147, 14.531-6.38
|
27 |
+
c 11.008-6.349, 18.719-13.22, 22.784-20.316c 4.997,7.69, 12.892,14.377, 23.378,20.316c 7.393,3.113, 13.67,5.786, 18.698,8.161
|
28 |
+
c 5.028,2.15, 8.776,3.738, 10.947,4.71c 3.738,1.772, 8.622,3.82, 14.561,6.083c 5.96,2.263, 13.363,5.028, 22.159,8.1
|
29 |
+
c 17.029,5.796, 29.43,11.295, 37.304,16.251c 28.59,19.497, 49.49,37.059, 62.792,52.736c 17.050,22.2, 25.344,47.206, 24.965,75.305
|
30 |
+
c-1.014,12.595-6.554,32.727-16.609,60.16C 438.661,269.097, 434.432,289.843, 435.814,304.814z" data-tags="sheild" />
|
31 |
+
<glyph unicode="" d="M 143.36,316.16c 30.72-10.24, 51.2-36.332, 51.2-70.738l0-264.366 C 194.56-27.075, 202.783-32, 194.386-32L 42.824-32 C 34.447-32, 30.72-27.075, 30.72-18.954L 30.72,245.422
|
32 |
+
C 30.72,279.91, 51.2,308.439, 81.92,316.16L 81.92,439.040 l 61.44,0 L 143.36,316.16 zM 81.92,480L 143.36,480L 143.36,459.52L 81.92,459.52zM 361.011,431.002c-4.68,0.666-8.274,4.465-8.274,9.042c0,3.348, 2.007,6.267, 4.925,7.926c-2.918,1.536-4.925,6.943-4.925,10.322
|
33 |
+
C 352.737,463.37, 357.018,469.76, 362.322,469.76l 47.964,0 c 5.335,0, 9.585-6.39, 9.585-11.459c0-3.533-1.997-7.649-5.038-9.134
|
34 |
+
c 2.918-1.587, 5.038-5.059, 5.038-8.53c0-4.588-3.461-8.673-8.12-9.288l 61.082-149.504C 476.416,272.128, 481.28,261.202, 481.28,250.47L 481.28-11.52
|
35 |
+
c0-9.994, 0.266-20.48-10.24-20.48L 316.529-32 C 305.859-32, 307.2-21.514, 307.2-11.52L 307.2,254.72 c0,10.721, 1.997,17.265, 5.601,26.993L 361.011,431.002zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76z" data-tags="liquor_store" />
|
36 |
+
<glyph unicode="" d="M 418.908,248.054c-12.964,0-25.283-2.662-36.475-7.444l-31.498,53.975l 23.736,40.684c 3.226,5.55, 1.352,12.677-4.188,15.923
|
37 |
+
c-2.437,1.413-5.151,3.973-7.721,3.553C 362.086,354.857, 361.431,357.12, 360.745,357.12l-46.561,0 c-6.42,0-11.633-8.94-11.633-15.36
|
38 |
+
c0-6.431, 5.212-15.36, 11.633-15.36l 30.177,0 l-13.588-20.48L 194.806,305.92 l 27.156,51.2l 10.762,0 c 6.42,0, 11.633,3.809, 11.633,10.24s-5.212,10.24-11.633,10.24l-58.194,0
|
39 |
+
c-6.41,0-11.633-3.809-11.633-10.24s 5.212-10.24, 11.633-10.24l 20.47,0 l-65.423-114.33c-11.203,4.782-23.542,6.349-36.495,6.349
|
40 |
+
C 41.677,249.139,0,206.909,0,155.505c0-51.415, 41.677-93.358, 93.092-93.358s 93.092,41.544, 93.092,92.959c0,30.106-14.356,56.74-36.557,73.769l 24.914,42.66
|
41 |
+
l 71.414-122.429c 0.082-0.133, 0.184-0.256, 0.276-0.389c 0.092-0.174, 0.205-0.317, 0.307-0.461c 0.082-0.133, 0.143-0.236, 0.236-0.348
|
42 |
+
c 0.287-0.379, 0.604-0.727, 0.922-1.065c 0.031-0.041, 0.072-0.082, 0.113-0.133c 0.102-0.102, 0.205-0.195, 0.317-0.287
|
43 |
+
c 0.102-0.092, 0.215-0.184, 0.328-0.266c 0.287-0.246, 0.594-0.502, 0.901-0.717c 0.123-0.092, 0.246-0.164, 0.379-0.246
|
44 |
+
c 0.102-0.061, 0.195-0.123, 0.297-0.195c 0.041-0.020, 0.072-0.051, 0.123-0.072c 0.010-0.020, 0.031-0.020, 0.041-0.041
|
45 |
+
c 0.317-0.174, 0.645-0.328, 0.983-0.481c 0.041-0.031, 0.072-0.041, 0.113-0.051c 0.072-0.031, 0.154-0.092, 0.236-0.123
|
46 |
+
c 0.020,0, 0.051-0.020, 0.082-0.020c 0.236-0.102, 0.502-0.184, 0.748-0.266c 0.236-0.082, 0.461-0.174, 0.696-0.225
|
47 |
+
c 0.051-0.010, 0.102-0.010, 0.143-0.041c 0.092-0.010, 0.174-0.020, 0.256-0.041c 0.143-0.031, 0.297-0.051, 0.451-0.092
|
48 |
+
c 0.696-0.133, 1.382-0.215, 2.089-0.215l0,0 c 0.010,0, 0.010-0.635, 0.010-0.635c 0.020,0, 0.031-0.604, 0.041-0.604l 70.564,0
|
49 |
+
c 5.755-40.96, 44.831-80.845, 92.293-80.845c 51.415,0, 93.092,41.994, 93.092,93.409C 512,206.060, 470.323,248.054, 418.908,248.054z M 162.908,154.962
|
50 |
+
c0-38.574-31.252-69.827-69.816-69.827c-38.564,0-69.816,31.263-69.816,69.827c0,38.554, 31.252,69.806, 69.816,69.806
|
51 |
+
c 8.673,0, 16.947-1.649, 24.607-4.547l-34.662-59.412c-3.236-5.54-1.352-12.667, 4.198-15.923c 1.843-1.065, 3.86-1.577, 5.847-1.577
|
52 |
+
c 4.004,0, 7.895,2.068, 10.066,5.765l 34.673,59.453C 153.139,195.717, 162.908,176.476, 162.908,154.962z M 256,180.541L 194.806,285.44l 122.399,0 L 256,180.541z
|
53 |
+
M 337.449,269.476l 24.924-43.704C 343.101,210.985, 329.789,193.28, 326.615,162.56l-50.36,0 L 337.449,269.476z M 374.18,204.503L 398.664,162.56l-48.517,0
|
54 |
+
C 352.952,183.040, 361.677,194.048, 374.18,204.503z M 418.908,84.5c-34.58,0-63.232,26.86-68.772,57.58l 68.741,0 c 0.031,0, 0.031,0.604, 0.051,0.604
|
55 |
+
c 0.696,0, 1.393,0.41, 2.079,0.543c 0.164,0.041, 0.307,0.215, 0.471,0.236c 0.635,0.154, 1.28,0.42, 1.935,0.676
|
56 |
+
c 0.061,0.031, 0.133,0.133, 0.215,0.164c 0.379,0.174, 0.768,0.379, 1.157,0.594c 0.092,0.051, 0.174,0.154, 0.276,0.215
|
57 |
+
c 0.348,0.225, 0.676,0.492, 1.034,0.748c 0.266,0.225, 0.573,0.44, 0.799,0.676c 0.287,0.256, 0.532,0.553, 0.778,0.85
|
58 |
+
c 0.236,0.266, 0.502,0.553, 0.696,0.87c 0.205,0.276, 0.41,0.625, 0.584,0.942c 0.184,0.328, 0.369,0.635, 0.532,0.973
|
59 |
+
c 0.154,0.348, 0.266,0.707, 0.399,1.065c 0.123,0.348, 0.236,0.696, 0.317,1.065c 0.092,0.369, 0.123,0.696, 0.174,1.065
|
60 |
+
c 0.061,0.44, 0.113,0.819, 0.133,1.26c0,0.123, 0.031,0.236, 0.031,0.358c0,0.215-0.051,0.43-0.051,0.655
|
61 |
+
c-0.041,0.44-0.072,0.84-0.143,1.27c-0.051,0.379-0.154,0.707-0.236,1.085c-0.102,0.358-0.195,0.707-0.338,1.065
|
62 |
+
c-0.164,0.399-0.338,0.778-0.532,1.157c-0.102,0.205-0.174,0.41-0.276,0.604l-34.662,59.412c 7.68,2.898, 15.944,4.547, 24.607,4.547
|
63 |
+
c 38.574,0, 69.827-31.57, 69.827-70.124C 488.745,116.081, 457.482,84.5, 418.908,84.5z" data-tags="bicycle_store" />
|
64 |
+
<glyph unicode="" d="M 128.522-26.726c-3.482-6.103-13.394-7.066-22.139-2.048l-54.743,31.16c-8.704,4.966-12.954,13.947-9.462,20.040L 275.005,391.506
|
65 |
+
c 33.485,54.129-83.558,49.357-112.292,33.423C 184.443,463.892, 253.696,476.754, 298.609,480l 13.066-0.85c 25.385-12.646, 61.788-31.621, 85.78-47.534
|
66 |
+
c 17.623-27.679, 36.209-42.25, 62.525-42.179c 34.345-26.317-19.302-98.109-53.053-64.86c 0.184,16.425-47.473,58.921-80.855,23.91L 128.522-26.726z" data-tags="hardware_store" />
|
67 |
+
<glyph unicode="" d="M 261.233,450.386L 12.984,244.48L 71.68,244.48 l0-245.76 l 368.64,0 L 440.32,244.48 l 64.184,0 L 261.233,450.386z M 316.846,70.4L 200.632,70.4 l 24.371,109.681c-14.735,10.24-24.371,25.661-24.371,44.544
|
68 |
+
c0,31.109, 26.020,55.695, 58.102,55.695c 32.102,0, 58.112-25.528, 58.112-56.637c0-18.893-9.636-33.229-24.361-43.438L 316.846,70.4z" data-tags="insurance_agency" />
|
69 |
+
<glyph unicode="" d="M 3.021,197.571c 4.198-32.512, 31.918-57.61, 65.587-57.61c 33.628,0, 61.327,25.098, 65.536,57.61L 3.021,197.571 zM 360.264,64.461c0-5.663-4.567-10.271-10.22-10.271L 159.007,54.19 c-5.612,0-10.24,4.608-10.24,10.271l0,0c0,5.622, 4.618,10.168, 10.24,10.168l 191.027,0
|
70 |
+
C 355.686,74.629, 360.264,70.083, 360.264,64.461L 360.264,64.461zM 149.883,48.957L 359.158,48.957L 359.158,19.395L 149.883,19.395zM 377.856,197.571c 4.188-32.512, 31.939-57.61, 65.556-57.61c 33.638,0, 61.348,25.098, 65.526,57.61L 377.856,197.571 zM 505.334,218.143l-53.688,73.953l 28.703,0 c 6.984,0, 12.605,5.724, 12.605,12.8c0,7.014-5.632,12.677-12.605,12.677L 328.305,317.573
|
71 |
+
c-9.062,24.996-30.935,43.776-57.692,48.456L 270.612,391.229 L 270.612,405.934 c0,7.096-5.693,12.759-12.749,12.759c-0.389,0-0.768-0.082-1.188-0.133
|
72 |
+
c-0.379,0.051-0.788,0.133-1.188,0.133c-7.055,0-12.728-5.663-12.728-12.759l0-14.705 l0-25.18 c-26.757-4.68-48.62-23.46-57.672-48.456L 33.014,317.594
|
73 |
+
c-6.932,0-12.585-5.663-12.585-12.677c0-7.086, 5.652-12.8, 12.585-12.8l 27.392,0 l-53.699-73.953L0,218.163 l0-13.66 l 137.196,0 l0,13.66 L 130.458,218.163 L 76.78,292.096
|
74 |
+
l 103.741,0 l 9.8,0 l 11.069,0 c0,2.888, 0.317,5.724, 0.748,8.438c 0.44,1.28, 0.737,2.58, 0.737,3.922c 4.69,19.763, 20.132,35.461, 39.885,40.274
|
75 |
+
l0-97.403 l0-42.854 l-0.532,0 c-1.096-52.756-26.194-98.765-63.427-124.621l 74.404,0 l 3.482,0 l 6.973,0 l 70.932,0 c-37.243,25.856-62.321,71.864-63.478,124.621l-0.492,0
|
76 |
+
l0,42.854 l0,97.403 c 19.722-4.813, 35.215-20.511, 39.875-40.274c 0.041-1.341, 0.317-2.642, 0.768-3.922c 0.41-2.724, 0.666-5.55, 0.666-8.438l 11.141,0
|
77 |
+
l 9.789,0 l 102.38,0 l-53.699-73.953l-6.697,0 l0-13.66 L 512,204.483 l0,13.66 L 505.334,218.143 z M 63.13,218.143L 20.275,218.143 l 42.854,59.034L 63.13,218.143 z M 74.097,218.143l0,59.034
|
78 |
+
l 42.854-59.034L 74.097,218.143 z M 437.944,218.143l-42.875,0 l 42.875,59.034L 437.944,218.143 z M 448.86,218.143l0,59.034 l 42.906-59.034L 448.86,218.143 zM 81.316,335.37c0-6.953-5.693-12.687-12.698-12.687c-7.035,0-12.749,5.734-12.749,12.687c0,7.025, 5.714,12.759, 12.749,12.759
|
79 |
+
C 75.622,348.14, 81.316,342.395, 81.316,335.37zM 456.141,336.046c0-7.076-5.693-12.687-12.718-12.687c-7.055,0-12.718,5.612-12.718,12.687c0,7.025, 5.663,12.749, 12.718,12.749
|
80 |
+
C 450.447,348.795, 456.141,343.071, 456.141,336.046z" data-tags="lawyer" />
|
81 |
+
<glyph unicode="" d="M 145.787,75.52l 312.146,0 L 457.933,342.589 L 145.787,342.589 L 145.787,75.52 z M 304.394,316.006l 112.538-98.284l-28.355,0 l0-117.924 l-65.905,0 L 322.673,183.040 l-41.626,0 l0-83.241 L 218.624,99.799 L 218.624,217.723
|
82 |
+
l-29.082,0 L 304.394,316.006zM 111.104,408.484L 111.104,469.576L 41.738,469.576L 41.738-32L 111.104-32L 111.104,377.262L 471.818,377.262L 471.818,408.484 z" data-tags="real_estate_agency" />
|
83 |
+
<glyph unicode="" d="M 217.201,418.56C 87.849,418.56, 10.24,314.798, 10.24,262.912c0-51.886, 25.866-90.798, 77.609-90.798
|
84 |
+
c 51.743,0, 77.619-12.964, 77.619-51.876c0-51.876, 38.799-90.788, 90.542-90.788c 168.161,0, 245.76,90.788, 245.76,181.576
|
85 |
+
C 501.76,366.674, 372.388,418.56, 217.201,418.56L 217.201,418.56z M 184.863,366.674c 17.859,0, 32.338-14.52, 32.338-32.42
|
86 |
+
c0-17.92-14.479-32.43-32.338-32.43s-32.338,14.52-32.338,32.43C 152.525,352.154, 167.004,366.674, 184.863,366.674z M 288.328,366.674
|
87 |
+
c 17.859,0, 32.338-14.52, 32.338-32.42c0-17.92-14.479-32.43-32.338-32.43c-17.848,0-32.328,14.52-32.328,32.43
|
88 |
+
C 256,352.154, 270.479,366.674, 288.328,366.674z M 391.813,314.798c 17.869,0, 32.348-14.51, 32.348-32.43c0-17.92-14.479-32.42-32.348-32.42
|
89 |
+
c-17.859,0-32.328,14.51-32.328,32.42C 359.475,300.278, 373.955,314.798, 391.813,314.798z M 94.321,288.85c 17.859,0, 32.328-14.51, 32.328-32.41
|
90 |
+
c0-17.92-14.479-32.43-32.328-32.43s-32.338,14.52-32.338,32.43C 61.983,274.34, 76.462,288.85, 94.321,288.85z M 256,159.15
|
91 |
+
c 21.432,0, 38.799-17.408, 38.799-38.922c0-21.484-17.367-38.902-38.799-38.902s-38.799,17.418-38.799,38.902
|
92 |
+
C 217.201,141.742, 234.568,159.15, 256,159.15L 256,159.15z" data-tags="art_gallery" />
|
93 |
+
<glyph unicode="" d="M 256,418.56c-12.933,0-18.78-6.308-22.63-13.169L 72.499,102.574L 37.734,102.574 c-15.176,0-27.494-11.725-27.494-26.327
|
94 |
+
c0-14.572, 12.319-26.317, 27.494-26.317l 50.125,0 l 336.302,0 l 50.125,0 c 15.165,0, 27.494,11.745, 27.494,26.317c0,14.612-12.319,26.327-27.494,26.327L 439.501,102.574
|
95 |
+
l-160.86,302.828C 274.78,412.252, 268.943,418.56, 256,418.56L 256,418.56z M 256,286.904l 90.542-184.33L 165.458,102.574 L 256,286.904z" data-tags="campground" />
|
96 |
+
<glyph unicode="" d="M 387.41,328.325c 3.41-53.299-22.446-90.665-22.446-90.665c 3.359,41.052-13.281,97.792-13.281,97.792c-14.213,2.785-36.925-0.205-36.925-0.205
|
97 |
+
c 3.277-44.278-19.241-82.944-35.871-97.178c 8.223,49.101-4.864,86.252-4.864,86.252c-22.497,5.673-54.743,2.202-54.743,2.202
|
98 |
+
c 7.004-52.234-21.811-90.665-21.811-90.665c 4.772,36.413-14.684,83.118-14.684,83.118c-16.517,1.075-42.834-4.301-42.834-4.301
|
99 |
+
c 13.875-24.791, 2.796-79.278, 2.796-79.278c-7.567,44.554-33.004,70.83-33.004,70.83C-36.116,244.111, 2.304,158.536, 73.626,133.048
|
100 |
+
c 67.287-24.003, 284.099-35.83, 381.102,6.257C 551.741,181.412, 483.43,299.735, 387.41,328.325z" data-tags="bakery" />
|
101 |
+
<glyph unicode="" d="M 40.96,469.76l 57.344-462.643c 1.792-14.428, 14.326-28.877, 28.682-28.877l 258.028,0 c 14.346,0, 26.9,14.449, 28.662,28.877L 471.040,469.76
|
102 |
+
L 40.96,469.76 z M 105.472,411.945l 301.046,0 l-13.435-115.661L 118.917,296.284 L 105.472,411.945z" data-tags="bar" />
|
103 |
+
<glyph unicode="" d="M 408.801,192.389c 4.741-2.324, 10.516-2.284, 12.831,0.113c 2.345,2.386, 0.317,6.154-4.485,8.366l-83.743,38.789
|
104 |
+
c-4.803,2.232-12.872,2.796-17.91,1.28l-29.952-8.98c-5.089-1.526-11.725-2.775-14.735-2.775c-3.011,0-5.519,4.239-5.519,9.441l0,91.331
|
105 |
+
c0,5.192, 4.332,9.452, 9.636,9.452l 217.18,0 c 5.325,0, 9.646,4.25, 9.646,9.452L 501.75,379.525 c0,5.202-4.168,10.67-9.236,12.155L 263.803,458.414
|
106 |
+
c-5.069,1.485-13.384,1.485-18.452-0.020L 19.446,391.69C 14.387,390.205, 10.24,384.717, 10.24,379.525l0-30.659 c0-5.202, 4.332-9.452, 9.626-9.452l 214.323,0
|
107 |
+
c 5.304,0, 9.636-4.26, 9.636-9.452l0-91.382 c0-5.192-4.332-9.452-9.636-9.462l-3.891,0 c-5.304-0.010-12.739,2.959-16.548,6.584l-51.671,49.347
|
108 |
+
c-3.82,3.635-11.254,6.595-16.558,6.595l-23.9,0 c-5.284,0-11.663,3.123-14.152,6.922c-2.468,3.809-8.223,6.902-12.78,6.902
|
109 |
+
s-5.96-3.564-3.092-7.946l 0.451-0.686c 2.867-4.372, 2.877-11.571, 0.061-15.964l-25.846-40.182c-2.806-4.413-1.935-10.865, 2.007-14.356
|
110 |
+
l 1.833-1.649c 3.942-3.482, 10.967-4.383, 15.667-1.956l 27.689,14.408c 4.71,2.437, 10.865,0.85, 13.722-3.523l 30.382-46.51
|
111 |
+
c 2.877-4.383, 1.915-10.732-2.13-14.090l-13.896-11.602c-4.045-3.359-6.4-10.25-5.233-15.34l 18.012-78.356
|
112 |
+
c 1.167-5.089, 6.339-8.192, 11.479-6.912l 12.524,3.092c 5.151,1.29, 8.387,6.472, 7.26,11.551l-12.196,52.992
|
113 |
+
c-1.167,5.069, 2.058,10.373, 7.188,11.735l 30.792,8.253c 5.1,1.372, 13.629,2.468, 18.934,2.468l 3.891,0 c 5.304,0, 9.636-4.25, 9.636-9.421l0-93.972
|
114 |
+
c0-5.181-4.332-9.431-9.636-9.431L 19.866,38.072 c-5.294,0-9.626-4.239-9.626-9.462l0-30.638 C 10.24-7.281, 14.572-11.52, 19.866-11.52l 468.255,0
|
115 |
+
c 5.304,0, 9.626,4.239, 9.626,9.472l0,30.638 c0,5.222-4.332,9.462-9.626,9.462L 274.934,38.052 c-5.315,0-9.636,4.25-9.636,9.431l0,93.972
|
116 |
+
c0,5.171, 4.332,9.421, 9.636,9.421l 11.1,0 c 5.304,0, 13.773-1.096, 18.924-2.468l 30.792-8.253c 5.14-1.362, 8.376-6.656, 7.188-11.735
|
117 |
+
l-12.165-52.992c-1.188-5.079, 2.068-10.26, 7.219-11.551l 12.544-3.092c 5.151-1.28, 10.281,1.823, 11.469,6.912l 18.033,78.356
|
118 |
+
c 1.198,5.089-1.075,11.878-4.997,15.176c-3.912,3.256-7.363,10.199-7.67,15.38l-1.567,27.72c-0.317,5.181, 3.338,7.526, 8.090,5.192
|
119 |
+
L 408.801,192.389z" data-tags="amusement_park" />
|
120 |
+
<glyph unicode="" d="M 10.24,414.659c0,0, 23.112-40.96, 23.112-67.133s-22.979-65.075-22.979-65.075c0-6.083, 4.106-8.151, 8.97-4.669l 75.602,54.231
|
121 |
+
c 15.268-11.274, 45.179-26.235, 66.898-38.523l0-43.889 l 48.486,27.607c 15.565-3.533, 31.355-5.775, 48.261-5.775c 101.878,0, 184.586,66.099, 184.586,77.117
|
122 |
+
c0,9.574-62.198,60.754-145.418,73.964L 205.23,469.76l0-51.067 c-43.377-12.022-87.747-36.956-110.275-53.596l-75.878,54.231C 14.223,422.82, 10.24,420.741, 10.24,414.659
|
123 |
+
M 360.97,335.135c-11.991,0-21.729,9.861-21.729,22.047s 9.738,22.036, 21.729,22.036c 12.012,0, 21.688-9.851, 21.688-22.036
|
124 |
+
S 372.982,335.135, 360.97,335.135 M 501.76,143.309c0,6.093-3.983,8.172-8.837,4.669l-75.51-54.252c-22.528,16.64-66.447,41.574-109.885,53.586L 307.528,198.4
|
125 |
+
l-92.897-47.237c-83.251-13.199-145.623-64.399-145.623-73.974c0-11.018, 82.627-77.148, 184.494-77.148c 16.896,0, 33.065,2.294, 48.609,5.837L 350.956-21.76
|
126 |
+
l0,43.878 c 21.688,12.319, 51.251,27.259, 66.447,38.574l 75.407-54.241c 4.905-3.533, 8.899-1.423, 8.899,4.618c0,0-23.020,38.902-23.020,65.096
|
127 |
+
C 478.7,102.359, 501.76,143.309, 501.76,143.309 M 166.042,77.896c-12.001,0-21.699,9.841-21.699,22.047c0,12.165, 9.697,21.996, 21.699,21.996
|
128 |
+
c 11.981,0, 21.709-9.841, 21.709-21.996C 187.75,87.736, 178.033,77.896, 166.042,77.896" data-tags="aquarium" />
|
129 |
+
<glyph unicode="" d="M 492.022,108.186C 497.377,106.455, 501.76,109.64, 501.76,115.272l0,35.779 c0,5.632-3.963,12.595-8.796,15.483L 305.756,278.098
|
130 |
+
C 300.923,280.975, 296.96,287.949, 296.96,293.571L 296.96,418.56 c0,5.632-1.72,14.51-3.83,19.743c0,0-11.172,27.73-30.72,30.822C 260.321,469.494, 258.202,469.76, 256.072,469.76
|
131 |
+
C 256.051,469.76, 256.020,469.76, 256,469.76c-0.010,0-0.020,0-0.031,0c-2.468,0.020-4.905-0.287-7.301-0.737C 247.91,468.89, 247.194,468.705, 246.456,468.531
|
132 |
+
c-1.147-0.297-2.263-0.635-3.359-1.044c-16.261-5.427-24.637-29.030-24.637-29.030C 216.576,433.142, 215.040,424.192, 215.040,418.56l0-124.989
|
133 |
+
c0-5.632-3.963-12.595-8.796-15.483L 19.036,166.533C 14.203,163.645, 10.24,156.682, 10.24,151.050l0-35.779 c0-5.632, 4.383-8.817, 9.738-7.076l 185.324,60.16
|
134 |
+
C 210.657,170.086, 215.040,166.902, 215.040,161.27l0-97.618 c0-5.632-3.686-13.015-8.192-16.394l-24.576-18.452c-4.506-3.379-8.192-10.762-8.192-16.394L 174.080-11.52
|
135 |
+
c0-5.632, 4.434-8.97, 9.841-7.414l 62.208,17.869c 5.407,1.556, 14.275,1.556, 19.681,0l 62.269-17.869C 333.486-20.49, 337.92-17.152, 337.92-11.52l0,23.941
|
136 |
+
c0,5.632-3.686,13.015-8.192,16.394l-24.576,18.452c-4.495,3.379-8.192,10.762-8.192,16.394l0,97.618 c0,5.632, 4.383,8.817, 9.738,7.076L 492.022,108.186z" data-tags="airport" />
|
137 |
+
<glyph unicode="" d="M 355.144,215.798c-14.725,11.612-36.823,20.89-66.294,27.822L 266.24,248.955l0,96.563 c 1.004-0.44, 2.099-0.768, 3.062-1.249
|
138 |
+
C 288.492,334.551, 298.803,316.16, 300.216,295.68l 76.964,0 c-1.403,40.96-16.538,71.25-45.404,92.652C 312.596,402.555, 290.724,411.699, 266.24,416.307L 266.24,469.76 l-71.68,0 l0-51.814
|
139 |
+
c-33.147-4.096-59.433-14.766-78.735-32.113c-25.272-22.712-37.898-51.22-37.898-85.545c0-37.612, 12.913-65.26, 38.738-82.944
|
140 |
+
c 14.459-10.025, 40.52-19.333, 77.896-27.955l0-104.612 c-13.629,3.758-24.31,9.943-31.836,18.883C 155.464,112.343, 150.6,121.6, 148.122,142.080L 71.68,142.080
|
141 |
+
c0-40.96, 14.449-70.349, 43.356-93.143c 20.869-16.445, 47.432-26.44, 79.524-30.771L 194.56-21.76 l 71.68,0 l0,39.25 c 34.13,4.086, 61.686,14.981, 82.555,32.809
|
142 |
+
c 27.064,23.142, 40.602,52.224, 40.602,87.235C 389.396,171.684, 377.979,197.765, 355.144,215.798z M 170.68,275.364c-12.442,6.758-18.657,17.019-18.657,30.72
|
143 |
+
c0,14.909, 6.308,26.593, 18.924,34.908c 6.656,4.393, 14.582,7.588, 23.613,9.697l0-84.214 C 183.45,269.711, 175.432,272.681, 170.68,275.364z
|
144 |
+
M 277.944,86.876c-3.553-1.229-7.516-2.243-11.704-3.133L 266.24,172.8 c 12.339-3.656, 22.077-7.639, 29.164-11.919c 11.182-6.932, 16.783-16.794, 16.783-29.44
|
145 |
+
C 312.177,109.773, 300.759,94.853, 277.944,86.876z" data-tags="bank" />
|
146 |
+
<glyph unicode="" d="M 419.84,439.040L 226.068,439.040 c-15.391,20.48-40.612,38.42-69.14,38.42c-46.868,0-84.859-36.618-84.859-83.487c0-46.879, 37.99-82.299, 84.859-82.299
|
147 |
+
c 35.645,0, 66.14,24.965, 78.725,55.685l 28.211,0 l 20.449,20.46L 304.753,367.36l 12.749,0 l 20.439,20.46L 358.39,367.36l 12.739,0 l 20.449,20.46L 412.027,367.36L 419.84,367.36 l0-2.877
|
148 |
+
l-1.782-0.42l 40.346,39.547L 419.84,439.040z M 129.464,371.354c-13.558,0-24.566,11.008-24.566,24.586s 11.008,24.576, 24.566,24.576
|
149 |
+
c 13.578,0, 24.586-10.998, 24.586-24.576S 143.043,371.354, 129.464,371.354zM 440.32,172.8l-5.663,0 l-62.915,113.92C 369.029,291.645, 362.189,295.68, 356.557,295.68L 165.683,295.68 c-5.632,0-12.472-4.035-15.186-8.96L 87.572,172.8L 81.92,172.8
|
150 |
+
c-11.264,0-20.48-9.216-20.48-20.48l0-102.4 c0-11.264, 9.216-20.48, 20.48-20.48l 20.48,0 l0-30.72 c0-16.896, 13.824-30.72, 30.72-30.72l 10.24,0 c 16.896,0, 30.72,13.824, 30.72,30.72l0,30.72 l 174.080,0 l0-30.72 c0-16.896, 13.824-30.72, 30.72-30.72l 10.24,0 c 16.896,0, 30.72,13.824, 30.72,30.72l0,30.72
|
151 |
+
l 20.48,0 c 11.264,0, 20.48,9.216, 20.48,20.48L 460.8,152.32 C 460.8,163.584, 451.584,172.8, 440.32,172.8z M 117.76,90.88C 103.619,90.88, 92.16,102.339, 92.16,116.48s 11.459,25.6, 25.6,25.6s 25.6-11.459, 25.6-25.6
|
152 |
+
S 131.901,90.88, 117.76,90.88z M 138.24,172.8l 41.503,82.995C 182.262,260.844, 188.928,264.96, 194.56,264.96l 133.12,0 c 5.632,0, 12.298-4.116, 14.817-9.165L 384,172.8L 138.24,172.8 z M 404.48,90.88
|
153 |
+
c-14.141,0-25.6,11.459-25.6,25.6s 11.459,25.6, 25.6,25.6s 25.6-11.459, 25.6-25.6S 418.621,90.88, 404.48,90.88z" data-tags="car_rental" />
|
154 |
+
<glyph unicode="" d="M 489.298,358.318c-7.045,5.55-25.938,10.004-40.079,13.322L 430.080,374.2L 430.080,420.465 c0-0.205, 9.339,0.379, 9.8,0.154
|
155 |
+
C 449.065,415.959, 462.295,408.32, 462.981,398.080l 36.905,0 c-0.686,20.48-16.241,33.403-30.085,43.663C 460.616,448.553, 450.56,452.188, 430.080,454.39L 430.080,480 l-20.48,0 l0-24.822
|
156 |
+
c-20.48-1.966-27.095-7.066-36.342-15.391C 361.165,428.902, 355.779,415.242, 355.779,398.797c0-18.022, 5.151-31.263, 17.531-39.741
|
157 |
+
C 380.232,354.253, 389.12,349.788, 409.6,345.651l0-50.125 c-10.24,1.812-10.26,1.352-13.875,5.642C 392.243,305.326, 391.291,316.16, 390.103,316.16L 353.485,316.16
|
158 |
+
c0-20.48, 5.54-30.29, 19.405-41.216C 382.884,267.069, 389.12,265.677, 409.6,263.608L 409.6,244.48 l 20.48,0 l0,18.801 c 20.48,1.976, 37.878,7.188, 47.882,15.729
|
159 |
+
c 12.984,11.090, 23.603,25.027, 23.603,41.8C 501.555,337.172, 500.244,349.665, 489.298,358.318z M 399.544,386.847
|
160 |
+
c-5.96,3.246-8.253,8.161-8.253,14.725c0,7.148, 1.976,12.739, 8.018,16.732C 402.493,420.403, 399.36,421.929, 409.6,422.943l0-40.346
|
161 |
+
C 399.36,384.154, 401.797,385.567, 399.544,386.847z M 444.017,296.53C 442.296,295.936, 430.080,295.465, 430.080,295.045l0,42.67 c 20.48-1.761, 18.903-3.656, 22.303-5.714
|
162 |
+
c 5.335-3.318, 8.018-8.049, 8.018-14.1C 460.401,307.497, 454.922,300.36, 444.017,296.53zM 394.445,172.8l-5.663,0 l-62.915,113.92C 323.154,291.645, 316.314,295.68, 310.682,295.68L 119.798,295.68 c-5.632,0-12.472-4.035-15.186-8.96L 41.697,172.8L 36.045,172.8
|
163 |
+
C 24.771,172.8, 10.24,163.584, 10.24,152.32l0-102.4 c0-11.264, 14.531-20.48, 25.805-20.48L 51.2,29.44 l0-30.72 c0-16.896, 19.149-30.72, 36.045-30.72l 10.24,0 c 16.896,0, 25.395,13.824, 25.395,30.72l0,30.72 l 174.080,0 l0-30.72 c0-16.896, 19.139-30.72, 36.045-30.72
|
164 |
+
l 10.24,0 c 16.896,0, 25.395,13.824, 25.395,30.72l0,30.72 l 25.805,0 c 11.264,0, 15.155,9.216, 15.155,20.48L 409.6,152.32 C 409.6,163.584, 405.699,172.8, 394.445,172.8z M 71.885,90.88c-14.141,0-25.6,11.459-25.6,25.6
|
165 |
+
S 57.743,142.080, 71.885,142.080s 25.6-11.459, 25.6-25.6S 86.016,90.88, 71.885,90.88z M 92.365,172.8l 41.503,82.995C 136.376,260.844, 143.053,264.96, 148.685,264.96l 133.12,0
|
166 |
+
c 5.632,0, 12.298-4.116, 14.817-9.165L 338.125,172.8L 92.365,172.8 z M 358.605,90.88c-14.141,0-25.6,11.459-25.6,25.6s 11.459,25.6, 25.6,25.6s 25.6-11.459, 25.6-25.6
|
167 |
+
S 372.736,90.88, 358.605,90.88z" data-tags="car_dealer" />
|
168 |
+
<glyph unicode="" d="M 378.88,469.76c-5.632,0-10.24-4.608-10.24-10.24l0-143.36 c0-5.632-4.608-10.24-10.24-10.24L 153.6,305.92 c-5.632,0-10.24,4.608-10.24,10.24L 143.36,459.52 c0,5.632-4.608,10.24-10.24,10.24L 40.96,469.76 C 35.328,469.76, 30.72,465.152, 30.72,459.52l0-471.040
|
169 |
+
c0-5.632, 4.608-10.24, 10.24-10.24l 92.16,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 143.36,152.32 c0,5.632, 4.608,10.24, 10.24,10.24l 204.8,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-163.84 c0-5.632, 4.608-10.24, 10.24-10.24l 92.16,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 481.28,459.52
|
170 |
+
c0,5.632-4.608,10.24-10.24,10.24L 378.88,469.76 z" data-tags="hospital" />
|
171 |
+
<glyph unicode="" d="M 432.466,220.826c 3.553,4.372, 10.834,9.4, 16.169,11.162l 43.971,17.951C 497.644,252.467, 501.76,259.144, 501.76,264.765L 501.76,390.195
|
172 |
+
c0,5.632-4.311,11.878-9.574,13.875c0,0-91.986,34.97-153.61,34.97c-57.344,0-136.622-30.239-136.622-30.239
|
173 |
+
c-5.263-2.007-14.141-4.209-19.732-4.905L 20.408,386.509C 14.817,385.823, 10.24,380.652, 10.24,375.020l0-85.135 c0-5.632, 4.526-11.090, 10.066-12.124l 161.741-26.102
|
174 |
+
c 5.55-0.922, 14.387-3.379, 19.62-5.458l 110.766-28.334c 5.56-0.84, 11.633-5.878, 13.466-11.213l 65.116-188.017
|
175 |
+
c 1.843-5.335, 7.721-8.212, 13.056-6.42l 68.844,23.153c 5.335,1.792, 8.202,7.608, 6.359,12.943l-45.199,130.386
|
176 |
+
c-1.843,5.335-3.4,9.994-3.471,10.373c0,0,0,0-0.082,0.389C 425.103,211.722, 432.466,220.826, 432.466,220.826z M 353.884,288.502
|
177 |
+
c-25.702,0-46.459,20.48-46.459,45.722c0,25.252, 20.756,45.722, 46.459,45.722c 25.62,0, 46.438-20.48, 46.438-45.722
|
178 |
+
C 400.323,308.982, 379.505,288.502, 353.884,288.502z" data-tags="hair_care" />
|
179 |
+
<glyph unicode="" d="M 183.931,20.49c 3.83-4.127, 3.604-10.66-0.512-14.5l-22.241-20.797c-4.116-3.84-10.619-3.615-14.449,0.522L 17.203,125.307
|
180 |
+
c-3.83,4.127-3.594,10.65, 0.522,14.5l 22.272,20.767c 4.116,3.85, 10.619,3.615, 14.449-0.522L 183.931,20.49zM 349.204,283.146c 3.83-4.127, 3.594-10.66-0.522-14.5L 208.701,137.882c-4.116-3.84-10.619-3.615-14.449,0.522l-33.413,36.055
|
181 |
+
c-3.83,4.127-3.594,10.66, 0.522,14.5l 139.95,130.765c 4.106,3.84, 10.609,3.615, 14.438-0.522L 349.204,283.146zM 231.557,65.004c 3.83-4.127, 3.594-10.65-0.522-14.5l-22.272-20.787c-4.116-3.85-10.619-3.615-14.449,0.522L 64.86,169.83
|
182 |
+
c-3.83,4.127-3.604,10.66, 0.512,14.5l 22.231,20.777c 4.116,3.84, 10.619,3.615, 14.449-0.522L 231.557,65.004zM 447.242,278.139c 3.83-4.127, 3.594-10.66-0.532-14.5l-22.262-20.787c-4.116-3.84-10.619-3.615-14.459,0.512L 280.515,382.925
|
183 |
+
c-3.84,4.127-3.604,10.65, 0.512,14.5l 22.323,20.838c 4.106,3.84, 10.609,3.615, 14.438-0.522L 447.242,278.139zM 494.797,322.58c 3.83-4.127, 3.594-10.66-0.522-14.51l-22.221-20.777c-4.106-3.85-10.609-3.615-14.438,0.512L 328.161,427.428
|
184 |
+
c-3.83,4.127-3.604,10.66, 0.512,14.51l 22.241,20.818c 4.106,3.85, 10.598,3.625, 14.428-0.512L 494.797,322.58z" data-tags="gym" />
|
185 |
+
<glyph unicode="" d="M 409.6,49.92A40.96,40.96 180 1 1 491.52,49.920000000000016A40.96,40.96 180 1 1 409.6,49.920000000000016zM 112.64,49.92A40.96,40.96 180 1 1 194.56,49.920000000000016A40.96,40.96 180 1 1 112.64,49.920000000000016zM 481.28,142.080L 161.495,142.080 l 6.83,11.080c 2.929,4.751, 3.789,10.496, 2.386,15.903l-6.666,25.661l 296.786,15.421C 472.084,210.719, 481.28,220.416, 481.28,231.68
|
186 |
+
L 481.28,367.36 c0,11.264-9.216,20.48-20.48,20.48L 113.859,387.84 l-4.004,15.391C 107.51,412.262, 99.359,418.56, 90.030,418.56L 20.48,418.56 C 9.175,418.56,0,409.385,0,398.080s 9.175-20.48, 20.48-20.48l 53.719,0 l 54.682-210.381
|
187 |
+
l-21.504-34.867c-3.891-6.318-4.065-14.254-0.44-20.726C 110.541,105.144, 117.381,101.12, 124.805,101.12L 481.28,101.12 c 11.305,0, 20.48,9.175, 20.48,20.48S 492.585,142.080, 481.28,142.080z" data-tags="grocery_or_supermarket" />
|
188 |
+
<glyph unicode="" d="M 363.356,326.052c-2.54,0-4.956,1.71-4.956,4.209l0,63.283 C 358.4,396.042, 357.028,398.080, 354.478,398.080L 157.512,398.080 C 154.962,398.080, 153.6,396.042, 153.6,393.544
|
189 |
+
l0-63.283 C 153.6,327.762, 150.845,326.4, 148.285,326.4L 14.838,326.4 C 12.319,326.4, 10.24,323.666, 10.24,321.198l0-70.349 C 10.24,248.371, 12.319,244.48, 14.838,244.48l 214.897,0
|
190 |
+
C 232.284,244.48, 235.52,248.371, 235.52,250.849l0,15.002 C 235.52,268.349, 236.462,275.2, 239.002,275.2l 34.007,0 C 275.548,275.2, 276.48,268.349, 276.48,265.851l0-15.002
|
191 |
+
C 276.48,248.371, 279.716,244.48, 282.245,244.48l 214.886,0 C 499.692,244.48, 501.76,248.371, 501.76,250.849l0,70.349 C 501.76,323.676, 499.692,326.4, 497.142,326.4L 363.704,326.4 L 363.356,326.052z
|
192 |
+
M 185.272,326.4C 182.733,326.4, 184.32,327.762, 184.32,330.25l0,35.973 C 184.32,368.732, 182.733,367.36, 185.272,367.36l 141.455,0 C 329.267,367.36, 327.68,368.732, 327.68,366.223l0-35.973
|
193 |
+
C 327.68,327.762, 329.267,326.4, 326.728,326.4L 185.272,326.4 zM 277.043,175.749c0-2.478-1.495-2.949-4.035-2.949L 239.002,172.8 C 236.462,172.8, 235.52,171.704, 235.52,174.182l0,50.565
|
194 |
+
C 235.52,227.226, 232.284,234.24, 229.745,234.24L 14.838,234.24 C 12.319,234.24, 10.24,227.226, 10.24,224.748l0-149.801 C 10.24,72.458, 12.319,70.4, 14.838,70.4l 482.304,0
|
195 |
+
C 499.692,70.4, 501.76,72.458, 501.76,74.936L 501.76,224.748 C 501.76,227.226, 499.692,234.24, 497.142,234.24L 282.245,234.24 C 279.716,234.24, 276.48,227.226, 276.48,224.748l0-50.565 L 277.043,175.749z
|
196 |
+
" data-tags="general_contractor" />
|
197 |
+
<glyph unicode="" d="M 402.964,305.92L 106.496,305.92 C 53.555,305.92, 10.24,268.646, 10.24,218.88c0-49.766, 43.315-87.040, 96.256-87.040l 296.468,0 c 52.92,0, 96.236,37.284, 96.236,87.040
|
198 |
+
C 499.2,268.646, 455.885,305.92, 402.964,305.92z M 402.995,152.32L 256,152.32 L 256,285.44 l 146.995,0 c 39.035,0, 71.004-29.85, 71.004-66.56S 442.040,152.32, 402.995,152.32z" data-tags="pharmacy" />
|
199 |
+
<glyph unicode="" d="M 317.44,223.98c-33.884,0-61.399-27.494-61.399-61.42c0-33.956, 27.525-61.44, 61.399-61.44c 33.894,0, 61.42,27.484, 61.42,61.44
|
200 |
+
C 378.86,196.475, 351.334,223.98, 317.44,223.98zM 440.33,346.911L 389.734,448.973C 385.649,461.076, 374.19,469.76, 360.663,469.76l-84.388,0 c-13.763,0-25.242-8.929-29.225-21.248L 194.632,346.88L 71.67,346.88
|
201 |
+
C 37.796,346.88, 10.24,319.355, 10.24,285.43L 10.24-21.76 l 491.52,0 L 501.76,285.43 C 501.76,319.355, 474.225,346.911, 440.33,346.911z M 102.4,223.98c-16.998,0-30.73,13.742-30.73,30.7
|
202 |
+
c0,17.019, 13.742,30.751, 30.73,30.751s 30.71-13.732, 30.71-30.751C 133.11,237.722, 119.398,223.98, 102.4,223.98z M 317.44,39.619
|
203 |
+
c-67.84,0-122.89,55.060-122.89,122.941c0,67.85, 55.040,122.87, 122.89,122.87c 67.85,0, 122.89-55.009, 122.89-122.87
|
204 |
+
C 440.33,94.679, 385.29,39.619, 317.44,39.619z" data-tags="point_of_interest" />
|
205 |
+
<glyph unicode="" d="M 126.29,254.72L 153.6,254.72 l0-163.84 l 40.96,0 L 194.56,234.24 l 40.96,0 l0-143.36 l 40.96,0 L 276.48,234.24 l 40.96,0 l0-143.36 l 40.96,0 L 358.4,254.72 l 27.3,0 C 393.236,254.72, 399.36,262.257, 399.36,269.046c0,4.106-2.263,8.735-5.683,10.967
|
206 |
+
l 0.020,0.532l-0.215,0.379c-0.123,0.072, 1.475,0.266, 1.372,0.338L 266.24,347.505l0,19.374 c 20.48-10.844, 40.458,7.834, 71.68-3.4L 337.92,406.272
|
207 |
+
c-31.242,11.223-51.2-7.444-71.68,3.4L 266.24,412.416 C 266.24,415.805, 259.779,418.56, 256,418.56s-10.24-2.755-10.24-6.144l0-64.911 l-128.604-66.109
|
208 |
+
c-0.123-0.061, 2.898-0.133, 2.775-0.215L 122.88,281.068l0-0.020 c-10.24-2.232-7.946-7.885-7.946-11.991C 114.924,262.257, 118.753,254.72, 126.29,254.72zM 143.36,80.64L 112.64,49.92L 399.36,49.92L 368.64,80.64 zM 368.64,244.48l0-153.6 l 9.062,0 l 4.004-5.663l 27.3-25.59L 418.662,49.92L 501.76,49.92 L 501.76,244.48 L 368.64,244.48 z M 430.080,121.6l-30.72,0 l0,30.72 l 30.72,0 L 430.080,121.6 z M 430.080,183.040l-30.72,0 l0,30.72 l 30.72,0 L 430.080,183.040 z M 471.040,121.6l-20.48,0 l0,30.72 l 20.48,0 L 471.040,121.6 z
|
209 |
+
M 471.040,183.040l-20.48,0 l0,30.72 l 20.48,0 L 471.040,183.040 zM 134.287,90.88L 143.36,90.88 L 143.36,244.48 L 10.24,244.48 l0-194.56 l 83.087,0 l 9.646,8.684l 27.31,26.624L 134.287,90.88z M 61.44,121.6L 40.96,121.6 l0,30.72 l 20.48,0 L 61.44,121.6 L 61.44,121.6z M 61.44,183.040L 40.96,183.040 l0,30.72 l 20.48,0 L 61.44,183.040 L 61.44,183.040z M 112.64,121.6L 81.92,121.6 l0,30.72 l 30.72,0
|
210 |
+
L 112.64,121.6 z M 112.64,183.040L 81.92,183.040 l0,30.72 l 30.72,0 L 112.64,183.040 z" data-tags="political" />
|
211 |
+
<glyph unicode="" d="M 296.95,433.736C 222.218,433.736, 163.84,374.559, 163.84,301.548l0-211.005 L 163.84-11.52 l 51.2,0 L 215.040,90.88 l 163.84,0 l0-102.4 l 51.2,0 l0,102.062 L 430.080,301.548 C 430.080,374.559, 371.712,433.736, 296.95,433.736z
|
212 |
+
M 40.96,459.52l 75.407-122.88l 7.864,0 C 129.004,387.84, 163.84,429.865, 215.040,448.84L 215.040,459.52 L 40.96,459.52 z" data-tags="post_box" />
|
213 |
+
<glyph unicode="" d="M 501.76,305.92c0,5.632-4.608,10.24-10.24,10.24L 358.4,316.16 c-5.632,0-10.24,4.608-10.24,10.24L 348.16,459.52 c0,5.632-4.608,10.24-10.24,10.24L 174.080,469.76 c-5.632,0-10.24-4.608-10.24-10.24l0-133.12 c0-5.632-4.608-10.24-10.24-10.24L 20.48,316.16
|
214 |
+
c-5.632,0-10.24-4.608-10.24-10.24l0-163.84 c0-5.632, 4.608-10.24, 10.24-10.24l 133.12,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-133.12 c0-5.632, 4.608-10.24, 10.24-10.24l 163.84,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 348.16,121.6 c0,5.632, 4.608,10.24, 10.24,10.24l 133.12,0
|
215 |
+
c 5.632,0, 10.24,4.608, 10.24,10.24L 501.76,305.92 z" data-tags="health" />
|
216 |
+
<glyph unicode="" d="M 30.116,398.080c-30.116,0-15.053-7.977,0-20.214L 256,205.947l 225.884,171.387c 15.073,12.237, 30.116,20.746,0,20.746
|
217 |
+
L 240.937,398.080 L 30.116,398.080 z M0,357.673l0-253.215 c0-14.899, 15.237-34.058, 27.29-34.058l 457.421,0 c 12.063,0, 27.29,19.159, 27.29,34.058l0,253.215 l-256-195.328
|
218 |
+
L0,357.673z" data-tags="post_office" />
|
219 |
+
<glyph unicode="" d="M 112.64,60.16c0-5.632, 4.608-10.24, 10.24-10.24l 348.16,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 481.28,357.12 c0,5.632-4.608,10.24-10.24,10.24L 122.88,367.36 c-5.632,0-10.24-4.608-10.24-10.24L 112.64,60.16 z M 289.751,319.939
|
220 |
+
c 4.28,3.666, 11.254,3.625, 15.493-0.072l 113.787-99.369C 423.27,216.791, 422.134,213.76, 416.502,213.76L 409.6,213.76 c-5.632,0-10.24-4.608-10.24-10.24l0-112.64
|
221 |
+
c0-5.632-4.608-10.24-10.24-10.24l-51.2,0 c-5.632,0-10.24,4.608-10.24,10.24l0,81.92 c0,5.632-4.608,10.24-10.24,10.24l-40.96,0 c-5.632,0-10.24-4.608-10.24-10.24l0-81.92 c0-5.632-4.608-10.24-10.24-10.24l-51.2,0 c-5.632,0-10.24,4.608-10.24,10.24
|
222 |
+
L 194.56,203.52 c0,5.632-4.608,10.24-10.24,10.24l-8.417,0 c-5.632,0-6.738,2.99-2.458,6.656L 289.751,319.939zM 102.4,418.56C 96.768,418.56, 92.16,423.168, 92.16,428.8L 92.16,459.52 c0,5.632-4.608,10.24-10.24,10.24L 40.96,469.76 C 35.328,469.76, 30.72,465.152, 30.72,459.52l0-471.040 c0-5.632, 4.608-10.24, 10.24-10.24l 40.96,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 92.16,377.6
|
223 |
+
c0,5.632, 4.608,10.24, 10.24,10.24l 368.64,0 c 5.632,0, 10.24,4.608, 10.24,10.24L 481.28,408.32 c0,5.632-4.608,10.24-10.24,10.24L 102.4,418.56 z" data-tags="real_estate_agency copy" />
|
224 |
+
<glyph unicode="" d="M 281.692,381.911c 6.195-5.673, 12.063-11.028, 16.466-17.756l 2.447-3.738l 4.045,1.925c 11.244,5.376, 18.913,13.978, 26.327,22.292
|
225 |
+
c 5.591,6.267, 10.875,12.196, 17.5,16.65l 4.116,2.775l-2.652,4.209c-11.54,18.309-26.593,33.546-44.728,45.302l-3.799,2.468l-2.908-3.482
|
226 |
+
c-11.407-13.67-24.033-26.45-37.519-37.98l-2.959-2.54l 1.659-3.533C 265.011,397.169, 273.49,389.417, 281.692,381.911zM 347.546,304.425c 38.492,0, 70.011,15.729, 88.75,44.298l 2.232,3.4l-2.796,2.949c-3.256,3.42-6.369,6.994-9.482,10.568
|
227 |
+
c-9.288,10.66-18.903,21.678-32.44,28.989l-4.721,2.55L 386.765,392.325c-15.831-32.973-46.479-39.895-69.396-39.895
|
228 |
+
c-40.172,0-88.453,22.415-109.916,51.046l-16.896,22.538l 7.895-27.044C 213.125,348.6, 282.808,304.425, 347.546,304.425zM 214.712,216.023c 15.995,30.433, 16.66,66.068, 1.69,98.376c-14.766,31.887-42.097,54.364-73.093,60.16
|
229 |
+
c-6.564,1.229-13.036,1.833-19.241,1.833c-37.642,0-62.28-21.975-86.098-43.213c-8.673-7.731-16.865-15.084-25.61-21.32l-6.113-4.465
|
230 |
+
l 6.287-4.311c 2.007-1.3, 7.055-8.97, 11.121-14.807C 36.557,269.742, 47.309,254.72, 58.737,254.72c0,0, 0.010,0, 0.010,0
|
231 |
+
c 4.024,0, 7.782,4.772, 20.879,19.497c 5.519,6.195, 11.766,14.070, 15.114,16.722c 14.971,11.889, 35.492,28.17, 57.907,28.17
|
232 |
+
c 3.021,0, 6.062-0.297, 9.021-0.891c 10.373-2.079, 16.64-6.881, 19.149-14.694c 5.14-16.005-6.666-40.54-16.794-51.374
|
233 |
+
c-5.11-5.478-10.701-9.421-16.63-13.599c-8.499-5.99-17.285-12.196-24.545-23.101l-2.355-3.543l 3.062-2.97
|
234 |
+
c 4.424-4.28, 8.817-8.581, 13.21-12.882c 11.366-11.131, 23.122-22.641, 35.185-33.516l 4.045-3.645l 3.4,4.26
|
235 |
+
c 7.649,9.595, 15.718,19.804, 23.634,30.239c 2.13-3.164, 4.393-6.4, 6.717-9.718c 17.459-24.965, 37.253-53.258, 24.34-90.235
|
236 |
+
c-9.615-27.556-42.086-45.496-78.664-42.865c-43.254,3.031-81.756,39.956-117.729,112.886c-2.243,4.557-4.086,9.667-5.868,14.612
|
237 |
+
c-4.168,11.571-8.489,23.532-18.545,30.966l-10.086,7.455l 1.987-12.38c 10.557-65.864, 41.503-129.423, 82.79-170.025
|
238 |
+
c 24.975-24.596, 65.956-40.489, 104.397-40.489c 44.411,0, 91.996,23.081, 92.324,87.859c 0.287,60.672-37.181,100.076-67.297,131.738L 214.712,216.023zM 494.971,271.657c-11.93,22.19-56.781,38.369-79.278,33.444c-34.079-7.434-57.969-26.716-79.053-43.735
|
239 |
+
c-21.576-17.428-40.223-32.471-65.106-32.471c-7.475,0-15.124,1.331-23.378,4.055l-13.107,4.332l 7.107-11.827
|
240 |
+
c 16.323-27.167, 35.379-40.376, 58.255-40.376c 18.586,0.010, 37.612,8.919, 56.463,20.46l 4.229-12.534c 9.574-28.355, 51.251-70.41, 89.19-70.41
|
241 |
+
c 0.758,0, 1.516,0.020, 2.273,0.061c 16.558,0.737, 30.382,10.066, 39.987,27.003C 512.236,184.34, 510.013,243.722, 494.971,271.657z M 382.935,222.648
|
242 |
+
c 27.976,19.016, 57.364,38.543, 81.439,34.294c 10.476-18.207, 6.195-33.884, 0.625-43.96c-10.629-19.18-33.915-32.584-56.648-32.584
|
243 |
+
c-10.711,0-26.081,3.052-38.492,17.572l-8.735,10.209C 368.425,212.797, 375.706,217.743, 382.935,222.648z" data-tags="hindu_temple" />
|
244 |
+
<glyph unicode="" d="M 225.28,460.216L 225.28,346.88 l-20.48,0 L 204.8,459.52 c0,5.652-4.588,10.24-10.24,10.24s-10.24-4.588-10.24-10.24l0-112.64 l-20.48,0 L 163.84,459.889 c0,13.179-20.48,12.728-20.48,0.338L 143.36,346.88 l-20.48,0 L 122.88,459.418
|
245 |
+
c0,13.957-20.48,13.445-20.48,0.553l0-148.193 c0-21.371, 20.48-35.461, 40.96-35.461L 143.36,8.96 c0-40.96, 61.44-40.96, 61.44,0L 204.8,276.306 c 20.48,0, 40.96,17.019, 40.96,33.044L 245.76,459.889
|
246 |
+
C 245.76,472.945, 225.28,472.443, 225.28,460.216zM 317.44,428.8l0-256 l 20.48,0 l0-163.84 c0-40.96, 71.68-40.96, 71.68,0L 409.6,428.8 C 409.6,480, 317.44,480, 317.44,428.8z" data-tags="restaurant" />
|
247 |
+
<glyph unicode="" d="M 337.029,152.32l-60.508,166.267c-0.225,0.522-0.348,1.106-0.348,1.71c0,2.427, 2.038,4.393, 4.577,4.393
|
248 |
+
c 2.161,0, 3.973-1.444, 4.454-3.369L 326.339,213.76c 2.734-6.154, 13.978-10.24, 21.371-10.24c 9.882,0, 10.906,19.405, 10.691,20.48l-41.134,106.056
|
249 |
+
C 313.692,353.823, 289.69,377.6, 262.298,377.6L 208.691,377.6 c-27.392,0-53.176-23.777-56.75-47.544L 112.65,224c-0.891-2.038,0-20.48, 10.68-20.48
|
250 |
+
c 8.305,0, 19.354,2.898, 21.371,10.24l 39.68,108.022c 0.635,1.7, 2.335,2.908, 4.311,2.908c 2.529,0, 4.567-1.966, 4.567-4.383
|
251 |
+
c0-0.553-0.092-1.085-0.287-1.567L 134.021,152.32c-0.113-0.492,0-9.738,0-10.24c0-3.543, 8.55-10.24, 12.268-10.24L 184.32,131.84 l0-134.093
|
252 |
+
C 184.32-12.902, 193.7-21.76, 204.8-21.76c 11.1,0, 20.48,8.868, 20.48,19.507L 225.28,131.932 c0,2.898, 20.48,2.806, 20.48-0.092l0-133.12 c0-10.65, 9.39-20.48, 20.48-20.48c 11.121,0, 20.48,9.841, 20.48,20.48L 286.72,131.84
|
253 |
+
l 39.619,0 c 3.707,0, 10.691,6.697, 10.691,10.24C 337.029,142.899, 337.326,151.613, 337.029,152.32zM 192,432.64A42.24,42.24 180 1 1 276.48,432.64A42.24,42.24 180 1 1 192,432.64z" data-tags="female" />
|
254 |
+
<glyph unicode="" d="M 184.32-1.28c0-12.626, 7.864-20.48, 20.48-20.48c 12.646,0, 20.48,7.854, 20.48,20.48L 225.28,193.28 l 20.48,0 l0-194.56 c0-12.605, 7.854-20.48, 20.48-20.48c 12.626,0, 20.48,7.854, 20.48,20.48L 286.72,326.4 l 10.24,0 l0-120.975
|
255 |
+
c0-24.525, 30.781-24.525, 30.72,0L 327.68,329.871 C 327.68,356.966, 308.163,377.6, 276.48,377.6l-81.92,0 c-28.877,0-51.2-17.603-51.2-46.971L 143.36,203.52 c0-20.48, 30.72-20.48, 30.72,0L 174.080,326.4 l 10.24,0 L 184.32-1.28 zM 192,432.64A42.24,42.24 180 1 1 276.48,432.64A42.24,42.24 180 1 1 192,432.64z" data-tags="male" />
|
256 |
+
<glyph unicode="" d="M 470.303,183.562l-1.116,3.011c-3.502,9.441-7.834,21.176-18.934,27.822c-7.731,4.628-16.722,6.236-24.648,7.649
|
257 |
+
c-4.076,0.727-7.936,1.434-11.244,2.437c-0.973,0.287-1.935,0.655-2.908,1.024c-0.154,0.051-0.307,0.092-0.461,0.154
|
258 |
+
c-31.826,25.559-96.266,26.255-136.407,62.403C 217.057,339.835, 170.885,391.895, 118.958,469.76L 54.077,417.843c-4.506-3.604-13.107-6.492-13.107-19.466
|
259 |
+
c0-6.482, 6.595-7.475, 14.367-5.069l 36.598,11.561L 194.56,262.083c0-25.958,0-53.688,0-77.885c0-18.022-0.297-34.427, 14.991-43.745L 171.008-21.76l 25.958,0
|
260 |
+
l 24.392,77.025L 245.76,93.358l0-38.943 L 245.76-21.76 l 30.72,0 L 276.48,106.322 c0,0-0.358,25.958, 25.6,25.958s 25.6-25.958, 25.6-25.958l0-90.839 L 327.68-21.76 l 20.48,0 L 348.16,80.64 l 56.484-102.4l 25.958,0
|
261 |
+
C 417.618,19.2, 399.36,15.483, 399.36,54.415l0,25.958 c0,27.218, 30.72,51.917, 30.72,77.875l0,25.938 c0,6.164-0.799,11.622-2.202,16.558
|
262 |
+
c 4.526-0.922, 8.684-2.038, 11.848-3.942c 4.905-2.939, 7.619-10.271, 10.24-17.357l 1.188-3.195c 2.017-5.274, 7.926-7.926, 13.21-5.919l 0.010,0.010
|
263 |
+
C 469.668,172.37, 472.32,178.278, 470.303,183.562z" data-tags="zoo" />
|
264 |
+
<glyph unicode="" d="M 189.235,286.72c 23.859,4.055, 41.554,25.784, 44.247,51.743c 2.734,26.399, 8.899,132.485-30.925,125.737
|
265 |
+
C 99.256,446.679, 106.506,272.691, 189.235,286.72zM 325.151,286.72c 82.708-14.029, 89.958,159.959-13.343,177.49c-39.813,6.748-33.659-99.338-30.935-125.737
|
266 |
+
C 283.576,312.504, 301.292,290.775, 325.151,286.72zM 146.801,204.749c0,13.804-4.925,26.317-12.861,35.42c-13.056,17.060-54.559,51.558-64.748,42.721C 47.923,264.397, 48.609,218.88, 61.42,185.805
|
267 |
+
c 6.584-18.391, 22.487-31.324, 41.073-31.324C 126.956,154.481, 146.801,176.988, 146.801,204.749zM 445.164,282.89c-10.168,8.837-51.671-25.661-64.727-42.721c-7.936-9.103-12.872-21.617-12.872-35.42
|
268 |
+
c0-27.761, 19.866-50.268, 44.308-50.268c 18.596,0, 34.509,12.933, 41.093,31.324C 465.746,218.88, 466.452,264.397, 445.164,282.89zM 361.851,126.454c-37.642,18.77-36.475,54.917-45.036,87.9c-6.81,26.307-30.925,45.763-59.628,45.763
|
269 |
+
c-28.088,0-51.784-18.647-59.177-44.155c-9.165-31.56-3.645-68.301-44.677-89.262c-33.331-10.865-46.828-26.716-46.828-64.205
|
270 |
+
c0-30.454, 26.143-63.058, 59.884-67.113c 37.642-5.673, 67.011,1.741, 90.798,15.299c 23.788-13.558, 53.135-20.961, 90.839-15.299
|
271 |
+
c 33.72,4.055, 59.873,36.536, 59.873,67.113C 407.89,100.803, 395.254,115.077, 361.851,126.454z M 317.44,80.64l-39.025,0 l 0.051-40.96l-42.557,0 l 0.061,40.96L 194.56,80.64 l0,40.96
|
272 |
+
l 41.421,0 l-0.061,40.96l 42.557,0 l-0.051-40.96L 317.44,121.6 L 317.44,80.64 z" data-tags="veterinary_care" />
|
273 |
+
<glyph unicode="" d="M 219.484,401.265L 194.56,367.36l-58.204,0 c 7.178-20.48, 30.679-39.793, 63.498-33.382c 9.728,0.655, 42.547,5.868, 56.146,2.662
|
274 |
+
c 18.104-4.342, 10.557-4.362, 43.018-30.413L 460.8,172.8c 9.912-8.755, 22.589-5.171, 31.365,4.721C 500.941,187.433, 501.432,205.005, 491.52,213.76L 286.72,377.6
|
275 |
+
c-12.82,10.291-16.056,24.545-20.48,40.96c-8.602,28.211-40.233,50.842-71.281,50.842C 169.943,469.402, 143.022,447.764, 133.12,428.8l 61.44,0 L 219.484,401.265zM 359.977,152.32L 359.977,152.32l-63.304,109.875C 294.175,266.752, 287.857,275.2, 282.665,275.2L 106.455,275.2 c-5.192,0-11.51-8.448-14.019-13.005L 30.72,152.32L 29.143,152.32
|
276 |
+
C 18.749,152.32, 10.24,148.541, 10.24,138.138l0-94.515 C 10.24,33.219, 18.749,29.44, 29.143,29.44L 51.2,29.44 l0-33.075 C 51.2-19.241, 60.805-32, 76.401-32l 9.452,0
|
277 |
+
C 101.458-32, 112.64-19.241, 112.64-3.635L 112.64,29.44 l 163.84,0 l0-33.075 c0-15.596, 11.182-28.365, 26.778-28.365l 9.452,0 C 328.315-32, 337.92-19.241, 337.92-3.635L 337.92,29.44 l 22.057,0
|
278 |
+
C 370.371,29.44, 378.88,33.219, 378.88,43.622l0,94.515 C 378.88,148.541, 370.371,152.32, 359.977,152.32z M 62.228,81.428c-13.056,0-23.634,10.578-23.634,23.634
|
279 |
+
s 10.578,23.634, 23.634,23.634c 13.046,0, 23.634-10.578, 23.634-23.634S 75.284,81.428, 62.228,81.428z M 81.132,152.32l 38.308,80.159
|
280 |
+
C 121.764,237.128, 127.928,244.48, 133.12,244.48l 122.88,0 c 5.192,0, 11.346-7.352, 13.681-12.001L 307.988,152.32L 81.132,152.32 z M 326.892,81.428
|
281 |
+
c-13.046,0-23.634,10.578-23.634,23.634s 10.578,23.634, 23.634,23.634s 23.634-10.578, 23.634-23.634S 339.937,81.428, 326.892,81.428zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76z" data-tags="car_repair" />
|
282 |
+
<glyph unicode="" d="M 255.99,199.619c-55.357,0-102.39-16.097-133.11-41.329L 122.88,111.36 l 266.24,0 l0,46.93 C 358.4,183.521, 311.357,199.619, 255.99,199.619zM 500.429,223.703L 255.345,336.64L 10.363,223.703L 51.2,205.015l0-28.744 c-10.24-2.12-10.271-7.485-10.271-13.865c0-3.768, 1.249-8.182, 3.625-10.824
|
283 |
+
L 30.546,121.6l 49.971,0 l-13.885,30.003c 2.335,2.642, 4.25,6.533, 4.25,10.301C 70.881,168.274, 61.44,174.162, 61.44,176.282l0,23.931 l 51.2-22.999L 112.64,179.251
|
284 |
+
c 30.72,26.716, 84.695,43.674, 143.34,43.674C 314.644,222.925, 368.64,205.967, 399.36,179.251l0-2.038 L 500.429,223.703z" data-tags="university" />
|
285 |
+
<glyph unicode="" d="M 471.040,336.64L 348.16,336.64 l0,40.714 C 348.16,406.548, 329.308,439.040, 300.145,439.040l-98.222,0 C 172.728,439.040, 153.6,406.548, 153.6,377.354L 153.6,336.64 L 40.96,336.64 c-11.264,0-20.48-9.216-20.48-20.48l0-296.96 c0-11.264, 9.216-20.48, 20.48-20.48
|
286 |
+
l 430.080,0 c 11.264,0, 20.48,9.216, 20.48,20.48L 491.52,316.16 C 491.52,327.424, 482.304,336.64, 471.040,336.64z M 307.2,29.44L 194.56,29.44 l0,10.926 c0,0.236, 6.277,0.543, 9.277,0.901s 5.632,0.963, 7.793,1.802
|
287 |
+
c 3.84,1.444, 8.141,3.512, 9.708,6.205S 225.28,55.552, 225.28,59.986l0,104.755 c0,4.198-2.54,7.895-4.465,11.069s-5.11,5.734-7.987,7.649
|
288 |
+
c-2.161,1.444-3.676,2.816-8.059,4.137S 194.56,189.768, 194.56,190.126l0,13.138 l 83.712,4.68L 276.48,205.251l0-142.92 c0-4.198, 3.236-7.772, 5.038-10.711
|
289 |
+
s 5.55-5.13, 8.909-6.574c 2.396-1.075, 4.966-2.038, 7.854-2.877S 307.2,40.735, 307.2,40.366L 307.2,29.44 z M 211.139,272.753
|
290 |
+
c0,9.124, 3.512,16.916, 10.527,23.398s 15.391,9.718, 25.108,9.718s 18.063-3.236, 25.016-9.718s 10.445-14.285, 10.445-23.398s-3.512-16.886-10.527-23.306
|
291 |
+
s-15.329-9.626-24.934-9.626c-9.718,0-18.094,3.205-25.108,9.626S 211.139,263.629, 211.139,272.753z M 317.44,336.64L 184.32,336.64 l0,40.714 C 184.32,388.28, 195.379,408.32, 206.305,408.32
|
292 |
+
l 82.452,0 C 299.663,408.32, 317.44,388.28, 317.44,377.354L 317.44,336.64 z" data-tags="travel_agency" />
|
293 |
+
<glyph unicode="" d="M 212.132,234.24L 32.348,234.24 c-5.243,0-9.554,3.215-9.554,8.346c0,0.85, 0.154,1.178, 0.328,1.946l 9.574,61.501
|
294 |
+
C 33.495,310.374, 37.396,305.92, 42.086,305.92l 160.328,0 c 4.649,0, 8.581,4.219, 9.37-0.123l 9.585-65.526c 0.154-0.788, 0.338,1.27, 0.338,0.389
|
295 |
+
C 221.706,235.571, 217.364,234.24, 212.132,234.24z M 204.933,156.733c-10.107,0-18.34,7.997-18.34,17.92c0,9.871, 8.223,17.818, 18.34,17.818
|
296 |
+
c 10.056,0, 18.278-7.946, 18.278-17.818C 223.212,164.731, 214.999,156.733, 204.933,156.733z M 39.281,156.733c-10.025,0-18.248,7.997-18.248,17.92
|
297 |
+
c0,9.871, 8.212,17.818, 18.248,17.818c 10.168,0, 18.371-7.946, 18.371-17.818C 57.651,164.731, 49.449,156.733, 39.281,156.733z M 61.44,357.12l 112.64,0 l0-30.72 L 61.44,326.4
|
298 |
+
C 51.2,326.4, 51.2,357.12, 61.44,357.12z M 232.428,329.441c-3.267,15.79-14.459,22.139-30.095,28.498c-15.606,6.339-52.562,13.926-79.749,13.926
|
299 |
+
c-27.3,0-64.051-7.598-79.657-13.926c-15.616-6.359-26.982-12.708-30.249-28.498L0,241.521L0,121.6 l 18.278,0 l0,0c0-51.2, 34.417-51.2, 34.417,0l0,0l 137.636,0 l0,0
|
300 |
+
c0-51.2, 34.406-51.2, 34.406,0l0,0L 245.76,121.6 L 245.76,241.521 L 232.428,329.441zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76zM 458.332,120.637c0,0.256-0.276,0.666-0.819,1.485c0,0.236, 0.154,0.41, 0.41,0.563c 0.246,0.154, 0.41,0.276, 0.41,0.563
|
301 |
+
c 7.66,3.164, 14.633,7.066, 20.869,11.684c 6.216,4.669, 9.503,11.469, 11.663,20.47C 491.080,156.447, 491.52,158.884, 491.52,162.601L 491.52,348.713
|
302 |
+
c0,4.495-0.44,9.155-3.082,13.885c-2.662,4.823-5.519,9.134-9.523,12.964c-3.963,3.789-9.697,7.014-14.633,9.554
|
303 |
+
C 460.012,387.308, 450.56,388.475, 450.56,388.751L 450.56,387.84 l 1.382,0 L 318.74,387.84 L 317.44,387.84 L 317.44,388.577 c-10.24-0.471-7.741-1.536-11.284-3.256c-4.915-2.396-10.025-5.448-14.121-9.165
|
304 |
+
c-4.096-3.686-8.202-7.875-10.854-12.493C 278.528,358.963, 276.48,354.427, 276.48,349.88l0-188.887 c0-3.174, 1.26-6.492, 2.796-9.943
|
305 |
+
c 1.618-3.451, 3.809-6.676, 6.185-9.697c 2.376-3.113, 5.1-5.888, 7.895-8.387c 2.775-2.509, 5.55-4.577, 8.212-6.164
|
306 |
+
c 1.28-0.543, 3.656-1.362, 7.004-2.417c 3.256-1.055, 4.813-1.638, 4.567-2.161L 258.642,39.68l 31.805,0 l 39.793,61.44l 109.793,0 l 39.752-61.44L 512,39.68 L 458.332,120.637z
|
307 |
+
M 366.152,377.6l 36.465,0 c 8.018,0, 14.592-2.212, 14.592-10.24c0-8.018-6.574-10.24-14.592-10.24l-36.465,0 c-8.028,0-14.592,2.222-14.592,10.24
|
308 |
+
C 351.56,375.388, 358.124,377.6, 366.152,377.6z M 460.8,283.894C 460.8,267.776, 447.744,254.72, 431.626,254.72L 326.134,254.72 C 310.016,254.72, 296.96,267.776, 296.96,283.894l0,23.583
|
309 |
+
C 296.96,323.584, 310.016,336.64, 326.134,336.64l 105.503,0 C 447.744,336.64, 460.8,323.584, 460.8,307.466L 460.8,283.894 z M 339.21,154.225c-4.106-4.239-9.247-6.349-15.309-6.349
|
310 |
+
c-6.113,0-11.090,2.109-14.961,6.349c-3.83,4.229-5.755,9.441-5.755,15.544c0,5.56, 1.997,10.394, 5.99,14.49
|
311 |
+
c 3.963,4.116, 8.878,6.195, 14.725,6.195c 6.062,0, 11.203-1.966, 15.309-5.755c 4.106-3.891, 6.164-8.94, 6.164-15.36
|
312 |
+
C 345.375,163.502, 343.316,158.454, 339.21,154.225z M 430.295,154.225c-4.106,4.229-6.185,9.441-6.185,15.544c0,6.113, 2.181,11.049, 6.574,14.94
|
313 |
+
c 4.393,3.779, 9.492,5.755, 15.34,5.755c 6.052,0, 11.049-2.079, 14.899-6.195c 3.83-4.096, 5.775-8.929, 5.775-14.49
|
314 |
+
c0-6.103-2.007-11.305-5.98-15.544c-4.004-4.239-9.021-6.349-15.145-6.349C 439.491,147.866, 434.391,149.975, 430.295,154.225z" data-tags="transit_station" />
|
315 |
+
<glyph unicode="" d="M 356.157,411.761L 284.979,411.761 c-12.861-0.041-12.38-19.21,0-19.098l 71.178,0 l0-9.8 L 284.979,382.863 c-12.79,0.113-12.319-19.046,0-19.098l 71.178,0 l0-9.544
|
316 |
+
l0-0.471 L 284.979,353.751 c-12.79,0-12.319-19.149,0-19.098l 71.178,0 l0-9.544 L 284.979,325.11 c-12.524-0.092-12.319-19.261,0-19.323l 71.178,0 l0-9.564 L 284.979,296.223
|
317 |
+
c-12.524,0.041-12.575-19.098,0-19.098l 71.178,0 l0-9.544 L 284.979,267.581 c-12.524-0.041-12.575-19.2,0-19.108l 71.178,0 l0-9.779 L 284.979,238.694
|
318 |
+
c-12.524,0.113-12.575-19.026,0-19.098l 71.178,0 l0-9.523 L 284.979,210.074 c-12.524,0.010-12.319-19.169,0-19.108l 71.178,0 l0-185.948
|
319 |
+
c 0.041-28.334, 43.080-27.822, 43.203,0L 399.36,440.166 c-0.123,12.943-10.752,29.307-28.242,29.358L 284.979,469.524 c-12.861-0.010-12.38-19.18,0-19.098l 71.178-0.236
|
320 |
+
l0-9.523 L 284.979,440.668 c-12.841,0.061-12.36-19.098,0-19.108l 71.178,0 L 356.157,411.761 L 356.157,411.761zM 280.084,82.094C 280.044,115.169, 245.76,150.743, 204.8,127.703L 204.8,254.208 L 178.309,462.848C 177.756,468.367, 173.076,469.668, 169.933,469.76
|
321 |
+
c-3.246-0.092-9.748-1.393-10.455-6.912L 133.12,254.208l0-126.505 c-40.96,23.040-74.138-12.759-74.148-45.353c 0.010-29, 22.333-52.818, 52.541-52.746
|
322 |
+
c 30.433-0.072, 52.326,26.624, 52.326,52.746L 163.84,213.76 l 10.24,0 l0-131.41 c0-29.245, 22.651-50.893, 47.821-52.265c-0.42-16.036, 4.813-38.912, 14.664-47.985
|
323 |
+
c 11.551-10.65, 25.303,2.97, 19.661,14.060c-5.448,10.322-10.793,16.435-6.451,38.973C 267.919,43.53, 280.044,61.204, 280.084,82.094z
|
324 |
+
M 112.681,56.074c-14.295,0.092-25.846,11.684-25.866,26.020c 0.020,14.326, 11.571,25.969, 25.866,26.051c 14.193-0.082, 25.754-11.725, 25.856-26.051
|
325 |
+
C 138.435,67.748, 126.874,56.156, 112.681,56.074z M 200.448,82.094c 0.092,14.326, 11.633,25.969, 25.866,26.051
|
326 |
+
c 14.254-0.082, 25.815-11.725, 25.856-26.051c-0.041-14.336-11.592-25.928-25.856-26.020C 212.081,56.156, 200.53,67.748, 200.448,82.094z" data-tags="beauty_salon" />
|
327 |
+
<glyph unicode="" d="M 253.112-21.76C 134.943-21.76, 38.799,74.383, 38.799,192.563c0,75.633, 38.666,144.21, 103.444,183.429c 13.885,8.407, 31.928,3.963, 40.325-9.902
|
328 |
+
c 8.397-13.865, 3.953-31.918-9.902-40.325c-47.053-28.488-75.141-78.295-75.141-133.202c0-85.801, 69.796-155.597, 155.597-155.597
|
329 |
+
c 85.801,0, 155.587,69.796, 155.587,155.597c0,55.808-30.147,107.674-78.715,135.322c-14.1,8.028-19.005,25.948-10.988,40.038
|
330 |
+
c 8.028,14.080, 25.948,18.995, 40.038,10.977c 66.867-38.072, 108.39-109.486, 108.39-186.348C 467.425,74.383, 371.302-21.76, 253.112-21.76zM 250.88,195.492c-16.21,0-35.84,13.148-35.84,29.358L 215.040,436.234 c0,16.21, 19.63,29.358, 35.84,29.358c 16.21,0, 35.84-13.148, 35.84-29.358l0-211.384
|
331 |
+
C 286.72,208.64, 267.090,195.492, 250.88,195.492z" data-tags="electronics_store" />
|
332 |
+
<glyph unicode="" d="M 365.158,177.521c 17.009,28.047, 26.952,60.908, 26.952,96.102c0,102.697-83.098,185.856-185.815,185.897
|
333 |
+
C 103.67,459.489, 20.48,376.32, 20.48,273.644c0-102.584, 83.2-185.743, 185.876-185.743c 35.226,0, 68.045,9.953, 96.092,26.962L 428.841-11.52L 491.52,51.19
|
334 |
+
L 365.158,177.521z M 206.336,158.669c-63.508,0.154-114.852,51.476-114.964,114.852C 91.494,337.029, 142.848,388.362, 206.336,388.506
|
335 |
+
c 63.478-0.164, 114.842-51.487, 114.975-114.985C 321.178,210.217, 269.793,158.822, 206.336,158.669z" data-tags="search" />
|
336 |
+
<glyph unicode="" d="M 365.158,177.521c 17.009,28.047, 26.952,60.908, 26.952,96.102c0,102.697-83.098,185.856-185.815,185.897
|
337 |
+
C 103.67,459.489, 20.48,376.32, 20.48,273.644c0-102.584, 83.2-185.743, 185.876-185.743c 35.226,0, 68.045,9.953, 96.092,26.962L 428.841-11.52L 491.52,51.19
|
338 |
+
L 365.158,177.521z M 206.336,158.669c-63.508,0.154-114.852,51.476-114.964,114.852C 91.494,337.029, 142.848,388.362, 206.336,388.506
|
339 |
+
c 63.478-0.164, 114.842-51.487, 114.975-114.985C 321.178,210.217, 269.793,158.822, 206.336,158.669zM 122.88,295.68L 286.72,295.68L 286.72,254.72L 122.88,254.72z" data-tags="zoom-out-alt" />
|
340 |
+
<glyph unicode="" d="M 261.192,248.863c-15.483,0-28.068-12.585-28.068-28.058c0-15.473, 12.585-28.058, 28.068-28.058c 15.473,0, 28.068,12.585, 28.068,28.058
|
341 |
+
C 289.26,236.278, 276.664,248.863, 261.192,248.863zM 428.278,438.292C 428.278,450.017, 418.775,459.52, 407.060,459.52L 103.148,459.52 C 91.423,459.52, 81.92,450.017, 81.92,438.292l0-428.605 C 81.92-2.028, 91.423-11.52, 103.148-11.52l 303.913,0
|
342 |
+
c 11.725,0, 21.217,9.492, 21.217,21.207L 428.278,438.292 z M 261.192,86.63c-73.984,0-134.175,60.18-134.175,134.175c0,73.974, 60.191,134.164, 134.175,134.164
|
343 |
+
c 73.974,0, 134.154-60.191, 134.154-134.164C 395.336,146.811, 335.155,86.63, 261.192,86.63z" data-tags="movie_rental" />
|
344 |
+
<glyph unicode="" d="M 423.987,255.867l-25.18,105.124c-4.413,18.34-22.999,29.86-41.441,25.334c-16.22-3.963-24.105-15.196-27.3-23.101
|
345 |
+
c-3.779-9.329-20.644-51.599-24.586-60.334c-1.382-3.031-4.301-4.628-4.895-4.895c-3.348-1.485-36.864-15.626-36.864-15.626l0-0.061
|
346 |
+
c-6.615-3.103-11.203-9.718-11.203-17.439c0-10.68, 8.745-19.343, 19.528-19.343c 2.324,0, 4.536,0.481, 6.615,1.219
|
347 |
+
c0-0.010-0.020-0.041,0-0.072c 0.215,0.092, 44.493,18.493, 44.493,18.493c 6.103,2.847, 9.083,6.451, 12.114,11.704
|
348 |
+
c 1.27,2.212, 5.13,11.469, 8.274,19.067l 26.849-112.282C 370.381,121.498, 370.36,9.677, 370.36,9.677c-0.051-17.285, 11.889-31.375, 29.338-31.437
|
349 |
+
c 17.469-0.061, 30.095,13.896, 30.208,31.212c0,0, 0.174,195.656, 0.174,205.343C 430.060,224.451, 426.22,247.398, 423.987,255.867zM 287.171,430.643A39.475,39.117 180 1 1 366.121,430.64300000000003A39.475,39.117 180 1 1 287.171,430.64300000000003zM 175.421,100.076l0-43.827 c 5.683,1.044, 10.281,3.645, 13.855,7.813c 3.543,4.168, 5.315,9.042, 5.315,14.653
|
350 |
+
c0,5.018-1.485,9.349-4.454,12.995C 187.126,95.314, 182.221,98.099, 175.421,100.076zM 148.347,168.141c-2.662-3.584-4.004-7.557-4.004-11.899c0-3.994, 1.219-7.66, 3.625-11.059c 2.437-3.42, 6.113-6.185, 10.998-8.274
|
351 |
+
l0,38.881 l0,0C 154.511,174.295, 150.958,171.735, 148.347,168.141zM 252.488,220.201l 0.041,0 l-61.184,122.747l-0.010-0.113c-4.495,9.298-14.039,15.718-25.139,15.718l-56.392,0
|
352 |
+
C 94.413,358.564, 81.92,346.194, 81.92,330.936l0-215.081 c0-0.031,0-0.061,0-0.092L 81.92-21.76 l 173.732,0 L 255.652,206.356 C 255.631,211.313, 254.495,216.003, 252.488,220.201z
|
353 |
+
M 209.971,48.486c-8.294-9.288-19.804-14.981-34.519-17.070l0-21.023 l-16.456,0 l0,20.46 c-13.087,1.567-23.685,6.41-31.877,14.49
|
354 |
+
c-8.151,8.1-13.363,19.517-15.626,34.273l 29.594,3.164c 1.198-6.001, 3.461-11.172, 6.81-15.534c 3.308-4.342, 7.014-7.485, 11.090-9.431
|
355 |
+
l0,47.084 c-14.807,4.198-25.692,10.557-32.584,19.026c-6.932,8.499-10.394,18.811-10.394,30.956c0,12.288, 3.901,22.61, 11.756,30.976
|
356 |
+
c 7.823,8.346, 18.227,13.169, 31.232,14.428l0,11.131 l 16.456,0 l0-11.131 c 12.001-1.413, 21.576-5.478, 28.682-12.175c 7.086-6.687, 11.622-15.688, 13.599-26.921
|
357 |
+
l-28.682-3.707c-1.751,8.827-6.277,14.838-13.599,17.981l0-43.93 c 18.135-4.884, 30.495-11.192, 37.079-18.934
|
358 |
+
c 6.564-7.762, 9.861-17.705, 9.861-29.839C 222.392,69.202, 218.255,57.784, 209.971,48.486z" data-tags="atm" />
|
359 |
+
<glyph unicode="" d="M 475.914,268.421l-0.133,1.034c-0.287,1.444-0.819,2.898-1.3,3.707L 409.6,377.6c0,0-8.274,10.24-10.24,10.24c-30.72,0-245.76,0-276.48,0L 39.731,276.705
|
360 |
+
l-0.983-1.024L 38.615,275.2c-0.655-1.034-1.219-2.202-1.72-3.584L 36.557,270.623c-0.492-1.7-0.717-3.174-0.655-5.386
|
361 |
+
c 0.072-1.434, 0.328-2.857, 0.788-4.342l 0.389-1.116c 0.522-1.321, 1.167-2.529, 1.925-3.604l 201.021-254.638l 0.41-0.584
|
362 |
+
c 1.034-1.331, 2.294-2.509, 3.83-3.584l 1.167-0.727c 1.147-0.717, 2.345-1.29, 4.086-1.925l 1.137-0.379C 252.621-6.164, 254.331-6.4, 256-6.4
|
363 |
+
c 1.69,0, 3.338,0.225, 5.56,0.799l 1.362,0.481c 1.331,0.471, 2.529,1.055, 3.973,1.946l 0.901,0.563c 1.546,1.096, 2.785,2.284, 3.471,3.215
|
364 |
+
l 201.277,254.904c 0.901,1.167, 1.659,2.478, 2.56,4.803c 0.492,1.29, 0.707,2.54, 0.819,3.287c 0.092,0.522, 0.154,1.055, 0.154,1.321
|
365 |
+
l 0.082,1.044C 476.16,266.988, 476.047,268.012, 475.914,268.421z M 367.985,275.2l 28.652,51.845L 425.267,275.2L 367.985,275.2 z M 350.802,244.48l 67.973,0 L 305.48,100.966
|
366 |
+
L 350.802,244.48z M 333.988,290.744L 292.608,346.88l 72.397,0 L 333.988,290.744z M 201.441,244.48l 109.148,0 L 256,71.66L 201.441,244.48z M 212.265,275.2L 256,334.551L 299.735,275.2
|
367 |
+
L 212.265,275.2 z M 181.463,295.393L 162.499,346.88l 56.904,0 L 181.463,295.393z M 206.541,100.956L 93.235,244.48l 67.983,0 L 206.541,100.956z M 129.69,326.687L 148.664,275.2L 91.75,275.2
|
368 |
+
L 129.69,326.687z" data-tags="jewelry_store" />
|
369 |
+
<glyph unicode="" d="M-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76zM 440.32,418.56L 440.32,459.52L 71.68,459.52L 71.68,418.56L0,418.56L0-21.76L 40.96-21.76L 40.96,377.6L 71.68,377.6L 71.68,336.64L 440.32,336.64L 440.32,377.6L 471.040,377.6L 471.040-21.76L 512-21.76L 512,418.56 zM 430.612,183.040L 430.612,183.040l-66.816,113.92C 361.144,301.885, 354.478,305.92, 348.989,305.92L 163,305.92 c-5.489,0-12.155-4.035-14.797-8.96L 81.398,183.040
|
370 |
+
l0,0C 70.42,183.040, 61.44,173.824, 61.44,162.56l0-102.4 c0-11.264, 8.98-20.48, 19.958-20.48L 102.4,39.68 l0-30.72 c0-16.896, 12.421-30.72, 28.877-30.72l 9.984,0 C 157.716-21.76, 174.080-7.936, 174.080,8.96l0,30.72 l 163.84,0 l0-30.72
|
371 |
+
c0-16.896, 16.353-30.72, 32.819-30.72l 9.984,0 c 16.456,0, 28.877,13.824, 28.877,30.72l0,30.72 l 21.012,0 C 441.58,39.68, 450.56,48.896, 450.56,60.16L 450.56,162.56 C 450.56,173.824, 441.58,183.040, 430.612,183.040z
|
372 |
+
M 116.316,101.12c-13.773,0-24.945,11.459-24.945,25.6s 11.172,25.6, 24.945,25.6c 13.783,0, 24.945-11.459, 24.945-25.6S 130.099,101.12, 116.316,101.12z M 131.277,183.040
|
373 |
+
l 45.425,83.005c 2.458,5.038, 8.96,9.155, 14.438,9.155l 129.71,0 c 5.489,0, 11.991-4.116, 14.438-9.155L 380.723,183.040L 131.277,183.040 z M 395.684,101.12
|
374 |
+
c-13.773,0-24.945,11.459-24.945,25.6s 11.172,25.6, 24.945,25.6c 13.783,0, 24.955-11.459, 24.955-25.6S 409.457,101.12, 395.684,101.12z" data-tags="car_wash" />
|
375 |
+
<glyph unicode="" d="M 192,432.64A42.24,42.24 180 1 1 276.48,432.64A42.24,42.24 180 1 1 192,432.64zM 225.28,377.6l-30.72,0 c-28.877,0-51.2-17.603-51.2-46.971L 143.36,203.52 c0-20.48, 30.72-20.48, 30.72,0L 174.080,326.4 l 10.24,0 l0-327.68 c0-12.626, 7.864-20.48, 20.48-20.48c 12.646,0, 20.48,7.854, 20.48,20.48L 225.28,193.28 L 225.28,377.6 zM 358.4,224l-41.134,106.056C 313.692,353.823, 289.69,377.6, 262.298,377.6L 235.52,377.6 l0-243.538 c 5.12-0.020, 10.24-0.768, 10.24-2.222l0-133.12 c0-10.65, 9.39-20.48, 20.48-20.48
|
376 |
+
c 11.121,0, 20.48,9.841, 20.48,20.48L 286.72,131.84 l 39.619,0 c 3.707,0, 10.691,6.697, 10.691,10.24c0,0.819, 0.297,9.533,0,10.24l-60.508,166.267
|
377 |
+
c-0.225,0.522-0.348,1.106-0.348,1.71c0,2.427, 2.038,4.393, 4.577,4.393c 2.161,0, 3.973-1.444, 4.454-3.369L 326.339,213.76
|
378 |
+
c 2.734-6.154, 13.978-10.24, 21.371-10.24C 357.591,203.52, 358.615,222.925, 358.4,224z" data-tags="unisex" />
|
379 |
+
<glyph unicode="" d="M 286.556,165.335c-23.050,0-41.759-18.944-41.759-42.342c0-23.388, 18.719-42.363, 41.759-42.363c 23.060,0, 41.748,18.975, 41.748,42.363
|
380 |
+
C 328.315,146.401, 309.617,165.335, 286.556,165.335z M 286.556,100.577c-12.237,0-22.118,10.025-22.118,22.415c0,12.38, 9.882,22.456, 22.118,22.456
|
381 |
+
c 12.196,0, 22.129-10.076, 22.129-22.456C 308.695,110.602, 298.762,100.577, 286.556,100.577zM 459.336,352.061C 444.559,357.161, 349.204,367.36, 286.433,367.36c-62.761,0-163.84-10.332-178.801-14.756C 106.086,352.154, 61.44,339.845, 61.44,291.441L 61.44,162.253
|
382 |
+
C 61.44,153.477, 64.727,142.080, 69.581,142.080L 10.24,142.080 l0-20.48 l 224.922,0 c0,30.72, 23.163,52.449, 51.692,52.449c 28.57,0, 51.722-21.729, 51.722-52.449l 125.245,0
|
383 |
+
C 484.803,121.6, 501.76,141.015, 501.76,162.253L 501.76,298.312 C 501.76,319.56, 485.786,342.917, 459.336,352.061z M 205.169,250.9c0-4.035-2.877-6.42-6.83-6.42
|
384 |
+
l-67.41,0 C 126.945,244.48, 122.88,245.996, 122.88,250.030l0,47.739 C 122.88,301.783, 126.945,305.92, 130.918,305.92l 67.41,0 C 202.281,305.92, 204.8,301.783, 204.8,297.769l0-47.739
|
385 |
+
L 205.169,250.9z M 450.56,250.030C 450.56,245.996, 447.386,244.48, 443.392,244.48L 294.236,244.48 C 290.253,244.48, 286.72,245.996, 286.72,250.030l0,47.739
|
386 |
+
C 286.72,301.783, 290.253,305.92, 294.236,305.92L 443.392,305.92 c 4.004,0, 7.168-4.137, 7.168-8.151L 450.56,250.030 z" data-tags="rv_park" />
|
387 |
+
<glyph unicode="" d="M 307.2,398.080l0-337.92 L 61.44,60.16 L 61.44,398.080 L 307.2,398.080 M 348.16,439.040L 20.48,439.040 l0-430.080 l 327.68,0 L 348.16,439.040 L 348.16,439.040zM 92.16,357.12L 276.48,357.12L 276.48,316.16L 92.16,316.16zM 92.16,285.44L 276.48,285.44L 276.48,244.48L 92.16,244.48zM 92.16,213.76L 276.48,213.76L 276.48,172.8L 92.16,172.8zM 92.16,142.080L 276.48,142.080L 276.48,101.12L 92.16,101.12zM 409.6,357.12L 491.52,357.12L 491.52,70.4L 409.6,70.4zM 450.621,469.76C 428.155,469.76, 409.6,451.686, 409.6,429.445L 409.6,387.84 l 81.92,0 L 491.52,429.445 C 491.52,451.686, 472.996,469.76, 450.621,469.76zM 408.965,39.68L 450.345-25.723L 491.52,39.68 z" data-tags="school" />
|
388 |
+
<glyph unicode="" d="M 484.966,328.96c 0.819-2.97-0.215-6.246-1.946-8.806l-55.194-82.125c-2.048-3.174-6.349-4.915-9.943-4.915c-1.024,0-3.891,0.205-5.007,0.512
|
389 |
+
L 368.64,244.48l0-194.56 c0-5.939-4.198-10.24-10.24-10.24L 143.36,39.68 c-6.042,0-10.24,4.301-10.24,10.24L 133.12,244.48 l-39.731-10.957c-4.608-1.434-8.602,0.41-11.162,4.403l-54.784,81.92
|
390 |
+
c-1.741,2.662-2.253,5.632-1.434,8.602c 0.717,3.072, 2.867,5.12, 5.632,6.554L 143.36,387.84c 10.24,0, 51.2,0, 51.2,0c 6.042,0, 10.24-4.198, 10.24-10.24c0-21.094, 29.594-36.045, 50.688-36.045
|
391 |
+
c 21.094,0, 51.712,14.848, 51.712,36.045c0,5.939, 4.198,10.24, 10.24,10.24c0,0, 40.96,0, 51.2,0l 110.592-51.814C 482.099,334.592, 484.147,332.032, 484.966,328.96z" data-tags="clothing_store" />
|
392 |
+
<glyph unicode="" d="M 61.44,367.36l0-345.498 C 61.44,6.81, 74.107-11.52, 89.702-11.52l 340.152,0 C 445.409-11.52, 460.8,6.81, 460.8,21.862L 460.8,367.36 L 61.44,367.36 z M 260.71,93.174
|
393 |
+
c-60.006,0-108.657,47.043-108.657,105.093c0,58.051, 48.65,105.093, 108.657,105.093s 108.657-47.043, 108.657-105.093
|
394 |
+
C 369.367,140.206, 320.717,93.174, 260.71,93.174zM 429.855,469.76L 89.702,469.76 C 74.107,469.76, 61.44,459.182, 61.44,444.109L 61.44,387.84 l 399.36,0 L 460.8,444.109 C 460.8,459.182, 445.409,469.76, 429.855,469.76z M 194.56,408.32L 81.92,408.32 L 81.92,449.28 l 112.64,0 L 194.56,408.32 z M 390.615,411.187
|
395 |
+
c-12.79,0-23.122,10.025-23.122,22.405c0,12.36, 10.332,22.385, 23.122,22.385s 23.153-10.025, 23.153-22.385C 413.757,421.222, 403.405,411.187, 390.615,411.187z
|
396 |
+
" data-tags="laundry" />
|
397 |
+
<glyph unicode="" d="M 501.76,372.593c 6.185,4.68, 10.24,12.012, 10.24,20.367C 512,407.101, 500.541,418.56, 486.4,418.56S 460.8,407.101, 460.8,392.96c0-8.346, 4.055-15.688, 10.24-20.367L 471.040,213.76 l-92.16,0 l0-81.92 l 102.4,0
|
398 |
+
l0,3.041 c 15.002,6.083, 25.6,20.726, 25.6,37.919c0,7.076-1.956,13.64-5.12,19.446L 501.76,372.593 zM 61.44,305.92c 10.455,0, 17.715-1.761, 30.72,0c0,0-41.124-27.3-41.124-61.44L 102.4,244.48 c0,0, 0.061,56.873, 30.72,92.16l-10.24,10.24c0,0-20.48-10.24-40.96,0c0,0-20.48,0-40.96-10.24l0,10.24 L 30.72,346.88 l0-61.44 l 10.24,0
|
399 |
+
C 40.96,285.44, 40.96,305.92, 61.44,305.92zM 204.8,305.92c 10.455,0, 17.715-1.761, 30.72,0c0,0-41.124-27.3-41.124-61.44L 245.76,244.48 c0,0, 0.061,56.873, 30.72,92.16l-10.24,10.24c0,0-20.48-10.24-40.96,0c0,0-20.48,0-40.96-10.24l0,10.24 l-10.24,0 l0-61.44 l 10.24,0
|
400 |
+
C 184.32,285.44, 184.32,305.92, 204.8,305.92zM 389.12,408.32L 389.12,428.8 L 265.011,428.8 c-4.669,20.5-22.927,35.84-44.851,35.84S 179.978,449.3, 175.309,428.8L 51.2,428.8 l0-20.48 L0,408.32 l0-419.84 l 450.56,0 L 450.56,408.32 L 389.12,408.32 z M 163.84,367.36l 122.88,0 l0-143.36 L 163.84,224 L 163.84,367.36 z M 20.48,367.36l 122.88,0 l0-143.36 L 20.48,224
|
401 |
+
L 20.48,367.36 z M 389.12,39.68L 51.2,39.68 l0,71.68 l 337.92,0 L 389.12,39.68 z M 430.080,224L 307.2,224 L 307.2,367.36 l 122.88,0 L 430.080,224 zM 348.16,305.92c 10.455,0, 17.715-1.761, 30.72,0c0,0-41.124-27.3-41.124-61.44L 389.12,244.48 c0,0, 0.061,56.873, 30.72,92.16l-10.24,10.24c0,0-20.48-10.24-40.96,0c0,0-20.48,0-40.96-10.24l0,10.24 l-10.24,0 l0-61.44 l 10.24,0
|
402 |
+
C 327.68,285.44, 327.68,305.92, 348.16,305.92z" data-tags="casino" />
|
403 |
+
<glyph unicode="" d="M 443.187,337.705L 255.57,469.76l-42.24-29.778l 0.635-0.492L 48.742,322.038l0,0l0,0L 10.24,295.342l0-62.495 l 39.311,26.491L 49.551-21.76 l 3.973,0 l 42.854,0 l 6.359,0
|
404 |
+
l 303.237,0 l 13.23,0 l 39.465,0 l 3.789,0 L 462.459,261.847 L 501.76,232.847l0,62.495 L 443.187,337.705z M 403.456,38.124L 101.99,38.124 L 101.99,297.134 L 256.174,408.125L 403.456,302.131L 403.456,38.124 zM 186.726,267.356c 10.977,0, 20.050,9.042, 20.050,20.347c0,11.284-9.073,20.419-20.050,20.419c-11.11,0-20.101-9.144-20.101-20.419
|
405 |
+
C 166.625,276.398, 175.616,267.356, 186.726,267.356zM 159.355,70.676c0-6.277, 4.485-12.196, 10.68-12.196c 6.226,0, 10.588,4.495, 10.588,10.803l0,95.242 l 13.117,0 l0-95.242
|
406 |
+
c0-6.298, 3.84-11.5, 10.035-11.5c 6.226,0, 10.742,6.615, 10.742,12.902l-0.502,167.035l 12.472,0 l0-66.529 c0-6.656, 13.107-6.656, 13.107,0l0,65.044
|
407 |
+
c0,13.548-10.547,26.778-26.235,26.778l-53.217,0.123c-14.223,0-25.395-11.858-25.395-26.573l0-65.372 c0-6.656, 13.097-6.656, 13.097,0l0,66.529 l 11.653,0
|
408 |
+
L 159.355,70.676zM 329.134,267.356c 11.018,0, 20.101,9.042, 20.101,20.347c0,11.284-9.083,20.419-20.101,20.419c-11.049,0-20.142-9.144-20.142-20.419
|
409 |
+
C 308.992,276.398, 318.075,267.356, 329.134,267.356zM 301.814,70.676c0-6.277, 5.263-12.196, 11.459-12.196c 6.277,0, 11.54,4.495, 11.54,10.803l0,95.242 l 6.564,0 l0-95.242
|
410 |
+
c0-6.298, 6.195-11.5, 12.431-11.5c 6.236,0, 11.94,6.615, 11.94,12.902l 0.696,167.035l 7.711,0 l0-66.529 c0-6.656, 19.651-6.656, 19.651,0l0,65.044
|
411 |
+
c0,13.548-11.438,26.778-27.105,26.778l-52.746,0.123c-14.254,0-24.996-11.858-24.996-26.573l0-65.372 c0-6.656, 13.107-6.656, 13.107,0l0,66.529 l 9.841,0
|
412 |
+
L 301.814,70.676z" data-tags="place_of_worship" />
|
413 |
+
<glyph unicode="" d="M 476.109,367.36L 36.055,367.36 c-14.152,0-25.733-12.872-25.733-25.6c0-12.728, 11.581-25.59, 25.733-25.59l 6.216,0 l0-51.2 l 428.247,0 l0,51.2 l 5.591,0
|
414 |
+
c 14.162,0, 25.733,12.861, 25.733,25.59C 501.842,354.488, 490.271,367.36, 476.109,367.36z M 256.082,290.355c-7.107,0-12.861,5.929-12.861,13.23
|
415 |
+
s 5.755,13.23, 12.861,13.23c 7.117,0, 12.861-5.929, 12.861-13.23S 263.199,290.355, 256.082,290.355zM 42.271,162.58l 428.247,0 L 470.518,244.48 L 42.271,244.48 L 42.271,162.58 z M 256.082,217.61c 7.117,0, 12.861-5.919, 12.861-13.22c0-7.311-5.745-13.23-12.861-13.23
|
416 |
+
c-7.107,0-12.861,5.919-12.861,13.23C 243.21,211.692, 248.975,217.61, 256.082,217.61zM 42.271,91.955l0-26.47 l0-33.065 c0-7.27, 0.911-13.23, 7.987-13.23l 51.446,0 c 7.076,0, 10.281,5.96, 10.281,13.23l0,37.99 l 288.819,0 l0-37.99
|
417 |
+
c0-7.27, 2.58-13.23, 9.646-13.23l 51.456,0 c 7.055,0, 8.602,5.96, 8.602,13.23l0,33.065 l0,26.47 L 470.508,142.080 L 42.271,142.080 L 42.271,91.955 z M 256.082,118.405
|
418 |
+
c 7.117,0, 12.861-5.929, 12.861-13.22c0-7.322-5.745-13.22-12.861-13.22c-7.107,0-12.861,5.898-12.861,13.22
|
419 |
+
C 243.21,112.466, 248.975,118.405, 256.082,118.405z" data-tags="furniture_store" />
|
420 |
+
<glyph unicode="" d="M 365.158,177.521c 17.009,28.047, 26.952,60.908, 26.952,96.102c0,102.697-83.098,185.856-185.815,185.897
|
421 |
+
C 103.67,459.489, 20.48,376.32, 20.48,273.644c0-102.584, 83.2-185.743, 185.876-185.743c 35.226,0, 68.045,9.953, 96.092,26.962L 428.841-11.52L 491.52,51.19
|
422 |
+
L 365.158,177.521z M 206.336,158.669c-63.508,0.154-114.852,51.476-114.964,114.852C 91.494,337.029, 142.848,388.362, 206.336,388.506
|
423 |
+
c 63.478-0.164, 114.842-51.487, 114.975-114.985C 321.178,210.217, 269.793,158.822, 206.336,158.669zM 286.72,295.68L 225.28,295.68L 225.28,357.12L 184.32,357.12L 184.32,295.68L 122.88,295.68L 122.88,254.72L 184.32,254.72L 184.32,193.28L 225.28,193.28L 225.28,254.72L 286.72,254.72 z" data-tags="zoom-in-alt" />
|
424 |
+
<glyph unicode="" d="M 491.52,275.2L 307.2,275.2L 307.2,459.52L 204.8,459.52L 204.8,275.2L 20.48,275.2L 20.48,172.8L 204.8,172.8L 204.8-11.52L 307.2-11.52L 307.2,172.8L 491.52,172.8 z" data-tags="zoom-in" />
|
425 |
+
<glyph unicode="" d="M 348.16,367.36L 348.16,398.449 C 348.16,423.854, 326.564,449.28, 301.169,449.28l-85.432,0 C 190.351,449.28, 163.84,423.854, 163.84,398.449L 163.84,367.36 l-54.395,0 L 51.2,8.96l 411.515,0 l-59.167,358.4L 348.16,367.36 z
|
426 |
+
M 194.56,398.449C 194.56,407.962, 206.234,418.56, 215.736,418.56l 85.432,0 C 310.661,418.56, 317.44,407.962, 317.44,398.449L 317.44,367.36 L 194.56,367.36 L 194.56,398.449 z" data-tags="department_store" />
|
427 |
+
<glyph unicode="" d="M 259.43,231.199c0,0-49.551-39.864-49.551-72.090c0-14.428, 21.238-28.846, 49.551-28.846c 28.293,0, 49.531,14.418, 49.531,28.846
|
428 |
+
C 308.961,192.492, 259.43,231.199, 259.43,231.199zM 440.074,304.067c 2.867,35.103, 13.046,67.328, 30.966,96.86L 402.237,469.76c-21.729-18.719-46.49-29.082-74.547-30.915
|
429 |
+
c-25.702-2.324-50.063,2.56-72.97,14.694c-23.572-11.735-47.841-16.64-73.144-14.694c-26.163,2.345-49.787,11.622-70.932,28.068L 41.646,398.111
|
430 |
+
c 16.968-29.962, 26.419-61.307, 28.273-94.044c 0.881-15.073-3.42-35.809-13.066-62.638c-5.048-14.868-8.858-27.761-11.469-38.543
|
431 |
+
c-2.417-10.701-3.922-19.405-4.413-25.917c-0.358-28.57, 7.66-54.385, 24.095-77.312c 12.841-16.742, 34.017-35.236, 63.427-55.45
|
432 |
+
c 32.184-16.384, 57.078-27.013, 74.516-31.56c 4.987-2.335, 9.892-4.567, 14.459-6.717c 4.557-2.171, 9.431-4.301, 14.51-6.625
|
433 |
+
c 10.967-6.564, 18.668-13.691, 22.743-21.053c 4.966,7.956, 12.841,14.909, 23.327,21.053c 7.393,3.226, 13.629,6.031, 18.657,8.479
|
434 |
+
c 5.007,2.222, 8.755,3.871, 10.916,4.874c 3.727,1.853, 8.632,3.973, 14.531,6.308c 5.949,2.345, 13.332,5.212, 22.118,8.407
|
435 |
+
c 16.988,6.011, 29.379,11.704, 37.222,16.845c 28.529,20.214, 49.388,38.4, 62.648,54.682c 17.029,23.020, 25.293,48.937, 24.914,78.080
|
436 |
+
c-1.014,13.046-6.533,33.925-16.558,62.362C 442.941,267.039, 438.702,288.543, 440.074,304.067z M 259.43,101.427
|
437 |
+
c-62.536,0-120.32,51.651-120.32,115.354c0,43.264, 33.075,84.132, 42.465,100.936l 28.303-43.264l 49.551,72.090l 49.531-72.090l 28.344,43.264
|
438 |
+
c 9.359-16.804, 42.465-57.672, 42.465-100.936C 379.771,153.078, 321.976,101.427, 259.43,101.427z" data-tags="fire_station" />
|
439 |
+
<glyph unicode="" d="M 501.76,250.665L 266.24,362.076L 266.24,408.32L 296.96,408.32L 296.96,428.8L 266.24,428.8L 266.24,469.76L 245.76,469.76L 245.76,428.8L 215.040,428.8L 215.040,408.32L 245.76,408.32L 245.76,362.076L 81.326,284.201L 81.326,284.201L 81.326,284.201L 10.24,250.665L 10.24,234.24L 81.92,234.24L 81.92-21.76L 204.8-21.76L 204.8,131.84L 307.2,131.84L 307.2-21.76L 430.080-21.76L 430.080,234.24L 501.76,234.24 z" data-tags="church" />
|
440 |
+
<glyph unicode="" d="M 257.577,302.367c 40.479,0, 73.155,32.942, 73.155,73.554c0,40.53-32.666,73.359-73.155,73.359c-40.428,0-73.247-32.84-73.247-73.359
|
441 |
+
C 184.33,335.319, 217.16,302.367, 257.577,302.367zM 328.755,285.44c 33.495,0, 47.555-28.611, 47.555-28.611l 108.104-148.941c 4.475-6.646, 7.107-14.776, 7.107-23.552
|
442 |
+
c0-23.142-18.719-41.953-41.789-41.953c-5.519,0-10.865,1.198-15.555,3.021L 368.64,63.57L 368.64-1.28 L 143.36-1.28 l0,64.85 l-65.556-18.196
|
443 |
+
C 73.196,43.571, 67.891,42.342, 62.351,42.342c-23.050,0-41.861,18.739-41.861,41.882c0,8.765, 2.591,16.763, 7.229,23.429l 108.032,149.176
|
444 |
+
c0,0, 14.049,28.611, 47.401,28.611L 328.755,285.44 z M 256.061,43.899L 256.061,43.899l 84.439,28.058l-1.833,0.512c-58.419,17.121-36.024,94.495, 22.252,77.179
|
445 |
+
L 368.64,146.903l0,87.255 l-112.527-37.1L 143.36,234.158l0-87.255 l 7.721,2.755c 58.245,17.306, 80.876-60.058, 22.497-77.179l-2.048-0.512L 256.061,43.899
|
446 |
+
L 256.061,43.899z" data-tags="library" />
|
447 |
+
<glyph unicode="" d="M 261.908,388.475c 23.521-1.731, 44.093,15.032, 45.957,37.356c 1.884,22.436-15.667,42.066-39.188,43.796c-23.552,1.71-44.124-14.95-45.947-37.386
|
448 |
+
C 220.897,409.815, 238.459,390.226, 261.908,388.475zM 438.098,60.16l-14.213,122.88l-23.060,0 c 0.215,10.24, 0.184,11.377-0.522,17.592c-0.686,6.359-2.703,11.008-5.99,12.472
|
449 |
+
c 2.693,2.867, 4.485,6.513, 4.833,10.619c 0.522,6.472-2.509,12.524-7.578,16.128l-58.696,38.584l-43.213,81.367
|
450 |
+
c-7.158,10.65-19.282,19.241-33.915,20.47c-11.244,0.778-21.586-2.939-29.952-8.468l-85.75-66.376c-2.826-2.273-4.946-5.263-5.908-8.858
|
451 |
+
l-19.978-80.394C 113.981,215.409, 112.64,214.548, 112.64,213.791c0-0.010,0-0.020,0-0.031l-0.164,0 c-3.348,0-6.4-3.195-7.567-7.424
|
452 |
+
C 103.782,202.189, 102.4,196.71, 102.4,192.276C 102.4,189.082, 102.4,183.040, 102.4,183.040L 80.138,183.040 L 65.925,60.16l 57.436,0 l-25.18-40.294c-1.638-3.123-3.564-7.537-3.901-11.796
|
453 |
+
c-1.239-15.258, 10.639-28.518, 26.563-29.737c 11.377-0.758, 21.166,4.731, 27.116,13.496L 190.454,60.16l 5.56,0 l-0.87,7.547l 11.786,18.964
|
454 |
+
c 1.28,2.54, 5.345,8.755, 5.796,11.704l 14.397,62.566l 61.45-64.236l 19.292-96.573c 3.082-11.418, 12.933-20.838, 26.040-21.801
|
455 |
+
c 15.944-1.208, 29.901,10.045, 31.171,25.272c 0.113,1.905-0.225,3.338-0.174,5.612L 354.826,60.16l 18.207,0 L 438.098,60.16 z M 112.2,193.382
|
456 |
+
c 0.573,4.844, 2.386,7.598, 5.581,7.598c 0.42,0, 0.778,0.010, 1.198,0.020c 3.226-3.901, 8.018-6.574, 13.548-7.025
|
457 |
+
c 6.339-0.492, 12.032,2.243, 15.903,6.482c 0.86-0.727, 1.546-1.823, 2.017-3.338c 0.85-2.939, 1.341-6.308, 1.341-9.083
|
458 |
+
c0-1.659-0.082-4.997-0.195-4.997l-20.644,0 l-19.046,0 C 111.77,183.040, 111.811,189.624, 112.2,193.382z M 170.885,183.040l-12.134,0
|
459 |
+
c 0.256,10.24, 0.184,11.377-0.481,17.592c-0.573,5.325-2.079,9.441-4.465,11.551l 15.145,65.966l 29.87,23.112L 170.885,183.040z M 393.687,183.040L 373.043,183.040
|
460 |
+
l-19.077,0 c-0.164,0-0.113,6.584, 0.297,10.342c 0.532,4.844, 2.376,7.598, 5.581,7.598c 4.598,0, 8.765,0.143, 12.462,0.225
|
461 |
+
c 3.717,0.133, 8.786,0.317, 15.165,0.317c 2.447,0, 4.106-1.454, 5.028-4.413c 0.881-2.939, 1.352-6.308, 1.352-9.083
|
462 |
+
C 393.851,186.378, 393.759,183.040, 393.687,183.040z M 265.216,206.418l 19.251,81.265l 16.189-30.546c 1.28-2.099, 2.796-3.83, 4.792-5.458L 363.274,213.76l-8.735,0
|
463 |
+
c-3.348,0-4.577-3.195-5.734-7.424C 347.709,202.189, 348.16,196.71, 348.16,192.276C 348.16,189.082, 348.16,183.040, 348.16,183.040l-25.928,0 l-4.188-36.147L 265.216,206.418z" data-tags="shopping_mall" />
|
464 |
+
<glyph unicode="" d="M 471.040,183.040L 471.040-21.76L 317.44-21.76L 317.44,19.2L 184.32,19.2L 184.32-21.76L 40.96-21.76L 40.96,183.040 zM 378.358,220.365c-5.878,25.692-19.139,48.282-40.038,65.546C 318.075,302.735, 294.124,305.92, 266.342,316.16L 266.24,316.16 L 266.24,380.959
|
465 |
+
c0,0.287, 2.775,0.512, 5.366,1.444c 3.676,1.28, 7.148,2.755, 11.745,4.352c 4.516,1.526, 8.602,2.806, 12.861,3.707
|
466 |
+
c 4.178,0.993, 7.076,1.413, 9.062,1.413c 3.86,0, 8.745-0.614, 14.459-1.864c 5.816-1.413, 12.012-2.939, 18.309-4.669
|
467 |
+
c 6.564-1.987, 12.421-3.492, 18.104-4.772c 5.417-1.239, 9.953-1.751, 13.711-1.751C 375.839,378.808, 378.88,379.638, 389.12,381.46L 389.12,455.619
|
468 |
+
c-10.24-2.437-12.052-3.779-19.272-3.779c-3.758,0-8.407,0.573-13.834,1.946c-5.663,1.085-11.5,2.775-18.063,4.68
|
469 |
+
c-6.298,1.915-12.247,3.359-17.746,4.567c-5.56,1.321-9.175,1.956-13.107,1.956c-13.036,0-30.618-3.082-40.858-8.765L 266.24,469.76 l-20.48,0 l0-153.6 l-0.645,0
|
470 |
+
c-27.566-10.24-51.702-14.008-71.926-30.833c-20.5-17.285-33.812-38.41-40.11-64.113c0,0-19.63,2.785-19.63-17.695l 286.413,0
|
471 |
+
C 399.862,224, 378.358,220.365, 378.358,220.365z" data-tags="local_government" />
|
472 |
+
<glyph unicode="" d="M 483.645,60.16c0,0-74.045,0-166.205,0l0-40.735 L 317.44,19.2 c 40.96,0, 66.877,0, 66.877,0c 28.959,0, 41.513,0, 56.689,0l 44.339,0
|
473 |
+
C 499.149,19.2, 501.76,31.232, 501.76,31.232l0,9.933 C 501.76,41.165, 501.637,60.16, 483.645,60.16zM 460.657,68.25C 483.328,68.25, 501.76,86.702, 501.76,109.435c0,22.804-18.432,41.196-41.103,41.196c-22.641,0-41.021-18.401-41.021-41.196
|
474 |
+
C 419.635,86.712, 438.016,68.25, 460.657,68.25zM 374.088,70.4c 21.565,0, 38.912,15.196, 38.912,36.731c-0.010,21.494-17.418,32.768-38.82,32.932L 317.44,132.874L 317.44,70.4 L 374.088,70.4 L 374.088,70.4zM 189.676,337.326c 25.18,0, 45.548,20.48, 45.548,45.742C 235.223,408.33, 214.856,428.8, 189.676,428.8c-25.16,0-45.558-20.47-45.558-45.732
|
475 |
+
C 144.118,357.806, 164.516,337.326, 189.676,337.326zM 143.165,189.297c-0.113,0.215-0.297,0.338-0.41,0.594l-20.644,48.067L 122.081,142.080l 61.696,0 l 13.476,14.336l-36.547,14.070
|
476 |
+
C 152.044,173.742, 145.889,181.115, 143.165,189.297zM 156.242,193.608c 1.997-4.485, 5.693-8.12, 10.342-9.789l 70.42-26.102c 9.011-3.983, 19.538,0.154, 23.491,9.196
|
477 |
+
c 3.953,9.103-0.154,19.702-9.175,23.665l-64.973,24.535l-20.070,48.138l 13.087,4.874l 17.009-41.247L 245.76,208.568l0,50.401 l 26.214-15.596l 13.066-65.823
|
478 |
+
c 3.205-9.4, 13.353-14.346, 22.712-11.1c 9.267,3.215, 14.193,13.466, 11.008,22.825l-14.643,63.396c-0.963,3.553-3,6.656-5.755,8.98
|
479 |
+
c-7.506,8.315-45.466,50.76-48.169,53.596C 246.231,319.222, 237.169,326.4, 220.047,326.4l-61.44,0 c-34.918,0-41.636-35.635-34.499-53.76L 156.242,193.608zM 307.2,131.84L 30.382,131.84 C 20.306,131.84, 10.24,126.157, 10.24,113.654c0-2.898,0-8.202,0-8.202L 10.24,19.2 c0,0, 18.012,0, 23.859,0L 307.2,19.2 L 307.2,131.84 z" data-tags="spa" />
|
480 |
+
<glyph unicode="" d="M 419.84,285.44l-2.785,0 c-0.758,1.311-1.638,2.58-2.724,3.738L 296.12,415.826C 296.643,418.355, 296.96,420.977, 296.96,423.68C 296.96,443.474, 282.378,459.52, 264.376,459.52
|
481 |
+
c-6.943,0-30.3,0-37.243,0C 209.142,459.52, 194.56,443.474, 194.56,423.68c0-2.703, 0.328-5.325, 0.84-7.854L 77.189,289.178
|
482 |
+
C 76.114,288.020, 75.233,286.751, 74.465,285.44L 20.48,285.44 l0-71.68 l 20.48,0 l0-153.6 c0-28.283, 22.927-51.2, 51.2-51.2l 327.68,0 c 28.283,0, 51.2,22.917, 51.2,51.2L 471.040,213.76 l 20.48,0 l0,71.68 L 419.84,285.44 z M 227.144,387.84
|
483 |
+
c 6.943,0, 30.3,0, 37.243,0c 0.573,0, 1.096,0.154, 1.669,0.184L 361.789,285.44L 129.731,285.44 l 95.744,102.584C 226.038,387.994, 226.57,387.84, 227.144,387.84z M 133.12,70.4
|
484 |
+
c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 92.16,193.28 c0,11.264, 9.216,20.48, 20.48,20.48s 20.48-9.216, 20.48-20.48L 133.12,70.4 z M 225.28,70.4c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 184.32,193.28 c0,11.264, 9.216,20.48, 20.48,20.48s 20.48-9.216, 20.48-20.48L 225.28,70.4 z
|
485 |
+
M 327.68,70.4c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 286.72,193.28 c0,11.264, 9.216,20.48, 20.48,20.48s 20.48-9.216, 20.48-20.48L 327.68,70.4 z M 419.84,70.4c0-11.264-9.216-20.48-20.48-20.48s-20.48,9.216-20.48,20.48L 378.88,193.28 c0,11.264, 9.216,20.48, 20.48,20.48
|
486 |
+
s 20.48-9.216, 20.48-20.48L 419.84,70.4 z" data-tags="convenience_store" />
|
487 |
+
<glyph unicode="" d="M 292.669,269.629c0-34.499-28.559-34.499-43.95-34.499l-19.19,0 l0,65.219 l 24.115,0 C 267.131,300.349, 292.669,300.349, 292.669,269.629zM 440.084,304.067c 2.847,35.103, 13.015,67.318, 30.956,96.85L 402.237,469.76c-21.74-18.719-46.479-29.082-74.537-30.915
|
488 |
+
c-25.692-2.324-50.084,2.56-72.98,14.684c-23.562-11.735-47.831-16.64-73.134-14.684c-26.173,2.345-49.787,11.622-70.943,28.068L 41.646,398.1
|
489 |
+
c 16.968-29.952, 26.419-61.307, 28.283-94.034c 0.881-15.073-3.42-35.82-13.066-62.638C 51.814,226.56, 47.995,213.658, 45.394,202.885
|
490 |
+
c-2.406-10.701-3.912-19.405-4.413-25.917c-0.358-28.58, 7.66-54.385, 24.095-77.312c 12.841-16.742, 34.017-35.226, 63.427-55.45
|
491 |
+
c 32.174-16.384, 57.078-27.023, 74.516-31.549c 4.987-2.345, 9.892-4.588, 14.459-6.717c 4.547-2.191, 9.421-4.311, 14.51-6.625
|
492 |
+
c 10.967-6.574, 18.678-13.711, 22.733-21.064c 4.977,7.956, 12.851,14.909, 23.316,21.064c 7.393,3.215, 13.65,6.021, 18.668,8.479
|
493 |
+
c 5.018,2.202, 8.755,3.86, 10.926,4.874c 3.717,1.853, 8.602,3.963, 14.51,6.298c 5.97,2.345, 13.332,5.222, 22.129,8.397
|
494 |
+
c 16.998,6.031, 29.368,11.715, 37.233,16.855c 28.518,20.224, 49.367,38.4, 62.638,54.671c 17.019,23.030, 25.283,48.947, 24.904,78.090
|
495 |
+
c-1.004,13.046-6.523,33.925-16.548,62.372C 442.931,267.039, 438.692,288.543, 440.084,304.067z M 313.62,209.756
|
496 |
+
c-16.333-10.691-38.789-10.691-50.514-10.691l-32.205,0 l0-88.125 l-48.425,0 L 182.477,336.998 l 68.741,0 c 31.949,0, 58.665-2.058, 77.22-24.678
|
497 |
+
c 11.581-14.397, 13.537-30.751, 13.537-42.373C 341.955,243.62, 331.11,221.399, 313.62,209.756z" data-tags="police" />
|
498 |
+
<glyph unicode="" d="M 486.451,269.527C 484.076,398.94, 409.385,450.365, 406.323,452.413L 394.752,460.339l-11.633-7.905c-19.343-13.189-39.393-19.886-59.566-19.886
|
499 |
+
c-33.475,0-56.156,18.104-57.129,18.883l-13.025,10.506l-12.933-10.527c-0.942-0.768-23.654-18.872-57.108-18.872
|
500 |
+
c-20.183,0-40.223,6.687-59.587,19.917l-11.592,7.864l-11.674-7.926C 92.57,446.915, 23.030,395.295, 20.511,270.162
|
501 |
+
c-1.004-10.885, 28.908-216.842, 232.97-276.593C 475.392,58.737, 487.578,255.928, 486.451,269.527z M 61.604,267.049l 0.031-2.918
|
502 |
+
C 62.044,287.754, 65.341,316.16, 71.731,326.4l 363.407,0 c 6.42-10.24, 9.748-38.717, 10.117-62.505l 0.143,0.102c 0.809-6.595-7.311-192-191.918-229.222
|
503 |
+
C 88.207,71.25, 60.877,260.966, 61.604,267.049z" data-tags="route" />
|
504 |
+
<glyph unicode="" d="M 20.48,275.2L 491.52,275.2L 491.52,172.8L 20.48,172.8z" data-tags="zoom-out" />
|
505 |
+
<glyph unicode="" d="M 332.974-12.616L 260.557,203.52L 25.211,203.52L 477.798,457.513 z" data-tags="location-arrow" />
|
506 |
+
<glyph unicode="" d="M 256,480c-84.828,0-153.6-68.157-153.6-152.228c0-84.081, 153.6-359.782, 153.6-359.782s 153.6,275.702, 153.6,359.782C 409.6,411.843, 340.828,480, 256,480z
|
507 |
+
M 255.498,282.245c-26.184,0-47.401,21.043-47.401,46.981c0,25.958, 21.217,46.991, 47.401,46.991c 26.204,0, 47.421-21.033, 47.421-46.991
|
508 |
+
C 302.92,303.288, 281.702,282.245, 255.498,282.245z" data-tags="postal_code" />
|
509 |
+
<glyph unicode="" d="M 441.958,264.96L 419.84,264.96 l0,88.392 C 419.84,411.494, 361.513,469.76, 303.37,469.76l-97.085,0 C 148.173,469.76, 92.16,411.494, 92.16,353.352L 92.16,264.96 L 67.686,264.96 C 60.754,264.96, 51.2,254.085, 51.2,247.962l0-260.69
|
510 |
+
C 51.2-18.852, 60.754-21.76, 67.686-21.76l 374.272,0 c 6.953,0, 18.842,2.908, 18.842,9.032L 460.8,247.962 C 460.8,254.085, 448.911,264.96, 441.958,264.96z M 304.261,19.2l-98.826,0
|
511 |
+
l 20.736,102.062c-12.534,8.878-20.736,25.61-20.736,42.035c0,27.064, 22.129,50.115, 49.408,50.115c 27.279,0, 49.418-21.391, 49.418-48.435
|
512 |
+
c0-16.435-8.202-35.113-20.716-44.001L 304.261,19.2z M 348.16,264.96L 163.84,264.96 l0,88.392 C 163.84,379.75, 181.176,398.080, 207.268,398.080l 95.119,0 C 328.479,398.080, 348.16,379.75, 348.16,353.352L 348.16,264.96 z" data-tags="locksmith" />
|
513 |
+
<glyph unicode="" d="M 439.542,346.88L 389.12,346.88 L 389.12,400.394 C 389.12,438.651, 358.932,469.76, 320.573,469.76L 191.437,469.76 C 153.057,469.76, 122.88,438.651, 122.88,400.394L 122.88,346.88 L 72.448,346.88 C 38.083,346.88, 10.24,320.348, 10.24,286.085
|
514 |
+
l0-235.592 C 10.24,16.241, 38.083-11.52, 72.448-11.52l 367.094,0 C 473.897-11.52, 501.76,16.241, 501.76,50.504L 501.76,286.085 C 501.76,320.348, 473.897,346.88, 439.542,346.88z M 163.84,400.394
|
515 |
+
C 163.84,414.72, 177.070,428.8, 191.437,428.8l 129.137,0 C 334.899,428.8, 348.16,414.72, 348.16,400.394L 348.16,346.88 L 163.84,346.88 L 163.84,400.394 z M 368.64,121.6l-71.68,0 l0-71.68 l-81.92,0 l0,71.68 l-71.68,0 l0,81.92 l 71.68,0 l0,71.68 l 81.92,0 l0-71.68 l 71.68,0 L 368.64,121.6 z" data-tags="doctor" />
|
516 |
+
<glyph unicode="" d="M 491.745,207.084c-14.295-66.755-63.406-121.59-128.164-143.114c-19.866-6.615-40.448-9.964-61.184-9.964
|
517 |
+
c-83.446,0-157.225,53.146-183.603,132.239c-16.333,48.957-12.585,101.335, 10.547,147.497c 23.132,46.152, 62.884,80.558, 111.923,96.87
|
518 |
+
c 46.131,15.319, 96.225,12.759, 140.39-7.055l 9.574,18.053C 327.096,481.229, 247.214,490.711, 175.391,466.821C 110.438,445.225, 57.795,399.657, 27.156,338.534
|
519 |
+
c-30.638-61.133-35.594-130.519-13.967-195.379C 48.128,38.39, 145.848-32, 256.358-32c 27.464,0, 54.712,4.434, 81.009,13.169
|
520 |
+
c 98.028,32.604, 166.564,120.115, 174.612,222.966L 491.745,207.084zM 365.537,330.465L 314.194,426.557L 288.082,319.273L 181.289,298.281L 279.050,242.77L 262.236,132.219L 345.252,207.729L 448.123,158.372L 395.581,261.048L 478.771,341.35 z" data-tags="mosque" />
|
521 |
+
<glyph unicode="" d="M 352.645,300.268c 35.82,0, 64.983,28.682, 64.983,64.215C 417.628,400.005, 388.475,428.8, 352.645,428.8c-35.963,0-65.178-28.795-65.178-64.317
|
522 |
+
C 287.468,328.95, 316.692,300.268, 352.645,300.268zM 501.76,143.544l0,81.306 L 414.054,274.176c-14.858,7.455-31.375,9.984-47.882,6.502c-6.758-1.382-13.117-3.963-20.265-7.895
|
523 |
+
c-0.778-0.215-26.819-11.571-41.953-46.5L 243.558,106.138c0,0-59.505-11.397-84.408-16.148c-1.966-1.3-4.076-2.355-6.093-3.594l-15.411,55.101
|
524 |
+
c-6.38,22.405, 17.418,54.886, 18.309,56.207c 15.749,22.784, 20.060,52.797, 11.786,82.524c-7.537,26.88-24.699,49.541-47.043,62.29
|
525 |
+
c-17.48,9.82-37.13,12.524-54.968,7.67c-13.855-3.758-26.204-11.817-35.748-23.398c-0.123-0.113-7.383-10.752-7.383-10.752
|
526 |
+
c-12.841-22.354-15.8-50.371-8.376-77.394c 7.537-27.136, 24.504-49.705, 46.961-62.28l 5.376-2.816c 0.717-0.051, 37.704-14.961, 44.134-36.352
|
527 |
+
c-0.082-0.113, 9.708-35.092, 17.695-63.601c-2.048-0.881-4.014-1.946-6.083-2.765c 0.297-0.215, 0.85-0.553, 1.188-0.788
|
528 |
+
c-1.802-2.755-4.966-8.858-4.741-15.104c0-1.987, 0.164-3.973, 0.543-5.898c 3.41-17.664, 20.91-29.46, 38.789-25.866l 114.125,21.955
|
529 |
+
c0,0, 9.708,2.918, 13.865,5.847c 5.356,3.758, 9.39,11.643, 9.39,11.643l 29.993,59.628c0,0, 20.675-96.358, 21.074-98.14
|
530 |
+
c-0.348-0.266-2.028-2.099-4.762-4.905l 155.679,0 c-2.345,13.681-3.901,22.456-3.901,22.559c0,0.225-4.905,21.617-4.905,21.617
|
531 |
+
c 0.164-0.154-13.353,60.027-23.685,107.131c 16.466-9.421, 31.386-17.797, 32.215-18.248C 497.295,151.992, 499.067,148.623, 501.76,143.544z M 109.435,192.963
|
532 |
+
c-11.561-3.072-23.91-1.208-35.748,5.315c-16.486,9.216-29.225,26.368-34.683,47.063c-5.816,20.623-3.697,41.748, 5.693,58.030l 5.243,7.557
|
533 |
+
c 6.185,7.506, 13.681,12.524, 22.671,15.012c 28.713,7.711, 60.334-15.78, 70.554-52.47C 153.231,236.943, 138.158,200.694, 109.435,192.963z" data-tags="stadium" />
|
534 |
+
<glyph unicode="" d="M 30.72,418.56L 481.28,418.56L 481.28,367.36L 30.72,367.36zM 61.44,346.88l0-337.92 l 389.12,0 L 450.56,346.88 L 61.44,346.88 z M 327.68,254.72L 174.080,254.72 l0,30.72 l 153.6,0 L 327.68,254.72 z" data-tags="storage" />
|
535 |
+
<glyph unicode="" d="M 432.282,346.88l-58.102,0 l 58.46,56.054L 374.804,459.52l-81.859,0 l 58.644-56.044L 291.471,346.88l-69.519,0 l 59.781,56.054L 222.679,459.52l-83.261,0 l 58.644-56.044
|
536 |
+
L 137.861,346.88L 78.94,346.88 l 59.812,56.054L 79.585,459.52L 20.48,459.52 l0-471.040 l 471.040,0 L 491.52,459.52 l-57.774,0 L 491.52,403.159L 432.282,346.88z M 430.080,49.92L 81.92,49.92 l0,61.44 l 348.16,0 L 430.080,49.92 z M 430.080,162.56L 81.92,162.56 l0,61.44 l 348.16,0 L 430.080,162.56 z" data-tags="movie_theater" />
|
537 |
+
<glyph unicode="" d="M 419.84,336.64l-51.2,0 L 368.64,450.109 C 368.64,460.964, 359.475,469.76, 348.16,469.76s-20.48-8.796-20.48-19.651L 327.68,336.64 L 163.84,336.64 L 163.84,450.109 C 163.84,460.964, 154.675,469.76, 143.35,469.76
|
538 |
+
C 132.035,469.76, 122.88,460.964, 122.88,450.109L 122.88,336.64 L 71.68,336.64 c-5.663,0-10.24-8.899-10.24-14.326L 61.44,273.152 c0-58.972, 102.4-127.447, 102.4-222.167L 163.84,19.2 l 40.96,0 l0-40.96 l 81.92,0 l0,40.96 l 40.96,0 l0,31.785
|
539 |
+
c0,94.72, 102.4,163.205, 102.4,222.167l0,49.162 C 430.080,327.741, 425.503,336.64, 419.84,336.64 M 234.568,168.827C 235.233,170.977, 233.882,172.8, 231.537,172.8l-39.782,0
|
540 |
+
c-2.355,0-3.021,1.331-1.526,3.062c0,0, 81.971,104.028, 83.569,106.035c 1.208,1.905, 2.54,1.239, 2.12-0.952
|
541 |
+
c-0.635-2.775-18.135-73.748-18.135-73.748C 256.932,205.107, 258.161,203.52, 260.485,203.52l 39.803,0 c 2.345,0, 3.092-1.577, 1.659-3.359
|
542 |
+
c0,0-82.094-106.516-83.569-108.298c-1.485-1.782-2.857-1.239-2.109,1.792C 217.016,96.696, 234.568,168.827, 234.568,168.827" data-tags="electrician" />
|
543 |
+
<glyph unicode="" d="M 87.286,164.659c-20.255,0-36.71-16.558-36.71-36.905C 50.575,107.397, 67.041,90.88, 87.286,90.88c 20.296,0, 36.762,16.517, 36.762,36.884
|
544 |
+
C 124.047,148.101, 107.592,164.659, 87.286,164.659z M 87.286,108.739c-10.117,0-18.35,8.264-18.35,18.463c0,10.158, 8.233,18.442, 18.35,18.442
|
545 |
+
c 10.168,0, 18.401-8.284, 18.401-18.442C 105.697,117.002, 97.464,108.739, 87.286,108.739zM 410.286,164.659c-20.285,0-36.731-16.558-36.731-36.905c0-20.357, 16.435-36.884, 36.731-36.884c 20.275,0, 36.762,16.517, 36.762,36.884
|
546 |
+
C 447.048,148.101, 430.572,164.659, 410.286,164.659z M 410.286,108.739c-10.127,0-18.371,8.264-18.371,18.463
|
547 |
+
c 0.010,10.158, 8.243,18.442, 18.371,18.442c 10.158,0, 18.401-8.284, 18.401-18.442C 428.687,117.002, 420.454,108.739, 410.286,108.739zM 491.592,336.64L 168.561,336.64 c-5.601,0-10.168-4.567-10.168-10.209l0-92.59 l-20.347,0 l0,56.842 c0,5.652-4.557,10.209-10.179,10.209L 58.563,300.892
|
548 |
+
c-12.083,0-22.876-8.929-24.812-21.709l0,0.666 l-10.813-61.307l 0.020-0.215C 15.616,217.078, 10.24,210.698, 10.24,203.213c0-1.096, 0.123-2.222, 0.338-3.277
|
549 |
+
L 10.24,200.028l 15.258-68.966l 15.892,0 l0,0.625 c0,24.719, 20.224,44.739, 45.158,44.739c 24.914,0, 45.148-20.019, 45.148-44.739l0-0.625 l 232.714,0 l0,0.625
|
550 |
+
c0,24.719, 20.234,44.739, 45.128,44.739c 24.934,0, 45.169-20.019, 45.169-44.739c0-0.205,0-0.42-0.041-0.625l 0.041,0 L 501.76,131.062 L 501.76,326.431
|
551 |
+
C 501.76,332.063, 497.213,336.64, 491.592,336.64z M 102.431,284.303l0-50.463 l-61.030,0 l 7.629,42.813c 0.635,5.12, 5.089,8.899, 9.533,8.899l 43.868,0 L 102.431,284.303 z" data-tags="moving_company" />
|
552 |
+
<glyph unicode="" d="M 256,480c-84.828,0-153.6-68.157-153.6-152.228c0-84.081, 153.6-359.782, 153.6-359.782s 153.6,275.702, 153.6,359.782C 409.6,411.843, 340.828,480, 256,480z
|
553 |
+
M 255.498,282.245c-26.184,0-47.401,21.043-47.401,46.981c0,25.958, 21.217,46.991, 47.401,46.991c 26.204,0, 47.421-21.033, 47.421-46.991
|
554 |
+
C 302.92,303.288, 281.702,282.245, 255.498,282.245z" data-tags="postal_code_prefix" />
|
555 |
+
<glyph unicode="" d="M 256,469.76C 120.484,469.76, 10.24,359.516, 10.24,224c0-135.506, 110.244-245.76, 245.76-245.76c 135.506,0, 245.76,110.254, 245.76,245.76C 501.76,359.516, 391.506,469.76, 256,469.76z M 286.72,21.76L 286.72,111.36 l-61.44,0
|
556 |
+
l0-89.6 C 136.96,35.144, 67.144,104.96, 53.76,193.28L 143.36,193.28 l0,61.44 L 53.76,254.72 C 67.144,343.040, 136.96,412.856, 225.28,426.24L 225.28,336.64 l 61.44,0 L 286.72,426.24
|
557 |
+
C 375.040,412.856, 444.856,343.040, 458.24,254.72L 368.64,254.72 l0-61.44 l 89.6,0 C 444.856,104.96, 375.040,35.144, 286.72,21.76z" data-tags="crosshairs" />
|
558 |
+
<glyph unicode="" d="M 256-21.76C 120.484-21.76, 10.24,88.494, 10.24,224C 10.24,359.516, 120.484,469.76, 256,469.76c 135.506,0, 245.76-110.244, 245.76-245.76C 501.76,88.494, 391.506-21.76, 256-21.76z M 256,428.8
|
559 |
+
C 143.073,428.8, 51.2,336.927, 51.2,224c0-112.927, 91.873-204.8, 204.8-204.8c 112.927,0, 204.8,91.873, 204.8,204.8C 460.8,336.927, 368.927,428.8, 256,428.8zM 256.461,395.52C 256.461,395.52, 184.32,271.913, 184.32,234.24c0-3.983,0-16.548,0-20.48c0-37.663, 72.356-163.84, 72.356-163.84S 327.68,173.476, 327.68,211.139
|
560 |
+
c0,3.963,0,19.22,0,23.163C 327.68,271.974, 256.461,395.52, 256.461,395.52z M 256,183.040c-22.62,0-40.96,18.34-40.96,40.96c0,22.62, 18.34,40.96, 40.96,40.96c 22.62,0, 40.96-18.34, 40.96-40.96
|
561 |
+
C 296.96,201.38, 278.62,183.040, 256,183.040z" data-tags="compass" />
|
562 |
+
<glyph unicode="" d="M 254.433,200.776c 36.321,0, 53.156-27.546, 56.689-66.683c 0.829-9.359-0.010-23.009-1.229-38.82C 305.818,42.762, 301.128-21.76, 336.077-21.76
|
563 |
+
c 29.594,0, 44.759,56.73, 53.545,121.405c 8.458,64.020-0.522,95.877, 3.912,124.314c 8.407,53.862, 55.419,102.154, 40.899,170.834
|
564 |
+
c-8.049,38.103-29.041,56.013-49.807,63.56c-47.862,17.418-78.787-16.148-130.191-16.148c-51.395,0-82.299,33.567-130.181,16.148
|
565 |
+
c-20.756-7.537-41.759-25.457-49.828-63.56c-14.49-68.68, 32.512-116.961, 40.95-170.834c 4.393-28.426-4.536-60.293, 3.912-124.314
|
566 |
+
C 128.051,34.97, 143.247-21.76, 172.81-21.76c 34.929,0, 30.269,64.522, 26.194,117.033c-1.188,15.821-2.089,29.471-1.239,38.83
|
567 |
+
C 201.288,173.23, 218.368,200.776, 254.433,200.776z" data-tags="dentist" />
|
568 |
+
<glyph unicode="" d="M 201.38,345.129l-75.069,0 L 126.31,419.133 l 20.47,0 L 146.78,459.52 L 10.24,459.52 l0-40.387 l 20.48,0 l0-114.381 c0-29.737, 24.453-53.832, 54.61-53.832l 116.050,0 l0-20.193 l 40.97,0 L 242.35,365.302 l-40.97,0
|
569 |
+
L 201.38,345.129 zM 481.26,176.906l0,114.381 c0,29.727-24.443,53.832-54.569,53.832L 310.62,345.119 l0,20.173 l-40.97,0 l0-134.584 l 40.97,0 l0,20.204 l 75.080,0 l0-74.004 l-20.449,0
|
570 |
+
l0-40.387 L 501.76,136.52 l0,40.387 L 481.26,176.906 zM 470.743,25.385c0,20.419-37.253,77.486-37.253,77.486s-37.816-57.068-37.816-77.486c0-20.378, 16.814-36.905, 37.54-36.905
|
571 |
+
C 453.929-11.52, 470.743,5.007, 470.743,25.385z" data-tags="plumber" />
|
572 |
+
<glyph unicode="" d="M 94.925,285.44l 40.1,0 l 6.164-184.32L 89.59,101.12 L 94.925,285.44L 94.925,285.44z M 61.44,90.88l 389.12,0 l0-20.48 l 30.72,0 l0-30.72 l 20.48,0 l0-20.48 L 10.24,19.2 l0,20.48 l 20.48,0 l0,30.72 l 30.72,0 L 61.44,90.88 L 61.44,90.88z M 471.040,338.565L 256.020,428.8L 40.96,338.565L 40.96,326.4
|
573 |
+
l 430.080,0 L 471.040,338.565 L 471.040,338.565z M 81.92,316.16l 348.16,0 l0-20.48 L 81.92,295.68 L 81.92,316.16 z M 376.177,285.44l 40.079,0 l 6.216-184.32l-51.671,0 L 376.177,285.44z M 282.46,285.44l 40.079,0 l 6.144-184.32l-51.62,0 L 282.46,285.44
|
574 |
+
L 282.46,285.44z M 188.723,285.44l 40.090,0 l 6.103-184.32l-51.599,0 L 188.723,285.44z" data-tags="museum" />
|
575 |
+
<glyph unicode="" d="M 277.668,202.957C 275.313,204.39, 276.48,205.711, 266.24,206.93l0-29.665 c0,0.287, 4.424,0.635, 5.612,1.044
|
576 |
+
c 7.598,2.662, 11.407,7.629, 11.407,14.858C 283.259,197.356, 281.385,200.653, 277.668,202.957zM 231.578,251.361c0-4.557, 2.079-7.987, 6.216-10.24c 1.587-0.891, 4.26-1.884, 7.956-2.959l0,28.068
|
577 |
+
c-3.011-0.707-5.652-1.772-7.875-3.226C 233.677,260.219, 231.578,256.328, 231.578,251.361zM 256,326.4c-50.903,0-92.16-45.855-92.16-102.4c0-56.535, 41.257-102.4, 92.16-102.4c 50.903,0, 92.16,45.865, 92.16,102.4C 348.16,280.545, 306.903,326.4, 256,326.4z M 295.465,166.103
|
578 |
+
C 288.512,160.164, 276.48,156.529, 266.24,155.156L 266.24,142.080 l-20.48,0 l0,13.312 c-10.691,1.454-19.548,3.072-26.501,8.55C 209.613,171.54, 204.8,183.040, 204.8,193.28l 25.477,0
|
579 |
+
c 0.829,0, 2.447-8.202, 4.864-11.1c 2.509-2.98, 6.072-3.328, 10.619-4.588l0,34.867 c-12.462,2.877-21.146,5.98-25.969,9.318
|
580 |
+
c-8.612,5.888-12.913,15.114-12.913,27.648c0,11.438, 4.209,20.941, 12.636,28.508c 6.431,5.786, 15.196,9.339, 26.245,10.711L 245.76,305.92 l 20.48,0 l0-17.818
|
581 |
+
c 10.24-1.526, 17.162-6.277, 23.552-11.018C 299.407,269.947, 306.176,264.96, 306.637,244.48l-25.661,0 c-0.481,10.24-5.622,14.664-12.001,17.9
|
582 |
+
C 268.636,262.543, 266.24,264.356, 266.24,264.499l0-32.184 l 9.236-1.782c 9.82-2.314, 18.903-5.407, 23.798-9.267c 7.619-6.021, 10.568-14.715, 10.568-26.081
|
583 |
+
C 309.862,183.511, 304.476,173.824, 295.465,166.103zM 440.32,357.12L 71.68,357.12 L0,357.12 l0-71.68 l0-122.88 l0-71.68 l 71.68,0 l 368.64,0 l 71.68,0 l0,71.68 L 512,285.44 l0,71.68 L 440.32,357.12 z M 491.52,159.785c-23.839-6.584-41.841-24.566-48.425-48.425L 68.905,111.36
|
584 |
+
c-6.595,23.839-24.576,41.841-48.425,48.425L 20.48,288.215 c 23.849,6.595, 41.83,24.576, 48.425,48.425l 374.426,0 c 6.881-23.112, 25.078-41.308, 48.189-48.189L 491.52,159.785 z
|
585 |
+
" data-tags="finance" />
|
586 |
+
<glyph unicode="" d="M 303.278,480L 71.68,480 l0-512 l 112.64,0 L 184.32,131.84 l 118.958,0 c 127.631,0, 177.091,101.079, 177.091,184.525C 480.369,399.38, 430.909,480, 303.278,480z M 272.425,234.24L 184.32,234.24 L 184.32,387.84 l 88.105,0
|
587 |
+
c 52.357,0, 99-11.551, 99-76.667C 371.415,245.658, 324.782,234.24, 272.425,234.24zM-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76z" data-tags="parking" />
|
588 |
+
<glyph unicode="" d="M 185.344,228.68L 91.095,281.825L 123.853,339.272L 218.122,286.157 zM 373.453,179.651L 214.2,269.353L 197.827,240.599L 357.059,150.886 zM 392.786,168.745L 376.361,140.012L 458.486,93.788L 474.911,122.491 zM 370.668,140.012c-1.26-2.243-4.7-2.775-7.69-1.137l0,0c-2.98,1.679-4.301,4.864-3.031,7.137l 19.2,33.638
|
589 |
+
c 1.321,2.284, 4.762,2.836, 7.721,1.137l0,0c 2.939-1.679, 4.27-4.936, 3-7.219L 370.668,140.012zM 491.827,121.59c-3.267,1.802-6.871,2.642-10.353,2.54l-21.002-36.782c 1.69-3.082, 4.209-5.775, 7.526-7.578
|
590 |
+
c 9.257-5.243, 20.9-2.222, 25.989,6.676l 5.386,9.523C 504.474,104.929, 501.115,116.347, 491.827,121.59zM 227.236,297.226c-2.468-4.465-8.090-5.96-12.544-3.502l-82.493,46.51c-4.465,2.478-5.97,8.059-3.471,12.524l0,0
|
591 |
+
c 2.509,4.383, 8.141,5.949, 12.595,3.42l 82.473-46.449C 228.219,307.2, 229.796,301.609, 227.236,297.226L 227.236,297.226zM 238.797,317.42c-2.54-4.454-8.161-5.96-12.564-3.482l-82.524,46.5c-4.434,2.478-5.99,8.069-3.451,12.462l0,0
|
592 |
+
c 2.478,4.454, 8.11,6.001, 12.595,3.492l 82.493-46.459C 239.8,327.424, 241.316,321.823, 238.797,317.42L 238.797,317.42zM 169.083,195.113c-2.54-4.403-8.161-5.898-12.585-3.42l-82.555,46.51c-4.424,2.458-5.97,8.059-3.461,12.524l0,0
|
593 |
+
c 2.509,4.321, 8.212,5.949, 12.585,3.42l 82.514-46.51C 170.015,205.169, 171.551,199.567, 169.083,195.113L 169.083,195.113zM 180.613,215.378c-2.509-4.454-8.131-5.949-12.636-3.43L 85.484,258.406c-4.403,2.529-5.97,8.12-3.471,12.524l0,0
|
594 |
+
c 2.55,4.444, 8.172,5.949, 12.605,3.43l 82.483-46.459C 181.524,225.382, 183.122,219.771, 180.613,215.378L 180.613,215.378zM 42.179,132.649L 187.628,132.649L 187.628,115.927L 42.179,115.927zM 219.392,97.772c-0.932,5.581-5.755,9.861-11.622,9.861L 22.077,107.633 c-5.857,0-10.711-4.28-11.622-9.861L 10.24,97.772 l0-27.382 l 209.367,0 l0,27.382
|
595 |
+
L 219.392,97.772 z" data-tags="courthouse" />
|
596 |
+
<glyph unicode="" d="M 419.84,469.76L 92.16,469.76 C 69.632,469.76, 51.2,451.328, 51.2,428.8l0-409.6 c0-22.528, 18.432-40.96, 40.96-40.96l 327.68,0 c 22.528,0, 40.96,18.432, 40.96,40.96L 460.8,428.8 C 460.8,451.328, 442.368,469.76, 419.84,469.76z M 174.080,60.16c0-11.264-9.216-20.48-20.48-20.48l-40.96,0
|
597 |
+
c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 174.080,60.16 z M 174.080,142.080c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0
|
598 |
+
c 11.264,0, 20.48-9.216, 20.48-20.48L 174.080,142.080 z M 174.080,224c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 174.080,224 z M 296.96,60.16c0-11.264-9.216-20.48-20.48-20.48
|
599 |
+
l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 296.96,60.16 z M 296.96,142.080c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0
|
600 |
+
c 11.264,0, 20.48-9.216, 20.48-20.48L 296.96,142.080 z M 296.96,224c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 296.96,224 z M 419.84,60.16c0-11.264-9.216-20.48-20.48-20.48
|
601 |
+
l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,60.16 z M 419.84,142.080c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0
|
602 |
+
c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,142.080 z M 419.84,224c0-11.264-9.216-20.48-20.48-20.48l-40.96,0 c-11.264,0-20.48,9.216-20.48,20.48l0,10.24 c0,11.264, 9.216,20.48, 20.48,20.48l 40.96,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,224 z M 419.84,316.16c0-11.264-9.216-20.48-20.48-20.48
|
603 |
+
L 112.64,295.68 c-11.264,0-20.48,9.216-20.48,20.48L 92.16,398.080 c0,11.264, 9.216,20.48, 20.48,20.48l 286.72,0 c 11.264,0, 20.48-9.216, 20.48-20.48L 419.84,316.16 z" data-tags="accounting" />
|
604 |
+
<glyph unicode="" d="M 409.6,285.44l0-40.96 L 112.64,244.48 l0,40.96 L 409.6,285.44 M 419.84,295.68L 102.4,295.68 l0-61.44 l 317.44,0 L 419.84,295.68 L 419.84,295.68zM 261.755,449.628L0,264.96l 61.44,0 l0-36.936 L 61.44,39.68 l 40.96,0 L 102.4,193.28 l 81.92,0 l0-153.6 l 26.931,0 L 460.8,39.68 l0,8.98 L 460.8,228.024 L 460.8,264.96 l 51.2,0 L 261.755,449.628z M 430.080,101.12L 235.52,101.12 l0,92.16 l 194.56,0 L 430.080,101.12 z M 430.080,224L 92.16,224 l0,81.92 l 337.92,0 L 430.080,224
|
605 |
+
z" data-tags="store" />
|
606 |
+
<glyph unicode="" d="M 512-32l-0.154,256.604c0,141.117-114.545,255.447-255.662,255.447c-141.117,0-255.662-114.412-255.662-255.539l 2.058-256.87L 61.44-32.215
|
607 |
+
l0,256.717 C 61.44,334.49, 146.043,423.639, 256,423.639c 109.978,0, 194.56-89.16, 194.56-199.148L 450.56-32 L 512-32 zM 339.937,60.918c0,0.276-0.297,0.778-0.942,1.72c0,0.266, 0.164,0.461, 0.492,0.635c 0.266,0.143, 0.451,0.307, 0.451,0.635
|
608 |
+
c 8.806,3.635, 16.804,8.090, 23.951,13.414c 7.148,5.345, 11.325,13.169, 13.804,23.511C 377.969,102.031, 378.88,104.817, 378.88,109.066L 378.88,322.601
|
609 |
+
c0,5.151-0.911,10.496-3.963,15.933c-3.031,5.53-6.523,10.476-11.162,14.868c-4.495,4.352-9.431,7.383-15.073,10.301
|
610 |
+
C 343.050,366.592, 337.787,367.36, 332.595,367.36L 317.44,367.36 L 194.56,367.36 l-14.766,0 c-4.874,0-10.117-0.686-15.77-3.43c-5.642-2.734-10.834-5.908-15.524-10.189
|
611 |
+
c-4.7-4.229-8.172-8.858-11.223-14.152C 134.267,334.193, 133.12,329.165, 133.12,323.942l0-216.719 c0-3.615, 0.553-7.455, 2.335-11.366
|
612 |
+
c 1.833-3.983, 3.901-7.7, 6.636-11.141c 2.744-3.564, 5.622-6.769, 8.827-9.636c 3.195-2.888, 6.226-5.243, 9.298-7.045
|
613 |
+
c 1.485-0.625, 4.127-1.577, 7.956-2.775c 3.779-1.219, 5.519-1.946, 5.233-2.519L 110.889-32l 36.465,0 l 45.65,61.44L 318.976,29.44 l 45.588-61.44l 36.925,0
|
614 |
+
L 339.937,60.918z M 204.8,346.88c0,5.632, 4.608,10.24, 10.24,10.24l 81.92,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-10.24 c0-5.632-4.608-10.24-10.24-10.24l-81.92,0 c-5.632,0-10.24,4.608-10.24,10.24L 204.8,346.88 z M 164.495,296.858
|
615 |
+
c 1.362,2.888, 2.427,5.509, 4.547,7.977c 2.161,2.437, 4.321,5.939, 7.199,7.465C 179.118,313.836, 181.77,316.16, 184.812,316.16L 194.56,316.16 l 122.88,0 l 9.267,0
|
616 |
+
c 2.734,0, 5.448-2.202, 8.202-3.359c 2.744-1.229, 5.243-3.717, 7.547-5.827c 2.273-2.12, 3.174-4.833, 4.588-7.26
|
617 |
+
C 348.385,297.339, 348.16,294.328, 348.16,291.594l0-48.374 c0-2.765, 0.133-5.335-1.362-7.936c-1.516-2.662-3.052-4.956-5.509-6.932
|
618 |
+
c-2.447-1.935-4.772-2.437-7.506-3.615C 331.039,223.447, 328.52,224, 325.816,224L 185.723,224 c-0.338,0-1.096-0.952-2.304-0.707
|
619 |
+
c-1.208,0.328-2.15,0.092-2.765,0.399c-5.151,0.901-8.315,3.369-12.288,7.936C 164.424,236.227, 163.84,240.916, 163.84,246.405l0,41.513
|
620 |
+
C 163.84,290.959, 163.144,293.949, 164.495,296.858z M 203.274,99.482c-4.7-4.864-10.588-7.291-17.551-7.291c-6.994,0-12.708,2.427-17.132,7.291
|
621 |
+
c-4.424,4.854-6.615,10.834-6.615,17.807c0,6.39, 2.304,11.93, 6.851,16.63c 4.557,4.731, 10.199,7.096, 16.896,7.096
|
622 |
+
c 6.963,0, 12.841-2.243, 17.551-6.584c 4.721-4.485, 7.086-10.26, 7.086-17.623C 210.36,110.111, 207.995,104.325, 203.274,99.482z M 307.753,99.482
|
623 |
+
c-4.69,4.854-7.055,10.834-7.055,17.807c0,7.025, 2.488,12.667, 7.516,17.152c 5.048,4.342, 10.885,6.584, 17.613,6.584
|
624 |
+
c 6.943,0, 12.657-2.365, 17.060-7.096c 4.434-4.7, 6.646-10.24, 6.646-16.63c0-6.984-2.263-12.964-6.871-17.807
|
625 |
+
c-4.547-4.864-10.332-7.291-17.336-7.291C 318.331,92.191, 312.494,94.618, 307.753,99.482z" data-tags="subway_station" />
|
626 |
+
<glyph unicode="" d="M 122.88,469.76L 215.040,469.76L 215.040,398.080L 122.88,398.080zM 314.604,174.623c-8.94,0-17.644,9.124-17.644,18.125L 296.96,377.6 l 145.275,0 l 59.689-254.751L 501.76,107.735L 501.76-5.478 c0-8.704-7.24-16.282-15.862-16.282
|
627 |
+
L 348.467-21.76 C 339.937-21.76, 337.92-14.182, 337.92-5.478L 337.92,172.8 l-20.48,0 M 197.437,174.418c 8.868,0, 17.603,8.796, 17.603,17.859L 215.040,377.6 L 69.857,377.6 L 10.097,122.706L 10.24,107.264l0-113.183 C 10.24-14.664, 17.48-21.76, 26.092-21.76l 137.267,0
|
628 |
+
C 172.104-21.76, 174.080-14.664, 174.080-5.919L 174.080,172.8 l 20.48,0 M 235.52,377.6L 276.48,377.6L 276.48,203.52L 235.52,203.52zM 296.96,469.76L 399.36,469.76L 399.36,398.080L 296.96,398.080z" data-tags="natural_feature" />
|
629 |
+
<glyph unicode="" d="M 261.673,109.599c 36.874-172.145, 244.931-31.222, 38.298,88.689c 227.738-132.178, 228.28,183.46, 0.461,51.384
|
630 |
+
c 227.82,132.065-44.206,289.946-44.257,25.692c 0.051,264.253-272.015,106.496-44.308-25.692c-227.707,132.198-227.973-183.45-0.195-51.364
|
631 |
+
c-206.746-119.849, 0.84-260.936, 37.724-88.443L 261.673,109.599z M 228.772,223.969c0,15.217, 12.268,27.525, 27.382,27.525
|
632 |
+
c 15.124,0, 27.372-12.308, 27.372-27.525c0-15.196-12.247-27.525-27.372-27.525C 241.050,196.454, 228.772,208.773, 228.772,223.969z" data-tags="florist" />
|
633 |
+
<glyph unicode="" d="M 500.675,324.823L 460.38,8.96L 324.28,8.96 l-40.131,317.44l 166.154,0 l 32.84,113.428L 501.76,434.217l-31.508-109.158L 500.675,324.823zM 264.909,142.080c0,0, 5.089,40.96-65.485,40.96L 87.030,183.040 c-70.472,0-65.485-40.96-65.485-40.96L 264.909,142.080 zM 21.545,49.92c0,0-4.987-40.96, 65.485-40.96l 112.404,0 c 70.574,0, 65.485,40.96, 65.485,40.96L 21.545,49.92 zM 254.351,70.4c 11.551,0, 20.879,11.407, 20.879,25.59c0,14.264-9.329,25.61-20.879,25.61L 31.13,121.6
|
634 |
+
C 19.63,121.6, 10.24,110.254, 10.24,95.99C 10.24,81.807, 19.63,70.4, 31.13,70.4L 254.351,70.4 z" data-tags="food" />
|
635 |
+
<glyph unicode="" d="M-163.84,469.76L-163.84,469.76L-163.84,469.76L-163.84,469.76zM 481.28,387.84L 327.68,387.84 c0,0-10.24-81.92, 10.24-163.84c 8.233-13.722, 28.57-21.115, 51.2-22.989L 389.12,101.12 l-3.41,0 L 348.16,70.4l 112.64,0 l-36.7,30.72L 419.84,101.12 l0,100.639
|
636 |
+
c 21.709,2.816, 41.605,10.383, 51.2,22.241C 491.52,295.68, 481.28,387.84, 481.28,387.84z M 471.040,326.4L 337.92,326.4 l0,51.2 l 133.12,0 L 471.040,326.4 zM 220.16,101.12L 163.84,101.12 l0,87.040 L 276.48,357.12L 10.24,357.12 l 112.64-168.96L 122.88,101.12 L 66.56,101.12 C 58.071,101.12, 51.2,94.239, 51.2,85.76S 58.071,70.4, 66.56,70.4l 153.6,0 c 8.489,0, 15.36,6.881, 15.36,15.36
|
637 |
+
S 228.649,101.12, 220.16,101.12z" data-tags="night_club" />
|
638 |
+
<glyph unicode="" d="M 256,469.76l 72.52-123.965L 471.040,345.764l-71.25-121.754L 471.040,102.216l-142.5-0.020L 256-21.76l-72.53,123.955L 40.96,102.216l 71.25,121.795L 40.96,345.764
|
639 |
+
l 142.52,0.031L 256,469.76z M 163.041,223.898L 209.009,142.080l 93.85,0 l 46.090,81.818L 302.868,305.92l-93.706,0 L 163.041,223.898z M 353.679,142.080l 41.38,0 l-20.675,35.359
|
640 |
+
L 353.679,142.080z M 116.91,142.080l 41.39,0 l-20.705,35.369L 116.91,142.080z M 235.428,346.88l 41.39,0 l-20.695,35.348L 235.428,346.88z M 374.385,270.582L 395.059,305.92l-41.38,0
|
641 |
+
L 374.385,270.582z M 137.595,270.561L 158.29,305.92l-41.39,0 L 137.595,270.561z M 256.123,65.792L 276.818,101.12L 235.418,101.12 L 256.123,65.792z" data-tags="synagogue" />
|
642 |
+
<glyph unicode="" d="M 467.958,232.755l-80.794,136.12C 383.949,374.856, 376.187,377.6, 369.541,377.6L 296.96,377.6 L 296.96,439.040 c0,11.264-9.216,20.48-20.48,20.48l-51.2,0 c-11.264,0-20.48-9.216-20.48-20.48l0-61.44 l-61.030,0
|
643 |
+
c-6.656,0-14.746-2.744-17.961-8.724L 44.698,231.68C 31.375,231.68, 20.48,221.573, 20.48,207.903l0-124.303 C 20.48,69.929, 31.375,60.16, 44.698,60.16L 71.68,60.16 l0-38.707
|
644 |
+
C 71.68,0.932, 85.279-11.52, 105.257-11.52l 12.114,0 C 137.349-11.52, 153.6,0.932, 153.6,21.453L 153.6,60.16 l 204.8,0 l0-38.707 c0-20.521, 17.551-32.973, 37.53-32.973l 12.124,0
|
645 |
+
C 428.032-11.52, 440.32,0.932, 440.32,21.453L 440.32,60.16 l 28.293,0 C 481.925,60.16, 491.52,69.929, 491.52,83.599L 491.52,207.903 C 491.52,221.573, 481.28,232.755, 467.958,232.755z M 87.091,133.325
|
646 |
+
c-16.722,0-30.29,13.906-30.29,31.068c0,17.172, 13.558,31.078, 30.29,31.078s 30.28-13.906, 30.28-31.078
|
647 |
+
C 117.371,147.231, 103.823,133.325, 87.091,133.325z M 105.257,234.24l 55.132,96.020C 163.379,336.384, 171.274,336.64, 177.93,336.64l 157.45,0
|
648 |
+
c 6.656,0, 14.551-0.256, 17.531-6.38L 408.054,234.24L 105.257,234.24 z M 426.209,133.325c-16.712,0-30.28,13.906-30.28,31.068
|
649 |
+
c0,17.172, 13.568,31.078, 30.28,31.078c 16.722,0, 30.29-13.906, 30.29-31.078C 456.499,147.231, 442.931,133.325, 426.209,133.325z" data-tags="taxi_stand" />
|
650 |
+
<glyph unicode="" d="M 499.292,395.735C 496.814,406.876, 496.66,408.32, 471.644,408.32l-25.149,0 l-5.028,13.814c-6.636,20.040-28.938,39.137-51.159,44.708
|
651 |
+
c-12.861,3.215-58.675,3.779-170.486,3C 79.258,468.859, 65.71,468.060, 51.804,461.804C 20.675,447.816, 3.523,412.549, 12.718,381.491
|
652 |
+
c 6.42-21.647, 19.917-37.673, 39.086-46.285c 13.896-6.246, 27.443-6.902, 168.008-7.875c 111.8-0.788, 157.624,0.102, 170.476,3.328
|
653 |
+
c 22.292,5.581, 44.534,25.364, 51.231,45.588c 5.048,15.206, 5.274,15.36, 21.76,14.275l 16.64-1.096l 1.106-52.49l 1.096-52.48l-48.773-11.52
|
654 |
+
c-26.788-6.339-60.344-14.438-74.547-18.012c-14.193-3.564-48.589-11.93-76.431-18.586l-50.627-12.114l-0.010-26.583
|
655 |
+
c-0.010-26.419, 2.304-26.665-13.476-39.854L 204.8,144.527l0-83.149 l0,0L 204.8-21.76 l 34.857,0 L 276.48-21.76 l0,83.139 l0,83.149 l-14.653,13.435
|
656 |
+
c-15.626,13.066-15.34,14.019-14.152,34.12l 1.546,20.664l 18.063,4.495c 9.841,2.488, 41.185,10.107, 69.581,16.978
|
657 |
+
c 28.396,6.851, 77.148,18.616, 108.288,26.153L 501.76,274.053l0,54.559 C 501.76,358.595, 500.644,389.55, 499.292,395.735z M 253.696,22.927
|
658 |
+
c0-8.622-1.628-10.404-10.394-11.315c-11.039-1.126-15.811,4.342-13.455,15.401c 0.922,4.311, 4.721,6.175, 12.585,6.175
|
659 |
+
C 252.426,33.178, 253.696,32.010, 253.696,22.927z" data-tags="painter" />
|
660 |
+
<glyph unicode="" d="M 354.724,92.856c0,0.348-0.399,1.065-1.157,2.212c0,0.328, 0.215,0.625, 0.584,0.829c 0.358,0.215, 0.584,0.44, 0.584,0.829
|
661 |
+
c 10.762,4.444, 20.541,9.943, 29.297,16.425c 8.745,6.554, 14.602,16.118, 17.623,28.764c 0.317,1.495, 1.116,4.905, 2.202,10.117L 403.855,413.368
|
662 |
+
c0,6.308-1.884,12.851-5.601,19.507c-3.717,6.769-8.356,12.82-13.978,18.196c-5.56,5.325-11.756,9.841-18.678,13.425
|
663 |
+
C 358.676,468.019, 352.082,469.76, 345.743,469.76L 158.71,469.76 c-5.97,0-12.411-1.638-19.302-4.987c-6.912-3.359-13.251-7.649-18.985-12.872
|
664 |
+
c-5.755-5.171-10.516-11.059-14.234-17.541c-3.727-6.605-5.601-12.974-5.601-19.354l0-265.226 c0-4.465, 1.178-9.124, 3.348-13.957
|
665 |
+
c 2.253-4.854, 5.038-9.39, 8.376-13.629c 3.338-4.362, 7.014-8.264, 10.926-11.776s 7.711-6.42, 11.448-8.643
|
666 |
+
c 1.802-0.758, 5.11-1.925, 9.8-3.41c 4.588-1.475, 6.738-2.57, 6.39-3.287L 74.322-21.105l 44.657,0 l 55.88,80.988l 154.163,0 l 55.818-80.988L 430.080-21.105
|
667 |
+
L 354.724,92.856z M 207.811,447.447c0,1.874, 0.891,3.789, 2.796,5.888c 1.833,2.038, 3.686,3.021, 5.581,3.021l 71.496,0
|
668 |
+
c 0.717,0, 2.263-0.717, 4.485-2.181c 2.202-1.495, 3.318-2.98, 3.318-4.465l0-27.361 c0-1.874-0.942-3.594-2.775-5.018
|
669 |
+
c-1.884-1.536-3.584-2.314-5.018-2.314l-72.038,0 c-1.167,0.778-1.874,1.331-2.273,1.772c-1.075,0.717-2.324,1.7-3.615,3.082
|
670 |
+
c-1.311,1.249-1.956,2.621-1.956,4.106L 207.811,447.447 z M 135.752,370.934c0,3.717, 0.881,7.363, 2.529,10.916c 1.659,3.533, 3.82,6.758, 6.42,9.779
|
671 |
+
c 2.621,2.99, 5.693,5.335, 9.196,7.209c 3.564,1.884, 7.219,2.806, 10.936,2.806l 173.701,0 c 3.297,0, 6.656-0.778, 10.004-2.191
|
672 |
+
c 3.359-1.495, 6.42-3.584, 9.236-6.164C 360.581,390.707, 362.783,387.84, 364.483,384.87c 1.659-2.908, 2.478-6.103, 2.478-9.452l0-59.218
|
673 |
+
c0-3.359-0.901-6.533-2.765-9.728c-1.864-3.246-4.28-6.052-7.26-8.468c-3.021-2.376-6.124-4.342-9.503-5.775
|
674 |
+
c-3.338-1.587-6.697-2.253-10.025-2.253L 165.949,289.976 c-0.41,0-1.341,0.174-2.826,0.502c-1.475,0.389-2.621,0.758-3.369,1.157
|
675 |
+
c-6.298,1.085-11.868,4.454-16.722,10.056c-4.854,5.591-7.281,11.715-7.281,18.401L 135.752,370.934 z M 187.453,140.268
|
676 |
+
c-5.765-5.949-12.984-8.919-21.504-8.919c-8.571,0-15.565,2.97-20.992,8.919c-5.386,5.939-8.079,13.251-8.079,21.821
|
677 |
+
c0,7.813, 2.806,14.582, 8.407,20.337c 5.571,5.786, 12.462,8.714, 20.664,8.714c 8.52,0, 15.729-2.765, 21.504-8.079
|
678 |
+
c 5.775-5.458, 8.653-12.554, 8.653-21.555C 196.106,153.303, 193.229,146.207, 187.453,140.268z M 315.341,140.268
|
679 |
+
c-5.755,5.939-8.684,13.251-8.684,21.821c0,8.581, 3.062,15.514, 9.216,20.972c 6.164,5.325, 13.322,8.079, 21.545,8.079
|
680 |
+
c 8.499,0, 15.524-2.918, 20.92-8.714c 5.376-5.755, 8.12-12.534, 8.12-20.337c0-8.571-2.816-15.882-8.397-21.821
|
681 |
+
c-5.622-5.949-12.657-8.919-21.258-8.919C 328.264,131.348, 321.096,134.318, 315.341,140.268z" data-tags="train_station" />
|
682 |
+
<glyph unicode="" d="M 256,260.116c 28.713,0, 52.818-19.456, 59.628-45.763c 8.561-32.983, 7.404-69.13, 45.036-87.9c 33.403-11.366, 46.039-25.651, 46.039-63.949
|
683 |
+
c0-30.566-26.153-63.058-59.873-67.113c-37.704-5.663-67.052,1.741-90.839,15.299c-23.788-13.558-53.146-20.972-90.798-15.299
|
684 |
+
c-33.741,4.055-59.884,36.659-59.884,67.113c0,37.478, 13.486,53.34, 46.828,64.205c 41.032,20.961, 35.523,57.702, 44.677,89.262
|
685 |
+
C 204.216,241.469, 227.912,260.116, 256,260.116L 256,260.116z M 443.976,282.89c-10.168,8.837-51.671-25.661-64.727-42.721
|
686 |
+
c-7.936-9.103-12.872-21.617-12.872-35.42c0-27.761, 19.866-50.268, 44.308-50.268c 18.596,0, 34.509,12.933, 41.093,31.324
|
687 |
+
C 464.568,218.88, 465.275,264.397, 443.976,282.89L 443.976,282.89z M 68.004,282.89C 46.735,264.397, 47.421,218.88, 60.232,185.805
|
688 |
+
c 6.584-18.391, 22.487-31.324, 41.073-31.324c 24.463,0, 44.308,22.508, 44.308,50.268c0,13.804-4.925,26.317-12.861,35.42
|
689 |
+
C 119.685,257.229, 78.193,291.727, 68.004,282.89L 68.004,282.89z M 310.63,464.21c 103.301-17.531, 96.051-191.508, 13.343-177.49
|
690 |
+
c-23.859,4.055-41.574,25.784-44.268,51.743C 276.972,364.861, 270.817,470.948, 310.63,464.21L 310.63,464.21z M 201.37,464.21
|
691 |
+
c 39.823,6.748, 33.659-99.338, 30.925-125.737c-2.693-25.969-20.388-47.688-44.247-51.743C 105.318,272.691, 98.079,446.679, 201.37,464.21z" data-tags="pet_store" />
|
692 |
+
<glyph unicode="" d="M 461.844,376.781c 5.622,5.622, 13.537,11.735, 21.617,19.108l 7.465,6.257l-20.347,22.835L 463.933,418.765
|
693 |
+
c-28.119-25.549-45.036-40.991-53.299-72.643c-8.202-31.468-8.53-63.324-7.67-93.102c 0.901-30.7, 2.058-50.954, 10.639-73.544l 3.236-8.325
|
694 |
+
c 8.233-20.716, 20.695-52.009, 20.695-92.262c0-48.63-19.702-73.298-58.552-73.298c-35.348,0-54.415,23.593-56.648,70.205
|
695 |
+
c-1.014,20.654, 4.782,46.152, 10.875,73.093c 5.151,22.743, 10.455,46.275, 13.066,71.25c 2.888,27.535-0.727,47.217-11.305,59.034
|
696 |
+
C 321.393,294.339, 300.493,295.68, 282.081,295.68L 276.48,295.68 L 276.48,437.617 C 276.48,449.905, 267.561,459.52, 255.345,459.52L 43.981,459.52 C 31.785,459.52, 20.48,449.905, 20.48,437.617L 20.48-11.52 l 256,0 L 276.48,264.96 l 5.612,0
|
697 |
+
c 12.595,0, 25.641-1.413, 30.075-6.359c 2.376-2.662, 6.021-11.284, 3.615-34.54c-2.427-23.183-7.567-46.111-12.524-67.953
|
698 |
+
c-6.564-29.071-12.79-56.719-11.561-81.644c 3.021-63.273, 34.857-99.635, 87.286-99.635c 55.88,0, 89.242,38.892, 89.242,104.12
|
699 |
+
c0,46.172-14.285,82.145-22.856,103.7l-3.092,7.854c-6.164,16.271-7.547,31.355-8.397,57.672c 9.861,0.225, 21.801,0.461, 27.167,0.461
|
700 |
+
c 12.278,0, 18.452,7.199, 21.084,19.671c 1.536,7.27-0.84,16.804-0.84,34.109l0,4.588 C 481.28,352.748, 474.286,365.814, 461.844,376.781z M 245.76,285.44L 51.2,285.44 L 51.2,418.56 l 194.56,0
|
701 |
+
L 245.76,285.44 z M 450.56,302.377c0-8.94, 2.355-17.49, 2.058-22.927c-6.124-0.092-13.169-0.256-20.337-0.42c 0.266,19.753, 2.458,39.864, 7.506,59.228
|
702 |
+
c 1.372,5.161, 0.963,9.708, 3.031,13.947C 448.276,346.952, 450.56,339.077, 450.56,306.985L 450.56,302.377 z" data-tags="gas_station" />
|
703 |
+
<glyph unicode="" d="M 258.478,458.609L 10.24,244.48l 61.44,0 l0-256 l 368.64,0 L 440.32,244.48 l 61.44,0 L 258.478,458.609z M 348.16,172.8l-71.68,0 l0-123.781 L 276.009,49.92l-48.896,0 L 225.28,49.019L 225.28,172.8 l-61.44,0 l0,40.96 l 61.44,0 l0,92.16 l 51.2,0 l0-92.16 l 71.68,0 L 348.16,172.8 z" data-tags="funeral_home" />
|
704 |
+
<glyph unicode="" d="M 256,469.76C 154.235,469.76, 71.68,388.772, 71.68,288.881L 71.68-21.76 l 368.64,0 L 440.32,288.881 C 440.32,388.772, 357.827,469.76, 256,469.76z" data-tags="cemetery" />
|
705 |
+
<glyph unicode="" d="M 323.277,171.192c0,0-19.22,48.056-37.868,93.942c0,0-6.246,27.576-1.362,64.174c0,0, 13.271,55.941, 5.888,82.391
|
706 |
+
c0,0-11.336,22.661-34.888,24.238c0,0-32.502-2.294-38.574-33.915c0,0-1.587-18.227, 3.461-39.26c0,0, 18.196-69.601-1.761-115.026
|
707 |
+
c0,0-27.843-58.173-30.054-71.496c0,0-10.424-56.996-0.164-98.97c0,0, 21.545-71.813, 37.315-95.601c0,0, 31.99-8.161, 59.433,0.727
|
708 |
+
c0,0, 32.901,53.268, 39.475,101.407C 324.198,83.804, 332.411,134.666, 323.277,171.192zM 425.769,205.025c0,0-19.21,48.067-37.939,93.932c0,0-6.236,27.587-1.372,64.123c0,0, 13.292,55.941, 5.888,82.452
|
709 |
+
c0,0-11.284,22.661-34.857,24.218c0,0-32.512-2.284-38.574-33.894c0,0-1.597-18.237, 3.512-39.27c0,0, 18.207-69.663-1.812-115.016
|
710 |
+
c0,0-4.321-9.124-9.708-20.818c 17.48-42.957, 34.273-84.92, 34.273-84.92l 0.266-0.727l 0.174-0.717c 9.605-38.205, 1.434-89.569, 1.137-91.474
|
711 |
+
c-3.113-22.876-11.735-46.264-20.244-65.331c 0.379-0.686, 0.85-1.475, 1.26-2.079c0,0, 31.959-8.172, 59.433,0.778
|
712 |
+
c0,0, 32.881,53.197, 39.465,101.366C 426.67,117.658, 434.913,168.509, 425.769,205.025zM 196.864,252.099c 1.085,2.386, 1.987,5.018, 2.836,7.598c-4.997,12.411-10.445,25.743-15.821,39.035c0,0-6.308,27.648-1.372,64.174
|
713 |
+
c0,0, 13.281,55.89, 5.908,82.401c0,0-11.336,22.671-34.898,24.228c0,0-32.532-2.345-38.564-33.833c0,0-1.577-18.309, 3.523-39.281
|
714 |
+
c0,0, 18.207-69.642-1.812-115.067c0,0-27.843-58.184-30.065-71.496c0,0-10.435-57.006-0.164-98.97c0,0, 21.545-71.823, 37.304-95.549
|
715 |
+
c0,0, 32-8.233, 59.433,0.737c0,0, 0.635,0.993, 1.71,2.847c-10.035,26.399-18.248,53.576-18.872,55.767c-10.67,43.745-0.399,101.079,0,103.27
|
716 |
+
C 168.325,192.133, 192.215,242.473, 196.864,252.099z" data-tags="bowling_alley" />
|
717 |
+
<glyph unicode="" d="M 83.446,315.525l 62.054,0 l-0.543-36.608l-61.512-55.357L 83.446,315.525 L 83.446,315.525zM 255.048,335.79L 10.24,119.869L 36.045,90.88l 220.006,194.089L 476.017,90.88L 501.76,119.869L 256.993,335.79L 256,336.64L 255.048,335.79z" data-tags="roofing_contractor" />
|
718 |
+
<glyph unicode="" d="M 359.434,372.951c 19.241,0, 34.806,16.005, 34.806,35.789c0,19.661-15.575,35.676-34.806,35.676c-19.098,0-34.683-16.005-34.683-35.676
|
719 |
+
C 324.751,388.956, 340.326,372.951, 359.434,372.951zM 385.3,364.943l-50.698,0 l-86.405,88.893c-6.748,7.301-17.961,7.649-25.068,0.594c-7.096-6.943-7.444-18.483-0.676-25.784
|
720 |
+
l 90.296-93.010l0-308.244 c0-11.182, 8.704-20.122, 19.456-20.122c 10.875,0, 19.569,8.94, 19.569,20.122L 351.775,194.58 l 15.79,0 l 0.123-167.199
|
721 |
+
c0-11.182, 8.806-20.122, 19.558-20.122c 10.783,0, 19.466,8.94, 19.466,20.122L 406.6,335.616l 90.307,93.010c 6.748,7.301, 6.4,18.842-0.696,25.784
|
722 |
+
c-7.086,7.055-18.309,6.717-25.068-0.594L 385.3,364.943zM 201.605,228.956c-5.263,5.54-12.483,8.827-20.48,8.827l-72.694,0 c-8.008,0-15.217-3.297-20.367-8.827l-72.919-75.008
|
723 |
+
c-6.748-7.301-6.513-18.831, 0.584-25.784c 7.086-6.943, 18.432-6.707, 25.068,0.594l 56.535,58.163l0-77.701 L 33.925,109.22
|
724 |
+
c-11.663,0-21.074-9.646-21.074-21.668c0-6.236, 2.294-11.776, 6.42-15.78l 71.414-73.462c 6.298-9.544, 18.657-12.605, 28.508-6.707
|
725 |
+
c 10.404,6.113, 13.855,19.651, 7.895,30.239l-40.745,41.81l 0.799-0.113l 116.972,0 l-40.858-41.8c-5.837-10.598-2.406-24.136, 7.885-30.249
|
726 |
+
c 9.851-5.898, 22.333-2.847, 28.631,6.697l 71.414,73.462c 4.106,4.014, 6.41,9.554, 6.41,15.78c0,12.022-9.39,21.658-21.053,21.658l-63.304,0
|
727 |
+
l0,76.892 l 55.511-57.334c 6.758-7.311, 17.961-7.547, 25.057-0.594c 7.096,6.943, 7.342,18.483, 0.584,25.774L 201.605,228.956zM 145.531,245.443c 19.108,0, 34.56,15.995, 34.56,35.676c0,19.784-15.452,35.676-34.56,35.676c-19.128,0-34.703-15.892-34.703-35.676
|
728 |
+
C 110.828,261.437, 126.413,245.443, 145.531,245.443z" data-tags="physiotherapist" />
|
729 |
+
<glyph unicode="" d="M 117.371,469.76c-13.957,0-25.211-11.54-25.211-25.866l0-25.866 l0-25.876 l0-155.208 l0-232.817
|
730 |
+
c0-12.923, 12.605-25.876, 25.211-25.876c 12.595,0, 25.201,12.964, 25.201,25.876l0,265.155 c 8.612,3.758, 16.988,6.472, 25.211,6.472
|
731 |
+
c 50.412,0, 124.774-64.686, 176.445-64.686c 22.026,0, 53.565,8.919, 75.612,25.876l0,181.084 c-25.006-19.241-50.34-38.81-75.612-38.81
|
732 |
+
c-50.412,0-125.86,64.676-176.445,64.676c-8.499,0-16.794-1.556-25.211-3.236l0,3.236 C 142.572,458.22, 131.318,469.76, 117.371,469.76z" data-tags="embassy" />
|
733 |
+
<glyph unicode="" d="M 79.288,256.768l 35.686,0 l0-229.376 l 53.545,0 L 168.52,224 l 53.545,0 l0-196.608 l 53.535,0 L 275.599,224 l 53.555,0 l0-196.608 l 53.545,0 L 382.7,256.768 l 35.676,0 c 9.861,0, 17.859,7.332, 17.859,16.384
|
734 |
+
c0,5.468-2.949,10.281-7.444,13.251l 0.031,0.031l-0.266,0.154c-0.154,0.102-0.317,0.184-0.461,0.276l-170.342,88.156L 257.751,400.845
|
735 |
+
c 31.457-14.459, 57.354,10.445, 98.15-4.526L 355.901,453.366 c-40.817,14.971-66.703-9.912-98.15,4.536L 257.751,461.568 c0,4.536-3.983,8.192-8.919,8.192
|
736 |
+
S 239.923,466.104, 239.923,461.568l0-86.548 L 69.581,286.884c-0.154-0.092-0.307-0.195-0.461-0.276l-0.256-0.174l0-0.031
|
737 |
+
c-4.475-2.97-7.414-7.793-7.414-13.251C 61.44,264.1, 69.437,256.768, 79.288,256.768zM 97.126,10.998L 61.44-21.76L 436.244-21.76L 400.538,10.998 z" data-tags="city_hall" />
|
738 |
+
<glyph unicode="" d="M 421.499,224L 93.614,224 c-9.554,0-17.418,8.212-17.418,17.551c0,1.556, 0.287,3.318, 0.604,4.731l 17.449,121.846
|
739 |
+
C 95.734,376.044, 102.861,377.6, 111.391,377.6l 292.383,0 c 8.468,0, 15.657-1.423, 17.121-9.308l 17.449-124.068c 0.266-1.444, 0.614-2.294, 0.614-3.85
|
740 |
+
C 438.948,231.035, 431.043,224, 421.499,224z M 408.381,87.347c-18.463,0-33.434,14.531-33.434,32.645c0,17.992, 14.971,32.502, 33.434,32.502
|
741 |
+
c 18.34,0, 33.341-14.51, 33.341-32.502C 441.723,101.878, 426.721,87.347, 408.381,87.347z M 106.291,87.347c-18.33,0-33.311,14.531-33.311,32.645
|
742 |
+
c0,17.992, 14.981,32.502, 33.311,32.502c 18.514,0, 33.464-14.51, 33.464-32.502C 139.756,101.878, 124.805,87.347, 106.291,87.347z M 163.84,449.28l 204.8,0 l0-30.72 L 163.84,418.56
|
743 |
+
C 143.36,418.56, 143.36,449.28, 163.84,449.28z M 452.628,402.278c-5.98,28.805-23.45,40.407-51.948,51.999c-28.447,11.551-94.372,25.395-143.954,25.395
|
744 |
+
c-49.797,0-116.060-13.855-144.538-25.395C 83.702,442.675, 66.519,431.084, 60.59,402.278L 40.96,241.93L 40.96,19.2 l 30.72,0 l0-20.48 c0-40.96, 51.2-40.96, 51.2,0l0,20.48 l 256,0 l0-20.48 c0-40.96, 61.44-40.96, 61.44,0l0,20.48 l 30.72,0
|
745 |
+
L 471.040,241.93 L 452.628,402.278z" data-tags="bus_station" />
|
746 |
+
<glyph unicode="" d="M 175.104,213.76l 152.269,0 l-50.104,133.12l-51.948,0 L 175.104,213.76z M 92.16,346.88L 92.16,387.84 l 327.68,0 l0-40.96 l-80.599,0 l 50.227-133.12L 512,213.76 l0-40.96 L 408.197,172.8 l 58.665-143.36l-56.924,0 l-58.655,143.36L 161.608,172.8
|
747 |
+
L 103.219,29.44L 46.285,29.44 l 58.337,143.36L0,172.8 l0,40.96 l 123.31,0 l 50.186,133.12L 92.16,346.88 z" data-tags="park" />
|
748 |
+
<glyph unicode="" d="M 471.040,152.32l0-81.92 l 40.96,0 L 512,193.28 L 40.96,193.28 L 40.96,360.602 c0,11.5-8.899,20.91-20.48,20.91l0,0c-11.54,0-20.48-9.4-20.48-20.91L0,70.4 l 40.96,0 l0,81.92 L 471.040,152.32 zM 105.779,276.716c 20.9,0, 37.755,16.927, 37.755,37.827c0,20.756-16.855,37.632-37.755,37.632c-20.869,0-37.714-16.865-37.714-37.632
|
749 |
+
C 68.065,293.652, 84.91,276.716, 105.779,276.716zM 512,224l-0.143,49.879c-0.133,16.445-13.926,26.808-30.095,28.764L 185.242,331.653c-0.532,0.143-1.71,0.092-2.202,0.092
|
750 |
+
c-10.301,0-19.2-8.54-19.2-18.79L 163.84,254.72 L 87.521,254.72 c-10.353,0-18.698-5.12-18.698-15.35C 68.823,228.977, 77.169,224, 87.521,224L 512,224 z" data-tags="lodging" />
|
751 |
+
<glyph unicode="" d="M 61.44-6.4c0-12.626, 7.864-20.48, 20.48-20.48c 12.646,0, 20.48,7.854, 20.48,20.48L 102.4,183.040 l 20.48,0 l0-189.44 c0-12.605, 7.854-20.48, 20.48-20.48c 12.626,0, 20.48,7.854, 20.48,20.48L 163.84,316.16 l 10.24,0 l0-115.855
|
752 |
+
c0-24.525, 30.781-24.525, 30.72,0L 204.8,324.751 C 204.8,351.846, 185.283,367.36, 153.6,367.36L 71.68,367.36 c-28.877,0-51.2-12.483-51.2-41.851L 20.48,193.28 c0-20.48, 30.72-20.48, 30.72,0L 51.2,316.16 l 10.24,0 L 61.44-6.4 zM 470.149,147.2l-60.508,166.267c-0.225,0.522-0.348,1.106-0.348,1.71c0,2.427, 2.038,4.393, 4.577,4.393
|
753 |
+
c 2.161,0, 3.973-1.444, 4.454-3.369L 459.459,208.64c 2.734-6.154, 13.978-10.24, 21.371-10.24c 9.882,0, 10.906,19.405, 10.691,20.48l-41.134,103.496
|
754 |
+
C 446.812,346.143, 422.81,367.36, 395.418,367.36L 341.811,367.36 c-27.392,0-53.166-21.217-56.75-44.984l-39.291-104.776c-0.891-2.038,0-19.845, 10.691-19.845
|
755 |
+
c 8.305,0, 19.354,3.215, 21.361,10.557l 39.68,108.175c 0.635,1.7, 2.345,2.99, 4.321,2.99c 2.519,0, 4.557-1.925, 4.557-4.342
|
756 |
+
c0-0.553-0.092-1.065-0.276-1.546l-58.962-166.41c-0.123-0.492,0-12.288,0-12.79c0-3.543, 8.561-12.8, 12.268-12.8L 317.44,121.59 l0-128.973
|
757 |
+
c0-10.65, 9.38-19.507, 20.48-19.507s 20.48,8.868, 20.48,19.507L 358.4,126.812 c0,2.898, 20.48,2.806, 20.48-0.092l0-133.12 c0-10.65, 9.39-20.48, 20.48-20.48c 11.121,0, 20.48,9.841, 20.48,20.48L 419.84,121.6 l 39.619,0
|
758 |
+
c 3.707,0, 10.691,9.257, 10.691,12.8C 470.149,135.219, 470.446,146.493, 470.149,147.2zM 69.12,427.52A42.24,42.24 180 1 1 153.6,427.52A42.24,42.24 180 1 1 69.12,427.52zM 325.12,427.52A42.24,42.24 180 1 1 409.6,427.52A42.24,42.24 180 1 1 325.12,427.52z" data-tags="toilet" />
|
759 |
+
<glyph unicode="" d="M 10.24,224A245.76,245.76 180 1 1 501.76,224A245.76,245.76 180 1 1 10.24,224z" data-tags="circle" />
|
760 |
+
<glyph unicode="" d="M 501.76,60.16c0-45.056-36.864-81.92-81.92-81.92L 92.16-21.76 c-45.056,0-81.92,36.864-81.92,81.92L 10.24,387.84 c0,45.056, 36.864,81.92, 81.92,81.92l 327.68,0 c 45.056,0, 81.92-36.864, 81.92-81.92L 501.76,60.16 z" data-tags="square-rounded" />
|
761 |
+
<glyph unicode="" d="M 10.24,469.76L 501.76,469.76L 501.76-21.76L 10.24-21.76z" data-tags="square" />
|
762 |
+
<glyph unicode="" d="M 419.84,70.4L 419.84,418.56 c0,22.528-18.432,40.96-40.96,40.96L 133.12,459.52 c-22.528,0-40.96-18.432-40.96-40.96l0-389.12 c0-22.528, 18.432-40.96, 40.96-40.96l 245.76,0 c 19.026,0, 40.96,0, 40.96,20.48c0,4.26,0,0,0,10.24L 143.36,19.2 c-11.264,0-20.48,9.216-20.48,20.48
|
763 |
+
l0,30.72 L 419.84,70.4 z M 143.36,377.6c0,5.632, 4.608,10.24, 10.24,10.24l 204.8,0 c 5.632,0, 10.24-4.608, 10.24-10.24l0-20.48 c0-5.632-4.608-10.24-10.24-10.24L 153.6,346.88 c-5.632,0-10.24,4.608-10.24,10.24L 143.36,377.6 z M 143.36,295.68c0,5.632, 4.608,10.24, 10.24,10.24l 204.8,0
|
764 |
+
c 5.632,0, 10.24-4.608, 10.24-10.24l0-20.48 c0-5.632-4.608-10.24-10.24-10.24L 153.6,264.96 c-5.632,0-10.24,4.608-10.24,10.24L 143.36,295.68 z" data-tags="book_store" />
|
765 |
+
<glyph unicode="" d="M 378.88,408.32l-40.96,0 L 133.12,408.32 L 92.16,408.32 l0-40.96 l0-102.4 l0-133.12 c0-22.528, 18.432-40.96, 40.96-40.96l 204.8,0 c 22.528,0, 40.96,18.432, 40.96,40.96l0,51.2 c 62.218,0, 112.64,50.432, 112.64,112.64S 441.098,408.32, 378.88,408.32z M 378.88,234.24l0,30.72 l0,92.16
|
766 |
+
c 33.935,0, 61.44-27.505, 61.44-61.44C 440.32,261.755, 412.815,234.24, 378.88,234.24zM 20.48,70.4l0-23.562 C 20.48,27.423, 41.667,19.2, 67.584,19.2L 444.416,19.2 c 25.907,0, 47.104,8.223, 47.104,27.638L 491.52,70.4 L 20.48,70.4 z" data-tags="cafe" />
|
767 |
+
<glyph unicode="" d="M 171.858,387.84c 22.723,0, 40.96,18.483, 40.96,40.96c0,22.723-18.237,40.96-40.96,40.96c-22.589,0-40.96-18.248-40.96-40.96C 130.898,406.323, 149.268,387.84, 171.858,387.84zM 200.776,12.288c-69.755,0-126.321,57.354-126.321,128.379c0,38.881, 17.295,73.574, 44.278,97.167l-2.243,40.161
|
768 |
+
C 71.311,249.303, 40.96,198.83, 40.96,140.667C 40.96,51.046, 112.466-21.76, 200.776-21.76C 265.759-21.76, 323.195,24.023, 348.16,80.64l-24.33,33.505
|
769 |
+
C 311.808,56.136, 261.468,12.288, 200.776,12.288zM 450.56,90.88l-20.48,0 l-81.92,112.64c-4.434,7.793-20.48,30.72-40.96,30.72l-92.16,0 l0,40.96 l 81.92,0 c 10.609,0, 22.057,4.516, 22.057,15.421
|
770 |
+
C 319.017,301.445, 307.866,305.92, 296.96,305.92l-81.92,0 l0,40.96 c-1.505,22.712-20.48,30.72-40.858,30.249C 153.6,376.658, 143.36,367.36, 143.36,346.88l0-143.36 c 1.946-22.999, 18.504-30.72, 40.96-30.72l 122.88,0 l 71.68-92.16
|
771 |
+
c 4.618-7.639, 20.48-30.72, 20.48-30.72l 51.2,0 c 10.568,0, 20.48,9.605, 20.48,20.48C 471.040,81.224, 461.455,90.88, 450.56,90.88z" data-tags="wheelchair" />
|
772 |
+
<glyph unicode="" d="M 174.080,264.96l 27.464,0 C 209.777,264.96, 215.040,277.064, 215.040,285.235l0,86.467 C 215.040,379.884, 209.777,377.6, 201.544,377.6L 174.080,377.6 L 174.080,264.96 zM 174.080,101.12l 27.464,0 C 209.777,101.12, 215.040,91.617, 215.040,83.425l0-86.446 c0-8.131-5.263-18.739-13.496-18.739L 174.080-21.76 L 174.080,101.12 zM 137.83,183.040c-0.236,79.022, 14.623,81.92, 23.091,81.92C 161.853,264.96, 163.84,264.96, 163.84,264.96L 163.84,377.6 c0,0-2.683,0-3.502,0C 145.254,377.6, 71.68,352.809, 71.68,177.93
|
773 |
+
C 71.68,3.041, 145.254-21.76, 160.338-21.76C 161.157-21.76, 163.84-21.76, 163.84-21.76L 163.84,101.12 c0,0-1.987,0-2.918,0C 152.453,101.12, 138.056,104.059, 137.83,183.040zM 237.527,353.239c 4.987-5.97, 7.649-13.517, 7.649-21.289c0-7.772-2.662-15.319-7.649-21.299l 16.353-13.455
|
774 |
+
c 7.997,9.748, 12.431,22.098, 12.431,34.755c0,12.646-4.434,25.016-12.431,34.755L 237.527,353.239zM 290.099,258.376c 17.859,19.558, 27.73,44.913, 27.73,71.434c0,26.399-9.748,51.753-27.617,71.25l-15.903-13.865
|
775 |
+
c 14.387-15.667, 22.395-36.024, 22.395-57.385c0-21.412-7.997-41.841-22.63-57.569L 290.099,258.376zM 326.287,219.556c 27.74,29.297, 43.059,67.707, 43.059,108.042c0,40.212-15.186,78.51-42.701,107.807l-15.667-14.275
|
776 |
+
c 23.9-25.364, 37.14-58.614, 37.14-93.542c0-35.052-13.24-68.352-37.376-93.768L 326.287,219.556zM 362.619,180.726c 37.478,39.117, 58.143,90.522, 58.143,144.722c0,54.016-20.521,105.267-57.805,144.312l-15.299-14.623
|
777 |
+
c 33.526-35.103, 51.978-81.172, 51.978-129.69c0-48.742-18.565-94.935-52.326-130.017L 362.619,180.726z" data-tags="volume-control-telephone" />
|
778 |
+
<glyph unicode="" d="M 367.411,44.155c-3.318-4.506-4.874-5.458-9.021-11.274c-6.902-8.909, 1.894-22.436, 6.277-20.306
|
779 |
+
c 5.11,1.915, 8.428,12.114, 14.008,15.442c 2.857,1.536, 10.455,12.698, 17.572,20.285c 5.233,5.949, 9.032,8.561, 14.008,14.725
|
780 |
+
c 8.428,10.455, 10.209,18.401, 17.572,29.563c 4.516,5.816, 7.731,7.598, 11.878,14.725c 21.965,41.554, 15.544,60.18, 36.567,89.856
|
781 |
+
c 6.4,8.776, 13.64,10.916, 23.849,16.138c 9.503,69.222-21.965,107.919-21.719,108.042c-26.481-15.432-40.724-21.729-68.147-20.296
|
782 |
+
c-10.322,0.113-15.79,4.506-25.989,3.564c-9.513-0.358-14.356-3.912-23.869-7.127c-14.592-4.506-22.548-8.54-37.857-13.292
|
783 |
+
c-9.738-2.734-15.913-2.847-26.010-6.287c-8.663-3.686-4.506-0.717-10.557-7.721c-7.844-8.673-5.939-15.432-13.302-30.28
|
784 |
+
c-9.144-19.466-8.069-22.077-2.847-24.453c-3.441-9.964-4.27-16.62-3.441-27.423c 0.952-8.192-2.499-13.885, 6.287-20.419
|
785 |
+
c 11.991-8.899, 37.161-29.798, 43.571-30.147c 9.615,0.348, 37.632-0.717, 51.866,9.144c 3.205,2.007, 4.157,4.045, 1.434-3.564
|
786 |
+
c-0.594-0.963-35.502-28.14-39.291-28.017c-44.401-1.434-29.563-3.922-32.287-2.857c-2.263,0-23.634,26.132-36.567,16.865
|
787 |
+
c-4.874-2.97-7.127-5.816-9.021-11.172c 1.659-3.441, 9.492-8.888, 16.742-13.414c 10.455-6.646, 11.397-13.65, 21.842-16.138
|
788 |
+
c 12.708-2.857, 26.235-0.952, 34.314-2.028c 3.092-0.829, 31.099,7.373, 48.548,16.742c 16.159,8.315-22.19-16.015-31.57-28.006
|
789 |
+
c-28.262-8.899-20.296-9.257-33.72-11.991c-12.462-2.847-11.868-2.13-20.419-4.874c-8.776-2.13-16.015-14.131-7.711-20.419
|
790 |
+
c 4.987-4.147, 20.541,1.669, 35.85,2.13c 6.769,0.123, 34.417,12.831, 40.724,16.159c 15.667,8.417, 27.187,20.060, 36.454,26.706
|
791 |
+
C 406.221,91.638, 378.921,58.163, 367.411,44.155L 367.411,44.155z M 281.815,214.753c 9.38-7.475, 14.131-29.798, 14.008-29.563
|
792 |
+
c 17.213-5.458, 28.129-16.855, 28.129-16.855c 26.481,14.725, 27.085,8.079, 38.595,16.855c 9.503,6.533, 9.032,8.55, 14.008,25.989
|
793 |
+
c 4.628,14.141-11.756,12.831-25.293,38.595c-23.501-8.899-36.198-4.874-44.155-4.157C 303.544,246.088, 304.128,231.731, 281.815,214.753L 281.815,214.753
|
794 |
+
zM 144.22,397.926c 3.328,4.751, 4.864,5.704, 9.144,11.284c 6.646,9.144-2.017,22.671-6.298,21.012
|
795 |
+
c-5.222-2.376-8.54-12.585-14.838-16.148c-2.263-1.3-9.851-12.462-16.855-20.306c-5.222-5.704-9.021-8.315-14.008-14.838
|
796 |
+
c-8.54-10.086-10.209-18.043-17.572-28.733c-4.506-6.4-7.834-8.069-11.878-15.432c-21.955-41.318-15.667-59.945-36.567-89.16
|
797 |
+
c-6.4-9.38-13.65-11.397-23.859-16.855c-9.492-69.1, 21.852-107.684, 21.729-107.448c 26.47,15.094, 40.602,21.381, 68.147,20.429
|
798 |
+
c 10.322-0.604, 15.79-4.987, 25.999-4.27c 9.503,0.594, 14.367,4.147, 23.859,7.004c 14.602,4.864, 22.559,8.899, 37.161,13.414
|
799 |
+
c 10.445,2.97, 16.62,3.092, 26.706,7.014c 8.673,3.195, 4.516,0.225, 10.568,7.014c 7.711,8.899, 5.939,15.657, 12.585,30.136
|
800 |
+
c 9.851,19.845, 8.786,22.436, 3.564,24.576c 3.328,10.209, 4.27,16.742, 3.441,27.423c-1.065,8.315, 2.499,14.131-6.287,20.296
|
801 |
+
c-11.991,9.267-37.161,30.157-43.448,30.28c-9.738-0.123-37.755,0.952-51.999-8.428c-3.205-2.488-4.157-4.506-1.423,2.734
|
802 |
+
c 0.594,1.3, 35.502,28.488, 39.291,28.846c 44.401,0.952, 29.563,3.441, 32.297,2.13c 2.253,0.236, 23.624-25.876, 36.567-16.855
|
803 |
+
c 4.741,3.195, 7.117,6.052, 9.144,11.151c-1.782,3.676-9.615,9.155-16.855,13.302c-10.445,6.994-11.51,13.998-21.842,16.261
|
804 |
+
c-12.708,3.082-26.358,1.188-34.314,2.734c-3.082,0.358-31.109-7.844-48.435-16.855c-16.384-8.673, 22.088,15.667, 31.57,28.129
|
805 |
+
c 28.14,8.438, 20.070,8.786, 33.72,11.878c 12.349,2.499, 11.756,1.782, 20.306,4.27c 8.663,2.376, 16.015,14.254, 7.711,21.012
|
806 |
+
c-5.1,3.799-20.531-2.017-35.727-2.13c-6.881-0.471-34.55-13.179-40.837-16.742c-15.667-8.192-27.187-19.825-36.444-25.999
|
807 |
+
C 105.277,350.679, 132.7,384.041, 144.22,397.926L 144.22,397.926z M 229.816,227.338c-9.38,7.711-14.131,30.024-14.008,30.147
|
808 |
+
c-17.213,5.11-28.14,16.507-28.14,16.148c-26.47-14.367-27.177-7.721-38.584-16.148c-9.615-6.892-9.021-9.021-14.008-25.887
|
809 |
+
c-4.639-14.725, 11.633-13.292, 25.283-38.697c 23.511,8.561, 36.219,4.516, 44.165,3.574C 208.087,196.229, 207.493,210.596, 229.816,227.338
|
810 |
+
L 229.816,227.338z" data-tags="sign-language" />
|
811 |
+
<glyph unicode="" d="M 226.632,436.357c 0.225,21.053-17.080,38.482-38.185,38.257c-21.565,0.225-38.994-17.203-38.881-38.257
|
812 |
+
c-0.113-21.555, 17.316-38.82, 38.881-38.871C 209.541,397.537, 226.857,414.802, 226.632,436.357L 226.632,436.357zM 337.654,225.106L 214.139,374.948c-6.42,9.523-42.209,13.527-57.344,1.372L 96.696,266.967l 14.787-92.436
|
813 |
+
c 15.032-24.136, 44.851,0.287, 36.475,13.476l-10.086,65.485L 163.84,305.92l0-122.88 l-61.44-163.84c-10.67-35.779, 40.643-54.938, 51.2-20.48l 71.68,184.32l0,92.16 l-30.075,41.595
|
814 |
+
c-1.495,1.782-1.27,4.475, 0.573,6.021c 1.833,1.495, 4.475,1.26, 5.97-0.512l 102.748-121.508
|
815 |
+
C 321.034,178.196, 354.171,202.23, 337.654,225.106zM 290.396,17.254l-60.672,150.968L 204.8,101.12l 35.604-104.131C 254.73-36.547, 305.080-16.927, 290.396,17.254zM 451.297-17.388c 0.123-0.123, 0.225-0.287, 0.225-0.348c 2.406-2.867, 6.656-3.154, 9.523-0.799
|
816 |
+
c 2.519,2.181, 2.99,6.021, 1.26,8.765L 347.965,188.754c-0.123,0.123-0.225,0.236-0.338,0.399c-2.304,2.765-6.543,3.164-9.411,0.748
|
817 |
+
c-2.519-2.181-2.755-5.847-1.137-8.765L 451.297-17.388z" data-tags="low-vision-access" />
|
818 |
+
<glyph unicode="" d="M 130.949,124.621c-63.539,0-112.486,35.717-112.486,102.246c0,67.318, 47.36,106.035, 112.486,106.035c 65.106,0, 112.476-38.728, 112.476-106.035
|
819 |
+
C 243.415,160.338, 194.478,124.621, 130.949,124.621z M 130.949,177.244c 22.948,0, 34.253,19.558, 34.253,49.234c0,23.347-4.864,53.811-34.253,53.811
|
820 |
+
c-29.399,0-34.263-30.464-34.263-53.811C 96.686,196.803, 107.991,177.244, 130.949,177.244zM 410.276,254.72c-0.338,10.24-3.389,14.111-8.253,18.975c-4.864,5.263-11.643,7.25-20.357,7.25c-29.266,0-34.13-30.792-34.13-54.139
|
821 |
+
c0-29.676, 11.305-50.924, 34.13-50.924c 20.357,0, 28.273,17.398, 30.525,27.638l 79.022,0 c-6.779-61.44-54.938-80.425-109.548-80.425
|
822 |
+
c-63.519,0-112.364,36.485-112.364,103.014c0,67.318, 47.37,107.745, 112.364,107.745c 52.695,0, 102.318-27.935, 107.96-79.135L 410.276,254.72 z" data-tags="open-captioning" />
|
823 |
+
<glyph unicode="" d="M 159.734,244.48c-0.338,10.24-3.277,17.725-8.253,22.589c-4.864,5.253-11.643,9.062-20.234,9.062c-29.399,0-34.253-29.891-34.253-53.238
|
824 |
+
c0-29.665, 11.305-48.978, 34.253-48.978c 20.234,0, 28.15,9.134, 30.403,29.614l 79.022,0 c-6.779-61.44-54.938-81.94-109.425-81.94
|
825 |
+
c-63.539,0-112.486,35.738-112.486,102.267c0,67.318, 47.36,103.741, 112.486,103.741c 52.562,0, 102.308-21.678, 107.848-83.118L 159.734,244.48 zM 410.583,244.48c-0.338,10.24-3.389,17.725-8.253,22.589c-4.864,5.253-11.643,9.062-20.357,9.062c-29.266,0-34.13-29.891-34.13-53.238
|
826 |
+
c0-29.665, 11.305-48.978, 34.13-48.978c 20.357,0, 28.273,9.134, 30.525,29.614L 491.52,203.53 c-6.779-61.44-54.938-81.94-109.548-81.94
|
827 |
+
c-63.529,0-112.364,35.738-112.364,102.267c0,67.318, 47.37,103.741, 112.364,103.741c 52.695,0, 102.308-21.678, 107.971-83.118L 410.583,244.48 z" data-tags="closed-captioning" />
|
828 |
+
<glyph unicode="" d="M 40.96,70.4l 50.115,0 c 18.821,0, 31.611-6.697, 31.611-25.231c0-9.708-4.823-16.835-13.394-20.992c 12.063-3.441, 18.217-13.906, 18.217-26.286
|
829 |
+
c0-20.142-17.132-29.891-35.113-29.891L 40.96-32 L 40.96,70.4 z M 61.44,29.44l 26.86,0 c 7.598,0, 13.261,2.12, 13.261,10.455C 101.56,49.357, 94.321,49.92, 86.61,49.92L 61.44,49.92 L 61.44,29.44 z M 61.44-11.52
|
830 |
+
l 28.068,0 c 8.684,0, 16.169,4.495, 16.169,14.817c0,10.117-6.4,15.903-15.688,15.903L 61.44,19.2 L 61.44-11.52 zM 143.36,39.68l 20.48,0 l0-10.24 l 0.225,0 c 3.625,10.24, 14.94,14.828, 24.596,14.828c 1.331,0, 5.898-0.788, 5.898-1.208l0-18.35 c-10.24,0.43-6.789,0.666-9.083,0.666
|
831 |
+
c-14.479,0-21.637-10.383-21.637-23.050L 163.84-32 l-20.48,0 L 143.36,39.68 zM 203.049,19.2c 1.085,20.48, 16.64,24.33, 32.686,24.33c 14.356,0, 30.505-2.949, 30.505-20.204l0-37.407 c0-6.513, 2.796-17.92, 4.618-17.92l-19.907,0
|
832 |
+
c-0.727,0-1.331,5.55-1.454,7.905c-6.277-6.523-15.442-8.387-24.125-8.387c-13.64,0-24.494,7.055-24.494,21.78
|
833 |
+
c0,16.302, 12.175,20.152, 24.494,21.965c 12.073,1.69, 23.286,1.444, 23.286,9.482c0,8.499-5.786,9.554-12.79,9.554
|
834 |
+
c-7.475,0-12.308-0.85-13.025-11.090L 203.049,19.21 z M 245.76,5.1c0-2.888-8.796-3.011-14.961-4.147c-6.154-1.27-10.988-3.318-10.988-10.568
|
835 |
+
c0-7.352, 4.71-9.165, 11.1-9.165c 15.442,0, 14.838,12.237, 14.838,16.527L 245.75,5.1 zM 308.879,52.951L 289.075,52.951 l0,16.23 l 19.804,0 L 308.879,52.951 z M 286.72,39.68l 20.48,0 l0-71.68 l-20.48,0 L 286.72,39.68 zM 327.68,70.4l 20.48,0 l0-102.4 l-20.48,0 L 327.68,70.4 zM 368.64,70.4l 20.48,0 l0-102.4 l-20.48,0 L 368.64,70.4 zM 426.998-1.28c 0.614-10.24, 6.625-18.842, 17.623-18.842c 7.967,0, 14.356,8.602, 15.565,8.602l 17.367,0 c-5.54-10.24-17.367-22.344-33.536-22.344
|
836 |
+
c-22.671,0-36.68,16.486-36.68,38.769c0,21.524, 14.848,37.233, 36.68,37.233c 24.381,0, 36.209-22.938, 34.867-43.418L 426.998-1.28 z M 459.1,8.96
|
837 |
+
c-1.812,10.24-6.031,15.258-15.688,15.258c-12.554,0-16.169-5.018-16.415-15.258L 459.1,8.96 zM 112.64,147.2A35.84,35.84 180 1 1 184.32,147.2A35.84,35.84 180 1 1 112.64,147.2zM 112.64,290.56A35.84,35.84 180 1 1 184.32,290.56A35.84,35.84 180 1 1 112.64,290.56zM 112.64,433.92A35.84,35.84 180 1 1 184.32,433.92A35.84,35.84 180 1 1 112.64,433.92zM 327.68,147.2A35.84,35.84 180 1 1 399.36,147.2A35.84,35.84 180 1 1 327.68,147.2zM 327.68,290.56A35.84,35.84 180 1 1 399.36,290.56A35.84,35.84 180 1 1 327.68,290.56zM 327.68,433.92A35.84,35.84 180 1 1 399.36,433.92A35.84,35.84 180 1 1 327.68,433.92z" data-tags="braille" />
|
838 |
+
<glyph unicode="" d="M 263.946,275.2L 256,275.2 l0-92.16 l 7.946,0 c 24.402,0, 44.042,21.75, 44.042,46.152C 307.988,253.46, 288.348,275.2, 263.946,275.2zM 409.6,408.32L 102.4,408.32 C 46.080,408.32,0,362.24,0,305.92l0-143.36 c0-56.32, 46.080-102.4, 102.4-102.4l 307.2,0 c 56.32,0, 102.4,46.080, 102.4,102.4L 512,305.92 C 512,362.24, 465.92,408.32, 409.6,408.32z M 204.8,152.32l-40.96,0 l0,20.48 l-60.314,0
|
839 |
+
l-14.019-20.48L 36.321,152.32 l 118.876,163.84L 204.8,316.16 L 204.8,152.32 z M 276.48,152.32l-10.24,0 l-51.2,0 L 215.040,316.16 l 53.289,0 l 0.502,0 c 45.67,0, 81.91-37.14, 81.91-82.944C 350.74,187.535, 322.161,152.32, 276.48,152.32z
|
840 |
+
M 366.182,152.32l-8.878,0 l-5.263,0 c 18.268,20.48, 28.662,48.886, 28.662,77.793c0,32.532-13.148,65.567-36.168,86.047l 5.14,0 l 10.015,0 l 5.263,0
|
841 |
+
c 20.511-30.72, 32.031-54.139, 32.031-86.047c0-28.396-9.011-57.313-25.539-77.793L 366.182,152.32 z M 407.972,152.32l-9.001,0 l-5.263,0
|
842 |
+
c 18.391,20.48, 28.785,48.886, 28.785,77.793c0,32.532-13.271,65.567-36.291,86.047l 5.263,0 l 9.892,0 l 5.243,0 c 20.531-30.72, 32.174-54.139, 32.174-86.047
|
843 |
+
c0-28.396-9.144-57.313-25.661-77.793L 407.972,152.32 z M 454.902,152.32L 449.638,152.32 l-9.001,0 l-5.263,0 c 18.391,20.48, 28.785,48.886, 28.785,77.793
|
844 |
+
c0,32.532-13.271,65.567-36.291,86.047l 5.263,0 l 9.892,0 l 5.243,0 c 20.531-30.72, 32.174-54.139, 32.174-86.047C 480.43,201.708, 471.286,172.8, 454.902,152.32zM 163.84,203.52L 163.84,263.967L 126.3,203.52 zM 253.809,231.188M 253.809,231.188M 253.809,231.188" data-tags="audio-description" />
|
845 |
+
<glyph unicode="" d="M 456.796,469.76l-29.143,0 l-99.246-108.81c 10.435-5.396, 2
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|