
function setCookie(name, value, expires, path, domain, secure) {

 document.cookie = name + "=" + escape(value) +
                ((expires) ? "; expires=" + expires.toGMTString() : "") +
                ((path) ? "; path=" + path : "") +
                ((domain) ? "; domain=" + domain : "") +
                ((secure) ? "; secure" : "");

}


function getCookie(name) {

	var cookie = " " + document.cookie;
	var search = " " + name + "=";
	var setStr = null;
	var offset = 0;
	var end = 0;
	if (cookie.length > 0) {
		offset = cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length;
			end = cookie.indexOf(";", offset)
			if (end == -1) {
				end = cookie.length;
			}
			setStr = unescape(cookie.substring(offset, end));
		}
	}
	return(setStr);

}


function deleteCookie(name, path, domain) {

  document.cookie = name + "=" +
                ((path) ? "; path=" + path : "") +
                ((domain) ? "; domain=" + domain : "") +
                "; expires=Thu, 01-Jan-1970 00:00:01 GMT";

}







function get_notepad_count() {

       cookieList = document.cookie.split(";");
       j = 0;
       for (i = 0; i < cookieList.length; i++) {
            n = cookieList[i].split("=");
		offset = n[0].indexOf("notepad");
		if (offset != -1) {
             j++;
		}
       }

       document.getElementById("notepad_count_top").innerText = j;
       document.getElementById("notepad_count_bottom").innerText = j;

}


function delete_from_notepad() {

 n = GetCookieCount();

 for(i=0;i<n;i++) {

  offset = GetCookieNameByIndex(i).indexOf("notepad");
  if (offset != -1) {
    deleteCookie(GetCookieNameByIndex(i));
  }

 }

}


function delete_from_notepad_selected() {

 for(i=0;i<document.form_notepad.elements.length;i++) {

  e = document.form_notepad.elements[i];

  offset = e.name.indexOf("mes_");
  if ((offset != -1)&&(e.checked)) {
    l = e.name.length;
    deleteCookie("notepad["+e.name.substring(offset+4,l)+"]");
  }

 }

}


function check_notepad_selected() {

 for(i=0;i<document.images.length;i++) {

  offset = document.images[i].id.indexOf("img_notepad_");
  if (offset != -1) {

   mes_id = document.images[i].id.substring(offset+12,document.images[i].id.length);

   if (getCookie("notepad["+mes_id+"]") != null) {
    document.images[i].src = "img/notepad_added.gif";
   }
   else {
    document.images[i].src = "img/notepad_add.gif";
   }


  }

 }

}


//возвращает количество параметров
function GetCookieCount()
{
var len = document.cookie.length;
var n=0;

 for(var i=0;i<len;i++)
 {
  if(document.cookie.charAt(i) == '=')
   n++;
 }

return n;
}



//возвращает имя i-го параметра
function GetCookieNameByIndex(index)
{
var len = document.cookie.length;
var i, n=-1;

 for(i=0;i<len && n!=index-1;i++)
 {
  if(document.cookie.charAt(i) == ';')
   n++;
 }

var end = document.cookie.indexOf("=", i);

return unescape(document.cookie.substring(i, end));
}




function change_id_category_message() {


 if (($('id_category_message').value == 211)||($('id_category_message').value == 210)) {

  $('form_add').attributes["action"].nodeValue = 'messages_add_2_auto.php';

 }
 else {

  $('form_add').attributes["action"].nodeValue = 'messages_add_2.php';

 }


}






function getRadioGroupValue(radioGroupObj) {

  for (var i=0; i < radioGroupObj.length; i++)
    if (radioGroupObj[i].checked) return radioGroupObj[i].value;

  return null;

}


function myshow(n){
eval("document.all."+n+".style.display='inline';");
}

function myhide(n){
eval("document.all."+n+".style.display='none';");
}




function formcheck(form) {

  s = true;

  for (i=0; i<form.elements.length; i++) {

    form.elements[i].value = form.elements[i].value.replace(/^\s+|\s+$/, '');

    if (form.elements[i].value != "") {

       if ((form.elements[i].id.indexOf("email_") == 0)&&(!form.elements[i].value.match(/^[^@]+@[^\.@]+\.[^@]+/i))) {
        alert("Неправильный формат поля ''" +form.elements[i].title + "''! Пример заполнения: test@test.ru");
        s = false;
        break;
       }

       if ((form.elements[i].id.indexOf("phone_") == 0)&&(!form.elements[i].value.match(/^\(\d*\)[ ]?\d+[,]?[ ]?\d*$|^\d+[,]?[ ]?\d*$/))) {
        alert("Неправильный формат поля ''" +form.elements[i].title + "''! Пример заполнения: (555) 123456 или 123456");
        s = false;
        break;
       }

       if ((form.elements[i].id.indexOf("integer_") == 0)&&(!form.elements[i].value.match(/^\d+$/))) {
        alert("Неправильный формат поля ''" +form.elements[i].title + "''! Пример заполнения: 123");
        s = false;
        break;
       }

       if ((form.elements[i].title == "Условие поиска")&&(form.elements[i].value.length < 3)) {
//alert(form.elements[i].value);
        alert("Строка поиска должна содержать не менее 3 символов");
        s = false;
        break;
       }

    }


    if ((form.elements[i].id != "")&&(form.elements[i].title != "")) {

      if (form.elements[i].value == "") {
       alert("Обязательное поле ''" +form.elements[i].title + "'' не заполнено!");
       s = false;
       break;
      }

    }


  }

  if ((document.getElementById("password") != null)&&(document.getElementById("password_1") != null)&&(s)) {

     if (document.getElementById("password").value != document.getElementById("password_1").value) {
      alert("Неправильно подтвердили пароль!");
      s = false;
     }

  }

  if ((document.getElementById("control_symbols_count") != null)&&(document.getElementById("count_control") != null)&&(s)) {
    if ((document.getElementById("control_symbols_count").value!=document.getElementById("count_control").value)&&(s)){
      alert("Проверочное число введено неверно!");
      s = false;
    }
  }

  return s;
}




/*
function formcheck(form) {

  s = true;

  for (i=0; i<form.elements.length; i++) {

    form.elements[i].value = form.elements[i].value.replace(/^\s+|\s+$/, '');

    if (form.elements[i].value != "") {

       if ((form.elements[i].id.indexOf("email_") == 0)&&(!form.elements[i].value.match(/^[^@]+@[^\.@]+\.[^@]+/i))) {
        alert("Неправильный формат поля ''" +form.elements[i].title + "''! Пример заполнения: test@test.ru");
        s = false;
        break;
       }

       if ((form.elements[i].id.indexOf("phone_") == 0)&&(!form.elements[i].value.match(/^\(\d*\)[ ]?\d+[,]?[ ]?\d*$|^\d+[,]?[ ]?\d*$/))) {
        alert("Неправильный формат поля ''" +form.elements[i].title + "''! Пример заполнения: (555) 123456 или 123456");
        s = false;
        break;
       }

       if ((form.elements[i].id.indexOf("integer_") == 0)&&(!form.elements[i].value.match(/^\d+$/))) {
        alert("Неправильный формат поля ''" +form.elements[i].title + "''! Пример заполнения: 123");
        s = false;
        break;
       }

       if ((form.elements[i].id.indexOf("search_") == 0)&&(form.elements[i].value.length < 3)) {
        alert("Строка поиска должна содержать не менее 3 символов");
        s = false;
        break;
       }

    }


    if ((form.elements[i].id != "")&&(form.elements[i].title != "")) {

      if (form.elements[i].value == "") {
       alert("Обязательное поле ''" +form.elements[i].title + "'' не заполнено!");
       s = false;
       break;
      }

    }


  }

  if ((document.getElementById("password") != null)&&(document.getElementById("password_1") != null)&&(s)) {

     if (document.getElementById("password").value != document.getElementById("password_1").value) {
      alert("Неправильно подтвердили пароль!");
      s = false;
     }

  }

  if ((document.getElementById("control_symbols_count") != null)&&(document.getElementById("count_control") != null)&&(s)) {
    if ((document.getElementById("control_symbols_count").value!=document.getElementById("count_control").value)&&(s)){
      alert("Проверочное число введено неверно!");
      s = false;
    }
  }

  return s;

}
*/





function getParam(name) {

  paramStr = window.location.search;

  if(paramStr.indexOf(name) == -1) {

   return '';

  }
  else {

   begin = paramStr.indexOf(name) + name.length + 1;
   end = paramStr.indexOf('&', begin);
   if(end == -1)
    {end = paramStr.length;}
   return unescape(paramStr.substring(begin, end));

  }

}



function form_serialize_1(f, c) {


 var s = '';

 for (i=0; i<f.length; i++) {

  if ($(f[i]) != null) {
   if (s != '') {s = s+'&';}
   s = s+f[i]+'='+encodeURIComponent($(f[i]).value);
  }

 }

 for (i=0; i<c.length; i++) {

  if ($(c[i]) != null) {
   if ($(c[i]).checked) {
    if (s != '') {s = s+'&';}
    s = s+c[i]+'=on';
   }
  }

 }

 return s;


}


function form_serialize(form) {


 var s = '';

 for (i=0; i<form.elements.length; i++) {

  if (form.elements[i] == null) {continue;}

  switch (form.elements[i].type) {
  case 'checkbox':

   if (form.elements[i].checked) {

    if (s != '') {s = s+'&';}
    s = s+form.elements[i].name+'=on';

   }

  break;
  case 'radio':

   if (form.elements[i].checked) {

    if (s != '') {s = s+'&';}
    s = s+form.elements[i].name+'='+encodeURIComponent(form.elements[i].value);

   }

  break;
  default:

   if (s != '') {s = s+'&';}
   s = s+form.elements[i].name+'='+encodeURIComponent(form.elements[i].value);

  break;
  }

 }

 return s;


}

function str_replace(search, replace, subject){
       var ra = replace instanceof Array,
               sa = subject instanceof Array,
               l = (search = [].concat(search)).length,
               replace = [].concat(replace),
               i = (subject = [].concat(subject)).length;
       while(j = 0, i--)
               while(subject[i] = subject[i].split(search[j]).join(ra ? replace[j] || "" : replace[0]), ++j < l);
       return sa ? subject : subject[0];
}

function trim(string){
	return string.replace(/(^\s+)|(\s+$)/g, "");
}


function add_session_fotos_class(table, i, max_count_fotos, params) {
   	var add_session_foto = 'add_session_foto_' + table + '_' + i;
    var value = $(add_session_foto);
    var req = new JsHttpRequest();
   	var load_session_foto = 'load_session_foto_' + table + '_' + i;
   	var add_session_foto_errors = 'add_session_foto_errors_' + table + '_' + i;
   	var show_session_fotos = 'show_session_fotos_' + table + '_' + i;
   	var form_add_session_foto = 'form_add_session_foto_' + table + '_' + i;
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            $(add_session_foto_errors).innerHTML = req.responseJS;
            $(show_session_fotos).innerHTML = req.responseText;
            $(form_add_session_foto).reset();
            $(load_session_foto).innerHTML = '';
        }
        if (req.readyState == 1) {
            $(load_session_foto).innerHTML = 'Загрузка фото ..';
        }
    }
    var pars = 'table=' + table + '&i=' + i + '&max_count_fotos=' + max_count_fotos;
	pars = pars + params;
   	var ajax_url = '_ajax_session_logos_add_class.php';
	if (params.indexOf('params_logo') > -1) {
		ajax_url = '_ajax_session_fotos_add_class.php';
	}
    req.open(null, ajax_url + '?' + pars, true);
    req.send( { q: value } );

}

function add_session_fotos_group_class(table, i, max_count_fotos, params) {
   	var add_session_foto = 'add_session_foto_' + table + '_' + i;
    var value = $(add_session_foto);
    var req = new JsHttpRequest();
   	var load_session_foto = 'load_session_foto_' + table + '_' + i;
   	var add_session_foto_errors = 'add_session_foto_errors_' + table + '_' + i;
   	var show_session_fotos = 'show_session_fotos_' + table + '_' + i;
   	var form_add_session_foto = 'form_add_session_foto_' + table + '_' + i;
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            $(add_session_foto_errors).innerHTML = req.responseJS;
            $(show_session_fotos).innerHTML = req.responseText;
            $(form_add_session_foto).reset();
            $(load_session_foto).innerHTML = '';
        }
        if (req.readyState == 1) {
            $(load_session_foto).innerHTML = 'Загрузка фото ..';
        }
    }
    var pars = 'table=' + table + '&i=' + i + '&max_count_fotos=' + max_count_fotos;
	pars = pars + params;
   	var ajax_url = '_ajax_session_logos_add_group_class.php';
	if (params.indexOf('params_logo') > -1) {
		ajax_url = '_ajax_session_fotos_add_group_class.php';
	}
    req.open(null, ajax_url + '?' + pars, true);
    req.send( { q: value } );

}

function add_fotos_class(table_foto, i, max_count_fotos, table, id_value, params) {
   	var add_foto = 'add_foto_' + table_foto + '_' + i;
    var value = $(add_foto);
    var req = new JsHttpRequest();
   	var load_foto = 'load_foto_' + table_foto + '_' + i;
   	var add_foto_errors = 'add_foto_errors_' + table_foto + '_' + i;
   	var show_fotos = 'show_fotos_' + table_foto + '_' + i;
   	var form_add_foto = 'form_add_foto_' + table_foto + '_' + i;
    req.onreadystatechange = function() {
        if (req.readyState == 4) {
            $(add_foto_errors).innerHTML = req.responseJS;
            $(show_fotos).innerHTML = req.responseText;
            $(form_add_foto).reset();
            $(load_foto).innerHTML = '';
        }
        if (req.readyState == 1) {
            $(load_foto).innerHTML = 'Загрузка фото ..';
        }
    }

    var pars = 'table_foto=' + table_foto + '&table=' + table + '&id_value=' + id_value + '&i=' + i + '&max_count_fotos=' + max_count_fotos;
	pars = pars + params;
   	var ajax_url = '_ajax_logos_add_class.php';
	if (params.indexOf('params_logo') > -1) {
		ajax_url = '_ajax_fotos_add_class.php';
	}
    req.open(null, ajax_url + '?' + pars, true);
    req.send( { q: value } );

}

function ajax_foto_del_class(id, id_foto, table){
	var url = '_ajax_foto_del_class.php';
	var pars = 'id_foto=' + id_foto + '&table=' + table;
	var myAjax = new Ajax.Request(url, {
		method: 'post', parameters: pars, onComplete: function(originalRequest) {
			$('td_foto_' + id + '_' + id_foto).innerHTML = '';
		}
	});
}
function onclick_radio_switch_class(id, ajax_file, name_radio) {
	$(name_radio + 'radio_switch').value = id;
	var pars = 'action=onclick';
	var myAjax = new Ajax.Updater(name_radio + 'span_radio_switch', ajax_file, {
		method: 'post', parameters: pars
	});
}

function c_creation_form(ajax_file, span_errors, a_result, file_end) {
	$('button_class').disabled = true;
	if ($('button_class').type == 'image') {
		var old_pic = $('button_class').src;
		$('button_class').src = '/img/button_wait.gif';
	}
	else {
		var old_name = $('button_class').value;
		$('button_class').value = 'Подождите...';
	}
	var pars = 'action=check';
  	var variable = document.getElementsByName('variable[]');
  	for (i=0; i<(variable.length); i++){
        if (document.getElementById($(variable[i]).value)) {
			pars = pars + '&' + $(variable[i]).value + '=' + encodeURIComponent($($(variable[i]).value).value);
        }else {
  	    	var variable_array = document.getElementsByName($(variable[i]).value + '[]');
	  		str = $(variable[i]).value;
		  	for (j=0; j<(variable_array.length); j++){
		  		if (str.indexOf('checkbox') == -1) {
  					pars = pars + '&' + $(variable[i]).value + '[]=' + encodeURIComponent($(variable_array[j]).value);
				}else {
					if ($(variable_array[j]).checked){
  						pars = pars + '&' + $(variable[i]).value + '[]=' + encodeURIComponent($(variable_array[j]).value);
  					}
  				}
		  	}
        }
  	}
  	var get = location.search;
  	if (get != '') {
  		get = str_replace('?', '', get);
  		pars = pars + '&' + get;
  	}
	var myAjax = new Ajax.Request(ajax_file, {
		method: 'post', parameters: pars,
		onComplete: function(originalRequest) {			if (encodeURIComponent(trim(originalRequest.responseText)) == '') {
				pars = str_replace('action=check', 'action=add', pars);
				var myAjax_add = new Ajax.Request(ajax_file, {
					method: 'post',
					parameters: pars,
					onComplete: function(originalRequest) {
						if (file_end == '') {
							document.location.reload();
						}
						else {
							var tmp = new Array();
							tmp = (file_end.substr(0)).split(':');
							if (tmp.length == 1) {
								document.location.href = file_end;
							}else {
								switch (tmp[0]) {
									case 'no_reboot':
										$(tmp[1]).innerHTML = originalRequest.responseText;
										document.location.href = '#' + a_result;
										$(span_errors).innerHTML = originalRequest.responseText;
										document.location.href = '#' + a_result;
										if ($('button_class').type == 'image') {
											$('button_class').src = old_pic;
										}
										else {
											$('button_class').value = old_name;
										}
										$('button_class').disabled = false;
									break;
									case 'reboot':
										//alert($(tmp[1]).value + '  ' + tmp[($(tmp[1]).value)] + '  ' + tmp[1]);
										//document.location.href = tmp[(parseInt($(tmp[1]).value) + 2)];
										if ($(tmp[1]) == null) {
											document.location.href = tmp[tmp.length - 1];
										}else {
											document.location.href = tmp[(parseInt($(tmp[1]).value) + 2)];
										}
									break;
									case 'function':
										//alert(trim(originalRequest.responseText));
										//eval(trim(originalRequest.responseText));
									break;
								}
							}
						}
					}
				});
			}else {
				$(span_errors).innerHTML = originalRequest.responseText;
				document.location.href = '#' + a_result;
				if ($('button_class').type == 'image') {
					$('button_class').src = old_pic;
				}
				else {
					$('button_class').value = old_name;
				}
				$('button_class').disabled = false;
			}
		}
	});
}

function select_category_class(id_category, table, onchange_select_category, reload_element, name_element, require) {	var url = '_ajax_select_category_class.php';
	var pars = 'id_category=' + id_category + '&use_table=' + table + '&onchange_select_category=' + onchange_select_category + '&reload_element=' + reload_element + '&name_element=' + name_element + '&require=' + require;
  	var get = location.search;
  	if (get != '') {
  		get = str_replace('?', '', get);
  		pars = pars + '&' + get;
  	}
	var myAjax = new Ajax.Request(url, {
		method: 'post',
		parameters: pars,
		onComplete: function(originalRequest) {
			if (originalRequest.responseText.indexOf('<!--continue-->') == -1) {
				if (reload_element == 'select_category') {
					$(reload_element + '_' + table).innerHTML = originalRequest.responseText;
					if ((table != 'category_firm') && (onchange_select_category != '')) {
						$('errors').innerHTML = '';
					}
				}
				else {
					$(reload_element).innerHTML = originalRequest.responseText;
				}
			}else {
				var a = originalRequest.responseText.split('<!--continue-->');
				if (reload_element == 'select_category') {
					$(reload_element + '_' + table).innerHTML = a[0];
				}
				else {
					$(reload_element).innerHTML = a[0];
				}
			}
		}
	});
}

function search_categorys_class(table) {
	var url = '_ajax_search_category_class.php';
	var pars = 'table='+table+'&search_category='+$('search_category').value;;
	var myAjax = new Ajax.Request(url, {
		method: 'post',
		parameters: pars,
		onComplete: function(originalRequest) {
			if (encodeURIComponent(originalRequest.responseText) != ''){
				$('select_category').innerHTML = originalRequest.responseText;
			}else{
				document.location.reload();
			}
		}
	});
}

function update_from_ajax(id, td_class, url) {
	var pars = 'id=' + id + '&action=onclick';
	var myAjax = new Ajax.Request(url, {
		method: 'post',
		parameters: pars,
		onComplete: function(originalRequest) {
			$(td_class).innerHTML = originalRequest.responseText;
		}
	});
}
