/* QueryVariable */
function getQueryVariable(variable) {
	var query = window.location.search.substring(1);
	var vars = query.split("&");
	for (var i=0;i<vars.length;i++) {
		var pair = vars[i].split("=");
    if (pair[0] == variable) {
      return pair[1];
    }
  } 
} 
	function gallery(a){
	var myRandom=parseInt(Math.random()*99999999);
 		var kuda = a;
 		var url = '/upload/templates/' + kuda;
  		var pars = 't=' +  myRandom ;
		var myAjax = new Ajax.Request(
				url, 
					{method: 'get', parameters: pars, onComplete: newinitLightbox}
					);
		}
	function newinitLightbox(originalRequest){
		$('maincontent').innerHTML = originalRequest.responseText;
		initLightbox();

 	}
 
 

/*
	 onclick="getHTML('/pades/index.html','maincontent',1,true,'параметры',*функция"
	 * - функцию передавать без кавычек, только имя функции
	 true - используем если необходимо выполнить скрипты в подгруженных документах
*/
	function getHTML(a,b,c,d,e,f)	{
		var url 		= a;
		var target 	= b;
		var c = 1; // временная мера  
		var sEval 	= d;
		var pars 	= e;
		var script 	= f;
 
		if(c == 1) {
			myRandom=parseInt(Math.random()*99999999);
			pars 	= e +'&' + myRandom;
			}
		$(target).innerHTML = "<span id='weit'><img src='/_framework/images/main/loading.gif' align='absmiddle' width='18' height='18'> Завантаження інформації...</span>";
		var myAjax = new Ajax.Updater(target, url, {method: 'get', parameters: pars, onComplete: script, evalScripts: d});
		}
		
/*
  Загрузка дополнительных стилей и скриптов. 
  пример : onclick="loadobjs('test.css','test.js')"
  пути к файлам заданы в переменных pathjs и pathcss
*/
var loadedobjects=""
function loadobjs(){
	var pathjs	="/js/";
	var pathcss	="/css/";
	if (!$)
	return
	for (i=0; i<arguments.length; i++){
	var file=arguments[i]
	var fileref=""
	if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
	if (file.indexOf(".js")!=-1){ //If object is a js file
	fileref=document.createElement('script')
	fileref.setAttribute("type","text/javascript");
	fileref.setAttribute("src", pathjs + file);
	}
	else if (file.indexOf(".css")!=-1){ //If object is a css file
	fileref=document.createElement("link")
	fileref.setAttribute("rel", "stylesheet");
	fileref.setAttribute("type", "text/css");
	fileref.setAttribute("href", pathcss + file);
	}
	}
	if (fileref!=""){
	document.getElementsByTagName("head").item(0).appendChild(fileref)
	loadedobjects+=file+" " //Remember this object as being already added to page
	}
	}
}

/*
	К сожалению, стандартное поведение функции escape() при работе с русскими буквами не 
	соответствует тому, что обычно требуется для веб-приложений. Вызов escape('тест') 
	вместо %F2%E5%F1%F2 (закодированные символы в кодировке windows-1251) возвращает 
	бесполезную строку %u0442%u0435%u0441%u0442. Это можно поправить, если перед вызовом 
	escape() перевести нужные символы из Unicode в windows-1251. Следующий код заменяет 
	стандартную функцию и переводит буквы русского алфавита из Unicode в windows-1251 
	(таблицу перевода можно менять, как угодно):
*/
// Инициализируем таблицу перевода
	var trans = [];
	for (var i = 0x410; i <= 0x44F; i++)
		trans[i] = i - 0x350; // А-Яа-я
		trans[0x401] = 0xA8;    // Ё
 		trans[0x451] = 0xB8;    // ё
		trans[0x457] = 0xBF;    // ї
 		trans[0x407] = 0xAF;    // Ї
 		trans[0x456] = 0xB3;    // і
 		trans[0x406] = 0xB2;    // І
 		trans[0x454] = 0xBA;    // є
 		trans[0x404] = 0xAA;    // Є
		trans[0x218] = 0x27;    // `
		trans[0x219] = 0x27;    // ’
		trans[0x060] = 0x27;    // '
	
	// Сохраняем стандартную функцию escape()
	var escapeOrig = window.escape;
	
	// Переопределяем функцию escape()
	window.escape = function(str)
	{
	  var ret = [];
	  // Составляем массив кодов символов, попутно переводим кириллицу
	  for (var i = 0; i < str.length; i++)
	  {
	    var n = str.charCodeAt(i);
	    if (typeof trans[n] != 'undefined')
	      n = trans[n];
	    if (n <= 0xFF)
	      ret.push(n);
	  }
	  return escapeOrig(String.fromCharCode.apply(null, ret));
	}		
	
/* 
	маркер для полей ввода. при ошибке выдает подсвеченным и красит рамку 
*/
function markerSave(id){
	new Effect.Highlight(id,{startcolor:"#FDB342"});
	 $(id).style.border='1px solid red';
	}	
/*
	Проверка валидности мыла
*/
function checkEmail(a) {
	var mail =a;
	var regex = /^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,4})(\]?)$/gi; 
  	if(!regex.test(a)){return false;} 
 	else{return true;}
}
/* 	
	Функция перевода первых символов в верхний регистр. 
	полезна для форм, где вводят имя и фамилию.
 */
function changeCase(frmObj) {
var index;
var tmpStr;
var tmpChar;
var preString;
var postString;
var strlen;
tmpStr = frmObj.toLowerCase();
strLen = tmpStr.length;
if (strLen > 0)  {
for (index = 0; index < strLen; index++)  {
if (index == 0)  {
tmpChar = tmpStr.substring(0,1).toUpperCase();
postString = tmpStr.substring(1,strLen);
tmpStr = tmpChar + postString;
}
else {
tmpChar = tmpStr.substring(index, index+1);
if (tmpChar == " " && index < (strLen-1))  {
tmpChar = tmpStr.substring(index+1, index+2).toUpperCase();
preString = tmpStr.substring(0, index+1);
postString = tmpStr.substring(index+2,strLen);
tmpStr = preString + tmpChar + postString;
         }
      }
   }
}
return tmpStr;
}		
