function text_change(i) {
var t = document.getElementById( 'text' + i );
var l = document.getElementById( 'textl' + i );
var rs = document.getElementById( 'radio_s' + i );
if (rs.checked) {
l.value = t.value.length + '/' + '32';
} else {
l.value = t.value.length + '/' + '5';
}
}
function radio_change(size, i) {
var t = document.getElementById( 'text' + i );
var l = document.getElementById( 'textl' + i );
if (size == 'l') {
if (t.value.length > 5) {
alert ('For large fonts the maximum number of allowed characters is 5, please modify your text');
}
t.maxLength = 5;
l.value = t.value.length + '/' + '5';
} else {
t.maxLength = 32;
l.value = t.value.length + '/' + '32';
}
}
function clear_bubble_radio(i) {
var radios = document.getElementsByName('bubble'+i);
for (var i = 0; i < radios.length; i++) {
radios[i].checked = false;
}
}
function getFormValues(fobj) {
var str = "";
for(var i = 0;i < fobj.elements.length;i++) {
switch(fobj.elements[i].type) {
case "hidden":str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
break;
case "text": str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
break;
case "radio": if (fobj.elements[i].checked) {
str += fobj.elements[i].name + "=" + escape(fobj.elements[i].value) + "&";
}
break;
}
}
str = str.substr(0,(str.length - 1));
return str;
}
function BubbleReqChange() {
var t = document.getElementById( 'thanksres' );
var d = document.getElementById( 'divres' );
var i = document.getElementById( 'imgres' );
var erHTML = 'There was an error creating your bubble, if this error persists please contact us';
if (req.readyState == 4) {
if (req.status == 200) {
if (req.responseXML != null) {
if (req.responseText == 'no frames') {
d.innerHTML = 'Please select at least one frame that uses a bubble';
return;
}
var img = req.responseXML.getElementsByTagName('img')[0];
var res = req.responseXML.getElementsByTagName('res')[0];
req = false;
if ((img == null) || (res == null)) {
d.innerHTML = erHTML;
} else { // good return from php
i.src = img.firstChild.nodeValue;
d.innerHTML = res.firstChild.nodeValue;
}
} else { // responseXML is null
d.innerHTML = erHTML;
}
} // status == 200
} // readystate = 4
}
function ThanksReqChange() {
var erHTML = 'There was an error submitting your bubble. Possibly, you tried to submit the same bubble more than once.';
var t = document.getElementById( 'thanksres' );
if (req.readyState == 4) {
if (req.status == 200) {
if (req.responseXML != null) {
var tag = req.responseXML.getElementsByTagName('res')[0];
if (tag == null) {
t.innerHTML = erHTML;
} else {
t.innerHTML = tag.firstChild.nodeValue;
}
} else {
t.innerHTML = erHTML;
}
} // status = 200
} // readystate = 4
}
function AjaxDo( form, url ) {
var backfunc;
if (form.name == 'b_form') {
backfunc = BubbleReqChange;
var t;
var r;
var c;
for(var i=1; i <= 4; i++) {
t = document.getElementById( 'text'+i );
if (t.value.length != 0) {
c = false;
r = document.getElementsByName('bubble'+i);
for (var j = 0; j < r.length; j++) {
if (r[j].checked) c=true;
}
if (!c) {
alert('You seem to have forgotten to select a bubble type for frame number ' + i);
return;
}
}
}
// reset old bubble if there is, we dont reset it while submitting it for our public viewing
var tr = document.getElementById( 'thanksres' );
var dr = document.getElementById( 'divres' );
var ir = document.getElementById( 'imgres' );
ir.src = 'images/dot.bmp';
tr.innerHTML = '';
dr.innerHTML = '';
} else {
backfunc = ThanksReqChange;
}
req = false;
if(window.XMLHttpRequest) {
try {
req = new XMLHttpRequest();
} catch(e) {
req = false;
}
}
else if(window.ActiveXObject) {
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
req = false;
}
}
}
if(req) {
var paramstr = getFormValues( form, "");
req.open("POST", url, true);
req.onreadystatechange = backfunc;
req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
req.send(paramstr);
}
}