window.onresize = sizecheck; var myHeight = ""; var myWidth = ""; var X = ""; var Y = ""; var isMozilla = ""; var objDiv = ""; var over = ""; var DivID = ""; function showinfo(venuename, box) { var mySlide = new Fx.Slide(box, {duration:250}); if(document.getElementById(box).style.display != "block") { if(document.getElementById('map_' + venuename)) { document.getElementById('map_' + venuename).style.display = "none"; } mySlide.hide(); document.getElementById(box).style.display = "block"; } if(!isMozilla) { // In IE the map slides weirdly, so must be killed first if(document.getElementById('map_' + venuename)) { window.status = document.getElementById('map_' + venuename).style.display; if(document.getElementById('map_' + venuename).style.display == "block") document.getElementById('map_' + venuename).style.display = "none"; else setTimeout("document.getElementById('map_" + venuename + "').style.display = \"block\"", 500); } } mySlide.toggle(); } function showhidereviews(box) { var mySlide = new Fx.Slide(box, {duration:250}); mySlide.toggle(); } function hidereviews(beforeyr, beforemn) { var curdate = ""; var beforemn2 = ""; while(document.getElementById(beforeyr + beforemn) || document.getElementById(beforeyr + beforemn2)) { beforeyr = beforeyr.toString(); beforemn = beforemn.toString(); curdate = beforeyr + beforemn; if(document.getElementById(curdate)) { var mySlide = new Fx.Slide(curdate, {duration:250}); mySlide.hide(); } beforemn--; if(beforemn < 1) { beforemn = "12"; beforeyr--; } if(beforemn < 10) beforemn = "0" + beforemn; beforemn2 = beforemn - 1; if(beforemn2 < 10) beforemn2 = "0" + beforemn2; } } function showcommform() { var mySlide = new Fx.Slide('commform', {duration:250}); if(document.getElementById('commform').style.display != "block") { mySlide.hide(); document.getElementById('commform').style.display = "block"; } mySlide.toggle(); } function hidecommform() { var mySlide = new Fx.Slide('commform', {duration:250}); mySlide.hide(); } function getvenue(venuename, boxid) { if(document.getElementById(boxid).innerHTML == "") makePOSTRequest("http://www.onstagescotland.co.uk/ajax/venueinfo.php", "venueid=" + venuename + "&boxid=" + boxid); else showinfo(venuename, boxid); } function login() { var loginname = document.getElementById('loginname').value; var loginpass = document.getElementById('loginpass').value; var remember = document.getElementById('remember').checked; if(remember == true) remember = 1; else remember = 0; makePOSTRequest("http://www.onstagescotland.co.uk/ajax/login.php", "loginname=" + loginname + "&loginpass=" + loginpass + "&remember=" + remember); } function logout() { makePOSTRequest("http://www.onstagescotland.co.uk/ajax/logout.php", ""); } function prep(text) { text = encodeURI(text); text = text.replace(/&/g, "%26"); text = text.replace(/\+/g, "%2B"); text = text.replace(/#/g, "%23"); return text; } function closeeditor(usertype) { var reviewid = prep(document.getElementById('reviewid').value); if(reviewid == "new") { if(confirm('You have not saved your work. Please note that anything you have typed will be deleted if you continue. Continue?')) { window.location = "http://www.onstagescotland.co.uk/editor\/reviews\/"; } } else { if(usertype == "e") { if(document.getElementById('live').checked == true) window.location = "http://www.onstagescotland.co.uk/reviews\/" + reviewid + "\/redir/"; else window.location = "http://www.onstagescotland.co.uk/editor\/reviews\/"; } else window.location = "http://www.onstagescotland.co.uk/editor\/reviews\/"; } } function livechk() { if(document.getElementById('homepage')) { if(document.getElementById('homepage').checked == true) { document.getElementById('live').checked = true; } } else document.getElementById('live').checked = true; } function addcomm(reviewid) { var comment = prep(document.getElementById('comment').value); reviewid = prep(reviewid); var poststring = "comment=" + comment + "&reviewid=" + reviewid; makePOSTRequest("http://www.onstagescotland.co.uk/ajax/postcomment.php", poststring); } function saveeditor(usertype) { document.getElementById('savebutton').value = "Wait..."; document.getElementById('savebutton').disabled = "disabled"; var reviewid = prep(document.getElementById('reviewid').value); var title = prep(document.getElementById('title').value); var subhead = prep(document.getElementById('subheadline').value); var company = prep(document.getElementById('company').value); var company2 = prep(document.getElementById('company2').value); var company3 = prep(document.getElementById('company3').value); var company4 = prep(document.getElementById('company4').value); var curtext = prep(document.getElementById('content').value); var showlink = prep(document.getElementById('showlink').value); var image1 = prep(document.getElementById('image1').value); var image2 = prep(document.getElementById('image2').value); var image1cap = prep(document.getElementById('image1cap').value); var image2cap = prep(document.getElementById('image2cap').value); if(document.getElementById('image1border').checked == true) var image1border = "1"; else var image1border = "0"; if(document.getElementById('image2border').checked == true) var image2border = "1"; else var image2border = "0"; if(document.getElementById('mailout').checked == true) var mailout = "1"; else var mailout = "0"; var curquote = prep(document.getElementById('quote').value); var quotepos = prep(document.getElementById('quotepos').value); var quotewidth = prep(document.getElementById('quotewidth').value); var img2pos = prep(document.getElementById('img2pos').value); var reviewer = prep(document.getElementById('reviewer').value); var linksetc = prep(document.getElementById('linksetc').value); if(document.getElementById('isrec').checked == true) var isrec = 1; else var isrec = 0; if(document.getElementById('isfestival').checked == true) { var isfestival = 1; var festivalstars = document.getElementById('festivalstars').value; } else { var isfestival = 0; var festivalstars = "0"; } var eventweb = new Array(); var venue = new Array(); var venuefromyr = new Array(); var venuefrommn = new Array(); var venuefromdy = new Array(); var venuetoyr = new Array(); var venuetomn = new Array(); var venuetody = new Array(); var venuepartof = new Array(); var venuestarthr = new Array(); var venuestartmin = new Array(); var venuelength = new Array(); var paper = new Array(); var paperquote = new Array(); var stars = new Array(); var paperlink = new Array(); var blog = new Array(); var blogquote = new Array(); var blogstars = new Array(); var bloglink = new Array(); var amazon = new Array(); var amazonshow = new Array(); var totevents = document.getElementById('eventstot').innerHTML; var poststring = "title=" + title + "&company=" + company + "&company2=" + company2 + "&company3=" + company3 + "&company4=" + company4 + "&subhead=" + subhead + "&curtext=" + curtext + "&linksetc=" + linksetc + "&showlink=" + showlink + "&image1=" + image1 + "&image2=" + image2 + "&image1cap=" + image1cap + "&image2cap=" + image2cap + "&image1border=" + image1border + "&image2border=" + image2border + "&curquote=" + curquote + ""ewidth=" + quotewidth + ""epos=" + quotepos + "&img2pos=" + img2pos + "&isrec=" + isrec + "&isfestival=" + isfestival + "&festivalstars=" + festivalstars + "&mailout=" + mailout + "&reviewer=" + reviewer + "&reviewid=" + reviewid; if(usertype == "e") { if(document.getElementById('live').checked == true) var setlive = "1"; else var setlive = "2"; if(document.getElementById('homepage')) { if(document.getElementById('homepage').checked == true) var homepage=1; else var homepage = 0; } else var homepage = 0; poststring += "&setlive=" + setlive + "&homepage=" + homepage; } for(var i = 1; i <= 5; i++) { if(usertype == "e") { paper[i] = prep(document.getElementById('paper' + i).value); if(paper[i] != "") { paperquote[i] = prep(document.getElementById('paperquote' + i).value); stars[i] = prep(document.getElementById('stars' + i).value); paperlink[i] = prep(document.getElementById('paperlink' + i).value); poststring += "&paper[" + i + "]=" + paper[i] + "&paperquote[" + i + "]=" + paperquote[i] + "&stars[" + i + "]=" + stars[i] + "&paperlink[" + i + "]=" + paperlink[i]; } blog[i] = prep(document.getElementById('blog' + i).value); if(blog[i] != "") { blogreview = 1; blogquote[i] = prep(document.getElementById('blogquote' + i).value); blogstars[i] = prep(document.getElementById('blogstars' + i).value); bloglink[i] = prep(document.getElementById('bloglink' + i).value); poststring += "&blog[" + i + "]=" + blog[i] + "&blogquote[" + i + "]=" + blogquote[i] + "&blogstars[" + i + "]=" + blogstars[i] + "&bloglink[" + i + "]=" + bloglink[i]; } } } for(var i = 0; i < totevents; i++) { venue[i] = prep(document.getElementById('venue' + i).value); eventweb[i] = prep(document.getElementById('weblink' + i).value); if(venue[i] != "") { venuefromyr[i] = prep(document.getElementById('yrfrom' + i).value); venuefrommn[i] = prep(document.getElementById('mnfrom' + i).value); venuefromdy[i] = prep(document.getElementById('dyfrom' + i).value); venuetoyr[i] = prep(document.getElementById('yrto' + i).value); venuetomn[i] = prep(document.getElementById('mnto' + i).value); venuetody[i] = prep(document.getElementById('dyto' + i).value); venuepartof[i] = prep(document.getElementById('festid' + i).value); venuestarthr[i] = prep(document.getElementById('starttimehr' + i).value); venuestartmin[i] = prep(document.getElementById('starttimemin' + i).value); venuelength[i] = prep(document.getElementById('length' + i).value); poststring += "&venue[" + i + "]=" + venue[i] + "&eventweb[" + i + "]=" + eventweb[i] + "&venuefromyr[" + i + "]=" + venuefromyr[i] + "&venuefrommn[" + i + "]=" + venuefrommn[i] + "&venuefromdy[" + i + "]=" + venuefromdy[i] + "&venuetoyr[" + i + "]=" + venuetoyr[i] + "&venuetomn[" + i + "]=" + venuetomn[i] + "&venuetody[" + i + "]=" + venuetody[i] + "&venuepartof[" + i + "]=" + venuepartof[i] + "&venuestarthr[" + i + "]=" + venuestarthr[i] + "&venuestartmin[" + i + "]=" + venuestartmin[i] + "&venuelength[" + i + "]=" + venuelength[i]; } } for(var i = 1; i <= 8; i++) { if(usertype == "e") { amazon[i] = prep(document.getElementById('amazon' + i).value); if(amazon[i] != "") { if(document.getElementById('amazonshow' + i).checked == true) amazonshow[i] = "1"; else amazonshow[i] = "0"; poststring += "&amazon[" + i + "]=" + amazon[i] + "&amazonshow[" + i + "]=" + amazonshow[i]; } } } makePOSTRequest("http://www.onstagescotland.co.uk/ajax/savereview.php", poststring); } function ajaxerr() { showmsg('Error: Could not communicate with server.'); } function showmsg(msg) { document.getElementById('msgwrap').style.display = "none"; document.getElementById('msgwrap').style.opacity = "0"; document.getElementById('msgbox').innerHTML = msg; fadebox('msgwrap', 'partin'); setTimeout("fadebox('msgwrap', 'allout')", 3000); } function upload() { window.open('http://www.onstagescotland.co.uk/upload.php', '','status=no,width=300,height=150,left=20,top=20,scrollbars=yes'); } function datecheck(i) { var venuefromyr = document.getElementById('yrfrom' + i).value; var venuefrommn = document.getElementById('mnfrom' + i).value; var venuefromdy = document.getElementById('dyfrom' + i).value; if(document.getElementById('yrto' + i)) { var venuetoyr = document.getElementById('yrto' + i).value; var venuetomn = document.getElementById('mnto' + i).value; var venuetody = document.getElementById('dyto' + i).value; } if(venuefromdy > 28) { var lpchk = venuefromyr / 4; if(Math.round(lpchk) == lpchk) var islp = "1"; else var islp = "0"; if(venuefrommn == "02" && (venuefromdy == "30" || venuefromdy == "31" || (venuefromdy == "29" && islp == "0"))) { venuefromdy = "01"; venuefrommn = "03"; } } if(venuefromdy > 30) { if(venuefrommn == "04" || venuefrommn == "06" || venuefrommn == "09" || venuefrommn == "11") { venuefromdy = "01"; venuefrommn++; } } venuefromdy = venuefromdy.toString(); if(venuefromdy.length == 1) venuefromdy = "0" + venuefromdy; document.getElementById('yrfrom' + i).value = venuefromyr; document.getElementById('mnfrom' + i).value = venuefrommn; document.getElementById('dyfrom' + i).value = venuefromdy; var venuefrom = venuefromyr + "" + venuefrommn + "" + venuefromdy; venuefrom = venuefrom * 1; if(document.getElementById('yrto' + i)) { var venueto = venuetoyr + "" + venuetomn + "" + venuetody; venueto = venueto * 1; } if(document.getElementById('yrto' + i)) { if(venueto <= venuefrom) { venuetoyr = venuefromyr; venuetomn = venuefrommn; venuetody = venuefromdy; } if(venuetody > 28) { var lpchk = venuetoyr / 4; if(Math.round(lpchk) == lpchk) var islp = "1"; else var islp = "0"; if(venuetomn == "02" && (venuetody == "30" || venuetody == "31" || (venuetody == "29" && islp == "0"))) { venuetody = "01"; venuetomn = "03"; } } if(venuetody > 30) { if(venuetomn == "04" || venuetomn == "06" || venuetomn == "09" || venuetomn == "11") { venuetody = "01"; venuetomn++; } } if(venuetody > 31) { if(venuetomn == "12") { venuetoyr++; venuetomn = "01"; venuetody = "01"; } else { venuetody = "01"; venuetomn++; } } venuetody = venuetody.toString(); if(venuetody.length == 1) venuetody = "0" + venuetody; document.getElementById('yrto' + i).value = venuetoyr; document.getElementById('mnto' + i).value = venuetomn; document.getElementById('dyto' + i).value = venuetody; } } function showoutput(usertype) { var title = document.getElementById('title').value; var company = document.getElementById('company').value; if(company == "") { var subhead = document.getElementById('subheadline').value; document.getElementById('subheadline').style.display = "block"; } else { var companybox = document.getElementById('company'); var company2box = document.getElementById('company2'); var company3box = document.getElementById('company3'); var company4box = document.getElementById('company4'); var subhead = companybox.options[companybox.selectedIndex].text; if(company3box != "") var split3 = ","; else var split3 = "and"; if(company4box != "") var split4 = ","; else var split4 = "and"; if(company2box.value != "") subhead += split3 + " " + company2box.options[company2box.selectedIndex].text; if(company3box.value != "") subhead += split4 + " " + company3box.options[company3box.selectedIndex].text; if(company4box.value != "") subhead += " and " + company4box.options[company4box.selectedIndex].text; document.getElementById('subheadline').style.display = "none"; } var curtext = document.getElementById('content').value; var showlink = document.getElementById('showlink').value; var image1 = document.getElementById('image1').value; var image2 = document.getElementById('image2').value; var image1cap = document.getElementById('image1cap').value; var image2cap = document.getElementById('image2cap').value; if(document.getElementById('image1border').checked == true) var image1border = "1"; else var image1border = "0"; if(document.getElementById('image2border').checked == true) var image2border = "1"; else var image2border = "0"; var curquote = document.getElementById('quote').value; var quotepos = document.getElementById('quotepos').value; var quotewidth = document.getElementById('quotewidth').value; var img2pos = document.getElementById('img2pos').value; var linksetc = document.getElementById('linksetc').value; var reviewbox = document.getElementById('reviewer'); var reviewer = reviewbox.options[reviewbox.selectedIndex].text; if(document.getElementById('isrec').checked == true) var isrec = 1; else var isrec = 0; if(document.getElementById('isfestival').checked == true) { var isfestival = 1; if(isMozilla) document.getElementById('feststars').style.display = "table-cell"; else document.getElementById('feststars').style.display = "inline"; var festivalstars = document.getElementById('festivalstars').value; } else { var isfestival = 0; document.getElementById('feststars').style.display = "none"; } var venue = new Array(); var venuecode = new Array(); var venuephone = new Array(); var eventweb = new Array(); var venueweb = new Array(); var venuefromyr = new Array(); var venuefrommn = new Array(); var venuefrommntxt = new Array(); var venuefromdy = new Array(); var venuetoyr = new Array(); var venuetomn = new Array(); var venuetomntxt = new Array(); var venuetody = new Array(); var venuepartof = new Array(); var venuepartoftxt = new Array(); var venuestarthr = new Array(); var venuestartmin = new Array(); var venuestartlength = new Array(); var datestr = new Array(); var paper = new Array(); var paperquote = new Array(); var stars = new Array(); var showstars = new Array(); var paperlink = new Array(); var blog = new Array(); var blogquote = new Array(); var blogstars = new Array(); var blogshowstars = new Array(); var bloglink = new Array(); var datefrom = ""; var dateto = ""; var curdate = new Date(); var year = curdate.getFullYear(); var month = curdate.getMonth() + 1; var day = curdate.getDate(); var today = "" + year + month + day; var paperreview = 0; var blogreview = 0; for(var i = 1; i <= 5; i++) { if(usertype == "e") { paper[i] = document.getElementById('paper' + i).value; if(paper[i] != "") { paperreview = 1; paperquote[i] = document.getElementById('paperquote' + i).value; stars[i] = document.getElementById('stars' + i).value; showstars[i] = ""; for(var k = 0; k < stars[i]; k++) { showstars[i] += "*"; } paperlink[i] = document.getElementById('paperlink' + i).value; paper[i] = paper[i].replace(/<\/?/g, "<"); paperquote[i] = paperquote[i].replace(/<\/?/g, "<"); paperlink[i] = paperlink[i].replace(/<\/?/g, "<"); } blog[i] = document.getElementById('blog' + i).value; if(blog[i] != "") { blogreview = 1; blogquote[i] = document.getElementById('blogquote' + i).value; blogstars[i] = document.getElementById('blogstars' + i).value; blogshowstars[i] = ""; for(var k = 0; k < blogstars[i]; k++) { blogshowstars[i] += "*"; } bloglink[i] = document.getElementById('bloglink' + i).value; blog[i] = blog[i].replace(/<\/?/g, "<"); blogquote[i] = blogquote[i].replace(/<\/?/g, "<"); bloglink[i] = bloglink[i].replace(/<\/?/g, "<"); } } } var totalevents = document.getElementById('eventstot').innerHTML; totalevents = totalevents * 1; for(var i = 0; i < totalevents; i++) { var venuebox = document.getElementById('venue' + i); venue[i] = venuebox.options[venuebox.selectedIndex].text; venuecode[i] = venuebox.value; eventweb[i] = document.getElementById('weblink' + i).value; if(venuecode[i] != "") { venuestarthr[i] = document.getElementById('starttimehr' + i).value; venuestartmin[i] = document.getElementById('starttimemin' + i).value; venuestartlength[i] = document.getElementById('length' + i).value; venuefromyr[i] = document.getElementById('yrfrom' + i).value; venuefrommn[i] = document.getElementById('mnfrom' + i); venuefrommntxt[i] = venuefrommn[i].options[venuefrommn[i].selectedIndex].text; venuefrommn[i] = venuefrommn[i].value; venuepartof[i] = document.getElementById('festid' + i); venuepartoftxt[i] = venuepartof[i].options[venuepartof[i].selectedIndex].text; venuefromdy[i] = document.getElementById('dyfrom' + i).value; venuetoyr[i] = document.getElementById('yrto' + i).value; venuetomn[i] = document.getElementById('mnto' + i); venuetomntxt[i] = venuetomn[i].options[venuetomn[i].selectedIndex].text; venuetomn[i] = venuetomn[i].value; venuetody[i] = document.getElementById('dyto' + i).value; venueweb[i] = document.getElementById('venueweb_' + venuecode[i]).value; if(eventweb[i] == "") eventweb[i] = venueweb[i]; venuephone[i] = document.getElementById('venuephone_' + venuecode[i]).value; venueweb[i] = venueweb[i].replace(/<\/?/g, "<"); datefrom = "" + venuefromyr[i] + venuefrommn[i] + venuefromdy[i]; dateto = "" + venuetoyr[i] + venuetomn[i] + venuetody[i]; venuefromdy[i] = venuefromdy[i] * 1; venuetody[i] = venuetody[i] * 1; if(datefrom < today) { datestr[i] = "Until " + venuetomntxt[i] + " " + venuetody[i] + " " + venuetoyr[i]; } else { datestr[i] = "From " + venuefrommntxt[i] + " " + venuefromdy[i] + " " + venuefromyr[i] + " to " + venuetomntxt[i] + " " + venuetody[i] + " " + venuetoyr[i]; } } eventweb[i] = eventweb[i].replace(/<\/?/g, "<"); } curtext = curtext.replace(/$1"); curtext = curtext.replace(/\[i\](.*?)\[\/i\]/g, "$1"); curtext = curtext.replace(/\[url=(.*?)\](.*?)\[\/url\]/g, "$2"); curtext = curtext.replace(/$1"); linksetc = linksetc.replace(/\[i\](.*?)\[\/i\]/g, "$1"); linksetc = linksetc.replace(/\[url=(.*?)\](.*?)\[\/url\]/g, "$2"); linksetc = linksetc.replace(/"); curtext = curtext.replace(/\n/g, ""); var curtextarr = curtext.split(""); image1 = image1.replace(/\//g, ""); image2 = image2.replace(/\//g, ""); image1 = image1.replace(/<\/?/g, ""); image2 = image2.replace(/<\/?/g, ""); curquote = curquote.replace(/<\/?/g, "<"); showlink = showlink.replace(/<\/?/g, "<"); title = title.replace(/<\/?/g, "<"); image1cap = image1cap.replace(/<\/?/g, "<"); image2cap = image2cap.replace(/<\/?/g, "<"); subhead = subhead.replace(/<\/?/g, "<"); reviewer = reviewer.replace(/<\/?/g, "<"); quotepos = quotepos * 1; quotewidth = quotewidth * 1; img2pos = img2pos * 1; if(image1cap == "") image1cap = title; if(image2cap == "") image2cap = title; if(isfestival == "1") { document.getElementById('sitelogo').src = "http://www.onstagescotland.co.uk/images\/OSbigheadfestival.gif" } else { document.getElementById('sitelogo').src = "http://www.onstagescotland.co.uk/images\/OSbighead.gif" } if(curquote != "") curquote = "
"" + curquote + ""<\/div>"; var usedquote = 0; var usedimg2 = 0; var showtext = ""; if(image1border == "0") var image1bordertxt = "style=\"border: 0;\""; else var image1bordertxt = ""; if(image2border == "0") var image2bordertxt = "style=\"border: 0;\""; else var image2bordertxt = ""; for(i = 0; i < curtextarr.length; i++) { if(curquote != "") { if(quotepos == i + 1) { showtext += curquote; usedquote = 1; } if(usedquote == 0 && i == curtextarr.length - 1 && quotepos != 0) { showtext += curquote; usedquote = 1; document.getElementById('quotepos').value = i + 1; } } if(image2 != "") { if(img2pos == i + 1) { showtext += "\"""; usedimg2 = 1; } if(usedimg2 == 0 && i == curtextarr.length - 1 && img2pos != 0) { showtext += "\"""; usedimg2 = 1; document.getElementById('img2pos').value = i + 1; } } showtext += curtextarr[i] + ""; } showtext += "<\/div>"; if(isrec == 1) var rectext = "
\"*\"\/ Highly recommended \"*\"\/<\/div>\n\n"; else var rectext = ""; if(isfestival == 1) { var showfeststars = ""; festivalstars = festivalstars * 1; for(var i = festivalstars; i > 0; i = i - 1) { showfeststars += "\"*\"\/"; } if(showfeststars.length > 0) rectext += "
" + showfeststars + "<\/div>\n\n"; } document.getElementById('output').innerHTML = rectext + "

" + title + "<\/h1>"; document.getElementById('output').innerHTML += "

" + subhead + "<\/h2>
"; if(image1 != "") document.getElementById('output').innerHTML += "\"""; document.getElementById('output').innerHTML += showtext; document.getElementById('output').innerHTML += "
" + reviewer + "<\/a><\/div>"; if(linksetc != "") document.getElementById('output').innerHTML += linksetc + ""; for(var j = 0; j < totalevents; j++) { if(venuecode[j] != "") { document.getElementById('output').innerHTML += "
"; document.getElementById('output').innerHTML += "" + datestr[j] + "<\/b> at " + venue[j] + "<\/a>"; if(venuepartoftxt[j] != "-- None --") document.getElementById('output').innerHTML += " (part of " + venuepartoftxt[j] + ")"; if(venuestartlength[j] != "0") { var hoursno = 0; while(venuestartlength[j] >= 60) { hoursno++; venuestartlength[j] = venuestartlength[j] - 60; } if(venuestartlength[j] < 10) venuestartlength[j] = "0" + venuestartlength[j].toString(); var showrun = hoursno + ":" + venuestartlength[j]; if(venuestarthr[j] == "-1") { venuestarthr[j] = "at various times"; venuestartmin[j] = ""; } else venuestarthr[j] += ":"; document.getElementById('output').innerHTML += "; show starts " + venuestarthr[j] + venuestartmin[j] + ", running time " + showrun; } document.getElementById('output').innerHTML += ". Tel: " + venuephone[j] + ". " + venueweb[j] + "<\/a><\/div>"; } } document.getElementById('output').innerHTML += "" + showlink + "<\/a>Have you seen this production? Share your views!<\/a>"; if(usertype == "e") { if(paperreview == 1) document.getElementById('output').innerHTML += "
What the papers said:
"; for(var j = 1; j <= 5; j++) { if(paper[j] != "") { document.getElementById('output').innerHTML += "
"; } } if(blogreview == 1) document.getElementById('output').innerHTML += "
Blog verdicts:
"; for(var j = 1; j <= 5; j++) { if(blog[j] != "") { document.getElementById('output').innerHTML += "
"; } } } } function moveelement(element, dir) { if(dir == "up") { if(document.getElementById(element).value != 0) { document.getElementById(element).value = document.getElementById(element).value - 1; } } else { document.getElementById(element).value = (document.getElementById(element).value * 1) + 1; } showoutput(); } function changepass() { document.getElementById('topbar').style.display = "none"; document.getElementById('topcont').innerHTML = "
Current password:<\/td><\/td>New password:<\/td><\/td>New password again:<\/td><\/td><\/td><\/tr><\/table><\/form>"; document.getElementById('topbar').style.opacity = "0"; document.getElementById('topbar').style.display = "block"; fadebox('topbar', 'partin'); } function confdel(link) { document.getElementById('topbar').style.display = "none"; document.getElementById('topcont').innerHTML = "To confirm you want to delete this, click here<\/a>."; document.getElementById('topbar').style.opacity = "0"; document.getElementById('topbar').style.display = "block"; fadebox('topbar', 'partin'); } function forgotpass() { document.getElementById('topbar').style.display = "none"; document.getElementById('topcont').innerHTML = "
Username:<\/td><\/td>or e-mail address:<\/td><\/td><\/td><\/tr><\/table><\/form>"; document.getElementById('topbar').style.opacity = "0"; document.getElementById('topbar').style.display = "block"; fadebox('topbar', 'partin'); } function passchange() { fadebox('topbar', 'allout'); var curpass = prep(document.getElementById('curpass').value); var newpass1 = prep(document.getElementById('newpass1').value); var newpass2 = prep(document.getElementById('newpass2').value); var poststring = "curpass=" + curpass + "&newpass1=" + newpass1 + "&newpass2=" + newpass2; makePOSTRequest("http://www.onstagescotland.co.uk/ajax/changepass.php", poststring); } function passforgot() { fadebox('topbar', 'allout'); var forgotuser = prep(document.getElementById('forgotuser').value); var forgotemail = prep(document.getElementById('forgotemail').value); var poststring = "forgotuser=" + forgotuser + "&forgotemail=" + forgotemail; makePOSTRequest("http://www.onstagescotland.co.uk/ajax/forgotpass.php", poststring); } function updatecommarea() { if(document.getElementById('reviewid')) { var reviewcode = document.getElementById('reviewid').innerHTML; makePOSTRequest("http://www.onstagescotland.co.uk/ajax/commareaupdate.php", "reviewcode=" + reviewcode); } } function updatemailarea() { makePOSTRequest("http://www.onstagescotland.co.uk/ajax/mailareaupdate.php", ""); } function allinit() { isMozilla = (document.all) ? 0 : 1; if (isMozilla) { if(document.addEventListener) { document.addEventListener("mousedown", MouseDown, true); document.addEventListener("mousemove", MouseMove, true); document.addEventListener("mouseup", MouseUp, true); } else document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP); } document.onmousedown = MouseDown; document.onmousemove = MouseMove; document.onmouseup = MouseUp; sizecheck(); showoutput(); showhide('editor'); if(document.getElementById('reviewid').value == "new") { showmsg('Please ensure this show is not currently listed on the "Coming Up" page. If it is, please click the link from that page to add your review.'); } } function sizecheck() { myWidth = 0; myHeight = 0; if( typeof( window.innerWidth ) == 'number' ) { //Non-IE myWidth = window.innerWidth; myHeight = window.innerHeight; } else if( document.documentElement && ( document.documentElement.clientWidth || document.documentElement.clientHeight ) ) { //IE 6+ in 'standards compliant mode' myWidth = document.documentElement.clientWidth; myHeight = document.documentElement.clientHeight; } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) { //IE 4 compatible myWidth = document.body.clientWidth; myHeight = document.body.clientHeight; } } function MouseDown(e) { if (over) { document.getElementById(DivID).style.zIndex = "7"; /* if(DivID != "fl_userbox") document.getElementById('fl_userbox').style.zIndex = "5"; */ if (isMozilla) { objDiv = document.getElementById(DivID); X = e.layerX; Y = e.layerY; return false; } else { objDiv = document.getElementById(DivID); objDiv = objDiv.style; X = event.offsetX; Y = event.offsetY; } } return true; } function MouseMove(e) { if(DivID == "editor") { var usewidth = "515"; var useheight = "30"; } if (objDiv) { if (isMozilla) { var useX = e.pageX; var useY = e.pageY; var scrollY = window.pageYOffset; var ua = navigator.userAgent; if(ua.indexOf("WebKit") != "-1") { // If we're in Safari or similar if(e.pageY - Y + (useheight * 1) > myHeight) objDiv.style.top = myHeight - useheight + 'px'; else if(e.pageY - Y < 0) objDiv.style.top = '0px'; else objDiv.style.top = (useY - Y) + 'px'; } else { if(e.pageY - Y - scrollY + (useheight * 1) > myHeight) objDiv.style.top = myHeight - useheight + 'px'; else if(e.pageY - scrollY - Y < 0) objDiv.style.top = '0px'; else objDiv.style.top = (useY - Y) - scrollY + 'px'; } if(e.pageX - X + (usewidth * 1) > myWidth) objDiv.style.left = myWidth - usewidth + 'px'; else if(e.pageX - X < 0) objDiv.style.left = '0px'; else objDiv.style.left = useX - X + 'px'; return false; } else { if(event.clientX-X + document.body.scrollLeft + (usewidth * 1) > myWidth) return false; else if(event.clientX-X + document.body.scrollLeft < 0) objDiv.pixelLeft = '0px'; else objDiv.pixelLeft = event.clientX-X + document.body.scrollLeft; if(event.clientY-Y + document.body.scrollTop + (useheight * 1) > myHeight) return false; else if(event.clientY-Y + document.body.scrollTop < 0) objDiv.pixelTop = '0px'; else objDiv.pixelTop = event.clientY-Y + document.body.scrollTop; return false; } } else { if (isMozilla) { X = e.pageX; Y = e.pageY; } else { X = event.clientX + document.body.scrollLeft; Y = event.clientY + document.body.scrollTop; } } return true; } function MouseUp() { objDiv = null; return true; } function showhide(element) { var checkstat = document.getElementById('showhide_' + element).innerHTML; if(checkstat == "(-)") { document.getElementById('showhide_' + element).innerHTML = "(+)"; fadebox(element, 'out'); if(element == "editor") document.getElementById('editorbuttons').style.display = "none"; } else { document.getElementById('showhide_' + element).innerHTML = "(-)"; fadebox(element, 'in'); if(element == "editor") setTimeout("document.getElementById('editorbuttons').style.display = \"block\"", 250); } showinfo('', element + 'cont'); } function fadebox(box, status) { var curopac = document.getElementById(box).style.opacity; var myOpac = new Fx.Tween(box); if(box == "msgwrap") { myOpac.set('opacity', 0); document.getElementById('msgwrap').style.display = "block"; } if(status == "in") { if(curopac != "1" && curopac != "") myOpac.start('opacity', 0.5, 1); } else if(status == "out") { myOpac.start('opacity', 1, 0.5); } else if(status == "partin") { myOpac.start('opacity', 0, 0.8); } else if(status == "allout") { myOpac.start('opacity', 0.8, 0); } } // Below here is Ajax bumph var fallback = 0; var xmlhttp = false; var output = ""; var params = ""; var lasturl = ""; var lastparams = ""; function makePOSTRequest(url, parameters) { params = parameters; xmlhttp = false; if (window.XMLHttpRequest) { // Mozilla, Safari,... xmlhttp = new XMLHttpRequest(); if (xmlhttp.overrideMimeType) { // set type accordingly to anticipated content type //xmlhttp.overrideMimeType('text/xml'); xmlhttp.overrideMimeType('text/html'); } } else if (window.ActiveXObject) { // IE try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {} } } if (!xmlhttp) { var fallback = 1; return false; } if(url == "http://www.onstagescotland.co.uk/ajax/venueinfo.php") xmlhttp.onreadystatechange = showvenueinfo; else if(url == "http://www.onstagescotland.co.uk/ajax/login.php" || url == "http://www.onstagescotland.co.uk/ajax/logout.php") xmlhttp.onreadystatechange = loginbox; else if(url == "http://www.onstagescotland.co.uk/ajax/savereview.php") xmlhttp.onreadystatechange = reviewsaved; else if(url == "http://www.onstagescotland.co.uk/ajax/commareaupdate.php") xmlhttp.onreadystatechange = commupdates; else if(url == "http://www.onstagescotland.co.uk/ajax/mailareaupdate.php") xmlhttp.onreadystatechange = mailupdates; else if(url == "http://www.onstagescotland.co.uk/ajax/postcomment.php") xmlhttp.onreadystatechange = commentadded; else if(url == "http://www.onstagescotland.co.uk/ajax/changepass.php" || url == "http://www.onstagescotland.co.uk/ajax/forgotpass.php" || url == "http://www.onstagescotland.co.uk/ajax/sendmail.php") xmlhttp.onreadystatechange = genericmsg; else xmlhttp.onreadystatechange = showresponse; xmlhttp.open('POST', url, true); xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); xmlhttp.setRequestHeader("Content-length", parameters.length); xmlhttp.setRequestHeader("Connection", "close"); xmlhttp.send(parameters); return false; } function showresponse() { if (xmlhttp.readyState == 4) { alert(xmlhttp.status + ": " + xmlhttp.responseText); } } function showvenueinfo() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { var output = xmlhttp.responseText.split("<><>"); if(output[1]) { document.getElementById(output[0]).innerHTML = output[3]; showinfo('', output[0]); loadmap('map_' + output[1], output[2]); } else ajaxerr(); } } } function loginbox() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { document.getElementById('loginbox').innerHTML = xmlhttp.responseText; updatemailarea(); } else ajaxerr(); } } function commupdates() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { document.getElementById('commform').innerHTML = xmlhttp.responseText; hidecommform(); } else ajaxerr(); } } function mailupdates() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { document.getElementById('mailingbox').innerHTML = xmlhttp.responseText; updatecommarea(); } else ajaxerr(); } } function commentadded() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { document.getElementById('comments').innerHTML = xmlhttp.responseText; hidecommform(); } else ajaxerr(); } } function genericmsg() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { showmsg(xmlhttp.responseText); } else ajaxerr(); } } function reviewsaved() { if (xmlhttp.readyState == 4) { if (xmlhttp.status == 200) { document.getElementById('savebutton').value = "Save"; document.getElementById('savebutton').disabled = false; var output = xmlhttp.responseText.split("<><>"); if(output[1]) { document.getElementById('reviewid').value = output[0]; showmsg(output[1]); } else ajaxerr(); } else ajaxerr(); } } function loadmap(mapid, location) { isMozilla = (document.all) ? 0 : 1; if (GBrowserIsCompatible()) { var map = new GMap2(document.getElementById(mapid)); var mapControl = new GSmallZoomControl(); map.addControl(mapControl); var geocoder = new GClientGeocoder(); function showAddress(address) { geocoder.getLatLng( address, function(point) { if (!point) { // alert(address + " not found"); } else { map.setCenter(point, 14); var marker = new GMarker(point); map.addOverlay(marker); // marker.openInfoWindowHtml(address); } } );} showAddress(location + ', UK'); document.getElementById(mapid).style.display = "block"; } } function showmail(id, second, link) { if(second && second != "") { if(link && link != "") var linktxt = link; else var linktxt = id + "@" + second; document.write("" + linktxt + ""); } else { if(link && link != "") var linktxt = link; else var linktxt = id + "@onstagescotland.org.uk"; document.write("" + linktxt + ""); } } function emailsub() { var name = document.getElementById('mailname').value; var email = document.getElementById('mailemail').value; var subject = document.getElementById('mailsubject').value; var message = document.getElementById('mailmessage').value; var spamcode = document.getElementById('mailspamcode').value; if(name != "" && email != "" && message != "") { name = encodeURI(name); name = name.replace(/&/g, "%26"); name = name.replace(/\+/g, "%2B"); name = name.replace(/#/g, "%23"); email = encodeURI(email); email = email.replace(/&/g, "%26"); email = email.replace(/\+/g, "%2B"); email = email.replace(/#/g, "%23"); subject = encodeURI(subject); subject = subject.replace(/&/g, "%26"); subject = subject.replace(/\+/g, "%2B"); subject = subject.replace(/#/g, "%23"); message = encodeURI(message); message = message.replace(/&/g, "%26"); message = message.replace(/\+/g, "%2B"); message = message.replace(/#/g, "%23"); var poststr = "name=" + name + "&email=" + email + "&subject=" + subject + "&message=" + message + "&antispam=" + spamcode; makePOSTRequest('ajax/sendmail.php', poststr); } else { showmsg('You must enter your name, e-mail address and message.'); } } function selonly() { document.getElementById('only').checked = "checked"; } function checkplaces(isloaded) { var places = document.getElementById('placesbox'); var venuesbox = document.getElementById('venuesbox'); venuesbox.length = 0; var venues = document.getElementById('fullselectbox'); var selplaces = new Array(); var k = 0; var showall = 0; var curvalue = ""; var curtext = ""; var showplace = ""; var output = ""; var seltext = false; for(var i = places.options.length-1; i >= 0;i--) { if(places.options[i].selected) { selplaces[k] = places.options[i].value; if(selplaces[k] == "0") showall = "1"; k++; } } for(var i = 0; i < venues.options.length; i++) { curvalue = venues.options[i].value; showplace = 0; seltext = false; for(var j = 0; j < selplaces.length; j++) { curtext = ", " + selplaces[j]; if(venues.options[i].text.indexOf(selplaces[j]) != "-1" || showall == "1" || venues.options[i].text == "All") { if(selplaces[j] != "Edinburgh" || venues.options[i].text.indexOf(" (Festival)") == "-1") { showplace = 1; if(isloaded == 1) { if(venues.options[i].selected) seltext = true; } else { if(venues.options[i].text == "All") seltext = true; } } } } if(showplace == 1) { venuesbox.options[venuesbox.length] = new Option(venues.options[i].text, curvalue, seltext, seltext); } } } function addtolist(filename) { var img1box = document.getElementById('image1'); var img2box = document.getElementById('image2'); img1box.add(new Option(filename, filename), 0); img2box.add(new Option(filename, filename), 0); } function compchk() { document.getElementById('company2').style.display = "block"; document.getElementById('company3').style.display = "block"; document.getElementById('company4').style.display = "block"; document.getElementById('subheadline').style.display = "none"; if(document.getElementById('company').value == "") { document.getElementById('company2').style.display = "none"; document.getElementById('company3').style.display = "none"; document.getElementById('company4').style.display = "none"; document.getElementById('company2').value = ""; document.getElementById('company3').value = ""; document.getElementById('company4').value = ""; document.getElementById('subheadline').style.display = "block"; } else if(document.getElementById('company2').value == "") { document.getElementById('company3').style.display = "none"; document.getElementById('company4').style.display = "none"; document.getElementById('company3').value = ""; document.getElementById('company4').value = ""; } else if(document.getElementById('company3').value == "") { document.getElementById('company4').style.display = "none"; document.getElementById('company4').value = ""; } } function addevent() { var neweventno = document.getElementById('eventstot').innerHTML; var nextno = (neweventno * 1) + 1; var eventcode = document.getElementById('eventstemplate').innerHTML; eventcode = eventcode.replace(/"/g, "\""); eventcode = eventcode.replace(/</g, "<"); eventcode = eventcode.replace(/>/g, ">"); eventcode = eventcode.replace(/ossnewno2/g, nextno); eventcode = eventcode.replace(/ossnewno/g, neweventno); document.getElementById('eventstable' + neweventno).innerHTML += eventcode + "<\/span>"; document.getElementById('eventstot').innerHTML = nextno; }