﻿var carpool = {};

carpool.ContactMethod = {
    NOT_SPECIFIED : 0,
    EMAIL : 1,
    PHONE : 2,
    BOTH : 3
}

carpool.TripCommuteMethod = {
    DRIVE : 1,
    PUBLIC_TRANSIT : 2,
    WALK_BICYCLE : 3,
    NOT_TRAVELING : 4
}

carpool.validateEmail = function (email) {
    var pattern = new RegExp(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]+$/);
    return pattern.test(email);
}

carpool.validatePostalCode = function (pc) {
    var pattern = new RegExp(/^[ABCEFGHJKLMNPRSTVXYabcefghjklmnprstvxy][0-9][ABCEFGHJKLMNPRSTVWXYZabcefghjklmnprstvwxyz][0-9][ABCEFGHJKLMNPRSTVWXYZabcefghjklmnprstvwxyz][0-9]$/);
    return pattern.test(pc);
}

carpool.validatePhone = function (phone) {
    var pattern = new RegExp(/^\d{3}-\d{3}-\d{4}$/);
    return pattern.test(phone);
}

carpool.validateDecimal = function (v) {
    var pattern = new RegExp(/^[0-9]+([\.\,][0-9]+)?$/);
    return pattern.test(v);
}

carpool.validateInteger = function (v) {
    var pattern = new RegExp(/^\d+$/);
    return pattern.test(v);
}

carpool.isInteger = function (n) {
    return Math.floor(n) == n ? true : false;
}

carpool.isNumeric = function (n) {
    return !isNaN(parseFloat(n)) && isFinite(n);
}

carpool.addError = function (list, err) {
    $('#' + list).append($('<li></li>').text(err));
}

carpool.showModal = function (title, msg) {
    $('<div></div>').dialog({
        modal: true,
        resizable: false,
        width: 350,
        title: title,
        height: 'auto',
        minHeight: 200,
        buttons: [{ text: 'OK', click: function () { $(this).dialog('close'); }}]
    }).html('<div>' + msg + '</div>');
}

carpool.getUrlVars = function () {

    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');

    for (var i = 0; i < hashes.length; i++) {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }

    return vars
}

carpool.getUrlParam = function () {

    if (window.location.href.indexOf('?') != -1) {
        return window.location.href.slice(window.location.href.indexOf('?') + 1);
    }
    return ''
}

carpool.get24Clock = function (hr, mm, me) {

    if (hr === '' || mm === '' || me === '') return 0;

    if (hr === '12' && me === 'AM') {
        hr = '0';
    } else if (hr !== '12' && me === 'PM') {
        hr = (parseInt(hr) + 12).toString();
    }

    return parseInt(hr + mm);
}
