﻿var ajax = new Ajax();
ajax.setHandlerErr (ShowError);

var INFO = document.getElementById('INFO');

function ShowError(err){
    setINFO(err);
}

var img_progress = new Image();
img_progress.src = 'Images/progressbar3.gif';

function PleaseWait(){
    //alert(img_progress.src);
    var x = '<div style="width:100%; height:100%; text-align:center; vertical-align:middle; color:red">';
        x+= '<br><br>';
        x+= 'لطفاً منتظر بمانید، در حال دریافت اطلاعات از سرور ...';
        x+= '<br><br>';
        x+= '<img id="img_prog" src="../Images/progressbar3.gif" width="50" height="50" /></div>';
    setINFO(x);
}
function PleaseWait2(id){
    //alert(img_progress.src);
    var x = '<div style="width:100%; height:100%; text-align:center; vertical-align:middle; color:red">';
        x+= '<br>';
        x+= 'لطفاً منتظر بمانید ...';
        x+= '<br><br>';
        x+= '<img id="img_prog" src="../Images/ProgressBar2.gif" width="31" height="31" /></div>';
    setInnerHTML(id, x);
}
function setInnerHTML(id, str){
    var div = document.getElementById(id);
    if (!div) return;
    setAndExecute (id, str);
}

function setINFO(str){
    //if (!INFO) INFO = document.getElementById('INFO');
    //INFO.innerHTML = str;
    setAndExecute ('INFO', str);
}

function setAndExecute(divId, innerHTML){
    var div = self.parent.document.getElementById(divId);
    div.innerHTML = innerHTML;
    var x = div.getElementsByTagName("script");
    
    for(var i=0;i<x.length;i++)
        try{if (x[i].text!=null) eval(x[i].text);}catch(err){}
}

function ShowPageByID(PageID){
    PleaseWait();
    ajax.doGet('/Pages.aspx?PageID='+PageID, setINFO);
}



function ShowPageByUrl(url){
    PleaseWait();
    ajax.doGet(url, setINFO);
}


function doPOST(url, data, handle){
    //ajax.req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.postData = data;
    ajax.url = url;
    ajax.method = 'POST';
    if (handle == null) handle = setINFO;
    ajax.handleResp = handle;
    ajax.doReq();
}


function disDiv(id,dis) {
    var theDiv = document.getElementById(id)
    var theFields = theDiv.getElementsByTagName('input');
    for (var i=0; i < theFields.length;i++) theFields[i].disabled=dis; 
    theDiv.disabled=dis
  }


function GenerateParam(f_object){
    var ret = '';
    for (var i=0; i < f_object.length; i++) {
        //alert(f_object[i].name);
        if (f_object[i].name != '' &&  f_object[i].name != '__VIEWSTATE')//&& f_object[i].ajax=='1') 
        {
            if ( f_object[i].type=='checkbox' || f_object[i].type=='radio' )
                ret += f_object[i].value + '=' + f_object[i].checked + '&';
            else
                ret += f_object[i].name + '=' + f_object[i].value + '&';
        }}
    if (ret != '') ret = ret.substr(0, ret.length - 1); 
    return ret;
}


var Info_tmp;
function ReplaceINFO(div){
    if (!div) return;
    Info_tmp = document.getElementById('INFO').innerHTML;
    document.getElementById('INFO').innerHTML = document.getElementById(div).innerHTML;
    //alert(document.getElementById('INFO').innerHTML);
}

function RestoreINFO(){
    document.getElementById('INFO').innerHTML = Info_tmp;
}


function SendVP(FullName, Email, Note){
    if (!valid_vp(FullName, Email, Note)) return;
    PleaseWait();
    var V = 'FullName=' + FullName;
        V+= '&EMail=' + Email;
        V+= '&Note='+Note;
    doPOST('TakeAction/SendVP.aspx', V);
}

function OpenLocations(id, title){
    var h = 500;
    var w = 300;     
    var t = screen.height / 2 - h / 2;
    var l = screen.width / 2 - w / 2;
	window.open ('/SEL_Locations.aspx?OutputID='+id+'&OutPutTitle='+title, 'Locations','scrollbars=yes,resizable=no,width='+w+',height='+h+',top='+t+',left='+l+',status=yes');
}

function OpenJobs(id, title){
    var h = 500;
    var w = 300;     
    var t = screen.height / 2 - h / 2;
    var l = screen.width / 2 - w / 2;
	window.open ('/SEL_Jobs.aspx?OutputID='+id+'&OutPutTitle='+title, 'Jobs', 'scrollbars=yes,resizable=no,width='+w+',height='+h+',top='+t+',left='+l+',status=yes');
}

function LoadTowns(lid, obj){
    var c = document.getElementById(obj);
    //alert(obj);
    ajax.async=false;
    ajax.doGet("/SEL_Locations.aspx?GetTowns="+lid,
        function(str){
		    // clear existing elements
  		    while(c.options.length>0) c.options.remove(0);
  		    var items = str.split(",");
		    for (var i=0; i<items.length; i+=2)
			    c.options.add(new Option(items[i+1],items[i]),items[i+1].length);
			c.value = 1804;
        }
    , null);
    ajax.async=true;
}

function CheckUserName(str){
        if (!valid_username(str)) return false;
        ajax.doGet('/TakeAction/?CheckUser=' + str, 
            function (s)
            {
                if (s.length==0) {setEnable('btnSubmitP1', true); return true;}
                setEnable('btnSubmitP1', false);
                alert(s);
                return false;
            } 
        );
        
}


function SubmitWRegP1(frm){
    var param = GenerateParam(frm) + '&btnSubmitP1=1';
    //alert (frm.BirthTown2.value);
    //return;
    if (frm.txtFName.value    ==''||
        frm.txtLName.value    ==''||
        //frm.txtFather.value   ==''||
        //frm.txtNationalCode.value==''||
        //frm.txtIDNO.value     ==''||
        frm.ddlBirthYear.value   ==0||
        frm.BirthTown2.value      ==''||
        frm.LifeTown2.value      ==''||
        frm.txtUser.value   == '' ||
        frm.txtPass1.value   == ''||
        frm.txtPass2.value   == '')
    {MessageBox('کلیه موارد ستاره دار را لطفاً وارد کنید .'); return false;}
    if (frm.txtUser.value.length < 6){MessageBox('حداقل نام کاربری 6 کاراکتر می باشد .'); return false;}
    if (frm.txtPass1.value.length< 6){MessageBox('حداقل رمز عبور 6 کاراکتر می باشد .'); return false;}
    if (frm.txtPass1.value != frm.txtPass2.value){MessageBox('رمز های عبور با هم تطبیق ندارند .'); return false;}
    if (!emailexp.test(frm.txtEmail.value)) {MessageBox('آدرس پست الکترونیکی را صحیح وارد کنید .'); return false;}
    if (!valid_username(frm.txtUser.value)) {MessageBox("نام کاربری معتبر وارد کنید");return false;}

    PleaseWait();
    doPOST('/Workers/Register.aspx', param, setINFO);
    return true;
}

function SubmitWRegP3(frm){
    
    var param = GenerateParam(frm) + '&btnSubmitP3=1';
    //alert (param);
    PleaseWait();
    doPOST('/Workers/Register.aspx', param, setINFO);
    return true;
}


function AddEdu(frm){
    var param  = GenerateParam(frm) + '&AddEdu=1';
    //return;
    switch (frm.ddlLevel.value)
    {
        case 1,2,3:
            break;
        case 4:
            if (frm.txtCourse.value == ''
                ){alert('کلیه موارد ستاره دار را لطفاً وارد کنید'); return false;}
            break;
        case 5:
            if (frm.txtCourse.value == '' ||
                frm.ddlAverage2.value == 0 ||
                frm.ddlAverage1.value == 0 ||
                frm.txtPlace.value == '' 
                ){alert('کلیه موارد ستاره دار را لطفاً وارد کنید'); return false;}
            break;
        case 6,7,8,9:
            if (frm.txtCourse.value == '' ||
                frm.ddlAverage2.value == 0 ||
                frm.ddlAverage1.value == 0 ||
                frm.txtPlace.value == '' 
                ){alert('کلیه موارد ستاره دار را لطفاً وارد کنید'); return false;}
            break;
        case 10:
            if (frm.txtCourse.value == '' ||
                frm.txtPlace.value == ''  
                ){alert('کلیه موارد ستاره دار را لطفاً وارد کنید'); return false;}
            break;
     }
    RestoreINFO();
    PleaseWait2('div_edu');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_edu', str);});
    //alert(param);
    return true;
}

function DelEdu(frm, id){
    if (!confirm('آیا برای حذف مدرک تحصیلی اطمینان دارید ؟')) return;
    var param = GenerateParam(frm) + '&DelEdu='+id;
    PleaseWait2('div_edu');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_edu', str);});
    return true;
}

function onchange_edlevel(x){
    switch (Number(x))
    {
        case 1:
        case 2:
        case 3:
            setEnable('ddlKind',false); 
            setEnable('ddlAverage2',false); 
            setEnable('ddlAverage1',false); 
            setEnable('txtCourse',false); 
            setEnable('txtPlace',false); 
            setEnable('ddlYear',false);
            break;
        case 4:
            setEnable('ddlKind',false); 
            setEnable('ddlAverage2',false); 
            setEnable('ddlAverage1',false); 
            setEnable('txtCourse',true); 
            setEnable('txtPlace',false); 
            setEnable('ddlYear',false); 
            break;
        case 5:
            setEnable('ddlKind',false); 
            setEnable('ddlAverage2',true); 
            setEnable('ddlAverage1',true); 
            setEnable('txtCourse',true); 
            setEnable('txtPlace',true); 
            setEnable('ddlYear',true);
            break;
        case 6:
        case 7:
        case 8:
        case 9:
            setEnable('ddlKind',true); 
            setEnable('ddlAverage2',true); 
            setEnable('ddlAverage1',true); 
            setEnable('txtCourse',true); 
            setEnable('txtPlace',true); 
            setEnable('ddlYear',true); 
            break;
        case 10:
            setEnable('ddlKind',true); 
            setEnable('ddlAverage2',false); 
            setEnable('ddlAverage1',false); 
            setEnable('txtCourse',true); 
            setEnable('txtPlace',true); 
            setEnable('ddlYear',false); 
            break;
        default: 
            alert ('this is defaulr : '+Number(x));
     }
}

function AddLan(frm){
    var param = GenerateParam(frm) + '&AddLan=1';
    //alert(param); return;
    RestoreINFO();
    PleaseWait2('div_lan');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_lan', str);} );
    return true;
}

function DelLan(frm, id){
    if (!confirm('آیا برای حذف زبان خارجه اطمینان دارید ؟')) return;
    var param = GenerateParam(frm) + '&DelLan='+id;
    PleaseWait2('div_lan');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_lan', str);});
    return true;
}
function SubmitWRegP4(frm){//Education Form
    var param = GenerateParam(frm) +'&btnSubmitP4=1';
    //alert (param);
    PleaseWait();
    doPOST('/Workers/Register.aspx', param, setINFO);
    return true;
}

function AddRec(frm){
    var param = GenerateParam(frm) + '&AddRec=1';
    //alert(param);//return;
    if (frm.Job.value == '' || frm.WorkTime.value == '' )
    {MessageBox('کلیه موارد جهت ثبت الزامی است'); return false;}
    
    if ( parseInt(frm.WorkTime.value) == 0 ) {MessageBox('لطفاً مدت کارکرد خود را وارد کنید .'); return false;}
    RestoreINFO();
    PleaseWait2('div_rec');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_rec', str);});
    return true;
}

function DelRec(frm, id){
    if (!confirm('آیا برای حذف سابقه کاری اطمینان دارید ؟')) return;
    var param = GenerateParam(frm) + '&DelRec='+id;
    PleaseWait2('div_rec');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_rec', str);});
    return true;
}
function AddCer(frm){
    var param = GenerateParam(frm) + '&AddCer=1';
    //alert(param);//return;
    if (frm.Skill.value == '' || frm.Org.value == '' || frm.TeachTime.value == '' )
    {MessageBox('کلیه موارد جهت ثبت الزامی است'); return false;}
    if ( parseInt(frm.TeachTime.value) == 0 ) {MessageBox('لطفاً مدت آموزش را وارد کنید .'); return false;}
    RestoreINFO();
    PleaseWait2('div_cer');
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_cer', str);});
    return true;
}

function DelCer(frm, id){
    if (!confirm('آیا برای حذف مدرک اطمینان دارید ؟')) return;
    var param = GenerateParam(frm) + '&DelCer='+id;
    PleaseWait2('div_cer');
    //alert(param);
    doPOST('/TakeAction/Default.aspx', param, function (str){setInnerHTML('div_cer', str);});
    return true;
}

function SubmitWRegP5(frm){//Skill Form
    var param = GenerateParam(frm) + '&btnSubmitP5=1';
    //alert (param);
    PleaseWait();
    doPOST('/Workers/Register.aspx', param, setINFO);
    return true;
}

function SubmitWRegP6(frm){//Etc Form
    var param = GenerateParam(frm) + '&btnSubmitP6=1';
    //alert (param);
    PleaseWait();
    doPOST('/Workers/Register.aspx', param, setINFO);
    return true;
}

