1 | /************************************************************************************ |
---|
2 | * * |
---|
3 | * * |
---|
4 | * Slide - v2.0 - 2013-10-01 * |
---|
5 | * http://piwitheme.fr/ * |
---|
6 | * * |
---|
7 | * * |
---|
8 | *************************************************************************************/ |
---|
9 | |
---|
10 | (function($) { |
---|
11 | //_________________________________________________________________________________________________________________________________ |
---|
12 | //|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| |
---|
13 | |
---|
14 | $(document).ready(function(){ |
---|
15 | $('body').prepend($('<div />').attr({'class':'tab','id':'tab-0','data-urltab':window.location}).append($('<div />').attr('class','sld_tab'))).wrapInner($('<div />').attr({'class':'pageslide','id':'layer-0'})); |
---|
16 | $('.pageslide').first().show(); |
---|
17 | var $w_w = $(window).width(), |
---|
18 | $w_h = $(window).height(), |
---|
19 | $tab = 40, |
---|
20 | i = 0, |
---|
21 | $layerShow = $('#layer-0'), |
---|
22 | $slideshow = []; |
---|
23 | |
---|
24 | $('body').append($('<div />').attr('id','slideLoading').css({top:(($w_h/2)-50),left:(($w_w/2)-50)})); |
---|
25 | $('body').data('layerShow',$layerShow); |
---|
26 | _init_page() |
---|
27 | |
---|
28 | $(document).on('click','.slide', function(e) { |
---|
29 | var $url = $(this).attr('href'); |
---|
30 | |
---|
31 | $int = setTimeout(function() { |
---|
32 | $('#slideLoading').css('z-index',1000) |
---|
33 | }, 500); |
---|
34 | i++; |
---|
35 | |
---|
36 | _load($url); |
---|
37 | _pushstate($url); |
---|
38 | |
---|
39 | e.preventDefault(); |
---|
40 | }); |
---|
41 | |
---|
42 | $(document).on('click','.sameLayer', function(e) { |
---|
43 | var $href = $(this).attr('href'), |
---|
44 | $layerShow = $('body').data('layerShow'), |
---|
45 | $url = $href + ' #the_page', |
---|
46 | $slide_w = $layerShow.width(); |
---|
47 | |
---|
48 | _pushstate($href); |
---|
49 | |
---|
50 | if ($('.slshFirst').length){ |
---|
51 | $urlFirst = $('.slshFirst').attr('href') |
---|
52 | } else { |
---|
53 | $urlFirst = $href |
---|
54 | }; |
---|
55 | |
---|
56 | $('#the_page',$layerShow).addClass('unwrap').load($url, function(){ |
---|
57 | _init_page($urlFirst,$slide_w) |
---|
58 | $('.unwrap').children().unwrap(); |
---|
59 | }); |
---|
60 | |
---|
61 | e.preventDefault(); |
---|
62 | }); |
---|
63 | |
---|
64 | $(document).on('click','.tab', function(e) { |
---|
65 | _close( $(this) ); |
---|
66 | var $url = $(this).data('urltab'); |
---|
67 | _pushstate($url); |
---|
68 | }); |
---|
69 | |
---|
70 | $(document).on('submit','#quicksearch', function(e) { |
---|
71 | i++; |
---|
72 | var $val = $('#qsearchInput').attr('value'), |
---|
73 | $url = 'qsearch.php?q='+ $val, |
---|
74 | frame = $("<iframe />").attr({src: $url,id: 'frame'}).css({display:'none'}); |
---|
75 | |
---|
76 | $('body').append(frame); |
---|
77 | |
---|
78 | setTimeout( function () { |
---|
79 | var $obj = $("#frame").contents(), |
---|
80 | $urlframe = $obj[0].location.href; |
---|
81 | $('#frame').pushstate($urlframe); |
---|
82 | $('#frame').remove() |
---|
83 | }, |
---|
84 | 1000); |
---|
85 | |
---|
86 | _load($url); |
---|
87 | $(this).attr('value', qsearch_prompt); |
---|
88 | |
---|
89 | e.preventDefault(); |
---|
90 | }); |
---|
91 | |
---|
92 | // Picture page rating |
---|
93 | $(document).on('mouseover','.rateButton',function(){ |
---|
94 | $('#rateForm input').each(function(){ |
---|
95 | $(this).removeClass('rateButtonFull').removeClass('rateButtonSelected'); |
---|
96 | }); |
---|
97 | $(this).addClass('rateButtonFull'); |
---|
98 | var rate = $(this).attr('title'), |
---|
99 | nth = ':nth-child(-n+' + rate + ')'; |
---|
100 | $('.rateButton' + nth).addClass('rateButtonFull'); |
---|
101 | }); |
---|
102 | |
---|
103 | $(document).on('mouseout','#rateForm',function(){ |
---|
104 | $('#rateForm input').each(function(){ |
---|
105 | $(this).removeClass('rateButtonFull').addClass('rateButton'); |
---|
106 | }); |
---|
107 | $('#rateForm input[type="button"]').addClass('rateButtonSelected'); |
---|
108 | _rate_star() |
---|
109 | }); |
---|
110 | |
---|
111 | $(document).on('click','.rateButton', function(e){ |
---|
112 | var form = $(this).parents('form'), |
---|
113 | hrefa = form.attr('action'), |
---|
114 | hrefm = form.attr('method'), |
---|
115 | rate = $(this).attr('title'), |
---|
116 | rate = 'rate=' + rate; |
---|
117 | $.ajax({ |
---|
118 | url : hrefa, |
---|
119 | type : hrefm, |
---|
120 | data : rate, |
---|
121 | success : function(){ |
---|
122 | hrefa = hrefa.substring(0,hrefa.indexOf('&')); |
---|
123 | hrefInf = hrefa + ' #imageInfos'; |
---|
124 | $('#imageInfos').addClass('unwrap').load(hrefInf,function(){ |
---|
125 | _rate_star(); |
---|
126 | _imageInfo(); |
---|
127 | $('.unwrap').children().unwrap(); |
---|
128 | }); |
---|
129 | } |
---|
130 | }); |
---|
131 | e.preventDefault(); |
---|
132 | }); |
---|
133 | |
---|
134 | //switchbox derivative |
---|
135 | $(document).on('click','.derivative', function(){ |
---|
136 | var url = $(this).data('url'), |
---|
137 | typeSave = $(this).data('typesave'), |
---|
138 | typeMap = $(this).data('typemap'), |
---|
139 | cookies = $(this).data('cookie') |
---|
140 | theImg = $('#theMainImage'); |
---|
141 | theImg.attr({'width':'' ,'height':'', 'src': url , 'useMap': '#map' + typeMap}); |
---|
142 | $('#derivativeSwitchBox .switchCheck').css('visibility','hidden'); |
---|
143 | $('#derivativeChecked' + typeSave).css('visibility','visible'); |
---|
144 | document.cookie = 'picture_deriv='+typeSave+';path=cookies'; |
---|
145 | }); |
---|
146 | |
---|
147 | $(document).on('click','.original',function(){ |
---|
148 | var theURL = $(this).data('url'), |
---|
149 | winName = $(this).data('winname'), |
---|
150 | features = $(this).data('features'); |
---|
151 | $.getScript('./themes/default/js/scripts.js', function(){ |
---|
152 | phpWGOpenWindow(theURL,winName,features) |
---|
153 | }); |
---|
154 | }); |
---|
155 | |
---|
156 | $(document).on('click','.privacy', function(){ |
---|
157 | var rootUrl = $(this).data('root'), |
---|
158 | id = $(this).data('id'), |
---|
159 | level = $(this).data('level'); |
---|
160 | setPrivacyLevel(rootUrl, id, level); |
---|
161 | }); |
---|
162 | |
---|
163 | //add comment |
---|
164 | $(document).on('click', '#addComment input[type=submit]', function(e){ |
---|
165 | $(this).valid_comment(); |
---|
166 | e.preventDefault(); |
---|
167 | }); |
---|
168 | $(document).on('click', '#editComment input[type=submit]', function(e){ |
---|
169 | $(this).valid_comment(); |
---|
170 | e.preventDefault(); |
---|
171 | }); |
---|
172 | |
---|
173 | // removal/edit comment |
---|
174 | $(document).on('click', '.actions a', function(e){ |
---|
175 | var $a = $(this); |
---|
176 | if($a.hasClass('delet')){ |
---|
177 | var $confi = $a.attr('confirm'); |
---|
178 | if (confirm($confi)) { |
---|
179 | _rem_ed($a); |
---|
180 | }; |
---|
181 | } |
---|
182 | _rem_ed($a); |
---|
183 | e.preventDefault(); |
---|
184 | }); |
---|
185 | |
---|
186 | //Change the order of comments |
---|
187 | $(document).on('click', '.commentsOrder', function(e){ |
---|
188 | var $a = $(this); |
---|
189 | _rem_ed($a); |
---|
190 | e.preventDefault(); |
---|
191 | }); |
---|
192 | |
---|
193 | //edit profil |
---|
194 | $(document).on('click', '#profile input[name=reset_to_default]', function(e){ |
---|
195 | var $profil = $('#profile'), |
---|
196 | $profilhref = $profil.attr('action'), |
---|
197 | $profilmet = $profil.attr('method'), |
---|
198 | $profilser = $profil.serialize(), |
---|
199 | $profilval = $(this).attr('value'), |
---|
200 | $profilnam = $(this).attr('name'), |
---|
201 | $data = $profilser + '&' + $profilnam + '=' + $profilval; |
---|
202 | $.ajax({ |
---|
203 | url : $profilhref, |
---|
204 | type : $profilmet, |
---|
205 | data : $data, |
---|
206 | success : function(html) { |
---|
207 | var $content = $(html).find('#profile'); |
---|
208 | $profil.replaceWith($content) |
---|
209 | } |
---|
210 | }); |
---|
211 | e.preventDefault(); |
---|
212 | }); |
---|
213 | |
---|
214 | // search page |
---|
215 | $(document).on('submit', '.theSearchPage .filter', function(e){ |
---|
216 | var $sch = $('.filter'), |
---|
217 | $schmet = $sch.attr('method'), |
---|
218 | $schser = $sch.serialize(), |
---|
219 | $schhref = $sch.attr('action'); |
---|
220 | $schser = $schser+"&submit=Valide"; |
---|
221 | $.ajax({ |
---|
222 | url : $schhref, |
---|
223 | type : $schmet, |
---|
224 | data : $schser, |
---|
225 | success : function(html){ |
---|
226 | var $e = $(html).find('.errors'); |
---|
227 | if($e.leng$th){ |
---|
228 | var $inf = $e.text(); |
---|
229 | _message($inf); |
---|
230 | } else { |
---|
231 | var $href = $(html).find('.titrePage h2 a:nth-child(2)').attr('href'), |
---|
232 | $layerShow = $('body').data('layerShow'), |
---|
233 | $url = $href + ' #the_page'; |
---|
234 | $('#the_page', $layerShow).addClass('unwrap').load($url,function(){ |
---|
235 | _init_page(); |
---|
236 | $('.unwrap').children().unwrap(); |
---|
237 | }); |
---|
238 | }; |
---|
239 | } |
---|
240 | }); |
---|
241 | e.preventDefault(); |
---|
242 | }); |
---|
243 | |
---|
244 | //comment page |
---|
245 | $(document).on('submit', '.theCommentsPage .filter', function(e){ |
---|
246 | var $com = $('.filter'), |
---|
247 | $commet = $com.attr('method'), |
---|
248 | $comser = $com.serialize(), |
---|
249 | $comhref = $com.attr('action'); |
---|
250 | $.ajax({ |
---|
251 | url : $comhref, |
---|
252 | type : $commet, |
---|
253 | data : $comser, |
---|
254 | success : function(html){ |
---|
255 | var $layerShow = $('body').data('layerShow'), |
---|
256 | $comfilt = $(html).find('#content'); |
---|
257 | $('#content', $layerShow).replaceWith($comfilt); |
---|
258 | } |
---|
259 | }); |
---|
260 | e.preventDefault(); |
---|
261 | }); |
---|
262 | |
---|
263 | //switchBox |
---|
264 | var $optbox = [ {li : '#sortOrderLink', box : '#sortOrderBox'}, |
---|
265 | {li : '#derivativeSwitchLink' , box : '#derivativeSwitchBox'}, |
---|
266 | {li : '#privacyLevelLink' , box : '#privacyLevelBox'}, |
---|
267 | {li : '#calendarViewSwitchLink' , box : '#calendarViewSwitchBox'} |
---|
268 | ]; |
---|
269 | $.each($optbox, function(i, a){ |
---|
270 | $(document).on('click', a.li , function(e) { |
---|
271 | var $layerShow = $('body').data('layerShow'), |
---|
272 | $ele = $( a.box , $layerShow), |
---|
273 | ePos = $(this).position(), |
---|
274 | ePos_h = $(this).height(); |
---|
275 | if ($ele.is(":hidden")){ |
---|
276 | var left = (ePos.left) + 'px', |
---|
277 | top = (ePos.top + ePos_h) + 'px'; |
---|
278 | $ele.css({left: left , top: top }).show(); |
---|
279 | } |
---|
280 | e.preventDefault(); |
---|
281 | }); |
---|
282 | $(document).on('mouseleave', a.box, function() { |
---|
283 | $(this).hide(); |
---|
284 | }); |
---|
285 | }); |
---|
286 | |
---|
287 | //_____function SLIDE______________________________________________________________________________________________________________________________________________ |
---|
288 | function _init_page($urlFirst,$slide_w) { |
---|
289 | var $layerShow = $('body').data('layerShow'); |
---|
290 | _selectPageSlide(); |
---|
291 | _display_menu(); |
---|
292 | _titre_page(); |
---|
293 | _scrollbar(); |
---|
294 | _content_size(); |
---|
295 | _piwitheme_link(); |
---|
296 | _dragbar_tabs(); |
---|
297 | if($('#the_page',$layerShow).hasClass('thePicturePage')){ |
---|
298 | _rate_star(); |
---|
299 | _imageInfo() |
---|
300 | }; |
---|
301 | if($('#the_page',$layerShow).hasClass('EC_drag')||$('#the_page',$layerShow).hasClass('EC_tictac')){ |
---|
302 | _ECaptcha(); |
---|
303 | }; |
---|
304 | if($('#slideshow').length){ |
---|
305 | $('#theHeader', $layerShow).remove(); |
---|
306 | _load_slideshow($urlFirst, $slide_w); |
---|
307 | |
---|
308 | }; |
---|
309 | if($('body').hasClass('lightbox')||$('body').hasClass('lightboxReady')) { |
---|
310 | _lightbox() |
---|
311 | }; |
---|
312 | if($('body').hasClass('GThumb')||$('body').hasClass('GThumbReady')) { |
---|
313 | _GThumb() |
---|
314 | }; |
---|
315 | if($('body').hasClass('MyPiwiShop')||$('body').hasClass('MyPiwiShopReady')) { |
---|
316 | _MyPiwiShop() |
---|
317 | }; |
---|
318 | |
---|
319 | }; |
---|
320 | |
---|
321 | function _load( $url ) { |
---|
322 | var $z = (100 / i).toFixed(), |
---|
323 | $tab = 40 * i, |
---|
324 | $pageslide_w = $w_w - $tab, |
---|
325 | $href = $url + ' #the_page'; |
---|
326 | |
---|
327 | $('body').append($('<div />').attr('class','pageslide').css({ left: 'auto', right: '-' + $w_w + 'px' })); |
---|
328 | $('.pageslide').attr('id', function(i){ |
---|
329 | return "layer-" + i; |
---|
330 | }); |
---|
331 | |
---|
332 | var $layerPrev = $('#layer-' + (i - 1)), |
---|
333 | $layerShow = $('#layer-' + i); |
---|
334 | |
---|
335 | $layerShow.css({'z-index' : $z, |
---|
336 | width : $pageslide_w +'px' |
---|
337 | }) |
---|
338 | $('body').data('layerShow',$layerShow); |
---|
339 | $('body').data('layerPrev',$layerPrev); |
---|
340 | $('body').data( 'i',i); |
---|
341 | $layerShow.load( $href, function(){ |
---|
342 | $layerPrev .css({right:'auto'}) |
---|
343 | .animate({marginLeft: - $pageslide_w + ((i - 1) * 40)}, 1000); |
---|
344 | $layerShow .show() |
---|
345 | .animate({right: 0}, 1000) |
---|
346 | .prepend($('<div />') |
---|
347 | .attr({'class':'tab','id':'tab-0','data-urltab':window.location}) |
---|
348 | .append($('<div />').attr('class','sld_tab'))); |
---|
349 | $('.tab').attr('id', function(i){ |
---|
350 | return "tab-" + i; |
---|
351 | }); |
---|
352 | $('#slideLoading').css('z-index',0); |
---|
353 | clearTimeout($int); |
---|
354 | _init_page($url, $pageslide_w) |
---|
355 | }); |
---|
356 | }; |
---|
357 | |
---|
358 | function _selectPageSlide(){ |
---|
359 | var $layerShow = $('body').data('layerShow'), |
---|
360 | $a = [ '#menu_start a', |
---|
361 | '.navigationBar a', |
---|
362 | '.calendarBar a', |
---|
363 | '.calendarCalBar a', |
---|
364 | '.navigationButtons a', |
---|
365 | '#imageHeaderBar a', |
---|
366 | '.calImg a', |
---|
367 | '.date_today', |
---|
368 | '#sortOrderLink', |
---|
369 | '#sortOrderBox a', |
---|
370 | '#derivativeSwitchBox a', |
---|
371 | '#derivativeSwitchLink', |
---|
372 | '.actionButtons a', |
---|
373 | '.actions a', |
---|
374 | '.navThumb', |
---|
375 | '.calendarTitle a', |
---|
376 | '#linkToPiwigo a', |
---|
377 | '#copyright a', |
---|
378 | '#languageSwitchLink', |
---|
379 | '#languageSwitchBox a', |
---|
380 | '#theHeader a', |
---|
381 | '#myHomePage a', |
---|
382 | '#mbAdditionalPages a', |
---|
383 | '#photosAddContent a', |
---|
384 | '.amm-MenuBar-links-icons a', |
---|
385 | '.commentsOrder', |
---|
386 | '#calendarViewSwitchLink', |
---|
387 | '#calendarViewSwitchBox a', |
---|
388 | '#ato_header a', |
---|
389 | '#ato_header_closed a', |
---|
390 | 'a[rel=colorbox0]' |
---|
391 | ], |
---|
392 | $b = [ '.pwg-icon-letters', |
---|
393 | '.pwg-icon-cloud', |
---|
394 | '.pwg-icon-help', |
---|
395 | '.pwg-icon-calendar', |
---|
396 | '.pwg-icon-camera-calendar', |
---|
397 | '.pwg-icon-favorite-del', |
---|
398 | '.pwg-icon-caddie-add', |
---|
399 | '.pwg-icon-category-view-flat', |
---|
400 | '.pwg-icon-category-view-normal', |
---|
401 | '#thePicturePage .pwg-icon-slideshow', |
---|
402 | '#thePicturePage .pwg-icon-camera-info', |
---|
403 | '#thePicturePage .pwg-icon-save', |
---|
404 | '#thePicturePage .pwg-icon-favorite-add', |
---|
405 | '#thePicturePage .pwg-icon-representative', |
---|
406 | '#thePicturePage .pwg-icon-edit', |
---|
407 | '.pwg-icon-category-edit' |
---|
408 | ], |
---|
409 | $c = [ '.description_stuffs .zero nb-comments', |
---|
410 | '.description_stuffs .nb-hits', |
---|
411 | '.description_stuffs .nb-comments' |
---|
412 | ], |
---|
413 | $d = [ '.pwg-icon-arrow-n' |
---|
414 | ], |
---|
415 | $e = [ '#linkToPiwigo a', |
---|
416 | '#copyright a' |
---|
417 | ], |
---|
418 | $f = [ '.navigationButtons a', |
---|
419 | '.navThumbs a', |
---|
420 | '.navigationBar a', |
---|
421 | '#derivativeSwitchBox a', |
---|
422 | '#sortOrderBox a', |
---|
423 | '#theMainImage map area a', |
---|
424 | '#calendarViewSwitchBox a', |
---|
425 | '.calImg a', |
---|
426 | ]; |
---|
427 | $g = [ '.pwg-icon-caddie-add', |
---|
428 | '.pwg-icon-category-view-normal', |
---|
429 | '.pwg-icon-calendar', |
---|
430 | '.pwg-icon-camera-calendar' |
---|
431 | ]; |
---|
432 | |
---|
433 | if($('body').hasClass('withlightbox')) { |
---|
434 | $a.push('.illustration a'); |
---|
435 | }; |
---|
436 | |
---|
437 | $.each($a, function(i,e) { |
---|
438 | $(e, $layerShow).addClass('noSlide') |
---|
439 | }); |
---|
440 | $.each($b, function(i,e) { |
---|
441 | $(e, $layerShow).parent().addClass('noSlide') |
---|
442 | }); |
---|
443 | $.each($c,function(i,e) { |
---|
444 | $(e, $layerShow).remove() |
---|
445 | }); |
---|
446 | $.each($d,function(i,e) { |
---|
447 | $(e, $layerShow).parent().remove() |
---|
448 | }); |
---|
449 | $.each($e,function(i,e) { |
---|
450 | $(e, $layerShow).attr('target','blank') |
---|
451 | }); |
---|
452 | $.each($f, function(i,e) { |
---|
453 | $(e, $layerShow).addClass('sameLayer') |
---|
454 | }); |
---|
455 | $.each($g, function(i,e) { |
---|
456 | $(e, $layerShow).parent().addClass('sameLayer') |
---|
457 | }); |
---|
458 | |
---|
459 | $('a:not(.noSlide)', $layerShow).addClass('slide'); |
---|
460 | $('#layer-0 ').find('.sameLayer').removeClass('sameLayer'); |
---|
461 | |
---|
462 | $('.stuffs_block .illustration .description', $layerShow).removeClass('description').addClass('description_stuffs'); |
---|
463 | $('.titrePage + div', $layerShow).addClass('blockConteneur'); |
---|
464 | $('.myHomePage_links a[href="index.php?/contact"]', $layerShow).addClass('slide'); |
---|
465 | }; |
---|
466 | |
---|
467 | function _titre_page() { |
---|
468 | var $layerShow = $('body').data('layerShow'), |
---|
469 | $titre = $('#content .titrePage h2',$layerShow).first().text(), |
---|
470 | $titre = $titre.substring($titre.lastIndexOf("/")).replace("/",""); |
---|
471 | $('#content .titrePage h2',$layerShow).first().replaceWith("<h2>"+ $titre +"</h2>"); |
---|
472 | |
---|
473 | if (($titre.indexOf("[")>=0)) { |
---|
474 | var $titreTab = $titre.substring(0,$titre.indexOf("[",1)); |
---|
475 | }else{ |
---|
476 | var $titreTab = $titre; |
---|
477 | }; |
---|
478 | $('.sld_tab',$layerShow).text($titreTab); |
---|
479 | |
---|
480 | $('.browsePath a',$layerShow).remove(); |
---|
481 | var $titre = $('.browsePath',$layerShow).text(), |
---|
482 | $titre = $titre.substring($titre.lastIndexOf("/")).replace("/","").replace("[","").replace("]",""); |
---|
483 | $('.browsePath',$layerShow).replaceWith("<h2>"+ $titre +"</h2>"); |
---|
484 | }; |
---|
485 | |
---|
486 | function _scrollbar() { |
---|
487 | var $layerShow = $('body').data('layerShow'), |
---|
488 | $settings = { verticalDragMinHeight: 100, |
---|
489 | verticalDragMaxHeight: 100, |
---|
490 | autoReinitialise: true |
---|
491 | }; |
---|
492 | var $pane = $('.scrollpane', $layerShow).jScrollPane($settings); |
---|
493 | }; |
---|
494 | |
---|
495 | function _display_menu() { |
---|
496 | var $layerShow = $('body').data('layerShow'); |
---|
497 | if($layerShow.attr('id') != ('layer-0')) { |
---|
498 | $layerShow.find('#menubar').remove(); |
---|
499 | $layerShow.find('#theHeader').addClass('headbord') |
---|
500 | }; |
---|
501 | $('#theIdentificationPage #menu').remove(); |
---|
502 | }; |
---|
503 | |
---|
504 | function _content_size(){ |
---|
505 | var $layerShow = $('body').data('layerShow'), |
---|
506 | $headerH = $('#theHeader', $layerShow).height(), |
---|
507 | $headerBar = $('.imageHeaderBar', $layerShow).height(), |
---|
508 | $copyright = $('#copyright', $layerShow).height(), |
---|
509 | $imageToolBar = $('.imageToolBar', $layerShow).height() |
---|
510 | $w_mh = $(window).height() - ($headerH + $headerBar + $copyright +$imageToolBar + 50 ) + 'px'; |
---|
511 | $('#content',$layerShow).css({minHeight: $w_mh}); |
---|
512 | }; |
---|
513 | |
---|
514 | function _piwitheme_link(){ |
---|
515 | var $layerShow = $('body').data('layerShow'); |
---|
516 | var $link = ' - theme by <a href="http://piwitheme.fr" target="_blank">piwitheme</a>'; |
---|
517 | $('#copyright', $layerShow).append($link); |
---|
518 | }; |
---|
519 | |
---|
520 | function _rate_star(){ |
---|
521 | $('.rateButton').attr('value',''); |
---|
522 | if ($('.rateButton [type="button"]').length){ |
---|
523 | var rate = $('.rateButtonSelected').attr('title'), |
---|
524 | nth = ':nth-child(-n+' + rate + ')'; |
---|
525 | $('.rateButton' + nth).addClass('rateButtonFull'); |
---|
526 | } |
---|
527 | } |
---|
528 | |
---|
529 | function _imageInfo() { |
---|
530 | $('.imageInfo a').each(function(){ |
---|
531 | var text = $(this).text(); |
---|
532 | $(this).wrap($('<span />').html(text)).remove(); |
---|
533 | }) |
---|
534 | }; |
---|
535 | |
---|
536 | function _load_slideshow($href,$slideW) { |
---|
537 | $('#slideshow').empty().addClass('slideloader'); |
---|
538 | if (!$('#slideshow').hasClass('slideshowReady')) { |
---|
539 | $.getScript('themes/Slide/js/slideshow.js', function(){ |
---|
540 | $('#slideshow').addClass('slideshowReady'); |
---|
541 | }); |
---|
542 | }; |
---|
543 | |
---|
544 | $.ajax({ |
---|
545 | url : $href, |
---|
546 | success : function(html){ |
---|
547 | var $next = $(html).find('.pwg-button-icon-right').attr('href'), |
---|
548 | $title = $(html).find('#imageHeaderBar h2').text(), |
---|
549 | $img = $(html).find('#theImage #imgContent').data('src'), |
---|
550 | $img_h = $(html).find('#theImage #imgContent').data('height'), |
---|
551 | $img_w = $(html).find('#theImage #imgContent').data('width'); |
---|
552 | |
---|
553 | _stock_img($img,$title,$img_h,$img_w); |
---|
554 | if(typeof $next != "undefined"){ |
---|
555 | _load_slideshow($next,$slideW) |
---|
556 | }else{ |
---|
557 | $('#slideshow').removeClass('slideloader').slideshow({ |
---|
558 | imgs : $slideshow, |
---|
559 | autoPlay : true, |
---|
560 | speed : 3000, |
---|
561 | height : $w_h, |
---|
562 | width : $slideW - 40, |
---|
563 | navType : 'thumb', |
---|
564 | styleSlideshow : 'Fade', |
---|
565 | thumb_always : false, |
---|
566 | thumb_width : 100, |
---|
567 | thumb_height : 80, |
---|
568 | }) |
---|
569 | }; |
---|
570 | } |
---|
571 | }) |
---|
572 | }; |
---|
573 | |
---|
574 | function _stock_img($href,$title,$height,$width){ |
---|
575 | var $img = {src : $href , title : $title , descr : $title , height : $height , width : $width}; |
---|
576 | $slideshow.push($img); |
---|
577 | }; |
---|
578 | |
---|
579 | function _tabs_dragbar() { |
---|
580 | var $layerShow = $('body').data('layerShow'); |
---|
581 | $('.tab',$layerShow).fadeOut(1000).css("cursor","default"); |
---|
582 | $('.jspDrag',$layerShow).css("cursor","pointer"); |
---|
583 | $('.jspVerticalBar',$layerShow).fadeIn(1000) |
---|
584 | }; |
---|
585 | |
---|
586 | function _dragbar_tabs() { |
---|
587 | var $layerPrev = $('body').data('layerPrev'); |
---|
588 | if (typeof ($layerPrev) != 'undefined') { |
---|
589 | $('.tab',$layerPrev).fadeIn(1000).css("cursor","pointer"); |
---|
590 | $('.jspDrag',$layerPrev).css("cursor","default"); |
---|
591 | $('.jspVerticalBar',$layerPrev).fadeOut(1000) |
---|
592 | } |
---|
593 | }; |
---|
594 | |
---|
595 | function _close($tabClick) { |
---|
596 | var $layerBack = $tabClick.parent(), |
---|
597 | $layerShow = $('body').data('layerShow'), |
---|
598 | $newI = $layerBack.attr('id'), |
---|
599 | $newI = $newI.substring($newI.lastIndexOf("-")).replace("-",""); |
---|
600 | |
---|
601 | $('body').data('layerShow', $layerBack); |
---|
602 | _tabs_dragbar(); |
---|
603 | $layerShow.animate({left: $w_w}, 1000,function(){ |
---|
604 | if($('#slideshow').length){ |
---|
605 | var $inter = $('#slideshow').data('e').interval; |
---|
606 | $slideshow = []; |
---|
607 | clearTimeout($inter); |
---|
608 | }; |
---|
609 | $layerBack.nextAll('.pageslide').remove(); |
---|
610 | var $layerPrev = $layerBack.prev |
---|
611 | }); |
---|
612 | $layerBack.css({right:'auto'}).animate({marginLeft:($newI * 40)}, 1000); |
---|
613 | i = $newI; |
---|
614 | var $layerPrev = $('#layer-' + (i - 1)); |
---|
615 | $('body').data( 'i',i); |
---|
616 | $('body').data('layerPrev', $layerPrev) |
---|
617 | }; |
---|
618 | |
---|
619 | function _pushstate($url) { |
---|
620 | window.top.history.pushState({ key: i }, 'titre', $url) |
---|
621 | window.onpopstate = function(e){ |
---|
622 | if (!e.state || e.state.key < i) { |
---|
623 | $layerPrev = $('body').data('layerPrev'); |
---|
624 | _close($('.tab',$layerPrev)) |
---|
625 | } else { |
---|
626 | i++; |
---|
627 | var $url = window.location; |
---|
628 | _load($url); |
---|
629 | } |
---|
630 | } |
---|
631 | }; |
---|
632 | |
---|
633 | function setPrivacyLevel(rootUrl, id, level) { |
---|
634 | var y = new PwgWS(rootUrl); |
---|
635 | y.callService( |
---|
636 | "pwg.images.setPrivacyLevel", {image_id: id, level:level} , |
---|
637 | { |
---|
638 | method: "POST", |
---|
639 | onFailure: function(num, text) { alert(num + " " + text); }, |
---|
640 | onSuccess: function(result) { |
---|
641 | $('#privacyLevelBox .switchCheck').hide(); |
---|
642 | $('#levelCheck'+level).show(); |
---|
643 | } |
---|
644 | }); |
---|
645 | }; |
---|
646 | |
---|
647 | function _rem_ed(e) { |
---|
648 | var $href = e.attr('href'); |
---|
649 | $.ajax({ |
---|
650 | url : $href, |
---|
651 | success : function(html){ |
---|
652 | _comment_reload(html) |
---|
653 | } |
---|
654 | }); |
---|
655 | }; |
---|
656 | |
---|
657 | $.fn.valid_comment = function(){ |
---|
658 | var addcom = $(this).parents('form'), |
---|
659 | formp = addcom.children('p'), |
---|
660 | contid = $('#contentid'), |
---|
661 | contval = contid.val(), |
---|
662 | contlen = contid.length, |
---|
663 | aut = $('#author'), |
---|
664 | autval = aut.val(), |
---|
665 | autlen = aut.length, |
---|
666 | em = $('#email'), |
---|
667 | emval = em.val(), |
---|
668 | emlen = em.length, |
---|
669 | emregl = /^([\w-\.]+@([\w-]+\.)+[\w-]{2,4})?$/, |
---|
670 | href = addcom.attr('action'), |
---|
671 | framehref= href; |
---|
672 | formp.children().each(function(){ |
---|
673 | $(this).removeClass('requi'); |
---|
674 | }); |
---|
675 | $.ajax({ |
---|
676 | url : href, |
---|
677 | type : addcom.attr('method'), |
---|
678 | data : addcom.serialize(), |
---|
679 | error : function (xhr, ajaxOptions, thrownError) { |
---|
680 | var e = (xhr.responseText), |
---|
681 | e = e.substring(e.indexOf('<div class="errors">')), |
---|
682 | e = e.substring(e.indexOf('<li>') , e.indexOf('</ul>')), |
---|
683 | reg = new RegExp("(<li>)","g"), |
---|
684 | rege = new RegExp("(</li>)","g"), |
---|
685 | inf = e.substring(e.indexOf('<li>'),e.lastIndexOf('</li>')).replace(reg,'').replace(rege,''); |
---|
686 | _message(inf); |
---|
687 | }, |
---|
688 | success : function(html){ |
---|
689 | var inf = $(html).find('.infos li').text(); |
---|
690 | if(href.indexOf('&')>=0){href = href.substring(0,href.indexOf('&'))} |
---|
691 | _message(inf); |
---|
692 | _comment_reload(html); |
---|
693 | } |
---|
694 | }); |
---|
695 | }; |
---|
696 | |
---|
697 | function _comment_reload(html){ |
---|
698 | var $com = $(html).find('#comments'), |
---|
699 | $layerShow = $('body').data('layerShow'); |
---|
700 | $('#comments', $layerShow).replaceWith($com); |
---|
701 | }; |
---|
702 | |
---|
703 | function _message(inf) { |
---|
704 | if($('#msgBox').length==0){ |
---|
705 | $('body').append($('<div />').attr('id','msgBox').append($('<div />').attr('id','msgBoxCom'))).fadeIn(); |
---|
706 | } else { |
---|
707 | $('#msgBox').fadeIn() |
---|
708 | }; |
---|
709 | $('#msgBoxCom').text(inf); |
---|
710 | $('#msgBox').delay(5000).fadeOut(); |
---|
711 | }; |
---|
712 | |
---|
713 | }); |
---|
714 | })(jQuery); |
---|