﻿

	dom = (document.getElementById)?(true):(false);
	ie = document.all;
	ie4 = ie && !dom;
	nn4 = document.layers;
	
	function update(value,par)
	{
		var i;
		var elements = document.forms[0].elements;
		for (i=0; i<elements.length; i++)
		{
			if (elements[i].id.indexOf(par)!=-1 && !elements[i].disabled && elements[i].type == 'checkbox' )
				elements[i].checked = value;
		}
	}         
	
	
	function cm(elemId)
	{
		var elem;
		if(dom || ie4){
				elem = (dom)?(document.getElementById(elemId)):(document.all[elemId]);
				if(elem)
						with(elem.style)
						if(display == "block" || display == ""){
								display = "none";
						}
						else{
								display = "block";
						}
		}
		return false;
	}				

	function cm_switch(elemId, m_value)
	{	
		var elem;
		elem = (dom)?(document.getElementById(elemId)):(document.all[elemId]);
		if (m_value)
		{
			if (elem)
			{
				with(elem.style)
					display = "block";				
			}
		}
		else
		{
			if (elem)
			{
				with(elem.style)
					display = "none";				
			}
			
		}		
		return false;
	} 

   function DelElement(confirm_message)
   {
     res = false;
     if (confirm(confirm_message))  
        res = true;    
     return(res);
   }


	function CheckRequired(elem, mes)
	{	
		var ps1;	 
		ps1 = elem.value;
		if (ps1.length == 0)
		{
			if (mes.length == 0) mes = "Необходимо ввести значение";
			alert(mes);
			elem.focus();
			return false;
		}
		else
		{
			return true;
		}
	}
	
	function CheckEmail(e_mail,message)
	{
	if ( e_mail.value.indexOf('.', 0) == -1 | 
			e_mail.value.indexOf('@', 0) == -1 )
	{
		alert(message)
		e_mail.focus();
		return false;
	}	
	else return(true);
	}
	
	function clipCopy(what) 
	{	
	    clip.innerText=what; 
		var rng=document.body.createTextRange(); 
		rng.moveToElementText(clip); 
		rng.execCommand("Copy");
	} 


    function OpenWindow(url, w, h, rs, sb)
    {
	    var win = window.open(url, 'popupcal', 'width='+w+',height='+h+',left=200,top=250,resizable='+rs+',scrollbars='+sb);
	    win.focus();
    }


    function OpenCalendar(idname, postBack)
    {
	    popUp = window.open('/Components/Calendar/Calendar.aspx?formname=' + document.forms[0].name + 
		    '&id=' + idname + '&selected=' + document.forms[0].elements[idname].value + '&postBack=' + postBack, 
		    'popupcal', 
		    'width=190,height=280,left=400,top=250');
    }

    function SetDate(formName, id, newDate, postBack)
    {
	    popUp.close();
	    document.forms[0].elements[id].value = newDate;
	    popUp.focus();
    }		

    function rnd(x,y,z) { 
	    var num;
	    do {
		    num = parseInt(Math.random()*z);
		    if (num >= x && num <= y) break;
	    } while (true);
	    return(num);
    }
    

    function generatePassword() {		
        
        // массивы символов
        iupp = new Array('','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z');
        ilow = new Array('','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z');
        idig = new Array('','0','1','2','3','4','5','6','7','8','9');

	    var result = '';
	    var res, s;
	    var k = 0;
	    var pass = new Array();
	    var w = rnd(30,80,100);
	    for (var r = 0; r < w; r++) {
		    res = rnd(1,26,100); pass[k] = iupp[res]; k++; 
		    res = rnd(1,26,100); pass[k] = ilow[res]; k++; 
		    res = rnd(1,10,100); pass[k] = idig[res]; k++; 
	    }
	    for (var i = 0; i < 8; i++) {
		    s = rnd(1,k-1,100);
		    result += pass[s];
	    }
	    return result;
    }


    //--------------------------------------------------
    // обработка ввода десятичного числа
    // (onkeypress="ParseFloat(this.id)")
    //--------------------------------------------------
    function ParseFloat(objname) {
	    var DecimalSeparator = ",";
	    var keynum = false;
	    var PK1 = new Array(48, 49, 50, 51, 52, 53, 54, 55, 56, 57);         // цифры
	    var PK2 = new Array(44, 46, 47, 60, 62, 63, 1041, 1070, 1073, 1102); // разделители
	    var sv = document.getElementById(objname).value;
	    for(pressedkey in PK2)
		    if((PK2[pressedkey] == event.keyCode)&&(sv.indexOf(DecimalSeparator) == -1)&&(sv.length > 0))
			    document.getElementById(objname).value += DecimalSeparator;
	    for(pressedkey in PK1)
		    if(PK1[pressedkey] == event.keyCode)
			    keynum = true;
	    event.returnValue = keynum;
    }
    //--------------------------------------------------

    //--------------------------------------------------
    // обработка ввода целого числа
    // (onkeypress="ParseInteger(this.id)")
    //--------------------------------------------------
    function ParseInteger(objname) {
	    var keynum = false;
	    var PK1 = new Array(48, 49, 50, 51, 52, 53, 54, 55, 56, 57); // цифры
	    for(pressedkey in PK1)
		    if(PK1[pressedkey] == event.keyCode)
	    keynum = true;
	    event.returnValue = keynum;
    }
    //--------------------------------------------------


