var donateState = "";
var totaldonation = 0;
var amt = "";
function makedonation() {
    paypalradio = document.getElementById('paypal_radio').checked;
    creditcardradio = document.getElementById('creditcard_radio').checked;
    donateState = document.getElementById('ticket_content').innerHTML;
    if(document.getElementById('paypal_radio').checked == true) {
        document.getElementById('paypalform').submit();
    } else {
        if(document.getElementById('creditcard_radio').checked == true) {
            loadContent('/form/donation_form-en.html');
        }
    }
}

function donationpayment() {
    firstname = document.getElementById('first-name').value;
    lastname = document.getElementById('last-name').value;
    email = document.getElementById('email').value;
    confirm = document.getElementById('confirm').value;
    phone = document.getElementById('phone').value;
    street = document.getElementById('street').value;
    street2 = document.getElementById('street2').value;
    city = document.getElementById('city').value;
    state = document.getElementById('state').options[document.getElementById('state').selectedIndex].value;
    zip = document.getElementById('zip').value;
    cardtype = document.getElementById('card-type').options[document.getElementById('card-type').selectedIndex].value;
    cardnumber = document.getElementById('card-number').value;
    security = document.getElementById('security').value;
    month = document.getElementById('month').options[document.getElementById('month').selectedIndex].value;
    year = document.getElementById('year').options[document.getElementById('year').selectedIndex].value;
    amt = document.getElementById('amt').value;
    totaldonation = amt;

    var post_data = '';
    var fn = false;
    var ln = false;
    var em = false;
    var ph = false;
    var st = false;
    var ct = false;
    var se = false;
    var zp = false;
    var ce = false;
    var cn = false;
    var sc = false;
    var mh = false;
    var ye = false;
    var am = false;
    
    if(amt != '') {
        am = true;
    } else {
        document.getElementById('amt').className = 'input1_error';
    }

    if(firstname != '') {
        fn = true;
    } else {
        document.getElementById('first-name').className = 'input1_error';
    }

    if(lastname != '') {
        ln = true;
    } else {
        document.getElementById('last-name').className = 'input1_error';
    }

    if(email != '') {
        if(check_email('email') == true) {
            if(email == confirm) {
                em = true;
            } else {
                document.getElementById('email').className = 'input1_error';
                document.getElementById('confirm').className = 'input1_error';
                alert("Email and Confirm email fields don'y match!");
            }
        } else {
            document.getElementById('email').className = 'input1_error';
            alert('E-mail incorrect!');
        }
    } else {
        document.getElementById('email').className = 'input1_error';
    }

    if(confirm == '') {
        document.getElementById('confirm').className = 'input1_error';
    }

    if(phone != '') {
        ph = true;
    } else {
        document.getElementById('phone').className = 'input1_error';
    }

    if(street != '') {
        st = true;
    } else {
        document.getElementById('street').className = 'input3_error';
    }

    if(city != '') {
        ct = true;
    } else {
        document.getElementById('city').className = 'input1_error';
    }

    if(state != '') {
        se = true;
    } else {
        document.getElementById('state').className = 'text2_error';
    }

    if(zip != '') {
        zp = true;
    } else {
        document.getElementById('zip').className = 'input2_error';
    }

    if(cardtype != '') {
        ce = true;
    } else {
        document.getElementById('card-type').className = 'text1_error';
    }

    if(cardnumber != '') {
        cn = true;
    } else {
        document.getElementById('card-number').className = 'input1_error';
    }

    if(security != '') {
        sc = true;
    } else {
        document.getElementById('security').className = 'input1_error';
    }

    if(month != '') {
        mh = true;
    } else {
        document.getElementById('month').className = 'text2_error';
    }

    if(year != '') {
        ye = true;
    } else {
        document.getElementById('year').className = 'text2_error';
    }

    if(am == true && fn == true && ln == true && em == true && ph == true && st == true && ct == true && se == true && zp == true && cn == true && ce == true && sc == true && mh == true && ye == true) {
       
        post_data = 'fn='+encodeURIComponent(firstname)+'&ln='+encodeURIComponent(lastname)+'&em='+encodeURIComponent(email)+'&ph='+encodeURIComponent(phone)+'&st='+encodeURIComponent(street)+'&st2='+encodeURIComponent(street2)+
        '&ct='+encodeURIComponent(city)+'&se='+encodeURIComponent(state)+'&zp='+encodeURIComponent(zip)+'&cn='+encodeURIComponent(cardnumber)+'&sc='+encodeURIComponent(security)+
        '&mh='+encodeURIComponent(month)+'&ye='+encodeURIComponent(year)+'&ce='+encodeURIComponent(cardtype);

        post_data += '&amt='+encodeURIComponent(amt);

        var req = initXMLHttpClient();
        req.onreadystatechange = function() {
            if(req.readyState == 1){
                document.getElementById('ticket_content').innerHTML = '<div class="sending"><h3>Sending...</h3><p>Please wait for a moment</p><img src="/images/sending.gif" width="16" height="16" alt="sending" /></div>';
            }

            if(req.readyState == 4) {
                if(req.status == 200) {
                    if(req.responseXML.getElementsByTagName("error")[0].childNodes[0].nodeValue == 'false' && req.responseXML.getElementsByTagName("payment")[0].childNodes[0].nodeValue == 'complete') {
                        document.getElementById('ticket_content').innerHTML = genDonationSummary(decodeURIComponent(req.responseXML.getElementsByTagName("transactionID")[0].childNodes[0].nodeValue));
                        
                    }else{
                        document.getElementById('ticket_content').innerHTML = '<div class="sending"><h3>ERROR</h3><p>' + decodeURIComponent(req.responseXML.getElementsByTagName("msg")[0].childNodes[0].nodeValue) + '</p></div>';
                    }
                } else {
                    alert('Load error: ['+req.status+'] '+req.statusText);
                }
            }
        };
        req.open('POST','/donate/creditcardpayment', true);
        req.setRequestHeader('Content-type', 'application/x-www-form-urlencoded;charset=UTF-8;');
        req.send(post_data);
    } else {
        alert("Please fill required fields.");
    }
}

function prevdonate() {
    document.getElementById('ticket_content').innerHTML = donateState;
}

function genDonationSummary(orderid) { 
    var html = '<h2>Order summary</h2>';
    html += '<p>Dear <strong>'+ firstname +' ' + lastname +'</strong><br/>';
    html += 'Your order <strong>'+ orderid +'</strong> has been  <strong>Completed</strong>.</p><br />';
    html += '<p>Transaction ID: '+ orderid +'</p>';
    html += '<p>TOTAL: $'+ totaldonation +'</p>';
    html += '<p><span class="red">Please print out this page, and make sure to write down the transaction ID number.</span><br />';
    html += '<p>If you have any questions, please contact us at <span class="red"><a href="mailto:info@bohemianbenevolent.org" > info@bohemianbenevolent.org</a></span> or by phone at +1 212 988 1733</p>';
    html += '<p>Thank you.<br />';
    html += '<strong>Bohemian Benevolent &amp; Literary Association</strong></p>';
    return html;
}
