﻿function ShowPopUpWithScroll(url, width, height) {

    var left = (screen.width / 2) - (width / 2);
    var top = (screen.height / 2) - (height / 2);

    window.open(url, "", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no,width=" + width + ",height=" + height + ",top=" + top + ",left=" + left + "");
}
Array.prototype.remove = function (from, to) {
    var rest = this.slice((to || from) + 1 || this.length);
    this.length = from < 0 ? this.length + from : from;
    return this.push.apply(this, rest);
}
Array.prototype.contains = function (element) {
    for (var i = 0; i < this.length; i++) {
        if (this[i] == element) {
            return true;
        }
    }
    return false;
}
function validate(evt) {
    var theEvent = evt || window.event;
    var key = theEvent.keyCode || theEvent.which;
    key = String.fromCharCode(key);
    var regex = /[0-9]|\./;
    if (!regex.test(key)) {
        theEvent.returnValue = false;
    }
}
function OkCancel() {
    if (confirm("آیا مطمئن هستید ؟")) {
        return true;
    }
    else {
        return false;
    }
}
function isEnglishString(input) {
    if (input == '') {
        return true;
    }
    for (var i = 0; i < input.length; i++) {
        if (input.charCodeAt(i) > 127) {
            return false;
        }
    }
    return true;

    //    var pat =/^([a-z]|[A-Z]|[0-9]|-|_)*$/;
    //    var res = pat.test( input);

    //    return res;
}
function processEnter(input) {
    var enterCount = 0;
    for (var i = 0; i < input.length; i++) {
        if (input.charCodeAt(i) == 13) {
            enterCount++;
        }
    }
    return enterCount;
}
function updateLengthAndMessageCount(fieldObj, messageLengthFieldName, messageCountFieldName, cautionFieldName) {
    
    var messageLengthField = document.getElementById(messageLengthFieldName);
    var messageCountField = document.getElementById(messageCountFieldName);

    var cautionField = document.getElementById(cautionFieldName);
    var messageContent = fieldObj.value;
    var enterCount = processEnter(messageContent);
    var browserName = navigator.appName;
    var messageLength = fieldObj.value.length;
    if (browserName != 'Netscape') {
        messageLength = messageLength - enterCount;
    }
    var caution = '';
    var maxMessageCount = 10;
    var maxEnglishLength = 160;
    var maxPersianLength = 70;
    var maxLongEnglishLength = 153;
    var maxLongPersianLength = 63;
    var isEnMessage = isEnglishString(messageContent);
    var maxMessageLength = isEnMessage ? (maxMessageCount * maxLongEnglishLength) :
                           (maxMessageCount * maxLongPersianLength);

    var messageCount = 1;

    if (isEnMessage && messageLength > maxEnglishLength) {
        messageCount = messageLength > maxMessageLength ?
                       maxMessageCount : parseInt(messageLength % maxLongEnglishLength) == 0 ?
                                         parseInt(messageLength / maxLongEnglishLength) :
                                         parseInt(messageLength / maxLongEnglishLength) + 1;
    }
    if (!isEnMessage && messageLength > maxPersianLength) {
        messageCount = messageLength > maxMessageLength ?
                       maxMessageCount : parseInt(messageLength % maxLongPersianLength) == 0 ?
                                         parseInt(messageLength / maxLongPersianLength) :
                                         parseInt(messageLength / maxLongPersianLength) + 1;

    }
    if (messageLength > maxMessageLength) {
        caution = '';
    }
    else {
        caution = 'none';
    }
    messageLengthField.innerHTML = messageLength;
    messageCountField.innerHTML = messageCount;
    cautionField.style.display = caution;
}
function addPhoneToList(phone, list,hidden) {
    var phone1 = document.getElementById(phone);
    var list1 = document.getElementById(list);
    var hidden1 = document.getElementById(hidden);
    
    if (phone1.value == '') {
        alert('پر کردن فیلد شماره تماس الزامی می باشد');
        return false;
    }
    if (!isMobileNumber(phone1.value)) {
        alert('شماره تلفن همراه صحيح نمي باشد با فرمت صحيح وارد كنيد مثال 989121111111 يا09121111111');
        return false;
    }

    for (var i = 0; i < list1.options.length; i++) {

        if (list1.options[i].value == phone1.value) {

            return false;

        }

    }

    var generatedName = phone1.value;
    list1.options[list1.options.length] = new Option(generatedName);

    hidden1.value = hidden1.value + phone1.value + ",";
    
    phone1.value = '';

    //list1.options[list1.options.length] = new Option(example_array[index], index);


    //list1.Add(generatedName);

    //list1.value = '';
}
function deletePhoneFromList(list, hidden) {
    var list1 = document.getElementById(list);
    var hidden1 = document.getElementById(hidden);
    
    if (list1.options.selectedIndex == -1) {
        alert('شماره ای برای حذف انتخاب نشده');
        return false;
    }
    list1.options[list1.options.selectedIndex] = null;

    var newhidden = "";

    for (var i = 0; i < list1.options.length; i++) {

        newhidden += list1.options[i].value + ",";
        
    }

    hidden1.value = newhidden;

    //document.aspnetForm.ctl00_ContentPlaceHolder2_phone_list.options[document.aspnetForm.ctl00_ContentPlaceHolder2_phone_list.options.selectedIndex] = null;
}
function Trim(str) {
    var re1 = /^\s*/;
    var re2 = /\s*$/;
    return str.replace(re1, "").replace(re2, "");
}
function isMobileNumber(input) {
    //alert(input.indexOf('-'));
    // return true;
    while (input.indexOf('-') != -1) {
        input = input.replace('-', '');
    }
    while (input.indexOf(',') != -1) {
        input = input.replace(',', '');
    }
    input = Trim(input);
    var pat = /^989([0-9]){9}$/;

    var res = pat.test(input);

    if (res == true) {
        return res;
    }
    // todo saeed need only one 98
    var pat1 = /^982000([0-9])*$/;

    var res1 = pat1.test(input);
    if (res1 == true) {
        return res1;
    }


    var pat2 = /^09([0-9]){9}$/;

    var res2 = pat2.test(input);

    return res2;
}
function ShowPopUp(url, width, height) {

    var left = (screen.width / 2) - (width / 2);
    var top = (screen.height / 2) - (height / 2);

    window.open(url, "", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=no, copyhistory=no,width=" + width + ",height=" + height + ",top=" + top + ",left=" + left + "");
}
function ShowPopUpWithScroll(url, width, height) {

    var left = (screen.width / 2) - (width / 2);
    var top = (screen.height / 2) - (height / 2);

    window.open(url, "", "toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no,width=" + width + ",height=" + height + ",top=" + top + ",left=" + left + "");
}
function addItemToList(item, list, hidden) {
    var item1 = document.getElementById(item);
    var list1 = document.getElementById(list);
    var hidden1 = document.getElementById(hidden);
    
    if (item1.value == '') {
        alert('پر کردن فیلد الزامی می باشد');
        return false;
    }
    
    for (var i = 0; i < list1.options.length; i++) {

        if (list1.options[i].value == item1.value) {

            return false;

        }

    }

    var generatedName = item1.value;
    list1.options[list1.options.length] = new Option(generatedName);


    hidden1.value = hidden1.value + item1.value + ",";

    item1.value = '';

    //list1.options[list1.options.length] = new Option(example_array[index], index);


    //list1.Add(generatedName);

    //list1.value = '';
}
function deleteItemFromList(list, hidden) {
    var list1 = document.getElementById(list);
    var hidden1 = document.getElementById(hidden);
    
    if (list1.options.selectedIndex == -1) {
        alert('آیتمی برای حذف انتخاب نشده');
        return false;
    }
    list1.options[list1.options.selectedIndex] = null;

    var newhidden = "";

    for (var i = 0; i < list1.options.length; i++) {

        newhidden += list1.options[i].value + ",";

    }

    hidden1.value = newhidden;

    //document.aspnetForm.ctl00_ContentPlaceHolder2_phone_list.options[document.aspnetForm.ctl00_ContentPlaceHolder2_phone_list.options.selectedIndex] = null;
}
function fireEvent(obj, evt) {

    var fireOnThis = obj;
    if (document.createEvent) {
        var evObj = document.createEvent('MouseEvents');
        evObj.initEvent(evt, true, false);
        fireOnThis.dispatchEvent(evObj);
    } else if (document.createEventObject) {
        fireOnThis.fireEvent('on' + evt);
    }
}
function EnterPressed() {
    if (window.event && window.event.keyCode == 13)
        return true;
    else
        return false;
}
