Slideshow Gallery - Version 1.3

Version Description

  • ADD: Show latest/featured products from Shopping Cart plugin
  • ADD: Plugin "Settings" link on the "Plugins" page in WordPress
  • ADD: TimThumb crop position setting
  • ADD: WordPress multi-site compatibility
  • ADD: Sortable columns in all admin sections
  • ADD: Help tooltips in admin
  • ADD: Sliders for speed settings
  • ADD: Color picker for color settings
  • ADD: Delete image upon deletion of locally created slide
  • ADD: WordPress 3.8+ design and compatibility
  • ADD: Multiple slideshows on a single page
  • ADD: Responsive design for mobiles and tablets
  • ADD: Debugging setting in configuration
  • IMPROVE: Colorbox upgrade/fix
  • IMPROVE: Use wp_upload_dir() for dynamic paths
  • IMPROVE: Better thumbnail slider using CSS calc
  • IMPROVE: Move images to default theme folder
  • IMPROVE: New TinyMCE icon/button
  • IMPROVE: New dashicons menu icon
  • IMPROVE: When the nav arrows are turned off, the link click area should be full
  • IMPROVE: Automatically center align images in the slideshow
  • FIX: Empty/zero thumbs spacing causes JS error
  • FIX: Deleting a slide leaves empty reference in gallery
  • FIX: Information overlaps arrows when long
  • FIX: Permissions settings not working
  • FIX: Turning off autoslide setting doesn't stop autoslide
  • FIX: Javascript error due to tooltip() call
  • FIX: Width/height of slideshow is less than the settings
Download this release

Release Info

Developer contrid
Plugin Icon 128x128 Slideshow Gallery
Version 1.3
Comparing to
See all releases

Code changes from version 1.2.3.2 to 1.3

Files changed (68) hide show
  1. LICENSE +339 -0
  2. README.md +4 -0
  3. css/admin.css +139 -50
  4. css/colorbox.css +17 -33
  5. css/gallery-css.php +0 -36
  6. css/jquery-ui.css +1178 -0
  7. fonts/slideshow_dashicons.eot +0 -0
  8. fonts/slideshow_dashicons.svg +13 -0
  9. fonts/slideshow_dashicons.ttf +0 -0
  10. fonts/slideshow_dashicons.woff +0 -0
  11. helpers/db.php +7 -1
  12. helpers/html.php +88 -24
  13. images/icon-32.png +0 -0
  14. images/icon-galleries-32.png +0 -0
  15. images/icon-settings-32.png +0 -0
  16. images/icon.png +0 -0
  17. images/jquery-ui/animated-overlay.gif +0 -0
  18. images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  19. images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +0 -0
  20. images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  21. images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
  22. images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +0 -0
  23. images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  24. images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  25. images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  26. images/jquery-ui/ui-icons_222222_256x240.png +0 -0
  27. images/jquery-ui/ui-icons_2e83ff_256x240.png +0 -0
  28. images/jquery-ui/ui-icons_454545_256x240.png +0 -0
  29. images/jquery-ui/ui-icons_888888_256x240.png +0 -0
  30. images/jquery-ui/ui-icons_cd0a0a_256x240.png +0 -0
  31. images/listgrid.png +0 -0
  32. images/sort.gif +0 -0
  33. js/colorbox.js +433 -273
  34. js/gallery.js +3 -3
  35. js/tinymce/dialog.php +42 -17
  36. js/tinymce/editor_plugin.js +3 -10
  37. languages/slideshow-gallery-sk_SK.mo +0 -0
  38. languages/slideshow-gallery-sk_SK.po +888 -0
  39. models/slide.php +9 -6
  40. readme.txt +56 -4
  41. slideshow-gallery-plugin.php +85 -37
  42. slideshow-gallery.php +99 -36
  43. views/admin/galleries/hardcode.php +0 -4
  44. views/admin/galleries/index.php +46 -12
  45. views/admin/galleries/save.php +2 -5
  46. views/admin/galleries/view.php +0 -4
  47. views/admin/head.php +2 -1
  48. views/admin/metaboxes/settings-about.php +7 -4
  49. views/admin/metaboxes/settings-general.php +164 -21
  50. views/admin/metaboxes/settings-linksimages.php +2 -1
  51. views/admin/metaboxes/settings-styles.php +271 -44
  52. views/admin/metaboxes/settings-submit.php +13 -2
  53. views/admin/metaboxes/settings-wprelated.php +32 -25
  54. views/admin/settings.php +1 -5
  55. views/admin/slides/index.php +2 -6
  56. views/admin/slides/loop.php +83 -14
  57. views/admin/slides/order.php +2 -9
  58. views/admin/slides/save.php +26 -21
  59. views/default/css-responsive copy.php +36 -0
  60. views/default/css-responsive.php +42 -0
  61. views/default/css.php +42 -0
  62. views/default/gallery.php +82 -49
  63. {images → views/default/images}/left.gif +0 -0
  64. {images → views/default/images}/link.gif +0 -0
  65. {images → views/default/images}/right.gif +0 -0
  66. {images → views/default/images}/scroll-left.gif +0 -0
  67. {images → views/default/images}/scroll-right.gif +0 -0
  68. {images → views/default/images}/spinner.gif +0 -0
LICENSE ADDED
@@ -0,0 +1,339 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ GNU GENERAL PUBLIC LICENSE
2
+ Version 2, June 1991
3
+
4
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc., <http://fsf.org/>
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
+ {description}
294
+ Copyright (C) {year} {fullname}
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.md ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ slideshow-gallery
2
+ =================
3
+
4
+ Slideshow Gallery plugin
css/admin.css CHANGED
@@ -1,70 +1,130 @@
1
- div.Gallery .error {
2
- color: red;
 
 
 
 
 
 
 
 
 
 
 
3
  }
4
 
5
- a.thickbox img.slideshow, a.colorbox img.slideshow {
6
- border: 1px #CCCCCC solid;
7
- -moz-border-radius: 4px;
8
- -webkit-border-radius: 4px;
9
- border-radius: 4px;
10
- padding: 2px;
11
  }
12
 
13
- a.thickbox:hover img.slideshow, a.colorbox:hover img.slideshow {
14
- border: 1px #515151 solid;
 
 
 
 
 
15
  }
16
 
17
- /* Sortable */
 
 
18
 
19
- ul.connectedSortable {
20
- float: left;
21
- width: 100%;
 
 
 
 
 
 
 
 
22
  }
23
 
24
- span.gallery_slides_convert_list a {
25
- background: url('../images/listgrid.png') left top;
26
- text-align: left;
27
- text-indent: -999px;
28
- display: block;
29
- width: 20px;
30
- height: 20px;
31
- float: left;
32
- margin: 0 5px 0 0;
33
  }
34
 
35
- span.gallery_slides_convert_list a:hover,
36
- .gallery_slides_list span.gallery_slides_convert_list a {
37
- background:url('../images/listgrid.png') 40px top;
38
- text-align: left;
39
- text-indent: -999px;
40
- display: block;
41
- width: 20px;
42
- height: 20px;
43
- float: left;
44
- margin: 0 5px 0 0;
45
  }
46
 
47
- span.gallery_slides_convert_grid a {
48
- background:url('../images/listgrid.png') 60px top;
49
- text-align: left;
50
- text-indent: -999px;
51
- display: block;
52
- width: 20px;
53
- height: 20px;
54
- float: left;
55
- margin: 0 5px 0 0;
 
 
 
 
 
 
 
 
 
56
  }
57
 
58
- span.gallery_slides_convert_grid a:hover,
59
- .gallery_slides_grid span.gallery_slides_convert_grid a {
60
- background:url('../images/listgrid.png') right top;
61
- text-align: left;
62
- text-indent: -999px;
63
  display: block;
64
- width: 20px;
65
- height: 20px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
66
  float: left;
67
- margin: 0 5px 0 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
68
  }
69
 
70
  .sortable-elements {
@@ -228,4 +288,33 @@ span.gallery_slides_convert_grid a:hover,
228
  cursor: url(https://mail.google.com/mail/images/2/closedhand.cur), default !important;
229
  cursor: -moz-grabbing;
230
  cursor: -webkit-grabbing;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
231
  }
1
+ .sorting-indicator{ display:block; visibility:hidden; width:7px;height:4px;margin-top:8px;margin-left:7px;background-image:url(../images/sort.gif);background-repeat:no-repeat}
2
+ .fixed .column-comments .sorting-indicator{margin-top:3px}
3
+ .widefat th.sortable,.widefat th.sorted{padding:0}
4
+ th.sortable a,th.sorted a{ display:block; visibility:visible; overflow:hidden; padding:7px 7px 8px; }
5
+ .fixed .column-comments.sortable a,.fixed .column-comments.sorted a{ padding:8px 0; }
6
+ th.sortable a span,th.sorted a span{float:left;cursor:pointer}
7
+ th.sorted.asc .sorting-indicator,th.desc:hover span.sorting-indicator{ display:block; visibility:visible; background-position:0 0}
8
+ th.sorted.desc .sorting-indicator,th.asc:hover span.sorting-indicator{ display:block; visibility:visible; background-position:-7px 0}
9
+
10
+ #adminmenu .toplevel_page_slideshow-slides div.wp-menu-image:before,
11
+ span.mce_gallery:before {
12
+ font-family: 'slideshow_dashicons' !important;
13
+ content: '\f233';
14
  }
15
 
16
+ @font-face {
17
+ font-family: 'slideshow_dashicons';
18
+ src: url('../fonts/slideshow_dashicons.eot'); // this is for IE
 
 
 
19
  }
20
 
21
+ @font-face {
22
+ font-family: 'slideshow_dashicons';
23
+ src: url('../fonts/slideshow_dashicons.woff') format('woff'),
24
+ url('../fonts/slideshow_dashicons.ttf') format('truetype'),
25
+ url('../fonts/slideshow_dashicons.svg') format('svg');
26
+ font-weight: normal;
27
+ font-style: normal;
28
  }
29
 
30
+ .slideshow .ui-slider {
31
+ margin: 10px 0;
32
+ }
33
 
34
+ .slideshow .slider-value {
35
+ float: right;
36
+ font-size: 80%;
37
+ font-weight: bold;
38
+ border: 1px #000000 solid;
39
+ border-radius: 999px;
40
+ padding: 2px 5px;
41
+ vertical-align: top;
42
+ text-align: center;
43
+ background: #000000;
44
+ color: #ffffff;
45
  }
46
 
47
+ .slideshow .iris-picker {
48
+ position: absolute;
49
+ z-index: 999;
 
 
 
 
 
 
50
  }
51
 
52
+ .slideshow input.wp-color-picker {
53
+ margin: 0 6px 6px 0 !important;
 
 
 
 
 
 
 
 
54
  }
55
 
56
+ img.slideshow_dropshadow,
57
+ .slideshow img.dropshadow,
58
+ a.thickbox img.slideshow,
59
+ a.colorbox img.slideshow {
60
+ box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
61
+ -webkit-box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
62
+ -moz-box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
63
+ }
64
+
65
+ .galleryhelp {
66
+ display: inline-block;
67
+ margin: 2px 0 0 5px;
68
+ vertical-align: top;
69
+ -moz-border-radius: 10px;
70
+ -webkit-border-radius: 10px;
71
+ border-radius: 10px;
72
+ z-index: 26;
73
+ background-color: #444444;
74
  }
75
 
76
+ .galleryhelp a {
 
 
 
 
77
  display: block;
78
+ padding: 0 5px;
79
+ color: white;
80
+ text-decoration: none;
81
+ font-weight: bold;
82
+ font-size: 10px;
83
+ line-height: 15px;
84
+ }
85
+
86
+ .ui-tooltip {
87
+ padding: 8px;
88
+ position: absolute;
89
+ z-index: 9999;
90
+ max-width: 300px;
91
+ -webkit-box-shadow: 0 0 5px #aaa;
92
+ box-shadow: 0 0 5px #aaa;
93
+ background: white;
94
+ border-width: 2px;
95
+ border-radius: 4px;
96
+ -moz-border-radius: 4px;
97
+ -webkit-border-radius: 4px;
98
+ }
99
+
100
+ div.Gallery .error,
101
+ .slideshow_error {
102
+ color: red;
103
+ }
104
+
105
+ .slideshow_success {
106
+ color: green;
107
+ }
108
+
109
+ /* Sortable */
110
+
111
+ ul.connectedSortable {
112
  float: left;
113
+ width: 100%;
114
+ }
115
+
116
+ span.gallery_slides_convert_list a:before {
117
+ font-family: 'slideshow_dashicons' !important;
118
+ content: '\f228';
119
+ text-decoration: none;
120
+ font-size: 24px;
121
+ }
122
+
123
+ span.gallery_slides_convert_grid a:before {
124
+ font-family: 'slideshow_dashicons' !important;
125
+ content: '\f180';
126
+ text-decoration: none;
127
+ font-size: 24px;
128
  }
129
 
130
  .sortable-elements {
288
  cursor: url(https://mail.google.com/mail/images/2/closedhand.cur), default !important;
289
  cursor: -moz-grabbing;
290
  cursor: -webkit-grabbing;
291
+ }
292
+
293
+ /** jQuery UI **/
294
+
295
+ .ui-corner-all {
296
+ -webkit-border-radius: 4px;
297
+ border-radius: 4px;
298
+ -moz-border-radius: 4px;
299
+ }
300
+
301
+ /* Overlays */
302
+ .ui-widget-overlay {
303
+ position: fixed;
304
+ top: 0;
305
+ left: 0;
306
+ width: 100%;
307
+ height: 100%;
308
+ }
309
+ .ui-tooltip {
310
+ padding: 8px;
311
+ position: absolute;
312
+ z-index: 9999;
313
+ max-width: 300px;
314
+ -webkit-box-shadow: 0 0 5px #aaa;
315
+ box-shadow: 0 0 5px #aaa;
316
+ background: white;
317
+ }
318
+ body .ui-tooltip {
319
+ border-width: 2px;
320
  }
css/colorbox.css CHANGED
@@ -1,26 +1,27 @@
1
  /*
2
- ColorBox Core Style:
3
  The following CSS is consistent between example themes and should not be altered.
4
  */
5
  #colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
 
6
  #cboxOverlay{position:fixed; width:100%; height:100%;}
7
  #cboxMiddleLeft, #cboxBottomLeft{clear:left;}
8
  #cboxContent{position:relative;}
9
- #cboxLoadedContent{overflow:auto;}
10
  #cboxTitle{margin:0;}
11
  #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
12
  #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
13
- .cboxPhoto{float:left; margin:auto; border:0; display:block;}
14
  .cboxIframe{width:100%; height:100%; display:block; border:0;}
15
- #colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box;}
16
 
17
  /*
18
  User Style:
19
- Change the following styles to modify the appearance of ColorBox. They are
20
  ordered & tabbed in a way that represents the nesting of the generated HTML.
21
  */
22
  #cboxOverlay{background:url(../images/colorbox/overlay.png) repeat 0 0;}
23
- #colorbox{}
24
  #cboxTopLeft{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -101px 0;}
25
  #cboxTopRight{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -130px 0;}
26
  #cboxBottomLeft{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -101px -29px;}
@@ -35,13 +36,20 @@
35
  #cboxLoadedContent{margin-bottom:28px;}
36
  #cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
37
  #cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
 
 
 
 
 
 
 
 
 
38
  #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
39
  #cboxPrevious{position:absolute; bottom:0; left:0; background:url(../images/colorbox/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
40
  #cboxPrevious:hover{background-position:-75px -25px;}
41
  #cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/colorbox/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
42
  #cboxNext:hover{background-position:-50px -25px;}
43
- #cboxLoadingOverlay{background:url(../images/colorbox/loading_background.png) no-repeat center center;}
44
- #cboxLoadingGraphic{background:url(../images/colorbox/loading.gif) no-repeat center center;}
45
  #cboxClose{position:absolute; bottom:0; right:0; background:url(../images/colorbox/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
46
  #cboxClose:hover{background-position:-25px -25px;}
47
 
@@ -59,28 +67,4 @@
59
  .cboxIE #cboxMiddleLeft,
60
  .cboxIE #cboxMiddleRight {
61
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
62
- }
63
-
64
- /*
65
- The following provides PNG transparency support for IE6
66
- Feel free to remove this and the /ie6/ directory if you have dropped IE6 support.
67
- */
68
- .cboxIE6 #cboxTopLeft{background:url(../images/colorbox/ie6/borderTopLeft.png);}
69
- .cboxIE6 #cboxTopCenter{background:url(../images/colorbox/ie6/borderTopCenter.png);}
70
- .cboxIE6 #cboxTopRight{background:url(../images/colorbox/ie6/borderTopRight.png);}
71
- .cboxIE6 #cboxBottomLeft{background:url(../images/colorbox/ie6/borderBottomLeft.png);}
72
- .cboxIE6 #cboxBottomCenter{background:url(../images/colorbox/ie6/borderBottomCenter.png);}
73
- .cboxIE6 #cboxBottomRight{background:url(../images/colorbox/ie6/borderBottomRight.png);}
74
- .cboxIE6 #cboxMiddleLeft{background:url(../images/colorbox/ie6/borderMiddleLeft.png);}
75
- .cboxIE6 #cboxMiddleRight{background:url(../images/colorbox/ie6/borderMiddleRight.png);}
76
-
77
- .cboxIE6 #cboxTopLeft,
78
- .cboxIE6 #cboxTopCenter,
79
- .cboxIE6 #cboxTopRight,
80
- .cboxIE6 #cboxBottomLeft,
81
- .cboxIE6 #cboxBottomCenter,
82
- .cboxIE6 #cboxBottomRight,
83
- .cboxIE6 #cboxMiddleLeft,
84
- .cboxIE6 #cboxMiddleRight {
85
- _behavior: expression(this.src = this.src ? this.src : this.currentStyle.backgroundImage.split('"')[1], this.style.background = "none", this.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(src=" + this.src + ", sizingMethod='scale')");
86
- }
1
  /*
2
+ Colorbox Core Style:
3
  The following CSS is consistent between example themes and should not be altered.
4
  */
5
  #colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
6
+ #cboxWrapper {max-width:none;}
7
  #cboxOverlay{position:fixed; width:100%; height:100%;}
8
  #cboxMiddleLeft, #cboxBottomLeft{clear:left;}
9
  #cboxContent{position:relative;}
10
+ #cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
11
  #cboxTitle{margin:0;}
12
  #cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
13
  #cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
14
+ .cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
15
  .cboxIframe{width:100%; height:100%; display:block; border:0;}
16
+ #colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
17
 
18
  /*
19
  User Style:
20
+ Change the following styles to modify the appearance of Colorbox. They are
21
  ordered & tabbed in a way that represents the nesting of the generated HTML.
22
  */
23
  #cboxOverlay{background:url(../images/colorbox/overlay.png) repeat 0 0;}
24
+ #colorbox{outline:0;}
25
  #cboxTopLeft{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -101px 0;}
26
  #cboxTopRight{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -130px 0;}
27
  #cboxBottomLeft{width:21px; height:21px; background:url(../images/colorbox/controls.png) no-repeat -101px -29px;}
36
  #cboxLoadedContent{margin-bottom:28px;}
37
  #cboxTitle{position:absolute; bottom:4px; left:0; text-align:center; width:100%; color:#949494;}
38
  #cboxCurrent{position:absolute; bottom:4px; left:58px; color:#949494;}
39
+ #cboxLoadingOverlay{background:url(../images/colorbox/loading_background.png) no-repeat center center;}
40
+ #cboxLoadingGraphic{background:url(../images/colorbox/loading.gif) no-repeat center center;}
41
+
42
+ /* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
43
+ #cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
44
+
45
+ /* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
46
+ #cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
47
+
48
  #cboxSlideshow{position:absolute; bottom:4px; right:30px; color:#0092ef;}
49
  #cboxPrevious{position:absolute; bottom:0; left:0; background:url(../images/colorbox/controls.png) no-repeat -75px 0; width:25px; height:25px; text-indent:-9999px;}
50
  #cboxPrevious:hover{background-position:-75px -25px;}
51
  #cboxNext{position:absolute; bottom:0; left:27px; background:url(../images/colorbox/controls.png) no-repeat -50px 0; width:25px; height:25px; text-indent:-9999px;}
52
  #cboxNext:hover{background-position:-50px -25px;}
 
 
53
  #cboxClose{position:absolute; bottom:0; right:0; background:url(../images/colorbox/controls.png) no-repeat -25px 0; width:25px; height:25px; text-indent:-9999px;}
54
  #cboxClose:hover{background-position:-25px -25px;}
55
 
67
  .cboxIE #cboxMiddleLeft,
68
  .cboxIE #cboxMiddleRight {
69
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
70
+ }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
css/gallery-css.php DELETED
@@ -1,36 +0,0 @@
1
- <?php header("Content-Type: text/css"); ?>
2
-
3
- <?php $styles = array(); ?>
4
- <?php foreach ($_GET as $skey => $sval) : ?>
5
- <?php $styles[$skey] = urldecode($sval); ?>
6
- <?php endforeach; ?>
7
-
8
- <?php if (!empty($styles['wrapperid'])) : ?>
9
- ul.slideshow { list-style:none !important; color:#fff; }
10
- ul.slideshow span { display:none; }
11
- #<?php echo $styles['wrapperid']; ?> { position:relative; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 6) . 'px' : 'auto'; ?>; background:<?php echo $styles['background']; ?>; padding:0 0 0 0; border:<?php echo $styles['border']; ?>; margin:0; display:none; }
12
- #<?php echo $styles['wrapperid']; ?> * { margin:0; padding:0; }
13
- #<?php echo $styles['wrapperid']; ?> #fullsize { position:relative; z-index:1; overflow:hidden; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 6) . 'px' : 'auto'; ?>; height:<?php echo ((int) $styles['height'] - 6); ?>px; border: none; }
14
- #<?php echo $styles['wrapperid']; ?> #information { text-align:left; font-family:Verdana, Arial, Helvetica, sans-serif !important; position:absolute; bottom:0; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 6) . 'px' : '100%'; ?>; height:0; background:<?php echo $styles['infobackground']; ?>; color:<?php echo $styles['infocolor']; ?>; overflow:hidden; z-index:200; opacity:.7; filter:alpha(opacity=70); }
15
- #<?php echo $styles['wrapperid']; ?> #information h3 { color:<?php echo $styles['infocolor']; ?>; padding:4px 8px 3px; margin:0 !important; font-size:16px; font-weight:bold; }
16
- #<?php echo $styles['wrapperid']; ?> #information p { color:<?php echo $styles['infocolor']; ?>; padding:0 8px 8px; margin:0 !important; font-size: 14px; font-weight:normal; }
17
- #<?php echo $styles['wrapperid']; ?> #image { width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 4) . 'px' : 'auto'; ?>; no-repeat; }
18
- #<?php echo $styles['wrapperid']; ?> #image img { position:absolute; left:0; border:none; height:auto; max-width:100%; }
19
- #<?php echo $styles['wrapperid']; ?> .imgnav { position:absolute; width:25%; height:<?php echo ((int) $styles['height'] + 8); ?>px; cursor:pointer; z-index:150; }
20
- #<?php echo $styles['wrapperid']; ?> #imgprev { left:0; background:url('../images/left.gif') left center no-repeat; }
21
- #<?php echo $styles['wrapperid']; ?> #imgnext { right:0; background:url('../images/right.gif') right center no-repeat; }
22
- #<?php echo $styles['wrapperid']; ?> #imglink { position:absolute; zoom:1; background-color:#ffffff; height:<?php echo ((int) $styles['height'] + 8); ?>px; width:50%; left:25%; right:20%; z-index:999; opacity:0; filter:alpha(opacity=0); }
23
- #<?php echo $styles['wrapperid']; ?> .linkhover { background:transparent url('../images/link.gif') center center no-repeat !important; text-indent:-9999px; opacity:.4 !important; filter:alpha(opacity=40) !important; }
24
- #<?php echo $styles['wrapperid']; ?> #thumbnails { background:<?php echo $styles['background']; ?>; }
25
- #<?php echo $styles['wrapperid']; ?> .thumbstop { margin-bottom:8px !important; }
26
- #<?php echo $styles['wrapperid']; ?> .thumbsbot { margin-top:8px !important; }
27
- #<?php echo $styles['wrapperid']; ?> #slideleft { float:left; width:20px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; background:url('../images/scroll-left.gif') center center no-repeat; background-color:#222; }
28
- #<?php echo $styles['wrapperid']; ?> #slideleft:hover { background-color:#333; }
29
- #<?php echo $styles['wrapperid']; ?> #slideright { float:right; width:20px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; background:#222 url('../images/scroll-right.gif') center center no-repeat; }
30
- #<?php echo $styles['wrapperid']; ?> #slideright:hover { background-color:#333; }
31
- #<?php echo $styles['wrapperid']; ?> #slidearea { float:left; position:relative; background:<?php echo $styles['background']; ?>; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 57) . 'px' : '92%'; ?>; margin-left:5px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; overflow:hidden; }
32
- #<?php echo $styles['wrapperid']; ?> #slider { position:absolute; left:0; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; }
33
- #<?php echo $styles['wrapperid']; ?> #slider img { cursor:pointer; border:1px solid #666; padding:2px; -moz-border-radius:4px; -webkit-border-radius:4px; float:left !important; }
34
- #<?php echo $styles['wrapperid']; ?> #spinner { position:relative; top:50%; left:45%; text-align:left; }
35
- #<?php echo $styles['wrapperid']; ?> #spinner img { border:none; }
36
- <?php endif; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
css/jquery-ui.css ADDED
@@ -0,0 +1,1178 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*! jQuery UI - v1.10.4 - 2014-02-23
2
+ * http://jqueryui.com
3
+ * Includes: jquery.ui.core.css, jquery.ui.resizable.css, jquery.ui.selectable.css, jquery.ui.accordion.css, jquery.ui.autocomplete.css, jquery.ui.button.css, jquery.ui.datepicker.css, jquery.ui.dialog.css, jquery.ui.menu.css, jquery.ui.progressbar.css, jquery.ui.slider.css, jquery.ui.spinner.css, jquery.ui.tabs.css, jquery.ui.tooltip.css, jquery.ui.theme.css
4
+ * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px
5
+ * Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */
6
+
7
+ /* Layout helpers
8
+ ----------------------------------*/
9
+ .ui-helper-hidden {
10
+ display: none;
11
+ }
12
+ .ui-helper-hidden-accessible {
13
+ border: 0;
14
+ clip: rect(0 0 0 0);
15
+ height: 1px;
16
+ margin: -1px;
17
+ overflow: hidden;
18
+ padding: 0;
19
+ position: absolute;
20
+ width: 1px;
21
+ }
22
+ .ui-helper-reset {
23
+ margin: 0;
24
+ padding: 0;
25
+ border: 0;
26
+ outline: 0;
27
+ line-height: 1.3;
28
+ text-decoration: none;
29
+ font-size: 100%;
30
+ list-style: none;
31
+ }
32
+ .ui-helper-clearfix:before,
33
+ .ui-helper-clearfix:after {
34
+ content: "";
35
+ display: table;
36
+ border-collapse: collapse;
37
+ }
38
+ .ui-helper-clearfix:after {
39
+ clear: both;
40
+ }
41
+ .ui-helper-clearfix {
42
+ min-height: 0; /* support: IE7 */
43
+ }
44
+ .ui-helper-zfix {
45
+ width: 100%;
46
+ height: 100%;
47
+ top: 0;
48
+ left: 0;
49
+ position: absolute;
50
+ opacity: 0;
51
+ filter:Alpha(Opacity=0);
52
+ }
53
+
54
+ .ui-front {
55
+ z-index: 100;
56
+ }
57
+
58
+
59
+ /* Interaction Cues
60
+ ----------------------------------*/
61
+ .ui-state-disabled {
62
+ cursor: default !important;
63
+ }
64
+
65
+
66
+ /* Icons
67
+ ----------------------------------*/
68
+
69
+ /* states and images */
70
+ .ui-icon {
71
+ display: block;
72
+ text-indent: -99999px;
73
+ overflow: hidden;
74
+ background-repeat: no-repeat;
75
+ }
76
+
77
+
78
+ /* Misc visuals
79
+ ----------------------------------*/
80
+
81
+ /* Overlays */
82
+ .ui-widget-overlay {
83
+ position: fixed;
84
+ top: 0;
85
+ left: 0;
86
+ width: 100%;
87
+ height: 100%;
88
+ }
89
+ .ui-resizable {
90
+ position: relative;
91
+ }
92
+ .ui-resizable-handle {
93
+ position: absolute;
94
+ font-size: 0.1px;
95
+ display: block;
96
+ }
97
+ .ui-resizable-disabled .ui-resizable-handle,
98
+ .ui-resizable-autohide .ui-resizable-handle {
99
+ display: none;
100
+ }
101
+ .ui-resizable-n {
102
+ cursor: n-resize;
103
+ height: 7px;
104
+ width: 100%;
105
+ top: -5px;
106
+ left: 0;
107
+ }
108
+ .ui-resizable-s {
109
+ cursor: s-resize;
110
+ height: 7px;
111
+ width: 100%;
112
+ bottom: -5px;
113
+ left: 0;
114
+ }
115
+ .ui-resizable-e {
116
+ cursor: e-resize;
117
+ width: 7px;
118
+ right: -5px;
119
+ top: 0;
120
+ height: 100%;
121
+ }
122
+ .ui-resizable-w {
123
+ cursor: w-resize;
124
+ width: 7px;
125
+ left: -5px;
126
+ top: 0;
127
+ height: 100%;
128
+ }
129
+ .ui-resizable-se {
130
+ cursor: se-resize;
131
+ width: 12px;
132
+ height: 12px;
133
+ right: 1px;
134
+ bottom: 1px;
135
+ }
136
+ .ui-resizable-sw {
137
+ cursor: sw-resize;
138
+ width: 9px;
139
+ height: 9px;
140
+ left: -5px;
141
+ bottom: -5px;
142
+ }
143
+ .ui-resizable-nw {
144
+ cursor: nw-resize;
145
+ width: 9px;
146
+ height: 9px;
147
+ left: -5px;
148
+ top: -5px;
149
+ }
150
+ .ui-resizable-ne {
151
+ cursor: ne-resize;
152
+ width: 9px;
153
+ height: 9px;
154
+ right: -5px;
155
+ top: -5px;
156
+ }
157
+ .ui-selectable-helper {
158
+ position: absolute;
159
+ z-index: 100;
160
+ border: 1px dotted black;
161
+ }
162
+ .ui-accordion .ui-accordion-header {
163
+ display: block;
164
+ cursor: pointer;
165
+ position: relative;
166
+ margin-top: 2px;
167
+ padding: .5em .5em .5em .7em;
168
+ min-height: 0; /* support: IE7 */
169
+ }
170
+ .ui-accordion .ui-accordion-icons {
171
+ padding-left: 2.2em;
172
+ }
173
+ .ui-accordion .ui-accordion-noicons {
174
+ padding-left: .7em;
175
+ }
176
+ .ui-accordion .ui-accordion-icons .ui-accordion-icons {
177
+ padding-left: 2.2em;
178
+ }
179
+ .ui-accordion .ui-accordion-header .ui-accordion-header-icon {
180
+ position: absolute;
181
+ left: .5em;
182
+ top: 50%;
183
+ margin-top: -8px;
184
+ }
185
+ .ui-accordion .ui-accordion-content {
186
+ padding: 1em 2.2em;
187
+ border-top: 0;
188
+ overflow: auto;
189
+ }
190
+ .ui-autocomplete {
191
+ position: absolute;
192
+ top: 0;
193
+ left: 0;
194
+ cursor: default;
195
+ }
196
+ .ui-button {
197
+ display: inline-block;
198
+ position: relative;
199
+ padding: 0;
200
+ line-height: normal;
201
+ margin-right: .1em;
202
+ cursor: pointer;
203
+ vertical-align: middle;
204
+ text-align: center;
205
+ overflow: visible; /* removes extra width in IE */
206
+ }
207
+ .ui-button,
208
+ .ui-button:link,
209
+ .ui-button:visited,
210
+ .ui-button:hover,
211
+ .ui-button:active {
212
+ text-decoration: none;
213
+ }
214
+ /* to make room for the icon, a width needs to be set here */
215
+ .ui-button-icon-only {
216
+ width: 2.2em;
217
+ }
218
+ /* button elements seem to need a little more width */
219
+ button.ui-button-icon-only {
220
+ width: 2.4em;
221
+ }
222
+ .ui-button-icons-only {
223
+ width: 3.4em;
224
+ }
225
+ button.ui-button-icons-only {
226
+ width: 3.7em;
227
+ }
228
+
229
+ /* button text element */
230
+ .ui-button .ui-button-text {
231
+ display: block;
232
+ line-height: normal;
233
+ }
234
+ .ui-button-text-only .ui-button-text {
235
+ padding: .4em 1em;
236
+ }
237
+ .ui-button-icon-only .ui-button-text,
238
+ .ui-button-icons-only .ui-button-text {
239
+ padding: .4em;
240
+ text-indent: -9999999px;
241
+ }
242
+ .ui-button-text-icon-primary .ui-button-text,
243
+ .ui-button-text-icons .ui-button-text {
244
+ padding: .4em 1em .4em 2.1em;
245
+ }
246
+ .ui-button-text-icon-secondary .ui-button-text,
247
+ .ui-button-text-icons .ui-button-text {
248
+ padding: .4em 2.1em .4em 1em;
249
+ }
250
+ .ui-button-text-icons .ui-button-text {
251
+ padding-left: 2.1em;
252
+ padding-right: 2.1em;
253
+ }
254
+ /* no icon support for input elements, provide padding by default */
255
+ input.ui-button {
256
+ padding: .4em 1em;
257
+ }
258
+
259
+ /* button icon element(s) */
260
+ .ui-button-icon-only .ui-icon,
261
+ .ui-button-text-icon-primary .ui-icon,
262
+ .ui-button-text-icon-secondary .ui-icon,
263
+ .ui-button-text-icons .ui-icon,
264
+ .ui-button-icons-only .ui-icon {
265
+ position: absolute;
266
+ top: 50%;
267
+ margin-top: -8px;
268
+ }
269
+ .ui-button-icon-only .ui-icon {
270
+ left: 50%;
271
+ margin-left: -8px;
272
+ }
273
+ .ui-button-text-icon-primary .ui-button-icon-primary,
274
+ .ui-button-text-icons .ui-button-icon-primary,
275
+ .ui-button-icons-only .ui-button-icon-primary {
276
+ left: .5em;
277
+ }
278
+ .ui-button-text-icon-secondary .ui-button-icon-secondary,
279
+ .ui-button-text-icons .ui-button-icon-secondary,
280
+ .ui-button-icons-only .ui-button-icon-secondary {
281
+ right: .5em;
282
+ }
283
+
284
+ /* button sets */
285
+ .ui-buttonset {
286
+ margin-right: 7px;
287
+ }
288
+ .ui-buttonset .ui-button {
289
+ margin-left: 0;
290
+ margin-right: -.3em;
291
+ }
292
+
293
+ /* workarounds */
294
+ /* reset extra padding in Firefox, see h5bp.com/l */
295
+ input.ui-button::-moz-focus-inner,
296
+ button.ui-button::-moz-focus-inner {
297
+ border: 0;
298
+ padding: 0;
299
+ }
300
+ .ui-datepicker {
301
+ width: 17em;
302
+ padding: .2em .2em 0;
303
+ display: none;
304
+ }
305
+ .ui-datepicker .ui-datepicker-header {
306
+ position: relative;
307
+ padding: .2em 0;
308
+ }
309
+ .ui-datepicker .ui-datepicker-prev,
310
+ .ui-datepicker .ui-datepicker-next {
311
+ position: absolute;
312
+ top: 2px;
313
+ width: 1.8em;
314
+ height: 1.8em;
315
+ }
316
+ .ui-datepicker .ui-datepicker-prev-hover,
317
+ .ui-datepicker .ui-datepicker-next-hover {
318
+ top: 1px;
319
+ }
320
+ .ui-datepicker .ui-datepicker-prev {
321
+ left: 2px;
322
+ }
323
+ .ui-datepicker .ui-datepicker-next {
324
+ right: 2px;
325
+ }
326
+ .ui-datepicker .ui-datepicker-prev-hover {
327
+ left: 1px;
328
+ }
329
+ .ui-datepicker .ui-datepicker-next-hover {
330
+ right: 1px;
331
+ }
332
+ .ui-datepicker .ui-datepicker-prev span,
333
+ .ui-datepicker .ui-datepicker-next span {
334
+ display: block;
335
+ position: absolute;
336
+ left: 50%;
337
+ margin-left: -8px;
338
+ top: 50%;
339
+ margin-top: -8px;
340
+ }
341
+ .ui-datepicker .ui-datepicker-title {
342
+ margin: 0 2.3em;
343
+ line-height: 1.8em;
344
+ text-align: center;
345
+ }
346
+ .ui-datepicker .ui-datepicker-title select {
347
+ font-size: 1em;
348
+ margin: 1px 0;
349
+ }
350
+ .ui-datepicker select.ui-datepicker-month,
351
+ .ui-datepicker select.ui-datepicker-year {
352
+ width: 49%;
353
+ }
354
+ .ui-datepicker table {
355
+ width: 100%;
356
+ font-size: .9em;
357
+ border-collapse: collapse;
358
+ margin: 0 0 .4em;
359
+ }
360
+ .ui-datepicker th {
361
+ padding: .7em .3em;
362
+ text-align: center;
363
+ font-weight: bold;
364
+ border: 0;
365
+ }
366
+ .ui-datepicker td {
367
+ border: 0;
368
+ padding: 1px;
369
+ }
370
+ .ui-datepicker td span,
371
+ .ui-datepicker td a {
372
+ display: block;
373
+ padding: .2em;
374
+ text-align: right;
375
+ text-decoration: none;
376
+ }
377
+ .ui-datepicker .ui-datepicker-buttonpane {
378
+ background-image: none;
379
+ margin: .7em 0 0 0;
380
+ padding: 0 .2em;
381
+ border-left: 0;
382
+ border-right: 0;
383
+ border-bottom: 0;
384
+ }
385
+ .ui-datepicker .ui-datepicker-buttonpane button {
386
+ float: right;
387
+ margin: .5em .2em .4em;
388
+ cursor: pointer;
389
+ padding: .2em .6em .3em .6em;
390
+ width: auto;
391
+ overflow: visible;
392
+ }
393
+ .ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
394
+ float: left;
395
+ }
396
+
397
+ /* with multiple calendars */
398
+ .ui-datepicker.ui-datepicker-multi {
399
+ width: auto;
400
+ }
401
+ .ui-datepicker-multi .ui-datepicker-group {
402
+ float: left;
403
+ }
404
+ .ui-datepicker-multi .ui-datepicker-group table {
405
+ width: 95%;
406
+ margin: 0 auto .4em;
407
+ }
408
+ .ui-datepicker-multi-2 .ui-datepicker-group {
409
+ width: 50%;
410
+ }
411
+ .ui-datepicker-multi-3 .ui-datepicker-group {
412
+ width: 33.3%;
413
+ }
414
+ .ui-datepicker-multi-4 .ui-datepicker-group {
415
+ width: 25%;
416
+ }
417
+ .ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
418
+ .ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
419
+ border-left-width: 0;
420
+ }
421
+ .ui-datepicker-multi .ui-datepicker-buttonpane {
422
+ clear: left;
423
+ }
424
+ .ui-datepicker-row-break {
425
+ clear: both;
426
+ width: 100%;
427
+ font-size: 0;
428
+ }
429
+
430
+ /* RTL support */
431
+ .ui-datepicker-rtl {
432
+ direction: rtl;
433
+ }
434
+ .ui-datepicker-rtl .ui-datepicker-prev {
435
+ right: 2px;
436
+ left: auto;
437
+ }
438
+ .ui-datepicker-rtl .ui-datepicker-next {
439
+ left: 2px;
440
+ right: auto;
441
+ }
442
+ .ui-datepicker-rtl .ui-datepicker-prev:hover {
443
+ right: 1px;
444
+ left: auto;
445
+ }
446
+ .ui-datepicker-rtl .ui-datepicker-next:hover {
447
+ left: 1px;
448
+ right: auto;
449
+ }
450
+ .ui-datepicker-rtl .ui-datepicker-buttonpane {
451
+ clear: right;
452
+ }
453
+ .ui-datepicker-rtl .ui-datepicker-buttonpane button {
454
+ float: left;
455
+ }
456
+ .ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
457
+ .ui-datepicker-rtl .ui-datepicker-group {
458
+ float: right;
459
+ }
460
+ .ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
461
+ .ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
462
+ border-right-width: 0;
463
+ border-left-width: 1px;
464
+ }
465
+ .ui-dialog {
466
+ overflow: hidden;
467
+ position: absolute;
468
+ top: 0;
469
+ left: 0;
470
+ padding: .2em;
471
+ outline: 0;
472
+ }
473
+ .ui-dialog .ui-dialog-titlebar {
474
+ padding: .4em 1em;
475
+ position: relative;
476
+ }
477
+ .ui-dialog .ui-dialog-title {
478
+ float: left;
479
+ margin: .1em 0;
480
+ white-space: nowrap;
481
+ width: 90%;
482
+ overflow: hidden;
483
+ text-overflow: ellipsis;
484
+ }
485
+ .ui-dialog .ui-dialog-titlebar-close {
486
+ position: absolute;
487
+ right: .3em;
488
+ top: 50%;
489
+ width: 20px;
490
+ margin: -10px 0 0 0;
491
+ padding: 1px;
492
+ height: 20px;
493
+ }
494
+ .ui-dialog .ui-dialog-content {
495
+ position: relative;
496
+ border: 0;
497
+ padding: .5em 1em;
498
+ background: none;
499
+ overflow: auto;
500
+ }
501
+ .ui-dialog .ui-dialog-buttonpane {
502
+ text-align: left;
503
+ border-width: 1px 0 0 0;
504
+ background-image: none;
505
+ margin-top: .5em;
506
+ padding: .3em 1em .5em .4em;
507
+ }
508
+ .ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
509
+ float: right;
510
+ }
511
+ .ui-dialog .ui-dialog-buttonpane button {
512
+ margin: .5em .4em .5em 0;
513
+ cursor: pointer;
514
+ }
515
+ .ui-dialog .ui-resizable-se {
516
+ width: 12px;
517
+ height: 12px;
518
+ right: -5px;
519
+ bottom: -5px;
520
+ background-position: 16px 16px;
521
+ }
522
+ .ui-draggable .ui-dialog-titlebar {
523
+ cursor: move;
524
+ }
525
+ .ui-menu {
526
+ list-style: none;
527
+ padding: 2px;
528
+ margin: 0;
529
+ display: block;
530
+ outline: none;
531
+ }
532
+ .ui-menu .ui-menu {
533
+ margin-top: -3px;
534
+ position: absolute;
535
+ }
536
+ .ui-menu .ui-menu-item {
537
+ margin: 0;
538
+ padding: 0;
539
+ width: 100%;
540
+ /* support: IE10, see #8844 */
541
+ list-style-image: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7);
542
+ }
543
+ .ui-menu .ui-menu-divider {
544
+ margin: 5px -2px 5px -2px;
545
+ height: 0;
546
+ font-size: 0;
547
+ line-height: 0;
548
+ border-width: 1px 0 0 0;
549
+ }
550
+ .ui-menu .ui-menu-item a {
551
+ text-decoration: none;
552
+ display: block;
553
+ padding: 2px .4em;
554
+ line-height: 1.5;
555
+ min-height: 0; /* support: IE7 */
556
+ font-weight: normal;
557
+ }
558
+ .ui-menu .ui-menu-item a.ui-state-focus,
559
+ .ui-menu .ui-menu-item a.ui-state-active {
560
+ font-weight: normal;
561
+ margin: -1px;
562
+ }
563
+
564
+ .ui-menu .ui-state-disabled {
565
+ font-weight: normal;
566
+ margin: .4em 0 .2em;
567
+ line-height: 1.5;
568
+ }
569
+ .ui-menu .ui-state-disabled a {
570
+ cursor: default;
571
+ }
572
+
573
+ /* icon support */
574
+ .ui-menu-icons {
575
+ position: relative;
576
+ }
577
+ .ui-menu-icons .ui-menu-item a {
578
+ position: relative;
579
+ padding-left: 2em;
580
+ }
581
+
582
+ /* left-aligned */
583
+ .ui-menu .ui-icon {
584
+ position: absolute;
585
+ top: .2em;
586
+ left: .2em;
587
+ }
588
+
589
+ /* right-aligned */
590
+ .ui-menu .ui-menu-icon {
591
+ position: static;
592
+ float: right;
593
+ }
594
+ .ui-progressbar {
595
+ height: 2em;
596
+ text-align: left;
597
+ overflow: hidden;
598
+ }
599
+ .ui-progressbar .ui-progressbar-value {
600
+ margin: -1px;
601
+ height: 100%;
602
+ }
603
+ .ui-progressbar .ui-progressbar-overlay {
604
+ background: url("../images/jquery-ui/animated-overlay.gif");
605
+ height: 100%;
606
+ filter: alpha(opacity=25);
607
+ opacity: 0.25;
608
+ }
609
+ .ui-progressbar-indeterminate .ui-progressbar-value {
610
+ background-image: none;
611
+ }
612
+ .ui-slider {
613
+ position: relative;
614
+ text-align: left;
615
+ }
616
+ .ui-slider .ui-slider-handle {
617
+ position: absolute;
618
+ z-index: 2;
619
+ width: 1.2em;
620
+ height: 1.2em;
621
+ cursor: default;
622
+ }
623
+ .ui-slider .ui-slider-range {
624
+ position: absolute;
625
+ z-index: 1;
626
+ font-size: .7em;
627
+ display: block;
628
+ border: 0;
629
+ background-position: 0 0;
630
+ }
631
+
632
+ /* For IE8 - See #6727 */
633
+ .ui-slider.ui-state-disabled .ui-slider-handle,
634
+ .ui-slider.ui-state-disabled .ui-slider-range {
635
+ filter: inherit;
636
+ }
637
+
638
+ .ui-slider-horizontal {
639
+ height: .8em;
640
+ }
641
+ .ui-slider-horizontal .ui-slider-handle {
642
+ top: -.3em;
643
+ margin-left: -.6em;
644
+ }
645
+ .ui-slider-horizontal .ui-slider-range {
646
+ top: 0;
647
+ height: 100%;
648
+ }
649
+ .ui-slider-horizontal .ui-slider-range-min {
650
+ left: 0;
651
+ }
652
+ .ui-slider-horizontal .ui-slider-range-max {
653
+ right: 0;
654
+ }
655
+
656
+ .ui-slider-vertical {
657
+ width: .8em;
658
+ height: 100px;
659
+ }
660
+ .ui-slider-vertical .ui-slider-handle {
661
+ left: -.3em;
662
+ margin-left: 0;
663
+ margin-bottom: -.6em;
664
+ }
665
+ .ui-slider-vertical .ui-slider-range {
666
+ left: 0;
667
+ width: 100%;
668
+ }
669
+ .ui-slider-vertical .ui-slider-range-min {
670
+ bottom: 0;
671
+ }
672
+ .ui-slider-vertical .ui-slider-range-max {
673
+ top: 0;
674
+ }
675
+ .ui-spinner {
676
+ position: relative;
677
+ display: inline-block;
678
+ overflow: hidden;
679
+ padding: 0;
680
+ vertical-align: middle;
681
+ }
682
+ .ui-spinner-input {
683
+ border: none;
684
+ background: none;
685
+ color: inherit;
686
+ padding: 0;
687
+ margin: .2em 0;
688
+ vertical-align: middle;
689
+ margin-left: .4em;
690
+ margin-right: 22px;
691
+ }
692
+ .ui-spinner-button {
693
+ width: 16px;
694
+ height: 50%;
695
+ font-size: .5em;
696
+ padding: 0;
697
+ margin: 0;
698
+ text-align: center;
699
+ position: absolute;
700
+ cursor: default;
701
+ display: block;
702
+ overflow: hidden;
703
+ right: 0;
704
+ }
705
+ /* more specificity required here to override default borders */
706
+ .ui-spinner a.ui-spinner-button {
707
+ border-top: none;
708
+ border-bottom: none;
709
+ border-right: none;
710
+ }
711
+ /* vertically center icon */
712
+ .ui-spinner .ui-icon {
713
+ position: absolute;
714
+ margin-top: -8px;
715
+ top: 50%;
716
+ left: 0;
717
+ }
718
+ .ui-spinner-up {
719
+ top: 0;
720
+ }
721
+ .ui-spinner-down {
722
+ bottom: 0;
723
+ }
724
+
725
+ /* TR overrides */
726
+ .ui-spinner .ui-icon-triangle-1-s {
727
+ /* need to fix icons sprite */
728
+ background-position: -65px -16px;
729
+ }
730
+ .ui-tabs {
731
+ position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
732
+ padding: .2em;
733
+ }
734
+ .ui-tabs .ui-tabs-nav {
735
+ margin: 0;
736
+ padding: .2em .2em 0;
737
+ }
738
+ .ui-tabs .ui-tabs-nav li {
739
+ list-style: none;
740
+ float: left;
741
+ position: relative;
742
+ top: 0;
743
+ margin: 1px .2em 0 0;
744
+ border-bottom-width: 0;
745
+ padding: 0;
746
+ white-space: nowrap;
747
+ }
748
+ .ui-tabs .ui-tabs-nav .ui-tabs-anchor {
749
+ float: left;
750
+ padding: .5em 1em;
751
+ text-decoration: none;
752
+ }
753
+ .ui-tabs .ui-tabs-nav li.ui-tabs-active {
754
+ margin-bottom: -1px;
755
+ padding-bottom: 1px;
756
+ }
757
+ .ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
758
+ .ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
759
+ .ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
760
+ cursor: text;
761
+ }
762
+ .ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
763
+ cursor: pointer;
764
+ }
765
+ .ui-tabs .ui-tabs-panel {
766
+ display: block;
767
+ border-width: 0;
768
+ padding: 1em 1.4em;
769
+ background: none;
770
+ }
771
+ .ui-tooltip {
772
+ padding: 8px;
773
+ position: absolute;
774
+ z-index: 9999;
775
+ max-width: 300px;
776
+ -webkit-box-shadow: 0 0 5px #aaa;
777
+ box-shadow: 0 0 5px #aaa;
778
+ }
779
+ body .ui-tooltip {
780
+ border-width: 2px;
781
+ }
782
+
783
+ /* Component containers
784
+ ----------------------------------*/
785
+ .slideshow .ui-widget {
786
+ font-family: Verdana,Arial,sans-serif;
787
+ font-size: 1.1em;
788
+ }
789
+ .slideshow .ui-widget .ui-widget {
790
+ font-size: 1em;
791
+ }
792
+ .slideshow .ui-widget input,
793
+ .slideshow .ui-widget select,
794
+ .slideshow .ui-widget textarea,
795
+ .slideshow .ui-widget button {
796
+ font-family: Verdana,Arial,sans-serif;
797
+ font-size: 1em;
798
+ }
799
+ .slideshow .ui-widget-content {
800
+ border: 1px solid #aaaaaa;
801
+ background: #ffffff url(../images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;
802
+ color: #222222;
803
+ }
804
+ .slideshow .ui-widget-content a {
805
+ color: #222222;
806
+ }
807
+ .slideshow .ui-widget-header {
808
+ border: 1px solid #aaaaaa;
809
+ background: #cccccc url(../images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;
810
+ color: #222222;
811
+ font-weight: bold;
812
+ }
813
+ .slideshow .ui-widget-header a {
814
+ color: #222222;
815
+ }
816
+
817
+ /* Interaction states
818
+ ----------------------------------*/
819
+ .slideshow .ui-state-default,
820
+ .slideshow .ui-widget-content .ui-state-default,
821
+ .slideshow .ui-widget-header .ui-state-default {
822
+ border: 1px solid #d3d3d3;
823
+ background: #e6e6e6 url(../images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;
824
+ font-weight: normal;
825
+ color: #555555;
826
+ }
827
+ .slideshow .ui-state-default a,
828
+ .slideshow .ui-state-default a:link,
829
+ .slideshow .ui-state-default a:visited {
830
+ color: #555555;
831
+ text-decoration: none;
832
+ }
833
+ .slideshow .ui-state-hover,
834
+ .slideshow .ui-widget-content .ui-state-hover,
835
+ .slideshow .ui-widget-header .ui-state-hover,
836
+ .slideshow .ui-state-focus,
837
+ .slideshow .ui-widget-content .ui-state-focus,
838
+ .slideshow .ui-widget-header .ui-state-focus {
839
+ border: 1px solid #999999;
840
+ background: #dadada url(../images/jquery-ui/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;
841
+ font-weight: normal;
842
+ color: #212121;
843
+ }
844
+ .slideshow .ui-state-hover a,
845
+ .slideshow .ui-state-hover a:hover,
846
+ .slideshow .ui-state-hover a:link,
847
+ .slideshow .ui-state-hover a:visited,
848
+ .slideshow .ui-state-focus a,
849
+ .slideshow .ui-state-focus a:hover,
850
+ .slideshow .ui-state-focus a:link,
851
+ .slideshow .ui-state-focus a:visited {
852
+ color: #212121;
853
+ text-decoration: none;
854
+ }
855
+ .slideshow .ui-state-active,
856
+ .slideshow .ui-widget-content .ui-state-active,
857
+ .slideshow .ui-widget-header .ui-state-active {
858
+ border: 1px solid #aaaaaa;
859
+ background: #ffffff url(../images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;
860
+ font-weight: normal;
861
+ color: #212121;
862
+ }
863
+ .slideshow .ui-state-active a,
864
+ .slideshow .ui-state-active a:link,
865
+ .slideshow .ui-state-active a:visited {
866
+ color: #212121;
867
+ text-decoration: none;
868
+ }
869
+
870
+ /* Interaction Cues
871
+ ----------------------------------*/
872
+ .slideshow .ui-state-highlight,
873
+ .slideshow .ui-widget-content .ui-state-highlight,
874
+ .slideshow .ui-widget-header .ui-state-highlight {
875
+ border: 1px solid #fcefa1;
876
+ background: #fbf9ee url(../images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;
877
+ color: #363636;
878
+ }
879
+ .slideshow .ui-state-highlight a,
880
+ .slideshow .ui-widget-content .ui-state-highlight a,
881
+ .slideshow .ui-widget-header .ui-state-highlight a {
882
+ color: #363636;
883
+ }
884
+ .slideshow .ui-state-error,
885
+ .slideshow .ui-widget-content .ui-state-error,
886
+ .slideshow .ui-widget-header .ui-state-error {
887
+ border: 1px solid #cd0a0a;
888
+ background: #fef1ec url(../images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;
889
+ color: #cd0a0a;
890
+ }
891
+ .slideshow .ui-state-error a,
892
+ .slideshow .ui-widget-content .ui-state-error a,
893
+ .slideshow .ui-widget-header .ui-state-error a {
894
+ color: #cd0a0a;
895
+ }
896
+ .slideshow .ui-state-error-text,
897
+ .slideshow .ui-widget-content .ui-state-error-text,
898
+ .slideshow .ui-widget-header .ui-state-error-text {
899
+ color: #cd0a0a;
900
+ }
901
+ .slideshow .ui-priority-primary,
902
+ .slideshow .ui-widget-content .ui-priority-primary,
903
+ .slideshow .ui-widget-header .ui-priority-primary {
904
+ font-weight: bold;
905
+ }
906
+ .slideshow .ui-priority-secondary,
907
+ .slideshow .ui-widget-content .ui-priority-secondary,
908
+ .slideshow .ui-widget-header .ui-priority-secondary {
909
+ opacity: .7;
910
+ filter:Alpha(Opacity=70);
911
+ font-weight: normal;
912
+ }
913
+ .slideshow .ui-state-disabled,
914
+ .slideshow .ui-widget-content .ui-state-disabled,
915
+ .slideshow .ui-widget-header .ui-state-disabled {
916
+ opacity: .35;
917
+ filter:Alpha(Opacity=35);
918
+ background-image: none;
919
+ }
920
+ .slideshow .ui-state-disabled .ui-icon {
921
+ filter:Alpha(Opacity=35); /* For IE8 - See #6059 */
922
+ }
923
+
924
+ /* Icons
925
+ ----------------------------------*/
926
+
927
+ /* states and images */
928
+ .slideshow .ui-icon {
929
+ width: 16px;
930
+ height: 16px;
931
+ }
932
+ .slideshow .ui-icon,
933
+ .slideshow .ui-widget-content .ui-icon {
934
+ background-image: url(../images/jquery-ui/ui-icons_222222_256x240.png);
935
+ }
936
+ .slideshow .ui-widget-header .ui-icon {
937
+ background-image: url(../images/jquery-ui/ui-icons_222222_256x240.png);
938
+ }
939
+ .slideshow .ui-state-default .ui-icon {
940
+ background-image: url(../images/jquery-ui/ui-icons_888888_256x240.png);
941
+ }
942
+ .slideshow .ui-state-hover .ui-icon,
943
+ .slideshow .ui-state-focus .ui-icon {
944
+ background-image: url(../images/jquery-ui/ui-icons_454545_256x240.png);
945
+ }
946
+ .slideshow .ui-state-active .ui-icon {
947
+ background-image: url(../images/jquery-ui/ui-icons_454545_256x240.png);
948
+ }
949
+ .slideshow .ui-state-highlight .ui-icon {
950
+ background-image: url(../images/jquery-ui/ui-icons_2e83ff_256x240.png);
951
+ }
952
+ .slideshow .ui-state-error .ui-icon,
953
+ .slideshow .ui-state-error-text .ui-icon {
954
+ background-image: url(../images/jquery-ui/ui-icons_cd0a0a_256x240.png);
955
+ }
956
+
957
+ /* positioning */
958
+ .slideshow .ui-icon-blank { background-position: 16px 16px; }
959
+ .slideshow .ui-icon-carat-1-n { background-position: 0 0; }
960
+ .slideshow .ui-icon-carat-1-ne { background-position: -16px 0; }
961
+ .slideshow .ui-icon-carat-1-e { background-position: -32px 0; }
962
+ .slideshow .ui-icon-carat-1-se { background-position: -48px 0; }
963
+ .slideshow .ui-icon-carat-1-s { background-position: -64px 0; }
964
+ .slideshow .ui-icon-carat-1-sw { background-position: -80px 0; }
965
+ .slideshow .ui-icon-carat-1-w { background-position: -96px 0; }
966
+ .slideshow .ui-icon-carat-1-nw { background-position: -112px 0; }
967
+ .slideshow .ui-icon-carat-2-n-s { background-position: -128px 0; }
968
+ .slideshow .ui-icon-carat-2-e-w { background-position: -144px 0; }
969
+ .slideshow .ui-icon-triangle-1-n { background-position: 0 -16px; }
970
+ .slideshow .ui-icon-triangle-1-ne { background-position: -16px -16px; }
971
+ .slideshow .ui-icon-triangle-1-e { background-position: -32px -16px; }
972
+ .slideshow .ui-icon-triangle-1-se { background-position: -48px -16px; }
973
+ .slideshow .ui-icon-triangle-1-s { background-position: -64px -16px; }
974
+ .slideshow .ui-icon-triangle-1-sw { background-position: -80px -16px; }
975
+ .slideshow .ui-icon-triangle-1-w { background-position: -96px -16px; }
976
+ .slideshow .ui-icon-triangle-1-nw { background-position: -112px -16px; }
977
+ .slideshow .ui-icon-triangle-2-n-s { background-position: -128px -16px; }
978
+ .slideshow .ui-icon-triangle-2-e-w { background-position: -144px -16px; }
979
+ .slideshow .ui-icon-arrow-1-n { background-position: 0 -32px; }
980
+ .slideshow .ui-icon-arrow-1-ne { background-position: -16px -32px; }
981
+ .slideshow .ui-icon-arrow-1-e { background-position: -32px -32px; }
982
+ .slideshow .ui-icon-arrow-1-se { background-position: -48px -32px; }
983
+ .slideshow .ui-icon-arrow-1-s { background-position: -64px -32px; }
984
+ .slideshow .ui-icon-arrow-1-sw { background-position: -80px -32px; }
985
+ .slideshow .ui-icon-arrow-1-w { background-position: -96px -32px; }
986
+ .slideshow .ui-icon-arrow-1-nw { background-position: -112px -32px; }
987
+ .slideshow .ui-icon-arrow-2-n-s { background-position: -128px -32px; }
988
+ .slideshow .ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
989
+ .slideshow .ui-icon-arrow-2-e-w { background-position: -160px -32px; }
990
+ .slideshow .ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
991
+ .slideshow .ui-icon-arrowstop-1-n { background-position: -192px -32px; }
992
+ .slideshow .ui-icon-arrowstop-1-e { background-position: -208px -32px; }
993
+ .slideshow .ui-icon-arrowstop-1-s { background-position: -224px -32px; }
994
+ .slideshow .ui-icon-arrowstop-1-w { background-position: -240px -32px; }
995
+ .slideshow .ui-icon-arrowthick-1-n { background-position: 0 -48px; }
996
+ .slideshow .ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
997
+ .slideshow .ui-icon-arrowthick-1-e { background-position: -32px -48px; }
998
+ .slideshow .ui-icon-arrowthick-1-se { background-position: -48px -48px; }
999
+ .slideshow .ui-icon-arrowthick-1-s { background-position: -64px -48px; }
1000
+ .slideshow .ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
1001
+ .slideshow .ui-icon-arrowthick-1-w { background-position: -96px -48px; }
1002
+ .slideshow .ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
1003
+ .slideshow .ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
1004
+ .slideshow .ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
1005
+ .slideshow .ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
1006
+ .slideshow .ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
1007
+ .slideshow .ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
1008
+ .slideshow .ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
1009
+ .slideshow .ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
1010
+ .slideshow .ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
1011
+ .slideshow .ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
1012
+ .slideshow .ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
1013
+ .slideshow .ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
1014
+ .slideshow .ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
1015
+ .slideshow .ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
1016
+ .slideshow .ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
1017
+ .slideshow .ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
1018
+ .slideshow .ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
1019
+ .slideshow .ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
1020
+ .slideshow .ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
1021
+ .slideshow .ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
1022
+ .slideshow .ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
1023
+ .slideshow .ui-icon-arrow-4 { background-position: 0 -80px; }
1024
+ .slideshow .ui-icon-arrow-4-diag { background-position: -16px -80px; }
1025
+ .slideshow .ui-icon-extlink { background-position: -32px -80px; }
1026
+ .slideshow .ui-icon-newwin { background-position: -48px -80px; }
1027
+ .slideshow .ui-icon-refresh { background-position: -64px -80px; }
1028
+ .slideshow .ui-icon-shuffle { background-position: -80px -80px; }
1029
+ .slideshow .ui-icon-transfer-e-w { background-position: -96px -80px; }
1030
+ .slideshow .ui-icon-transferthick-e-w { background-position: -112px -80px; }
1031
+ .slideshow .ui-icon-folder-collapsed { background-position: 0 -96px; }
1032
+ .slideshow .ui-icon-folder-open { background-position: -16px -96px; }
1033
+ .slideshow .ui-icon-document { background-position: -32px -96px; }
1034
+ .slideshow .ui-icon-document-b { background-position: -48px -96px; }
1035
+ .slideshow .ui-icon-note { background-position: -64px -96px; }
1036
+ .slideshow .ui-icon-mail-closed { background-position: -80px -96px; }
1037
+ .slideshow .ui-icon-mail-open { background-position: -96px -96px; }
1038
+ .slideshow .ui-icon-suitcase { background-position: -112px -96px; }
1039
+ .slideshow .ui-icon-comment { background-position: -128px -96px; }
1040
+ .slideshow .ui-icon-person { background-position: -144px -96px; }
1041
+ .slideshow .ui-icon-print { background-position: -160px -96px; }
1042
+ .slideshow .ui-icon-trash { background-position: -176px -96px; }
1043
+ .slideshow .ui-icon-locked { background-position: -192px -96px; }
1044
+ .slideshow .ui-icon-unlocked { background-position: -208px -96px; }
1045
+ .slideshow .ui-icon-bookmark { background-position: -224px -96px; }
1046
+ .slideshow .ui-icon-tag { background-position: -240px -96px; }
1047
+ .slideshow .ui-icon-home { background-position: 0 -112px; }
1048
+ .slideshow .ui-icon-flag { background-position: -16px -112px; }
1049
+ .slideshow .ui-icon-calendar { background-position: -32px -112px; }
1050
+ .slideshow .ui-icon-cart { background-position: -48px -112px; }
1051
+ .slideshow .ui-icon-pencil { background-position: -64px -112px; }
1052
+ .slideshow .ui-icon-clock { background-position: -80px -112px; }
1053
+ .slideshow .ui-icon-disk { background-position: -96px -112px; }
1054
+ .slideshow .ui-icon-calculator { background-position: -112px -112px; }
1055
+ .slideshow .ui-icon-zoomin { background-position: -128px -112px; }
1056
+ .slideshow .ui-icon-zoomout { background-position: -144px -112px; }
1057
+ .slideshow .ui-icon-search { background-position: -160px -112px; }
1058
+ .slideshow .ui-icon-wrench { background-position: -176px -112px; }
1059
+ .slideshow .ui-icon-gear { background-position: -192px -112px; }
1060
+ .slideshow .ui-icon-heart { background-position: -208px -112px; }
1061
+ .slideshow .ui-icon-star { background-position: -224px -112px; }
1062
+ .slideshow .ui-icon-link { background-position: -240px -112px; }
1063
+ .slideshow .ui-icon-cancel { background-position: 0 -128px; }
1064
+ .slideshow .ui-icon-plus { background-position: -16px -128px; }
1065
+ .slideshow .ui-icon-plusthick { background-position: -32px -128px; }
1066
+ .slideshow .ui-icon-minus { background-position: -48px -128px; }
1067
+ .slideshow .ui-icon-minusthick { background-position: -64px -128px; }
1068
+ .slideshow .ui-icon-close { background-position: -80px -128px; }
1069
+ .slideshow .ui-icon-closethick { background-position: -96px -128px; }
1070
+ .slideshow .ui-icon-key { background-position: -112px -128px; }
1071
+ .slideshow .ui-icon-lightbulb { background-position: -128px -128px; }
1072
+ .slideshow .ui-icon-scissors { background-position: -144px -128px; }
1073
+ .slideshow .ui-icon-clipboard { background-position: -160px -128px; }
1074
+ .slideshow .ui-icon-copy { background-position: -176px -128px; }
1075
+ .slideshow .ui-icon-contact { background-position: -192px -128px; }
1076
+ .slideshow .ui-icon-image { background-position: -208px -128px; }
1077
+ .slideshow .ui-icon-video { background-position: -224px -128px; }
1078
+ .slideshow .ui-icon-script { background-position: -240px -128px; }
1079
+ .slideshow .ui-icon-alert { background-position: 0 -144px; }
1080
+ .slideshow .ui-icon-info { background-position: -16px -144px; }
1081
+ .slideshow .ui-icon-notice { background-position: -32px -144px; }
1082
+ .slideshow .ui-icon-help { background-position: -48px -144px; }
1083
+ .slideshow .ui-icon-check { background-position: -64px -144px; }
1084
+ .slideshow .ui-icon-bullet { background-position: -80px -144px; }
1085
+ .slideshow .ui-icon-radio-on { background-position: -96px -144px; }
1086
+ .slideshow .ui-icon-radio-off { background-position: -112px -144px; }
1087
+ .slideshow .ui-icon-pin-w { background-position: -128px -144px; }
1088
+ .slideshow .ui-icon-pin-s { background-position: -144px -144px; }
1089
+ .slideshow .ui-icon-play { background-position: 0 -160px; }
1090
+ .slideshow .ui-icon-pause { background-position: -16px -160px; }
1091
+ .slideshow .ui-icon-seek-next { background-position: -32px -160px; }
1092
+ .slideshow .ui-icon-seek-prev { background-position: -48px -160px; }
1093
+ .slideshow .ui-icon-seek-end { background-position: -64px -160px; }
1094
+ .slideshow .ui-icon-seek-start { background-position: -80px -160px; }
1095
+ /* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
1096
+ .slideshow .ui-icon-seek-first { background-position: -80px -160px; }
1097
+ .slideshow .ui-icon-stop { background-position: -96px -160px; }
1098
+ .slideshow .ui-icon-eject { background-position: -112px -160px; }
1099
+ .slideshow .ui-icon-volume-off { background-position: -128px -160px; }
1100
+ .slideshow .ui-icon-volume-on { background-position: -144px -160px; }
1101
+ .slideshow .ui-icon-power { background-position: 0 -176px; }
1102
+ .slideshow .ui-icon-signal-diag { background-position: -16px -176px; }
1103
+ .slideshow .ui-icon-signal { background-position: -32px -176px; }
1104
+ .slideshow .ui-icon-battery-0 { background-position: -48px -176px; }
1105
+ .slideshow .ui-icon-battery-1 { background-position: -64px -176px; }
1106
+ .slideshow .ui-icon-battery-2 { background-position: -80px -176px; }
1107
+ .slideshow .ui-icon-battery-3 { background-position: -96px -176px; }
1108
+ .slideshow .ui-icon-circle-plus { background-position: 0 -192px; }
1109
+ .slideshow .ui-icon-circle-minus { background-position: -16px -192px; }
1110
+ .slideshow .ui-icon-circle-close { background-position: -32px -192px; }
1111
+ .slideshow .ui-icon-circle-triangle-e { background-position: -48px -192px; }
1112
+ .slideshow .ui-icon-circle-triangle-s { background-position: -64px -192px; }
1113
+ .slideshow .ui-icon-circle-triangle-w { background-position: -80px -192px; }
1114
+ .slideshow .ui-icon-circle-triangle-n { background-position: -96px -192px; }
1115
+ .slideshow .ui-icon-circle-arrow-e { background-position: -112px -192px; }
1116
+ .slideshow .ui-icon-circle-arrow-s { background-position: -128px -192px; }
1117
+ .slideshow .ui-icon-circle-arrow-w { background-position: -144px -192px; }
1118
+ .slideshow .ui-icon-circle-arrow-n { background-position: -160px -192px; }
1119
+ .slideshow .ui-icon-circle-zoomin { background-position: -176px -192px; }
1120
+ .slideshow .ui-icon-circle-zoomout { background-position: -192px -192px; }
1121
+ .slideshow .ui-icon-circle-check { background-position: -208px -192px; }
1122
+ .slideshow .ui-icon-circlesmall-plus { background-position: 0 -208px; }
1123
+ .slideshow .ui-icon-circlesmall-minus { background-position: -16px -208px; }
1124
+ .slideshow .ui-icon-circlesmall-close { background-position: -32px -208px; }
1125
+ .slideshow .ui-icon-squaresmall-plus { background-position: -48px -208px; }
1126
+ .slideshow .ui-icon-squaresmall-minus { background-position: -64px -208px; }
1127
+ .slideshow .ui-icon-squaresmall-close { background-position: -80px -208px; }
1128
+ .slideshow .ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
1129
+ .slideshow .ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
1130
+ .slideshow .ui-icon-grip-solid-vertical { background-position: -32px -224px; }
1131
+ .slideshow .ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
1132
+ .slideshow .ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
1133
+ .slideshow .ui-icon-grip-diagonal-se { background-position: -80px -224px; }
1134
+
1135
+
1136
+ /* Misc visuals
1137
+ ----------------------------------*/
1138
+
1139
+ /* Corner radius */
1140
+ .slideshow .ui-corner-all,
1141
+ .slideshow .ui-corner-top,
1142
+ .slideshow .ui-corner-left,
1143
+ .slideshow .ui-corner-tl {
1144
+ border-top-left-radius: 4px;
1145
+ }
1146
+ .slideshow .ui-corner-all,
1147
+ .slideshow .ui-corner-top,
1148
+ .slideshow .ui-corner-right,
1149
+ .slideshow .ui-corner-tr {
1150
+ border-top-right-radius: 4px;
1151
+ }
1152
+ .slideshow .ui-corner-all,
1153
+ .slideshow .ui-corner-bottom,
1154
+ .slideshow .ui-corner-left,
1155
+ .slideshow .ui-corner-bl {
1156
+ border-bottom-left-radius: 4px;
1157
+ }
1158
+ .slideshow .ui-corner-all,
1159
+ .slideshow .ui-corner-bottom,
1160
+ .slideshow .ui-corner-right,
1161
+ .slideshow .ui-corner-br {
1162
+ border-bottom-right-radius: 4px;
1163
+ }
1164
+
1165
+ /* Overlays */
1166
+ .slideshow .ui-widget-overlay {
1167
+ background: #aaaaaa url(../images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
1168
+ opacity: .3;
1169
+ filter: Alpha(Opacity=30);
1170
+ }
1171
+ .slideshow .ui-widget-shadow {
1172
+ margin: -8px 0 0 -8px;
1173
+ padding: 8px;
1174
+ background: #aaaaaa url(../images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;
1175
+ opacity: .3;
1176
+ filter: Alpha(Opacity=30);
1177
+ border-radius: 8px;
1178
+ }
fonts/slideshow_dashicons.eot ADDED
Binary file
fonts/slideshow_dashicons.svg ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
3
+ <svg xmlns="http://www.w3.org/2000/svg">
4
+ <metadata>Generated by IcoMoon</metadata>
5
+ <defs>
6
+ <font id="slideshow_dashicons" horiz-adv-x="1024">
7
+ <font-face units-per-em="1024" ascent="960" descent="-64" />
8
+ <missing-glyph horiz-adv-x="1024" />
9
+ <glyph unicode="&#x20;" d="" horiz-adv-x="512" />
10
+ <glyph unicode="&#xf180;" d="M460.8 499.2v307.2h-307.2v-307.2h307.2zM870.4 499.2v307.2h-307.2v-307.2h307.2zM460.8 89.6v307.2h-307.2v-307.2h307.2zM870.4 89.6v307.2h-307.2v-307.2h307.2z" />
11
+ <glyph unicode="&#xf228;" d="M153.6 755.2h716.8v-102.4h-716.8v102.4zM153.6 499.2h716.8v-102.4h-716.8v102.4zM153.6 243.2h716.8v-102.4h-716.8v102.4z" />
12
+ <glyph unicode="&#xf233;" d="M256 806.4h716.8v-563.2h-102.4v-102.4h-102.4v-102.4h-716.8v563.2h102.4v102.4h102.4v102.4zM921.6 294.4v460.8h-614.4v-460.8h614.4zM768 499.2q-41.984 0-72.192 30.208t-30.208 72.192 30.208 72.192 72.192 30.208 72.192-30.208 30.208-72.192-30.208-72.192-72.192-30.208zM819.2 192v51.2h-563.2v409.6h-51.2v-460.8h614.4zM358.4 652.8l512-307.2h-512v307.2zM716.8 89.6v51.2h-563.2v409.6h-51.2v-460.8h614.4z" />
13
+ </font></defs></svg>
fonts/slideshow_dashicons.ttf ADDED
Binary file
fonts/slideshow_dashicons.woff ADDED
Binary file
helpers/db.php CHANGED
@@ -217,12 +217,18 @@ class GalleryDbHelper extends GalleryPlugin {
217
  if (!empty($record_id) && $record = $this -> find(array('id' => $record_id))) {
218
  $query = "DELETE FROM `" . $this -> table . "` WHERE `id` = '" . $record_id . "' LIMIT 1";
219
 
220
- if ($wpdb -> query($query)) {
221
  switch ($this -> model) {
222
  case 'Gallery' :
223
  $query = "DELETE FROM `" . $wpdb -> prefix . strtolower($this -> pre) . "_galleriesslides` WHERE `gallery_id` = '" . $record_id . "'";
224
  $wpdb -> query($query);
225
  break;
 
 
 
 
 
 
226
  }
227
 
228
  return true;
217
  if (!empty($record_id) && $record = $this -> find(array('id' => $record_id))) {
218
  $query = "DELETE FROM `" . $this -> table . "` WHERE `id` = '" . $record_id . "' LIMIT 1";
219
 
220
+ if ($wpdb -> query($query)) {
221
  switch ($this -> model) {
222
  case 'Gallery' :
223
  $query = "DELETE FROM `" . $wpdb -> prefix . strtolower($this -> pre) . "_galleriesslides` WHERE `gallery_id` = '" . $record_id . "'";
224
  $wpdb -> query($query);
225
  break;
226
+ case 'Slide' :
227
+ $imagepath = GalleryHtmlHelper::uploads_path() . DS . $this -> plugin_name . DS . $record -> image;
228
+ @unlink($imagepath);
229
+ $query = "DELETE FROM `" . $wpdb -> prefix . strtolower($this -> pre) . "_galleriesslides` WHERE `slide_id` = '" . $record_id . "'";
230
+ $wpdb -> query($query);
231
+ break;
232
  }
233
 
234
  return true;
helpers/html.php CHANGED
@@ -2,6 +2,39 @@
2
 
3
  class GalleryHtmlHelper extends GalleryPlugin {
4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5
  function section_name($section = null) {
6
  if (!empty($section)) {
7
  switch ($section) {
@@ -66,7 +99,9 @@ class GalleryHtmlHelper extends GalleryPlugin {
66
  if (!empty($width)) { $tt_image .= '&w=' . $width; };
67
  if (!empty($height)) { $tt_image .= '&h=' . $height; };
68
  $tt_image .= '&q=' . $quality . '"';
69
- $tt_image .= '&a=t';
 
 
70
  if (!empty($class)) { $tt_image .= ' class="' . $class . '"'; };
71
  if (!empty($rel)) { $tt_image .= ' rel="' . $rel . '"'; }
72
  $tt_image .= ' />';
@@ -78,17 +113,19 @@ class GalleryHtmlHelper extends GalleryPlugin {
78
  if (!empty($width)) { $tt_image .= '&w=' . $width; };
79
  if (!empty($height)) { $tt_image .= '&h=' . $height; };
80
  $tt_image .= '&q=' . $quality;
81
- $tt_image .= '&a=t';
 
 
82
  return $tt_image;
83
  }
84
 
85
  function timthumb_url() {
86
- return site_url() . '/wp-content/plugins/slideshow-gallery/vendors/timthumb.php';
87
  }
88
 
89
  function image_url($filename = null) {
90
  if (!empty($filename)) {
91
- return site_url() . '/wp-content/uploads/slideshow-gallery/' . $filename;
92
  }
93
 
94
  return false;
@@ -136,32 +173,59 @@ class GalleryHtmlHelper extends GalleryPlugin {
136
  return false;
137
  }
138
 
139
- function retainquery($add = '') {
140
- $url = $_SERVER['REQUEST_URI'];
141
-
142
- if (($urls = @explode("?", $url)) !== false) {
143
- if (!empty($urls[1])) {
144
- if (!empty($add)) {
145
- if (($adds = explode("&", str_replace("&amp;", "&", $add))) !== false) {
146
- foreach ($adds as $qstring) {
147
- if (($qparts = @explode("=", $qstring)) !== false) {
148
- if (!empty($qparts[0])) {
149
- if (preg_match("/\&?" . $qparts[0] . "\=([0-9a-z+]*)/i", $urls[1], $matches)) {
150
- $urls[1] = preg_replace("/\&?" . $qparts[0] . "\=([0-9a-z+]*)/i", "", $urls[1]);
151
- }
152
- }
153
- }
154
- }
155
- }
156
  }
157
  }
158
  }
159
 
160
- $urls[1] = preg_replace("/\&?" . $this -> pre . "message\=([0-9a-z+]*)/i", "", $urls[1]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
161
  $url = $urls[0];
162
  $url .= '?';
163
- $url .= (empty($urls[1])) ? '' : $urls[1] . '&amp;';
164
- $url .= $add;
 
 
165
 
166
  return preg_replace("/\?(\&)?/si", "?", $url);
167
  }
2
 
3
  class GalleryHtmlHelper extends GalleryPlugin {
4
 
5
+ function help($help = null) {
6
+ if (!empty($help)) {
7
+ ob_start();
8
+
9
+ ?>
10
+
11
+ <span class="galleryhelp">
12
+ <a href="" onclick="return false;" title="<?php echo esc_attr(strip_tags(stripslashes($help))); ?>">?</a>
13
+ </span>
14
+
15
+ <?php
16
+
17
+ $html = ob_get_clean();
18
+ return $html;
19
+ }
20
+ }
21
+
22
+ function uploads_path() {
23
+ if ($upload_dir = wp_upload_dir()) {
24
+ return str_replace("\\", "/", $upload_dir['basedir']);
25
+ }
26
+
27
+ return str_replace("\\", "/", WP_CONTENT_DIR . '/uploads');
28
+ }
29
+
30
+ function uploads_url() {
31
+ if ($upload_dir = wp_upload_dir()) {
32
+ return $upload_dir['baseurl'];
33
+ }
34
+
35
+ return site_url() . '/wp-content/uploads';
36
+ }
37
+
38
  function section_name($section = null) {
39
  if (!empty($section)) {
40
  switch ($section) {
99
  if (!empty($width)) { $tt_image .= '&w=' . $width; };
100
  if (!empty($height)) { $tt_image .= '&h=' . $height; };
101
  $tt_image .= '&q=' . $quality . '"';
102
+ $timthumb_align = $this -> get_option('timthumb_align');
103
+ $align = (!empty($timthumb_align)) ? $timthumb_align : "c";
104
+ $tt_image .= '&a=' . $align;
105
  if (!empty($class)) { $tt_image .= ' class="' . $class . '"'; };
106
  if (!empty($rel)) { $tt_image .= ' rel="' . $rel . '"'; }
107
  $tt_image .= ' />';
113
  if (!empty($width)) { $tt_image .= '&w=' . $width; };
114
  if (!empty($height)) { $tt_image .= '&h=' . $height; };
115
  $tt_image .= '&q=' . $quality;
116
+ $timthumb_align = $this -> get_option('timthumb_align');
117
+ $align = (!empty($timthumb_align)) ? $timthumb_align : "c";
118
+ $tt_image .= '&a=' . $align;
119
  return $tt_image;
120
  }
121
 
122
  function timthumb_url() {
123
+ return plugins_url() . '/slideshow-gallery/vendors/timthumb.php';
124
  }
125
 
126
  function image_url($filename = null) {
127
  if (!empty($filename)) {
128
+ return $this -> uploads_url() . '/slideshow-gallery/' . $filename;
129
  }
130
 
131
  return false;
173
  return false;
174
  }
175
 
176
+ function queryString($params, $name = null) {
177
+
178
+ $ret = "";
179
+ foreach ($params as $key => $val) {
180
+ if (is_array($val)) {
181
+ if ($name == null) {
182
+ $ret .= GalleryHtmlHelper::queryString($val, $key);
183
+ } else {
184
+ $ret .= GalleryHtmlHelper::queryString($val, $name . "[$key]");
185
+ }
186
+ } else {
187
+ if ($name != null) {
188
+ $ret .= $name . "[$key]" . "=" . $val . "&";
189
+ } else {
190
+ $ret .= $key . "=" . $val . "&";
 
 
191
  }
192
  }
193
  }
194
 
195
+ return rtrim($ret, "&");
196
+ }
197
+
198
+ function retainquery($add = null, $old_url = null, $endslash = true) {
199
+ $url = (empty($old_url)) ? $_SERVER['REQUEST_URI'] : rtrim($old_url, '&');
200
+ $urls = @explode("?", $url);
201
+ $add = ltrim($add, '&');
202
+
203
+ $url_parts = @parse_url($url);
204
+ parse_str($url_parts['query'], $path_parts);
205
+ $add = str_replace("&amp;", "&", $add);
206
+ parse_str($add, $add_parts);
207
+
208
+ if (empty($path_parts) || !is_array($path_parts)) {
209
+ $path_parts = array();
210
+ }
211
+
212
+ if (!empty($add_parts) && is_array($add_parts)) {
213
+ foreach ($add_parts as $addkey => $addvalue) {
214
+ $path_parts[$addkey] = $addvalue;
215
+ }
216
+ }
217
+
218
+ $querystring = GalleryHtmlHelper::queryString($path_parts);
219
+
220
+ $urls[1] = preg_replace("/[\&|\?]" . $this -> pre . "message\=([0-9a-z-_+]*)/i", "", $urls[1]);
221
+ $urls[1] = preg_replace("/[\&|\?]page\=/si", "", $urls[1]);
222
+
223
  $url = $urls[0];
224
  $url .= '?';
225
+
226
+ if (!empty($querystring)) {
227
+ $url .= '&' . $querystring;
228
+ }
229
 
230
  return preg_replace("/\?(\&)?/si", "?", $url);
231
  }
images/icon-32.png DELETED
Binary file
images/icon-galleries-32.png DELETED
Binary file
images/icon-settings-32.png DELETED
Binary file
images/icon.png DELETED
Binary file
images/jquery-ui/animated-overlay.gif ADDED
Binary file
images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png ADDED
Binary file
images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png ADDED
Binary file
images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png ADDED
Binary file
images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png ADDED
Binary file
images/jquery-ui/ui-bg_glass_75_dadada_1x400.png ADDED
Binary file
images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png ADDED
Binary file
images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png ADDED
Binary file
images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png ADDED
Binary file
images/jquery-ui/ui-icons_222222_256x240.png ADDED
Binary file
images/jquery-ui/ui-icons_2e83ff_256x240.png ADDED
Binary file
images/jquery-ui/ui-icons_454545_256x240.png ADDED
Binary file
images/jquery-ui/ui-icons_888888_256x240.png ADDED
Binary file
images/jquery-ui/ui-icons_cd0a0a_256x240.png ADDED
Binary file
images/listgrid.png DELETED
Binary file
images/sort.gif ADDED
Binary file
js/colorbox.js CHANGED
@@ -1,13 +1,24 @@
1
- // ColorBox v1.3.19.3 - jQuery lightbox plugin
2
- // (c) 2011 Jack Moore - jacklmoore.com
3
- // License: http://www.opensource.org/licenses/mit-license.php
 
 
 
4
  (function ($, document, window) {
5
  var
6
- // Default settings object.
7
  // See http://jacklmoore.com/colorbox for details.
8
  defaults = {
 
 
 
 
 
 
 
9
  transition: "elastic",
10
  speed: 300,
 
11
  width: false,
12
  initialWidth: "600",
13
  innerWidth: false,
@@ -18,17 +29,39 @@
18
  maxHeight: false,
19
  scalePhotos: true,
20
  scrolling: true,
21
- inline: false,
22
- html: false,
23
- iframe: false,
24
- fastIframe: true,
25
- photo: false,
26
  href: false,
27
  title: false,
28
  rel: false,
29
  opacity: 0.9,
30
  preloading: true,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
 
 
 
 
 
 
 
32
  current: "image {current} of {total}",
33
  previous: "previous",
34
  next: "next",
@@ -36,29 +69,16 @@
36
  xhrError: "This content failed to load.",
37
  imgError: "This image failed to load.",
38
 
39
- open: false,
40
  returnFocus: true,
41
- reposition: true,
42
- loop: true,
43
- slideshow: false,
44
- slideshowAuto: true,
45
- slideshowSpeed: 2500,
46
- slideshowStart: "start slideshow",
47
- slideshowStop: "stop slideshow",
48
  onOpen: false,
49
  onLoad: false,
50
  onComplete: false,
51
  onCleanup: false,
52
- onClosed: false,
53
- overlayClose: true,
54
- escKey: true,
55
- arrowKey: true,
56
- top: false,
57
- bottom: false,
58
- left: false,
59
- right: false,
60
- fixed: false,
61
- data: undefined
62
  },
63
 
64
  // Abstracting the HTML and event identifiers for easy rebranding
@@ -66,18 +86,13 @@
66
  prefix = 'cbox',
67
  boxElement = prefix + 'Element',
68
 
69
- // Events
70
  event_open = prefix + '_open',
71
  event_load = prefix + '_load',
72
  event_complete = prefix + '_complete',
73
  event_cleanup = prefix + '_cleanup',
74
  event_closed = prefix + '_closed',
75
  event_purge = prefix + '_purge',
76
-
77
- // Special Handling for IE
78
- isIE = !$.support.opacity && !$.support.style, // IE7 & IE8
79
- isIE6 = isIE && !window.XMLHttpRequest, // IE6
80
- event_ie6 = prefix + '_IE6',
81
 
82
  // Cached jQuery Object Variables
83
  $overlay,
@@ -100,6 +115,7 @@
100
  $prev,
101
  $close,
102
  $groupControls,
 
103
 
104
  // Variables for cached values or use across multiple functions
105
  settings,
@@ -116,13 +132,16 @@
116
  loadingTimer,
117
  publicMethod,
118
  div = "div",
 
 
 
119
  init;
120
 
121
  // ****************
122
  // HELPER FUNCTIONS
123
  // ****************
124
 
125
- // Convience function for creating new jQuery objects
126
  function $tag(tag, id, css) {
127
  var element = document.createElement(tag);
128
 
@@ -136,11 +155,17 @@
136
 
137
  return $(element);
138
  }
 
 
 
 
 
 
139
 
140
  // Determine the next and previous members in a group.
141
  function getIndex(increment) {
142
- var
143
- max = $related.length,
144
  newIndex = (index + increment) % max;
145
 
146
  return (newIndex < 0) ? max + newIndex : newIndex;
@@ -148,15 +173,26 @@
148
 
149
  // Convert '%' and 'px' values to integers
150
  function setSize(size, dimension) {
151
- return Math.round((/%/.test(size) ? ((dimension === 'x' ? $window.width() : $window.height()) / 100) : 1) * parseInt(size, 10));
152
  }
153
 
154
  // Checks an href to see if it is a photo.
155
- // There is a force photo option (photo: true) for hrefs that cannot be matched by this regex.
156
- function isImage(url) {
157
- return settings.photo || /\.(gif|png|jpe?g|bmp|ico)((#|\?).*)?$/i.test(url);
158
  }
159
-
 
 
 
 
 
 
 
 
 
 
 
160
  // Assigns function results to their respective properties
161
  function makeSettings() {
162
  var i,
@@ -165,10 +201,10 @@
165
  if (data == null) {
166
  settings = $.extend({}, defaults);
167
  if (console && console.log) {
168
- console.log('Error: cboxElement missing settings object')
169
  }
170
  } else {
171
- settings = $.extend({}, data);
172
  }
173
 
174
  for (i in settings) {
@@ -177,7 +213,7 @@
177
  }
178
  }
179
 
180
- settings.rel = settings.rel || element.rel || 'nofollow';
181
  settings.href = settings.href || $(element).attr('href');
182
  settings.title = settings.title || element.title;
183
 
@@ -187,61 +223,98 @@
187
  }
188
 
189
  function trigger(event, callback) {
190
- $.event.trigger(event);
191
- if (callback) {
 
 
 
 
 
192
  callback.call(element);
193
  }
194
  }
195
 
196
- // Slideshow functionality
197
- function slideshow() {
198
- var
199
- timeOut,
200
- className = prefix + "Slideshow_",
201
- click = "click." + prefix,
202
- start,
203
- stop,
204
- clear;
205
-
206
- if (settings.slideshow && $related[1]) {
207
- start = function () {
208
- $slideshow
209
- .text(settings.slideshowStop)
210
- .unbind(click)
211
- .bind(event_complete, function () {
212
- if (settings.loop || $related[index + 1]) {
213
- timeOut = setTimeout(publicMethod.next, settings.slideshowSpeed);
214
- }
215
- })
216
- .bind(event_load, function () {
217
- clearTimeout(timeOut);
218
- })
219
- .one(click + ' ' + event_cleanup, stop);
220
- $box.removeClass(className + "off").addClass(className + "on");
221
  timeOut = setTimeout(publicMethod.next, settings.slideshowSpeed);
222
- };
223
-
224
- stop = function () {
225
- clearTimeout(timeOut);
226
- $slideshow
227
- .text(settings.slideshowStart)
228
- .unbind([event_complete, event_load, event_cleanup, click].join(' '))
229
- .one(click, function () {
230
- publicMethod.next();
231
- start();
232
- });
233
- $box.removeClass(className + "on").addClass(className + "off");
234
- };
235
-
236
- if (settings.slideshowAuto) {
237
- start();
238
- } else {
239
- stop();
240
  }
241
- } else {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
242
  $box.removeClass(className + "off " + className + "on");
243
  }
244
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
245
 
246
  function launch(target) {
247
  if (!closing) {
@@ -256,82 +329,123 @@
256
 
257
  if (settings.rel !== 'nofollow') {
258
  $related = $('.' + boxElement).filter(function () {
259
- var data = $.data(this, colorbox),
260
  relRelated;
261
 
262
  if (data) {
263
- relRelated = data.rel || this.rel;
264
  }
265
 
266
  return (relRelated === settings.rel);
267
  });
268
  index = $related.index(element);
269
 
270
- // Check direct calls to ColorBox.
271
  if (index === -1) {
272
  $related = $related.add(element);
273
  index = $related.length - 1;
274
  }
275
  }
276
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
277
  if (!open) {
278
  open = active = true; // Prevents the page-change action from queuing up if the visitor holds down the left or right keys.
279
 
280
- $box.show();
 
281
 
282
- if (settings.returnFocus) {
283
- $(element).blur().one(event_closed, function () {
284
- $(this).focus();
285
- });
286
- }
287
-
288
- // +settings.opacity avoids a problem in IE when using non-zero-prefixed-string-values, like '.5'
289
- $overlay.css({"opacity": +settings.opacity, "cursor": settings.overlayClose ? "pointer" : "auto"}).show();
290
-
291
- // Opens inital empty ColorBox prior to content being loaded.
292
  settings.w = setSize(settings.initialWidth, 'x');
293
  settings.h = setSize(settings.initialHeight, 'y');
 
294
  publicMethod.position();
295
-
296
- if (isIE6) {
297
- $window.bind('resize.' + event_ie6 + ' scroll.' + event_ie6, function () {
298
- $overlay.css({width: $window.width(), height: $window.height(), top: $window.scrollTop(), left: $window.scrollLeft()});
299
- }).trigger('resize.' + event_ie6);
300
- }
301
-
302
  trigger(event_open, settings.onOpen);
303
 
304
  $groupControls.add($title).hide();
 
 
305
 
306
- $close.html(settings.close).show();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
307
  }
308
-
309
- publicMethod.load(true);
310
  }
311
  }
312
 
313
- // ColorBox's markup needs to be added to the DOM prior to being called
314
  // so that the browser will go ahead and load the CSS background images.
315
  function appendHTML() {
316
  if (!$box && document.body) {
317
  init = false;
318
-
319
  $window = $(window);
320
- $box = $tag(div).attr({id: colorbox, 'class': isIE ? prefix + (isIE6 ? 'IE6' : 'IE') : ''}).hide();
321
- $overlay = $tag(div, "Overlay", isIE6 ? 'position:absolute' : '').hide();
 
 
 
 
 
 
322
  $wrap = $tag(div, "Wrapper");
323
  $content = $tag(div, "Content").append(
324
- $loaded = $tag(div, "LoadedContent", 'width:0; height:0; overflow:hidden'),
325
- $loadingOverlay = $tag(div, "LoadingOverlay").add($tag(div, "LoadingGraphic")),
326
  $title = $tag(div, "Title"),
327
  $current = $tag(div, "Current"),
328
- $next = $tag(div, "Next"),
329
- $prev = $tag(div, "Previous"),
330
- $slideshow = $tag(div, "Slideshow").bind(event_open, slideshow),
331
- $close = $tag(div, "Close")
332
  );
 
 
333
 
334
- $wrap.append( // The 3x3 Grid that makes up ColorBox
335
  $tag(div).append(
336
  $tag(div, "TopLeft"),
337
  $topBorder = $tag(div, "TopCenter"),
@@ -349,7 +463,7 @@
349
  )
350
  ).find('div div').css({'float': 'left'});
351
 
352
- $loadingBay = $tag(div, false, 'position:absolute; width:9999px; visibility:hidden; display:none');
353
 
354
  $groupControls = $next.add($prev).add($current).add($slideshow);
355
 
@@ -357,21 +471,21 @@
357
  }
358
  }
359
 
360
- // Add ColorBox's event bindings
361
  function addBindings() {
 
 
 
 
 
 
 
 
 
362
  if ($box) {
363
  if (!init) {
364
  init = true;
365
 
366
- // Cache values needed for size calculations
367
- interfaceHeight = $topBorder.height() + $bottomBorder.height() + $content.outerHeight(true) - $content.height();//Subtraction needed for IE6
368
- interfaceWidth = $leftBorder.width() + $rightBorder.width() + $content.outerWidth(true) - $content.width();
369
- loadedHeight = $loaded.outerHeight(true);
370
- loadedWidth = $loaded.outerWidth(true);
371
-
372
- // Setting padding to remove the need to do size conversions during the animation step.
373
- $box.css({"padding-bottom": interfaceHeight, "padding-right": interfaceWidth});
374
-
375
  // Anonymous functions here keep the public method from being cached, thereby allowing them to be redefined on the fly.
376
  $next.click(function () {
377
  publicMethod.next();
@@ -395,7 +509,7 @@
395
  e.preventDefault();
396
  publicMethod.close();
397
  }
398
- if (open && settings.arrowKey && $related[1]) {
399
  if (key === 37) {
400
  e.preventDefault();
401
  $prev.click();
@@ -406,21 +520,22 @@
406
  }
407
  });
408
 
409
- $('.' + boxElement, document).live('click', function (e) {
410
- // ignore non-left-mouse-clicks and clicks modified with ctrl / command, shift, or alt.
411
- // See: http://jacklmoore.com/notes/click-events/
412
- if (!(e.which > 1 || e.shiftKey || e.altKey || e.metaKey)) {
413
- e.preventDefault();
414
- launch(this);
415
- }
416
- });
 
417
  }
418
  return true;
419
  }
420
  return false;
421
  }
422
 
423
- // Don't do anything if ColorBox already exists.
424
  if ($.colorbox) {
425
  return;
426
  }
@@ -431,8 +546,8 @@
431
 
432
  // ****************
433
  // PUBLIC FUNCTIONS
434
- // Usage format: $.fn.colorbox.close();
435
- // Usage from within an iframe: parent.$.fn.colorbox.close();
436
  // ****************
437
 
438
  publicMethod = $.fn[colorbox] = $[colorbox] = function (options, callback) {
@@ -443,13 +558,11 @@
443
  appendHTML();
444
 
445
  if (addBindings()) {
446
- if (!$this[0]) {
447
- if ($this.selector) { // if a selector was given and it didn't match any elements, go ahead and exit.
448
- return $this;
449
- }
450
- // if no selector was given (ie. $.colorbox()), create a temporary element to work with
451
  $this = $('<a/>');
452
- options.open = true; // assume an immediate open
 
 
453
  }
454
 
455
  if (callback) {
@@ -469,22 +582,23 @@
469
  };
470
 
471
  publicMethod.position = function (speed, loadedCallback) {
472
- var
473
- top = 0,
474
- left = 0,
 
475
  offset = $box.offset(),
476
- scrollTop,
477
  scrollLeft;
478
 
479
  $window.unbind('resize.' + prefix);
480
 
481
- // remove the modal so that it doesn't influence the document width/height
482
  $box.css({top: -9e4, left: -9e4});
483
 
484
  scrollTop = $window.scrollTop();
485
  scrollLeft = $window.scrollLeft();
486
 
487
- if (settings.fixed && !isIE6) {
488
  offset.top -= scrollTop;
489
  offset.left -= scrollLeft;
490
  $box.css({position: 'fixed'});
@@ -504,32 +618,49 @@
504
  }
505
 
506
  if (settings.bottom !== false) {
507
- top += Math.max($window.height() - settings.h - loadedHeight - interfaceHeight - setSize(settings.bottom, 'y'), 0);
508
  } else if (settings.top !== false) {
509
  top += setSize(settings.top, 'y');
510
  } else {
511
- top += Math.round(Math.max($window.height() - settings.h - loadedHeight - interfaceHeight, 0) / 2);
512
  }
513
 
514
- $box.css({top: offset.top, left: offset.left});
515
-
516
- // setting the speed to 0 to reduce the delay between same-sized content.
517
- speed = ($box.width() === settings.w + loadedWidth && $box.height() === settings.h + loadedHeight) ? 0 : speed || 0;
518
 
519
  // this gives the wrapper plenty of breathing room so it's floated contents can move around smoothly,
520
  // but it has to be shrank down around the size of div#colorbox when it's done. If not,
521
  // it can invoke an obscure IE bug when using iframes.
522
  $wrap[0].style.width = $wrap[0].style.height = "9999px";
523
 
524
- function modalDimensions(that) {
525
- $topBorder[0].style.width = $bottomBorder[0].style.width = $content[0].style.width = that.style.width;
526
- $content[0].style.height = $leftBorder[0].style.height = $rightBorder[0].style.height = that.style.height;
527
  }
528
-
529
- $box.dequeue().animate({width: settings.w + loadedWidth, height: settings.h + loadedHeight, top: top, left: left}, {
530
- duration: speed,
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
531
  complete: function () {
532
- modalDimensions(this);
533
 
534
  active = false;
535
 
@@ -539,43 +670,55 @@
539
 
540
  if (settings.reposition) {
541
  setTimeout(function () { // small delay before binding onresize due to an IE8 bug.
542
- $window.bind('resize.' + prefix, publicMethod.position);
 
 
543
  }, 1);
544
  }
545
 
546
- if (loadedCallback) {
547
  loadedCallback();
548
  }
549
  },
550
- step: function () {
551
- modalDimensions(this);
552
- }
553
  });
554
  };
555
 
556
  publicMethod.resize = function (options) {
 
 
557
  if (open) {
558
  options = options || {};
559
 
560
  if (options.width) {
561
  settings.w = setSize(options.width, 'x') - loadedWidth - interfaceWidth;
562
  }
 
563
  if (options.innerWidth) {
564
  settings.w = setSize(options.innerWidth, 'x');
565
  }
 
566
  $loaded.css({width: settings.w});
567
 
568
  if (options.height) {
569
  settings.h = setSize(options.height, 'y') - loadedHeight - interfaceHeight;
570
  }
 
571
  if (options.innerHeight) {
572
  settings.h = setSize(options.innerHeight, 'y');
573
  }
 
574
  if (!options.innerHeight && !options.height) {
 
575
  $loaded.css({height: "auto"});
576
  settings.h = $loaded.height();
577
  }
 
578
  $loaded.css({height: settings.h});
 
 
 
 
579
 
580
  publicMethod.position(settings.transition === "none" ? 0 : settings.speed);
581
  }
@@ -587,8 +730,9 @@
587
  }
588
 
589
  var callback, speed = settings.transition === "none" ? 0 : settings.speed;
590
-
591
- $loaded.remove();
 
592
  $loaded = $tag(div, 'LoadedContent').append(object);
593
 
594
  function getWidth() {
@@ -611,37 +755,22 @@
611
  $loadingBay.hide();
612
 
613
  // floating the IMG removes the bottom line-height and fixed a problem where IE miscalculates the width of the parent element as 100% of the document width.
614
- //$(photo).css({'float': 'none', marginLeft: 'auto', marginRight: 'auto'});
615
 
616
  $(photo).css({'float': 'none'});
617
-
618
- // Hides SELECT elements in IE6 because they would otherwise sit on top of the overlay.
619
- if (isIE6) {
620
- $('select').not($box.find('select')).filter(function () {
621
- return this.style.visibility !== 'hidden';
622
- }).css({'visibility': 'hidden'}).one(event_cleanup, function () {
623
- this.style.visibility = 'inherit';
624
- });
625
- }
626
-
627
  callback = function () {
628
- var preload,
629
- i,
630
- total = $related.length,
631
- iframe,
632
- frameBorder = 'frameBorder',
633
- allowTransparency = 'allowTransparency',
634
- complete,
635
- src,
636
- img,
637
- data;
638
 
639
  if (!open) {
640
  return;
641
  }
642
 
643
- function removeFilter() {
644
- if (isIE) {
645
  $box[0].style.removeAttribute('filter');
646
  }
647
  }
@@ -651,13 +780,7 @@
651
  $loadingOverlay.hide();
652
  trigger(event_complete, settings.onComplete);
653
  };
654
-
655
- if (isIE) {
656
- //This fadeIn helps the bicubic resampling to kick-in.
657
- if (photo) {
658
- $loaded.fadeIn(100);
659
- }
660
- }
661
 
662
  $title.html(settings.title).add($loaded).show();
663
 
@@ -669,33 +792,31 @@
669
  $next[(settings.loop || index < total - 1) ? "show" : "hide"]().html(settings.next);
670
  $prev[(settings.loop || index) ? "show" : "hide"]().html(settings.previous);
671
 
672
- if (settings.slideshow) {
673
- $slideshow.show();
674
- }
675
 
676
  // Preloads images within a rel group
677
  if (settings.preloading) {
678
- preload = [
679
- getIndex(-1),
680
- getIndex(1)
681
- ];
682
- while (i = $related[preload.pop()]) {
683
- data = $.data(i, colorbox);
684
-
685
  if (data && data.href) {
686
  src = data.href;
687
  if ($.isFunction(src)) {
688
  src = src.call(i);
689
  }
690
  } else {
691
- src = i.href;
692
  }
693
 
694
- if (isImage(src)) {
695
- img = new Image();
 
696
  img.src = src;
697
  }
698
- }
699
  }
700
  } else {
701
  $groupControls.hide();
@@ -707,23 +828,34 @@
707
  if (frameBorder in iframe) {
708
  iframe[frameBorder] = 0;
709
  }
 
710
  if (allowTransparency in iframe) {
711
  iframe[allowTransparency] = "true";
712
  }
713
- // give the iframe a unique name to prevent caching
714
- iframe.name = prefix + (+new Date());
715
- if (settings.fastIframe) {
716
- complete();
717
- } else {
718
- $(iframe).one('load', complete);
719
- }
720
- iframe.src = settings.href;
721
  if (!settings.scrolling) {
722
  iframe.scrolling = "no";
723
  }
724
- $(iframe).addClass(prefix + 'Iframe').appendTo($loaded).one(event_purge, function () {
 
 
 
 
 
 
 
 
 
 
 
 
 
725
  iframe.src = "//about:blank";
726
  });
 
 
 
 
727
  } else {
728
  complete();
729
  }
@@ -744,8 +876,8 @@
744
  }
745
  };
746
 
747
- publicMethod.load = function (launched) {
748
- var href, setResize, prep = publicMethod.prep;
749
 
750
  active = true;
751
 
@@ -753,9 +885,7 @@
753
 
754
  element = $related[index];
755
 
756
- if (!launched) {
757
- makeSettings();
758
- }
759
 
760
  trigger(event_purge);
761
 
@@ -792,10 +922,13 @@
792
 
793
  if (settings.inline) {
794
  // Inserts an empty placeholder where inline content is being pulled from.
795
- // An event is bound to put inline content back when ColorBox closes or loads new content.
796
- $tag(div).hide().insertBefore($(href)[0]).one(event_purge, function () {
797
- $(this).replaceWith($loaded.children());
 
 
798
  });
 
799
  prep($(href));
800
  } else if (settings.iframe) {
801
  // IFrame element won't be added to the DOM until it is ready to be displayed,
@@ -803,21 +936,41 @@
803
  prep(" ");
804
  } else if (settings.html) {
805
  prep(settings.html);
806
- } else if (isImage(href)) {
807
- $(photo = new Image())
 
 
 
 
 
808
  .addClass(prefix + 'Photo')
809
- .error(function () {
810
  settings.title = false;
811
  prep($tag(div, 'Error').html(settings.imgError));
812
  })
813
- .load(function () {
814
  var percent;
815
- photo.onload = null; //stops animated gifs from firing the onload repeatedly.
816
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
817
  if (settings.scalePhotos) {
818
  setResize = function () {
819
  photo.height -= photo.height * percent;
820
- photo.width -= photo.width * percent;
821
  };
822
  if (settings.mw && photo.width > settings.mw) {
823
  percent = (photo.width - settings.mw) / photo.width;
@@ -830,7 +983,7 @@
830
  }
831
 
832
  if (settings.h) {
833
- photo.style.marginTop = Math.max(settings.h - photo.height, 0) / 2 + 'px';
834
  }
835
 
836
  if ($related[1] && (settings.loop || $related[index + 1])) {
@@ -839,11 +992,10 @@
839
  publicMethod.next();
840
  };
841
  }
842
-
843
- if (isIE) {
844
- photo.style.msInterpolationMode = 'bicubic';
845
- }
846
-
847
  setTimeout(function () { // A pause because Chrome will sometimes report a 0 by 0 size otherwise.
848
  prep(photo);
849
  }, 1);
@@ -853,28 +1005,30 @@
853
  photo.src = href;
854
  }, 1);
855
  } else if (href) {
856
- $loadingBay.load(href, settings.data, function (data, status, xhr) {
857
- prep(status === 'error' ? $tag(div, 'Error').html(settings.xhrError) : $(this).contents());
 
 
858
  });
859
  }
860
- };
861
 
862
  // Navigates to the next page/image in a set.
863
  publicMethod.next = function () {
864
  if (!active && $related[1] && (settings.loop || $related[index + 1])) {
865
  index = getIndex(1);
866
- publicMethod.load();
867
  }
868
  };
869
 
870
  publicMethod.prev = function () {
871
  if (!active && $related[1] && (settings.loop || index)) {
872
  index = getIndex(-1);
873
- publicMethod.load();
874
  }
875
  };
876
 
877
- // Note: to use this within an iframe use the following format: parent.$.fn.colorbox.close();
878
  publicMethod.close = function () {
879
  if (open && !closing) {
880
 
@@ -884,17 +1038,17 @@
884
 
885
  trigger(event_cleanup, settings.onCleanup);
886
 
887
- $window.unbind('.' + prefix + ' .' + event_ie6);
888
 
889
- $overlay.fadeTo(200, 0);
 
 
890
 
891
- $box.stop().fadeTo(300, 0, function () {
892
-
893
  $box.add($overlay).css({'opacity': 1, cursor: 'auto'}).hide();
894
 
895
  trigger(event_purge);
896
 
897
- $loaded.remove();
898
 
899
  setTimeout(function () {
900
  closing = false;
@@ -904,18 +1058,24 @@
904
  }
905
  };
906
 
907
- // Removes changes ColorBox made to the document, but does not remove the plugin
908
- // from jQuery.
909
  publicMethod.remove = function () {
910
- $([]).add($box).add($overlay).remove();
 
 
 
 
 
 
911
  $box = null;
912
  $('.' + boxElement)
913
  .removeData(colorbox)
914
- .removeClass(boxElement)
915
- .die();
 
916
  };
917
 
918
- // A method for fetching the current element ColorBox is referencing.
919
  // returns a jQuery object.
920
  publicMethod.element = function () {
921
  return $(element);
@@ -923,4 +1083,4 @@
923
 
924
  publicMethod.settings = defaults;
925
 
926
- }(jQuery, document, this));
1
+ /*!
2
+ Colorbox v1.4.37 - 2014-02-11
3
+ jQuery lightbox and modal window plugin
4
+ (c) 2014 Jack Moore - http://www.jacklmoore.com/colorbox
5
+ license: http://www.opensource.org/licenses/mit-license.php
6
+ */
7
  (function ($, document, window) {
8
  var
9
+ // Default settings object.
10
  // See http://jacklmoore.com/colorbox for details.
11
  defaults = {
12
+ // data sources
13
+ html: false,
14
+ photo: false,
15
+ iframe: false,
16
+ inline: false,
17
+
18
+ // behavior and appearance
19
  transition: "elastic",
20
  speed: 300,
21
+ fadeOut: 300,
22
  width: false,
23
  initialWidth: "600",
24
  innerWidth: false,
29
  maxHeight: false,
30
  scalePhotos: true,
31
  scrolling: true,
 
 
 
 
 
32
  href: false,
33
  title: false,
34
  rel: false,
35
  opacity: 0.9,
36
  preloading: true,
37
+ className: false,
38
+ overlayClose: true,
39
+ escKey: true,
40
+ arrowKey: true,
41
+ top: false,
42
+ bottom: false,
43
+ left: false,
44
+ right: false,
45
+ fixed: false,
46
+ data: undefined,
47
+ closeButton: true,
48
+ fastIframe: true,
49
+ open: false,
50
+ reposition: true,
51
+ loop: true,
52
+ slideshow: false,
53
+ slideshowAuto: true,
54
+ slideshowSpeed: 2500,
55
+ slideshowStart: "start slideshow",
56
+ slideshowStop: "stop slideshow",
57
+ photoRegex: /\.(gif|png|jp(e|g|eg)|bmp|ico|webp|jxr)((#|\?).*)?$/i,
58
 
59
+ // alternate image paths for high-res displays
60
+ retinaImage: false,
61
+ retinaUrl: false,
62
+ retinaSuffix: '@2x.$1',
63
+
64
+ // internationalization
65
  current: "image {current} of {total}",
66
  previous: "previous",
67
  next: "next",
69
  xhrError: "This content failed to load.",
70
  imgError: "This image failed to load.",
71
 
72
+ // accessbility
73
  returnFocus: true,
74
+ trapFocus: true,
75
+
76
+ // callbacks
 
 
 
 
77
  onOpen: false,
78
  onLoad: false,
79
  onComplete: false,
80
  onCleanup: false,
81
+ onClosed: false
 
 
 
 
 
 
 
 
 
82
  },
83
 
84
  // Abstracting the HTML and event identifiers for easy rebranding
86
  prefix = 'cbox',
87
  boxElement = prefix + 'Element',
88
 
89
+ // Events
90
  event_open = prefix + '_open',
91
  event_load = prefix + '_load',
92
  event_complete = prefix + '_complete',
93
  event_cleanup = prefix + '_cleanup',
94
  event_closed = prefix + '_closed',
95
  event_purge = prefix + '_purge',
 
 
 
 
 
96
 
97
  // Cached jQuery Object Variables
98
  $overlay,
115
  $prev,
116
  $close,
117
  $groupControls,
118
+ $events = $('<a/>'), // $([]) would be prefered, but there is an issue with jQuery 1.4.2
119
 
120
  // Variables for cached values or use across multiple functions
121
  settings,
132
  loadingTimer,
133
  publicMethod,
134
  div = "div",
135
+ className,
136
+ requests = 0,
137
+ previousCSS = {},
138
  init;
139
 
140
  // ****************
141
  // HELPER FUNCTIONS
142
  // ****************
143
 
144
+ // Convenience function for creating new jQuery objects
145
  function $tag(tag, id, css) {
146
  var element = document.createElement(tag);
147
 
155
 
156
  return $(element);
157
  }
158
+
159
+ // Get the window height using innerHeight when available to avoid an issue with iOS
160
+ // http://bugs.jquery.com/ticket/6724
161
+ function winheight() {
162
+ return window.innerHeight ? window.innerHeight : $(window).height();
163
+ }
164
 
165
  // Determine the next and previous members in a group.
166
  function getIndex(increment) {
167
+ var
168
+ max = $related.length,
169
  newIndex = (index + increment) % max;
170
 
171
  return (newIndex < 0) ? max + newIndex : newIndex;
173
 
174
  // Convert '%' and 'px' values to integers
175
  function setSize(size, dimension) {
176
+ return Math.round((/%/.test(size) ? ((dimension === 'x' ? $window.width() : winheight()) / 100) : 1) * parseInt(size, 10));
177
  }
178
 
179
  // Checks an href to see if it is a photo.
180
+ // There is a force photo option (photo: true) for hrefs that cannot be matched by the regex.
181
+ function isImage(settings, url) {
182
+ return settings.photo || settings.photoRegex.test(url);
183
  }
184
+
185
+ function retinaUrl(settings, url) {
186
+ return settings.retinaUrl && window.devicePixelRatio > 1 ? url.replace(settings.photoRegex, settings.retinaSuffix) : url;
187
+ }
188
+
189
+ function trapFocus(e) {
190
+ if ('contains' in $box[0] && !$box[0].contains(e.target)) {
191
+ e.stopPropagation();
192
+ $box.focus();
193
+ }
194
+ }
195
+
196
  // Assigns function results to their respective properties
197
  function makeSettings() {
198
  var i,
201
  if (data == null) {
202
  settings = $.extend({}, defaults);
203
  if (console && console.log) {
204
+ console.log('Error: cboxElement missing settings object');
205
  }
206
  } else {
207
+ settings = $.extend({}, data);
208
  }
209
 
210
  for (i in settings) {
213
  }
214
  }
215
 
216
+ settings.rel = settings.rel || element.rel || $(element).data('rel') || 'nofollow';
217
  settings.href = settings.href || $(element).attr('href');
218
  settings.title = settings.title || element.title;
219
 
223
  }
224
 
225
  function trigger(event, callback) {
226
+ // for external use
227
+ $(document).trigger(event);
228
+
229
+ // for internal use
230
+ $events.triggerHandler(event);
231
+
232
+ if ($.isFunction(callback)) {
233
  callback.call(element);
234
  }
235
  }
236
 
237
+
238
+ var slideshow = (function(){
239
+ var active,
240
+ className = prefix + "Slideshow_",
241
+ click = "click." + prefix,
242
+ timeOut;
243
+
244
+ function clear () {
245
+ clearTimeout(timeOut);
246
+ }
247
+
248
+ function set() {
249
+ if (settings.loop || $related[index + 1]) {
250
+ clear();
 
 
 
 
 
 
 
 
 
 
 
251
  timeOut = setTimeout(publicMethod.next, settings.slideshowSpeed);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
252
  }
253
+ }
254
+
255
+ function start() {
256
+ $slideshow
257
+ .html(settings.slideshowStop)
258
+ .unbind(click)
259
+ .one(click, stop);
260
+
261
+ $events
262
+ .bind(event_complete, set)
263
+ .bind(event_load, clear);
264
+
265
+ $box.removeClass(className + "off").addClass(className + "on");
266
+ }
267
+
268
+ function stop() {
269
+ clear();
270
+
271
+ $events
272
+ .unbind(event_complete, set)
273
+ .unbind(event_load, clear);
274
+
275
+ $slideshow
276
+ .html(settings.slideshowStart)
277
+ .unbind(click)
278
+ .one(click, function () {
279
+ publicMethod.next();
280
+ start();
281
+ });
282
+
283
+ $box.removeClass(className + "on").addClass(className + "off");
284
+ }
285
+
286
+ function reset() {
287
+ active = false;
288
+ $slideshow.hide();
289
+ clear();
290
+ $events
291
+ .unbind(event_complete, set)
292
+ .unbind(event_load, clear);
293
  $box.removeClass(className + "off " + className + "on");
294
  }
295
+
296
+ return function(){
297
+ if (active) {
298
+ if (!settings.slideshow) {
299
+ $events.unbind(event_cleanup, reset);
300
+ reset();
301
+ }
302
+ } else {
303
+ if (settings.slideshow && $related[1]) {
304
+ active = true;
305
+ $events.one(event_cleanup, reset);
306
+ if (settings.slideshowAuto) {
307
+ start();
308
+ } else {
309
+ stop();
310
+ }
311
+ $slideshow.show();
312
+ }
313
+ }
314
+ };
315
+
316
+ }());
317
+
318
 
319
  function launch(target) {
320
  if (!closing) {
329
 
330
  if (settings.rel !== 'nofollow') {
331
  $related = $('.' + boxElement).filter(function () {
332
+ var data = $.data(this, colorbox),
333
  relRelated;
334
 
335
  if (data) {
336
+ relRelated = $(this).data('rel') || data.rel || this.rel;
337
  }
338
 
339
  return (relRelated === settings.rel);
340
  });
341
  index = $related.index(element);
342
 
343
+ // Check direct calls to Colorbox.
344
  if (index === -1) {
345
  $related = $related.add(element);
346
  index = $related.length - 1;
347
  }
348
  }
349
 
350
+ $overlay.css({
351
+ opacity: parseFloat(settings.opacity),
352
+ cursor: settings.overlayClose ? "pointer" : "auto",
353
+ visibility: 'visible'
354
+ }).show();
355
+
356
+
357
+ if (className) {
358
+ $box.add($overlay).removeClass(className);
359
+ }
360
+ if (settings.className) {
361
+ $box.add($overlay).addClass(settings.className);
362
+ }
363
+ className = settings.className;
364
+
365
+ if (settings.closeButton) {
366
+ $close.html(settings.close).appendTo($content);
367
+ } else {
368
+ $close.appendTo('<div/>');
369
+ }
370
+
371
  if (!open) {
372
  open = active = true; // Prevents the page-change action from queuing up if the visitor holds down the left or right keys.
373
 
374
+ // Show colorbox so the sizes can be calculated in older versions of jQuery
375
+ $box.css({visibility:'hidden', display:'block'});
376
 
377
+ $loaded = $tag(div, 'LoadedContent', 'width:0; height:0; overflow:hidden');
378
+ $content.css({width:'', height:''}).append($loaded);
379
+
380
+ // Cache values needed for size calculations
381
+ interfaceHeight = $topBorder.height() + $bottomBorder.height() + $content.outerHeight(true) - $content.height();
382
+ interfaceWidth = $leftBorder.width() + $rightBorder.width() + $content.outerWidth(true) - $content.width();
383
+ loadedHeight = $loaded.outerHeight(true);
384
+ loadedWidth = $loaded.outerWidth(true);
385
+
386
+ // Opens inital empty Colorbox prior to content being loaded.
387
  settings.w = setSize(settings.initialWidth, 'x');
388
  settings.h = setSize(settings.initialHeight, 'y');
389
+ $loaded.css({width:'', height:settings.h});
390
  publicMethod.position();
391
+
 
 
 
 
 
 
392
  trigger(event_open, settings.onOpen);
393
 
394
  $groupControls.add($title).hide();
395
+
396
+ $box.focus();
397
 
398
+ if (settings.trapFocus) {
399
+ // Confine focus to the modal
400
+ // Uses event capturing that is not supported in IE8-
401
+ if (document.addEventListener) {
402
+
403
+ document.addEventListener('focus', trapFocus, true);
404
+
405
+ $events.one(event_closed, function () {
406
+ document.removeEventListener('focus', trapFocus, true);
407
+ });
408
+ }
409
+ }
410
+
411
+ // Return focus on closing
412
+ if (settings.returnFocus) {
413
+ $events.one(event_closed, function () {
414
+ $(element).focus();
415
+ });
416
+ }
417
  }
418
+ load();
 
419
  }
420
  }
421
 
422
+ // Colorbox's markup needs to be added to the DOM prior to being called
423
  // so that the browser will go ahead and load the CSS background images.
424
  function appendHTML() {
425
  if (!$box && document.body) {
426
  init = false;
 
427
  $window = $(window);
428
+ $box = $tag(div).attr({
429
+ id: colorbox,
430
+ 'class': $.support.opacity === false ? prefix + 'IE' : '', // class for optional IE8 & lower targeted CSS.
431
+ role: 'dialog',
432
+ tabindex: '-1'
433
+ }).hide();
434
+ $overlay = $tag(div, "Overlay").hide();
435
+ $loadingOverlay = $([$tag(div, "LoadingOverlay")[0],$tag(div, "LoadingGraphic")[0]]);
436
  $wrap = $tag(div, "Wrapper");
437
  $content = $tag(div, "Content").append(
 
 
438
  $title = $tag(div, "Title"),
439
  $current = $tag(div, "Current"),
440
+ $prev = $('<button type="button"/>').attr({id:prefix+'Previous'}),
441
+ $next = $('<button type="button"/>').attr({id:prefix+'Next'}),
442
+ $slideshow = $tag('button', "Slideshow"),
443
+ $loadingOverlay
444
  );
445
+
446
+ $close = $('<button type="button"/>').attr({id:prefix+'Close'});
447
 
448
+ $wrap.append( // The 3x3 Grid that makes up Colorbox
449
  $tag(div).append(
450
  $tag(div, "TopLeft"),
451
  $topBorder = $tag(div, "TopCenter"),
463
  )
464
  ).find('div div').css({'float': 'left'});
465
 
466
+ $loadingBay = $tag(div, false, 'position:absolute; width:9999px; visibility:hidden; display:none; max-width:none;');
467
 
468
  $groupControls = $next.add($prev).add($current).add($slideshow);
469
 
471
  }
472
  }
473
 
474
+ // Add Colorbox's event bindings
475
  function addBindings() {
476
+ function clickHandler(e) {
477
+ // ignore non-left-mouse-clicks and clicks modified with ctrl / command, shift, or alt.
478
+ // See: http://jacklmoore.com/notes/click-events/
479
+ if (!(e.which > 1 || e.shiftKey || e.altKey || e.metaKey || e.ctrlKey)) {
480
+ e.preventDefault();
481
+ launch(this);
482
+ }
483
+ }
484
+
485
  if ($box) {
486
  if (!init) {
487
  init = true;
488
 
 
 
 
 
 
 
 
 
 
489
  // Anonymous functions here keep the public method from being cached, thereby allowing them to be redefined on the fly.
490
  $next.click(function () {
491
  publicMethod.next();
509
  e.preventDefault();
510
  publicMethod.close();
511
  }
512
+ if (open && settings.arrowKey && $related[1] && !e.altKey) {
513
  if (key === 37) {
514
  e.preventDefault();
515
  $prev.click();
520
  }
521
  });
522
 
523
+ if ($.isFunction($.fn.on)) {
524
+ // For jQuery 1.7+
525
+ $(document).on('click.'+prefix, '.'+boxElement, clickHandler);
526
+ } else {
527
+ // For jQuery 1.3.x -> 1.6.x
528
+ // This code is never reached in jQuery 1.9, so do not contact me about 'live' being removed.
529
+ // This is not here for jQuery 1.9, it's here for legacy users.
530
+ $('.'+boxElement).live('click.'+prefix, clickHandler);
531
+ }
532
  }
533
  return true;
534
  }
535
  return false;
536
  }
537
 
538
+ // Don't do anything if Colorbox already exists.
539
  if ($.colorbox) {
540
  return;
541
  }
546
 
547
  // ****************
548
  // PUBLIC FUNCTIONS
549
+ // Usage format: $.colorbox.close();
550
+ // Usage from within an iframe: parent.jQuery.colorbox.close();
551
  // ****************
552
 
553
  publicMethod = $.fn[colorbox] = $[colorbox] = function (options, callback) {
558
  appendHTML();
559
 
560
  if (addBindings()) {
561
+ if ($.isFunction($this)) { // assume a call to $.colorbox
 
 
 
 
562
  $this = $('<a/>');
563
+ options.open = true;
564
+ } else if (!$this[0]) { // colorbox being applied to empty collection
565
+ return $this;
566
  }
567
 
568
  if (callback) {
582
  };
583
 
584
  publicMethod.position = function (speed, loadedCallback) {
585
+ var
586
+ css,
587
+ top = 0,
588
+ left = 0,
589
  offset = $box.offset(),
590
+ scrollTop,
591
  scrollLeft;
592
 
593
  $window.unbind('resize.' + prefix);
594
 
595
+ // remove the modal so that it doesn't influence the document width/height
596
  $box.css({top: -9e4, left: -9e4});
597
 
598
  scrollTop = $window.scrollTop();
599
  scrollLeft = $window.scrollLeft();
600
 
601
+ if (settings.fixed) {
602
  offset.top -= scrollTop;
603
  offset.left -= scrollLeft;
604
  $box.css({position: 'fixed'});
618
  }
619
 
620
  if (settings.bottom !== false) {
621
+ top += Math.max(winheight() - settings.h - loadedHeight - interfaceHeight - setSize(settings.bottom, 'y'), 0);
622
  } else if (settings.top !== false) {
623
  top += setSize(settings.top, 'y');
624
  } else {
625
+ top += Math.round(Math.max(winheight() - settings.h - loadedHeight - interfaceHeight, 0) / 2);
626
  }
627
 
628
+ $box.css({top: offset.top, left: offset.left, visibility:'visible'});
 
 
 
629
 
630
  // this gives the wrapper plenty of breathing room so it's floated contents can move around smoothly,
631
  // but it has to be shrank down around the size of div#colorbox when it's done. If not,
632
  // it can invoke an obscure IE bug when using iframes.
633
  $wrap[0].style.width = $wrap[0].style.height = "9999px";
634
 
635
+ function modalDimensions() {
636
+ $topBorder[0].style.width = $bottomBorder[0].style.width = $content[0].style.width = (parseInt($box[0].style.width,10) - interfaceWidth)+'px';
637
+ $content[0].style.height = $leftBorder[0].style.height = $rightBorder[0].style.height = (parseInt($box[0].style.height,10) - interfaceHeight)+'px';
638
  }
639
+
640
+ css = {width: settings.w + loadedWidth + interfaceWidth, height: settings.h + loadedHeight + interfaceHeight, top: top, left: left};
641
+
642
+ // setting the speed to 0 if the content hasn't changed size or position
643
+ if (speed) {
644
+ var tempSpeed = 0;
645
+ $.each(css, function(i){
646
+ if (css[i] !== previousCSS[i]) {
647
+ tempSpeed = speed;
648
+ return;
649
+ }
650
+ });
651
+ speed = tempSpeed;
652
+ }
653
+
654
+ previousCSS = css;
655
+
656
+ if (!speed) {
657
+ $box.css(css);
658
+ }
659
+
660
+ $box.dequeue().animate(css, {
661
+ duration: speed || 0,
662
  complete: function () {
663
+ modalDimensions();
664
 
665
  active = false;
666
 
670
 
671
  if (settings.reposition) {
672
  setTimeout(function () { // small delay before binding onresize due to an IE8 bug.
673
+ $window.bind('resize.' + prefix, function(){
674
+ publicMethod.position();
675
+ });
676
  }, 1);
677
  }
678
 
679
+ if ($.isFunction(loadedCallback)) {
680
  loadedCallback();
681
  }
682
  },
683
+ step: modalDimensions
 
 
684
  });
685
  };
686
 
687
  publicMethod.resize = function (options) {
688
+ var scrolltop;
689
+
690
  if (open) {
691
  options = options || {};
692
 
693
  if (options.width) {
694
  settings.w = setSize(options.width, 'x') - loadedWidth - interfaceWidth;
695
  }
696
+
697
  if (options.innerWidth) {
698
  settings.w = setSize(options.innerWidth, 'x');
699
  }
700
+
701
  $loaded.css({width: settings.w});
702
 
703
  if (options.height) {
704
  settings.h = setSize(options.height, 'y') - loadedHeight - interfaceHeight;
705
  }
706
+
707
  if (options.innerHeight) {
708
  settings.h = setSize(options.innerHeight, 'y');
709
  }
710
+
711
  if (!options.innerHeight && !options.height) {
712
+ scrolltop = $loaded.scrollTop();
713
  $loaded.css({height: "auto"});
714
  settings.h = $loaded.height();
715
  }
716
+
717
  $loaded.css({height: settings.h});
718
+
719
+ if(scrolltop) {
720
+ $loaded.scrollTop(scrolltop);
721
+ }
722
 
723
  publicMethod.position(settings.transition === "none" ? 0 : settings.speed);
724
  }
730
  }
731
 
732
  var callback, speed = settings.transition === "none" ? 0 : settings.speed;
733
+
734
+ $loaded.empty().remove(); // Using empty first may prevent some IE7 issues.
735
+
736
  $loaded = $tag(div, 'LoadedContent').append(object);
737
 
738
  function getWidth() {
755
  $loadingBay.hide();
756
 
757
  // floating the IMG removes the bottom line-height and fixed a problem where IE miscalculates the width of the parent element as 100% of the document width.
 
758
 
759
  $(photo).css({'float': 'none'});
760
+
 
 
 
 
 
 
 
 
 
761
  callback = function () {
762
+ var total = $related.length,
763
+ iframe,
764
+ frameBorder = 'frameBorder',
765
+ allowTransparency = 'allowTransparency',
766
+ complete;
 
 
 
 
 
767
 
768
  if (!open) {
769
  return;
770
  }
771
 
772
+ function removeFilter() { // Needed for IE7 & IE8 in versions of jQuery prior to 1.7.2
773
+ if ($.support.opacity === false) {
774
  $box[0].style.removeAttribute('filter');
775
  }
776
  }
780
  $loadingOverlay.hide();
781
  trigger(event_complete, settings.onComplete);
782
  };
783
+
 
 
 
 
 
 
784
 
785
  $title.html(settings.title).add($loaded).show();
786
 
792
  $next[(settings.loop || index < total - 1) ? "show" : "hide"]().html(settings.next);
793
  $prev[(settings.loop || index) ? "show" : "hide"]().html(settings.previous);
794
 
795
+ slideshow();
 
 
796
 
797
  // Preloads images within a rel group
798
  if (settings.preloading) {
799
+ $.each([getIndex(-1), getIndex(1)], function(){
800
+ var src,
801
+ img,
802
+ i = $related[this],
803
+ data = $.data(i, colorbox);
804
+
 
805
  if (data && data.href) {
806
  src = data.href;
807
  if ($.isFunction(src)) {
808
  src = src.call(i);
809
  }
810
  } else {
811
+ src = $(i).attr('href');
812
  }
813
 
814
+ if (src && isImage(data, src)) {
815
+ src = retinaUrl(data, src);
816
+ img = document.createElement('img');
817
  img.src = src;
818
  }
819
+ });
820
  }
821
  } else {
822
  $groupControls.hide();
828
  if (frameBorder in iframe) {
829
  iframe[frameBorder] = 0;
830
  }
831
+
832
  if (allowTransparency in iframe) {
833
  iframe[allowTransparency] = "true";
834
  }
835
+
 
 
 
 
 
 
 
836
  if (!settings.scrolling) {
837
  iframe.scrolling = "no";
838
  }
839
+
840
+ $(iframe)
841
+ .attr({
842
+ src: settings.href,
843
+ name: (new Date()).getTime(), // give the iframe a unique name to prevent caching
844
+ 'class': prefix + 'Iframe',
845
+ allowFullScreen : true, // allow HTML5 video to go fullscreen
846
+ webkitAllowFullScreen : true,
847
+ mozallowfullscreen : true
848
+ })
849
+ .one('load', complete)
850
+ .appendTo($loaded);
851
+
852
+ $events.one(event_purge, function () {
853
  iframe.src = "//about:blank";
854
  });
855
+
856
+ if (settings.fastIframe) {
857
+ $(iframe).trigger('load');
858
+ }
859
  } else {
860
  complete();
861
  }
876
  }
877
  };
878
 
879
+ function load () {
880
+ var href, setResize, prep = publicMethod.prep, $inline, request = ++requests;
881
 
882
  active = true;
883
 
885
 
886
  element = $related[index];
887
 
888
+ makeSettings();
 
 
889
 
890
  trigger(event_purge);
891
 
922
 
923
  if (settings.inline) {
924
  // Inserts an empty placeholder where inline content is being pulled from.
925
+ // An event is bound to put inline content back when Colorbox closes or loads new content.
926
+ $inline = $tag(div).hide().insertBefore($(href)[0]);
927
+
928
+ $events.one(event_purge, function () {
929
+ $inline.replaceWith($loaded.children());
930
  });
931
+
932
  prep($(href));
933
  } else if (settings.iframe) {
934
  // IFrame element won't be added to the DOM until it is ready to be displayed,
936
  prep(" ");
937
  } else if (settings.html) {
938
  prep(settings.html);
939
+ } else if (isImage(settings, href)) {
940
+
941
+ href = retinaUrl(settings, href);
942
+
943
+ photo = document.createElement('img');
944
+
945
+ $(photo)
946
  .addClass(prefix + 'Photo')
947
+ .bind('error',function () {
948
  settings.title = false;
949
  prep($tag(div, 'Error').html(settings.imgError));
950
  })
951
+ .one('load', function () {
952
  var percent;
953
+
954
+ if (request !== requests) {
955
+ return;
956
+ }
957
+
958
+ $.each(['alt', 'longdesc', 'aria-describedby'], function(i,val){
959
+ var attr = $(element).attr(val) || $(element).attr('data-'+val);
960
+ if (attr) {
961
+ photo.setAttribute(val, attr);
962
+ }
963
+ });
964
+
965
+ if (settings.retinaImage && window.devicePixelRatio > 1) {
966
+ photo.height = photo.height / window.devicePixelRatio;
967
+ photo.width = photo.width / window.devicePixelRatio;
968
+ }
969
+
970
  if (settings.scalePhotos) {
971
  setResize = function () {
972
  photo.height -= photo.height * percent;
973
+ photo.width -= photo.width * percent;
974
  };
975
  if (settings.mw && photo.width > settings.mw) {
976
  percent = (photo.width - settings.mw) / photo.width;
983
  }
984
 
985
  if (settings.h) {
986
+ photo.style.marginTop = Math.max(settings.mh - photo.height, 0) / 2 + 'px';
987
  }
988
 
989
  if ($related[1] && (settings.loop || $related[index + 1])) {
992
  publicMethod.next();
993
  };
994
  }
995
+
996
+ photo.style.width = photo.width + 'px';
997
+ photo.style.height = photo.height + 'px';
998
+
 
999
  setTimeout(function () { // A pause because Chrome will sometimes report a 0 by 0 size otherwise.
1000
  prep(photo);
1001
  }, 1);
1005
  photo.src = href;
1006
  }, 1);
1007
  } else if (href) {
1008
+ $loadingBay.load(href, settings.data, function (data, status) {
1009
+ if (request === requests) {
1010
+ prep(status === 'error' ? $tag(div, 'Error').html(settings.xhrError) : $(this).contents());
1011
+ }
1012
  });
1013
  }
1014
+ }
1015
 
1016
  // Navigates to the next page/image in a set.
1017
  publicMethod.next = function () {
1018
  if (!active && $related[1] && (settings.loop || $related[index + 1])) {
1019
  index = getIndex(1);
1020
+ launch($related[index]);
1021
  }
1022
  };
1023
 
1024
  publicMethod.prev = function () {
1025
  if (!active && $related[1] && (settings.loop || index)) {
1026
  index = getIndex(-1);
1027
+ launch($related[index]);
1028
  }
1029
  };
1030
 
1031
+ // Note: to use this within an iframe use the following format: parent.jQuery.colorbox.close();
1032
  publicMethod.close = function () {
1033
  if (open && !closing) {
1034
 
1038
 
1039
  trigger(event_cleanup, settings.onCleanup);
1040
 
1041
+ $window.unbind('.' + prefix);
1042
 
1043
+ $overlay.fadeTo(settings.fadeOut || 0, 0);
1044
+
1045
+ $box.stop().fadeTo(settings.fadeOut || 0, 0, function () {
1046
 
 
 
1047
  $box.add($overlay).css({'opacity': 1, cursor: 'auto'}).hide();
1048
 
1049
  trigger(event_purge);
1050
 
1051
+ $loaded.empty().remove(); // Using empty first may prevent some IE7 issues.
1052
 
1053
  setTimeout(function () {
1054
  closing = false;
1058
  }
1059
  };
1060
 
1061
+ // Removes changes Colorbox made to the document, but does not remove the plugin.
 
1062
  publicMethod.remove = function () {
1063
+ if (!$box) { return; }
1064
+
1065
+ $box.stop();
1066
+ $.colorbox.close();
1067
+ $box.stop().remove();
1068
+ $overlay.remove();
1069
+ closing = false;
1070
  $box = null;
1071
  $('.' + boxElement)
1072
  .removeData(colorbox)
1073
+ .removeClass(boxElement);
1074
+
1075
+ $(document).unbind('click.'+prefix);
1076
  };
1077
 
1078
+ // A method for fetching the current element Colorbox is referencing.
1079
  // returns a jQuery object.
1080
  publicMethod.element = function () {
1081
  return $(element);
1083
 
1084
  publicMethod.settings = defaults;
1085
 
1086
+ }(jQuery, document, window));
js/gallery.js CHANGED
@@ -53,7 +53,7 @@ TINY.slideshow.prototype={
53
  g.style.filter='alpha(opacity='+this.thumbOpacity+')';
54
  g.onmouseover=new Function('TINY.alpha.set(this,100,5)');
55
  g.onmouseout=new Function('TINY.alpha.set(this,'+this.thumbOpacity+',5)');
56
- g.onclick=new Function(this.n+'.pr('+i+',1)')
57
  }
58
  }
59
  if(b&&f){
@@ -66,7 +66,7 @@ TINY.slideshow.prototype={
66
  b.onclick=new Function(this.n+'.mv(-1,1)');
67
  f.onclick=new Function(this.n+'.mv(1,1)');
68
  }
69
- this.auto?this.is(0,0):this.is(0,1)
70
  },
71
  mv:function(d,c){
72
  var t=this.c+d;
@@ -109,7 +109,7 @@ TINY.slideshow.prototype={
109
  TINY.alpha.set(this.i,100,this.imgSpeed);
110
  var n=new Function(this.n+'.nf('+s+')');
111
  this.lt=setTimeout(n,this.imgSpeed*100);
112
- if(!c){
113
  this.at=setTimeout(new Function(this.n+'.mv(1,0)'),this.speed*1000)
114
  }
115
  if(this.a[s].l != ""){
53
  g.style.filter='alpha(opacity='+this.thumbOpacity+')';
54
  g.onmouseover=new Function('TINY.alpha.set(this,100,5)');
55
  g.onmouseout=new Function('TINY.alpha.set(this,'+this.thumbOpacity+',5)');
56
+ g.onclick=new Function(this.n+'.pr('+i+',1)');
57
  }
58
  }
59
  if(b&&f){
66
  b.onclick=new Function(this.n+'.mv(-1,1)');
67
  f.onclick=new Function(this.n+'.mv(1,1)');
68
  }
69
+ this.auto?this.is(0,0):this.is(0,1);
70
  },
71
  mv:function(d,c){
72
  var t=this.c+d;
109
  TINY.alpha.set(this.i,100,this.imgSpeed);
110
  var n=new Function(this.n+'.nf('+s+')');
111
  this.lt=setTimeout(n,this.imgSpeed*100);
112
+ if(!c || (this.auto == true && this.alwaysauto == true)) {
113
  this.at=setTimeout(new Function(this.n+'.mv(1,0)'),this.speed*1000)
114
  }
115
  if(this.a[s].l != ""){
js/tinymce/dialog.php CHANGED
@@ -12,13 +12,15 @@ for ($i = 0; $i < 6; $i++) $root = dirname($root);
12
 
13
  if (!defined('DS')) { define('DS', DIRECTORY_SEPARATOR); }
14
  require_once($root . DS . 'wp-config.php');
15
- require_once(ABSPATH . 'wp-admin' . DS . 'admin-functions.php');
 
16
 
17
  if(!current_user_can('edit_posts')) die;
18
  do_action('admin_init');
19
 
20
  $galleriesquery = "SELECT * FROM `" . $wpdb -> prefix . "gallery_galleries` ORDER BY `title` ASC";
21
  $galleries = $wpdb -> get_results($galleriesquery);
 
22
 
23
  ?>
24
 
@@ -26,7 +28,7 @@ $galleries = $wpdb -> get_results($galleriesquery);
26
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
27
  <html xmlns="http://www.w3.org/1999/xhtml">
28
  <head>
29
- <title><?php _e('Insert a Slideshow Gallery', "slideshow-gallery"); ?></title>
30
  <script language="javascript" type="text/javascript" src="<?php echo site_url(); ?>/wp-includes/js/tinymce/tiny_mce_popup.js"></script>
31
  <script language="javascript" type="text/javascript" src="<?php echo site_url(); ?>/wp-includes/js/tinymce/utils/mctabs.js"></script>
32
  <script language="javascript" type="text/javascript" src="<?php echo site_url(); ?>/wp-includes/js/tinymce/utils/form_utils.js"></script>
@@ -42,7 +44,7 @@ $galleries = $wpdb -> get_results($galleriesquery);
42
 
43
  if (slideshow_type == "post") {
44
  var post_id = jQuery('#post_id').val();
45
- if (post_id == "") { alert('<?php _e('Please fill in a post ID.', "slideshow-gallery"); ?>'); return false; }
46
  var tag = '[slideshow post_id="' + post_id + '"';
47
 
48
  if (exclude != "" && exclude != "undefined" && exclude != undefined) {
@@ -56,10 +58,14 @@ $galleries = $wpdb -> get_results($galleriesquery);
56
  tag += ']';
57
  } else if (slideshow_type == "gallery") {
58
  var gallery_id = jQuery('#gallery_id').val();
59
- if (gallery_id == "") { alert('<?php _e('Please select a gallery.', "slideshow-gallery"); ?>'); return false; }
60
  var tag = '[slideshow gallery_id="' + gallery_id + '"';
61
  if (exclude != "" && exclude != "undefined" && exclude != undefined) { tag += ' exclude="' + exclude + '"'; }
62
  tag += ']';
 
 
 
 
63
  }
64
 
65
  if(window.tinyMCE) {
@@ -75,6 +81,7 @@ $galleries = $wpdb -> get_results($galleriesquery);
75
  </script>
76
 
77
  <style type="text/css">
 
78
  table th { vertical-align: top; }
79
  .panel_wrapper { border-top: 1px solid #909B9C; }
80
  .panel_wrapper div.current { height:auto !important; }
@@ -88,23 +95,43 @@ $galleries = $wpdb -> get_results($galleriesquery);
88
 
89
  <form onsubmit="insertTag(); return false;" action="#">
90
  <div class="panel_wrapper">
91
- <label style="font-weight:bold; cursor:pointer;"><input onclick="jQuery('#post_div').show(); jQuery('#gallery_div').hide();" type="radio" name="slideshow_type" value="post" id="type_post" /> <?php _e('Images From a Post', "slideshow-gallery"); ?></label><br/>
92
- <label style="font-weight:bold; cursor:pointer;"><input onclick="jQuery('#post_div').hide(); jQuery('#gallery_div').show();" type="radio" name="slideshow_type" value="gallery" id="type_gallery" /> <?php _e('Slides From a Gallery', "slideshow-gallery"); ?></label><br/>
93
- <label style="font-weight:bold; cursor:pointer;"><input onclick="jQuery('#post_div').hide(); jQuery('#gallery_div').hide();" type="radio" name="slideshow_type" value="custom" id="type_custom" /> <?php _e('All Available Slides', "slideshow-gallery"); ?></label>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
94
 
95
  <div id="post_div" style="display:none;">
96
  <p>
97
- <label for="post_id" style="font-weight:bold;"><?php _e('Post ID:', "slideshow-gallery"); ?></label><br/>
98
  <input type="text" class="" name="post_id" value="" id="post_id" /><br/>
99
- <small><?php _e('ID of the post to take images from.', "slideshow-gallery"); ?></small>
100
  </p>
101
  </div>
102
 
103
  <div id="gallery_div" style="display:none;">
104
  <p>
105
- <label for="gallery_id" style="font-weight:bold;"><?php _e('Gallery:', "slideshow-gallery"); ?></label>
106
  <select name="gallery_id" id="gallery_id">
107
- <option value=""><?php _e('- Select Gallery -', "slideshow-gallery"); ?></option>
108
  <?php if (!empty($galleries)) : ?>
109
  <?php foreach ($galleries as $gallery) : ?>
110
  <?php $slidescount = $wpdb -> get_var("SELECT COUNT(`id`) FROM `" . $wpdb -> prefix . "gallery_galleriesslides` WHERE `gallery_id` = '" . $gallery -> id . "'"); ?>
@@ -116,12 +143,14 @@ $galleries = $wpdb -> get_results($galleriesquery);
116
  </div>
117
 
118
  <p>
119
- <label style="font-weight:bold;"><?php _e('Exclude', "slideshow-gallery"); ?>:</label><br/>
120
  <input type="text" name="exclude" value="" id="exclude" /><br/>
121
- <small><?php _e('Comma separated IDs of attachments/slides to exclude', "slideshow-gallery"); ?></small>
122
  </p>
123
  </div>
124
 
 
 
125
  <div class="mceActionPanel">
126
  <div style="float: left">
127
  <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="closePopup()"/>
@@ -134,9 +163,5 @@ $galleries = $wpdb -> get_results($galleriesquery);
134
  </form>
135
  </div>
136
 
137
- <script type="text/javascript">
138
-
139
- </script>
140
-
141
  </body>
142
  </html>
12
 
13
  if (!defined('DS')) { define('DS', DIRECTORY_SEPARATOR); }
14
  require_once($root . DS . 'wp-config.php');
15
+ require_once(ABSPATH . 'wp-admin' . DS . 'includes' . DS . 'admin.php');
16
+ $Gallery = new Gallery();
17
 
18
  if(!current_user_can('edit_posts')) die;
19
  do_action('admin_init');
20
 
21
  $galleriesquery = "SELECT * FROM `" . $wpdb -> prefix . "gallery_galleries` ORDER BY `title` ASC";
22
  $galleries = $wpdb -> get_results($galleriesquery);
23
+ $checkout_active = is_plugin_active('wp-checkout' . DS . 'wp-checkout.php');
24
 
25
  ?>
26
 
28
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
29
  <html xmlns="http://www.w3.org/1999/xhtml">
30
  <head>
31
+ <title><?php _e('Insert a Slideshow Gallery', $Gallery -> plugin_name); ?></title>
32
  <script language="javascript" type="text/javascript" src="<?php echo site_url(); ?>/wp-includes/js/tinymce/tiny_mce_popup.js"></script>
33
  <script language="javascript" type="text/javascript" src="<?php echo site_url(); ?>/wp-includes/js/tinymce/utils/mctabs.js"></script>
34
  <script language="javascript" type="text/javascript" src="<?php echo site_url(); ?>/wp-includes/js/tinymce/utils/form_utils.js"></script>
44
 
45
  if (slideshow_type == "post") {
46
  var post_id = jQuery('#post_id').val();
47
+ if (post_id == "") { alert('<?php _e('Please fill in a post ID.', $Gallery -> plugin_name); ?>'); return false; }
48
  var tag = '[slideshow post_id="' + post_id + '"';
49
 
50
  if (exclude != "" && exclude != "undefined" && exclude != undefined) {
58
  tag += ']';
59
  } else if (slideshow_type == "gallery") {
60
  var gallery_id = jQuery('#gallery_id').val();
61
+ if (gallery_id == "") { alert('<?php _e('Please select a gallery.', $Gallery -> plugin_name); ?>'); return false; }
62
  var tag = '[slideshow gallery_id="' + gallery_id + '"';
63
  if (exclude != "" && exclude != "undefined" && exclude != undefined) { tag += ' exclude="' + exclude + '"'; }
64
  tag += ']';
65
+ } else if (slideshow_type == "products") {
66
+ var slideshow_products = jQuery('#slideshow_products').val();
67
+ var slideshow_productsnumber = jQuery('#slideshow_productsnumber').val();
68
+ var tag = '[slideshow products="' + slideshow_products + '" productsnumber="' + slideshow_productsnumber + '"]';
69
  }
70
 
71
  if(window.tinyMCE) {
81
  </script>
82
 
83
  <style type="text/css">
84
+ @import url('<?php echo $Gallery -> url(); ?>/css/admin.css');
85
  table th { vertical-align: top; }
86
  .panel_wrapper { border-top: 1px solid #909B9C; }
87
  .panel_wrapper div.current { height:auto !important; }
95
 
96
  <form onsubmit="insertTag(); return false;" action="#">
97
  <div class="panel_wrapper">
98
+ <label style="font-weight:bold; cursor:pointer;"><input onclick="jQuery('#products_div').hide(); jQuery('#post_div').show(); jQuery('#gallery_div').hide();" type="radio" name="slideshow_type" value="post" id="type_post" /> <?php _e('Images From a Post', $Gallery -> plugin_name); ?></label><br/>
99
+ <label style="font-weight:bold; cursor:pointer;"><input onclick="jQuery('#products_div').hide(); jQuery('#post_div').hide(); jQuery('#gallery_div').show();" type="radio" name="slideshow_type" value="gallery" id="type_gallery" /> <?php _e('Slides From a Gallery', $Gallery -> plugin_name); ?></label><br/>
100
+ <label style="font-weight:bold; cursor:pointer;"><input onclick="jQuery('#products_div').hide(); jQuery('#post_div').hide(); jQuery('#gallery_div').hide();" type="radio" name="slideshow_type" value="custom" id="type_custom" /> <?php _e('All Available Slides', $Gallery -> plugin_name); ?></label><br/>
101
+ <label style="font-weight:bold; cursor:pointer;"><input <?php echo (!$checkout_active) ? 'disabled="disabled"' : ''; ?> onclick="jQuery('#products_div').show(); jQuery('#post_div').hide(); jQuery('#gallery_div').hide();" type="radio" name="slideshow_type" value="products" id="type_products" /> <?php _e('Products', $Gallery -> plugin_name); ?></label>
102
+ <?php if (!$checkout_active) : ?>
103
+ <small>(<span class="slideshow_error"><?php echo sprintf(__('Requires the %sShopping Cart plugin%s', $Gallery -> plugin_name), '<a href="http://tribulant.com/plugins/view/10/wordpress-shopping-cart-plugin" target="_blank">', '</a>'); ?></span>)</small>
104
+ <?php endif; ?>
105
+
106
+ <div id="products_div" style="display:none;">
107
+ <p>
108
+ <label for="slideshow_products" style="font-weight:bold;"><?php _e('Products Source:', $Gallery -> plugin_name); ?></label><br/>
109
+ <select name="slideshow_products" id="slideshow_products">
110
+ <option value="latest"><?php _e('Latest Products', $Gallery -> plugin_name); ?></option>
111
+ <option value="featured"><?php _e('Featured Products', $Gallery -> plugin_name); ?></option>
112
+ </select>
113
+ <br/><small><?php _e('Choose the source of the products', $Gallery -> plugin_name); ?></small>
114
+ </p>
115
+ <p>
116
+ <label for="slideshow_productsnumber" style="font-weight:bold;"><?php _e('Number of Products:', $Gallery -> plugin_name); ?></label>
117
+ <input type="text" style="width:50px;" class="" name="slideshow_productsnumber" value="10" id="slideshow_productsnumber" />
118
+ <br/><small><?php _e('The number of products to display', $Gallery -> plugin_name); ?></small>
119
+ </p>
120
+ </div>
121
 
122
  <div id="post_div" style="display:none;">
123
  <p>
124
+ <label for="post_id" style="font-weight:bold;"><?php _e('Post ID:', $Gallery -> plugin_name); ?></label><br/>
125
  <input type="text" class="" name="post_id" value="" id="post_id" /><br/>
126
+ <small><?php _e('ID of the post to take images from.', $Gallery -> plugin_name); ?></small>
127
  </p>
128
  </div>
129
 
130
  <div id="gallery_div" style="display:none;">
131
  <p>
132
+ <label for="gallery_id" style="font-weight:bold;"><?php _e('Gallery:', $Gallery -> plugin_name); ?></label>
133
  <select name="gallery_id" id="gallery_id">
134
+ <option value=""><?php _e('- Select Gallery -', $Gallery -> plugin_name); ?></option>
135
  <?php if (!empty($galleries)) : ?>
136
  <?php foreach ($galleries as $gallery) : ?>
137
  <?php $slidescount = $wpdb -> get_var("SELECT COUNT(`id`) FROM `" . $wpdb -> prefix . "gallery_galleriesslides` WHERE `gallery_id` = '" . $gallery -> id . "'"); ?>
143
  </div>
144
 
145
  <p>
146
+ <label style="font-weight:bold;"><?php _e('Exclude:', $Gallery -> plugin_name); ?></label><br/>
147
  <input type="text" name="exclude" value="" id="exclude" /><br/>
148
+ <small><?php _e('Comma separated IDs of attachments/slides to exclude', $Gallery -> plugin_name); ?></small>
149
  </p>
150
  </div>
151
 
152
+ <p><?php echo sprintf(__('For more settings/parameters, see the %sSlideshow Gallery plugin%s page.', $Gallery -> plugin_name), '<a href="http://wordpress.org/plugins/slideshow-gallery/" target="_blank">', '</a>'); ?></p>
153
+
154
  <div class="mceActionPanel">
155
  <div style="float: left">
156
  <input type="button" id="cancel" name="cancel" value="{#cancel}" onclick="closePopup()"/>
163
  </form>
164
  </div>
165
 
 
 
 
 
166
  </body>
167
  </html>
js/tinymce/editor_plugin.js CHANGED
@@ -12,8 +12,8 @@
12
  ed.addCommand('mcegallery', function() {
13
  ed.windowManager.open({
14
  file : url + '/dialog.php',
15
- width : 400,
16
- height : 250,
17
  inline : 1
18
  }, {
19
  plugin_url : url // Plugin absolute URL
@@ -24,19 +24,12 @@
24
  ed.addButton('gallery', {
25
  title : 'gallery.desc',
26
  cmd : 'mcegallery',
27
- image : url + '/gallery.png'
28
  });
29
  },
30
  createControl : function(n, cm) {
31
  return null;
32
  },
33
-
34
- /**
35
- * Returns information about the plugin as a name/value array.
36
- * The current keys are longname, author, authorurl, infourl and version.
37
- *
38
- * @return {Object} Name/value array containing information about the plugin.
39
- */
40
  getInfo : function() {
41
  return {
42
  longname : 'Slideshow Gallery TinyMCE Plugin',
12
  ed.addCommand('mcegallery', function() {
13
  ed.windowManager.open({
14
  file : url + '/dialog.php',
15
+ width : 500,
16
+ height : 300,
17
  inline : 1
18
  }, {
19
  plugin_url : url // Plugin absolute URL
24
  ed.addButton('gallery', {
25
  title : 'gallery.desc',
26
  cmd : 'mcegallery',
27
+ //image : url + '/gallery.png'
28
  });
29
  },
30
  createControl : function(n, cm) {
31
  return null;
32
  },
 
 
 
 
 
 
 
33
  getInfo : function() {
34
  return {
35
  longname : 'Slideshow Gallery TinyMCE Plugin',
languages/slideshow-gallery-sk_SK.mo ADDED
Binary file
languages/slideshow-gallery-sk_SK.po ADDED
@@ -0,0 +1,888 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ msgid ""
2
+ msgstr ""
3
+ "Project-Id-Version: WordPress Slideshow Gallery plugin\n"
4
+ "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2013-02-04 09:55+0200\n"
6
+ "PO-Revision-Date: \n"
7
+ "Last-Translator: Tribulant Software <support@tribulant.com>\n"
8
+ "Language-Team: BRANCO RADENOVICH <br.radenovich@gmail.com>\n"
9
+ "Language: en_ZA\n"
10
+ "MIME-Version: 1.0\n"
11
+ "Content-Type: text/plain; charset=UTF-8\n"
12
+ "Content-Transfer-Encoding: 8bit\n"
13
+ "X-Poedit-SourceCharset: UTF-8\n"
14
+ "X-Poedit-KeywordsList: __;_e\n"
15
+ "X-Poedit-Basepath: .\n"
16
+ "X-Generator: Poedit 1.5.4\n"
17
+ "X-Poedit-SearchPath-0: ..\n"
18
+
19
+ #: ../slideshow-gallery-ajax.php:36
20
+ msgid "Slides have been ordered"
21
+ msgstr "Snímky bolo nariadené"
22
+
23
+ #: ../slideshow-gallery-plugin.php:168
24
+ #, fuzzy
25
+ msgid "Slideshow Manager"
26
+ msgstr "Slideshow hraníc"
27
+
28
+ #: ../slideshow-gallery-plugin.php:280
29
+ #, php-format
30
+ msgid "Uploads folder named \"%s\" cannot be created inside \"%s\""
31
+ msgstr ""
32
+
33
+ #: ../slideshow-gallery-plugin.php:289
34
+ #, php-format
35
+ msgid ""
36
+ "Slideshow cache folder \"%s\" for resizing images cannot be created inside "
37
+ "\"%s\""
38
+ msgstr ""
39
+
40
+ #: ../slideshow-gallery.php:55
41
+ msgid "Slideshow"
42
+ msgstr "Slideshow"
43
+
44
+ #: ../slideshow-gallery.php:56 ../helpers/html.php:9
45
+ #: ../views/admin/slides/index.php:6
46
+ msgid "Manage Slides"
47
+ msgstr "Spravovať snímky"
48
+
49
+ #: ../slideshow-gallery.php:57 ../helpers/html.php:12
50
+ #: ../views/admin/galleries/index.php:6
51
+ msgid "Manage Galleries"
52
+ msgstr "Spravovať galérie"
53
+
54
+ #: ../slideshow-gallery.php:58 ../helpers/html.php:15
55
+ msgid "Configuration"
56
+ msgstr "Konfigurácia"
57
+
58
+ #: ../slideshow-gallery.php:68
59
+ msgid "Save Settings"
60
+ msgstr "Uložiť nastavenia"
61
+
62
+ #: ../slideshow-gallery.php:69
63
+ msgid "About This Plugin"
64
+ msgstr ""
65
+
66
+ #: ../slideshow-gallery.php:70
67
+ msgid "WordPress Related"
68
+ msgstr ""
69
+
70
+ #: ../slideshow-gallery.php:71
71
+ msgid "General Settings"
72
+ msgstr "Všeobecné nastavenia"
73
+
74
+ #: ../slideshow-gallery.php:72
75
+ msgid "Links &amp; Images Overlay"
76
+ msgstr "Odkazy &amp;amp; obrázky prekrytie"
77
+
78
+ #: ../slideshow-gallery.php:73
79
+ msgid "Appearance &amp; Styles"
80
+ msgstr "Vzhľad &amp;amp; štýly"
81
+
82
+ #: ../slideshow-gallery.php:225
83
+ msgid "Slide has been removed"
84
+ msgstr "Snímok bol odstránený"
85
+
86
+ #: ../slideshow-gallery.php:228
87
+ msgid "Slide cannot be removed"
88
+ msgstr "Snímka sa nedá odstrániť"
89
+
90
+ #: ../slideshow-gallery.php:232 ../models/galleryslides.php:64
91
+ msgid "No slide was specified"
92
+ msgstr "Nebol zadaný žiadny snímku"
93
+
94
+ #: ../slideshow-gallery.php:240
95
+ msgid "Slide has been saved"
96
+ msgstr "Snímka bola uložená"
97
+
98
+ #: ../slideshow-gallery.php:260
99
+ msgid "Selected slides have been removed"
100
+ msgstr "Vybraté snímky boli odstránené"
101
+
102
+ #: ../slideshow-gallery.php:265 ../slideshow-gallery.php:365
103
+ msgid "No slides were selected"
104
+ msgstr "Neboli vybraté žiadne snímky"
105
+
106
+ #: ../slideshow-gallery.php:269 ../slideshow-gallery.php:369
107
+ msgid "No action was specified"
108
+ msgstr "Bola zadaná žiadna akcia"
109
+
110
+ #: ../slideshow-gallery.php:304
111
+ msgid "Gallery has been saved"
112
+ msgstr "Galéria bola uložená"
113
+
114
+ #: ../slideshow-gallery.php:339
115
+ msgid "Gallery has been removed"
116
+ msgstr "Galéria bol odstránený"
117
+
118
+ #: ../slideshow-gallery.php:342
119
+ msgid "Gallery cannot be removed"
120
+ msgstr "Galéria nemožno odstrániť"
121
+
122
+ #: ../slideshow-gallery.php:346 ../models/galleryslides.php:63
123
+ msgid "No gallery was specified"
124
+ msgstr "Nebol zadaný žiadny Galéria"
125
+
126
+ #: ../slideshow-gallery.php:360
127
+ msgid "Selected galleries have been removed"
128
+ msgstr "Vybrané galérie boli odstránené"
129
+
130
+ #: ../slideshow-gallery.php:387
131
+ msgid "All configuration settings have been reset to their defaults"
132
+ msgstr "Všetky nastavenia konfigurácie sa nastavili predvolené"
133
+
134
+ #: ../slideshow-gallery.php:391
135
+ msgid "Configuration settings could not be reset"
136
+ msgstr "Konfiguračné nastavenia sa nepodarilo vynulovať"
137
+
138
+ #: ../slideshow-gallery.php:434
139
+ msgid "Configuration has been saved"
140
+ msgstr "Konfigurácia bola uložená"
141
+
142
+ #: ../js/tinymce/dialog.php:29
143
+ msgid "Insert a Slideshow Gallery"
144
+ msgstr "Vložiť Slideshow galérie"
145
+
146
+ #: ../js/tinymce/dialog.php:45
147
+ msgid "Please fill in a post ID."
148
+ msgstr "Vyplňte prosím post ID."
149
+
150
+ #: ../js/tinymce/dialog.php:59
151
+ msgid "Please select a gallery."
152
+ msgstr "Vyberte galériu."
153
+
154
+ #: ../js/tinymce/dialog.php:91
155
+ msgid "Images From a Post"
156
+ msgstr "Obrázky z Post"
157
+
158
+ #: ../js/tinymce/dialog.php:92
159
+ msgid "Slides From a Gallery"
160
+ msgstr "Snímky z galérie"
161
+
162
+ #: ../js/tinymce/dialog.php:93
163
+ msgid "All Available Slides"
164
+ msgstr "Všetky dostupné snímky"
165
+
166
+ #: ../js/tinymce/dialog.php:97
167
+ msgid "Post ID:"
168
+ msgstr "Post ID:"
169
+
170
+ #: ../js/tinymce/dialog.php:99
171
+ msgid "ID of the post to take images from."
172
+ msgstr "Identifikácia post snímok z."
173
+
174
+ #: ../js/tinymce/dialog.php:105
175
+ msgid "Gallery:"
176
+ msgstr "Galéria:"
177
+
178
+ #: ../js/tinymce/dialog.php:107
179
+ msgid "- Select Gallery -"
180
+ msgstr "-Galéria select-"
181
+
182
+ #: ../js/tinymce/dialog.php:119
183
+ msgid "Exclude"
184
+ msgstr "Vylúčiť"
185
+
186
+ #: ../js/tinymce/dialog.php:121
187
+ msgid "Comma separated IDs of attachments/slides to exclude"
188
+ msgstr "ID prílohy/snímok vylúčiť oddelené čiarkou"
189
+
190
+ #: ../models/gallery.php:75 ../models/slide.php:80
191
+ msgid "Please fill in a title"
192
+ msgstr "Vyplňte názov"
193
+
194
+ #: ../models/gallery.php:77 ../models/galleryslides.php:72
195
+ #: ../models/slide.php:140
196
+ msgid "No data was posted"
197
+ msgstr "Bol vyslaný žiadne údaje"
198
+
199
+ #: ../models/slide.php:81
200
+ msgid "Please select an image type"
201
+ msgstr "Vyberte typ obrázka"
202
+
203
+ #: ../models/slide.php:96
204
+ msgid "The image did not upload, please try again"
205
+ msgstr "Obrázok urobil nemožno nahrať, prosím skúste znova"
206
+
207
+ #: ../models/slide.php:97
208
+ msgid ""
209
+ "Image could not be moved from TMP to \"wp-content/uploads/\", please check "
210
+ "permissions"
211
+ msgstr ""
212
+ "Obrázok nemôže byť presunuté z TMP do \"wp-content/uploads/\", prosím "
213
+ "skontrolujte povolenia"
214
+
215
+ #: ../models/slide.php:106
216
+ msgid "The image file is too large"
217
+ msgstr "Obrázok je príliš veľký"
218
+
219
+ #: ../models/slide.php:109
220
+ msgid "The image was partially uploaded, please try again"
221
+ msgstr "Obraz bol čiastočne nahraný, prosím skúste to znova"
222
+
223
+ #: ../models/slide.php:112
224
+ msgid "No image was chosen for uploading, please choose an image"
225
+ msgstr "Žiadny obrázok bol vybraný pre nahrávanie, vyberte obrázok"
226
+
227
+ #: ../models/slide.php:115
228
+ msgid ""
229
+ "No TMP directory has been specified for PHP to use, please ask your hosting "
230
+ "provider"
231
+ msgstr ""
232
+ "Nebola zadaná žiadna TMP adresára pre PHP použiť, požiadajte svojho "
233
+ "poskytovateľa hostingu"
234
+
235
+ #: ../models/slide.php:118
236
+ msgid "Image cannot be written to disc, please ask your hosting provider"
237
+ msgstr ""
238
+ "Obrázok nie je možné zapísať na disk, požiadajte svojho poskytovateľa "
239
+ "hostingu"
240
+
241
+ #: ../models/slide.php:124
242
+ msgid "Please specify an image"
243
+ msgstr "Prosím zadajte obrázok"
244
+
245
+ #: ../vendors/class.paginate.php:176
246
+ msgid "Displaying"
247
+ msgstr "Zobrazenie"
248
+
249
+ #: ../vendors/class.paginate.php:176
250
+ msgid "of"
251
+ msgstr "z"
252
+
253
+ #: ../vendors/class.paginate.php:179
254
+ msgid "Previous Page"
255
+ msgstr "Predchádzajúca strana"
256
+
257
+ #: ../vendors/class.paginate.php:187
258
+ msgid "Page"
259
+ msgstr "Stránka"
260
+
261
+ #: ../vendors/class.paginate.php:198
262
+ msgid "Next Page"
263
+ msgstr "Ďalšia strana"
264
+
265
+ #: ../views/admin/settings.php:16
266
+ msgid "Configuration Settings"
267
+ msgstr "Konfiguraèné nastavenia"
268
+
269
+ #: ../views/admin/galleries/hardcode.php:6
270
+ #, fuzzy, php-format
271
+ msgid "Hardcode Gallery: %s"
272
+ msgstr "Zobraziť galériu: %s"
273
+
274
+ #: ../views/admin/galleries/hardcode.php:7 ../views/admin/galleries/view.php:8
275
+ msgid "&larr; All Galleries"
276
+ msgstr "&amp;larr; Všetky galérie"
277
+
278
+ #: ../views/admin/galleries/hardcode.php:7 ../views/admin/galleries/view.php:8
279
+ msgid "All Galleries"
280
+ msgstr "Všetky galérie"
281
+
282
+ #: ../views/admin/galleries/hardcode.php:8
283
+ msgid ""
284
+ "This PHP code can be used inside your WordPress theme to display slides "
285
+ "inside this gallery."
286
+ msgstr ""
287
+
288
+ #: ../views/admin/galleries/index.php:6 ../views/admin/slides/index.php:6
289
+ msgid "Add New"
290
+ msgstr "Pridať nové"
291
+
292
+ #: ../views/admin/galleries/index.php:11
293
+ msgid "galleries"
294
+ msgstr "galérie"
295
+
296
+ #: ../views/admin/galleries/index.php:15
297
+ msgid "Are you sure you wish to execute this action on the selected galleries?"
298
+ msgstr "Naozaj chcete vykonať túto akciu na vybrané galérie?"
299
+
300
+ #: ../views/admin/galleries/index.php:19 ../views/admin/slides/loop.php:12
301
+ msgid "- Bulk Actions -"
302
+ msgstr "-Hromadné akcie-"
303
+
304
+ #: ../views/admin/galleries/index.php:20 ../views/admin/galleries/index.php:60
305
+ #: ../views/admin/galleries/view.php:14 ../views/admin/slides/loop.php:13
306
+ #: ../views/admin/slides/loop.php:58
307
+ msgid "Delete"
308
+ msgstr "Odstrániť"
309
+
310
+ #: ../views/admin/galleries/index.php:22 ../views/admin/slides/loop.php:15
311
+ msgid "Apply"
312
+ msgstr "Uplatňovať"
313
+
314
+ #: ../views/admin/galleries/index.php:31 ../views/admin/galleries/index.php:41
315
+ #: ../views/admin/slides/loop.php:24 ../views/admin/slides/loop.php:36
316
+ msgid "ID"
317
+ msgstr "ID"
318
+
319
+ #: ../views/admin/galleries/index.php:32 ../views/admin/galleries/index.php:42
320
+ #: ../views/admin/galleries/save.php:14 ../views/admin/slides/loop.php:26
321
+ #: ../views/admin/slides/loop.php:38 ../views/admin/slides/save.php:15
322
+ msgid "Title"
323
+ msgstr "Názov"
324
+
325
+ #: ../views/admin/galleries/index.php:33 ../views/admin/galleries/index.php:43
326
+ msgid "Slides"
327
+ msgstr "Snímky"
328
+
329
+ #: ../views/admin/galleries/index.php:34 ../views/admin/galleries/index.php:44
330
+ msgid "Shortcode"
331
+ msgstr ""
332
+
333
+ #: ../views/admin/galleries/index.php:35 ../views/admin/galleries/index.php:45
334
+ #: ../views/admin/slides/loop.php:29 ../views/admin/slides/loop.php:41
335
+ msgid "Date"
336
+ msgstr "Dátum"
337
+
338
+ #: ../views/admin/galleries/index.php:56
339
+ msgid "View"
340
+ msgstr "Zobrazenie"
341
+
342
+ #: ../views/admin/galleries/index.php:57 ../views/admin/galleries/view.php:12
343
+ #: ../views/admin/slides/loop.php:57
344
+ msgid "Edit"
345
+ msgstr "Upraviť"
346
+
347
+ #: ../views/admin/galleries/index.php:58 ../views/admin/galleries/view.php:13
348
+ msgid "Hardcode"
349
+ msgstr ""
350
+
351
+ #: ../views/admin/galleries/index.php:59 ../views/admin/slides/loop.php:6
352
+ #: ../views/admin/slides/loop.php:8 ../views/admin/slides/order.php:6
353
+ msgid "Order Slides"
354
+ msgstr "Poradie snímok"
355
+
356
+ #: ../views/admin/galleries/index.php:60 ../views/admin/slides/loop.php:58
357
+ msgid "Are you sure you want to permanently remove this slide?"
358
+ msgstr "Naozaj chcete natrvalo odstrániť túto snímku?"
359
+
360
+ #: ../views/admin/galleries/index.php:81 ../views/admin/slides/save.php:39
361
+ msgid "No galleries are available."
362
+ msgstr "Žiadne galérie sú k dispozícii."
363
+
364
+ #: ../views/admin/galleries/save.php:6
365
+ msgid "Save a Gallery"
366
+ msgstr "Uložiť Galéria"
367
+
368
+ #: ../views/admin/galleries/save.php:17
369
+ msgid "Title of this gallery for identification purposes."
370
+ msgstr "Názov tejto galérie pre účely identifikácie."
371
+
372
+ #: ../views/admin/galleries/save.php:25
373
+ msgid "Save Gallery"
374
+ msgstr "Uložiť Galéria"
375
+
376
+ #: ../views/admin/galleries/view.php:6
377
+ #, php-format
378
+ msgid "View Gallery: %s"
379
+ msgstr "Zobraziť galériu: %s"
380
+
381
+ #: ../views/admin/galleries/view.php:12
382
+ msgid "Edit Gallery"
383
+ msgstr "Upraviť Galéria"
384
+
385
+ #: ../views/admin/galleries/view.php:14
386
+ msgid "Are you sure you want to delete this gallery?"
387
+ msgstr "Naozaj chcete odstrániť túto galériu?"
388
+
389
+ #: ../views/admin/galleries/view.php:14
390
+ msgid "Delete Gallery"
391
+ msgstr "Delete Galéria"
392
+
393
+ #: ../views/admin/metaboxes/settings-general.php:4
394
+ msgid "Auto Slide"
395
+ msgstr "Auto snímku"
396
+
397
+ #: ../views/admin/metaboxes/settings-general.php:6
398
+ #: ../views/admin/metaboxes/settings-general.php:40
399
+ #: ../views/admin/metaboxes/settings-general.php:74
400
+ #: ../views/admin/metaboxes/settings-general.php:101
401
+ #: ../views/admin/metaboxes/settings-linksimages.php:6
402
+ #: ../views/admin/metaboxes/settings-styles.php:8
403
+ #: ../views/admin/slides/loop.php:75 ../views/admin/slides/save.php:107
404
+ msgid "Yes"
405
+ msgstr "áno"
406
+
407
+ #: ../views/admin/metaboxes/settings-general.php:7
408
+ #: ../views/admin/metaboxes/settings-general.php:41
409
+ #: ../views/admin/metaboxes/settings-general.php:75
410
+ #: ../views/admin/metaboxes/settings-general.php:102
411
+ #: ../views/admin/metaboxes/settings-linksimages.php:7
412
+ #: ../views/admin/metaboxes/settings-styles.php:9
413
+ #: ../views/admin/slides/loop.php:78 ../views/admin/slides/save.php:108
414
+ msgid "No"
415
+ msgstr "nie"
416
+
417
+ #: ../views/admin/metaboxes/settings-general.php:8
418
+ msgid "Should image slides automatically slide?"
419
+ msgstr "Mala obrázok snímky automaticky posunúť?"
420
+
421
+ #: ../views/admin/metaboxes/settings-general.php:18
422
+ msgid "Auto Speed"
423
+ msgstr "Auto rýchlosť"
424
+
425
+ #: ../views/admin/metaboxes/settings-general.php:20
426
+ #: ../views/admin/metaboxes/settings-general.php:141
427
+ msgid "speed"
428
+ msgstr "rýchlosť"
429
+
430
+ #: ../views/admin/metaboxes/settings-general.php:21
431
+ msgid ""
432
+ "Speed for auto sliding. Lower number for shorter interval between images."
433
+ msgstr ""
434
+ "Rýchlosť pre auto posuvné. Nižšie číslo pre kratší interval medzi obrázkami."
435
+
436
+ #: ../views/admin/metaboxes/settings-general.php:21
437
+ msgid "(Default/Recommended: 10)"
438
+ msgstr "(Predvolené/odporúča: 10)."
439
+
440
+ #: ../views/admin/metaboxes/settings-general.php:31
441
+ msgid "Image Fading Speed"
442
+ msgstr "Rýchlosť vyblednutiu obrazu"
443
+
444
+ #: ../views/admin/metaboxes/settings-general.php:34
445
+ msgid "Speed for fading of images. Lower number for quicker fading of images."
446
+ msgstr ""
447
+ "Rýchlosť pre vyblednutiu obrázky. Nižšie číslo pre rýchlejšie vyblednutiu "
448
+ "obrázky."
449
+
450
+ #: ../views/admin/metaboxes/settings-general.php:34
451
+ msgid "(Default: 10, Recommended: 1-20)"
452
+ msgstr "(Predvolené: 10, doporučené: 1-20)"
453
+
454
+ #: ../views/admin/metaboxes/settings-general.php:38
455
+ msgid "Show Image Navigation"
456
+ msgstr "Zobraziť Image navigáciu"
457
+
458
+ #: ../views/admin/metaboxes/settings-general.php:42
459
+ msgid "Show next/previous buttons on the image for navigation purposes?"
460
+ msgstr ""
461
+ "Zobraziť ďalší/predchádzajúci tlačidiel na obrázok pre navigačné účely?"
462
+
463
+ #: ../views/admin/metaboxes/settings-general.php:52
464
+ msgid "Navigation Default Opacity"
465
+ msgstr "Navigácia predvolené Opacity"
466
+
467
+ #: ../views/admin/metaboxes/settings-general.php:54
468
+ #: ../views/admin/metaboxes/settings-general.php:61
469
+ #: ../views/admin/metaboxes/settings-general.php:134
470
+ msgid "&#37; <!-- percentage -->"
471
+ msgstr "&amp;#37; <!--percento-->"
472
+
473
+ #: ../views/admin/metaboxes/settings-general.php:55
474
+ msgid "Opacity of the next/previous buttons by default."
475
+ msgstr "Opacita ďalší/predchádzajúci tlačidiel v predvolenom nastavení."
476
+
477
+ #: ../views/admin/metaboxes/settings-general.php:59
478
+ msgid "Navigation Hover Opacity"
479
+ msgstr "Navigácia Hover Opacity"
480
+
481
+ #: ../views/admin/metaboxes/settings-general.php:62
482
+ msgid "Opacity of the next/previous buttons when they are hovered."
483
+ msgstr "Opacita ďalší/predchádzajúci tlačidiel, keď sa vznášal."
484
+
485
+ #: ../views/admin/metaboxes/settings-general.php:72
486
+ msgid "Show Information"
487
+ msgstr "Zobraziť informácie"
488
+
489
+ #: ../views/admin/metaboxes/settings-general.php:76
490
+ msgid "Should the information bar be shown on slides?"
491
+ msgstr "Informačný panel na malo byť zobrazené snímky?"
492
+
493
+ #: ../views/admin/metaboxes/settings-general.php:86
494
+ msgid "Information Speed"
495
+ msgstr "Informácie rýchlosť"
496
+
497
+ #: ../views/admin/metaboxes/settings-general.php:89
498
+ msgid "Speed at which the information bar will slide in and out."
499
+ msgstr "Rýchlosť, akou bude kĺzať na informačný panel a von."
500
+
501
+ #: ../views/admin/metaboxes/settings-general.php:99
502
+ msgid "Show Thumbnails"
503
+ msgstr "Zobraziť miniatúry"
504
+
505
+ #: ../views/admin/metaboxes/settings-general.php:103
506
+ msgid "Should the thumbnails bar be shown for slides?"
507
+ msgstr "By zobrazí miniatúry bar pre snímky?"
508
+
509
+ #: ../views/admin/metaboxes/settings-general.php:113
510
+ msgid "Thumbnails Position"
511
+ msgstr "Miniatúry pozície"
512
+
513
+ #: ../views/admin/metaboxes/settings-general.php:115
514
+ msgid "Top"
515
+ msgstr "Top"
516
+
517
+ #: ../views/admin/metaboxes/settings-general.php:116
518
+ msgid "Bottom"
519
+ msgstr "Dno"
520
+
521
+ #: ../views/admin/metaboxes/settings-general.php:117
522
+ msgid ""
523
+ "Choose your preferred position of the thumbnails bar relative to the "
524
+ "slideshow images."
525
+ msgstr ""
526
+ "Vyberte si svoju preferovanú polohu miniatúry bar vo vzťahu k slideshow "
527
+ "obrázkov."
528
+
529
+ #: ../views/admin/metaboxes/settings-general.php:121
530
+ msgid "Thumbnail Dimensions"
531
+ msgstr "Miniatúrne rozmery"
532
+
533
+ #: ../views/admin/metaboxes/settings-general.php:124
534
+ msgid "x <!-- by -->"
535
+ msgstr "x <!--v-->"
536
+
537
+ #: ../views/admin/metaboxes/settings-general.php:126
538
+ msgid "px <!-- pixels -->"
539
+ msgstr "px <!--pixelov-->"
540
+
541
+ #: ../views/admin/metaboxes/settings-general.php:127
542
+ msgid "Width and height of the thumbnails for the slides."
543
+ msgstr "Šírku a výšku miniatúry snímok."
544
+
545
+ #: ../views/admin/metaboxes/settings-general.php:128
546
+ msgid "You may leave the width empty (not the height) to crop proportionally."
547
+ msgstr "Môžete zanechať prázdne šírku (nie výška) orezanie proporcionálne."
548
+
549
+ #: ../views/admin/metaboxes/settings-general.php:132
550
+ msgid "Thumbnail Opacity"
551
+ msgstr "Náhľad nepriehľadnosti"
552
+
553
+ #: ../views/admin/metaboxes/settings-general.php:135
554
+ msgid "Default opacity of thumbnails when they are not hovered."
555
+ msgstr "Predvolené opacity miniatúr, keď oni sú nie vznášal."
556
+
557
+ #: ../views/admin/metaboxes/settings-general.php:139
558
+ msgid "Thumbnails Scroll Speed"
559
+ msgstr "Miniatúry prejdite rýchlosť"
560
+
561
+ #: ../views/admin/metaboxes/settings-general.php:142
562
+ msgid "Speed at which the thumbnails will scroll."
563
+ msgstr "Rýchlosť, akou bude rolovať miniatúr."
564
+
565
+ #: ../views/admin/metaboxes/settings-general.php:142
566
+ msgid "(Default:5, Recommended: 1-20)"
567
+ msgstr "(Predvolené: 5, doporučené: 1-20)"
568
+
569
+ #: ../views/admin/metaboxes/settings-general.php:146
570
+ msgid "Thumbnail Spacing"
571
+ msgstr "Náhľad medzery"
572
+
573
+ #: ../views/admin/metaboxes/settings-general.php:148
574
+ #: ../views/admin/metaboxes/settings-styles.php:31
575
+ #: ../views/admin/metaboxes/settings-styles.php:38
576
+ msgid "px"
577
+ msgstr "px"
578
+
579
+ #: ../views/admin/metaboxes/settings-general.php:149
580
+ msgid "Horizontal margin/spacing in pixels between thumbnail images."
581
+ msgstr "Horizontálne okraj/medzery v pixeloch medzi náhľadmi."
582
+
583
+ #: ../views/admin/metaboxes/settings-linksimages.php:4
584
+ msgid "Open Images in Thickbox Overlay"
585
+ msgstr "Otvoriť obrázky v Thickbox prekrytie"
586
+
587
+ #: ../views/admin/metaboxes/settings-linksimages.php:8
588
+ msgid ""
589
+ "turning this on (Yes) will open image URLs (.jpg, .png, .gif, .bmp) in a "
590
+ "Thickbox image overlay"
591
+ msgstr ""
592
+ "zapnutím tejto služby (áno) sa otvorí image URL (.jpg, .png, .gif, .bmp) v "
593
+ "Thickbox prekryvný obrázok"
594
+
595
+ #: ../views/admin/metaboxes/settings-styles.php:6
596
+ msgid "Resize Images"
597
+ msgstr "Veľkosť obrázkov"
598
+
599
+ #: ../views/admin/metaboxes/settings-styles.php:10
600
+ msgid ""
601
+ "Should images be resized proportionally to fit the width of the slideshow "
602
+ "area?"
603
+ msgstr "By obrázky byť modulované úmerne podľa šírky priestoru slideshow?"
604
+
605
+ #: ../views/admin/metaboxes/settings-styles.php:14
606
+ msgid ""
607
+ "When resize images is turned on, TimThumb will be used to resize/crop images."
608
+ msgstr ""
609
+
610
+ #: ../views/admin/metaboxes/settings-styles.php:15
611
+ msgid ""
612
+ "Below is a test image and the URL to the image to ensure that TimThumb works."
613
+ msgstr ""
614
+
615
+ #: ../views/admin/metaboxes/settings-styles.php:21
616
+ msgid "click to open to test TimThumb"
617
+ msgstr ""
618
+
619
+ #: ../views/admin/metaboxes/settings-styles.php:29
620
+ msgid "Gallery Width"
621
+ msgstr "Galéria šírka"
622
+
623
+ #: ../views/admin/metaboxes/settings-styles.php:32
624
+ msgid "Width of the slideshow gallery"
625
+ msgstr "Šírka slideshow galérie"
626
+
627
+ #: ../views/admin/metaboxes/settings-styles.php:36
628
+ msgid "Gallery Height"
629
+ msgstr "Galéria výška"
630
+
631
+ #: ../views/admin/metaboxes/settings-styles.php:39
632
+ msgid "Height of the slideshow gallery"
633
+ msgstr "Výška slideshow galérie"
634
+
635
+ #: ../views/admin/metaboxes/settings-styles.php:43
636
+ msgid "Slideshow Border"
637
+ msgstr "Slideshow hraníc"
638
+
639
+ #: ../views/admin/metaboxes/settings-styles.php:46
640
+ #, php-format
641
+ msgid "Border style/color for the entire slideshow wrapper eg. %s"
642
+ msgstr "Štýl/farba pre celú prezentáciu wrapper orámovania napr. %s"
643
+
644
+ #: ../views/admin/metaboxes/settings-styles.php:50
645
+ msgid "Slideshow Background"
646
+ msgstr "Pozadí slideshow"
647
+
648
+ #: ../views/admin/metaboxes/settings-styles.php:53
649
+ #, php-format
650
+ msgid "Background color (hexidecimal) of the entire slideshow wrapper eg. %s"
651
+ msgstr "Pozadia farba (hexadecimálnu) celý slideshow obalu napr. %s"
652
+
653
+ #: ../views/admin/metaboxes/settings-styles.php:57
654
+ msgid "Information Background"
655
+ msgstr "Informácie pozadia"
656
+
657
+ #: ../views/admin/metaboxes/settings-styles.php:60
658
+ #, php-format
659
+ msgid "Background color (hexidecimal) of the information bar eg. %s"
660
+ msgstr "Farbu (hexadecimálnu) pozadia panela informácie napr. %s"
661
+
662
+ #: ../views/admin/metaboxes/settings-styles.php:64
663
+ msgid "Information Text Color"
664
+ msgstr "Farba textu informácie"
665
+
666
+ #: ../views/admin/metaboxes/settings-styles.php:67
667
+ #, php-format
668
+ msgid "Text color (hexidecimal) of the information bar content eg. %s"
669
+ msgstr "Text farba (hexadecimálnu) z informačný panel obsah napr. %s"
670
+
671
+ #: ../views/admin/metaboxes/settings-styles.php:71
672
+ msgid "Thumbnail Active Border"
673
+ msgstr "Náhľad aktívny okraj"
674
+
675
+ #: ../views/admin/metaboxes/settings-styles.php:74
676
+ #, php-format
677
+ msgid "Border color (hexidecimal) for the active image thumbnail eg. %s"
678
+ msgstr ""
679
+ "Farba (hexadecimálnu) orámovania pre aktívny Obrázok miniatúry napr. %s"
680
+
681
+ #: ../views/admin/metaboxes/settings-submit.php:5
682
+ msgid "Reset all configuration settings to their default values"
683
+ msgstr "Obnoviť všetky nastavenia na predvolené hodnoty"
684
+
685
+ #: ../views/admin/metaboxes/settings-submit.php:5
686
+ msgid "Are you sure you wish to reset all configuration settings?"
687
+ msgstr "Naozaj chcete obnoviť všetky nastavenia konfigurácie?"
688
+
689
+ #: ../views/admin/metaboxes/settings-submit.php:5
690
+ msgid "Reset to Defaults"
691
+ msgstr "Znovunastaviť na predvolené"
692
+
693
+ #: ../views/admin/metaboxes/settings-submit.php:11
694
+ msgid "Save Configuration"
695
+ msgstr "Uložiť konfiguráciu"
696
+
697
+ #: ../views/admin/metaboxes/settings-wprelated.php:32
698
+ msgid "Only the administrator role can edit roles/permissions."
699
+ msgstr ""
700
+
701
+ #: ../views/admin/slides/index.php:11
702
+ msgid "slides"
703
+ msgstr "snímky"
704
+
705
+ #: ../views/admin/slides/loop.php:2
706
+ msgid "Are you sure you wish to execute this action on the selected slides?"
707
+ msgstr "Naozaj chcete vykonať túto akciu na vybrané snímky?"
708
+
709
+ #: ../views/admin/slides/loop.php:8
710
+ msgid "Order all your slides"
711
+ msgstr "Objednať všetky snímky"
712
+
713
+ #: ../views/admin/slides/loop.php:25 ../views/admin/slides/loop.php:37
714
+ msgid "Image"
715
+ msgstr "Obrázok"
716
+
717
+ #: ../views/admin/slides/loop.php:27 ../views/admin/slides/loop.php:39
718
+ #: ../views/admin/slides/save.php:31
719
+ msgid "Galleries"
720
+ msgstr "Galérie"
721
+
722
+ #: ../views/admin/slides/loop.php:28 ../views/admin/slides/loop.php:40
723
+ msgid "Link"
724
+ msgstr "Odkaz"
725
+
726
+ #: ../views/admin/slides/loop.php:30 ../views/admin/slides/loop.php:42
727
+ msgid "Order"
728
+ msgstr "Objednávky"
729
+
730
+ #: ../views/admin/slides/loop.php:70
731
+ msgid "None"
732
+ msgstr "Žiadny"
733
+
734
+ #: ../views/admin/slides/loop.php:76
735
+ msgid "Open"
736
+ msgstr "Otvorené"
737
+
738
+ #: ../views/admin/slides/loop.php:94 ../views/admin/slides/order.php:59
739
+ msgid "No slides found"
740
+ msgstr "Žiadne snímky našiel"
741
+
742
+ #: ../views/admin/slides/order.php:9
743
+ msgid "&larr; Manage All Slides"
744
+ msgstr "&amp;larr; Spravovať všetky snímky"
745
+
746
+ #: ../views/admin/slides/order.php:15
747
+ msgid "List"
748
+ msgstr ""
749
+
750
+ #: ../views/admin/slides/order.php:16
751
+ msgid "Grid"
752
+ msgstr ""
753
+
754
+ #: ../views/admin/slides/save.php:6
755
+ msgid "Save a Slide"
756
+ msgstr "Uložiť snímky"
757
+
758
+ #: ../views/admin/slides/save.php:18
759
+ msgid "title/name of your slide as it will be displayed to your users."
760
+ msgstr "titul/názov snímky ako sa zobrazí používateľom."
761
+
762
+ #: ../views/admin/slides/save.php:23
763
+ msgid "Description"
764
+ msgstr "Popis"
765
+
766
+ #: ../views/admin/slides/save.php:26
767
+ msgid ""
768
+ "description of your slide as it will be displayed to your users below the "
769
+ "title."
770
+ msgstr "opis snímky ako to zobrazí používateľom pod názvom."
771
+
772
+ #: ../views/admin/slides/save.php:34
773
+ msgid "Select All"
774
+ msgstr "Vybrať všetko"
775
+
776
+ #: ../views/admin/slides/save.php:41
777
+ msgid "Assign this slide to one or more galleries."
778
+ msgstr "Táto snímka priradiť jednu alebo viac galérií."
779
+
780
+ #: ../views/admin/slides/save.php:45
781
+ msgid "Image Type"
782
+ msgstr "Typ obrázka"
783
+
784
+ #: ../views/admin/slides/save.php:47
785
+ msgid "Upload File (recommended)"
786
+ msgstr "Nahrať súbor (odporúča sa)"
787
+
788
+ #: ../views/admin/slides/save.php:48
789
+ msgid "Specify URL"
790
+ msgstr "Zadajte adresu URL"
791
+
792
+ #: ../views/admin/slides/save.php:50
793
+ msgid "do you want to upload an image or specify a local/remote image URL?"
794
+ msgstr ""
795
+ "chcete nahrať obrázok, alebo zadajte adresu URL obrázka miestne/vzdialenej?"
796
+
797
+ #: ../views/admin/slides/save.php:60
798
+ msgid "Choose Image"
799
+ msgstr "Vyberte obrázok"
800
+
801
+ #: ../views/admin/slides/save.php:63
802
+ msgid "choose your image file from your computer. JPG, PNG, GIF are supported."
803
+ msgstr ""
804
+ "Vyberte súbor s obrázkom z vášho počítača. Podporované sú JPG, PNG, GIF."
805
+
806
+ #: ../views/admin/slides/save.php:73
807
+ msgid "Current image. Leave the field above blank to keep this image."
808
+ msgstr "Aktuálny obraz. Ponechajte pole nad prázdnu, aby tento obraz."
809
+
810
+ #: ../views/admin/slides/save.php:91
811
+ msgid "Image URL"
812
+ msgstr "Adresa URL obrázka"
813
+
814
+ #: ../views/admin/slides/save.php:94
815
+ msgid "Local or remote image location eg. http://domain.com/path/to/image.jpg"
816
+ msgstr ""
817
+ "Lokálny alebo vzdialený obraz umiestnenie napr. http://domain.com/path/to/"
818
+ "image.jpg"
819
+
820
+ #: ../views/admin/slides/save.php:105
821
+ msgid "Use Link"
822
+ msgstr "Použite odkaz"
823
+
824
+ #: ../views/admin/slides/save.php:109
825
+ msgid "set this to Yes to link this slide to a link/URL of your choice."
826
+ msgstr "nastaviť na Áno prepojiť túto snímku/URL odkazu podľa vášho výberu."
827
+
828
+ #: ../views/admin/slides/save.php:119
829
+ msgid "Link To"
830
+ msgstr "Odkaz na"
831
+
832
+ #: ../views/admin/slides/save.php:122
833
+ msgid ""
834
+ "link/URL to go to when a user clicks the slide eg. http://www.domain.com/"
835
+ "mypage/"
836
+ msgstr ""
837
+ "odkaz/URL ísť, keď používateľ klikne snímku napr. http://www.domain.com/"
838
+ "mypage/"
839
+
840
+ #: ../views/admin/slides/save.php:126
841
+ msgid "Link Target"
842
+ msgstr "Cieľ odkazu"
843
+
844
+ #: ../views/admin/slides/save.php:128
845
+ msgid "Current Window"
846
+ msgstr "Aktuálne okno"
847
+
848
+ #: ../views/admin/slides/save.php:129
849
+ msgid "New/Blank Window"
850
+ msgstr "Okno novej/prázdnej"
851
+
852
+ #: ../views/admin/slides/save.php:130
853
+ msgid "Should this link open in the current window or a new window?"
854
+ msgstr "By tento odkaz otvorí v aktuálnom okne alebo nové okno?"
855
+
856
+ #: ../views/admin/slides/save.php:138
857
+ msgid "Save Slide"
858
+ msgstr "Uložiť snímky"
859
+
860
+ #: ../views/default/gallery.php:70 ../views/default/gallery.php:101
861
+ msgid "Slide Left"
862
+ msgstr "Snímka vľavo"
863
+
864
+ #: ../views/default/gallery.php:74 ../views/default/gallery.php:105
865
+ msgid "Slide Right"
866
+ msgstr "Snímka vpravo"
867
+
868
+ #: ../views/default/gallery.php:83
869
+ msgid "Previous Image"
870
+ msgstr "Predchádzajúci obrázok"
871
+
872
+ #: ../views/default/gallery.php:88
873
+ msgid "Next Image"
874
+ msgstr "Nasledujúci obrázok"
875
+
876
+ #: ../views/default/gallery.php:168
877
+ #, fuzzy
878
+ msgid "No slides are available."
879
+ msgstr "Žiadne galérie sú k dispozícii."
880
+
881
+ #~ msgid "Uploads folder named \""
882
+ #~ msgstr "Uploads priečinok s názvom \""
883
+
884
+ #~ msgid "About Us"
885
+ #~ msgstr "o nás"
886
+
887
+ #~ msgid "Please fill in a description"
888
+ #~ msgstr "Prosím, vyplňte Popis"
models/slide.php CHANGED
@@ -49,7 +49,7 @@ class GallerySlide extends GalleryDbHelper {
49
  }
50
  break;
51
  case 'image' :
52
- $this -> image_path = 'wp-content/uploads/slideshow-gallery/' . $dval;
53
  break;
54
  }
55
  }
@@ -82,22 +82,24 @@ class GallerySlide extends GalleryDbHelper {
82
  elseif ($type == "file") {
83
  if (!empty($image_oldfile) && empty($_FILES['image_file']['name'])) {
84
  $imagename = $image_oldfile;
85
- $imagepath = ABSPATH . "wp-content" . DS . "uploads" . DS . $this -> plugin_name . DS;
 
86
  $imagefull = $imagepath . $imagename;
87
 
88
  $this -> data -> image = $imagename;
89
- $this -> data -> image_path = 'wp-content/uploads/slideshow-gallery/' . $imagename;
90
  } else {
91
  if ($_FILES['image_file']['error'] <= 0) {
92
  $imagename = $_FILES['image_file']['name'];
93
- $imagepath = ABSPATH . 'wp-content' . DS . 'uploads' . DS . $this -> plugin_name . DS;
 
94
  $imagefull = $imagepath . $imagename;
95
 
96
  if (!is_uploaded_file($_FILES['image_file']['tmp_name'])) { $this -> errors['image_file'] = __('The image did not upload, please try again', $this -> plugin_name); }
97
  elseif (!move_uploaded_file($_FILES['image_file']['tmp_name'], $imagefull)) { $this -> errors['image_file'] = __('Image could not be moved from TMP to "wp-content/uploads/", please check permissions', $this -> plugin_name); }
98
  else {
99
  $this -> data -> image = $imagename;
100
- $this -> data -> image_path = 'wp-content/uploads/slideshow-gallery/' . $imagename;
101
  }
102
  } else {
103
  switch ($_FILES['image_file']['error']) {
@@ -125,7 +127,8 @@ class GallerySlide extends GalleryDbHelper {
125
  else {
126
  if ($image = wp_remote_fopen($image_url)) {
127
  $filename = basename($image_url);
128
- $filepath = ABSPATH . 'wp-content' . DS . 'uploads' . DS . $this -> plugin_name . DS;
 
129
  $filefull = $filepath . $filename;
130
 
131
  if (!file_exists($filefull)) {
49
  }
50
  break;
51
  case 'image' :
52
+ $this -> image_path = GalleryHtmlHelper::uploads_path() . DS . 'slideshow-gallery' . DS . $dval;
53
  break;
54
  }
55
  }
82
  elseif ($type == "file") {
83
  if (!empty($image_oldfile) && empty($_FILES['image_file']['name'])) {
84
  $imagename = $image_oldfile;
85
+ //$imagepath = ABSPATH . "wp-content" . DS . "uploads" . DS . $this -> plugin_name . DS;
86
+ $imagepath = GalleryHtmlHelper::uploads_path() . DS . $this -> plugin_name . DS;
87
  $imagefull = $imagepath . $imagename;
88
 
89
  $this -> data -> image = $imagename;
90
+ $this -> data -> image_path = GalleryHtmlHelper::uploads_path() . DS . $this -> plugin_name . DS . $imagename;
91
  } else {
92
  if ($_FILES['image_file']['error'] <= 0) {
93
  $imagename = $_FILES['image_file']['name'];
94
+ //$imagepath = ABSPATH . 'wp-content' . DS . 'uploads' . DS . $this -> plugin_name . DS;
95
+ $imagepath = GalleryHtmlHelper::uploads_path() . DS . $this -> plugin_name . DS;
96
  $imagefull = $imagepath . $imagename;
97
 
98
  if (!is_uploaded_file($_FILES['image_file']['tmp_name'])) { $this -> errors['image_file'] = __('The image did not upload, please try again', $this -> plugin_name); }
99
  elseif (!move_uploaded_file($_FILES['image_file']['tmp_name'], $imagefull)) { $this -> errors['image_file'] = __('Image could not be moved from TMP to "wp-content/uploads/", please check permissions', $this -> plugin_name); }
100
  else {
101
  $this -> data -> image = $imagename;
102
+ $this -> data -> image_path = GalleryHtmlHelper::uploads_path() . DS . $this -> plugin_name . DS . $imagename;
103
  }
104
  } else {
105
  switch ($_FILES['image_file']['error']) {
127
  else {
128
  if ($image = wp_remote_fopen($image_url)) {
129
  $filename = basename($image_url);
130
+ //$filepath = ABSPATH . 'wp-content' . DS . 'uploads' . DS . $this -> plugin_name . DS;
131
+ $filepath = GalleryHtmlHelper::uploads_path() . DS . $this -> plugin_name . DS;
132
  $filefull = $filepath . $filename;
133
 
134
  if (!file_exists($filefull)) {
readme.txt CHANGED
@@ -3,8 +3,8 @@ Contributors: contrid
3
  Donate link: http://tribulant.com/
4
  Tags: wordpress plugins, wordpress slideshow gallery, slides, slideshow, image gallery, images, gallery, featured content, content gallery, javascript, javascript slideshow, slideshow gallery
5
  Requires at least: 3.1
6
- Tested up to: 3.4.2
7
- Stable tag: 1.2.3.2
8
 
9
  Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website
10
 
@@ -16,6 +16,8 @@ You can easily display multiple galleries throughout your WordPress website disp
16
 
17
  The slideshow is flexible, all aspects can easily be configured and embedding/hardcoding the slideshow gallery is a breeze.
18
 
 
 
19
  Here are several ways to display a slideshow:
20
 
21
  = Shortcode for all slides =
@@ -30,6 +32,10 @@ To embed a slideshow with slides from a specific gallery under **Slideshow > Man
30
 
31
  To embed a slideshow with the images uploaded to a WordPress post/page through it's media gallery, simply insert `[slideshow post_id="X"]` (where X is the ID value of the post). Whether you want to display the images from a post or a page, the parameter remains `post_id`.
32
 
 
 
 
 
33
  = Hardcode into any plugin/theme with PHP =
34
 
35
  To hardcode into any PHP file of your WordPress theme, simply use `<?php if (function_exists('slideshow')) { slideshow($output = true, $gallery_id = false, $post_id = false, $params = array()); } ?>`.
@@ -38,11 +44,26 @@ To hardcode into any PHP file of your WordPress theme, simply use `<?php if (fun
38
 
39
  You can use any of the following parameters with both the hardcoding and shortcode to customize each slideshow gallery:
40
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
  * `resizeimages` [ true | false ] = Set to 'true' to resize images to fit the slideshow dimensions.
42
  * `imagesoverlay` [ true | false ] (default: setting) = Set to 'true' to display links of slides that are images in a Colorbox overlay on the page.
43
  * `orderby` [ random ] = Set to 'random' to randomly order the slides. Leave this shortcode parameter to order by the order set on the slides.
44
- * `width` [ width | auto ] = Width of the slideshow in pixels. Don't specify 'px' part, just the numeric value for the height.
45
- * `height` [ height ] (default: setting) = Height of the slideshow in pixels. Don't specify the 'px' part, just the numeric value for the height.
 
 
46
  * `auto` [ true | false ] (default: setting) = Set this to 'true' to automatically slide the slides in the slideshow.
47
  * `autospeed` [ speed ] (default: setting) = Speed of the auto sliding. 10 is normal. Lower number is faster. Between 5 and 15 is recommended.
48
  * `fadespeed` [ speed ] (default: setting) = Speed of the fading of images. 10 is normal. Lower number is faster. Between 1 and 20 is recommended.
@@ -97,6 +118,37 @@ Yes, you can use the `exclude` parameter to exclude post images by their order i
97
 
98
  == Changelog ==
99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  = 1.2.3.2 =
101
  * ADD: List/grid switching for ordering of slides
102
  * ADD: Permission/role settings for sections
3
  Donate link: http://tribulant.com/
4
  Tags: wordpress plugins, wordpress slideshow gallery, slides, slideshow, image gallery, images, gallery, featured content, content gallery, javascript, javascript slideshow, slideshow gallery
5
  Requires at least: 3.1
6
+ Tested up to: 3.8.1
7
+ Stable tag: 1.3
8
 
9
  Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website
10
 
16
 
17
  The slideshow is flexible, all aspects can easily be configured and embedding/hardcoding the slideshow gallery is a breeze.
18
 
19
+ See the <a href="http://tribulant.net/slideshowgallery/">online demonstration</a>.
20
+
21
  Here are several ways to display a slideshow:
22
 
23
  = Shortcode for all slides =
32
 
33
  To embed a slideshow with the images uploaded to a WordPress post/page through it's media gallery, simply insert `[slideshow post_id="X"]` (where X is the ID value of the post). Whether you want to display the images from a post or a page, the parameter remains `post_id`.
34
 
35
+ = Shortcode for latest/featured products =
36
+
37
+ In order to display latest or featured products in a slideshow, you need the <a href="http://tribulant.com/plugins/view/10/wordpress-shopping-cart-plugin" title="WordPress Shopping Cart">Shopping Cart plugin</a> from Tribulant Software. Once you have this installed and activated, you can easily display recent or featured products. To display recent products use the shortcode `[slideshow products="latest"]` and to display featured products, use `[slideshow products="featured"]`. For both, you can use the `productsnumber` parameter to limit the number of products eg. `[slideshow products="latest" productsnumber="5"]`
38
+
39
  = Hardcode into any plugin/theme with PHP =
40
 
41
  To hardcode into any PHP file of your WordPress theme, simply use `<?php if (function_exists('slideshow')) { slideshow($output = true, $gallery_id = false, $post_id = false, $params = array()); } ?>`.
44
 
45
  You can use any of the following parameters with both the hardcoding and shortcode to customize each slideshow gallery:
46
 
47
+ Shortcode Ex 1: `[slideshow layout="responsive" gallery_id="3" auto="true" navopacity="0" showthumbs="true"]`
48
+ Shortcode Ex 2: `[slideshow layout="specific" post_id="379" width="600" height="300" auto="false" showinfo="false"]`
49
+
50
+ Hardcode Ex 1: `<?php slideshow(true, 3, false, array('layout' => "responsive", 'auto' => "true", 'navopacity' => "0", 'showthumbs' => "true")); ?>`
51
+ Hardcode Ex 2: `<?php slideshow(true, false, 379, array('layout' => "specific", 'width' => "600", 'height' => "300", 'auto' => "false", 'showinfo' => "false")); ?>`
52
+
53
+ This way you can customize each slideshow you embed or hardcode, despite the settings you saved under **Slideshow > Configuration**.
54
+
55
+ * `products` [ latest | featured ] = String "latest" or "featured" to display products from the <a href="http://tribulant.com/plugins/view/10/wordpress-shopping-cart-plugin">Checkout plugin</a>.
56
+ * `productsnumber` [ productsnumber ] = Numeric/integer to limit the number of products to display.
57
+ * `gallery_id` [ gallery_id ] = Numeric/integer ID of a gallery to display images from.
58
+ * `post_id` [ post_id ] = Numeric/integer ID of a post to take images from it, uploaded through it's "Add Media" button.
59
+ * `layout` [ responsive | specific ] = Set to 'responsive' for mobile/tablet compatible theme and 'specific' for fixed width/height.
60
  * `resizeimages` [ true | false ] = Set to 'true' to resize images to fit the slideshow dimensions.
61
  * `imagesoverlay` [ true | false ] (default: setting) = Set to 'true' to display links of slides that are images in a Colorbox overlay on the page.
62
  * `orderby` [ random ] = Set to 'random' to randomly order the slides. Leave this shortcode parameter to order by the order set on the slides.
63
+ * `width` [ width | auto ] = (only with layout="specific") Width of the slideshow in pixels. Don't specify 'px' part, just the numeric value for the height.
64
+ * `resheight` [ resheight ] = (only with layout="responsive") Numeric/integer value such as "30" to be used with 'resheighttype' below
65
+ * `resheighttype [ resheighttype ] = (only with layout="responsive") "px" (pixels) or "%" (percent) as the value eg. resheighttype="%"
66
+ * `height` [ height ] (only with layout="specific"; default: setting) = Height of the slideshow in pixels. Don't specify the 'px' part, just the numeric value for the height.
67
  * `auto` [ true | false ] (default: setting) = Set this to 'true' to automatically slide the slides in the slideshow.
68
  * `autospeed` [ speed ] (default: setting) = Speed of the auto sliding. 10 is normal. Lower number is faster. Between 5 and 15 is recommended.
69
  * `fadespeed` [ speed ] (default: setting) = Speed of the fading of images. 10 is normal. Lower number is faster. Between 1 and 20 is recommended.
118
 
119
  == Changelog ==
120
 
121
+ = 1.3 =
122
+
123
+ * ADD: Show latest/featured products from Shopping Cart plugin
124
+ * ADD: Plugin "Settings" link on the "Plugins" page in WordPress
125
+ * ADD: TimThumb crop position setting
126
+ * ADD: WordPress multi-site compatibility
127
+ * ADD: Sortable columns in all admin sections
128
+ * ADD: Help tooltips in admin
129
+ * ADD: Sliders for speed settings
130
+ * ADD: Color picker for color settings
131
+ * ADD: Delete image upon deletion of locally created slide
132
+ * ADD: WordPress 3.8+ design and compatibility
133
+ * ADD: Multiple slideshows on a single page
134
+ * ADD: Responsive design for mobiles and tablets
135
+ * ADD: Debugging setting in configuration
136
+ * IMPROVE: Colorbox upgrade/fix
137
+ * IMPROVE: Use wp_upload_dir() for dynamic paths
138
+ * IMPROVE: Better thumbnail slider using CSS calc
139
+ * IMPROVE: Move images to default theme folder
140
+ * IMPROVE: New TinyMCE icon/button
141
+ * IMPROVE: New dashicons menu icon
142
+ * IMPROVE: When the nav arrows are turned off, the link click area should be full
143
+ * IMPROVE: Automatically center align images in the slideshow
144
+ * FIX: Empty/zero thumbs spacing causes JS error
145
+ * FIX: Deleting a slide leaves empty reference in gallery
146
+ * FIX: Information overlaps arrows when long
147
+ * FIX: Permissions settings not working
148
+ * FIX: Turning off autoslide setting doesn't stop autoslide
149
+ * FIX: Javascript error due to tooltip() call
150
+ * FIX: Width/height of slideshow is less than the settings
151
+
152
  = 1.2.3.2 =
153
  * ADD: List/grid switching for ordering of slides
154
  * ADD: Permission/role settings for sections
slideshow-gallery-plugin.php CHANGED
@@ -2,7 +2,7 @@
2
 
3
  class GalleryPlugin {
4
 
5
- var $version = '1.2.3.2';
6
  var $plugin_name;
7
  var $plugin_base;
8
  var $pre = 'Gallery';
@@ -26,6 +26,9 @@ class GalleryPlugin {
26
  $this -> initialize_classes();
27
 
28
  global $wpdb;
 
 
 
29
  if ($this -> debugging == true) {
30
  $wpdb -> show_errors();
31
 
@@ -98,11 +101,15 @@ class GalleryPlugin {
98
 
99
  function initialize_options() {
100
  if (!is_admin()) { return; }
 
101
  $this -> init_roles();
102
 
103
  $styles = array(
 
104
  'width' => "450",
105
  'height' => "250",
 
 
106
  'border' => "1px solid #CCCCCC",
107
  'background' => "#000000",
108
  'infobackground' => "#000000",
@@ -111,8 +118,7 @@ class GalleryPlugin {
111
  );
112
 
113
  $this -> add_option('styles', $styles);
114
-
115
- //General Settings
116
  $this -> add_option('fadespeed', 10);
117
  $this -> add_option('shownav', "Y");
118
  $this -> add_option('navopacity', 25);
@@ -129,6 +135,7 @@ class GalleryPlugin {
129
  $this -> add_option('thumbactive', "#FFFFFF");
130
  $this -> add_option('autoslide', "Y");
131
  $this -> add_option('autospeed', 10);
 
132
  $this -> add_option('imagesthickbox', "N");
133
  }
134
 
@@ -136,12 +143,12 @@ class GalleryPlugin {
136
  global $wp_roles;
137
  $permissions = $this -> get_option('permissions');
138
 
139
- if ($role = get_role('administrator')) {
140
  if (!empty($this -> sections)) {
141
  foreach ($this -> sections as $section_key => $section_menu) {
142
- if (empty($role -> capabilities['gallery_' . $section_key])) {
143
- $role -> add_cap('gallery_' . $section_key);
144
- $permissions[$section_key][] = 'administrator';
145
  }
146
  }
147
 
@@ -155,28 +162,40 @@ class GalleryPlugin {
155
  function init_roles($sections = null) {
156
  global $wp_roles;
157
  $sections = $this -> sections;
158
- $role =& get_role('administrator');
 
 
159
 
 
160
  if (!empty($role)) {
161
  if (!empty($sections)) {
162
  foreach ($sections as $section_key => $section_menu) {
163
- $role -> add_cap('gallery_' . $section_key);
 
 
 
 
 
 
 
 
 
164
  }
165
  }
166
- } elseif (empty($role) && !is_multisite()) {
167
- $newrolecapabilities['read'] = 1;
168
- add_role('slideshow', __('Slideshow Manager', $this -> plugin_name), $newrolecapabilities);
169
- $role = get_role('slideshow');
170
- $role -> add_cap('read');
171
- $role -> add_cap('gallery_slides');
172
- $role -> add_cap('gallery_galleries');
173
- $role -> add_cap('gallery_settings');
174
  }
175
 
176
  if (!empty($sections)) {
177
- $permissions = array();
 
178
  foreach ($sections as $section_key => $section_menu) {
179
- $permissions[$section_key][] = 'administrator';
 
180
  }
181
 
182
  $this -> update_option('permissions', $permissions);
@@ -269,7 +288,8 @@ class GalleryPlugin {
269
  }
270
 
271
  function check_uploaddir() {
272
- $uploaddir = ABSPATH . 'wp-content' . DS . 'uploads' . DS . $this -> plugin_name . DS;
 
273
  $cachedir = $uploaddir . 'cache' . DS;
274
 
275
  if (!file_exists($uploaddir)) {
@@ -318,7 +338,26 @@ class GalleryPlugin {
318
  wp_enqueue_script('jquery');
319
 
320
  if (is_admin()) {
321
- if (!empty($_GET['page']) && in_array($_GET['page'], (array) $this -> sections)) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
322
  if ($_GET['page'] == 'slideshow-settings') {
323
  wp_enqueue_script('common');
324
  wp_enqueue_script('wp-lists');
@@ -342,8 +381,9 @@ class GalleryPlugin {
342
  return true;
343
  }
344
 
345
- function get_css_url($attr = null) {
346
- $css_url = plugins_url() . '/' . $this -> plugin_name . '/css/gallery-css.php?';
 
347
 
348
  $default_attr = $this -> get_option('styles');
349
  $styles = wp_parse_args($attr, $default_attr);
@@ -351,7 +391,7 @@ class GalleryPlugin {
351
  if (!empty($styles)) {
352
  $s = 1;
353
 
354
- foreach ($styles as $skey => $sval) {
355
  $css_url .= $skey . '=' . urlencode($sval);
356
  if ($s < count($styles)) { $css_url .= '&'; }
357
  $s++;
@@ -367,11 +407,14 @@ class GalleryPlugin {
367
 
368
  function enqueue_styles() {
369
  if (is_admin()) {
370
- $src = WP_PLUGIN_URL . '/' . $this -> plugin_name . '/css/admin.css';
371
  wp_enqueue_style($this -> plugin_name, $src, null, "1.0", "all");
 
 
 
372
  }
373
 
374
- $colorbox_src = WP_PLUGIN_URL . '/' . $this -> plugin_name . '/css/colorbox.css';
375
  wp_enqueue_style('colorbox', $colorbox_src, null, "1.3.19", "all");
376
 
377
  return true;
@@ -393,7 +436,7 @@ class GalleryPlugin {
393
  return false;
394
  }
395
 
396
- function update_option($name = null, $value = null) {
397
  if (update_option($this -> pre . $name, $value)) {
398
  return true;
399
  }
@@ -401,23 +444,28 @@ class GalleryPlugin {
401
  return false;
402
  }
403
 
404
- function get_option($name = null, $stripslashes = true) {
405
- if ($option = get_option($this -> pre . $name)) {
406
- if (@unserialize($option) !== false) {
407
- return unserialize($option);
408
- }
409
-
410
- if ($stripslashes == true) {
411
- $option = stripslashes_deep($option);
412
  }
413
-
414
- return $option;
 
 
 
 
 
 
415
  }
416
 
417
  return false;
418
  }
419
 
420
  function debug($var = array()) {
 
 
 
421
  if ($this -> debugging) {
422
  echo '<pre>' . print_r($var, true) . '</pre>';
423
  return true;
2
 
3
  class GalleryPlugin {
4
 
5
+ var $version = '1.3';
6
  var $plugin_name;
7
  var $plugin_base;
8
  var $pre = 'Gallery';
26
  $this -> initialize_classes();
27
 
28
  global $wpdb;
29
+ $debugging = get_option('tridebugging');
30
+ $this -> debugging = (empty($debugging)) ? $this -> debugging : true;
31
+
32
  if ($this -> debugging == true) {
33
  $wpdb -> show_errors();
34
 
101
 
102
  function initialize_options() {
103
  if (!is_admin()) { return; }
104
+
105
  $this -> init_roles();
106
 
107
  $styles = array(
108
+ 'layout' => "responsive",
109
  'width' => "450",
110
  'height' => "250",
111
+ 'resheight' => "30",
112
+ 'resheighttype' => "%",
113
  'border' => "1px solid #CCCCCC",
114
  'background' => "#000000",
115
  'infobackground' => "#000000",
118
  );
119
 
120
  $this -> add_option('styles', $styles);
121
+ $this -> add_option('timthumb_align', "c");
 
122
  $this -> add_option('fadespeed', 10);
123
  $this -> add_option('shownav', "Y");
124
  $this -> add_option('navopacity', 25);
135
  $this -> add_option('thumbactive', "#FFFFFF");
136
  $this -> add_option('autoslide', "Y");
137
  $this -> add_option('autospeed', 10);
138
+ $this -> add_option('alwaysauto', "true");
139
  $this -> add_option('imagesthickbox', "N");
140
  }
141
 
143
  global $wp_roles;
144
  $permissions = $this -> get_option('permissions');
145
 
146
+ if ($role = get_role('administrator')) {
147
  if (!empty($this -> sections)) {
148
  foreach ($this -> sections as $section_key => $section_menu) {
149
+ if (empty($role -> capabilities['slideshow_' . $section_key])) {
150
+ $role -> add_cap('slideshow_' . $section_key);
151
+ $permissions['administrator'][] = $section_key;
152
  }
153
  }
154
 
162
  function init_roles($sections = null) {
163
  global $wp_roles;
164
  $sections = $this -> sections;
165
+
166
+ /* Get the administrator role. */
167
+ $role = get_role('administrator');
168
 
169
+ /* If the administrator role exists, add required capabilities for the plugin. */
170
  if (!empty($role)) {
171
  if (!empty($sections)) {
172
  foreach ($sections as $section_key => $section_menu) {
173
+ $role -> add_cap('slideshow_' . $section_key);
174
+ }
175
+ }
176
+ } else if (empty($role) && !is_multisite()) {
177
+ $newrolecapabilities = array();
178
+ $newrolecapabilities[] = 'read';
179
+
180
+ if (!empty($sections)) {
181
+ foreach ($sections as $section_key => $section_menu) {
182
+ $newrolecapabilities[] = 'slideshow_' . $section_key;
183
  }
184
  }
185
+
186
+ add_role(
187
+ 'slideshow',
188
+ _e('Slideshow Manager', $this -> plugin_name),
189
+ $newrolecapabilities
190
+ );
 
 
191
  }
192
 
193
  if (!empty($sections)) {
194
+ $permissions = array();
195
+
196
  foreach ($sections as $section_key => $section_menu) {
197
+ $wp_roles -> add_cap('administrator', 'slideshow_' . $section_key);
198
+ $permissions['administrator'][] = $section_key;
199
  }
200
 
201
  $this -> update_option('permissions', $permissions);
288
  }
289
 
290
  function check_uploaddir() {
291
+ //$uploaddir = ABSPATH . 'wp-content' . DS . 'uploads' . DS . $this -> plugin_name . DS;
292
+ $uploaddir = $this -> Html -> uploads_path() . DS . $this -> plugin_name . DS;
293
  $cachedir = $uploaddir . 'cache' . DS;
294
 
295
  if (!file_exists($uploaddir)) {
338
  wp_enqueue_script('jquery');
339
 
340
  if (is_admin()) {
341
+ if (!empty($_GET['page']) && in_array($_GET['page'], (array) $this -> sections)) {
342
+ wp_enqueue_script(
343
+ 'iris',
344
+ admin_url('js/iris.min.js'),
345
+ array( 'jquery-ui-draggable', 'jquery-ui-slider', 'jquery-touch-punch' ),
346
+ false,
347
+ 1
348
+ );
349
+
350
+ wp_enqueue_script(
351
+ 'wp-color-picker',
352
+ admin_url('js/color-picker.min.js'),
353
+ array( 'iris' ),
354
+ false,
355
+ 1
356
+ );
357
+
358
+ wp_enqueue_script('jquery-ui-tooltip');
359
+ wp_enqueue_script('jquery-ui-slider');
360
+
361
  if ($_GET['page'] == 'slideshow-settings') {
362
  wp_enqueue_script('common');
363
  wp_enqueue_script('wp-lists');
381
  return true;
382
  }
383
 
384
+ function get_css_url($attr = null, $layout = null) {
385
+ $file = (empty($layout) || $layout == "specific") ? 'css' : 'css-responsive';
386
+ $css_url = plugins_url() . '/' . $this -> plugin_name . '/views/default/' . $file . '.php?';
387
 
388
  $default_attr = $this -> get_option('styles');
389
  $styles = wp_parse_args($attr, $default_attr);
391
  if (!empty($styles)) {
392
  $s = 1;
393
 
394
+ foreach ($styles as $skey => $sval) {
395
  $css_url .= $skey . '=' . urlencode($sval);
396
  if ($s < count($styles)) { $css_url .= '&'; }
397
  $s++;
407
 
408
  function enqueue_styles() {
409
  if (is_admin()) {
410
+ $src = plugins_url() . '/' . $this -> plugin_name . '/css/admin.css';
411
  wp_enqueue_style($this -> plugin_name, $src, null, "1.0", "all");
412
+ wp_enqueue_style('wp-color-picker');
413
+ $jquery_ui_src = plugins_url() . '/' . $this -> plugin_name . '/css/jquery-ui.css';
414
+ wp_enqueue_style('jquery-ui', $jquery_ui_src, null, "1.0", "all");
415
  }
416
 
417
+ $colorbox_src = plugins_url() . '/' . $this -> plugin_name . '/css/colorbox.css';
418
  wp_enqueue_style('colorbox', $colorbox_src, null, "1.3.19", "all");
419
 
420
  return true;
436
  return false;
437
  }
438
 
439
+ function update_option($name = null, $value = null) {
440
  if (update_option($this -> pre . $name, $value)) {
441
  return true;
442
  }
444
  return false;
445
  }
446
 
447
+ function get_option($name = null) {
448
+ if (!empty($name)) {
449
+ if ($value = get_option($this -> pre . $name)) {
450
+ return $value;
 
 
 
 
451
  }
452
+ }
453
+
454
+ return false;
455
+ }
456
+
457
+ function delete_option($name = null) {
458
+ if (delete_option($this -> pre . $name)) {
459
+ return true;
460
  }
461
 
462
  return false;
463
  }
464
 
465
  function debug($var = array()) {
466
+ $debugging = get_option('tridebugging');
467
+ $this -> debugging = (empty($debugging)) ? $this -> debugging : true;
468
+
469
  if ($this -> debugging) {
470
  echo '<pre>' . print_r($var, true) . '</pre>';
471
  return true;
slideshow-gallery.php CHANGED
@@ -6,11 +6,15 @@ Plugin URI: http://wpgallery.tribulant.net
6
  Author: Tribulant Software
7
  Author URI: http://tribulant.com
8
  Description: Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website. The slideshow is flexible and all aspects can easily be configured. Embedding or hardcoding the slideshow gallery is a breeze. To embed into a post/page, simply insert <code>[slideshow]</code> into its content with an optional <code>post_id</code> parameter. To hardcode into any PHP file of your WordPress theme, simply use <code>&lt;?php if (function_exists('slideshow')) { slideshow($output = true, $post_id = false, $gallery_id = false, $params = array()); } ?&gt;</code>.
9
- Version: 1.2.3.2
10
  */
11
 
12
- define('DS', DIRECTORY_SEPARATOR);
13
- require_once(dirname(__FILE__) . DS . 'slideshow-gallery-plugin.php');
 
 
 
 
14
 
15
  if (!class_exists('Gallery')) {
16
  class Gallery extends GalleryPlugin {
@@ -19,8 +23,9 @@ if (!class_exists('Gallery')) {
19
  $url = explode("&", $_SERVER['REQUEST_URI']);
20
  $this -> url = $url[0];
21
  $this -> referer = (empty($_SERVER['HTTP_REFERER'])) ? $this -> url : $_SERVER['HTTP_REFERER'];
22
- $this -> register_plugin('slideshow-gallery', __FILE__);
23
- $this -> initialize_options();
 
24
 
25
  //WordPress action hooks
26
  $this -> add_action('wp_head');
@@ -36,8 +41,15 @@ if (!class_exists('Gallery')) {
36
  //WordPress filter hooks
37
  $this -> add_filter('mce_buttons');
38
  $this -> add_filter('mce_external_plugins');
 
39
 
40
- add_shortcode('slideshow', array($this, 'embed'));
 
 
 
 
 
 
41
  }
42
 
43
  function init_textdomain() {
@@ -52,10 +64,10 @@ if (!class_exists('Gallery')) {
52
 
53
  function admin_menu() {
54
  $this -> check_roles();
55
- add_menu_page(__('Slideshow', $this -> plugin_name), __('Slideshow', $this -> plugin_name), 'gallery_slides', $this -> sections -> slides, array($this, 'admin_slides'), $this -> url() . '/images/icon.png');
56
- $this -> menus['slideshow-slides'] = add_submenu_page($this -> sections -> slides, __('Manage Slides', $this -> plugin_name), __('Manage Slides', $this -> plugin_name), 'gallery_slides', $this -> sections -> slides, array($this, 'admin_slides'));
57
- $this -> menus['slideshow-galleries'] = add_submenu_page($this -> sections -> slides, __('Manage Galleries', $this -> plugin_name), __('Manage Galleries', $this -> plugin_name), 'gallery_galleries', $this -> sections -> galleries, array($this, 'admin_galleries'));
58
- $this -> menus['slideshow-settings'] = add_submenu_page($this -> sections -> slides, __('Configuration', $this -> plugin_name), __('Configuration', $this -> plugin_name), 'gallery_settings', $this -> sections -> settings, array($this, 'admin_settings'));
59
 
60
  add_action('admin_head-' . $this -> menus['slideshow-settings'], array($this, 'admin_head_gallery_settings'));
61
  }
@@ -66,11 +78,11 @@ if (!class_exists('Gallery')) {
66
 
67
  function admin_head_gallery_settings() {
68
  add_meta_box('submitdiv', __('Save Settings', $this -> plugin_name), array($this -> Metabox, "settings_submit"), $this -> menus['slideshow-settings'], 'side', 'core');
69
- add_meta_box('aboutdiv', __('About This Plugin', $this -> plugin_name), array($this -> Metabox, "settings_about"), $this -> menus['slideshow-settings'], 'side', 'core');
70
- add_meta_box('wprelateddiv', __('WordPress Related', $this -> plugin_name), array($this -> Metabox, "settings_wprelated"), $this -> menus['slideshow-settings'], 'normal', 'core');
71
- add_meta_box('generaldiv', __('General Settings', $this -> plugin_name), array($this -> Metabox, "settings_general"), $this -> menus['slideshow-settings'], 'normal', 'core');
72
- add_meta_box('linksimagesdiv', __('Links &amp; Images Overlay', $this -> plugin_name), array($this -> Metabox, "settings_linksimages"), $this -> menus['slideshow-settings'], 'normal', 'core');
73
- add_meta_box('stylesdiv', __('Appearance &amp; Styles', $this -> plugin_name), array($this -> Metabox, "settings_styles"), $this -> menus['slideshow-settings'], 'normal', 'core');
74
 
75
  do_action('do_meta_boxes', $this -> menus['slideshow-settings'], 'normal');
76
  do_action('do_meta_boxes', $this -> menus['slideshow-settings'], 'side');
@@ -116,14 +128,20 @@ if (!class_exists('Gallery')) {
116
  // default shortcode parameters
117
  $defaults = array(
118
  'source' => "slides",
 
 
119
  'gallery_id' => false,
120
  'orderby' => array('order', "ASC"),
121
  'resizeimages' => (($styles['resizeimages'] == "Y") ? "true" : "false"),
122
  'imagesoverlay' => (($this -> get_option('imagesthickbox') == "Y") ? "true" : "false"),
 
123
  'width' => ($styles['width']),
124
  'height' => ($styles['height']),
 
 
125
  'auto' => (($this -> get_option('autoslide') == "Y") ? "true" : "false"),
126
  'autospeed' => ($this -> get_option('autospeed')),
 
127
  'fadespeed' => ($this -> get_option('fadespeed')),
128
  'shownav' => (($this -> get_option('shownav') == "Y") ? "true" : "false"),
129
  'navopacity' => ($this -> get_option('navopacity')),
@@ -132,7 +150,7 @@ if (!class_exists('Gallery')) {
132
  'infospeed' => ($this -> get_option('infospeed')),
133
  'showthumbs' => (($this -> get_option('thumbnails') == "Y") ? "true" : "false"),
134
  'thumbsposition' => ($this -> get_option('thumbposition')),
135
- 'thumbsborder' => ($this -> get_option('thumbactive')),
136
  'thumbsspeed' => ($this -> get_option('thumbscrollspeed')),
137
  'thumbsspacing' => ($this -> get_option('thumbspacing')),
138
  'post_id' => null,
@@ -146,7 +164,40 @@ if (!class_exists('Gallery')) {
146
  // if this is an RSS/Atom feed, it should not continue...
147
  if (is_feed()) { return false; }
148
 
149
- if (!empty($gallery_id)) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
150
  if (!is_array($orderby) || $orderby == "random") {
151
  $orderbystring = "ORDER BY RAND()";
152
  } else {
@@ -163,13 +214,13 @@ if (!class_exists('Gallery')) {
163
  " ON " . $this -> Slide -> table . ".id = " . $this -> GallerySlides -> table . ".slide_id WHERE " .
164
  $this -> GallerySlides -> table . ".gallery_id = '" . $gallery_id . "' " . $orderbystring;
165
 
166
- if ($slides = $wpdb -> get_results($slidesquery)) {
167
  foreach ($slides as $skey => $slide) {
168
- $slides[$skey] -> image_path = 'wp-content/uploads/slideshow-gallery/' . $slide -> image;
169
  }
170
 
171
  if ($orderby == "random") { shuffle($slides); }
172
- $content = $this -> render('gallery', array('slides' => $slides, 'options' => $s, 'frompost' => false), false, 'default');
173
  }
174
  } elseif (!empty($custom) || empty($post_id)) {
175
  $slides = $this -> Slide -> find_all(null, null, $orderby);
@@ -185,7 +236,7 @@ if (!class_exists('Gallery')) {
185
  }
186
 
187
  if ($orderby == "random") { shuffle($slides); }
188
- $content = $this -> render('gallery', array('slides' => $slides, 'options' => $s, 'frompost' => false), false, 'default');
189
  } else {
190
  global $post;
191
  $pid = (empty($post_id)) ? $post -> ID : $post_id;
@@ -206,7 +257,7 @@ if (!class_exists('Gallery')) {
206
  }
207
 
208
  if ($orderby == "random") { shuffle($attachments); }
209
- $content = $this -> render('gallery', array('slides' => $attachments, 'options' => $s, 'frompost' => true), false, 'default');
210
  }
211
  }
212
  }
@@ -289,7 +340,10 @@ if (!class_exists('Gallery')) {
289
  }
290
  break;
291
  default :
292
- $data = $this -> paginate('Slide');
 
 
 
293
  $this -> render('slides' . DS . 'index', array('slides' => $data[$this -> Slide -> model], 'paginate' => $data['Paginate']), true, 'admin');
294
  break;
295
  }
@@ -371,7 +425,10 @@ if (!class_exists('Gallery')) {
371
  }
372
  break;
373
  default :
374
- $data = $this -> paginate('Gallery');
 
 
 
375
  $this -> render('galleries' . DS . 'index', array('galleries' => $data[$this -> Gallery -> model], 'paginate' => $data['Paginate']), true, 'admin');
376
  break;
377
  }
@@ -397,8 +454,15 @@ if (!class_exists('Gallery')) {
397
  break;
398
  default :
399
  if (!empty($_POST)) {
 
 
400
  foreach ($_POST as $pkey => $pval) {
401
  switch ($pkey) {
 
 
 
 
 
402
  case 'permissions' :
403
  global $wp_roles;
404
  $role_names = $wp_roles -> get_names();
@@ -406,19 +470,18 @@ if (!class_exists('Gallery')) {
406
  if (!empty($_POST['permissions'])) {
407
  $permissions = $_POST['permissions'];
408
 
409
- foreach ($this -> sections as $section_key => $section_menu) {
410
- foreach ($role_names as $role_key => $role_name) {
411
- $wp_roles -> remove_cap($role_key, 'gallery_' . $section_key);
412
- }
413
-
414
- if (!empty($permissions[$section_key])) {
415
- foreach ($permissions[$section_key] as $role) {
416
- $wp_roles -> add_cap($role, 'gallery_' . $section_key);
 
 
 
417
  }
418
- } else {
419
- /* No roles were selected for this capability, at least add 'administrator' */
420
- $wp_roles -> add_cap('administrator', 'gallery_' . $section_key);
421
- $permissions[$section_key][] = 'administrator';
422
  }
423
  }
424
  }
6
  Author: Tribulant Software
7
  Author URI: http://tribulant.com
8
  Description: Feature content in a JavaScript powered slideshow gallery showcase on your WordPress website. The slideshow is flexible and all aspects can easily be configured. Embedding or hardcoding the slideshow gallery is a breeze. To embed into a post/page, simply insert <code>[slideshow]</code> into its content with an optional <code>post_id</code> parameter. To hardcode into any PHP file of your WordPress theme, simply use <code>&lt;?php if (function_exists('slideshow')) { slideshow($output = true, $post_id = false, $gallery_id = false, $params = array()); } ?&gt;</code>.
9
+ Version: 1.3
10
  */
11
 
12
+ if (!defined('DS')) { define('DS', DIRECTORY_SEPARATOR); }
13
+
14
+ $path = dirname(__FILE__) . DS . 'slideshow-gallery-plugin.php';
15
+ if (file_exists($path)) {
16
+ require_once($path);
17
+ }
18
 
19
  if (!class_exists('Gallery')) {
20
  class Gallery extends GalleryPlugin {
23
  $url = explode("&", $_SERVER['REQUEST_URI']);
24
  $this -> url = $url[0];
25
  $this -> referer = (empty($_SERVER['HTTP_REFERER'])) ? $this -> url : $_SERVER['HTTP_REFERER'];
26
+ $this -> plugin_name = basename(dirname(__FILE__));
27
+ $this -> plugin_file = plugin_basename(__FILE__);
28
+ $this -> register_plugin($this -> plugin_name, __FILE__);
29
 
30
  //WordPress action hooks
31
  $this -> add_action('wp_head');
41
  //WordPress filter hooks
42
  $this -> add_filter('mce_buttons');
43
  $this -> add_filter('mce_external_plugins');
44
+ $this -> add_filter("plugin_action_links_" . $this -> plugin_file, 'plugin_settings_link', 10, 1);
45
 
46
+ if (!is_admin()) { add_shortcode('slideshow', array($this, 'embed')); }
47
+ }
48
+
49
+ function plugin_settings_link($links) {
50
+ $settings_link = '<a href="' . admin_url('admin.php') . '?page=' . $this -> sections -> settings . '">' . __('Settings', $this -> plugin_name) . '</a>';
51
+ array_unshift($links, $settings_link);
52
+ return $links;
53
  }
54
 
55
  function init_textdomain() {
64
 
65
  function admin_menu() {
66
  $this -> check_roles();
67
+ add_menu_page(__('Slideshow', $this -> plugin_name), __('Slideshow', $this -> plugin_name), 'slideshow_slides', $this -> sections -> slides, array($this, 'admin_slides'), false);
68
+ $this -> menus['slideshow-slides'] = add_submenu_page($this -> sections -> slides, __('Manage Slides', $this -> plugin_name), __('Manage Slides', $this -> plugin_name), 'slideshow_slides', $this -> sections -> slides, array($this, 'admin_slides'));
69
+ $this -> menus['slideshow-galleries'] = add_submenu_page($this -> sections -> slides, __('Manage Galleries', $this -> plugin_name), __('Manage Galleries', $this -> plugin_name), 'slideshow_galleries', $this -> sections -> galleries, array($this, 'admin_galleries'));
70
+ $this -> menus['slideshow-settings'] = add_submenu_page($this -> sections -> slides, __('Configuration', $this -> plugin_name), __('Configuration', $this -> plugin_name), 'slideshow_settings', $this -> sections -> settings, array($this, 'admin_settings'));
71
 
72
  add_action('admin_head-' . $this -> menus['slideshow-settings'], array($this, 'admin_head_gallery_settings'));
73
  }
78
 
79
  function admin_head_gallery_settings() {
80
  add_meta_box('submitdiv', __('Save Settings', $this -> plugin_name), array($this -> Metabox, "settings_submit"), $this -> menus['slideshow-settings'], 'side', 'core');
81
+ add_meta_box('aboutdiv', __('About This Plugin', $this -> plugin_name) . $this -> Html -> help(__('More about this plugin and the creators of it', $this -> plugin_name)), array($this -> Metabox, "settings_about"), $this -> menus['slideshow-settings'], 'side', 'core');
82
+ add_meta_box('wprelateddiv', __('WordPress Related', $this -> plugin_name) . $this -> Html -> help(__('Settings specifically related to WordPress', $this -> plugin_name)), array($this -> Metabox, "settings_wprelated"), $this -> menus['slideshow-settings'], 'normal', 'core');
83
+ add_meta_box('generaldiv', __('General Settings', $this -> plugin_name) . $this -> Html -> help(__('General configuration settings for the inner workings and some default behaviours', $this -> plugin_name)), array($this -> Metabox, "settings_general"), $this -> menus['slideshow-settings'], 'normal', 'core');
84
+ add_meta_box('linksimagesdiv', __('Links &amp; Images Overlay', $this -> plugin_name) . $this -> Html -> help(__('Configure the way that slides with links are opened', $this -> plugin_name)), array($this -> Metabox, "settings_linksimages"), $this -> menus['slideshow-settings'], 'normal', 'core');
85
+ add_meta_box('stylesdiv', __('Appearance &amp; Styles', $this -> plugin_name) . $this -> Html -> help(__('Change the way the slideshows look so that it suits your needs', $this -> plugin_name)), array($this -> Metabox, "settings_styles"), $this -> menus['slideshow-settings'], 'normal', 'core');
86
 
87
  do_action('do_meta_boxes', $this -> menus['slideshow-settings'], 'normal');
88
  do_action('do_meta_boxes', $this -> menus['slideshow-settings'], 'side');
128
  // default shortcode parameters
129
  $defaults = array(
130
  'source' => "slides",
131
+ 'products' => false,
132
+ 'productsnumber' => 10,
133
  'gallery_id' => false,
134
  'orderby' => array('order', "ASC"),
135
  'resizeimages' => (($styles['resizeimages'] == "Y") ? "true" : "false"),
136
  'imagesoverlay' => (($this -> get_option('imagesthickbox') == "Y") ? "true" : "false"),
137
+ 'layout' => ($styles['layout']),
138
  'width' => ($styles['width']),
139
  'height' => ($styles['height']),
140
+ 'resheight' => ($styles['resheight']),
141
+ 'resheighttype' => ($styles['resheighttype']),
142
  'auto' => (($this -> get_option('autoslide') == "Y") ? "true" : "false"),
143
  'autospeed' => ($this -> get_option('autospeed')),
144
+ 'alwaysauto' => ($this -> get_option('alwaysauto')),
145
  'fadespeed' => ($this -> get_option('fadespeed')),
146
  'shownav' => (($this -> get_option('shownav') == "Y") ? "true" : "false"),
147
  'navopacity' => ($this -> get_option('navopacity')),
150
  'infospeed' => ($this -> get_option('infospeed')),
151
  'showthumbs' => (($this -> get_option('thumbnails') == "Y") ? "true" : "false"),
152
  'thumbsposition' => ($this -> get_option('thumbposition')),
153
+ 'thumbsborder' => ($styles['thumbactive']),
154
  'thumbsspeed' => ($this -> get_option('thumbscrollspeed')),
155
  'thumbsspacing' => ($this -> get_option('thumbspacing')),
156
  'post_id' => null,
164
  // if this is an RSS/Atom feed, it should not continue...
165
  if (is_feed()) { return false; }
166
 
167
+ if (!empty($products)) {
168
+ include_once(ABSPATH . 'wp-admin/includes/plugin.php');
169
+ if (is_plugin_active('wp-checkout' . DS . 'wp-checkout.php')) {
170
+ $slides = array();
171
+
172
+ if (class_exists('wpCheckout')) {
173
+ if ($wpCheckout = new wpCheckout()) {
174
+ global $wpcoDb, $Product;
175
+ $wpcoDb -> model = $Product -> model;
176
+ $productstype = $products;
177
+
178
+ switch ($productstype) {
179
+ case 'latest' :
180
+ $products = $wpcoDb -> find_all(false, false, array('created', "DESC"), $productsnumber);
181
+ break;
182
+ case 'featured' :
183
+ $products = $wpcoDb -> find_all(array('featured' => "1"), false, array('created', "DESC"), $productsnumber);
184
+ break;
185
+ }
186
+ }
187
+ }
188
+
189
+ $content = $this -> render('gallery', array('slides' => $products, 'unique' => 'products' . $productstype . $productsnumber, 'products' => true, 'options' => $s, 'frompost' => false), false, 'default');
190
+ } else {
191
+ $error = sprintf(__('You need the %sShopping Cart plugin%s to display products slides.', $this -> plugin_name), '<a href="http://tribulant.com/plugins/view/10/wordpress-shopping-cart-plugin" target="_blank">', '</a>');
192
+ }
193
+
194
+ if (!empty($error)) {
195
+ $content = '';
196
+ $content .= '<p>';
197
+ $content .= stripslashes($error);
198
+ $content .= '</p>';
199
+ }
200
+ } elseif (!empty($gallery_id)) {
201
  if (!is_array($orderby) || $orderby == "random") {
202
  $orderbystring = "ORDER BY RAND()";
203
  } else {
214
  " ON " . $this -> Slide -> table . ".id = " . $this -> GallerySlides -> table . ".slide_id WHERE " .
215
  $this -> GallerySlides -> table . ".gallery_id = '" . $gallery_id . "' " . $orderbystring;
216
 
217
+ if ($slides = $wpdb -> get_results($slidesquery)) {
218
  foreach ($slides as $skey => $slide) {
219
+ $slides[$skey] -> image_path = $this -> Html -> uploads_path() . DS . $this -> plugin_name . DS . $slide -> image;
220
  }
221
 
222
  if ($orderby == "random") { shuffle($slides); }
223
+ $content = $this -> render('gallery', array('slides' => $slides, 'unique' => $gallery_id, 'options' => $s, 'frompost' => false), false, 'default');
224
  }
225
  } elseif (!empty($custom) || empty($post_id)) {
226
  $slides = $this -> Slide -> find_all(null, null, $orderby);
236
  }
237
 
238
  if ($orderby == "random") { shuffle($slides); }
239
+ $content = $this -> render('gallery', array('slides' => $slides, 'unique' => "custom", 'options' => $s, 'frompost' => false), false, 'default');
240
  } else {
241
  global $post;
242
  $pid = (empty($post_id)) ? $post -> ID : $post_id;
257
  }
258
 
259
  if ($orderby == "random") { shuffle($attachments); }
260
+ $content = $this -> render('gallery', array('slides' => $attachments, 'unique' => $pid, 'options' => $s, 'frompost' => true), false, 'default');
261
  }
262
  }
263
  }
340
  }
341
  break;
342
  default :
343
+ $orderfield = (empty($_GET['orderby'])) ? 'modified' : $_GET['orderby'];
344
+ $orderdirection = (empty($_GET['order'])) ? 'DESC' : strtoupper($_GET['order']);
345
+ $order = array($orderfield, $orderdirection);
346
+ $data = $this -> paginate('Slide', false, false, false, false, 10, $order);
347
  $this -> render('slides' . DS . 'index', array('slides' => $data[$this -> Slide -> model], 'paginate' => $data['Paginate']), true, 'admin');
348
  break;
349
  }
425
  }
426
  break;
427
  default :
428
+ $orderfield = (empty($_GET['orderby'])) ? 'modified' : $_GET['orderby'];
429
+ $orderdirection = (empty($_GET['order'])) ? 'DESC' : strtoupper($_GET['order']);
430
+ $order = array($orderfield, $orderdirection);
431
+ $data = $this -> paginate('Gallery', false, false, false, false, 10, $order);
432
  $this -> render('galleries' . DS . 'index', array('galleries' => $data[$this -> Gallery -> model], 'paginate' => $data['Paginate']), true, 'admin');
433
  break;
434
  }
454
  break;
455
  default :
456
  if (!empty($_POST)) {
457
+ delete_option('tridebugging');
458
+
459
  foreach ($_POST as $pkey => $pval) {
460
  switch ($pkey) {
461
+ case 'debugging' :
462
+ if (!empty($pval)) {
463
+ update_option('tridebugging', 1);
464
+ }
465
+ break;
466
  case 'permissions' :
467
  global $wp_roles;
468
  $role_names = $wp_roles -> get_names();
470
  if (!empty($_POST['permissions'])) {
471
  $permissions = $_POST['permissions'];
472
 
473
+ foreach ($role_names as $role_key => $role_name) {
474
+ foreach ($this -> sections as $section_key => $section_name) {
475
+ $wp_roles -> remove_cap($role_key, 'slideshow_' . $section_key);
476
+
477
+ if (!empty($permissions[$role_key]) && in_array($section_key, $permissions[$role_key])) {
478
+ $wp_roles -> add_cap($role_key, 'slideshow_' . $section_key);
479
+ }
480
+
481
+ if ($role_key == "administrator") {
482
+ $wp_roles -> add_cap("administrator", 'slideshow_' . $section_key);
483
+ $permissions[$role_key][] = $section_key;
484
  }
 
 
 
 
485
  }
486
  }
487
  }
views/admin/galleries/hardcode.php CHANGED
@@ -1,8 +1,4 @@
1
  <div class="wrap <?php echo $this -> pre; ?>">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-galleries-32.png" />
4
- </div>
5
-
6
  <h2><?php echo sprintf(__('Hardcode Gallery: %s', $this -> plugin_name), $gallery -> title); ?></h2>
7
  <div style="float:none;" class="subsubsub"><?php echo $this -> Html -> link(__('&larr; All Galleries', $this -> plugin_name), $this -> url, array('title' => __('All Galleries', $this -> plugin_name))); ?></div>
8
  <p><?php _e('This PHP code can be used inside your WordPress theme to display slides inside this gallery.', $this -> plugin_name); ?></p>
1
  <div class="wrap <?php echo $this -> pre; ?>">
 
 
 
 
2
  <h2><?php echo sprintf(__('Hardcode Gallery: %s', $this -> plugin_name), $gallery -> title); ?></h2>
3
  <div style="float:none;" class="subsubsub"><?php echo $this -> Html -> link(__('&larr; All Galleries', $this -> plugin_name), $this -> url, array('title' => __('All Galleries', $this -> plugin_name))); ?></div>
4
  <p><?php _e('This PHP code can be used inside your WordPress theme to display slides inside this gallery.', $this -> plugin_name); ?></p>
views/admin/galleries/index.php CHANGED
@@ -1,9 +1,5 @@
1
- <div class="wrap <?php echo $this -> pre; ?>">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-galleries-32.png" />
4
- </div>
5
-
6
- <h2><?php _e('Manage Galleries', $this -> plugin_name); ?> <?php echo $this -> Html -> link(__('Add New'), $this -> url . '&amp;method=save', array('class' => "button add-new-h2")); ?></h2>
7
 
8
  <?php if (!empty($galleries)) : ?>
9
  <form id="posts-filter" action="<?php echo $this -> url; ?>" method="post">
@@ -23,26 +19,64 @@
23
  </div>
24
  <?php $this -> render('paginate', array('paginate' => $paginate), true, 'admin'); ?>
25
  </div>
 
 
 
 
 
 
 
 
26
 
27
  <table class="widefat">
28
  <thead>
29
  <tr>
30
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
31
- <th><?php _e('ID', $this -> plugin_name); ?></th>
32
- <th><?php _e('Title', $this -> plugin_name); ?></th>
 
 
 
 
 
 
 
 
 
 
33
  <th><?php _e('Slides', $this -> plugin_name); ?></th>
34
  <th><?php _e('Shortcode', $this -> plugin_name); ?></th>
35
- <th><?php _e('Date', $this -> plugin_name); ?></th>
 
 
 
 
 
36
  </tr>
37
  </thead>
38
  <tfoot>
39
  <tr>
40
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
41
- <th><?php _e('ID', $this -> plugin_name); ?></th>
42
- <th><?php _e('Title', $this -> plugin_name); ?></th>
 
 
 
 
 
 
 
 
 
 
43
  <th><?php _e('Slides', $this -> plugin_name); ?></th>
44
  <th><?php _e('Shortcode', $this -> plugin_name); ?></th>
45
- <th><?php _e('Date', $this -> plugin_name); ?></th>
 
 
 
 
 
46
  </tr>
47
  </tfoot>
48
  <tbody>
1
+ <div class="wrap <?php echo $this -> pre; ?> slideshow">
2
+ <h2><?php _e('Manage Galleries', $this -> plugin_name); ?> <?php echo $this -> Html -> link(__('Add New'), $this -> url . '&amp;method=save', array('class' => "add-new-h2")); ?></h2>
 
 
 
 
3
 
4
  <?php if (!empty($galleries)) : ?>
5
  <form id="posts-filter" action="<?php echo $this -> url; ?>" method="post">
19
  </div>
20
  <?php $this -> render('paginate', array('paginate' => $paginate), true, 'admin'); ?>
21
  </div>
22
+
23
+ <?php
24
+
25
+ $orderby = (empty($_GET['orderby'])) ? 'modified' : $_GET['orderby'];
26
+ $order = (empty($_GET['order'])) ? 'desc' : strtolower($_GET['order']);
27
+ $otherorder = ($order == "desc") ? 'asc' : 'desc';
28
+
29
+ ?>
30
 
31
  <table class="widefat">
32
  <thead>
33
  <tr>
34
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
35
+ <th class="column-id <?php echo ($orderby == "id") ? 'sorted ' . $order : 'sortable desc'; ?>">
36
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=id&order=' . (($orderby == "id") ? $otherorder : "asc")); ?>">
37
+ <span><?php _e('ID', $this -> plugin_name); ?></span>
38
+ <span class="sorting-indicator"></span>
39
+ </a>
40
+ </th>
41
+ <th class="column-title <?php echo ($orderby == "title") ? 'sorted ' . $order : 'sortable desc'; ?>">
42
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=title&order=' . (($orderby == "title") ? $otherorder : "asc")); ?>">
43
+ <span><?php _e('Title', $this -> plugin_name); ?></span>
44
+ <span class="sorting-indicator"></span>
45
+ </a>
46
+ </th>
47
  <th><?php _e('Slides', $this -> plugin_name); ?></th>
48
  <th><?php _e('Shortcode', $this -> plugin_name); ?></th>
49
+ <th class="column-modified <?php echo ($orderby == "modified") ? 'sorted ' . $order : 'sortable desc'; ?>">
50
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=modified&order=' . (($orderby == "modified") ? $otherorder : "asc")); ?>">
51
+ <span><?php _e('Date', $this -> plugin_name); ?></span>
52
+ <span class="sorting-indicator"></span>
53
+ </a>
54
+ </th>
55
  </tr>
56
  </thead>
57
  <tfoot>
58
  <tr>
59
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
60
+ <th class="column-id <?php echo ($orderby == "id") ? 'sorted ' . $order : 'sortable desc'; ?>">
61
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=id&order=' . (($orderby == "id") ? $otherorder : "asc")); ?>">
62
+ <span><?php _e('ID', $this -> plugin_name); ?></span>
63
+ <span class="sorting-indicator"></span>
64
+ </a>
65
+ </th>
66
+ <th class="column-title <?php echo ($orderby == "title") ? 'sorted ' . $order : 'sortable desc'; ?>">
67
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=title&order=' . (($orderby == "title") ? $otherorder : "asc")); ?>">
68
+ <span><?php _e('Title', $this -> plugin_name); ?></span>
69
+ <span class="sorting-indicator"></span>
70
+ </a>
71
+ </th>
72
  <th><?php _e('Slides', $this -> plugin_name); ?></th>
73
  <th><?php _e('Shortcode', $this -> plugin_name); ?></th>
74
+ <th class="column-modified <?php echo ($orderby == "modified") ? 'sorted ' . $order : 'sortable desc'; ?>">
75
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=modified&order=' . (($orderby == "modified") ? $otherorder : "asc")); ?>">
76
+ <span><?php _e('Date', $this -> plugin_name); ?></span>
77
+ <span class="sorting-indicator"></span>
78
+ </a>
79
+ </th>
80
  </tr>
81
  </tfoot>
82
  <tbody>
views/admin/galleries/save.php CHANGED
@@ -1,8 +1,4 @@
1
  <div class="wrap <?php echo $this -> pre; ?>">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-galleries-32.png" />
4
- </div>
5
-
6
  <h2><?php _e('Save a Gallery', $this -> plugin_name); ?></h2>
7
 
8
  <form action="<?php echo $this -> url; ?>&amp;method=save" method="post">
@@ -11,7 +7,8 @@
11
  <table class="form-table">
12
  <tbody>
13
  <tr>
14
- <th><label for="Gallery_title"><?php _e('Title', $this -> plugin_name); ?></label></th>
 
15
  <td>
16
  <input type="text" class="widefat" name="Gallery[title]" value="<?php echo esc_attr(stripslashes($this -> Gallery -> data -> title)); ?>" id="Gallery_title" />
17
  <span class="howto"><?php _e('Title of this gallery for identification purposes.', $this -> plugin_name); ?></span>
1
  <div class="wrap <?php echo $this -> pre; ?>">
 
 
 
 
2
  <h2><?php _e('Save a Gallery', $this -> plugin_name); ?></h2>
3
 
4
  <form action="<?php echo $this -> url; ?>&amp;method=save" method="post">
7
  <table class="form-table">
8
  <tbody>
9
  <tr>
10
+ <th><label for="Gallery_title"><?php _e('Title', $this -> plugin_name); ?></label>
11
+ <?php echo GalleryHtmlHelper::help(__('Give this gallery a title/name for your own reference.', $this -> plugin_name)); ?></th>
12
  <td>
13
  <input type="text" class="widefat" name="Gallery[title]" value="<?php echo esc_attr(stripslashes($this -> Gallery -> data -> title)); ?>" id="Gallery_title" />
14
  <span class="howto"><?php _e('Title of this gallery for identification purposes.', $this -> plugin_name); ?></span>
views/admin/galleries/view.php CHANGED
@@ -1,8 +1,4 @@
1
  <div class="wrap <?php echo $this -> pre; ?>">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-galleries-32.png" />
4
- </div>
5
-
6
  <h2><?php echo sprintf(__('View Gallery: %s', $this -> plugin_name), $gallery -> title); ?></h2>
7
 
8
  <div style="float:none;" class="subsubsub"><?php echo $this -> Html -> link(__('&larr; All Galleries', $this -> plugin_name), $this -> url, array('title' => __('All Galleries', $this -> plugin_name))); ?></div>
1
  <div class="wrap <?php echo $this -> pre; ?>">
 
 
 
 
2
  <h2><?php echo sprintf(__('View Gallery: %s', $this -> plugin_name), $gallery -> title); ?></h2>
3
 
4
  <div style="float:none;" class="subsubsub"><?php echo $this -> Html -> link(__('&larr; All Galleries', $this -> plugin_name), $this -> url, array('title' => __('All Galleries', $this -> plugin_name))); ?></div>
views/admin/head.php CHANGED
@@ -2,6 +2,7 @@
2
  var GalleryAjax = "<?php echo $this -> url(); ?>/<?php echo $this -> plugin_name; ?>-ajax.php";
3
 
4
  jQuery(document).ready(function() {
5
- jQuery('.colorbox').colorbox({maxWidth:'100%', maxHeight:'100%'});
 
6
  });
7
  </script>
2
  var GalleryAjax = "<?php echo $this -> url(); ?>/<?php echo $this -> plugin_name; ?>-ajax.php";
3
 
4
  jQuery(document).ready(function() {
5
+ if (jQuery.isFunction(jQuery.fn.colorbox)) { jQuery('.colorbox').colorbox({maxWidth:'100%', maxHeight:'100%'}); }
6
+ if (jQuery.isFunction(jQuery.fn.tooltip)) { jQuery(".galleryhelp a").tooltip(); }
7
  });
8
  </script>
views/admin/metaboxes/settings-about.php CHANGED
@@ -2,16 +2,19 @@
2
  <div id="minor-publishing">
3
  <div id="misc-publishing-actions">
4
  <div class="misc-pub-section">
5
- <a href="http://wordpress.org/extend/plugins/slideshow-gallery/" target="_blank">Vote/rate on WordPress.org, please!</a>
6
  </div>
7
  <div class="misc-pub-section">
8
- <a href="http://docs.tribulant.com/wordpress-slideshow-gallery/1758" target="_blank">Online Documentation</a>
9
  </div>
10
  <div class="misc-pub-section">
11
- <a href="https://www.facebook.com/tribulantsoftware" target="_blank">Find Us on Facebook</a>
12
  </div>
 
 
 
13
  <div class="misc-pub-section misc-pub-section-last">
14
- <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=YGCRFTX84K9AS" target="_blank">Make a Donation!</a>
15
  </div>
16
  </div>
17
  </div>
2
  <div id="minor-publishing">
3
  <div id="misc-publishing-actions">
4
  <div class="misc-pub-section">
5
+ <a href="http://wordpress.org/extend/plugins/slideshow-gallery/" target="_blank"><?php _e('Vote/rate on WordPress.org, please!', $this -> plugin_name); ?></a>
6
  </div>
7
  <div class="misc-pub-section">
8
+ <a href="http://docs.tribulant.com/wordpress-slideshow-gallery/1758" target="_blank"><?php _e('Online Documentation', $this -> plugin_name); ?></a>
9
  </div>
10
  <div class="misc-pub-section">
11
+ <a href="https://www.facebook.com/tribulantsoftware" target="_blank"><?php _e('Find Us on Facebook', $this -> plugin_name); ?></a>
12
  </div>
13
+ <div class="misc-pub-section">
14
+ <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=YGCRFTX84K9AS" target="_blank"><?php _e('Make a Donation, please', $this -> plugin_name); ?></a>
15
+ </div>
16
  <div class="misc-pub-section misc-pub-section-last">
17
+ <a href="http://tribulant.com" target="_blank" style="color:red;"><?php _e('More Amazing Plugins!!!', $this -> plugin_name); ?></a>
18
  </div>
19
  </div>
20
  </div>
views/admin/metaboxes/settings-general.php CHANGED
@@ -1,7 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <table class="form-table">
2
  <tbody>
3
  <tr>
4
- <th><label for="autoslideY"><?php _e('Auto Slide', $this -> plugin_name); ?></label></th>
 
5
  <td>
6
  <label><input onclick="jQuery('#autoslide_div').show();" <?php echo ($this -> get_option('autoslide') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="autoslide" value="Y" id="autoslideY" /> <?php _e('Yes', $this -> plugin_name); ?></label>
7
  <label><input onclick="jQuery('#autoslide_div').hide();" <?php echo ($this -> get_option('autoslide') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="autoslide" value="N" id="autoslideN" /> <?php _e('No', $this -> plugin_name); ?></label>
@@ -15,9 +30,34 @@
15
  <table class="form-table">
16
  <tbody>
17
  <tr>
18
- <th><label for="autospeed"><?php _e('Auto Speed', $this -> plugin_name); ?></label></th>
 
 
 
 
 
 
 
 
 
 
19
  <td>
20
- <input type="text" style="width:45px;" name="autospeed" value="<?php echo $this -> get_option('autospeed'); ?>" id="autospeed" /> <?php _e('speed', $this -> plugin_name); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  <span class="howto"><?php _e('Speed for auto sliding. Lower number for shorter interval between images.', $this -> plugin_name); ?> <small><?php _e('(Default/Recommended: 10)', $this -> plugin_name); ?></small></span>
22
  </td>
23
  </tr>
@@ -28,14 +68,31 @@
28
  <table class="form-table">
29
  <tbody>
30
  <tr>
31
- <th><label for="fadespeed"><?php _e('Image Fading Speed', $this -> plugin_name); ?></label></th>
 
32
  <td>
33
- <input style="width:45px;" type="text" name="fadespeed" value="<?php echo $this -> get_option('fadespeed'); ?>" id="fadespeed" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
  <span class="howto"><?php _e('Speed for fading of images. Lower number for quicker fading of images.', $this -> plugin_name); ?> <small><?php _e('(Default: 10, Recommended: 1-20)', $this -> plugin_name); ?><br/></small></span>
35
  </td>
36
  </tr>
37
  <tr>
38
- <th><label for="shownav_Y"><?php _e('Show Image Navigation', $this -> plugin_name); ?></label></th>
 
39
  <td>
40
  <label><input <?php echo ($this -> get_option('shownav') == "Y") ? 'checked="checked"' : ''; ?> onclick="jQuery('#shownavdiv').show();" type="radio" name="shownav" value="Y" id="shownav_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
41
  <label><input <?php echo ($this -> get_option('shownav') == "N") ? 'checked="checked"' : ''; ?> onclick="jQuery('#shownavdiv').hide();" type="radio" name="shownav" value="N" id="shownav_N" /> <?php _e('No', $this -> plugin_name); ?></label>
@@ -49,16 +106,49 @@
49
  <table class="form-table">
50
  <tbody>
51
  <tr>
52
- <th><label for="navopacity"><?php _e('Navigation Default Opacity', $this -> plugin_name); ?></label></th>
 
53
  <td>
54
- <input type="text" name="navopacity" value="<?php echo $this -> get_option('navopacity'); ?>" id="navopacity" style="width:45px;" /> <?php _e('&#37; <!-- percentage -->', $this -> plugin_name); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  <span class="howto"><?php _e('Opacity of the next/previous buttons by default.', $this -> plugin_name); ?></span>
56
  </td>
57
  </tr>
58
  <tr>
59
- <th><label for="navhover"><?php _e('Navigation Hover Opacity', $this -> plugin_name); ?></label></th>
 
60
  <td>
61
- <input type="text" name="navhover" value="<?php echo $this -> get_option('navhover'); ?>" id="navhover" style="width:45px;" /> <?php _e('&#37; <!-- percentage -->', $this -> plugin_name); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  <span class="howto"><?php _e('Opacity of the next/previous buttons when they are hovered.', $this -> plugin_name); ?></span>
63
  </td>
64
  </tr>
@@ -69,7 +159,8 @@
69
  <table class="form-table">
70
  <tbody>
71
  <tr>
72
- <th><label for="informationY"><?php _e('Show Information', $this -> plugin_name); ?></label></th>
 
73
  <td>
74
  <label><input onclick="jQuery('#information_div').show();" <?php echo ($this -> get_option('information') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="information" value="Y" id="informationY" /> <?php _e('Yes', $this -> plugin_name); ?></label>
75
  <label><input onclick="jQuery('#information_div').hide();" <?php echo ($this -> get_option('information') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="information" value="N" id="informationN" /> <?php _e('No', $this -> plugin_name); ?></label>
@@ -83,9 +174,25 @@
83
  <table class="form-table">
84
  <tbody>
85
  <tr>
86
- <th><label for="infospeed"><?php _e('Information Speed', $this -> plugin_name); ?></label></th>
 
87
  <td>
88
- <input type="text" style="width:45px;" name="infospeed" value="<?php echo $this -> get_option('infospeed'); ?>" id="infospeed" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
89
  <span class="howto"><?php _e('Speed at which the information bar will slide in and out.', $this -> plugin_name); ?></span>
90
  </td>
91
  </tr>
@@ -96,7 +203,8 @@
96
  <table class="form-table">
97
  <tbody>
98
  <tr>
99
- <th><label for="thumbnailsN"><?php _e('Show Thumbnails', $this -> plugin_name); ?></label></th>
 
100
  <td>
101
  <label><input onclick="jQuery('#thumbnails_div').show();" <?php echo ($this -> get_option('thumbnails') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="thumbnails" value="Y" id="thumbnailsY" /> <?php _e('Yes', $this -> plugin_name); ?></label>
102
  <label><input onclick="jQuery('#thumbnails_div').hide();" <?php echo ($this -> get_option('thumbnails') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="thumbnails" value="N" id="thumbnailsN" /> <?php _e('No', $this -> plugin_name); ?></label>
@@ -110,7 +218,8 @@
110
  <table class="form-table">
111
  <tbody>
112
  <tr>
113
- <th><label for="thubmpositionbottom"><?php _e('Thumbnails Position', $this -> plugin_name); ?></label></th>
 
114
  <td>
115
  <label><input <?php echo ($this -> get_option('thumbposition') == "top") ? 'checked="checked"' : ''; ?> type="radio" name="thumbposition" value="top" id="thumbpositiontop" /> <?php _e('Top', $this -> plugin_name); ?></label>
116
  <label><input <?php echo ($this -> get_option('thumbposition') == "bottom") ? 'checked="checked"' : ''; ?> type="radio" name="thumbposition" value="bottom" id="thumbpositionbottom" /> <?php _e('Bottom', $this -> plugin_name); ?></label>
@@ -118,7 +227,8 @@
118
  </td>
119
  </tr>
120
  <tr>
121
- <th><label for="thumbheight"><?php _e('Thumbnail Dimensions', $this -> plugin_name); ?></label></th>
 
122
  <td>
123
  <input class="widefat" style="width:45px;" type="text" name="thumbwidth" value="<?php echo esc_attr(stripslashes($this -> get_option('thumbwidth'))); ?>" id="thumbwidth" />
124
  <?php _e('x <!-- by -->', $this -> plugin_name); ?>
@@ -129,21 +239,54 @@
129
  </td>
130
  </tr>
131
  <tr>
132
- <th><label for="thumbopacity"><?php _e('Thumbnail Opacity', $this -> plugin_name); ?></label></th>
 
133
  <td>
134
- <input style="width:45px;" type="text" name="thumbopacity" value="<?php echo $this -> get_option('thumbopacity'); ?>" id="thumbopacity" /> <?php _e('&#37; <!-- percentage -->', $this -> plugin_name); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
135
  <span class="howto"><?php _e('Default opacity of thumbnails when they are not hovered.', $this -> plugin_name); ?></span>
136
  </td>
137
  </tr>
138
  <tr>
139
- <th><label for="thumbscrollspeed"><?php _e('Thumbnails Scroll Speed', $this -> plugin_name); ?></label></th>
 
140
  <td>
141
- <input class="widefat" style="width:45px;" name="thumbscrollspeed" value="<?php echo $this -> get_option('thumbscrollspeed'); ?>" id="thumbscrollspeed" /> <?php _e('speed', $this -> plugin_name); ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
  <span class="howto"><?php _e('Speed at which the thumbnails will scroll.', $this -> plugin_name); ?> <small><?php _e('(Default:5, Recommended: 1-20)', $this -> plugin_name); ?></small></span>
143
  </td>
144
  </tr>
145
  <tr>
146
- <th><label for=""><?php _e('Thumbnail Spacing', $this -> plugin_name); ?></label></th>
 
147
  <td>
148
  <input type="text" style="width:45px;" name="thumbspacing" value="<?php echo $this -> get_option('thumbspacing'); ?>" id="thumbspacing" /> <?php _e('px', $this -> plugin_name); ?>
149
  <span class="howto"><?php _e('Horizontal margin/spacing in pixels between thumbnail images.', $this -> plugin_name); ?></span>
1
+ <!-- General Settings -->
2
+
3
+ <?php
4
+
5
+ $autospeed = $this -> get_option('autospeed');
6
+ $fadespeed = $this -> get_option('fadespeed');
7
+ $navopacity = $this -> get_option('navopacity');
8
+ $navhover = $this -> get_option('navhover');
9
+ $infospeed = $this -> get_option('infospeed');
10
+ $thumbopacity = $this -> get_option('thumbopacity');
11
+ $thumbscrollspeed = $this -> get_option('thumbscrollspeed');
12
+
13
+ ?>
14
+
15
  <table class="form-table">
16
  <tbody>
17
  <tr>
18
+ <th><label for="autoslideY"><?php _e('Auto Slide', $this -> plugin_name); ?></label>
19
+ <?php echo GalleryHtmlHelper::help(__('Turn this on so that the slideshow can automatically slide through the slides.<br/><br/><strong>Override per slideshow:</strong> Using parameter <code>auto</code> with value <code>true</code> or <code>false</code> eg. <code>[slideshow auto="false"]</code>.', $this -> plugin_name)); ?></th>
20
  <td>
21
  <label><input onclick="jQuery('#autoslide_div').show();" <?php echo ($this -> get_option('autoslide') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="autoslide" value="Y" id="autoslideY" /> <?php _e('Yes', $this -> plugin_name); ?></label>
22
  <label><input onclick="jQuery('#autoslide_div').hide();" <?php echo ($this -> get_option('autoslide') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="autoslide" value="N" id="autoslideN" /> <?php _e('No', $this -> plugin_name); ?></label>
30
  <table class="form-table">
31
  <tbody>
32
  <tr>
33
+ <th><label for="alwaysauto_true"><?php _e('Always Auto', $this -> plugin_name); ?></label>
34
+ <?php echo GalleryHtmlHelper::help(__('With the "Auto Slide" setting turned on above, the slideshow will automatically go through the slides but it will stop automatically navigating once the user started navigating. You can override this behaviour and force automatic navigation by turning this on.', $this -> plugin_name)); ?></th>
35
+ <td>
36
+ <label><input <?php echo ($this -> get_option('alwaysauto') == "true") ? 'checked="checked"' : ''; ?> type="radio" name="alwaysauto" value="true" id="alwaysauto_true" /> <?php _e('Yes', $this -> plugin_name); ?></label>
37
+ <label><input <?php echo ($this -> get_option('alwaysauto') == "false") ? 'checked="checked"' : ''; ?> type="radio" name="alwaysauto" value="false" id="alwaysauto_false" /> <?php _e('No', $this -> plugin_name); ?></label>
38
+ <span class="howto"><?php _e('Should the slideshow always continue auto sliding, even after navigation by the user?', $this -> plugin_name); ?></span>
39
+ </td>
40
+ </tr>
41
+ <tr>
42
+ <th><label for="autospeed"><?php _e('Auto Speed', $this -> plugin_name); ?></label>
43
+ <?php echo GalleryHtmlHelper::help(__('Set the speed at which auto sliding will occur, meaning the interval between auto sliding. The default is 10 which is recommended but you can specify a smaller number for quicker sliding or a larger number for slower sliding.', $this -> plugin_name)); ?></th>
44
  <td>
45
+ <input type="hidden" style="width:45px;" name="autospeed" value="<?php echo $autospeed; ?>" id="autospeed" />
46
+ <div id="autospeed_slider"></div>
47
+ <span class="slider-value" id="autospeed_slider_value"><?php echo $autospeed; ?></span>
48
+ <script type="text/javascript">
49
+ jQuery(document).ready(function() {
50
+ jQuery('#autospeed_slider').slider({
51
+ min: 1,
52
+ max: 20,
53
+ value: <?php echo $autospeed; ?>,
54
+ slide: function(event, ui) {
55
+ jQuery('#autospeed').val(ui.value);
56
+ jQuery('#autospeed_slider_value').text(ui.value);
57
+ }
58
+ });
59
+ });
60
+ </script>
61
  <span class="howto"><?php _e('Speed for auto sliding. Lower number for shorter interval between images.', $this -> plugin_name); ?> <small><?php _e('(Default/Recommended: 10)', $this -> plugin_name); ?></small></span>
62
  </td>
63
  </tr>
68
  <table class="form-table">
69
  <tbody>
70
  <tr>
71
+ <th><label for="fadespeed"><?php _e('Image Fading Speed', $this -> plugin_name); ?></label>
72
+ <?php echo GalleryHtmlHelper::help(__('Choose the speed at which images fade in and out. The default is 10 and a number between 1 and 20 is recommended. Use a low number for quick fading and a higher number for slower fading.', $this -> plugin_name)); ?></th>
73
  <td>
74
+ <input style="width:45px;" type="hidden" name="fadespeed" value="<?php echo $fadespeed; ?>" id="fadespeed" />
75
+ <div id="fadespeed_slider"></div>
76
+ <span class="slider-value" id="fadespeed_slider_value"><?php echo $fadespeed; ?></span>
77
+ <script type="text/javascript">
78
+ jQuery(document).ready(function() {
79
+ jQuery('#fadespeed_slider').slider({
80
+ min: 1,
81
+ max: 20,
82
+ value: <?php echo $fadespeed; ?>,
83
+ slide: function(event, ui) {
84
+ jQuery('#fadespeed').val(ui.value);
85
+ jQuery('#fadespeed_slider_value').text(ui.value);
86
+ }
87
+ });
88
+ });
89
+ </script>
90
  <span class="howto"><?php _e('Speed for fading of images. Lower number for quicker fading of images.', $this -> plugin_name); ?> <small><?php _e('(Default: 10, Recommended: 1-20)', $this -> plugin_name); ?><br/></small></span>
91
  </td>
92
  </tr>
93
  <tr>
94
+ <th><label for="shownav_Y"><?php _e('Show Image Navigation', $this -> plugin_name); ?></label>
95
+ <?php echo GalleryHtmlHelper::help(__('Turn this on to show the Next and Previous arrows on either sides of the slideshow for the user to navigate through slides. Once turned on, you can set the opacity of these navigation arrows below.', $this -> plugin_name)); ?></th>
96
  <td>
97
  <label><input <?php echo ($this -> get_option('shownav') == "Y") ? 'checked="checked"' : ''; ?> onclick="jQuery('#shownavdiv').show();" type="radio" name="shownav" value="Y" id="shownav_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
98
  <label><input <?php echo ($this -> get_option('shownav') == "N") ? 'checked="checked"' : ''; ?> onclick="jQuery('#shownavdiv').hide();" type="radio" name="shownav" value="N" id="shownav_N" /> <?php _e('No', $this -> plugin_name); ?></label>
106
  <table class="form-table">
107
  <tbody>
108
  <tr>
109
+ <th><label for="navopacity"><?php _e('Navigation Default Opacity', $this -> plugin_name); ?></label>
110
+ <?php echo GalleryHtmlHelper::help(__('The default state opacity of the left/right navigation arrows. This is a percentage value and you can specify anything between 0% and 100% as needed.', $this -> plugin_name)); ?></th>
111
  <td>
112
+ <input type="hidden" name="navopacity" value="<?php echo $navopacity; ?>" id="navopacity" style="width:45px;" />
113
+ <div id="navopacity_slider"></div>
114
+ <span class="slider-value" id="navopacity_slider_value"><?php echo $navopacity; ?></span>
115
+ <script type="text/javascript">
116
+ jQuery(document).ready(function() {
117
+ jQuery('#navopacity_slider').slider({
118
+ min: 0,
119
+ max: 100,
120
+ value: <?php echo $navopacity; ?>,
121
+ slide: function(event, ui) {
122
+ jQuery('#navopacity').val(ui.value);
123
+ jQuery('#navopacity_slider_value').text(ui.value);
124
+ }
125
+ });
126
+ });
127
+ </script>
128
+
129
  <span class="howto"><?php _e('Opacity of the next/previous buttons by default.', $this -> plugin_name); ?></span>
130
  </td>
131
  </tr>
132
  <tr>
133
+ <th><label for="navhover"><?php _e('Navigation Hover Opacity', $this -> plugin_name); ?></label>
134
+ <?php echo GalleryHtmlHelper::help(__('The hover state opacity of the left/right navigation arrows. This is the opacity when the user hovers with the mouse cursor over the arrow image. Percentage value between 0% and 100%', $this -> plugin_name)); ?></th>
135
  <td>
136
+ <input type="hidden" name="navhover" value="<?php echo $navhover; ?>" id="navhover" style="width:45px;" />
137
+ <div id="navhover_slider"></div>
138
+ <span class="slider-value" id="navhover_slider_value"><?php echo $navhover; ?></span>
139
+ <script type="text/javascript">
140
+ jQuery(document).ready(function() {
141
+ jQuery('#navhover_slider').slider({
142
+ min: 0,
143
+ max: 100,
144
+ value: <?php echo $navhover; ?>,
145
+ slide: function(event, ui) {
146
+ jQuery('#navhover').val(ui.value);
147
+ jQuery('#navhover_slider_value').text(ui.value);
148
+ }
149
+ });
150
+ });
151
+ </script>
152
  <span class="howto"><?php _e('Opacity of the next/previous buttons when they are hovered.', $this -> plugin_name); ?></span>
153
  </td>
154
  </tr>
159
  <table class="form-table">
160
  <tbody>
161
  <tr>
162
+ <th><label for="informationY"><?php _e('Show Information', $this -> plugin_name); ?></label>
163
+ <?php echo GalleryHtmlHelper::help(__('Should the information bar be shown on slides? Turn this on to show a bar on each slide with the title and description of the slide.', $this -> plugin_name)); ?></th>
164
  <td>
165
  <label><input onclick="jQuery('#information_div').show();" <?php echo ($this -> get_option('information') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="information" value="Y" id="informationY" /> <?php _e('Yes', $this -> plugin_name); ?></label>
166
  <label><input onclick="jQuery('#information_div').hide();" <?php echo ($this -> get_option('information') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="information" value="N" id="informationN" /> <?php _e('No', $this -> plugin_name); ?></label>
174
  <table class="form-table">
175
  <tbody>
176
  <tr>
177
+ <th><label for="infospeed"><?php _e('Information Speed', $this -> plugin_name); ?></label>
178
+ <?php echo GalleryHtmlHelper::help(__('Specify the speed at which the information bar will slide up and down as the slide is shown and hidden.', $this -> plugin_name)); ?></th>
179
  <td>
180
+ <input type="hidden" style="width:45px;" name="infospeed" value="<?php echo $infospeed; ?>" id="infospeed" />
181
+ <div id="infospeed_slider"></div>
182
+ <span class="slider-value" id="infospeed_slider_value"><?php echo $infospeed; ?></span>
183
+ <script type="text/javascript">
184
+ jQuery(document).ready(function() {
185
+ jQuery('#infospeed_slider').slider({
186
+ min: 1,
187
+ max: 20,
188
+ value: <?php echo $infospeed; ?>,
189
+ slide: function(event, ui) {
190
+ jQuery('#infospeed').val(ui.value);
191
+ jQuery('#infospeed_slider_value').text(ui.value);
192
+ }
193
+ });
194
+ });
195
+ </script>
196
  <span class="howto"><?php _e('Speed at which the information bar will slide in and out.', $this -> plugin_name); ?></span>
197
  </td>
198
  </tr>
203
  <table class="form-table">
204
  <tbody>
205
  <tr>
206
+ <th><label for="thumbnailsN"><?php _e('Show Thumbnails', $this -> plugin_name); ?></label>
207
+ <?php echo GalleryHtmlHelper::help(__('Would you like to show a thumbnail bar/slider above/below the slideshow with the thumbnails of all the slides in the slideshow for easier navigation?', $this -> plugin_name)); ?></th>
208
  <td>
209
  <label><input onclick="jQuery('#thumbnails_div').show();" <?php echo ($this -> get_option('thumbnails') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="thumbnails" value="Y" id="thumbnailsY" /> <?php _e('Yes', $this -> plugin_name); ?></label>
210
  <label><input onclick="jQuery('#thumbnails_div').hide();" <?php echo ($this -> get_option('thumbnails') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="thumbnails" value="N" id="thumbnailsN" /> <?php _e('No', $this -> plugin_name); ?></label>
218
  <table class="form-table">
219
  <tbody>
220
  <tr>
221
+ <th><label for="thubmpositionbottom"><?php _e('Thumbnails Position', $this -> plugin_name); ?></label>
222
+ <?php echo GalleryHtmlHelper::help(__('With the thumbnails turned on with the setting above, you can now specify the position of the thumbnail bar/slider. Either above or below the slideshow is available.', $this -> plugin_name)); ?></th>
223
  <td>
224
  <label><input <?php echo ($this -> get_option('thumbposition') == "top") ? 'checked="checked"' : ''; ?> type="radio" name="thumbposition" value="top" id="thumbpositiontop" /> <?php _e('Top', $this -> plugin_name); ?></label>
225
  <label><input <?php echo ($this -> get_option('thumbposition') == "bottom") ? 'checked="checked"' : ''; ?> type="radio" name="thumbposition" value="bottom" id="thumbpositionbottom" /> <?php _e('Bottom', $this -> plugin_name); ?></label>
227
  </td>
228
  </tr>
229
  <tr>
230
+ <th><label for="thumbheight"><?php _e('Thumbnail Dimensions', $this -> plugin_name); ?></label>
231
+ <?php echo GalleryHtmlHelper::help(__('Specify the width and height (dimensions) of the thumbnails in the thumbnail bar/slider which will show above/below the slideshow.', $this -> plugin_name)); ?></th>
232
  <td>
233
  <input class="widefat" style="width:45px;" type="text" name="thumbwidth" value="<?php echo esc_attr(stripslashes($this -> get_option('thumbwidth'))); ?>" id="thumbwidth" />
234
  <?php _e('x <!-- by -->', $this -> plugin_name); ?>
239
  </td>
240
  </tr>
241
  <tr>
242
+ <th><label for="thumbopacity"><?php _e('Thumbnail Opacity', $this -> plugin_name); ?></label>
243
+ <?php echo GalleryHtmlHelper::help(__('The opacity of the default state of thumbnails in the thumbnails bar/slider. The active thumbnail of the currently showing slide will be 100% opacity, always.', $this -> plugin_name)); ?></th>
244
  <td>
245
+ <input style="width:45px;" type="hidden" name="thumbopacity" value="<?php echo $thumbopacity; ?>" id="thumbopacity" />
246
+ <div id="thumbopacity_slider"></div>
247
+ <span class="slider-value" id="thumbopacity_slider_value"><?php echo $thumbopacity; ?></span>
248
+ <script type="text/javascript">
249
+ jQuery(document).ready(function() {
250
+ jQuery('#thumbopacity_slider').slider({
251
+ min: 0,
252
+ max: 100,
253
+ value: <?php echo $thumbopacity; ?>,
254
+ slide: function(event, ui) {
255
+ jQuery('#thumbopacity').val(ui.value);
256
+ jQuery('#thumbopacity_slider_value').text(ui.value);
257
+ }
258
+ });
259
+ });
260
+ </script>
261
  <span class="howto"><?php _e('Default opacity of thumbnails when they are not hovered.', $this -> plugin_name); ?></span>
262
  </td>
263
  </tr>
264
  <tr>
265
+ <th><label for="thumbscrollspeed"><?php _e('Thumbnails Scroll Speed', $this -> plugin_name); ?></label>
266
+ <?php echo GalleryHtmlHelper::help(__('At which speed should the thumbnails bar/slider scroll when the left/right arrows are hovered by the user?', $this -> plugin_name)); ?></th>
267
  <td>
268
+ <input type="hidden" class="widefat" style="width:45px;" name="thumbscrollspeed" value="<?php echo $thumbscrollspeed; ?>" id="thumbscrollspeed" />
269
+ <div id="thumbscrollspeed_slider"></div>
270
+ <span class="slider-value" id="thumbscrollspeed_slider_value"><?php echo $thumbscrollspeed; ?></span>
271
+ <script type="text/javascript">
272
+ jQuery(document).ready(function() {
273
+ jQuery('#thumbscrollspeed_slider').slider({
274
+ min: 1,
275
+ max: 20,
276
+ value: <?php echo $thumbscrollspeed; ?>,
277
+ slide: function(event, ui) {
278
+ jQuery('#thumbscrollspeed').val(ui.value);
279
+ jQuery('#thumbscrollspeed_slider_value').text(ui.value);
280
+ }
281
+ });
282
+ });
283
+ </script>
284
  <span class="howto"><?php _e('Speed at which the thumbnails will scroll.', $this -> plugin_name); ?> <small><?php _e('(Default:5, Recommended: 1-20)', $this -> plugin_name); ?></small></span>
285
  </td>
286
  </tr>
287
  <tr>
288
+ <th><label for="thumbspacing"><?php _e('Thumbnail Spacing', $this -> plugin_name); ?></label>
289
+ <?php echo GalleryHtmlHelper::help(__('This is a simple margin setting to specify the space between the thumbnails in the thumbnails bar/slider above/below the slideshow.', $this -> plugin_name)); ?></th>
290
  <td>
291
  <input type="text" style="width:45px;" name="thumbspacing" value="<?php echo $this -> get_option('thumbspacing'); ?>" id="thumbspacing" /> <?php _e('px', $this -> plugin_name); ?>
292
  <span class="howto"><?php _e('Horizontal margin/spacing in pixels between thumbnail images.', $this -> plugin_name); ?></span>
views/admin/metaboxes/settings-linksimages.php CHANGED
@@ -1,7 +1,8 @@
1
  <table class="form-table">
2
  <tbody>
3
  <tr>
4
- <th><label for="imagesthickbox_N"><?php _e('Open Images in Thickbox Overlay', $this -> plugin_name); ?></label></th>
 
5
  <td>
6
  <label><input <?php echo ($this -> get_option('imagesthickbox') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="imagesthickbox" value="Y" id="imagesthickbox_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
7
  <label><input <?php echo ($this -> get_option('imagesthickbox') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="imagesthickbox" value="N" id="imagesthickbox_N" /> <?php _e('No', $this -> plugin_name); ?></label>
1
  <table class="form-table">
2
  <tbody>
3
  <tr>
4
+ <th><label for="imagesthickbox_N"><?php _e('Open Images in Overlay', $this -> plugin_name); ?></label>
5
+ <?php echo GalleryHtmlHelper::help(__('Turn this on to display the link of a slide in an enlargement overlay. It only works if the link on the slide is a link to a jpg, png, gif or bmp image though. For normal links to pages, the overlay will not be used at all.', $this -> plugin_name)); ?></th>
6
  <td>
7
  <label><input <?php echo ($this -> get_option('imagesthickbox') == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="imagesthickbox" value="Y" id="imagesthickbox_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
8
  <label><input <?php echo ($this -> get_option('imagesthickbox') == "N") ? 'checked="checked"' : ''; ?> type="radio" name="imagesthickbox" value="N" id="imagesthickbox_N" /> <?php _e('No', $this -> plugin_name); ?></label>
views/admin/metaboxes/settings-styles.php CHANGED
@@ -1,76 +1,303 @@
1
- <?php $styles = $this -> get_option('styles'); ?>
 
 
 
 
 
 
 
2
 
3
  <table class="form-table">
4
  <tbody>
5
  <tr>
6
- <th><label for="styles.resizeimages"><?php _e('Resize Images', $this -> plugin_name); ?></label></th>
 
7
  <td>
8
- <label><input onclick="jQuery('#resizeimagesYdiv').show();" <?php echo (empty($styles['resizeimages']) || $styles['resizeimages'] == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="styles[resizeimages]" value="Y" id="styles.resizeimages_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
9
- <label><input onclick="jQuery('#resizeimagesYdiv').hide();" <?php echo ($styles['resizeimages'] == "N") ? 'checked="checked"' : ''; ?> type="radio" name="styles[resizeimages]" value="N" id="styles.resizeimages_N" /> <?php _e('No', $this -> plugin_name); ?></label>
10
- <span class="howto"><?php _e('Should images be resized proportionally to fit the width of the slideshow area?', $this -> plugin_name); ?></span>
11
-
12
- <div id="resizeimagesYdiv" style="display:<?php echo ($styles['resizeimages'] == "Y") ? 'block' : 'none'; ?>;">
13
- <p>
14
- <?php _e('When resize images is turned on, TimThumb will be used to resize/crop images.', $this -> plugin_name); ?><br/>
15
- <?php _e('Below is a test image and the URL to the image to ensure that TimThumb works.', $this -> plugin_name); ?><br/>
16
- </p>
17
- <?php
18
-
19
- $img = 'wp-content/plugins/' . $this -> plugin_name . '/screenshot-1.png';
20
- $src = site_url() . '/wp-content/plugins/slideshow-gallery/vendors/timthumb.php?src=' . $img . '&w=50&h=50&q=100&a=t';
21
- echo '<p><a target="_blank" href="' . $src . '">' . $src . '</a> <small>(' . __('click to open to test TimThumb', $this -> plugin_name) . ')</small></p>';
22
- echo '<p><img src="' . $src . '" /></p>';
23
-
24
- ?>
25
- </div>
26
- </td>
27
- </tr>
28
- <tr>
29
- <th><label for="styles.width"><?php _e('Gallery Width', $this -> plugin_name); ?></label></th>
30
- <td>
31
- <input style="width:45px;" id="styles.width" type="text" name="styles[width]" value="<?php echo $styles['width']; ?>" /> <?php _e('px', $this -> plugin_name); ?>
32
- <span class="howto"><?php _e('Width of the slideshow gallery', $this -> plugin_name); ?></span>
33
- </td>
34
- </tr>
35
- <tr>
36
- <th><label for="styles.height"><?php _e('Gallery Height', $this -> plugin_name); ?></label></th>
37
- <td>
38
- <input style="width:45px;" id="styles.height" type="text" name="styles[height]" value="<?php echo $styles['height']; ?>" /> <?php _e('px', $this -> plugin_name); ?>
39
- <span class="howto"><?php _e('Height of the slideshow gallery', $this -> plugin_name); ?></span>
40
  </td>
41
  </tr>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  <tr>
43
- <th><label for="styles.border"><?php _e('Slideshow Border', $this -> plugin_name); ?></label></th>
 
44
  <td>
45
  <input type="text" name="styles[border]" value="<?php echo $styles['border']; ?>" id="styles.border" style="width:145px;" />
46
  <span class="howto"><?php echo sprintf(__('Border style/color for the entire slideshow wrapper eg. %s', $this -> plugin_name), "1px #000000 solid"); ?>
47
  </td>
48
  </tr>
49
  <tr>
50
- <th><label for="styles.background"><?php _e('Slideshow Background', $this -> plugin_name); ?></label></th>
51
- <td>
52
- <input type="text" name="styles[background]" value="<?php echo $styles['background']; ?>" id="styles.background" style="width:65px;" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
53
  <span class="howto"><?php echo sprintf(__('Background color (hexidecimal) of the entire slideshow wrapper eg. %s', $this -> plugin_name), "#FFFFFF"); ?></span>
54
  </td>
55
  </tr>
56
  <tr>
57
- <th><label for="styles.infobackground"><?php _e('Information Background', $this -> plugin_name); ?></label></th>
 
58
  <td>
59
- <input type="text" name="styles[infobackground]" value="<?php echo $styles['infobackground']; ?>" id="styles.infobackground" style="width:65px;" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  <span class="howto"><?php echo sprintf(__('Background color (hexidecimal) of the information bar eg. %s', $this -> plugin_name), "#000000"); ?></span>
61
  </td>
62
  </tr>
63
  <tr>
64
- <th><label for="styles.infocolor"><?php _e('Information Text Color', $this -> plugin_name); ?></label></th>
 
65
  <td>
66
- <input type="text" name="styles[infocolor]" value="<?php echo $styles['infocolor']; ?>" id="styles.infocolor" style="width:65px;" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  <span class="howto"><?php echo sprintf(__('Text color (hexidecimal) of the information bar content eg. %s', $this -> plugin_name), "#FFFFFF"); ?></span>
68
  </td>
69
  </tr>
70
  <tr>
71
- <th><label for="thumbactive"><?php _e('Thumbnail Active Border', $this -> plugin_name); ?></label></th>
 
72
  <td>
73
- <input style="width:65px;" type="text" name="thumbactive" value="<?php echo $this -> get_option('thumbactive'); ?>" id="thumbactive" />
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  <span class="howto"><?php echo sprintf(__('Border color (hexidecimal) for the active image thumbnail eg. %s', $this -> plugin_name), "#FFFFFF"); ?></span>
75
  </td>
76
  </tr>
1
+ <!-- Styles Settings -->
2
+
3
+ <?php
4
+
5
+ $styles = $this -> get_option('styles');
6
+ $timthumb_align = $this -> get_option('timthumb_align');
7
+
8
+ ?>
9
 
10
  <table class="form-table">
11
  <tbody>
12
  <tr>
13
+ <th><label for="layout_responsive"><?php _e('Layout', $this -> plugin_name); ?></label>
14
+ <?php echo GalleryHtmlHelper::help(__('Choose responsive if you have a responsive theme and you want the slideshow to resize width/height in a responsive manner on different devices.<br/><br/><strong>Override per slideshow:</strong> Using parameter <code>layout</code> with value <code>responsive</code> or <code>specific</code> eg. <code>[slideshow layout="specific"]</code>.', $this -> plugin_name)); ?></th>
15
  <td>
16
+ <label><input onclick="jQuery('#layout_specific_div').hide(); jQuery('#layout_responsive_div').show();" <?php echo ($styles['layout'] == "responsive") ? 'checked="checked"' : ''; ?> type="radio" name="styles[layout]" value="responsive" id="layout_responsive" /> <?php _e('Responsive', $this -> plugin_name); ?></label>
17
+ <label><input onclick="jQuery('#layout_specific_div').show(); jQuery('#layout_responsive_div').hide();" <?php echo (empty($styles['layout']) || $styles['layout'] == "specific") ? 'checked="checked"' : ''; ?> type="radio" name="styles[layout]" value="specific" id="layout_specific" /> <?php _e('Fixed', $this -> plugin_name); ?></label>
18
+ <span class="howto"><?php _e('Choose whether you want a responsive or fixed/specific layout for the slideshow.', $this -> plugin_name); ?></span>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
19
  </td>
20
  </tr>
21
+ </tbody>
22
+ </table>
23
+
24
+ <div id="layout_responsive_div" style="display:<?php echo (!empty($styles['layout']) && $styles['layout'] == "responsive") ? 'block' : 'none'; ?>;">
25
+ <table class="form-table">
26
+ <tbody>
27
+ <tr>
28
+ <th><label for="resheight"><?php _e('Responsive Height', $this -> plugin_name); ?></label>
29
+ <?php echo GalleryHtmlHelper::help(__('The responsive height can be either a fixed height in pixel or a percentage height. The percentage height is a percentage of the width of the slideshow.<br/><br/><strong>Override per slideshow:</strong> Using parameters <code>resheight</code> value a value and <code>resheighttype</code> with <code>px</code> for pixels or <code>%</code> for percentage eg. <code>[slideshow resheight="300" resheighttype="px"]</code>.', $this -> plugin_name)); ?></th>
30
+ <td>
31
+ <input class="widefat" style="width:45px;" type="text" name="styles[resheight]" value="<?php echo esc_attr(stripslashes($styles['resheight'])); ?>" id="resheight" />
32
+ <?php /*<input type="hidden" name="styles[resheighttype]" value="pix" /> <?php _e('px', $this -> plugin_name); ?>*/ ?>
33
+ <select name="styles[resheighttype]">
34
+ <option <?php echo ($styles['resheighttype'] == "%") ? 'selected="selected"' : ''; ?> value="%"><?php _e('&#37;', $this -> plugin_name); ?></option>
35
+ <option <?php echo ($styles['resheighttype'] == "px") ? 'selected="selected"' : ''; ?> value="px"><?php _e('px', $this -> plugin_name); ?></option>
36
+ </select>
37
+ <span class="howto"><?php _e('Choose a responsive height for your slideshow, either a pixel or percentage height.', $this -> plugin_name); ?></span>
38
+ </td>
39
+ </tr>
40
+ </tbody>
41
+ </table>
42
+ </div>
43
+
44
+ <div id="layout_specific_div" style="display:<?php echo (empty($styles['layout']) || $styles['layout'] == "specific") ? 'block' : 'none'; ?>;">
45
+ <table class="form-table">
46
+ <tbody>
47
+ <tr>
48
+ <th><label for="styles.resizeimages"><?php _e('Resize Images', $this -> plugin_name); ?></label>
49
+ <?php echo GalleryHtmlHelper::help(__('Should images be automatically resized? If you specify No, the images will be used in the slideshow as you originally upload them. If you specify Yes, the images will be cropped/resized to fit the slideshow better which is the recommended setting.', $this -> plugin_name)); ?></th>
50
+ <td>
51
+ <label><input onclick="jQuery('#resizeimagesYdiv').show();" <?php echo (empty($styles['resizeimages']) || $styles['resizeimages'] == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="styles[resizeimages]" value="Y" id="styles.resizeimages_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
52
+ <label><input onclick="jQuery('#resizeimagesYdiv').hide();" <?php echo ($styles['resizeimages'] == "N") ? 'checked="checked"' : ''; ?> type="radio" name="styles[resizeimages]" value="N" id="styles.resizeimages_N" /> <?php _e('No', $this -> plugin_name); ?></label>
53
+ <span class="howto"><?php _e('Should images be resized proportionally to fit the width of the slideshow area?', $this -> plugin_name); ?></span>
54
+
55
+ <div id="resizeimagesYdiv" style="display:<?php echo ($styles['resizeimages'] == "Y") ? 'block' : 'none'; ?>;">
56
+ <p>
57
+ <?php _e('When resize images is turned on, TimThumb will be used to resize/crop images.', $this -> plugin_name); ?><br/>
58
+ <?php _e('Below is a test image and the URL to the image to ensure that TimThumb works.', $this -> plugin_name); ?><br/>
59
+ </p>
60
+ <?php
61
+
62
+ //$img = 'wp-content/plugins/' . $this -> plugin_name . '/screenshot-1.png';
63
+ $img = $this -> plugin_base() . DS . 'screenshot-1.png';
64
+ $align = (empty($timthumb_align)) ? "c" : $timthumb_align;
65
+ $src = plugins_url() . '/' . $this -> plugin_name . '/vendors/timthumb.php?src=' . $img . '&w=50&h=50&q=100&a=' . $align;
66
+ echo '<p><a target="_blank" href="' . $src . '">' . $src . '</a> <small>(' . __('click to open to test TimThumb', $this -> plugin_name) . ')</small></p>';
67
+ echo '<p><img class="slideshow_dropshadow" src="' . $src . '" /></p>';
68
+
69
+ ?>
70
+ </div>
71
+ </td>
72
+ </tr>
73
+ </tbody>
74
+ </table>
75
+
76
+ <div id="resizeimages_div" style="display:<?php echo (!empty($styles['resizeimages']) && $styles['resizeimages'] == "Y") ? 'block' : 'none'; ?>;">
77
+ <table class="form-table">
78
+ <tbody>
79
+ <tr>
80
+ <th><label for="timthumb_align"><?php _e('Crop Alignment', $this -> plugin_name); ?></label>
81
+ <?php echo GalleryHtmlHelper::help(__('With this setting you can choose the location from which the image will be cropped/resized. For example if you prefer to have the top parts of images shown instead of being cut off, you can change this setting to "Top".', $this -> plugin_name)); ?></th>
82
+ <td>
83
+ <?php
84
+
85
+ $alignments = array('c' => __('Center', $this -> plugin_name), 't' => __('Top', $this -> plugin_name), 'l' => __('Left', $this -> plugin_name), 'r' => __('Right', $this -> plugin_name), 'b' => __('Bottom', $this -> plugin_name), 'tl' => __('Top Left', $this -> plugin_name), 'tr' => __('Top Right', $this -> plugin_name), 'bl' => __('Bottom Left', $this -> plugin_name), 'br' => __('Bottom Right', $this -> plugin_name));
86
+
87
+ ?>
88
+ <select name="timthumb_align" id="timthumb_align">
89
+ <?php foreach ($alignments as $akey => $aval) : ?>
90
+ <option <?php echo (!empty($timthumb_align) && $timthumb_align == $akey) ? 'selected="selected"' : ''; ?> value="<?php echo $akey; ?>"><?php echo $aval; ?></option>
91
+ <?php endforeach; ?>
92
+ </select>
93
+ <span class="howto"><?php _e('Choose the image crop/resize location which is used as the starting point.', $this -> plugin_name); ?></span>
94
+ </td>
95
+ </tr>
96
+ </tbody>
97
+ </table>
98
+ </div>
99
+
100
+ <table class="form-table">
101
+ <tbody>
102
+ <tr>
103
+ <th><label for="styles.width"><?php _e('Gallery Width', $this -> plugin_name); ?></label>
104
+ <?php echo GalleryHtmlHelper::help(__('The width of the slideshow in pixels.', $this -> plugin_name)); ?></th>
105
+ <td>
106
+ <input style="width:45px;" id="styles.width" type="text" name="styles[width]" value="<?php echo $styles['width']; ?>" /> <?php _e('px', $this -> plugin_name); ?>
107
+ <span class="howto"><?php _e('Width of the slideshow gallery', $this -> plugin_name); ?></span>
108
+ </td>
109
+ </tr>
110
+ <tr>
111
+ <th><label for="styles.height"><?php _e('Gallery Height', $this -> plugin_name); ?></label>
112
+ <?php echo GalleryHtmlHelper::help(__('The height of the slideshow in pixels.', $this -> plugin_name)); ?></th>
113
+ <td>
114
+ <input style="width:45px;" id="styles.height" type="text" name="styles[height]" value="<?php echo $styles['height']; ?>" /> <?php _e('px', $this -> plugin_name); ?>
115
+ <span class="howto"><?php _e('Height of the slideshow gallery', $this -> plugin_name); ?></span>
116
+ </td>
117
+ </tr>
118
+ </tbody>
119
+ </table>
120
+ </div>
121
+
122
+ <table class="form-table">
123
+ <tbody>
124
  <tr>
125
+ <th><label for="styles.border"><?php _e('Slideshow Border', $this -> plugin_name); ?></label>
126
+ <?php echo GalleryHtmlHelper::help(__('This is a CSS style for the border around the entire slideshow. You can use a value such as "1px #FFFFFF solid" to display a 1 pixel, white, solid border or even a value such as "none" for no border at all.', $this -> plugin_name)); ?></th>
127
  <td>
128
  <input type="text" name="styles[border]" value="<?php echo $styles['border']; ?>" id="styles.border" style="width:145px;" />
129
  <span class="howto"><?php echo sprintf(__('Border style/color for the entire slideshow wrapper eg. %s', $this -> plugin_name), "1px #000000 solid"); ?>
130
  </td>
131
  </tr>
132
  <tr>
133
+ <th><label for="stylesbackground"><?php _e('Slideshow Background', $this -> plugin_name); ?></label>
134
+ <?php echo GalleryHtmlHelper::help(__('The background which will display behind the entire slideshow. It is behind the slides, thumbnails, etc.', $this -> plugin_name)); ?></th>
135
+ <td>
136
+ <fieldset>
137
+ <legend class="screen-reader-text"><span><?php _e('Slideshow Background', $this -> plugin_name); ?></span></legend>
138
+ <div class="wp-picker-container">
139
+ <a tabindex="0" id="stylesbackgroundbutton" class="wp-color-result" style="background-color:<?php echo $styles['background']; ?>;" title="Select Color"></a>
140
+ <span class="wp-picker-input-wrap">
141
+ <input type="text" name="styles[background]" id="stylesbackground" value="<?php echo $styles['background']; ?>" class="wp-color-picker" style="display: none;" />
142
+ </span>
143
+ </div>
144
+ </fieldset>
145
+
146
+ <script type="text/javascript">
147
+ jQuery(document).ready(function() {
148
+ jQuery('#stylesbackground').iris({
149
+ hide: true,
150
+ change: function(event, ui) {
151
+ jQuery('#stylesbackgroundbutton').css('background-color', ui.color.toString());
152
+ }
153
+ });
154
+
155
+ jQuery('#stylesbackground').click(function(event) {
156
+ event.stopPropagation();
157
+ });
158
+
159
+ jQuery('#stylesbackgroundbutton').click(function(event) {
160
+ jQuery(this).attr('title', "Current Color");
161
+ jQuery('#stylesbackground').iris('toggle').toggle();
162
+ event.stopPropagation();
163
+ });
164
+
165
+ jQuery('html').click(function() {
166
+ jQuery('#stylesbackground').iris('hide').hide();
167
+ jQuery('#stylesbackgroundbutton').attr('title', "Select Color");
168
+ });
169
+ });
170
+ </script>
171
+
172
  <span class="howto"><?php echo sprintf(__('Background color (hexidecimal) of the entire slideshow wrapper eg. %s', $this -> plugin_name), "#FFFFFF"); ?></span>
173
  </td>
174
  </tr>
175
  <tr>
176
+ <th><label for="styles.infobackground"><?php _e('Information Background', $this -> plugin_name); ?></label>
177
+ <?php echo GalleryHtmlHelper::help(__('The background of the information bar which shows the title and description of each slide. It is automatically half transparent so that it is not obtrusive to the slide image below it though.', $this -> plugin_name)); ?></th>
178
  <td>
179
+ <fieldset>
180
+ <legend class="screen-reader-text"><span><?php _e('Information Background', $this -> plugin_name); ?></span></legend>
181
+ <div class="wp-picker-container">
182
+ <a tabindex="0" id="stylesinfobackgroundbutton" class="wp-color-result" style="background-color:<?php echo $styles['infobackground']; ?>;" title="Select Color"></a>
183
+ <span class="wp-picker-input-wrap">
184
+ <input type="text" name="styles[infobackground]" id="stylesinfobackground" value="<?php echo $styles['infobackground']; ?>" class="wp-color-picker" style="display: none;" />
185
+ </span>
186
+ </div>
187
+ </fieldset>
188
+
189
+ <script type="text/javascript">
190
+ jQuery(document).ready(function() {
191
+ jQuery('#stylesinfobackground').iris({
192
+ hide: true,
193
+ change: function(event, ui) {
194
+ jQuery('#stylesinfobackgroundbutton').css('background-color', ui.color.toString());
195
+ }
196
+ });
197
+
198
+ jQuery('#stylesinfobackground').click(function(event) {
199
+ event.stopPropagation();
200
+ });
201
+
202
+ jQuery('#stylesinfobackgroundbutton').click(function(event) {
203
+ jQuery(this).attr('title', "Current Color");
204
+ jQuery('#stylesinfobackground').iris('toggle').toggle();
205
+ event.stopPropagation();
206
+ });
207
+
208
+ jQuery('html').click(function() {
209
+ jQuery('#stylesinfobackground').iris('hide').hide();
210
+ jQuery('#stylesinfobackgroundbutton').attr('title', "Select Color");
211
+ });
212
+ });
213
+ </script>
214
+
215
  <span class="howto"><?php echo sprintf(__('Background color (hexidecimal) of the information bar eg. %s', $this -> plugin_name), "#000000"); ?></span>
216
  </td>
217
  </tr>
218
  <tr>
219
+ <th><label for="styles.infocolor"><?php _e('Information Text Color', $this -> plugin_name); ?></label>
220
+ <?php echo GalleryHtmlHelper::help(__('This is the color of the text of the title and description of each slide which shows in the information bar.', $this -> plugin_name)); ?></th>
221
  <td>
222
+ <fieldset>
223
+ <legend class="screen-reader-text"><span><?php _e('Information Text Color', $this -> plugin_name); ?></span></legend>
224
+ <div class="wp-picker-container">
225
+ <a tabindex="0" id="stylesinfocolorbutton" class="wp-color-result" style="background-color:<?php echo $styles['infocolor']; ?>;" title="Select Color"></a>
226
+ <span class="wp-picker-input-wrap">
227
+ <input type="text" name="styles[infocolor]" id="stylesinfocolor" value="<?php echo $styles['infocolor']; ?>" class="wp-color-picker" style="display: none;" />
228
+ </span>
229
+ </div>
230
+ </fieldset>
231
+
232
+ <script type="text/javascript">
233
+ jQuery(document).ready(function() {
234
+ jQuery('#stylesinfocolor').iris({
235
+ hide: true,
236
+ change: function(event, ui) {
237
+ jQuery('#stylesinfocolorbutton').css('background-color', ui.color.toString());
238
+ }
239
+ });
240
+
241
+ jQuery('#stylesinfocolor').click(function(event) {
242
+ event.stopPropagation();
243
+ });
244
+
245
+ jQuery('#stylesinfocolorbutton').click(function(event) {
246
+ jQuery(this).attr('title', "Current Color");
247
+ jQuery('#stylesinfocolor').iris('toggle').toggle();
248
+ event.stopPropagation();
249
+ });
250
+
251
+ jQuery('html').click(function() {
252
+ jQuery('#stylesinfocolor').iris('hide').hide();
253
+ jQuery('#stylesinfocolorbutton').attr('title', "Select Color");
254
+ });
255
+ });
256
+ </script>
257
+
258
  <span class="howto"><?php echo sprintf(__('Text color (hexidecimal) of the information bar content eg. %s', $this -> plugin_name), "#FFFFFF"); ?></span>
259
  </td>
260
  </tr>
261
  <tr>
262
+ <th><label for="thumbactive"><?php _e('Thumbnail Active Border', $this -> plugin_name); ?></label>
263
+ <?php echo GalleryHtmlHelper::help(__('This is the color of the border which displays on the active thumbnail of the slide currently displaying in the slideshow.', $this -> plugin_name)); ?></th>
264
  <td>
265
+ <fieldset>
266
+ <legend class="screen-reader-text"><span><?php _e('Thumbnail Active Border', $this -> plugin_name); ?></span></legend>
267
+ <div class="wp-picker-container">
268
+ <a tabindex="0" id="stylesthumbactivebutton" class="wp-color-result" style="background-color:<?php echo $styles['thumbactive']; ?>;" title="Select Color"></a>
269
+ <span class="wp-picker-input-wrap">
270
+ <input type="text" name="styles[thumbactive]" id="stylesthumbactive" value="<?php echo $styles['thumbactive']; ?>" class="wp-color-picker" style="display: none;" />
271
+ </span>
272
+ </div>
273
+ </fieldset>
274
+
275
+ <script type="text/javascript">
276
+ jQuery(document).ready(function() {
277
+ jQuery('#stylesthumbactive').iris({
278
+ hide: true,
279
+ change: function(event, ui) {
280
+ jQuery('#stylesthumbactivebutton').css('background-color', ui.color.toString());
281
+ }
282
+ });
283
+
284
+ jQuery('#stylesthumbactive').click(function(event) {
285
+ event.stopPropagation();
286
+ });
287
+
288
+ jQuery('#stylesthumbactivebutton').click(function(event) {
289
+ jQuery(this).attr('title', "Current Color");
290
+ jQuery('#stylesthumbactive').iris('toggle').toggle();
291
+ event.stopPropagation();
292
+ });
293
+
294
+ jQuery('html').click(function() {
295
+ jQuery('#stylesthumbactive').iris('hide').hide();
296
+ jQuery('#stylesthumbactivebutton').attr('title', "Select Color");
297
+ });
298
+ });
299
+ </script>
300
+
301
  <span class="howto"><?php echo sprintf(__('Border color (hexidecimal) for the active image thumbnail eg. %s', $this -> plugin_name), "#FFFFFF"); ?></span>
302
  </td>
303
  </tr>
views/admin/metaboxes/settings-submit.php CHANGED
@@ -1,14 +1,25 @@
 
 
 
 
 
 
 
 
1
  <div class="submitbox" id="submitpost">
2
  <div id="minor-publishing">
3
  <div id="misc-publishing-actions">
4
- <div class="misc-pub-section misc-pub-section-last">
5
  <a href="<?php echo $this -> url; ?>&amp;method=reset" title="<?php _e('Reset all configuration settings to their default values', $this -> plugin_name); ?>" onclick="if (!confirm('<?php _e('Are you sure you wish to reset all configuration settings?', $this -> plugin_name); ?>')) { return false; }"><?php _e('Reset to Defaults', $this -> plugin_name); ?></a>
6
  </div>
 
 
 
7
  </div>
8
  </div>
9
  <div id="major-publishing-actions">
10
  <div id="publishing-action">
11
- <input class="button-primary" type="submit" name="save" value="<?php _e('Save Configuration', $this -> plugin_name); ?>" />
12
  </div>
13
  <br class="clear" />
14
  </div>
1
+ <!-- Settings Submit -->
2
+
3
+ <?php
4
+
5
+ $debugging = get_option('tridebugging');
6
+
7
+ ?>
8
+
9
  <div class="submitbox" id="submitpost">
10
  <div id="minor-publishing">
11
  <div id="misc-publishing-actions">
12
+ <div class="misc-pub-section">
13
  <a href="<?php echo $this -> url; ?>&amp;method=reset" title="<?php _e('Reset all configuration settings to their default values', $this -> plugin_name); ?>" onclick="if (!confirm('<?php _e('Are you sure you wish to reset all configuration settings?', $this -> plugin_name); ?>')) { return false; }"><?php _e('Reset to Defaults', $this -> plugin_name); ?></a>
14
  </div>
15
+ <div class="misc-pub-section misc-pub-section-last">
16
+ <label><input <?php echo (!empty($debugging) && $debugging == 1) ? 'checked="checked"' : ''; ?> type="checkbox" name="debugging" value="1" id="debugging" /> <?php _e('Turn on debugging', $this -> plugin_name); ?></label>
17
+ </div>
18
  </div>
19
  </div>
20
  <div id="major-publishing-actions">
21
  <div id="publishing-action">
22
+ <input class="button-primary button button-large" type="submit" name="save" value="<?php _e('Save Configuration', $this -> plugin_name); ?>" />
23
  </div>
24
  <br class="clear" />
25
  </div>
views/admin/metaboxes/settings-wprelated.php CHANGED
@@ -1,33 +1,40 @@
 
 
1
  <?php
2
 
3
- global $user_ID, $wp_roles;
4
  $permissions = $this -> get_option('permissions');
5
- $cu = wp_get_current_user();
6
 
7
  ?>
8
 
9
- <?php if (!empty($cu -> roles) && in_array('administrator', $cu -> roles)) : ?>
10
- <table class="form-table">
11
- <thead>
12
- <tr>
13
- <th></th>
14
- <?php foreach ($wp_roles -> role_names as $role_name) : ?>
15
- <th style="font-weight:bold; text-align:center;"><?php echo esc_attr(stripslashes($role_name)); ?></th>
 
 
 
 
 
16
  <?php endforeach; ?>
17
- </tr>
18
- </thead>
19
- <tbody>
20
- <?php $class = false; ?>
21
- <?php foreach ($this -> sections as $section_key => $section_menu) : ?>
22
- <tr class="<?php echo $class = (empty($class)) ? 'arow' : ''; ?>">
23
- <th style="white-space:nowrap; text-align:right;"><label for="perm_<?php echo $section_key; ?>"><?php echo GalleryHtmlHelper::section_name($section_key); ?></label></th>
24
- <?php foreach ($wp_roles -> role_names as $role_key => $role_name) : ?>
25
- <td style="text-align:center;"><label><input <?php echo (!empty($permissions[$section_key]) && in_array($role_key, $permissions[$section_key])) ? 'checked="checked"' : ''; ?> type="checkbox" name="permissions[<?php echo $section_key; ?>][]" value="<?php echo esc_attr(stripslashes($role_key)); ?>" id="<?php echo $section_key; ?>_<?php echo $role_key; ?>" /></label></td>
26
- <?php endforeach; ?>
27
- </tr>
28
- <?php endforeach; ?>
29
- </tbody>
30
- </table>
31
- <?php else : ?>
32
- <p class="howto"><?php _e('Only the administrator role can edit roles/permissions.', $this -> plugin_name); ?>
 
33
  <?php endif; ?>
1
+ <!-- Permissions -->
2
+
3
  <?php
4
 
5
+ global $wp_roles;
6
  $permissions = $this -> get_option('permissions');
 
7
 
8
  ?>
9
 
10
+ <?php if (current_user_can('edit_users') || is_super_admin()) : ?>
11
+ <table class="form-table">
12
+ <thead>
13
+ <tr>
14
+ <th>&nbsp;</th>
15
+ <?php foreach ($wp_roles -> role_names as $role_key => $role_name) : ?>
16
+ <th style="white-space:nowrap; font-weight:bold; text-align:center;">
17
+ <label>
18
+ <?php if ($role_key != "administrator") : ?><input type="checkbox" name="sectionsrolescheckall<?php echo $role_key; ?>" value="1" id="sectionsrolescheckall<?php echo $role_key; ?>" onclick="jqCheckAll(this, false, 'permissions[<?php echo $role_key; ?>]');" /><?php endif; ?>
19
+ <?php echo $role_name; ?>
20
+ </label>
21
+ </th>
22
  <?php endforeach; ?>
23
+ </tr>
24
+ </thead>
25
+ <tbody>
26
+ <?php if (!empty($this -> sections)) : ?>
27
+ <?php foreach ($this -> sections as $section_key => $section_name) : ?>
28
+ <tr class="<?php echo $class = (empty($class)) ? 'arow' : ''; ?>">
29
+ <th style="white-space:nowrap; text-align:right;"><?php echo GalleryHtmlHelper::section_name($section_key); ?></th>
30
+ <?php foreach ($wp_roles -> role_names as $role_key => $role_name) : ?>
31
+ <td style="text-align:center;">
32
+ <input <?php echo ($role_key == "administrator") ? 'checked="checked" disabled="disabled"' : ''; ?> <?php echo (!empty($permissions[$role_key]) && in_array($section_key, $permissions[$role_key])) ? 'checked="checked"' : ''; ?> type="checkbox" name="permissions[<?php echo $role_key; ?>][]" value="<?php echo $section_key; ?>" id="" />
33
+ </td>
34
+ <?php endforeach; ?>
35
+ </tr>
36
+ <?php endforeach; ?>
37
+ <?php endif; ?>
38
+ </tbody>
39
+ </table>
40
  <?php endif; ?>
views/admin/settings.php CHANGED
@@ -8,11 +8,7 @@ wp_nonce_field('meta-box-order', 'meta-box-order-nonce', false);
8
 
9
  ?>
10
 
11
- <div class="wrap">
12
- <div class="icon32">
13
- <img src="<?php echo $this -> url(); ?>/images/icon-settings-32.png" />
14
- </div>
15
-
16
  <h2><?php _e('Configuration Settings', $this -> plugin_name); ?></h2>
17
 
18
  <form action="<?php echo $this -> url; ?>" name="post" id="post" method="post">
8
 
9
  ?>
10
 
11
+ <div class="wrap slideshow <?php echo $this -> pre; ?>">
 
 
 
 
12
  <h2><?php _e('Configuration Settings', $this -> plugin_name); ?></h2>
13
 
14
  <form action="<?php echo $this -> url; ?>" name="post" id="post" method="post">
views/admin/slides/index.php CHANGED
@@ -1,9 +1,5 @@
1
- <div class="wrap <?php echo $this -> pre; ?>">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-32.png" />
4
- </div>
5
-
6
- <h2><?php _e('Manage Slides', $this -> plugin_name); ?> <?php echo $this -> Html -> link(__('Add New'), $this -> url . '&amp;method=save', array('class' => "button add-new-h2")); ?></h2>
7
 
8
  <?php if (!empty($slides)) : ?>
9
  <form id="posts-filter" action="<?php echo $this -> url; ?>" method="post">
1
+ <div class="wrap <?php echo $this -> pre; ?> slideshow">
2
+ <h2><?php _e('Manage Slides', $this -> plugin_name); ?> <?php echo $this -> Html -> link(__('Add New'), $this -> url . '&amp;method=save', array('class' => "add-new-h2")); ?></h2>
 
 
 
 
3
 
4
  <?php if (!empty($slides)) : ?>
5
  <form id="posts-filter" action="<?php echo $this -> url; ?>" method="post">
views/admin/slides/loop.php CHANGED
@@ -7,7 +7,8 @@
7
  <?php else : ?>
8
  <a href="<?php echo $this -> url; ?>&amp;method=order" title="<?php _e('Order all your slides', $this -> plugin_name); ?>" class="button"><?php _e('Order Slides', $this -> plugin_name); ?></a>
9
  <?php endif; ?>
10
-
 
11
  <select name="action" class="action">
12
  <option value=""><?php _e('- Bulk Actions -', $this -> plugin_name); ?></option>
13
  <option value="delete"><?php _e('Delete', $this -> plugin_name); ?></option>
@@ -16,30 +17,98 @@
16
  </div>
17
  <?php $this -> render('paginate', array('paginate' => $paginate), true, 'admin'); ?>
18
  </div>
 
 
 
 
 
 
 
 
19
 
20
  <table class="widefat">
21
  <thead>
22
  <tr>
23
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
24
- <th><?php _e('ID', $this -> plugin_name); ?></th>
25
- <th><?php _e('Image', $this -> plugin_name); ?></th>
26
- <th><?php _e('Title', $this -> plugin_name); ?></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
27
  <th><?php _e('Galleries', $this -> plugin_name); ?></th>
28
- <th><?php _e('Link', $this -> plugin_name); ?></th>
29
- <th><?php _e('Date', $this -> plugin_name); ?></th>
30
- <th><?php _e('Order', $this -> plugin_name); ?></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  </tr>
32
  </thead>
33
  <tfoot>
34
  <tr>
35
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
36
- <th><?php _e('ID', $this -> plugin_name); ?></th>
37
- <th><?php _e('Image', $this -> plugin_name); ?></th>
38
- <th><?php _e('Title', $this -> plugin_name); ?></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  <th><?php _e('Galleries', $this -> plugin_name); ?></th>
40
- <th><?php _e('Link', $this -> plugin_name); ?></th>
41
- <th><?php _e('Date', $this -> plugin_name); ?></th>
42
- <th><?php _e('Order', $this -> plugin_name); ?></th>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  </tr>
44
  </tfoot>
45
  <tbody>
@@ -49,7 +118,7 @@
49
  <td><?php echo $slide -> id; ?></td>
50
  <td style="width:75px;">
51
  <?php $image = $slide -> image; ?>
52
- <a href="<?php echo $this -> Html -> image_url($image); ?>" title="<?php echo $slide -> title; ?>" class="colorbox" rel="slides"><img class="slideshow" src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_path, 40, 40, 100); ?>" alt="<?php echo $this -> Html -> sanitize($slide -> title); ?>" /></a>
53
  </td>
54
  <td>
55
  <a class="row-title" href="<?php echo $this -> url; ?>&amp;method=save&amp;id=<?php echo $slide -> id; ?>" title=""><?php echo $slide -> title; ?></a>
7
  <?php else : ?>
8
  <a href="<?php echo $this -> url; ?>&amp;method=order" title="<?php _e('Order all your slides', $this -> plugin_name); ?>" class="button"><?php _e('Order Slides', $this -> plugin_name); ?></a>
9
  <?php endif; ?>
10
+ </div>
11
+ <div class="alignleft actions">
12
  <select name="action" class="action">
13
  <option value=""><?php _e('- Bulk Actions -', $this -> plugin_name); ?></option>
14
  <option value="delete"><?php _e('Delete', $this -> plugin_name); ?></option>
17
  </div>
18
  <?php $this -> render('paginate', array('paginate' => $paginate), true, 'admin'); ?>
19
  </div>
20
+
21
+ <?php
22
+
23
+ $orderby = (empty($_GET['orderby'])) ? 'modified' : $_GET['orderby'];
24
+ $order = (empty($_GET['order'])) ? 'desc' : strtolower($_GET['order']);
25
+ $otherorder = ($order == "desc") ? 'asc' : 'desc';
26
+
27
+ ?>
28
 
29
  <table class="widefat">
30
  <thead>
31
  <tr>
32
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
33
+ <th class="column-id <?php echo ($orderby == "id") ? 'sorted ' . $order : 'sortable desc'; ?>">
34
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=id&order=' . (($orderby == "id") ? $otherorder : "asc")); ?>">
35
+ <span><?php _e('ID', $this -> plugin_name); ?></span>
36
+ <span class="sorting-indicator"></span>
37
+ </a>
38
+ </th>
39
+ <th class="column-image <?php echo ($orderby == "image") ? 'sorted ' . $order : 'sortable desc'; ?>">
40
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=image&order=' . (($orderby == "image") ? $otherorder : "asc")); ?>">
41
+ <span><?php _e('Image', $this -> plugin_name); ?></span>
42
+ <span class="sorting-indicator"></span>
43
+ </a>
44
+ </th>
45
+ <th class="column-title <?php echo ($orderby == "title") ? 'sorted ' . $order : 'sortable desc'; ?>">
46
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=title&order=' . (($orderby == "title") ? $otherorder : "asc")); ?>">
47
+ <span><?php _e('Title', $this -> plugin_name); ?></span>
48
+ <span class="sorting-indicator"></span>
49
+ </a>
50
+ </th>
51
  <th><?php _e('Galleries', $this -> plugin_name); ?></th>
52
+ <th class="column-uselink <?php echo ($orderby == "uselink") ? 'sorted ' . $order : 'sortable desc'; ?>">
53
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=uselink&order=' . (($orderby == "uselink") ? $otherorder : "asc")); ?>">
54
+ <span><?php _e('Link', $this -> plugin_name); ?></span>
55
+ <span class="sorting-indicator"></span>
56
+ </a>
57
+ </th>
58
+ <th class="column-modified <?php echo ($orderby == "modified") ? 'sorted ' . $order : 'sortable desc'; ?>">
59
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=modified&order=' . (($orderby == "modified") ? $otherorder : "asc")); ?>">
60
+ <span><?php _e('Date', $this -> plugin_name); ?></span>
61
+ <span class="sorting-indicator"></span>
62
+ </a>
63
+ </th>
64
+ <th class="column-order <?php echo ($orderby == "order") ? 'sorted ' . $order : 'sortable desc'; ?>">
65
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=order&order=' . (($orderby == "order") ? $otherorder : "asc")); ?>">
66
+ <span><?php _e('Order', $this -> plugin_name); ?></span>
67
+ <span class="sorting-indicator"></span>
68
+ </a>
69
+ </th>
70
  </tr>
71
  </thead>
72
  <tfoot>
73
  <tr>
74
  <th class="check-column"><input type="checkbox" name="checkboxall" id="checkboxall" value="checkboxall" /></th>
75
+ <th class="column-id <?php echo ($orderby == "id") ? 'sorted ' . $order : 'sortable desc'; ?>">
76
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=id&order=' . (($orderby == "id") ? $otherorder : "asc")); ?>">
77
+ <span><?php _e('ID', $this -> plugin_name); ?></span>
78
+ <span class="sorting-indicator"></span>
79
+ </a>
80
+ </th>
81
+ <th class="column-image <?php echo ($orderby == "image") ? 'sorted ' . $order : 'sortable desc'; ?>">
82
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=image&order=' . (($orderby == "image") ? $otherorder : "asc")); ?>">
83
+ <span><?php _e('Image', $this -> plugin_name); ?></span>
84
+ <span class="sorting-indicator"></span>
85
+ </a>
86
+ </th>
87
+ <th class="column-title <?php echo ($orderby == "title") ? 'sorted ' . $order : 'sortable desc'; ?>">
88
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=title&order=' . (($orderby == "title") ? $otherorder : "asc")); ?>">
89
+ <span><?php _e('Title', $this -> plugin_name); ?></span>
90
+ <span class="sorting-indicator"></span>
91
+ </a>
92
+ </th>
93
  <th><?php _e('Galleries', $this -> plugin_name); ?></th>
94
+ <th class="column-uselink <?php echo ($orderby == "uselink") ? 'sorted ' . $order : 'sortable desc'; ?>">
95
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=uselink&order=' . (($orderby == "uselink") ? $otherorder : "asc")); ?>">
96
+ <span><?php _e('Link', $this -> plugin_name); ?></span>
97
+ <span class="sorting-indicator"></span>
98
+ </a>
99
+ </th>
100
+ <th class="column-modified <?php echo ($orderby == "modified") ? 'sorted ' . $order : 'sortable desc'; ?>">
101
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=modified&order=' . (($orderby == "modified") ? $otherorder : "asc")); ?>">
102
+ <span><?php _e('Date', $this -> plugin_name); ?></span>
103
+ <span class="sorting-indicator"></span>
104
+ </a>
105
+ </th>
106
+ <th class="column-order <?php echo ($orderby == "order") ? 'sorted ' . $order : 'sortable desc'; ?>">
107
+ <a href="<?php echo GalleryHtmlHelper::retainquery('orderby=order&order=' . (($orderby == "order") ? $otherorder : "asc")); ?>">
108
+ <span><?php _e('Order', $this -> plugin_name); ?></span>
109
+ <span class="sorting-indicator"></span>
110
+ </a>
111
+ </th>
112
  </tr>
113
  </tfoot>
114
  <tbody>
118
  <td><?php echo $slide -> id; ?></td>
119
  <td style="width:75px;">
120
  <?php $image = $slide -> image; ?>
121
+ <a href="<?php echo $this -> Html -> image_url($image); ?>" title="<?php echo $slide -> title; ?>" class="colorbox" rel="slides"><img class="dropshadow" src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_path, 50, 50, 100); ?>" alt="<?php echo $this -> Html -> sanitize($slide -> title); ?>" /></a>
122
  </td>
123
  <td>
124
  <a class="row-title" href="<?php echo $this -> url; ?>&amp;method=save&amp;id=<?php echo $slide -> id; ?>" title=""><?php echo $slide -> title; ?></a>
views/admin/slides/order.php CHANGED
@@ -1,8 +1,4 @@
1
  <div class="wrap">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-32.png" />
4
- </div>
5
-
6
  <h2><?php _e('Order Slides', $this -> plugin_name); ?><?php echo (!empty($gallery)) ? ': ' . $gallery -> title : ''; ?></h2>
7
 
8
  <div style="float:none;" class="subsubsub">
@@ -12,15 +8,12 @@
12
  <?php if (!empty($slides)) : ?>
13
  <div id="slidemessage" class="updated fade" style="display:none; width:31%;"><!-- message will go here --></div>
14
  <div class="gallery_slides_list">
15
- <span class="gallery_slides_convert_list"><a href="#" id="gallery_convert_list"><?php _e('List', $this -> plugin_name); ?></a></span>
16
- <span class="gallery_slides_convert_grid"><a href="#" id="gallery_convert_grid"><?php _e('Grid', $this -> plugin_name); ?></a></span>
17
  <br class="clear" />
18
  <ul id="slidelist">
19
  <?php foreach ($slides as $slide) : ?>
20
  <li class="gallerylineitem" id="item_<?php echo $slide -> id; ?>">
21
- <?php /*<span style="float:left; margin:5px 10px 0 5px;"><img src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_path, 60, 60, 100); ?>" alt="<?php echo $this -> Html -> sanitize($slide -> title); ?>" /></span>
22
- <h4><?php echo $slide -> title; ?></h4>
23
- <hr class="clear" style="clear:both; visibility:hidden; height:1px; display:block;" />*/ ?>
24
  <span class="gallery_slide_image" style="display:none;"><img src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_path, 89, 89, 100); ?>" alt="<?php echo $this -> Html -> sanitize($slide -> title); ?>" /></span>
25
  <span class="gallery_slide_title"><?php echo __($slide -> title); ?></span>
26
  </li>
1
  <div class="wrap">
 
 
 
 
2
  <h2><?php _e('Order Slides', $this -> plugin_name); ?><?php echo (!empty($gallery)) ? ': ' . $gallery -> title : ''; ?></h2>
3
 
4
  <div style="float:none;" class="subsubsub">
8
  <?php if (!empty($slides)) : ?>
9
  <div id="slidemessage" class="updated fade" style="display:none; width:31%;"><!-- message will go here --></div>
10
  <div class="gallery_slides_list">
11
+ <span class="gallery_slides_convert_list"><a href="#" id="gallery_convert_list"></a></span>
12
+ <span class="gallery_slides_convert_grid"><a href="#" id="gallery_convert_grid"></a></span>
13
  <br class="clear" />
14
  <ul id="slidelist">
15
  <?php foreach ($slides as $slide) : ?>
16
  <li class="gallerylineitem" id="item_<?php echo $slide -> id; ?>">
 
 
 
17
  <span class="gallery_slide_image" style="display:none;"><img src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_path, 89, 89, 100); ?>" alt="<?php echo $this -> Html -> sanitize($slide -> title); ?>" /></span>
18
  <span class="gallery_slide_title"><?php echo __($slide -> title); ?></span>
19
  </li>
views/admin/slides/save.php CHANGED
@@ -1,8 +1,4 @@
1
  <div class="wrap <?php echo $this -> pre; ?>">
2
- <div class="icon32">
3
- <img src="<?php echo $this -> url(); ?>/images/icon-32.png" />
4
- </div>
5
-
6
  <h2><?php _e('Save a Slide', $this -> plugin_name); ?></h2>
7
 
8
  <form action="<?php echo $this -> url; ?>&amp;method=save" method="post" enctype="multipart/form-data">
@@ -12,23 +8,26 @@
12
  <table class="form-table">
13
  <tbody>
14
  <tr>
15
- <th><label for="Slide.title"><?php _e('Title', $this -> plugin_name); ?></label></th>
 
16
  <td>
17
  <input class="widefat" type="text" name="Slide[title]" value="<?php echo esc_attr($this -> Slide -> data -> title); ?>" id="Slide.title" />
18
- <span class="howto"><?php _e('title/name of your slide as it will be displayed to your users.', $this -> plugin_name); ?></span>
19
  <?php echo (!empty($this -> Slide -> errors['title'])) ? '<div style="color:red;">' . $this -> Slide -> errors['title'] . '</div>' : ''; ?>
20
  </td>
21
  </tr>
22
  <tr>
23
- <th><label for="Slide.description"><?php _e('Description', $this -> plugin_name); ?></label></th>
 
24
  <td>
25
- <textarea class="widefat" name="Slide[description]"><?php echo esc_attr($this -> Slide -> data -> description); ?></textarea>
26
- <span class="howto"><?php _e('description of your slide as it will be displayed to your users below the title.', $this -> plugin_name); ?></span>
27
  <?php echo (!empty($this -> Slide -> errors['description'])) ? '<div style="color:red;">' . $this -> Slide -> errors['description'] . '</div>' : ''; ?>
28
  </td>
29
  </tr>
30
  <tr>
31
- <th><label for=""><?php _e('Galleries', $this -> plugin_name); ?></label></th>
 
32
  <td>
33
  <?php if ($galleries = $this -> Gallery -> select()) : ?>
34
  <label style="font-weight:bold"><input onclick="jqCheckAll(this,'','Slide[galleries]');" type="checkbox" name="checkboxall" value="checkboxall" id="checkboxall" /> <?php _e('Select All', $this -> plugin_name); ?></label><br/>
@@ -42,12 +41,13 @@
42
  </td>
43
  </tr>
44
  <tr>
45
- <th><label for="Slide.type.file"><?php _e('Image Type', $this -> plugin_name); ?></label></th>
 
46
  <td>
47
  <label><input onclick="jQuery('#typediv_file').show(); jQuery('#typediv_url').hide();" <?php echo (empty($this -> Slide -> data -> type) || $this -> Slide -> data -> type == "file") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[type]" value="file" id="Slide.type.file" /> <?php _e('Upload File (recommended)', $this -> plugin_name); ?></label>
48
  <label><input onclick="jQuery('#typediv_url').show(); jQuery('#typediv_file').hide();" <?php echo ($this -> Slide -> data -> type == "url") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[type]" value="url" id="Slide.type.url" /> <?php _e('Specify URL', $this -> plugin_name); ?></label>
49
  <?php echo (!empty($this -> Slide -> errors['type'])) ? '<div style="color:red;">' . $this -> Slide -> errors['type'] . '</div>' : ''; ?>
50
- <span class="howto"><?php _e('do you want to upload an image or specify a local/remote image URL?', $this -> plugin_name); ?></span>
51
  </td>
52
  </tr>
53
  </tbody>
@@ -57,10 +57,11 @@
57
  <table class="form-table">
58
  <tbody>
59
  <tr>
60
- <th><label for="Slide.image_file"><?php _e('Choose Image', $this -> plugin_name); ?></label></th>
 
61
  <td>
62
  <input type="file" name="image_file" value="" id="Slide.image_file" />
63
- <span class="howto"><?php _e('choose your image file from your computer. JPG, PNG, GIF are supported.', $this -> plugin_name); ?></span>
64
  <?php echo (!empty($this -> Slide -> errors['image_file'])) ? '<div style="color:red;">' . $this -> Slide -> errors['image_file'] . '</div>' : ''; ?>
65
 
66
  <?php
@@ -71,7 +72,7 @@
71
 
72
  <input type="hidden" name="Slide[image_oldfile]" value="<?php echo esc_attr(stripslashes($this -> Slide -> data -> image)); ?>" />
73
  <p><small><?php _e('Current image. Leave the field above blank to keep this image.', $this -> plugin_name); ?></small></p>
74
- <a title="<?php echo esc_attr($this -> Slide -> data -> title); ?>" class="colorbox" href="<?php echo $this -> Html -> image_url($this -> Slide -> data -> image); ?>"><img src="<?php echo $this -> Html -> timthumb_image_src($this -> Slide -> data -> image_path, 100, 100, 100); ?>" alt="" class="slideshow" /></a>
75
 
76
  <?php
77
  }
@@ -88,7 +89,8 @@
88
  <table class="form-table">
89
  <tbody>
90
  <tr>
91
- <th><label for="Slide.image_url"><?php _e('Image URL', $this -> plugin_name); ?></label></th>
 
92
  <td>
93
  <input class="widefat" type="text" name="Slide[image_url]" value="<?php echo esc_attr($this -> Slide -> data -> image_url); ?>" id="Slide.image_url" />
94
  <span class="howto"><?php _e('Local or remote image location eg. http://domain.com/path/to/image.jpg', $this -> plugin_name); ?></span>
@@ -102,11 +104,12 @@
102
  <table class="form-table">
103
  <tbody>
104
  <tr>
105
- <th><label for="Slide_uselink_N"><?php _e('Use Link', $this -> plugin_name); ?></label></th>
 
106
  <td>
107
  <label><input onclick="jQuery('#Slide_uselink_div').show();" <?php echo ($this -> Slide -> data -> uselink == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[uselink]" value="Y" id="Slide_uselink_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
108
  <label><input onclick="jQuery('#Slide_uselink_div').hide();" <?php echo (empty($this -> Slide -> data -> uselink) || $this -> Slide -> data -> uselink == "N") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[uselink]" value="N" id="Slide_uselink_N" /> <?php _e('No', $this -> plugin_name); ?></label>
109
- <span class="howto"><?php _e('set this to Yes to link this slide to a link/URL of your choice.', $this -> plugin_name); ?></span>
110
  </td>
111
  </tr>
112
  </tbody>
@@ -116,14 +119,16 @@
116
  <table class="form-table">
117
  <tbody>
118
  <tr>
119
- <th><label for="Slide.link"><?php _e('Link To', $this -> plugin_name); ?></label></th>
 
120
  <td>
121
  <input class="widefat" type="text" name="Slide[link]" value="<?php echo esc_attr($this -> Slide -> data -> link); ?>" id="Slide.link" />
122
- <span class="howto"><?php _e('link/URL to go to when a user clicks the slide eg. http://www.domain.com/mypage/', $this -> plugin_name); ?></span>
123
  </td>
124
  </tr>
125
  <tr>
126
- <th><label for="Slide_linktarget_self"><?php _e('Link Target', $this -> plugin_name); ?></label></th>
 
127
  <td>
128
  <label><input <?php echo (empty($this -> Slide -> data -> linktarget) || (!empty($this -> Slide -> data -> linktarget) && $this -> Slide -> data -> linktarget == "self")) ? 'checked="checked"' : ''; ?> type="radio" name="Slide[linktarget]" value="self" id="Slide_linktarget_self" /> <?php _e('Current Window', $this -> plugin_name); ?></label>
129
  <label><input <?php echo (!empty($this -> Slide -> data -> linktarget) && $this -> Slide -> data -> linktarget == "blank") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[linktarget]" value="blank" id="Slide_linktarget_blank" /> <?php _e('New/Blank Window', $this -> plugin_name); ?></label>
1
  <div class="wrap <?php echo $this -> pre; ?>">
 
 
 
 
2
  <h2><?php _e('Save a Slide', $this -> plugin_name); ?></h2>
3
 
4
  <form action="<?php echo $this -> url; ?>&amp;method=save" method="post" enctype="multipart/form-data">
8
  <table class="form-table">
9
  <tbody>
10
  <tr>
11
+ <th><label for="Slide.title"><?php _e('Title', $this -> plugin_name); ?></label>
12
+ <?php echo GalleryHtmlHelper::help(__('This title is for your reference in management and it will also be used to display the title of the slide in the information bar if you have that turned on.', $this -> plugin_name)); ?></th>
13
  <td>
14
  <input class="widefat" type="text" name="Slide[title]" value="<?php echo esc_attr($this -> Slide -> data -> title); ?>" id="Slide.title" />
15
+ <span class="howto"><?php _e('Title/name of your slide as it will be displayed to your users.', $this -> plugin_name); ?></span>
16
  <?php echo (!empty($this -> Slide -> errors['title'])) ? '<div style="color:red;">' . $this -> Slide -> errors['title'] . '</div>' : ''; ?>
17
  </td>
18
  </tr>
19
  <tr>
20
+ <th><label for="Slide.description"><?php _e('Description', $this -> plugin_name); ?></label>
21
+ <?php echo GalleryHtmlHelper::help(__('The description is specifically used for the information bar if you have that turned on.', $this -> plugin_name)); ?></th>
22
  <td>
23
+ <textarea class="widefat" rows="5" cols="100%" name="Slide[description]"><?php echo esc_attr($this -> Slide -> data -> description); ?></textarea>
24
+ <span class="howto"><?php _e('Description of your slide as it will be displayed to your users below the title.', $this -> plugin_name); ?></span>
25
  <?php echo (!empty($this -> Slide -> errors['description'])) ? '<div style="color:red;">' . $this -> Slide -> errors['description'] . '</div>' : ''; ?>
26
  </td>
27
  </tr>
28
  <tr>
29
+ <th><label for="checkboxall"><?php _e('Galleries', $this -> plugin_name); ?></label>
30
+ <?php echo GalleryHtmlHelper::help(__('You can organize/assign a slide to multiple galleries as needed. It is easy to display a slideshow with the slides of a specific gallery then.', $this -> plugin_name)); ?></th>
31
  <td>
32
  <?php if ($galleries = $this -> Gallery -> select()) : ?>
33
  <label style="font-weight:bold"><input onclick="jqCheckAll(this,'','Slide[galleries]');" type="checkbox" name="checkboxall" value="checkboxall" id="checkboxall" /> <?php _e('Select All', $this -> plugin_name); ?></label><br/>
41
  </td>
42
  </tr>
43
  <tr>
44
+ <th><label for="Slide.type.file"><?php _e('Image Type', $this -> plugin_name); ?></label>
45
+ <?php echo GalleryHtmlHelper::help(__('Do you want to specify a URL to your image or upload the image file manually? Specifying a URL will still copy the image file remotely from the location to your server so uploading is recommended to prevent any restrictions or errors.', $this -> plugin_name)); ?></th>
46
  <td>
47
  <label><input onclick="jQuery('#typediv_file').show(); jQuery('#typediv_url').hide();" <?php echo (empty($this -> Slide -> data -> type) || $this -> Slide -> data -> type == "file") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[type]" value="file" id="Slide.type.file" /> <?php _e('Upload File (recommended)', $this -> plugin_name); ?></label>
48
  <label><input onclick="jQuery('#typediv_url').show(); jQuery('#typediv_file').hide();" <?php echo ($this -> Slide -> data -> type == "url") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[type]" value="url" id="Slide.type.url" /> <?php _e('Specify URL', $this -> plugin_name); ?></label>
49
  <?php echo (!empty($this -> Slide -> errors['type'])) ? '<div style="color:red;">' . $this -> Slide -> errors['type'] . '</div>' : ''; ?>
50
+ <span class="howto"><?php _e('Do you want to upload an image or specify a local/remote image URL?', $this -> plugin_name); ?></span>
51
  </td>
52
  </tr>
53
  </tbody>
57
  <table class="form-table">
58
  <tbody>
59
  <tr>
60
+ <th><label for="Slide.image_file"><?php _e('Choose Image', $this -> plugin_name); ?></label>
61
+ <?php echo GalleryHtmlHelper::help(__('Simply choose an image file from your computer to upload for this slide. Only .jpg, .png and .gif are supported and in rare cases .bmp but please try and prevent using .bmp files.', $this -> plugin_name)); ?></th>
62
  <td>
63
  <input type="file" name="image_file" value="" id="Slide.image_file" />
64
+ <span class="howto"><?php _e('Choose your image file from your computer. JPG, PNG, GIF are supported.', $this -> plugin_name); ?></span>
65
  <?php echo (!empty($this -> Slide -> errors['image_file'])) ? '<div style="color:red;">' . $this -> Slide -> errors['image_file'] . '</div>' : ''; ?>
66
 
67
  <?php
72
 
73
  <input type="hidden" name="Slide[image_oldfile]" value="<?php echo esc_attr(stripslashes($this -> Slide -> data -> image)); ?>" />
74
  <p><small><?php _e('Current image. Leave the field above blank to keep this image.', $this -> plugin_name); ?></small></p>
75
+ <p><a title="<?php echo esc_attr($this -> Slide -> data -> title); ?>" class="colorbox" href="<?php echo $this -> Html -> image_url($this -> Slide -> data -> image); ?>"><img src="<?php echo $this -> Html -> timthumb_image_src($this -> Slide -> data -> image_path, 100, 100, 100); ?>" alt="" class="slideshow" /></a></p>
76
 
77
  <?php
78
  }
89
  <table class="form-table">
90
  <tbody>
91
  <tr>
92
+ <th><label for="Slide.image_url"><?php _e('Image URL', $this -> plugin_name); ?></label>
93
+ <?php echo GalleryHtmlHelper::help(__('Specify an absolute URL to an image file to use for this slide. The image will be copied from the location to your server.', $this -> plugin_name)); ?></th>
94
  <td>
95
  <input class="widefat" type="text" name="Slide[image_url]" value="<?php echo esc_attr($this -> Slide -> data -> image_url); ?>" id="Slide.image_url" />
96
  <span class="howto"><?php _e('Local or remote image location eg. http://domain.com/path/to/image.jpg', $this -> plugin_name); ?></span>
104
  <table class="form-table">
105
  <tbody>
106
  <tr>
107
+ <th><label for="Slide_uselink_N"><?php _e('Use Link', $this -> plugin_name); ?></label>
108
+ <?php echo GalleryHtmlHelper::help(__('Turn this on to specify a link/URL for this slide to link to when it is clicked.', $this -> plugin_name)); ?></th>
109
  <td>
110
  <label><input onclick="jQuery('#Slide_uselink_div').show();" <?php echo ($this -> Slide -> data -> uselink == "Y") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[uselink]" value="Y" id="Slide_uselink_Y" /> <?php _e('Yes', $this -> plugin_name); ?></label>
111
  <label><input onclick="jQuery('#Slide_uselink_div').hide();" <?php echo (empty($this -> Slide -> data -> uselink) || $this -> Slide -> data -> uselink == "N") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[uselink]" value="N" id="Slide_uselink_N" /> <?php _e('No', $this -> plugin_name); ?></label>
112
+ <span class="howto"><?php _e('Set this to Yes to link this slide to a link/URL of your choice.', $this -> plugin_name); ?></span>
113
  </td>
114
  </tr>
115
  </tbody>
119
  <table class="form-table">
120
  <tbody>
121
  <tr>
122
+ <th><label for="Slide.link"><?php _e('Link To', $this -> plugin_name); ?></label>
123
+ <?php echo GalleryHtmlHelper::help(__('The absolute URL to take the user to when the slide is clicked.', $this -> plugin_name)); ?></th>
124
  <td>
125
  <input class="widefat" type="text" name="Slide[link]" value="<?php echo esc_attr($this -> Slide -> data -> link); ?>" id="Slide.link" />
126
+ <span class="howto"><?php _e('Link/URL to go to when a user clicks the slide eg. http://www.domain.com/mypage/', $this -> plugin_name); ?></span>
127
  </td>
128
  </tr>
129
  <tr>
130
+ <th><label for="Slide_linktarget_self"><?php _e('Link Target', $this -> plugin_name); ?></label>
131
+ <?php echo GalleryHtmlHelper::help(__('Depending on the purpose of specifying this link, you may want it to open in the same window or in a new window.', $this -> plugin_name)); ?></th>
132
  <td>
133
  <label><input <?php echo (empty($this -> Slide -> data -> linktarget) || (!empty($this -> Slide -> data -> linktarget) && $this -> Slide -> data -> linktarget == "self")) ? 'checked="checked"' : ''; ?> type="radio" name="Slide[linktarget]" value="self" id="Slide_linktarget_self" /> <?php _e('Current Window', $this -> plugin_name); ?></label>
134
  <label><input <?php echo (!empty($this -> Slide -> data -> linktarget) && $this -> Slide -> data -> linktarget == "blank") ? 'checked="checked"' : ''; ?> type="radio" name="Slide[linktarget]" value="blank" id="Slide_linktarget_blank" /> <?php _e('New/Blank Window', $this -> plugin_name); ?></label>
views/default/css-responsive copy.php ADDED
@@ -0,0 +1,36 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php header("Content-Type: text/css"); ?>
2
+
3
+ <?php $styles = array(); ?>
4
+ <?php foreach ($_GET as $skey => $sval) : ?>
5
+ <?php $styles[$skey] = urldecode($sval); ?>
6
+ <?php endforeach; ?>
7
+
8
+ <?php if (!empty($styles['wrapperid'])) : ?>
9
+ ul.slideshow { list-style:none !important; color:#fff; }
10
+ ul.slideshow span { display:none; }
11
+ #<?php echo $styles['wrapperid']; ?> { position:relative; height:0; width:100%; background:<?php echo $styles['background']; ?>; padding:0 0 <?php echo $styles['resheight'] . $styles['resheighttype']; ?> 0; border:<?php echo $styles['border']; ?>; margin:0; display:none; }
12
+ #<?php echo $styles['wrapperid']; ?> * { margin:0; padding:0; }
13
+ #<?php echo $styles['wrapperid']; ?> #fullsize { position:absolute; z-index:1; overflow:hidden; width:100%; height:100%; border: none; }
14
+ #<?php echo $styles['wrapperid']; ?> #information { text-align:left; font-family:Verdana, Arial, Helvetica, sans-serif !important; position:absolute; bottom:0; width:100%; height:0; background:<?php echo $styles['infobackground']; ?>; color:<?php echo $styles['infocolor']; ?>; overflow:hidden; z-index:200; opacity:.7; filter:alpha(opacity=70); }
15
+ #<?php echo $styles['wrapperid']; ?> #information h3 { color:<?php echo $styles['infocolor']; ?>; padding:4px 8px 3px; margin:0 !important; font-size:16px; font-weight:bold; }
16
+ #<?php echo $styles['wrapperid']; ?> #information p { color:<?php echo $styles['infocolor']; ?>; padding:0 8px 8px; margin:0 !important; font-size: 14px; font-weight:normal; }
17
+ #<?php echo $styles['wrapperid']; ?> #image { width:100%; no-repeat; }
18
+ #<?php echo $styles['wrapperid']; ?> #image img { border:none; height:100%; max-width:100%; width:100%; margin:0 auto; display:block; }
19
+ #<?php echo $styles['wrapperid']; ?> .imgnav { position:absolute; width:25%; height:100%; cursor:pointer; z-index:150; }
20
+ #<?php echo $styles['wrapperid']; ?> #imgprev { left:0; background:url('../../images/left.gif') left center no-repeat; }
21
+ #<?php echo $styles['wrapperid']; ?> #imgnext { right:0; background:url('../../images/right.gif') right center no-repeat; }
22
+ #<?php echo $styles['wrapperid']; ?> #imglink { position:absolute; zoom:1; background-color:#ffffff; height:100%; <?php if (!empty($styles['shownav']) && $styles['shownav'] == "true") : ?>width:50%; left:25%; right:20%;<?php else : ?>width:100%; left:0;<?php endif; ?> z-index:149; opacity:0; filter:alpha(opacity=0); }
23
+ #<?php echo $styles['wrapperid']; ?> .linkhover { background:transparent url('../../images/link.gif') center center no-repeat !important; text-indent:-9999px; opacity:.4 !important; filter:alpha(opacity=40) !important; }
24
+ #<?php echo $styles['wrapperid']; ?> #thumbnails { background:<?php echo $styles['background']; ?>; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; display:block; }
25
+ #<?php echo $styles['wrapperid']; ?> .thumbstop { margin-bottom:8px !important; }
26
+ #<?php echo $styles['wrapperid']; ?> .thumbsbot { margin-top:8px !important; }
27
+ #<?php echo $styles['wrapperid']; ?> #slideleft { z-index:150; float:left; position:absolute; left:0; width:20px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; background:url('../../images/scroll-left.gif') center center no-repeat; background-color:#222; }
28
+ #<?php echo $styles['wrapperid']; ?> #slideleft:hover { background-color:#333; }
29
+ #<?php echo $styles['wrapperid']; ?> #slideright { z-index:150; float:right; position:absolute; right:0; width:20px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; background:#222 url('../../images/scroll-right.gif') center center no-repeat; }
30
+ #<?php echo $styles['wrapperid']; ?> #slideright:hover { background-color:#333; }
31
+ #<?php echo $styles['wrapperid']; ?> #slidearea { z-index:149; float:left; position:absolute; margin:0 5px; background:<?php echo $styles['background']; ?>; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 50) . 'px' : '90%'; ?>; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; overflow:hidden; }
32
+ #<?php echo $styles['wrapperid']; ?> #slider { position:absolute; left:0; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; }
33
+ #<?php echo $styles['wrapperid']; ?> #slider img { cursor:pointer; border:1px solid #666; padding:2px; -moz-border-radius:4px; -webkit-border-radius:4px; float:left !important; }
34
+ #<?php echo $styles['wrapperid']; ?> #spinner { position:relative; top:50%; left:45%; text-align:left; }
35
+ #<?php echo $styles['wrapperid']; ?> #spinner img { border:none; }
36
+ <?php endif; ?>
views/default/css-responsive.php ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php header("Content-Type: text/css"); ?>
2
+
3
+ <?php $styles = array(); ?>
4
+ <?php foreach ($_GET as $skey => $sval) : ?>
5
+ <?php $styles[$skey] = urldecode($sval); ?>
6
+ <?php endforeach; ?>
7
+ <?php
8
+
9
+ $resheight = $styles['resheight'] . $styles['resheighttype'];
10
+ $sliderheight = $styles['thumbheight'] + 14;
11
+ $unique = $styles['unique'];
12
+
13
+ ?>
14
+ <?php if (!empty($styles['wrapperid'])) : ?>
15
+ ul.slideshow<?php echo $unique; ?> { list-style:none !important; color:#fff; }
16
+ ul.slideshow<?php echo $unique; ?> span { display:none; }
17
+ #<?php echo $styles['wrapperid']; ?> { position:relative; width:100%; background:<?php echo $styles['background']; ?>; padding:0 0 0 0; border:<?php echo $styles['border']; ?>; margin:0; display:none; }
18
+ #<?php echo $styles['wrapperid']; ?> * { margin:0; padding:0; }
19
+ #<?php echo $styles['wrapperid']; ?> #fullsize<?php echo $unique; ?> { position:relative; z-index:1; overflow:hidden; width:100%; height:<?php echo $resheight; ?>; border: none; }
20
+ #<?php echo $styles['wrapperid']; ?> #information<?php echo $unique; ?> { text-align:left; font-family:Verdana, Arial, Helvetica, sans-serif !important; position:absolute; bottom:0; width:100%; height:0; background:<?php echo $styles['infobackground']; ?>; color:<?php echo $styles['infocolor']; ?>; overflow:hidden; z-index:200; opacity:.7; filter:alpha(opacity=70); }
21
+ #<?php echo $styles['wrapperid']; ?> #information<?php echo $unique; ?> h3 { color:<?php echo $styles['infocolor']; ?>; padding:4px 8px 3px; margin:0 !important; font-size:16px; font-weight:bold; }
22
+ #<?php echo $styles['wrapperid']; ?> #information<?php echo $unique; ?> p { color:<?php echo $styles['infocolor']; ?>; padding:0 8px 8px; margin:0 !important; font-size: 14px; font-weight:normal; }
23
+ #<?php echo $styles['wrapperid']; ?> #image<?php echo $unique; ?> { width:100%; }
24
+ #<?php echo $styles['wrapperid']; ?> #image<?php echo $unique; ?> img { border:none; height:auto; width:100%; margin:0 auto; display:block; }
25
+ #<?php echo $styles['wrapperid']; ?> .imgnav { position:absolute; width:25%; height:100%; cursor:pointer; z-index:250; }
26
+ #<?php echo $styles['wrapperid']; ?> #imgprev<?php echo $unique; ?> { left:0; background:url('images/left.gif') left center no-repeat; }
27
+ #<?php echo $styles['wrapperid']; ?> #imgnext<?php echo $unique; ?> { right:0; background:url('images/right.gif') right center no-repeat; }
28
+ #<?php echo $styles['wrapperid']; ?> #imglink<?php echo $unique; ?> { position:absolute; zoom:1; background-color:#ffffff; height:100%; <?php if (!empty($styles['shownav']) && $styles['shownav'] == "true") : ?>width:50%; left:25%; right:20%;<?php else : ?>width:100%; left:0;<?php endif; ?> z-index:149; opacity:0; filter:alpha(opacity=0); }
29
+ #<?php echo $styles['wrapperid']; ?> .linkhover { background:transparent url('images/link.gif') center center no-repeat !important; text-indent:-9999px; opacity:.4 !important; filter:alpha(opacity=40) !important; }
30
+ #<?php echo $styles['wrapperid']; ?> #thumbnails<?php echo $unique; ?> { background:<?php echo $styles['background']; ?>; height:<?php echo $sliderheight; ?>px; }
31
+ #<?php echo $styles['wrapperid']; ?> .thumbstop { margin-bottom:8px !important; }
32
+ #<?php echo $styles['wrapperid']; ?> .thumbsbot { margin-top:8px !important; }
33
+ #<?php echo $styles['wrapperid']; ?> #slideleft<?php echo $unique; ?> { float:left; position:absolute; left:0; z-index:150; width:20px; height:<?php echo $sliderheight; ?>px; background:url('images/scroll-left.gif') center center no-repeat; background-color:#222; }
34
+ #<?php echo $styles['wrapperid']; ?> #slideleft<?php echo $unique; ?>:hover { background-color:#333; }
35
+ #<?php echo $styles['wrapperid']; ?> #slideright<?php echo $unique; ?> { float:right; position:absolute; right:0; z-index:150; width:20px; height:<?php echo $sliderheight; ?>px; background:#222 url('images/scroll-right.gif') center center no-repeat; }
36
+ #<?php echo $styles['wrapperid']; ?> #slideright<?php echo $unique; ?>:hover { background-color:#333; }
37
+ #<?php echo $styles['wrapperid']; ?> #slidearea<?php echo $unique; ?> { float:left; position:absolute; z-index:149; background:<?php echo $styles['background']; ?>; width:calc(100% - 40px); margin:0 20px; height:<?php echo $sliderheight; ?>px; overflow:hidden; }
38
+ #<?php echo $styles['wrapperid']; ?> #slider<?php echo $unique; ?> { position:absolute; width:<?php echo $styles['sliderwidth']; ?>px !important; left:0; height:<?php echo $sliderheight; ?>px; padding:3px 0 0 5px; }
39
+ #<?php echo $styles['wrapperid']; ?> #slider<?php echo $unique; ?> img { cursor:pointer; border:1px solid #666; padding:2px; float:left !important; }
40
+ #<?php echo $styles['wrapperid']; ?> #spinner<?php echo $unique; ?> { position:relative; top:50%; left:45%; text-align:left; }
41
+ #<?php echo $styles['wrapperid']; ?> #spinner<?php echo $unique; ?> img { border:none; }
42
+ <?php endif; ?>
views/default/css.php ADDED
@@ -0,0 +1,42 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php header("Content-Type: text/css"); ?>
2
+
3
+ <?php $styles = array(); ?>
4
+ <?php foreach ($_GET as $skey => $sval) : ?>
5
+ <?php $styles[$skey] = urldecode($sval); ?>
6
+ <?php endforeach; ?>
7
+
8
+ <?php
9
+
10
+ $unique = $styles['unique'];
11
+
12
+ ?>
13
+
14
+ <?php if (!empty($styles['wrapperid'])) : ?>
15
+ ul.slideshow<?php echo $unique; ?> { list-style:none !important; color:#fff; }
16
+ ul.slideshow<?php echo $unique; ?> span { display:none; }
17
+ #<?php echo $styles['wrapperid']; ?> { position:relative; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width']) . 'px' : 'auto'; ?>; background:<?php echo $styles['background']; ?>; padding:0 0 0 0; border:<?php echo $styles['border']; ?>; margin:0; display:none; }
18
+ #<?php echo $styles['wrapperid']; ?> * { margin:0; padding:0; }
19
+ #<?php echo $styles['wrapperid']; ?> #fullsize<?php echo $unique; ?> { position:relative; z-index:1; overflow:hidden; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width']) . 'px' : 'auto'; ?>; height:<?php echo ((int) $styles['height']); ?>px; border: none; }
20
+ #<?php echo $styles['wrapperid']; ?> #information<?php echo $unique; ?> { text-align:left; font-family:Verdana, Arial, Helvetica, sans-serif !important; position:absolute; bottom:0; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width']) . 'px' : '100%'; ?>; height:0; background:<?php echo $styles['infobackground']; ?>; color:<?php echo $styles['infocolor']; ?>; overflow:hidden; z-index:200; opacity:.7; filter:alpha(opacity=70); }
21
+ #<?php echo $styles['wrapperid']; ?> #information<?php echo $unique; ?> h3 { color:<?php echo $styles['infocolor']; ?>; padding:4px 8px 3px; margin:0 !important; font-size:16px; font-weight:bold; }
22
+ #<?php echo $styles['wrapperid']; ?> #information<?php echo $unique; ?> p { color:<?php echo $styles['infocolor']; ?>; padding:0 8px 8px; margin:0 !important; font-size: 14px; font-weight:normal; }
23
+ #<?php echo $styles['wrapperid']; ?> #image<?php echo $unique; ?> { width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width']) . 'px' : 'auto'; ?>; no-repeat; }
24
+ #<?php echo $styles['wrapperid']; ?> #image<?php echo $unique; ?> img { border:none; height:auto; max-width:100%; margin:0 auto; display:block; }
25
+ #<?php echo $styles['wrapperid']; ?> .imgnav { position:absolute; width:25%; height:<?php echo ((int) $styles['height'] + 8); ?>px; cursor:pointer; z-index:250; }
26
+ #<?php echo $styles['wrapperid']; ?> #imgprev<?php echo $unique; ?> { left:0; background:url('images/left.gif') left center no-repeat; }
27
+ #<?php echo $styles['wrapperid']; ?> #imgnext<?php echo $unique; ?> { right:0; background:url('images/right.gif') right center no-repeat; }
28
+ #<?php echo $styles['wrapperid']; ?> #imglink<?php echo $unique; ?> { position:absolute; zoom:1; background-color:#ffffff; height:<?php echo ((int) $styles['height'] + 8); ?>px; <?php if (!empty($styles['shownav']) && $styles['shownav'] == "true") : ?>width:50%; left:25%; right:20%;<?php else : ?>width:100%; left:0;<?php endif; ?> z-index:149; opacity:0; filter:alpha(opacity=0); }
29
+ #<?php echo $styles['wrapperid']; ?> .linkhover { background:transparent url('images/link.gif') center center no-repeat !important; text-indent:-9999px; opacity:.4 !important; filter:alpha(opacity=40) !important; }
30
+ #<?php echo $styles['wrapperid']; ?> #thumbnails<?php echo $unique; ?> { background:<?php echo $styles['background']; ?>; }
31
+ #<?php echo $styles['wrapperid']; ?> .thumbstop { margin-bottom:8px !important; }
32
+ #<?php echo $styles['wrapperid']; ?> .thumbsbot { margin-top:8px !important; }
33
+ #<?php echo $styles['wrapperid']; ?> #slideleft<?php echo $unique; ?> { float:left; width:20px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; background:url('images/scroll-left.gif') center center no-repeat; background-color:#222; }
34
+ #<?php echo $styles['wrapperid']; ?> #slideleft<?php echo $unique; ?>:hover { background-color:#333; }
35
+ #<?php echo $styles['wrapperid']; ?> #slideright<?php echo $unique; ?> { float:right; width:20px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; background:#222 url('images/scroll-right.gif') center center no-repeat; }
36
+ #<?php echo $styles['wrapperid']; ?> #slideright<?php echo $unique; ?>:hover { background-color:#333; }
37
+ #<?php echo $styles['wrapperid']; ?> #slidearea<?php echo $unique; ?> { float:left; position:relative; background:<?php echo $styles['background']; ?>; width:<?php echo ($styles['width'] != "auto") ? ((int) $styles['width'] - 50) . 'px' : '90%'; ?>; margin:0 5px; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; overflow:hidden; }
38
+ #<?php echo $styles['wrapperid']; ?> #slider<?php echo $unique; ?> { position:absolute; width:<?php echo $styles['sliderwidth']; ?>px !important; left:0; height:<?php echo ((int) $styles['thumbheight'] + 14); ?>px; }
39
+ #<?php echo $styles['wrapperid']; ?> #slider<?php echo $unique; ?> img { cursor:pointer; border:1px solid #666; padding:2px; float:left !important; }
40
+ #<?php echo $styles['wrapperid']; ?> #spinner<?php echo $unique; ?> { position:relative; top:50%; left:45%; text-align:left; }
41
+ #<?php echo $styles['wrapperid']; ?> #spinner<?php echo $unique; ?> img { border:none; }
42
+ <?php endif; ?>
views/default/gallery.php CHANGED
@@ -1,12 +1,12 @@
1
  <?php
2
 
3
- $wrapperid = "slideshow-wrapper";
4
- $slides = stripslashes_deep($slides);
5
 
6
  ?>
7
 
8
  <?php if (!empty($slides)) : ?>
9
- <ul id="slideshow" class="slideshow" style="display:none;">
10
  <!-- From a WordPress post/page -->
11
  <?php if ($frompost) : ?>
12
  <?php foreach ($slides as $slide) : ?>
@@ -15,12 +15,12 @@ $slides = stripslashes_deep($slides);
15
  <?php $full_image_href = wp_get_attachment_image_src($slide -> ID, 'full', false); ?>
16
  <?php $full_image_path = get_attached_file($slide -> ID); ?>
17
  <?php $full_image_url = wp_get_attachment_url($slide -> ID); ?>
18
- <?php if ($options['resizeimages'] == "true" && $options['width'] != "auto") : ?>
19
  <span><?php echo $this -> Html -> timthumb_image_src($full_image_href[0], $options['width'], $options['height'], 100); ?></span>
20
  <?php else : ?>
21
  <span><?php echo $full_image_href[0]; ?></span>
22
  <?php endif; ?>
23
- <p><?php echo $slide -> post_content; ?></p>
24
  <?php $thumbnail_link = wp_get_attachment_image_src($slide -> ID, 'thumbnail', false); ?>
25
  <?php if ($options['showthumbs'] == "true") : ?>
26
  <?php if (!empty($slide -> guid)) : ?>
@@ -33,12 +33,34 @@ $slides = stripslashes_deep($slides);
33
  <?php endif; ?>
34
  </li>
35
  <?php endforeach; ?>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
36
  <!-- From all slides or gallery slides -->
37
  <?php else : ?>
38
  <?php foreach ($slides as $slide) : ?>
39
  <li>
40
  <h3><?php echo $slide -> title; ?></h3>
41
- <?php if ($options['resizeimages'] == "true" && $options['width'] != "auto") : ?>
42
  <span><?php echo $this -> Html -> timthumb_image_src($slide -> image_path, $options['width'], $options['height'], 100); ?></span>
43
  <?php else : ?>
44
  <span><?php echo $this -> Html -> image_url($slide -> image); ?></span>
@@ -66,30 +88,30 @@ $slides = stripslashes_deep($slides);
66
 
67
  <div id="<?php echo $wrapperid; ?>">
68
  <?php if ($options['showthumbs'] == "true" && $options['thumbsposition'] == "top") : ?>
69
- <div id="thumbnails" class="thumbstop">
70
- <div id="slideleft" title="<?php _e('Slide Left', $this -> plugin_name); ?>"></div>
71
- <div id="slidearea">
72
- <div id="slider"></div>
73
  </div>
74
- <div id="slideright" title="<?php _e('Slide Right', $this -> plugin_name); ?>"></div>
75
  <br style="clear:both; visibility:hidden; height:1px;" />
76
  </div>
77
  <?php endif; ?>
78
 
79
- <div id="fullsize">
80
  <?php $navb = false; $navf = false; ?>
81
  <?php if ($options['shownav'] == "true" && count($slides) > 1) : ?>
82
  <?php $navb = "imgprev"; ?>
83
- <div id="imgprev" class="imgnav" title="<?php _e('Previous Image', $this -> plugin_name); ?>"></div>
84
  <?php endif; ?>
85
- <div id="imglink" class="imglink"><!-- link --></div>
86
  <?php if ($options['shownav'] == "true" && count($slides) > 1) : ?>
87
  <?php $navf = "imgnext"; ?>
88
- <div id="imgnext" class="imgnav" title="<?php _e('Next Image', $this -> plugin_name); ?>"></div>
89
  <?php endif; ?>
90
- <div id="image"></div>
91
  <?php if ($options['showinfo'] == "true") : ?>
92
- <div id="information">
93
  <h3></h3>
94
  <p></p>
95
  </div>
@@ -97,12 +119,12 @@ $slides = stripslashes_deep($slides);
97
  </div>
98
 
99
  <?php if ($options['showthumbs'] == "true" && $options['thumbsposition'] == "bottom") : ?>
100
- <div id="thumbnails" class="thumbsbot">
101
- <div id="slideleft" title="<?php _e('Slide Left', $this -> plugin_name); ?>"></div>
102
- <div id="slidearea">
103
- <div id="slider"></div>
104
  </div>
105
- <div id="slideright" title="<?php _e('Slide Right', $this -> plugin_name); ?>"></div>
106
  <br style="clear:both; visibility:hidden; height:1px;" />
107
  </div>
108
  <?php endif; ?>
@@ -110,52 +132,63 @@ $slides = stripslashes_deep($slides);
110
 
111
  <script type="text/javascript">
112
  jQuery.noConflict();
113
- tid('slideshow').style.display = "none";
114
  tid('<?php echo $wrapperid; ?>').style.display = 'block';
115
  tid('<?php echo $wrapperid; ?>').style.visibility = 'hidden';
116
- jQuery("#fullsize").append('<div id="spinner"><img src="<?php echo $this -> url(); ?>/images/spinner.gif"></div>');
117
- tid('spinner').style.visibility = 'visible';
118
 
119
- var slideshow = new TINY.slideshow("slideshow");
120
  jQuery(document).ready(function() {
121
- window.onload = function() {
122
- <?php if (empty($options['auto']) || (!empty($options['auto']) && $options['auto'] == "true")) : ?>slideshow.auto = true;<?php else : ?>slideshow.auto = false;<?php endif; ?>
123
- slideshow.speed = <?php echo $options['autospeed']; ?>;
124
- slideshow.imgSpeed = <?php echo $options['fadespeed']; ?>;
125
- slideshow.navOpacity = <?php echo $options['navopacity']; ?>;
126
- slideshow.navHover = <?php echo $options['navhoveropacity']; ?>;
127
- slideshow.letterbox = "#000000";
128
- slideshow.linkclass = "linkhover";
129
- slideshow.info = "<?php echo ($options['showinfo'] == "true") ? 'information' : ''; ?>";
130
- slideshow.infoSpeed = <?php echo $options['infospeed']; ?>;
131
- slideshow.thumbs = "<?php echo ($options['showthumbs'] == "true") ? 'slider' : ''; ?>";
132
- slideshow.thumbOpacity = <?php echo $this -> get_option('thumbopacity'); ?>;
133
- slideshow.left = "slideleft";
134
- slideshow.right = "slideright";
135
- slideshow.scrollSpeed = <?php echo $options['thumbsspeed']; ?>;
136
- slideshow.spacing = <?php echo $options['thumbsspacing']; ?>;
137
- slideshow.active = "<?php echo $options['thumbsborder']; ?>";
138
- slideshow.imagesthickbox = "<?php echo $options['imagesoverlay']; ?>";
139
- jQuery("#spinner").remove();
140
- slideshow.init("slideshow","image","<?php echo $navb; ?>","<?php echo $navf; ?>","imglink");
141
- tid('<?php echo $wrapperid; ?>').style.visibility = 'visible';
142
- }
143
  });
 
 
 
 
 
 
 
 
 
144
  </script>
145
 
146
  <?php
147
 
 
148
  $cssattr['wrapperid'] = $wrapperid;
149
  $cssattr['resizeimages'] = (($options['resizeimages'] == "true") ? "Y" : "N");
150
  $cssattr['width'] = $options['width'];
151
  $cssattr['height'] = $options['height'];
152
  $cssattr['thumbwidth'] = $this -> get_option('thumbwidth');
153
  $cssattr['thumbheight'] = $this -> get_option('thumbheight');
 
154
 
155
  ?>
156
 
157
  <style type="text/css">
158
- @import url('<?php echo $this -> get_css_url($cssattr); ?>');
159
  </style>
160
 
161
  <!--[if IE 6]>
1
  <?php
2
 
3
+ $wrapperid = "slideshow-wrapper" . $unique;
4
+ if (!$products) $slides = stripslashes_deep($slides);
5
 
6
  ?>
7
 
8
  <?php if (!empty($slides)) : ?>
9
+ <ul id="slideshow<?php echo $unique; ?>" class="slideshow<?php echo $unique; ?>" style="display:none;">
10
  <!-- From a WordPress post/page -->
11
  <?php if ($frompost) : ?>
12
  <?php foreach ($slides as $slide) : ?>
15
  <?php $full_image_href = wp_get_attachment_image_src($slide -> ID, 'full', false); ?>
16
  <?php $full_image_path = get_attached_file($slide -> ID); ?>
17
  <?php $full_image_url = wp_get_attachment_url($slide -> ID); ?>
18
+ <?php if ($options['layout'] != "responsive" && $options['resizeimages'] == "true" && $options['width'] != "auto") : ?>
19
  <span><?php echo $this -> Html -> timthumb_image_src($full_image_href[0], $options['width'], $options['height'], 100); ?></span>
20
  <?php else : ?>
21
  <span><?php echo $full_image_href[0]; ?></span>
22
  <?php endif; ?>
23
+ <p><?php echo stripslashes($slide -> post_content); ?></p>
24
  <?php $thumbnail_link = wp_get_attachment_image_src($slide -> ID, 'thumbnail', false); ?>
25
  <?php if ($options['showthumbs'] == "true") : ?>
26
  <?php if (!empty($slide -> guid)) : ?>
33
  <?php endif; ?>
34
  </li>
35
  <?php endforeach; ?>
36
+ <!-- Shopping Cart plugin products http://tribulant.com/plugins/view/10/wordpress-shopping-cart-plugin -->
37
+ <?php elseif ($products) : ?>
38
+ <?php foreach ($slides as $slide) : ?>
39
+ <li>
40
+ <h3><?php echo stripslashes($slide -> title); ?></h3>
41
+ <?php if ($options['layout'] != "responsive" && $options['resizeimages'] == "true" && $options['width'] != "auto") : ?>
42
+ <span><?php echo $this -> Html -> timthumb_image_src($slide -> image_url, $options['width'], $options['height'], 100); ?></span>
43
+ <?php else : ?>
44
+ <span><?php echo site_url() . '/' . $slide -> image_url; ?></span>
45
+ <?php endif; ?>
46
+ <p><?php echo substr(stripslashes($slide -> description), 0, 255); ?></p>
47
+ <?php if ($options['showthumbs'] == "true") : ?>
48
+ <?php if (!empty($slide -> post_id)) : ?>
49
+ <a href="<?php echo get_permalink($slide -> post_id); ?>" target="_self" title="<?php echo esc_attr($slide -> title); ?>"><img src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_url, $this -> get_option('thumbwidth'), $this -> get_option('thumbheight'), 100); ?>" /></a>
50
+ <?php else : ?>
51
+ <a><img src="<?php echo $this -> Html -> timthumb_image_src($slide -> image_url, $this -> get_option('thumbwidth'), $this -> get_option('thumbheight'), 100); ?>" /></a>
52
+ <?php endif; ?>
53
+ <?php else : ?>
54
+ <a href="<?php echo get_permalink($slide -> post_id); ?>" target="_self" title="<?php echo esc_attr($slide -> title); ?>"></a>
55
+ <?php endif; ?>
56
+ </li>
57
+ <?php endforeach; ?>
58
  <!-- From all slides or gallery slides -->
59
  <?php else : ?>
60
  <?php foreach ($slides as $slide) : ?>
61
  <li>
62
  <h3><?php echo $slide -> title; ?></h3>
63
+ <?php if ($options['layout'] != "responsive" && $options['resizeimages'] == "true" && $options['width'] != "auto") : ?>
64
  <span><?php echo $this -> Html -> timthumb_image_src($slide -> image_path, $options['width'], $options['height'], 100); ?></span>
65
  <?php else : ?>
66
  <span><?php echo $this -> Html -> image_url($slide -> image); ?></span>
88
 
89
  <div id="<?php echo $wrapperid; ?>">
90
  <?php if ($options['showthumbs'] == "true" && $options['thumbsposition'] == "top") : ?>
91
+ <div id="thumbnails<?php echo $unique; ?>" class="thumbstop">
92
+ <div id="slideleft<?php echo $unique; ?>" title="<?php _e('Slide Left', $this -> plugin_name); ?>"></div>
93
+ <div id="slidearea<?php echo $unique; ?>">
94
+ <div id="slider<?php echo $unique; ?>"></div>
95
  </div>
96
+ <div id="slideright<?php echo $unique; ?>" title="<?php _e('Slide Right', $this -> plugin_name); ?>"></div>
97
  <br style="clear:both; visibility:hidden; height:1px;" />
98
  </div>
99
  <?php endif; ?>
100
 
101
+ <div id="fullsize<?php echo $unique; ?>">
102
  <?php $navb = false; $navf = false; ?>
103
  <?php if ($options['shownav'] == "true" && count($slides) > 1) : ?>
104
  <?php $navb = "imgprev"; ?>
105
+ <div id="imgprev<?php echo $unique; ?>" class="imgnav" title="<?php _e('Previous Image', $this -> plugin_name); ?>"></div>
106
  <?php endif; ?>
107
+ <div id="imglink<?php echo $unique; ?>" class="imglink"><!-- link --></div>
108
  <?php if ($options['shownav'] == "true" && count($slides) > 1) : ?>
109
  <?php $navf = "imgnext"; ?>
110
+ <div id="imgnext<?php echo $unique; ?>" class="imgnav" title="<?php _e('Next Image', $this -> plugin_name); ?>"></div>
111
  <?php endif; ?>
112
+ <div id="image<?php echo $unique; ?>"></div>
113
  <?php if ($options['showinfo'] == "true") : ?>
114
+ <div id="information<?php echo $unique; ?>">
115
  <h3></h3>
116
  <p></p>
117
  </div>
119
  </div>
120
 
121
  <?php if ($options['showthumbs'] == "true" && $options['thumbsposition'] == "bottom") : ?>
122
+ <div id="thumbnails<?php echo $unique; ?>" class="thumbsbot">
123
+ <div id="slideleft<?php echo $unique; ?>" title="<?php _e('Slide Left', $this -> plugin_name); ?>"></div>
124
+ <div id="slidearea<?php echo $unique; ?>">
125
+ <div id="slider<?php echo $unique; ?>"></div>
126
  </div>
127
+ <div id="slideright<?php echo $unique; ?>" title="<?php _e('Slide Right', $this -> plugin_name); ?>"></div>
128
  <br style="clear:both; visibility:hidden; height:1px;" />
129
  </div>
130
  <?php endif; ?>
132
 
133
  <script type="text/javascript">
134
  jQuery.noConflict();
135
+ tid('slideshow<?php echo $unique; ?>').style.display = "none";
136
  tid('<?php echo $wrapperid; ?>').style.display = 'block';
137
  tid('<?php echo $wrapperid; ?>').style.visibility = 'hidden';
138
+ jQuery("#fullsize<?php echo $unique; ?>").append('<div id="spinner<?php echo $unique; ?>"><img src="<?php echo $this -> url(); ?>/images/spinner.gif"></div>');
139
+ tid('spinner<?php echo $unique; ?>').style.visibility = 'visible';
140
 
141
+ var slideshow<?php echo $unique; ?> = new TINY.slideshow("slideshow<?php echo $unique; ?>");
142
  jQuery(document).ready(function() {
143
+ <?php if (empty($options['auto']) || (!empty($options['auto']) && $options['auto'] == "true")) : ?>slideshow<?php echo $unique; ?>.auto = true;<?php else : ?>slideshow<?php echo $unique; ?>.auto = false;<?php endif; ?>
144
+ slideshow<?php echo $unique; ?>.speed = <?php echo $options['autospeed']; ?>;
145
+ slideshow<?php echo $unique; ?>.alwaysauto = <?php echo $options['alwaysauto']; ?>;
146
+ slideshow<?php echo $unique; ?>.imgSpeed = <?php echo $options['fadespeed']; ?>;
147
+ slideshow<?php echo $unique; ?>.navOpacity = <?php echo $options['navopacity']; ?>;
148
+ slideshow<?php echo $unique; ?>.navHover = <?php echo $options['navhoveropacity']; ?>;
149
+ slideshow<?php echo $unique; ?>.letterbox = "#000000";
150
+ slideshow<?php echo $unique; ?>.linkclass = "linkhover";
151
+ slideshow<?php echo $unique; ?>.info = "<?php echo ($options['showinfo'] == "true") ? 'information' . $unique : ''; ?>";
152
+ slideshow<?php echo $unique; ?>.infoSpeed = <?php echo $options['infospeed']; ?>;
153
+ slideshow<?php echo $unique; ?>.thumbs = "<?php echo ($options['showthumbs'] == "true") ? 'slider' . $unique : ''; ?>";
154
+ slideshow<?php echo $unique; ?>.thumbOpacity = <?php echo $this -> get_option('thumbopacity'); ?>;
155
+ slideshow<?php echo $unique; ?>.left = "slideleft<?php echo $unique; ?>";
156
+ slideshow<?php echo $unique; ?>.right = "slideright<?php echo $unique; ?>";
157
+ slideshow<?php echo $unique; ?>.scrollSpeed = <?php echo $options['thumbsspeed']; ?>;
158
+ slideshow<?php echo $unique; ?>.spacing = <?php echo (empty($options['thumbsspacing'])) ? '0' : $options['thumbsspacing']; ?>;
159
+ slideshow<?php echo $unique; ?>.active = "<?php echo $options['thumbsborder']; ?>";
160
+ slideshow<?php echo $unique; ?>.imagesthickbox = "<?php echo $options['imagesoverlay']; ?>";
161
+ jQuery("#spinner<?php echo $unique; ?>").remove();
162
+ slideshow<?php echo $unique; ?>.init("slideshow<?php echo $unique; ?>","image<?php echo $unique; ?>","<?php echo $navb . $unique; ?>","<?php echo $navf . $unique; ?>","imglink<?php echo $unique; ?>");
163
+ tid('<?php echo $wrapperid; ?>').style.visibility = 'visible';
164
+ jQuery(window).trigger('resize');
165
  });
166
+
167
+ <?php if ($options['layout'] == "responsive" && $options['resheighttype'] == "%") : ?>
168
+ jQuery(window).resize(function() {
169
+ var width = jQuery('#<?php echo $wrapperid; ?>').width();
170
+ var resheight = <?php echo $options['resheight']; ?>;
171
+ var height = Math.round(((resheight / 100) * width));
172
+ jQuery('#fullsize<?php echo $unique; ?>').height(height);
173
+ });
174
+ <?php endif; ?>
175
  </script>
176
 
177
  <?php
178
 
179
+ $cssattr['unique'] = $unique;
180
  $cssattr['wrapperid'] = $wrapperid;
181
  $cssattr['resizeimages'] = (($options['resizeimages'] == "true") ? "Y" : "N");
182
  $cssattr['width'] = $options['width'];
183
  $cssattr['height'] = $options['height'];
184
  $cssattr['thumbwidth'] = $this -> get_option('thumbwidth');
185
  $cssattr['thumbheight'] = $this -> get_option('thumbheight');
186
+ $cssattr['sliderwidth'] = ((($cssattr['thumbwidth'] + ($options['thumbsspacing'] * 2) + 5) * count($slides)));
187
 
188
  ?>
189
 
190
  <style type="text/css">
191
+ @import url('<?php echo $this -> get_css_url($cssattr, $options['layout']); ?>');
192
  </style>
193
 
194
  <!--[if IE 6]>
{images → views/default/images}/left.gif RENAMED
File without changes
{images → views/default/images}/link.gif RENAMED
File without changes
{images → views/default/images}/right.gif RENAMED
File without changes
{images → views/default/images}/scroll-left.gif RENAMED
File without changes
{images → views/default/images}/scroll-right.gif RENAMED
File without changes
{images → views/default/images}/spinner.gif RENAMED
File without changes