function loadHTML(url, destination, eventComplete){
    var dstObject = document.getElementById(destination);
    var request;
    if (typeof(XMLHttpRequest) != "undefined")
        request = new XMLHttpRequest();
    else
        request = new ActiveXObject('Microsoft.XMLHTTP');
    var params = url.substr(url.indexOf('?') + 1);
    url = url.substr(0, url.indexOf('?'));
    request.open('POST', url, false);
    request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    request.setRequestHeader("Content-length", params.length);
    request.setRequestHeader("Connection", "close");
    request.send(params);
    if (request.status == 200) {
        var resp = request.responseText;
        var code = '';
        if (resp.indexOf('~SCRIPT~:') != -1) {
            code = resp.substr(resp.indexOf('~SCRIPT~:') + '~SCRIPT~:'.length);
            resp = resp.substr(0, resp.indexOf('~SCRIPT~:'));
        }
        if (dstObject.tagName == 'SELECT') {
            var opts = resp.split('</option>');
            opts.pop();
            dstObject.options.length = opts.length;
            for (var i = 0; i < opts.length; i++) {
                if (/<option value="(.*?)"(| selected)>(.*)/.test(opts[i])) {
                    dstObject.options[i] = new Option(RegExp.$3, RegExp.$1, RegExp.$2.length > 0, RegExp.$2.length > 0);
                }
            }
        }
        else
            dstObject.innerHTML = resp;
        if (code.length > 0) eval(code);
    } else
        dstObject.innerHTML = 'Error: ' + request.status;
}

function popitup(url) {
    newwindow=window.open(url,'name','height=521,width=512');
    if (window.focus) {newwindow.focus()}
    return false;
}


function onResize() {
    var docWidth = document.compatMode == 'CSS1Compat' && !window.opera ?
        document.documentElement.clientWidth : document.body.clientWidth;
    var frmMail = document.getElementById('frmMail');
    if (frmMail) frmMail.style.left = ((docWidth - frmMail.offsetWidth) / 2).toFixed(0) + 'px';
}

function validateForm() {
    var year = document.getElementsByName('startYear')[0].value;
    if (year.replace(/\s/g, '')) if (!/^\d{4}?$/.test(year)) {
        alert('Please enter correct start year.');
        return false;
    }
    var year = document.getElementsByName('endYear')[0].value;
    if (year.replace(/\s/g, '')) if (!/^\d{4}?$/.test(year)) {
        alert('Please enter correct end year.');
        return false;
    }
    return true;
}

function changeSite() {
    var arrSites = [];
    if (document.getElementsByName('copart')[0].checked) arrSites.push('copart');
    if (document.getElementsByName('iaai')[0].checked) arrSites.push('iaai');
    if (document.getElementsByName('manheim')[0].checked) arrSites.push('manheim');
    if (document.getElementsByName('salvagedirect')[0].checked) arrSites.push('salvagedirect');
    sites = arrSites.join(',');
    setTimeout("loadHTML('ajax.php?VehicleTypes=1&VehicleTypeId=1&Sites=" + sites + "', 'vehicletype');", 1);
    setTimeout("loadHTML('ajax.php?VehicleTypeId=1&Sites=" + sites + "', 'make');", 1);
    var model = document.getElementsByName('model')[0];
    model.options.length = 1;
    model.options[0] = new Option('All', '*', true, true);
    setTimeout("loadHTML('ajax.php?StateId=" + document.getElementsByName('state')[0].value + "&Sites=" + sites + "', 'location');", 1);
}

function showMailForm(caption) {
    document.getElementById('frmMailCaption').innerHTML = caption;
    document.getElementById('questions_and').style.display = caption.indexOf('$') != -1 ? 'none' : '';
    document.getElementById('frmMail').style.display = '';
    onResize();
}

function validateMailForm() {
    if (!document.getElementsByName('firstname')[0].value) {
        alert('First name is required.');
        return false;
    }
    var email = document.getElementsByName('email')[0].value;
    if (!email) {
        alert('E-mail name is required.');
        return false;
    }
    if (!/.*?@.*?\..*?/.test(email)) {
        alert('Please enter correct e-mail.');
        return false;
    }
    return true;
}

function btnBuyNowClick() {
    var bid = document.getElementById('buynow_price').innerHTML;
    document.getElementById('txtBid').value = bid;
    showMailForm('Buy Now ' + document.getElementById('year_make_model').innerHTML + ' for $' + bid);
}

function btnBidClick() {
    var bid = document.getElementById('txtBid').value.replace(',', '');
    var minNewBid = document.getElementById('minNewBid').innerHTML;
    if (bid != bid * 1) { alert('Bid should be a number!'); return; }
    if (bid < minNewBid) { alert('Bid should be greater or equal to $' + minNewBid + '!'); return; }
    showMailForm('Bid $' + document.getElementById('txtBid').value + ' on ' + document.getElementById('year_make_model').innerHTML);
}

function sendMail() {    
    var isBid = document.getElementById('frmMailCaption').innerHTML.indexOf('$') != -1;
    loadHTML('ajax.php?firstname=' + escape(document.getElementsByName('firstname')[0].value) +
        '&lastname=' + escape(document.getElementsByName('lastname')[0].value) +
        '&email=' + escape(document.getElementsByName('email')[0].value) +
        '&phone=' + escape(document.getElementsByName('phone')[0].value) +
        '&message=' + escape(document.getElementsByName('message')[0].value) +
        (isBid ? '&bid=' + escape(document.getElementById('txtBid').value) : '') +
        '&caption=' + escape(document.getElementById('frmMailCaption').innerHTML) +
        '&url=' + escape(location.href), 'mailResponse');
    scanMailResponse();
}

function scanMailResponse() {
    var mailResponse = document.getElementById('mailResponse');
    if (mailResponse.innerHTML == '') setTimeout('scanMailResponse()', 100);
    else {
        var msg = mailResponse.innerHTML;
        mailResponse.innerHTML = '';
        if (msg.substr(0, 'BID='.length) == 'BID=') {
            document.getElementById('bid_value').innerHTML = msg.split('&')[0].split('=')[1];
            document.getElementById('minNewBid').innerHTML = msg.split('&')[1].split('=')[1];
            document.getElementById('txtBid').value = '';
            document.getElementById('its_your_bid').innerHTML = " It's Your Bid!";
        }
        else
            alert(msg);
    }
}
