﻿/*
    onkeyup=ValidTrkUpperCase(this)
    this.value=ğüşi --> ĞÜŞİ
*/
function ValidTrkUpperCase(f) {
    f.value = f.value.toTrkUppercase();
}

/*
    onkeyup=ValidNumeric(f)
    this.value='hello' --> ''
    this.value='12345' --> '12345'
*/
function ValidNumeric(f) {
    var re = /^[0-9]*$/;
    if (!re.test(f.value)) {
        f.value = f.value.replace(/[^0-9]/g,"");
    }
}

/*
    Türkçe karakter ve büyük harf değerlerine izin vermez,
    @ işareti ve nokta değerleri olmadan işlemi onaylamaz.
        
        *İzin verilen örnek değerler
            kcalik@gmail.com
            kcalik123@gmail.com
            kcalik_123@gmail.com
            kcalik-123@gmail.com
            
    onkeyup=ValidEmail(this)
*/
function ValidEmail(f) {
//^[a-zA-Z0-9._+&*# -]+@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*$/
    //var re = /^[a-z,@,.,-,_,0-9]*$/;
    var re = /^[A-Z , ş ğ ü ç ö ı ' ! < > | "]*$/;
    LowerCase(f);
    if (!re.test(f.value)) {
        f.value = f.value.replace(/[A-Z , ş ğ ü ç ö ı ' ! < > | "]/g,"");
    }
}

/*
    onkeyup=ValidNumeric(f)
    this.value='hello' --> ''
    this.value='12345' --> '12345'
*/
function ValidNumeric(f) {
    var re = /^[0-9]*$/;
    if (!re.test(f.value)) {
        f.value = f.value.replace(/[^0-9]/g,"");
    }
}

/*
    onkeyup=initialCap(this)
    this.value='hello' --> 'Hello'
*/
function initialCap(f) {
    f.value = f.value.substr(0, 1).toUpperCase() + f.value.substr(1);
}

/*
    onkeyup=LowerCase(this)
    this.value='HELLO' --> 'hello'    
*/
function LowerCase(f) {
    f.value = f.value.toLowerCase();
}

/*
    Türkçe karakterleri büyük harfe çeviren prototype
*/
String.prototype.toTrkUppercase = function () {
    var str = [];
    for(var i = 0; i < this.length; i++) {
        var ch = this.charCodeAt(i);
        var c = this.charAt(i);
        if(ch == 105) str.push('İ');
        else if(ch == 305) str.push('I');
        else if(ch == 287) str.push('Ğ');
        else if(ch == 252) str.push('Ü');
        else if(ch == 351) str.push('Ş');
        else if(ch == 246) str.push('Ö');
        else if(ch == 231) str.push('Ç');
        else if(ch >= 97 && ch <= 122)
            str.push(c.toUpperCase());
        else
            str.push(c);
    }
    return str.join('');
}

/*
    onkeyup=UCWords(this)
    this.value='hello world' --> 'Hello World'
*/
function UCWords(obj){            
    var arrStr = obj.value.split(" ");
    var strOut = "";
    var i = 0;
    while (i < arrStr.length) {
        firstChar  = arrStr[i].substring(0,1);
        remainChar = arrStr[i].substring(1);
        firstChar  = firstChar.toUpperCase(); 
        remainChar = remainChar.toLowerCase();
        strOut += firstChar + remainChar + ' ';
        i++;
    }
    obj.value = strOut.substr(0,strOut.length - 1);
}

/*
    url=webpage path
    wF=window width
    wH=window height
*/
function ShowPopupForm(url,wF,hF) {
    var w=document.body.clientWidth, h=document.body.clientHeight;
    var x=window.screenTop, y= window.screenLeft;
    var popW=wF, popH=hF;
    var leftPos=((w-popW)/2)+y, topPos=((h-popH)/2)+x;
    popWindow = window.open (url,'PopUpWin' ,'width='+popW+',height='+popH+',top='+topPos+',left='+leftPos+',status=0,toolbar=0,menu=0,resizable=0,scrollbars=0');
    popWindow.opener = self;
}