function getElementsByName_iefix(tag, name) { var elem = document.getElementsByTagName(tag); var arr = new Array(); for (i = 0,iarr = 0; i < elem.length; i++) { att = elem[i].getAttribute("name"); if(att == name) { arr[iarr] = elem[i]; iarr++; } } return arr; } function updateValueOfParameter(url, par, val) { var value = url; if (url) { var pos = url.indexOf(par); var tempPos = pos; if (pos >= 0) { value = ""; for (; pos < url.length && url.charAt(pos) != '&'; pos++) { value += url.charAt(pos); } if (val != null) { value = url.replace(value,par + "=" + val); } else { if (tempPos > 0 && url.charAt(tempPos - 1) == '&') { value = "&" + value; } value = url.replace(value,""); } } } return value; } var utilIdCategorySelected = -1; var utilType = ""; function removeCoverageLinkCell(coverageId,link){ utilType = "remove"; utilIdCategorySelected = coverageId; if((link.disabledLink)&&(link.disabledLink==true)){ return false; } link.disabledLink = true; CatalogService.deSelectedCoverage(coverageId,{callback:function(result){modifyCoverageLinkCell(result,link); }}); return false; } function addCoverageLinkCell(coverageId,link){ utilType = "add"; utilIdCategorySelected = coverageId; if((link.disabledLink)&&(link.disabledLink == true)){ return false; } link.disabledLink = true; CatalogService.selectedCoverage(coverageId,{callback:function(result){modifyCoverageLinkCell(result,link); }}); return false; } function removeLinkCell(picId,link,returnUri){ if((link.disabledLink)&&(link.disabledLink==true)){ return false; } link.disabledLink = true; try { CatalogService.removeItem(picId,returnUri,{callback:function(result){ modifyLinkCell(result,link); if(typeof(catPermission) != "undefined" && typeof(catPermission.basket) != "undefined"){ catPermission.basket[picId] = !catPermission.basket[picId]; } }}); } catch (exception){ return true; } return false; } function addLinkCell(picId,link,returnUri){ if((link.disabledLink)&&(link.disabledLink == true)){ return false; } link.disabledLink = true; try { CatalogService.addItem(picId,returnUri,{callback:function(result){ modifyLinkCell(result,link); if(typeof(catPermission) != "undefined" && typeof(catPermission.basket) != "undefined"){ catPermission.basket[picId] = !catPermission.basket[picId]; } }}); } catch (exception){ return true; } return false; } function modifyCoverageLinkCell(newLink,link){ //Search category whose icon is equal idCategorySelected. var tempImage = null; if (typeof(catPermission) != "undefined" && catPermission) { for (var i = 0; i < catPermission.length; i++) { if (utilIdCategorySelected == catPermission[i].id) { tempImage = catPermission[i]; break; } } } link.innerHTML = newLink.text; link.disabledLink = false; if (newLink.text == "add collection") { link.className = "AddCollection"; } else if (newLink.text == "remove colletion") { link.className = "RemoveColllection"; } link.title=newLink.tooltip; link.href = newLink.href; var tempFunction = function(){ eval(newLink.onClick); return false; }; link.onclick = tempFunction; //update information for selected coverage if (tempImage) { if (utilType == "remove") { tempImage.selected = "selected"; } else if (utilType == "add" ) { tempImage.selected = "deSelected"; } } utilType = ""; utilIdCategorySelected = -1; } function modifyLinkCell(newLink,link){ link.disabledLink = false; if (newLink.text == "remove basket") { link.className = "RemoveBasket"; } else if (newLink.text == "to basket") { link.className = "ToBasket"; } link.title=newLink.tooltip; link.href = newLink.href; var tempFunction = function(){ eval(newLink.onClick); return false; }; link.onclick = tempFunction; CatalogService.getTotalBasketItems({callback:function(result){changeTotalBasketItems(result,link); }}) } function changeTotalBasketItems(total) { var text = document.getElementById("totalBasketItem"); if(text) { text.innerHTML = total; } } function saveSearchDefault() { var saveSearchDefaultButton = document.getElementById("saveSearchDefaultButton"); saveSearchDefaultButton.disabled = true; SearchService.saveSearchDefault({callback:function(result){saveSearchResult(result); }}); } function saveSearchResult(result) { if(!result){ var saveSearchDefaultButton = document.getElementById("saveSearchDefaultButton"); saveSearchDefaultButton.disabled = true; alert("Fail to save search as default"); } } function XBrowserAddHandler(target, eventName, fnHandler) { if ( target.addEventListener ) { target.addEventListener(eventName, fnHandler, false); } else if (target.attachEvent) { target.attachEvent("on" + eventName, fnHandler); } else { target["on" + eventName] = fnHandler; } } function deleteConfirm() { return confirm("Do you want to delete this item?"); } function deleteSelConfirm() { return confirm("Do you want to delete these selected items?"); } function tobasketConfirm(url) { var tobasket = confirm("This picture will be added to your basket. Do you want to view your basket?"); if(!tobasket) { var returnUri = window.location; window.location = url + "&returnUri=" + returnUri; return false; } return true; } function registerHandler(target, eventName, fnHandler) { if ( target.addEventListener ) { target.addEventListener(eventName, fnHandler, false); } else if (target.attachEvent) { target.attachEvent("on" + eventName, fnHandler); } else { target["on" + eventName] = fnHandler; } } function lTrim(str){ var whitespace = new String(" \t\n\r"); var s = new String(str); if (whitespace.indexOf(s.charAt(0)) != -1) { var j=0, i = s.length; while (j < i && whitespace.indexOf(s.charAt(j)) != -1) j++; s = s.substring(j, i); } return s; } function rTrim(str){ var whitespace = new String(" \t\n\r"); var s = new String(str); if (whitespace.indexOf(s.charAt(s.length-1)) != -1) { var i = s.length - 1; while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1) i--; s = s.substring(0, i+1); } return s; } function trim(s){ return rTrim(lTrim(s)); } /** * DHTML date validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/) */ // Declaring valid date character, minimum year and maximum year var dtCh= "/"; var minYear=1900; var maxYear=2100; function isInteger(s){ var i; for (i = 0; i < s.length; i++){ // Check that current character is number. var c = s.charAt(i); if (((c < "0") || (c > "9"))) return false; } // All characters are numbers. return true; } function stripCharsInBag(s, bag){ var i; var returnString = ""; // Search through string's characters one by one. // If character is not in bag, append to returnString. for (i = 0; i < s.length; i++){ var c = s.charAt(i); if (bag.indexOf(c) == -1) returnString += c; } return returnString; } function daysInFebruary (year){ // February has 29 days in any year evenly divisible by four, // EXCEPT for centurial years which are not also divisible by 400. return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 ); } function DaysArray(n) { for (var i = 1; i <= n; i++) { this[i] = 31 if (i==4 || i==6 || i==9 || i==11) {this[i] = 30} if (i==2) {this[i] = 29} } return this } function isDate(dtStr){ var daysInMonth = DaysArray(12) var pos1=dtStr.indexOf(dtCh) var pos2=dtStr.indexOf(dtCh,pos1+1) var strDay=dtStr.substring(0,pos1) var strMonth=dtStr.substring(pos1+1,pos2) var strYear=dtStr.substring(pos2+1) strYr=strYear if (strDay.charAt(0)=="0" && strDay.length>1) strDay=strDay.substring(1) if (strMonth.charAt(0)=="0" && strMonth.length>1) strMonth=strMonth.substring(1) for (var i = 1; i <= 3; i++) { if (strYr.charAt(0)=="0" && strYr.length>1) strYr=strYr.substring(1) } month=parseInt(strMonth) day=parseInt(strDay) year=parseInt(strYr) if (pos1==-1 || pos2==-1){ //alert("The date format should be : mm/dd/yyyy") return false } if (strMonth.length<1 || month<1 || month>12){ //alert("Please enter a valid month") return false } if (strDay.length<1 || day<1 || day>31 || (month==2 && day>daysInFebruary(year)) || day > daysInMonth[month]){ //alert("Please enter a valid day") return false } if (strYear.length != 4 || year==0 || yearmaxYear){ //alert("Please enter a valid 4 digit year between "+minYear+" and "+maxYear) return false } if (dtStr.indexOf(dtCh,pos2+1)!=-1 || isInteger(stripCharsInBag(dtStr, dtCh))==false){ //alert("Please enter a valid date") return false } return true } function downloadConfirm() { return confirm('Are you sure you want to download this picture?'); } function deleteCatPixConfirm(catType) { if(catType == 'gallery') { return confirm('Are you sure you want to delete this picture from the database?'); } else { return confirm('Are you sure you want to delete this picture from the database?'); } } function removeCatPixConfirm(catType) { if(catType == 'gallery') { return confirm('Are you sure you want to remove this picture from this gallery?'); } else { return confirm('Are you sure you want to remove this picture from this coverage?'); } } function deleteCatConfirm(catType) { if(catType == 'gallery') { return confirm("Are you sure you want to delete this gallery ?"); } else { return confirm("Are you sure you want to delete this coverage ?"); } } function hideCatConfirm(catType) { if(catType == 'gallery') { return confirm("Are you sure you want to hide this gallery ?"); } else { return confirm("Are you sure you want to hide this coverage ?"); } } function showCatConfirm(catType) { if(catType == 'gallery') { return confirm("Are you sure you want to show this gallery ?"); } else { return confirm("Are you sure you want to show this coverage ?"); } } function removeTopConfirm(catType) { if(catType == 'gallery') { return confirm("Are you sure you want to remove this gallery from the list of top galleries ?"); } else { return confirm("Are you sure you want to remove this coverage from the list of top coverages ?"); } } function removeSpecialConfirm(catType) { if(catType == 'gallery') { return confirm("Are you sure you want to remove this gallery from the list of special galleries ?"); } else { return confirm("Are you sure you want to remove this coverage from the list of special coverages ?"); } } function onSetTopCat(link) { var url = link.href; openCenteredWindow(url, 400, 250); return false; } function onSetGroupedSpecialCat(link) { var url = link.href; openCenteredWindow(url, 400, 250); return false; } function onSetSpecialCat(link) { var url = link.href; openCenteredWindow(url, 400, 250); return false; } function sendRedirect(url) { window.location.href = url; } function onDownloadConfirm(link) { var url = link.href; openCenteredWindowWidthResizable(url, 600, 450); return false; } function confirmPayment(message,link){ var msgs ="" ; msgs += 'You decided to download an image with'; msgs +=' '+message+' '; msgs += 'copyrights.'; msgs +='\n'; msgs += 'You are certainly allowed to use it but take notice of the different payment condition.'; msgs +='\n'; msgs += 'If you should have any doubt, please contact us at +32 2 743 23 82 or pictures@belga.be'; msgs +='\n'; msgs +='\n'; msgs += 'OK to proceed?'; msgs +='\n'; return confirm(msgs); } function confirmMoveAllToBasket(){ var msgs ="Are you sure you want to move all these pictures to basket ?" ; if(confirm(msgs)){ $.get(window.location.href, {isMovePicture:"yes"}, function(data){ if(data == 'successful'){ window.location.reload(); } }); } return false; } function selectEvent(url, url1, catId, popup, its, eventId){ var idElement; if(typeof(its) == 'string'){ idElement = its }else{ idElement = $(its).attr('id'); } if(popup){ openCenteredWindowWidthResizable(url + "&idElement=" + idElement, 400, 200); }else{ setEventForGallery(false, catId, eventId, url1, idElement); } return false; } function removeEvent(url, catID, eventID, its){ var idElement; if(typeof(its) == 'string'){ idElement = its }else{ idElement = $(its).attr('id'); } $.getJSON(url, {catId:catID, eventId:eventID, idElement: idElement }, function(data){ if(data.isSuccessful){ updateEventLink(idElement, data); } }); return false; } function removeInEvent(url, catID, eventID, its){ var idElement; if(typeof(its) == 'string'){ idElement = its }else{ idElement = $(its).attr('id'); } $.getJSON(url, {catId:catID, eventId:eventID, idElement: idElement }, function(data){ if(data.isSuccessful){ window.location.reload(); } }); return false; } function callAjaxSetEvent(url, catId, enventID, idElement){ $.getJSON(url, {catId:catId, eventId:enventID, idElement: idElement}, function(data){ if(data.isSuccessful){ updateEventLink(idElement,data); } }); } function setEventForGallery(popup, catId, eventId, url, idElement){ var enventID ; if(popup){ enventID = document.getElementById(eventId).value; }else{ enventID = eventId; } if(popup){ $("#message").text(""); try{ window.opener.callAjaxSetEvent(url, catId, enventID, idElement); window.close(); }catch(e){} }else { callAjaxSetEvent(url, catId, enventID, idElement); } /*$.getJSON(url, {catId:catId, eventId:enventID, idElement: idElement}, function(data){ if(data.isSuccessful){ if(popup && window.opener){ $("#message").text("Set event successful"); window.opener.updateEventLink(idElement, data); window.close(); }else{ updateEventLink(idElement,data); } }else{ if(popup && window.opener){ $("#message").text("Set event unsuccessful"); } } });*/ return false; } function updateEventLink(idElement, data){ var element = $("#" + idElement); if(typeof(catPermission) == 'undefined'){ if(typeof(data.tooltip) != 'undefined'){ element.get(0).setAttribute("title", data.tooltip); } if(typeof(data.link )!= 'undefined'){ element.text(data.link); } if(typeof(data.onclick) != 'undefined'){ var clickFunc = function(){ eval(data.onclick); return false; }; element.get(0).onclick = clickFunc; } }else{ var catId = data.catId; var id = idElement.substring(idElement.indexOf("_") + 1); var hr = $("a#categoryLinkDetail_" + id).attr("href"); var catDom = hr.substring(hr.lastIndexOf("/") + 1, hr.lastIndexOf(".html")); if(catId == catDom){ if(typeof(data.tooltip) != 'undefined'){ element.get(0).setAttribute("title", data.tooltip); } if(typeof(data.link) != 'undefined'){ element.text(data.link); } if(typeof(data.onclick) != 'undefined'){ var clickFunc = function(){ eval(data.onclick); return false; }; element.get(0).onclick = clickFunc; } } var per = searchCategoryPermission(catId); if(per != null){ per.event = data.event; per.parentEventId = data.parentEventId; } } }