function getLogin() {
    var bin = 'bin/showLogin.php';
    var params = '';
    var res = 'content';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function checkLogin(usr,pwd) {
    var bin = 'bin/checkLogin.php';
    var params = 'user=' + usr + '&pass=' + pwd;
    var res = '';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params, onSuccess: doLogin});
}

function resetPassword(auth, password) {
    new Ajax.Updater('login', 'bin/resetPassword.php', {
        method: 'post',
        parameters: 'auth=' + auth + '&pass=' + password
    });
}

function doLogin(req) {
    if (req.responseText==1) {
        document.getElementById('login_error').innerHTML = "";
        document.location = 'main.php';
    } else {
        document.getElementById('login_error').innerHTML = "Invalid Login";
    }
}

function logout() {
    var bin = 'bin/logout.php';
    var params = '';
    var res = '';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params, onSuccess: redirect});
}

function redirect() {
    document.location = 'index.html';
}

function checkUser(usr) {
    var bin = 'bin/checkDupUser.php';
    var params = 'usr=' + usr;
    var res = 'user_error';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function checkDupEmail(email) {
    new Ajax.Request('bin/checkDupEmail.php', {
        method: 'post',
        parameters: 'email=' + email,
        onSuccess: function(transport) {
            if (transport.responseText == 'FOUND_MATCH') {
                if (!$('emailError')) {                
                    $('email').insert({
                    'after': '<span id="emailError" style="font-weight: bold; font-size: 0.9em;color: red;margin-left: 5px;">Error: This email address is already in use.</span>'
                    });
                }
                $('email').value = '';
            } else {
                $('emailError').remove();
            }
        }
    });
}

function getDirections(location) {
    var bin = 'bin/getDirections.php';
    var params = 'loc=' + location;
    var res = 'directions';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function doDeleteRoutine(id) {
    var response = window.confirm("Are you sure you want to delete entry " + id + "?");
    if (response) {
        deleteRoutine(id);
    }
}

function deleteRoutine(id) {
    var bin = 'bin/deleteRoutine.php';
    var params = 'id=' + id;
    var res = 'mainContent';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function saveRoutine(serializedForm) {
    var bin = 'bin/saveRoutine.php';
    var params = serializedForm;
    var res = 'mainContent';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function editRoutine(id) {
    var bin = 'bin/editRoutine.php';
    var params = 'id=' + id;
    var res = 'routinePopUp';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params, evalScripts: true});
}

function reloadRoutineForm() {
    var bin = 'bin/reloadRoutineForm.php';
    var params = '';
    var res = 'routinePopUp';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params, evalScripts: true});
}

function doDeleteStudent(id) {
    var response = window.confirm("Are you sure you want to delete entry " + id + "?");
    if (response) {
        deleteStudent(id);
    }
}

function deleteStudent(id) {
    var bin = 'bin/deleteStudent.php';
    var params = 'id=' + id;
    var res = 'mainContent';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function saveStudent(serializedForm) {
    var bin = 'bin/saveStudent.php';
    var params = serializedForm;
    var res = 'mainContent';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function editStudent(id) {
    var bin = 'bin/editStudent.php';
    var params = 'id=' + id;
    var res = 'studentPopUp';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params, evalScripts: true});
}

function reloadStudentForm() {
    var bin = 'bin/reloadStudentForm.php';
    var params = '';
    var res = 'studentPopUp';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params, evalScripts: true});
}

function updateAccount(serializedForm) {
    var bin = 'bin/updateAccount.php';
    var params = serializedForm;
    var res = 'mainContent';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function getResultsSearch(serializedForm) {
    var bin = 'bin/getResultSearch.php';
    var params = serializedForm;
    var res = 'theresults';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function getStudentResultsSearch(serializedForm) {
    var bin = 'bin/getStudentResultSearch.php';
    var params = serializedForm;
    var res = 'theresults2';

    var ajax = new Ajax.Updater(res, bin, {method: 'post', parameters: params});
}

function getStudentShows1(year) {
    var url = 'bin/getShows.php';
    new Ajax.Updater('studentShows1', url, {
        method: 'post',
        parameters: 'year=' + year
    });
}

function getStudentShows2(year) {
    var url = 'bin/getShows.php';
    new Ajax.Updater('studentShows2', url, {
        method: 'post',
        parameters: 'year=' + year
    });
}

function getStudioResults(year) {
    var url = 'bin/getStudioResults.php';
    new Ajax.Updater('studioResults', url, {
        method: 'post',
        parameters: 'year=' + year
    });
}

function setPayment(paymentType,showID) {
    var url = 'bin/setPaymentType.php';
    new Ajax.Request(url, {
        method: 'post',
        parameters: 'paymentType=' + paymentType + '&showID=' + showID
    });   
}

function emailPaymentOption(show_name,show_id,studio_name,studio_id,tableContent,paymentMethod,customerEmail) {
    var url = 'bin/emailPaymentOption.php';
    new Ajax.Request(url, {
        method: 'post',
        parameters: 'studio_name=' + studio_name + '&show_id=' + show_id + '&show_name=' + show_name + '&studio_id=' + studio_id + '&tableContent=' + tableContent + '&paymentMethod=' + paymentMethod + '&customerEmail=' + customerEmail
    });
}

function forgotPassword(email) {
    new Ajax.Request('bin/forgotPassword.php', {
        method: 'post',
        parameters: 'email=' + email,
        onSuccess: function(transport) {
            if (transport.responseText == 'NO_MATCHES') {
                document.getElementById('popupContent').innerHTML="Sorry, we couldn't find that email address. Please try again.<br><br><input type='button' value='Ok' onclick='Modalbox.hide()'>";
            } else {
                document.getElementById('popupContent').innerHTML="Your password reset request has been sent.<br><br><input type='button' value='Ok' onclick='Modalbox.hide()'>";
            }
        }
    });
}

function forgotUsername(email) {
    new Ajax.Request('bin/forgotUsername.php', {
        method: 'post',
        parameters: 'email=' + email,
        onSuccess: function(transport) {
            if (transport.responseText == 'NO_MATCHES') {
                document.getElementById('popupContent').innerHTML="Sorry, we couldn't find that email address. Please try again.<br><br><input type='button' value='Ok' onclick='Modalbox.hide()'>";
            } else {
                document.getElementById('popupContent').innerHTML="Your username has been sent.<br><br><input type='button' value='Ok' onclick='Modalbox.hide()'>";
            }
        }
    });
}

function addUser(serializedForm) {
    new Ajax.Request('bin/addUser.php', {
        method: 'post',
        parameters: serializedForm,
        onSuccess: function(transport) {
            Modalbox.show('<div id="popupContent"><b>Thank you. We now need to verify your email address. We\'ll send you an email with a link where you can create your new password.</b><br><br><input type=\'button\' value=\'Send Email\' onclick=\'forgotPassword(document.signup.email.value);\' /></div></div>', {title: 'User Activation', width: 400, slideDownDuration: 0.01, slideUpDuration: 0.01});
        }
    });
}

