﻿function validEmail(email) {
    var pattern = new RegExp(/^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]+$/);
    return pattern.test(email);
}
/* date format mm-dd-yyyy or mm/dd/yyyy */
function validDate(date) {
    var pattern = new RegExp(/\b\d{1,2}[\/-]\d{1,2}[\/-]\d{4}\b/);
    return pattern.test(date);
}
/* phone gom numbers,+,- */
function phoneNumber(phone) {
    var pattern = new RegExp(/^[0-9-+]+$/);
    return pattern.test(phone);
}
/* username gom cac ky tu a-z A-Z 0-9 */
function validUserName(name) {
    var pattern = new RegExp(/^[a-zA-Z0-9_]+$/);
    return pattern.test(name);
}
/*valid character and numberical*/
function validCharacterNumberical(string) {
    var pattern = new RegExp(/^[a-zA-Z0-9]+$/);
    return pattern.test(String);
}
/*load internal js*/
function loadjs(directory, filename) {
    $(document).ready(function () {
        var s = document.createElement("script");
        s.type = "text/javascript";
        s.src = directory + "/" + filename + "";
        $("head").append(s);
    });
}
/*get title on select option*/
function getAttributeOnSelectOption(element, attribute) {
    return $(element + " option:selected").attr(attribute);
}
/*format date json*/
function formatdate(jdate) {
    var v = new Date(parseInt(jdate.replace('/Date(', '').replace(')/', '')));
    return v.getDate() + '/' + (v.getMonth() + 1) + '/' + v.getFullYear() + ' ' + v.getHours() + ':' + v.getMinutes() + ':' + v.getSeconds();
}
function formatdateno(jdate) {
    var v = new Date(parseInt(jdate.replace('/Date(', '').replace(')/', '')));
    return v.getDate() + '/' + (v.getMonth() + 1) + '/' + v.getFullYear();
}
/*get current date*/
function currentdate() {
    var a = new Date();
    return a.getDate() + '-' + (a.getMonth() + 1) + '-' + a.getFullYear() + ' ' + a.getHours() + ':' + a.getMinutes() + ':' + a.getSeconds();
}
/**/
function getwidthscreen() {
    return $(window).width();
}
function getheightscreen() {
    return $(window).height();
}
/**/
function create_element(e, x, y, m) {
    if (!$("#" + e).length) {
        $("body").append("<div id='" + e + "'>" + m + "</div>");
    }
    $("#" + e).css({ 'position': 'fixed', 'left': x, 'top': y });
}
/*resize text*/
function resizetextbox(e, h) {
    var textarea = document.getElementById(e);
    if (textarea.scrollHeight > h) {
        textarea.style.height = (textarea.scrollHeight) + 'px';
    }
}
/**/
function encode(txt) {
    return txt.replace(/"/g, "&quot;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/'/g, "&#39;");
}
function decode(txt) {
    return txt.replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&quot;/g, '"').replace(/&#39;/g, '\'');
}
/**/
function watermarkfocus(objname, waterMarkText) {
    obj = document.getElementById(objname);
    if (obj.value == waterMarkText) {
        $("#" + objname).css({ 'border': '2px solid #E2641B', 'color': 'red' });
        obj.value = "";
    }
    else {
        $("#" + objname).css({ 'border': '2px solid #6B9FCE', 'color': 'black' });
    }
}
function watermarkblur(objname, waterMarkText) {
    obj = document.getElementById(objname);
    if (obj.value == "" || obj.value == waterMarkText) {
        $("#" + objname).css({ 'border': '2px solid #E2641B', 'color': 'red' });
        obj.value = waterMarkText;
    }
    else {
        $("#" + objname).css({ 'border': '2px solid #6B9FCE', 'color': 'black' });
    }
}
/*keypress*/
function keypressnextbox(e1, e2) {
    $(e1).keypress(function (event) {
        if (event.which == "13") {
            if ($(e2).length) {
                $(e2).focus();
            }
        }
    });
}
function redirect(url) {
    window.location = url;
}
// Service Ajax
var varType;
var varUrl;
var varData;
var varContentType;
var varDataType;
var varProcessData;
var varAsync = true;

//Generic function to call AXMX/WCF  Service
function CallService(i, e, m) {
    $.ajax({
        type: varType, //GET or POST or PUT or DELETE verb
        url: varUrl, // Location of the service
        data: varData, //Data sent to server
        contentType: varContentType, // content type sent to server
        cache: false,
        async: varAsync,
        dataType: varDataType, //Expected data format from server
        processdata: varProcessData, //True or False
        success: function (msg) {//On Successfull service call
            m(msg, i, e);
        },
        error: ServiceFailed// When Service call fails
    });

}
function ServiceFailed(result) {
   // alert('Service call failed: ' + result.status + ' ' + result.statusText);
    varType = null;
    varUrl = null;
    varData = null;
    varContentType = null;
    varDataType = null;
    varProcessData = null;
}
