
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 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 == 'search')&&(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_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) {
	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) {
								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;
										break;
										case 'reboot':
											if ($(tmp[1]) == null) {
												document.location.href = tmp[tmp.length - 1];
											}else {
												document.location.href = tmp[(parseInt($(tmp[1]).value) + 2)];
											}
										break;
										case 'continue':
											document.location.href = tmp[1] + '?' + trim(originalRequest.responseText);
										break;
                                        /*
										case 'no_reboot':
											$(tmp[1]).innerHTML = originalRequest.responseText;
										break;
										case 'reboot':
											//alert($(tmp[1]).value + '  ' + tmp[($(tmp[1]).value)] + '  ' + tmp[1]);
											document.location.href = tmp[(parseInt($(tmp[1]).value) + 2)];
										break;
										*/
									}
								}

								//$(span_errors).innerHTML = originalRequest.responseText;
								//document.location.href = '#' + a_result;
							}
						});
                        /*
						{method: 'post', parameters: pars,
							onComplete: function(originalRequest) {
								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;
										break;
										case 'reboot':
											//alert($(tmp[1]).value + '  ' + tmp[($(tmp[1]).value)] + '  ' + tmp[1]);
											document.location.href = tmp[(parseInt($(tmp[1]).value) + 2)];
										break;
									}
								}

								//$(span_errors).innerHTML = originalRequest.responseText;
								//document.location.href = '#' + a_result;
							}
						});
						*/
				}else {
					$(span_errors).innerHTML = originalRequest.responseText;
					document.location.href = '#' + a_result;
				}
			}
		});
}

function select_category_class(id_category, table) {
 var url = '_ajax_select_category_class.php';
 var pars = 'id_category=' + id_category + '&use_table=' + table;
  	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) {
     $('select_category').innerHTML = originalRequest.responseText;
    }
    else {
     var a = originalRequest.responseText.split('<!--continue-->');
     $('select_category').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();
     }
   }
  });
}


