X-Git-Url: https://scm.cri.minesparis.psl.eu/git/Portfolio.git/blobdiff_plain/e3221dd5738f0c8410573ae0980e7c8c2065b32c..e73353500c67453ef9663d67eaeee7dd46c358ee:/skins/photo_lightbox_viewer.js diff --git a/skins/photo_lightbox_viewer.js b/skins/photo_lightbox_viewer.js deleted file mode 100644 index dbea64c..0000000 --- a/skins/photo_lightbox_viewer.js +++ /dev/null @@ -1,256 +0,0 @@ -/* -* 2008-2014 Benoit Pin - MINES ParisTech -* http://plinn.org -* Licence Creative Commons http://creativecommons.org/licenses/by-nc/2.0/ -*/ - - -var Lightbox; - -(function(){ - -var reSelected = /.*selected.*/; - -Lightbox = function(grid) { - this.grid = grid; - this.lastCBChecked = undefined; - this.form = undefined; - var parent = this.grid.parentNode; - while(parent) { - parent = parent.parentNode; - if (parent.tagName === 'FORM') { - this.form = parent; - break; - } - else if (parent.tagName === 'BODY') { - break; - } - } - thisLightbox = this; - addListener(this.grid, 'click', function(evt){thisLightbox.mouseClickHandler(evt);}); - if (this.form) { - var fm = new FormManager(this.form); - fm.onBeforeSubmit = function(fm_, evt) {return thisLightbox.onBeforeSubmit(fm_, evt);}; - fm.onResponseLoad = function(req) {return thisLightbox.onResponseLoad(req);}; - } -}; - -Lightbox.prototype.mouseClickHandler = function(evt) { - var target = getTargetedObject(evt); - if (target.tagName === 'IMG') { - var img = target; - var link = target.parentNode; - var button = link.parentNode; - var slide = button.parentNode; - var req, url; - if (link.tagName === 'A') { - switch(link.getAttribute('name')) { - case 'add_to_selection': - disableDefault(evt); - link.blur(); - req = new XMLHttpRequest(); - url = link.href; - req.open("POST", url, true); - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); - req.send("ajax=1"); - - slide.className = 'selected'; - - link.setAttribute('name', 'remove_to_selection'); - link.href = url.replace(/(.*\/)add_to_selection$/, '$1remove_to_selection'); - link.title = img.alt = 'Retirer de la sélection'; - button.className = "button slide-deselect"; - break; - - case 'remove_to_selection': - disableDefault(evt); - link.blur(); - req = new XMLHttpRequest(); - url = link.href; - req.open("POST", url, true); - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); - req.send("ajax=1"); - slide.className = null; - link.setAttribute('name', 'add_to_selection'); - link.href = url.replace(/(.*\/)remove_to_selection$/, '$1add_to_selection'); - link.title = img.alt = 'Ajouter à la sélection'; - button.className = "button slide-select"; - break; - - case 'add_to_cart' : - disableDefault(evt); - slide.widget = new CartWidget(slide, link.href); - break; - - case 'hide_for_anonymous': - disableDefault(evt); - link.blur(); - req = new XMLHttpRequest(); - url = link.href; - req.open("POST", url, true); - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); - req.send(null); - slide.className = 'hidden-slide'; - link.setAttribute('name', 'show_for_anonymous'); - link.href = url.replace(/(.*\/)hideForAnonymous$/, '$1resetHide'); - link.title = img.alt = 'Montrer au anonymes'; - button.className = "button slide-show"; - break; - - case 'show_for_anonymous': - disableDefault(evt); - link.blur(); - req = new XMLHttpRequest(); - url = link.href; - req.open("POST", url, true); - req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8"); - req.send(null); - slide.className = null; - link.setAttribute('name', 'hide_for_anonymous'); - link.href = url.replace(/(.*\/)resetHide$/, '$1hideForAnonymous'); - link.title = img.alt = 'Masquer pour les anonymes'; - button.className = "button slide-hide"; - break; - } - } - } else if(target.tagName === 'INPUT' && target.type === 'checkbox') { - var cb = target; - if (cb.checked) { - cb.setAttribute('checked', 'checked'); - } - else { - cb.removeAttribute('checked'); - } - this.selectCBRange(evt); - } -}; - -Lightbox.prototype.onBeforeSubmit = function(fm, evt) { - switch(fm.submitButton.name) { - case 'delete' : - this.hideSelection(); - break; - } -}; - -Lightbox.prototype.onResponseLoad = function(req) { - switch(req.responseXML.documentElement.nodeName) { - case 'deleted' : - this.deleteSelection(); - break; - case 'error' : - this.showSelection(); - break; - } -}; - -Lightbox.prototype.hideSelection = function() { - var i, e, slide; - for (i=0 ; i