function fbsCalendar(id, target, type, year, month, day) { if (type != "s") { if (year == -1) { var date = document.getElementById(id).value.split("-"); if (date.length == 3) { year = (date[0] == "" ? 2025 : date[0]); month = (date[1] == "" ? 7 : date[1]); day = (date[2] == "" ? 26 : date[2]); } } var xmlhttp = new XMLHttpRequest(); xmlhttp.onreadystatechange = function() { if (this.readyState == 4 && this.status == 200) { document.getElementById(id + "Div").innerHTML = this.responseText; } }; xmlhttp.open("GET", "http://fbs.meanderlakes.com.au/ajax/Calendar.php?id=" + id + "&target=" + target + "&t=" + type + "&y=" + year + "&m=" + month + "&d=" + day, true); xmlhttp.send(); } else { var date = year + "-" + month + "-" + day; document.getElementById(id).value = date; var element = document.getElementById(id + "Div"); element.parentNode.removeChild(element); if (target.length > 0) { var target = document.getElementById(target); if (target != null && target.value.length == 0) target.value = date; } } } function insertAfter(newElement, targetElement) { //target is what you want it to go after. Look for this elements parent. var parent = targetElement.parentNode; //if the parents lastchild is the targetElement... if(parent.lastchild == targetElement) { //add the newElement after the target element. parent.appendChild(newElement); } else { // else the target has siblings, insert the new element between the target and it's next sibling. parent.insertBefore(newElement, targetElement.nextSibling); } } function fbsCalendarShow(obj, target) { var div = document.getElementById(obj.id + "Div"); if (div == null) { div = document.createElement("div"); div.id = obj.id + "Div"; div.className = "fbsCalendar"; insertAfter(div, obj); fbsCalendar(obj.id, target, 'd', -1, -1, -1); } else { div.parentNode.removeChild(div); } }