// JavaScript Document


// координаты мыши
var xpos=0;
var ypos=0;

//var arr_gift      = new Array();  // полный список ид подарков в случайном порядке
//var arr_gift1     = new Array();  // массив 5 верхних подарков
var arr_gift_res  = new Array();	// массив отобранных подарков

var fl_init   = 0;  // тип запроса 0 - сначала, 1 - след 10 загруженных
var nums      = 0;  // страница , вмещает по 10 подарков
var off       = 0;	// блокировка кнопки до загрузки


var num_of_pag  = 10;   // подарков на 1 странице
var curr_page   = 0;    // текущая страница
var pages       = 0;    // всего страниц

var min_cl = 0;   // минимальное число кликов
var max_cl = 0;   // максимальное число кликов в данном разделе

var tag_lnk_visited     = '#D30454';  // цвет тега показывающий что тег в списке выбранных
var tag_lnk_novisited   = '#949494';  // обычный цвет тега (не выбран)

var fl_st_butt = 0;
var sel_gift_id = new Array();		// если 0 - подароки не выбраны, иначе список выбранных




jQuery.fn.center3 = function()
{
	var w = $(window);
	this.css("position","absolute");
	this.css("top",(w.height()-this.height())/2+w.scrollTop() + "px");
	this.css("left",(w.width()-this.width())/2+w.scrollLeft() + "px");
	return this;
}




jQuery.fn.center = function(x,x2,y,y2)
	{
	var w = $(window);
	this.css("position","absolute");
	//a = (w.height()-this.height())/2+w.scrollTop()+y;
	//b = (w.width()-this.width())/2+w.scrollLeft()+x;
	a = (w.height()-this.height())/2+y;
	b = (w.width()-this.width())/2+x;
	if(a<y2)
	  a = y2;
	if(b<x2)
    b = x2; 
	this.css("top",a + "px");
	this.css("left",b + "px");
	return this;
	}



	
jQuery.fn.center2 = function(x,y)
	{
	var w = $(window);
	this.css("position","absolute");
	a = (w.height()-this.height())/2+w.scrollTop()+y;
	b = (w.width()-this.width())/2+w.scrollLeft()+x;
	//a = (w.height()-this.height())/2+y;
	//b = (w.width()-this.width())/2+x;
	//if(a<y2)
	//  a = y2;
	//if(b<x2)
  //  b = x2; 
	this.css("top",a + "px");
	this.css("left",b + "px");
	return this;
	}




<!-- <<<<<<<<<<<< ******** ОПРЕДЕЛЕНИЕ КООРДИНАТ МЫШИ  *****************  //-->

function defPosition(event) {
      var x = y = 0;
      if (document.attachEvent != null) { // Internet Explorer & Opera
            x = window.event.clientX + (document.documentElement.scrollLeft ? document.documentElement.scrollLeft : document.body.scrollLeft);
            y = window.event.clientY + (document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop);
      }
      if (!document.attachEvent && document.addEventListener) { // Gecko
            x = event.clientX + window.scrollX;
            y = event.clientY + window.scrollY;
      }
      return {x:x, y:y};
}
// Простая проверка
// С помощью document.write выведем координаты прямо в окно браузера
// Они будут обновлять при движении мыши
document.onmousemove = function(event) {
     var event = event || window.event;
      xpos = defPosition(event).x;
			ypos = defPosition(event).y;
}

<!-- >>>>>>>>>>>> ******** ОПРЕДЕЛЕНИЕ КООРДИНАТ МЫШИ  *****************  //-->




// Плагин для JQuery для переключения checkbox флажков
jQuery.fn.check = function(mode) {
 // если mode не определен, используем 'on' по умолчанию
 var mode = mode || 'on';
 
 return this.each(function() 
 {
   switch(mode) {
     case 'on':
       this.checked = true;
       break;
     case 'off':
       this.checked = false;
       break;
     case 'toggle':
       this.checked = !this.checked;
       break;
   }
 });
};






/*   **************    ПЕРЕМЕЩЕНИЕ СЛОЕВ МЫШКОЙ   ******** <<<<<<<<<<    */

var flag=false;
var shift_x;
var shift_y;

function start_drag(itemToMove,e){
if(!e) e = window.event;
flag=true;
shift_x = e.clientX-parseInt(itemToMove.style.left);
shift_y = e.clientY-parseInt(itemToMove.style.top);

if(e.stopPropagation) e.stopPropagation();
else e.cancelBubble = true;
if(e.preventDefault) e.preventDefault();
else e.returnValue = false;
}

function end_drag(){ flag=false; }

function dragIt(itemToMove,e){
if(!flag) return;
if(!e) e = window.event;
itemToMove.style.left = (e.clientX-shift_x) + "px";
itemToMove.style.top = (e.clientY-shift_y) + "px";

if(e.stopPropagation) e.stopPropagation();
else e.cancelBubble = true;
if(e.preventDefault) e.preventDefault();
else e.returnValue = false;
}

/*   >>>>> *********    ПЕРЕМЕЩЕНИЕ СЛОЕВ МЫШКОЙ   ***********    */



// МЕНЮ ДЛЯ ТЕГА
var ov = 0;   // флаг задержки
var sr_word = '';

var cur_click_id = 0; // ид подарка на каторый кликнули


// запоминание ид подарка на который кликнули
function set_click_id(id) {
  cur_click_id = id;
}


// показать меню
function show_menu(t,w) {
    if(fl_dragged == 1)
      return;
    if(ov == 1)
      return;
    
    sr_word = w;
    document.getElementById('menu').style.left=xpos-t+'px';
    document.getElementById('menu').style.top=ypos+'px';
    //$("#menu").animate({opacity:'show'},400);
    $("#menu").show();
    ov = 1;
    timerID=setTimeout('unblock()',100);
}

// разблокировать следующее действие
function unblock() {
  ov = 0;
}

// скрыть меню
function hide_menu() {
  if(ov == 0) 
    //$("#menu").animate({opacity:'hide'},300);
    $("#menu").hide();
}



// наведение на пункт меню
function menu_over(a) {
  a.style.backgroundImage = 'url(/img/c_b.gif)';
}

// не активный пункт меню
function menu_out(a) {
  a.style.backgroundImage = 'url(/img/menu_back.png)';
}

// генератор случайных чисел от a до b
function getrandom(a,b) {

  var min_random = a;
  var max_random = b;
  
  max_random++;
  
  var range = max_random - min_random;
  var n=Math.floor(Math.random()*range) + min_random;
  
  return n;
} 







// показать на кнопке статус загрузки
function start_progr() {
	//return;
  fl_st_butt = 1;
	//$("#progress").css('paddingLeft','20px').html('<img src="img/bar.gif" width="10" height="10">');
	$("#progress").html((lang=='ru')?'<table height="30" cellpadding="0" cellspacing="0"><tr><td width="20">&nbsp</td><td style="color:#FFFFFF;" id="aprogress_2">загрузка</td><td width="10">&nbsp</td><td valign="middle"><img width="8" height="8" src="/img2/bar.gif"></td></tr></table>':'<table height="30" cellpadding="0" cellspacing="0"><tr><td width="5">&nbsp</td><td style="color:#FFFFFF;" id="aprogress_2">brainstorming</td><td width="5">&nbsp</td><td valign="middle"><img width="8" height="8" src="/img2/bar.gif"></td></tr></table>');
  //document.getElementById('progress').innerHTML = ((lang=='ru')?'загрузка...':'loading...');
  //fl_st_butt = 1;
  timer1=setTimeout('flash_butt()',1000);
}


// скрыть статус загрузки и показать "еще..."
function end_progr() {
	
  //return;
  //$("#progress").css('paddingLeft','0px');
  str = '<a href="#" id="aprogress" style="color:#FFFFFF;" onclick="return false;" >'+((lang=='ru')?'Ещё варианты':'More')+'</a>';
  //document.getElementById('progress').innerHTML = str;
  
  $("#progress").html(str);
  
  if(fl_st_butt == 0) { // мигание кнопки
    fl_st_butt = 1;
    timer1=setTimeout('flash_butt()',1000);
  }
}



//##################################################################################################################
//                                  ПОДГРУЗКА, ГЕНЕРАЦИЯ ТЕГОВ
//##################################################################################################################


var arr_stek = new Array();		// стек подгрузки
var gen_id = 0;								// ид генератора
var init_gen = 1;							// флаг инициации, 1 - новая, 0 - продолжение
var fl_load = 0;							// флаг загрузки 0 нет, 1 идет
var set_butt = 0;							// нажата кнопка или нет
var stek_timer = 200;					// время через которое подгружается след теги
var stek_num_load	= 10;				// количество подгрузок в стеке
var set_podgr = 1;						// включено, выкл подгрузка
var load_min_max = 1;         // загружать макс мин значение

var sect_next = 0;						// после того как закончился список в выбраном разделе
															// генератор будет переходить к чтению подарков из всех 
															// разделов кроме выбранного, когда 1 - значит чтение из других разделов
															// если 0 - чтение из выбранного



// При нажатии на кнопку генерации
function init_tags() {
	//sect_next = 0;

	set_butt = 1;		// кнопка нажата
	sel_gift_id = new Array();		// сброс выбора подарка
	
	if(fl_init == 0) {	// если первый раз нажимается
		fl_init = 1;	
		// запуск подгрузки тегов
		if(set_podgr) {
			timer_stek = setTimeout('load_stek_next()',stek_timer);
			timer_rerun = setTimeout('rerun()',15000);   // таймер для перезапуска подвисшей подгрузки
    }  	
	} 
	start_tags();	// запуск
}






// При нажатии очередной раз на генерацию, запуск вывода
function start_tags() {

	if(off == 1)		// если блокировка - выход
		return;

	set_butt = 1;		// значит кнопка нажата
	
	// если уже есть загруженные теги - вывести их
	if(arr_stek.length > 0) {
	  off = 1;				// включить блокировку
		start_progr();  // блокировка кнопки и показ процесса загрузки
		prnt_arr_tag(arr_stek.shift());		// из стека вывести на экран первый эл
		//$("#debug").append(arr_stek.length);
	}	else {
		ld_gft();				// начать загрузку
		off = 1;				// включить блокировку
		start_progr();  // блокировка кнопки и показ процесса загрузки
	}
}





// функция таймера для перезапуска зависшей подгрузки
function rerun() {
  if( set_butt != 1 ) { 
		timer_rerun = setTimeout('rerun()',15000);
		return false;
	}	
  fl_load = 0;
  //set_butt = 0;
  end_progr();
  start_tags();
  clearTimeout(timer_rerun);		// обновить таймер
  timer_rerun = setTimeout('rerun()',15000);
}






// Загрузка следующих 10 тегов
function ld_gft() {
	
	if(fl_load == 1) {	// если еще идет загрузка
		if(set_podgr) {
			clearTimeout(timer_stek);		// обновить таймер
			timer_stek = setTimeout('ld_gft()',100);
		}	
		return;	// выход
	}

	if(set_podgr) {
	   timer_rerun = setTimeout('rerun()',15000);
	}
	
	fl_load = 1;		// значит началась загрузка
	
	// запуск динамической подгрузки
	ajrun(
		'backend/backend_load_gift.php',	
				{ 
					sel:		arr_gift_res,
					init:		init_gen,							// 0 - первый запуск, 1 - след чтение
					gen_id:	gen_id, 							// ид гератора
					tp:			0, 		
					sect:		sect,		// ид кому дарить 
					sect_next:	sect_next,
					load_min_max: load_min_max,
					sel_gift_id: sel_gift_id				// не 0 если выбран подарок
				},
				function(a,b) {				// получение результата
				
				  if(set_podgr) {
				  	clearTimeout(timer_rerun);
				  }
					//$("#debug").html(b);
					
					sect_next = a['sect_next'];	// получить флаг смены раздела
					
					// при первой генерации прочитать мин и макс занчение
					if( (a['min']!=-1) && (a['max']!=-1) ) {
						load_min_max = 0;
					   min_cl = a['min'];
					   max_cl = (a['max']!=0)?a['max']:1;
					}
					init_gen = a['init'];
					
					if(init_gen==1) 
						load_min_max = 1;
					
					gen_id = a['gen_id'];
					
					//$("#debug").append(sect_next);
					
					//if(sect_next == 1)
					//	alert('!!!');
					//$("#debug").html(init_gen)
					//$("#debug").html(arr_stek.length);
					
					set_tags(a['gift']);
					fl_load = 0;				 // значит загрузка закончилась
					if(set_podgr) {
						clearTimeout(timer_stek);		// обновление таймера
						timer_stek = setTimeout('load_stek_next()',stek_timer);
					}
				},
				'load_gift'
	);
}





// вывод тегов на экран
function set_tags(arr_gift1) {
	
  a = new Array();
  a['str2'] = '';
  a['str1'] = '';
  a['im'] = new Array();
  var line = 0;
  j=0;
  
  for(var i=0;i<arr_gift1.length;i++) {
  
    if( (line==0) && (j==4))
      random = (arr_stek.length%2)?360:0;
    else {  
      if(j%2==0)
        random = j*0 + getrandom(225,0); // случайное положение
      else
        random = 225+ j*0 + getrandom(225,0);
    }    
    // расчет размера ссылки в зависимости от кликов
    random2 = 10+Math.ceil((arr_gift1[i]['cnt']/max_cl)*10);
    	
    
    if(arr_gift1[i]['im']!='')	{
    
    	im = arr_gift1[i]['im'];
    	a['im'][a['im'].length] = im;

			im = ' onmouseover="if(fl_dragged==1) { return false; };Tip(\'<table><tr><td><img src=\\\''+im+'\\\'></td></tr></table>\',ABOVE,true,BORDERWIDTH,0,FADEIN,300,FADEOUT,300,SHADOWCOLOR,\'#B36666\',OFFSETX,-70,OFFSETY,20);"'
    } else 
			im = '';
			var tt = (auth)?'<a title="'+((lang=='ru')?'Редактировать':'Edit')+'" target="_blank" href="/admin/add_gift.php?lang='+lang+'&edit='+arr_gift1[i]['uid']+'"><img src="img/edit.gif" width="15" height="18" /></a>':'';

    a['str2'] += '<div alt="'+arr_gift1[i]['name']+'" id="drg_'+arr_gift1[i]['uid']+'" style="padding:5px;z-index:101;width:100px;white-space:nowrap;position:relative;left:'+random+'px;top:'+((j*4))+'px;" class="draggable">'+tt+'<a '+im+' id="lnk_tag_'+arr_gift1[i]['uid']+'"  class="tags" style="font-size:'+random2+'px;" href="/descr/index.php?id='+arr_gift1[i]['uid']+'">'+arr_gift1[i]['name']+'</a>&nbsp;<a onclick="add_gift('+arr_gift1[i]['uid']+',\''+arr_gift1[i]['name']+'\');return false;" title="'+((lang=='ru')?'Добавить в список':'Add to the list')+'" href="#"><img style="" src="img/plus21.png" width="12" height="16" /></a>';
    if(arr_gift1[i]['goods'][0]==1) {
      if(arr_gift1[i]['goods'][2]!='') {
       a['str2'] += '<a title="'+((lang=='ru')?'Купить товар':'Buy product')+'" onclick="doCountIncPartners('+arr_gift1[i]['uid']+');" href="'+arr_gift1[i]['goods'][2]+'" target="_blank"><img style="" src="img/shopping_cart2.png" width="12" height="16" /></a>';
      } else {
       a['str2'] += '<a title="'+((lang=='ru')?'Купить товар':'Buy product')+'" onclick="doCountIncShop('+arr_gift1[i]['uid']+','+arr_gift1[i]['goods'][1]+');return false;" href="#" target="_blank"><img style="" src="img/shopping_cart2.png" width="12" height="16" /></a>';
      }
    }
    if(arr_gift1[i]['goods'][0]>1) {
       a['str2'] += '<a title="'+((lang=='ru')?'Купить товары':'Buy products')+'" onclick="doCountIncShop('+arr_gift1[i]['uid']+',0);return false;" href="#" target="_blank"><img style="" src="img/shopping_cart2.png" width="12" height="16" /></a>';
    }
    a['str2'] += '</div>';

    // разделение на половине
    if(i == (Math.floor(arr_gift1.length/2)-1)) {
    	a['str1'] = a['str2'];
    	a['str2'] = '';
    	j=0;
    	line = 1;
    }
    j++;
  }
  if(set_butt == 1) {   // если нажата кнопка 
    prnt_arr_tag(a);    // вывести сразу на экран
  } else {
    arr_stek.push(a);   // иначе добавить в стек
  }
  off = 0;	// разблокировать кнопку
  a=null;
  arr_gift1=null;

}




// Функция таймера
function load_stek_next() {

	if(set_podgr) {
	
		if(arr_stek.length < stek_num_load) {	// если стек еще не заполнен
			clearTimeout(timer_stek);
			ld_gft();	// продолжить подгрузку
		} 
	
		clearTimeout(timer_stek);	// обновить таймер
		timer_stek = setTimeout('load_stek_next()',stek_timer);
	}
}

function div_tags_pos() {

  $('#dv_tags1').center(0,280,0,70);
  $('#tg_bod').hide();		// для корректности изменения размеров таблицы в опере
  $('#tg_bod').show();
  //$('#dv_tags2').center(0,100,310);
}


function div_tags_pos_gift() {
  $('#dv_tags1').center(0,280,-100,100);
  $('#dv_tags2').center(0,280,100,280);
}

function div_tags_pos_gift_hd() {
	$('#bod_all_tag').hide();		// для корректности изменения размеров таблицы в опере
  $('#bod_all_tag').show();
  div_tags_pos_gift();
}


var fl_dragged = 0;

// Вывод тегов из загруженного массива
function prnt_arr_tag(a) {

		// вывод верхнего и нижнего блока тегов
		$('#dv_tags1').html(a['str1']);
		$('#dv_tags2').html(a['str2']);
		
		for(var i=0;i<arr_gift_res.length;i++) {
			$('#lnk_tag_'+arr_gift_res[i]['uid']).css('color',tag_lnk_visited);
			$("#lnk_tag_"+arr_gift_res[i]['uid']).css('borderColor',tag_lnk_visited);
		}
		div_tags_pos_gift();
		for(var i=0;i<a['im'].length;i++) {
		  preImages[i] = new Image();
		  preImages[i].src = a['im'][i];
		}
	
		off = 0;			// разблокировать кнопку
		end_progr();  // разблокировка кнопки, и скрытие процесса загрузки
		set_butt = 0;	// значит кнопка не нажата
		
		/*    // перемещение тегов из середины в окошко
		$(".draggable").draggable({ 
      helper: "clone",
      opacity: 0.40
      
    });
    */
}




// после загрузки страницы, события DRAG & DROP
$(
  function(){
    if(page != 'ind_gift_gen')
      return; 
    /*   
    // для удаления подарков из выбранных перетаскиваением мышкой
    $("#td_body_tag").droppable({
  		accept: '.sel_gift',
  		drop: function(ev, ui) {
        a = ui.draggable.attr("alt");
  		  a = a.replace(/drp_/g, "");
  		  del_gift(a*1);
  		}
  	});
    
    // перетаскивание тегов в окно выбранных
    $("#droppable").droppable({
			accept: '.draggable',
			drop: function(ev, ui) {
			  a = ui.draggable.attr("id").replace(/drg_/g, "");   // ид подарка 
			  b = ui.draggable.attr("alt");       // название подарка
			  
				add_gift(a*1,b);
				
				timer_drag=setTimeout('enab_menu()',1000);   // включение меню
			},
			
			
			activate: function(ev,ui) {  
        fl_dragged = 1;   // если переностится тег - выключить меню
      },
      
      
      deactivate: function(ev,ui) {
        timer_drag=setTimeout('enab_menu()',1000);   // включение меню
      },
      
      
			over: function(ev, ui) {
			 // при переносе над окном
			},
			
			
			out: function(ev, ui) {
			 // иначе
			}
		});
    */  
  }
); 



// после загрузки страницы,  события DRAG & DROP на главной
$(
  function(){
    if((page!='index') ||(!drag_on))
      return;  
      
    $(".drag_div").draggable({  // перетаскивание
      dragHandle: '.drag_krs',
      opacity: 0.50
    });  
    
    $("#main").droppable({      // бросили
      accept: '.drag_div',
      drop: function(ev, ui) {
        a = ui.draggable.attr("id").replace(/tg_/g, "");   // ид подарка 
  		  add_sec_pos(a*1); // добавить позицию для сохранения
  		}
    });
  }    
);






// разблокирование меню тегов после переноса
function enab_menu() {
  fl_dragged = 0;
}




// проверка на наличие ид подарке в списке выбранных, 
function check_tglnk(id) {
  var fl = false;
  for(var i=0;i<arr_gift_res.length;i++) 
    if(typeof(arr_gift_res[i]['uid']) != 'undefined') 
      if(arr_gift_res[i]['uid'] == id) {
        fl = true;
        break;
      } 
    
  return fl;
}






// Добавление подарка в список
function add_gift(num,name) {
	for(var i=0;i<arr_gift_res.length;i++) {	// если такой уже есть - выход
		if(typeof(arr_gift_res[i]) != 'undefined') {
			if(num == arr_gift_res[i]['uid'])
				return false;
		}	
	}
	//arr_stek = new Array();
	sel_gift_id[sel_gift_id.length] = num;		// дабавить ид выбранного подарка
	// выделить тег цветом (что значить что этот тег есть в списке выбранных)
	//$(("#lnk_tag_"+num)).removeClass('tags');
	//if($(("#lnk_tag_"+num)).hasClass('tags'));
	//   $(("#lnk_tag_"+num)).removeClass('tags');
	//$(("#lnk_tag_"+num)).addClass('tagsa');
	
  $("#lnk_tag_"+num).css('color',tag_lnk_visited);
	$("#lnk_tag_"+num).css('borderColor',tag_lnk_visited);
     
	// иначе добавить
	arr_gift_res[arr_gift_res.length] = {'uid':num, 'name':name};
	calc_pg();   // рассчет страниц
	curr_page = (pages-1);
	next_pg();   // след стр
}





// Удаление подарка из списка
function del_gift(num) {
 
	arr_stek = new Array();
  j=0;
  var t = new Array();
  
	for(var i=0;i<arr_gift_res.length;i++) {
		if(typeof(arr_gift_res[i]) != 'undefined') {
			if(num == arr_gift_res[i]['uid']) {
				delete(arr_gift_res[i]);
				continue;
			}	
			t[j] = arr_gift_res[i];
			j++;
		}
	}
	
	// сбросить цвет тега
	$("#lnk_tag_"+num).css('color',tag_lnk_novisited);
	$("#lnk_tag_"+num).css('borderColor',tag_lnk_novisited);
	//$(("#lnk_tag_"+num)).addClass('tags');
	
//	if($(("#lnk_tag_"+num)).hasClass('tagsa'));
//      $(("#lnk_tag_"+num)).removeClass('tagsa');
//  $(("#lnk_tag_"+num)).addClass('tags');

	arr_gift_res = new Array();
	arr_gift_res = t;
	t = null;

  print_added();
	
}



// Очистка списка выбранных
function lst_clear(lang) {

  str = (lang == 'ru') ? 'Очистить весь список подарков?' : 'Clear the entire list of gifts';
  
  if(confirm(str)) {
  	arr_stek = new Array();
    for(var i=0;i<arr_gift_res.length;i++) {
      // сбросить цвет тега везде
      $("#lnk_tag_"+arr_gift_res[i]['uid']).css('color',tag_lnk_novisited);
	    $("#lnk_tag_"+arr_gift_res[i]['uid']).css('borderColor',tag_lnk_novisited);
      //$(("#lnk_tag_"+arr_gift_res[i]['uid'])).removeClass('tagsa');
      //$(("#lnk_tag_"+arr_gift_res[i]['uid'])).addClass('tags');
    	//if(document.getElementById('lnk_tag_'+ arr_gift_res[i]['uid']) != null)
    	//   document.getElementById('lnk_tag_'+ arr_gift_res[i]['uid']).style.color = tag_lnk_novisited;
    }
    arr_gift_res = new Array();
    calc_pg();
    print_added();
  }
}




// расчет количества страниц и тек страницы
function calc_pg() {
  pages = Math.ceil(arr_gift_res.length/num_of_pag);
  if(curr_page > (pages-1) )
    curr_page = (pages-1);
  
    
  if(pages>1)
    $('.list_pg').show();
  else
    $('.list_pg').hide();
    
  if(arr_gift_res.length>2)
    $('.list_pg_cl').show();
  else
    $('.list_pg_cl').hide(); 
}


// след страница
function next_pg() {
  curr_page ++;
  if(curr_page > (pages-1) )
    curr_page = (pages-1);
  print_added();
}

// предыдущая стр
function back_pg() {
  curr_page --;
  if(curr_page < 0 )
    curr_page = 0;
  print_added();
}


// Вывод на экран всего списка добавленных
function print_added() {

  calc_pg();
  st_pg = curr_page * num_of_pag;
  end_pg = st_pg + num_of_pag;
  
  if(end_pg > arr_gift_res.length)
    end_pg = arr_gift_res.length;
  
	str = '';
	for(var i=st_pg;i<end_pg;i++) {
		if(typeof(arr_gift_res[i]) != 'undefined') {
		  //socr = '';
		  socr = (arr_gift_res[i]['name'].length < 22) ? arr_gift_res[i]['name'] : arr_gift_res[i]['name'].substring(0,22)+'...';
			str += '<div alt="'+arr_gift_res[i]['uid']+'" id="drp_'+arr_gift_res[i]['uid']+'" class="sel_gift"><a onmouseover="Tip(\''+arr_gift_res[i]['name']+'\')" onclick="set_click_id('+arr_gift_res[i]['uid']+');show_menu(200,\''+arr_gift_res[i]['name']+'\');return false;" href="#">'+socr+'</a>&nbsp;<a onclick="del_gift('+arr_gift_res[i]['uid']+');return false;" style="text-decoration:none;font-size:20px;" href="#">-</a></div>';
		}	
	}
	document.getElementById('droppable').innerHTML = str;
	
  /*
  // drag & drop для выбранных подарков	
 	$(".sel_gift").draggable({ 
    helper: "clone",
    opacity: 0.40
  });
  */
  
	
	if(arr_gift_res.length==0)     // если список пуст вывести в нем подсказку
	   $("#droppable").html((lang=='ru')?'<br>Нажмите <strong>+</strong> чтобы запомнить подарок':'<br>Click <strong>+</strong> to remember the gift');
}








// показать окно добавления новой идеи
function add_idea_show() {
  //document.getElementById('add_idea_tab').style.display = 'block';
  $("#add_idea_tab").animate({top: "show",opacity: "show"}, 400);

  document.fr_add_idea.name.value = '';
  document.fr_add_idea.email.value = '';
  document.fr_add_idea.gift.value = '';
  document.fr_add_idea.captcha.value = '';
  for(var i=0;i<document.fr_add_idea.type_sel.options.length;i++) {
    //if(i==0) 
    //  document.fr_add_idea.type_sel.options[i].selected = true;
    //else
      document.fr_add_idea.type_sel.options[i].selected = false;
  }
}






// Чтение из базы подарков
function doSaveGift(arr) {
  
    var req_sq2 = new JsHttpRequest();
    req_sq2.onreadystatechange = function() {
        if (req_sq2.readyState == 4) {
            
            var res = req_sq2.responseJS.res;	
            if(res == '0') {
            
              if(lang=='ru')
                alert('Спасибо! Такой подарок уже есть в нашей базе. Присылайте свои новые идеи!');
              else
                alert('Thanks! We already have such idea in our database. Please, send us you new gift ideas!');  
            } else {
            	if(lang=='ru')
                alert('Спасибо! В ближайшее время идея появится на сайте');
              else
                alert('Thanks! Your idea will be here soon.');  
							$('#fr_add_idea').val(fld_more_gift);
						}
            /*
            if(res == -1) {
              if(lang=='ru')
                alert('Не верный код проверки, попробуйте снова!');
              else
                alert('Не верный код проверки, попробуйте снова!');  
              document.fr_add_idea.captcha.focus();
            }  
						*/  
            //if(res == 1)
            //  $('#add_idea_tab').animate({top: 'hide',opacity: 'hide'}, 800);  
					  //document.getElementById('debug').innerHTML = req_sq2.responseText;
					}
    }
    req_sq2.open(null, 'backend/backend_save_gift.php', true);
    req_sq2.send( { arr: arr } );
}






// Добавление новой идеи, проверка полей и отправка
function add_idea_send(auth) {
	
  nam   = (auth)?us_fio:'';
  email = (auth)?us_email:'';
  gift = replace_str($('#fr_add_idea').val());
  
  if( (gift == fld_more_gift) || (gift==''))
  	return false;
  	
	
  $s_arr = new Array();
  
  $s_arr['name'] = nam;
  $s_arr['email'] = email;
  $s_arr['gift'] = gift;

  doSaveGift($s_arr);
}


// Увеличение кликов купить в магазине
function doCountIncShop(gift_id,goods_id) {
  var t_arr = new Array();
  cur_click_id = gift_id;        // ид подарка
  t_arr['id'] = cur_click_id;
  t_arr['lang'] = lang;
  t_arr['tp'] = 7;               // клик в магазин
  t_arr['goods_id'] = goods_id;  // ид товара
  doCountInc(t_arr);
}


// Увеличение кликов партнерских ссылок
function doCountIncPartners(gift_id) {
  var t_arr = new Array();
  cur_click_id = gift_id;        // ид подарка
  t_arr['id'] = cur_click_id;
  t_arr['lang'] = lang;
  t_arr['tp'] = 8;               // клик в магазин
  doCountInc(t_arr);
}



// Увеличение счетчика кликов
function doCountInc(arr) {

   ajrun(
		'/backend/backend_count_gift.php',
				{
					arr:arr                     // ид раздела
				},
				function(a,b) {
          if(arr['tp'] == 7) {  // если только купить в магазине
            if(arr['goods_id']==0)       // если товар не один
              document.location = '/descr/index.php?id='+arr['id']+'&page=1';
            else                         // если товар один
              document.location = '/shop/view.php?id='+arr['goods_id'];
          }
				  //alert('ок');
				  //document.location = 'gift.php?s='+id;
					//$("#debug").html(b);
				},
				''
  	);
/*

    var req_sq3 = new JsHttpRequest();
    req_sq3.onreadystatechange = function() {
        if (req_sq3.readyState == 4) {
            //var curr_count_gift = req_sq3.responseJS.res;
					  //document.getElementById('counter_gift').innerHTML = curr_count_gift;
					  return;
					}
    }
    req_sq3.open(null, '/backend/backend_count_gift.php', true);
    req_sq3.send( { arr: arr } );*/
}



// Функция не используется
/*
function count_inc_sect(id) {
  // запуск динамической подгрузки
	ajrun(
		'backend/backend_count_sect.php',
				{
					id:id                     // ид раздела
				},
				function(a,b) {				// получение результата
				  //alert('ок');
				  document.location = 'gift.php?s='+id;
					//$("#debug").html(b);
				},
				'op'
	);

}
*/

function URLEncode (clearString) {
  var output = '';
  var x = 0;
  clearString = clearString.toString();
  var regex = /(^[a-zA-Z0-9_.]*)/;
  while (x < clearString.length) {
    var match = regex.exec(clearString.substr(x));
    if (match != null && match.length > 1 && match[1] != '') {
     output += match[1];
      x += match[1].length;
    } else {
      if (clearString[x] == ' ')
        output += '+';
      else {
        var charCode = clearString.charCodeAt(x);
        var hexVal = charCode.toString(16);
        output += '%' + ( hexVal.length < 2 ? '0' : '' ) + hexVal.toUpperCase();
      }
      x++;
    }
  }
  return output;
}



function URLDecode (encodedString) {
  var output = encodedString;
  var binVal, thisString;
  var myregexp = /(%[^%]{2})/;
  while ((match = myregexp.exec(output)) != null
             && match.length > 1
             && match[1] != '') {
    binVal = parseInt(match[1].substr(1),16);
    thisString = String.fromCharCode(binVal);
    output = output.replace(match[1], thisString);
  }
  return output;
}




// переход по ссылке поиска
function link_search(tp) {
  //alert(cur_click_id);
  // увеличить счетчик кликов для подарка
  if(cur_click_id != 0) {
    var t_arr = new Array();
    t_arr['id'] = cur_click_id;
    t_arr['lang'] = lang;
    t_arr['tp'] = tp;
    doCountInc(t_arr);
  }
  
  sr_wr = encodeURIComponent(sr_word);    // кодирование адреса
  if(tp == 1) { // google.ru
    msgWindow=window.open('http://www.google.ru/search?hl=ru&q='+sr_wr+'&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&lr=&aq=f&oq=',"displayWindow");
    return;
  }
  if(tp == 2) { // яндекс-маркет
    //alert (URLEncode(sr_word));
    //str = 'http://market.yandex.ru/search.xml?cvredirect=1&text=' + encodeURIComponent(sr_word);
    //alert(str);
    //msgWindow = window.open( str, "displayWindow");
    msgWindow = window.open('http://market.yandex.ru/search.xml?cvredirect=1&text='+sr_wr,"displayWindow");
    return;
  }
  if(tp == 3) { // ebay.com
    msgWindow = window.open('http://shop.ebay.com/?_from=R40&_trksid=m38.l1313&_nkw='+sr_wr+'&_sacat=See-All-Categories',"displayWindow");
    return;
  }
  if(tp == 4) { // google.com
    msgWindow = window.open('http://www.google.com/search?hl=en&q='+sr_wr+'&btnG=Google+Search&aq=f&oq=',"displayWindow");
    return;
  }
  if(tp == 5) { // яндекс-маркет купить
    msgWindow = window.open('http://market.yandex.ru/search.xml?cvredirect=1&text='+sr_wr,"displayWindow");
    return;
  }
  if(tp == 6) { // ebay.com купить
    msgWindow = window.open('http://shop.ebay.com/?_from=R40&_trksid=m38.l1313&_nkw='+sr_wr+'&_sacat=See-All-Categories',"displayWindow");
    return;
  }
}


// описание подарка
function link_descr() {
	document.location = '/descr/index.php?id=' + cur_click_id;
}




// Подтверждение удаления подарка
function gift_conf_del(id,str) {
 // alert(1);
  if(confirm('Вы действительно хотите удалить "'+str+'"?'))
    document.location = "?del="+id;
}


// Подтверждение удаления раздела
function rzd_conf_del(id,str) {
 // alert(1);
  if(confirm('Вы действительно хотите удалить раздел "'+str+'"?'))
    document.location = "?del="+id;
}


// Подтверждение удаления намека
function hint_conf_del(id) {
  if(confirm('Вы действительно хотите удалить намек?'))
    document.location = "?del="+id;
}





// Подтверждение удаления пользователя
function user_conf_del(id) {
  if(confirm('Вы действительно хотите удалить пользователя?'))
    document.location = "?del="+id;
}



// При нажатии "+" в мултидобавлении подарков в админке
function add_fld() {
  
  if(fld_num>15) {
    return false;
  }  
  if(fld_num>=1)
    document.getElementById(('bt_del_fld')).style.display="block";
      
  document.getElementById(('fld_add_'+fld_num )).style.display="block";
  clear_feld(fld_num);
  
  fld_num++;
  document.getElementById('frm_nms').value=fld_num;
  //alert(fld_num);
  return true;
}


// сброс полей формы
function clear_feld(fld) {
	$("#hidd_"+(fld)).attr('checked','');
	$("#en_hidd_"+(fld)).attr('checked','');		
	$("#gift_"+(fld)).val('');
	$("#en_gift_"+(fld)).val('');
	$("#sinonim_"+(fld)).val('');
	$("#en_sinonim_"+(fld)).val('');		
	
	for(var i=0;true;i++) {																										//  галочки разделов
		var t = typeof($("#type_"+(fld_num-1)+"_"+i).val());
		if(t == 'undefined') 
			return;
		$("#type_"+(fld)+"_"+i).attr('checked','');	
	}		
}


// При нажатии "++ в мултидобавлении подарков в админке, умное добавление
function add_fld_ext() {

	if(!add_fld()) // добавить поле
		return false;
	
	// скопировать все значения предыдущего поля
	$("#hidd_"+(fld_num-1)).attr('checked',$("#hidd_"+(fld_num-2)).attr('checked'));				// скрыт рус
	$("#en_hidd_"+(fld_num-1)).attr('checked',$("#en_hidd_"+(fld_num-2)).attr('checked'));	// скрыт англ
	
	$("#gift_"+(fld_num-1)).val($("#gift_"+(fld_num-2)).val());								// название под рус
	$("#en_gift_"+(fld_num-1)).val($("#en_gift_"+(fld_num-2)).val());					// название под англ

	$("#sinonim_"+(fld_num-1)).val($("#sinonim_"+(fld_num-2)).val());					// синоним рус
	$("#en_sinonim_"+(fld_num-1)).val($("#en_sinonim_"+(fld_num-2)).val());		// синоним рус
	
	for(var i=0;true;i++) {																										//  галочки разделов
		var t = typeof($("#type_"+(fld_num-1)+"_"+i).val());
		if(t == 'undefined') 
			return;
		$("#type_"+(fld_num-1)+"_"+i).attr('checked',$("#type_"+(fld_num-2)+"_"+i).attr('checked'));				
	}
}




// При нажатии "-" в мультидобавлении подарков в админке
function del_fld() {
  if(fld_num<=1) 
    return;
    
  fld_num--;
  document.getElementById(('fld_add_'+fld_num )).style.display="none";
  if(fld_num<=1) 
    document.getElementById(('bt_del_fld')).style.display="none";
    
  document.getElementById('frm_nms').value=fld_num;
}



// Удаление выбранных разделов в админке
function razd_del_sel() {
  if(confirm('Удалить выбранные разделы?')) {
    document.fr_list_razd.submit();
  }
}


// Удаление выбранных намеков в админке
function hint_del_sel() {
  if(confirm('Удалить выбранные намеки?')) {
    document.fr_list_hint.submit();
  }
}


// Удаление выбранных пользователей в админке
function user_del_sel() {
  if(confirm('Удалить выбранных пользователей?')) {
    document.fr_list_razd.submit();
  }
}


// Удаление выбранных разделов в админке
function gift_del_sel() {
  if(confirm('Удалить выбранные?')) {
  		document.fr_list_gift.set_op.value='del';
    document.fr_list_gift.submit();
  }
}



// отмечает или сбрасывает все галочки в списке и в разделах
function sel_all_ch(frm_num) {
	if(frm_num == 1)
		a = document.fr_list_gift;
		
	if(frm_num == 2)
		a = document.fr_list_razd;
		
	if(frm_num == 3)
		a = document.fr_list_hint;	
					
	//a = (frm_num==1)?document.fr_list_gift:fr_list_razd;
	fl=0;
	for(var i=0;i<a.elements.length;i++) 	// если есть хоть 1 не отмеченный - выбрать все
		if( (a.elements[i].type=='checkbox') && (a.elements[i].name != 'ch_all'))
			if(!a.elements[i].checked) {
				fl = 1;
				break;
			}
	for(var i=0;i<a.elements.length;i++) 	// иначе если все выбраны - сбросить все
		if(a.elements[i].type=='checkbox')
			a.elements[i].checked=((fl==0)?false:true);
}

// подтверждение публикации или скрытия выбранных подарков
function gift_hidd_sel(hidd) {
	if(confirm(((hidd==0)?'Скрыть':'Публиковать')+' выбранные?')) {
		document.fr_list_gift.set_op.value='hidd';
    document.fr_list_gift.submit();
  }
}








// мигание кнопки "еще"
function flash_butt() {
  //return;
  if(fl_st_butt == 1) {
    $("#aprogress").css('color','#FFBFBF');
    $("#aprogress_2").css('color','#FFBFBF');
    fl_st_butt = 2;
    clearTimeout(timer1);
    timer1=setTimeout('flash_butt()',1000);  
  } else {
    if(fl_st_butt == 2) {
      $("#aprogress").css('color','#FFFFFF')
      $("#aprogress_2").css('color','#FFFFFF');
      fl_st_butt = 1;
      clearTimeout(timer1);
      timer1=setTimeout('flash_butt()',1000);  
    } 
  }
}



// редактировать выбранные подарки
function gift_edit_sel() {
  var str = 'multi_edit_gift.php?op=multiedit&lang='+lang;
  a = document.fr_list_gift;
	fl=0;
	for(var i=0;i<a.elements.length;i++) 	// перебор всех галочек
		if( (a.elements[i].type=='checkbox') && (a.elements[i].name != 'ch_all'))
			if(a.elements[i].checked) {
				fl = 1;
				str += '&e[]='+a.elements[i].value;
			}
  if(fl==0)
    return false;
    
  document.location = str;  
}

// в админке перевод русского поля на англ
function get_transl(feld) {
  var v = document.getElementById(feld).value;
  msgWindow=window.open('http://lingvo.yandex.ru/en?text='+v+'&lang=en&search_type=lingvo&st_translate=on',"displayWindow" ,"location=no,resizable=no,width=800,height=350,scrollbars=yes,menubar=no,status=no,directories=no");
  msgWindow.focus();
  //alert(v);
}











var lengthPBar = 200 									//ширина bar'a
var heightPBar = 20										//высота bar'a

var yourImages = new Array('img/c_b.gif',
'img/menu_back.png',
'img/strel_lf.png',
'img/strel_rg.png',
'img/1.png',
'img/2.png',
'img/3.png',
'img/logo.png',
'img/bant_left.png',
'img/bant_right.png',
'img/close.gif',
'img/back.jpg',
'img/back_top.png',
'img/back_bot.png',
'img/centr.gif',
'img/cir.png',
'img/buton.png',
'img/plus2.png'
)		//массив загружаемых изображений

var tmp = (yourImages.length<10)?10:yourImages.length;	//на bar'e не меньше 10 делений
var preImages = new Array();
var i;

function loadImages() 
{ 
	for (i = 0; i < yourImages.length; i++) 
	{ 
		preImages[i] = new Image();
		preImages[i].src = yourImages[i];
	}
	i=0;
	checkLoad();
}

function checkLoad() 
{
	if(i == tmp)
	{
		document.getElementById('preload').style.display = 'none';
		document.getElementById('afterPreload').style.display = 'block';
		div_tags_pos();
	}
	else if(isNaN(preImages[i]) || preImages[i].complete)
	{
		document.getElementById('i'+i).style.background = '#EA8AAF';	
		i++;
		setTimeout('checkLoad()', 100);
	}
	else setTimeout('checkLoad()', 100);
}











$(
  function(){
    
		$("tr.tr_show").hover(function() {
			$(this).css('backgroundColor','#FEE9DC');
		},function() {
			$(this).css('backgroundColor','#FFFFFF');
		});
		
		/*
		function checkall(context){
			$("#"+context).find("input[@type$='checkbox']").each(function(){
			this.checked = checked;
			});
		}
*/
		
		
		$("tr.tr_show td").not(".tab_td_ch").click(function() {
			//$(".ch",this).click
			//alert(1);
			$(this).parent().find('.ch').check('toggle');
			
		});
		
		/*
		$("input:text").keypress(function() {
      alert(1);
    
    })
		*/
	}
);


var arr_sec_pos = new Array();




// Добавление в массив положений разделов на главной для сохранения
function add_sec_pos(id) {
  fl = 0;
  for(var i=0;i<arr_sec_pos.length;i++) {   // если существует такой ид
    if(arr_sec_pos[i][0] == id) {           // записать в него
      fl = 1;
      break;
    }  
  }  
  if(!fl)   // иначе в конец
    i = arr_sec_pos.length;
    
  x = $('#tg_'+id).css('left');
  y = $('#tg_'+id).css('top');
  arr_sec_pos[i] = [id, x, y];
}






// Загрузка следующих 10 тегов
function save_pos() {
  //alert(arr_sec_pos.length);
	// запуск динамической подгрузки
	ajrun(
		'backend/backend_save_pos_sec.php',	
				{ 
					pos:		arr_sec_pos    // массив координат
				},
				function(a,b) {				// получение результата
				  arr_sec_pos = new Array();
				  alert('Сохранено');
					//$("#debug").html(b);
					//$("#debug").html(arr_stek.length);
				},
				'save_pos'								
	);
}


function goto_namek() {
  
  var str = '';
  
  for(var i=0;i<arr_gift_res.length;i++) {
    str+=(i==0)?'?':'&';
    str+='g[]='+arr_gift_res[i]['uid'];
  }
  //alert(str);
  document.location = 'hint/'+str;
  
}



// Запуск предпросмотра
function go_preview(type) {
  //alert(1);
  
  if(!auth) {
    if(tp_reg==0) {
      quick_reg(type);
    } else {  
      quick_auth(type);
    }  
    return;
  }
  
  check_all_data_namek();
  
  if(glob_err == 1) // если есть ошибки
    return;

	ajrun( 						// запуск динамической подгрузки
		'../backend/backend_hint.php',	
				{ 
				  us_id:  us_id,
				  hint_id: hint_id,
				  type:		type,												// 0-предросмотр или 1-намек
					gift:		arr_gift,
					mail:		arr_mail,
					povod:  ($("#povod_id").val()==fld_povod)?'':$("#povod_id").val(),
					dat:    ($("#dat_id").val()==fld_dat)?'':$("#dat_id").val(),
					sign:		$("#sign_id").val(),				// подпись
					lang:   lang
				},
				function(a,b) {				// получение результата
				  if(type==0)  				// предпросмотр
				    hint_id = a['id'];
				  //alert(hint_id);
				 	$("#debug").html(b);
				 	if(type==0)	// если предпросмотр
				 	  //alert(1);
				 		document.location = 'preview.php?hint='+hint_id;
				 	else	// намек, уведомление о успешной отправке
					   //alert(1); 
				 		document.location = 'end_preview.php';
				},
				'preview'								
	);
}  




// Проверка всех полей перед предпросмотром или намеком
function check_all_data_namek() {
  
  glob_err = 0;
  
  $("#povod_id").val(repl_spec($("#povod_id").val()));
  $("#dat_id").val(repl_dat($("#dat_id").val()));
  
  $("#sign_id").val(repl_spec(replace_str($("#sign_id").val())));	// подпись
  
  
  if( ($("#povod_id").val() == fld_povod) || ($("#povod_id").val() == '') ) {
    $("#err_pov").show();
    $("#err_pov").html(fld_err_1);
    glob_err = 1;
    //alert(1);
  }  
  else
    $("#err_pov").hide();  
	
	// проверка подписи на пустое значение
	if($("#sign_id").val() == '') {
		$("#err_sign").show();
		glob_err = 1;
	} else
		$("#err_sign").hide();
  
  
  if(arr_gift.length<1) {
    $("#err_gift").show();
    $("#err_gift").html(fld_err_2); //В списке должен быть хотя бы один подарок!
    glob_err = 1;
    
  } else 
    $("#err_gift").hide();
      
      
  //read_feld_mail();
  
  for(var i=0;i<arr_mail.length;i++) {
    check_mail_err(i);
    
    if(arr_mail[i]['fio'] == fld_fio)
      arr_mail[i]['fio'] = '';
      
    if(arr_mail[i]['mail'] == fld_mail)
      arr_mail[i]['mail'] = '';  
  }  
  add_gift();
}






// Подгрузить разделы для подарка и показать окно редактирования разделов
function list_load_razd(id) {

	cur_sec_gift  = id;	// запомнить
	
	ajrun( 						// запуск динамической подгрузки
		'../backend/backend_load_sect.php',	
				{ 
				  id:			id,
					lang:   lang
				},
				function(a,b) {					// получение результата
				 	
				 	adm_show_sect_edit();	// показать окно
				 	
				 	$("input[id*='type_']").check('off');	// сброс всех разделов
				 	
				 	for(var i=0;i<a['res'].length;i++)		// отметить выбранные 
				 		$("input[id*='type_'][value='"+a['res'][i]+"']").check('on');
				 	
				 	//$("#debug").html(b);
				},
				'load'								
	);
}


// Сохранить разделы для выбранного подарка в списке
function list_save_razd() {
	var a = new Array();
	for(var i=0;true;i++) {
		if(typeof($("#type_"+i).val())=='undefined')
			break;
		//alert($("#type_"+i).attr(''));	
		if($("#type_"+i).attr('checked')==true)
			a[a.length] = $("#type_"+i).val();
	}
	if(a.length == 0)
		a[0] = 0;
				
	ajrun( 						// запуск динамической подгрузки
		'../backend/backend_load_sect.php',	
				{ 
				  id:			cur_sec_gift,
					lang:   lang,
					sect:		a			// список ид разделов
				},
				function(a,b) {					// получение результата
				 	
				 	$("#edit_sect_win").hide();

				},
				'save'								
	);			
}




// Показать окно редактирования разделов в списке подарков
function adm_show_sect_edit() {
	$("#edit_sect_win").show();
	$("#edit_sect_win").css({'top':ypos-150,'left':xpos+50});
}











var arr_load_im = new Array();        // массив зугруженных изображений
var arr_load_im_res = new Array();    // адреса загруженных картинок
var cur_word = '';                    // ключевое слово для поиска картинок на рамблере
var sdvig_win_im_x = -800;						// смещение окна загрузки картинок по горизонтали
var sdvig_win_im_y = -200;						// смещение окна загрузки картинок по горизонтали
var fl_prnt_im = 1;										// выводить картинки

var acc_rambl = 1;										// доступ к загрузке с рамблера
var acc_del_im = 1;										// удаление картинок
var acc_add_locim = 1;								// доступ к загрузке локальных картнок на сервер






// Показать окно загрузки изображений, и начать загрузку (админка-список подарков)
function show_load_im(gift,id,fl) {
	fl_prnt_im = 1;	
  back_load_im(gift,id,fl);
}


// Показать окно загрузки изображений и показать картинки
function back_load_im(gift,id,fl) {
	id_gift = id;                     // ид подарка
  cur_pg_rambl    = 0;              // страница на рамблере
  arr_load_im     = new Array();    // адреса картинок на рамблере
  
  if(acc_rambl == 1) {
	  if(fl_prnt_im == 1)
	  	fl_search = replace_str($("#id_search_rambl").val());    // слово поиска из текстового поля
  }
  
  if(fl == 0) {       // 1 старт
  
    var word = replace_str(gift);
    
    if(fl_prnt_im == 1) 
    	$("#load_im_tab").css({'top':(ypos+sdvig_win_im_y)+'px', 'left':(xpos + sdvig_win_im_x)+'px'});
    
  } else             // поиск по введенному слову
    word =  fl_search;
  
  cur_word = word;   // запомнить кл слово
  
  if(fl_prnt_im == 1) {
  	if(acc_rambl == 1) {
	  	$("#id_search_rambl").val(word);
		  
		  // прогресс загрузки
		 	$("#yn_im_brows").html('<table height="100%"><tr><td>&nbsp</td></tr><tr><td height="1" align="center">Загрузка...</td></tr><tr><td align="center" height="1"><img src="/img/progr_bar.gif" width="93" height="5"></td></tr><tr><td>&nbsp</td></tr><tr></table>');
	 	}
	 	$("#load_im_tab").show();   // показать окно загрузки изображений
  }
  
  if(acc_rambl == 1)
  	$(".acc_rambl").show();
  	
  if(acc_add_locim == 1)
  	$(".acc_add_locim").show();
  
	// запрос на сервер
	ajrun(   // загрузка имеющихся картинок
			'../backend/admin_edit_gift.php',	
			[ id_gift ],		// ид подарка				
			function(a) {	
				
			    arr_load_im_res = a;
			    //alert(arr_load_im_res[0]['uid']);
			    show_im_to_feld();  // показать загруженные картинки
			    
			    if(acc_rambl == 1) {
			    	ajrun(   // загрузка картинок с рамблера
	        				'../backend/admin_edit_gift.php',	
	        				[ word, cur_pg_rambl ],		// ключ слово, страница
	        				function(a) {	
	        					//$("#debug").html(b);	
        						arr_load_im = a;
        						//alert(arr_load_im[0]['source']);
        						if(fl_prnt_im == 1)
        			  			print_im(arr_load_im);   // показать картинки с рамблера
        			  		else 
											refr_im_list();	
	        				},
	        				'load'													
	        	);
        	}
				  //$("#debug").html(b);		
			},
			'load_local_list_im'															
	);
}







/*

// Добавление картинки в форму
function add_im_sel(nm) {
  fl = true;
  for(var i=0;i<arr_load_im_res.length;i++) {   // проверка дублирования
    if(arr_load_im_res[i]['name'] == arr_load_im[nm]) {
      fl = false;
      break;
    }
  }
  if(fl) {  // если нет дубл - добавить и вывести на экран
    //arr_load_im_res[arr_load_im_res.length] = arr_load_im[nm];
    arr_load_im_res[arr_load_im_res.length] = {name:arr_load_im[nm],type:0};
    show_im_to_feld();	// вывод изображений в форме
  }
}

*/






/*
// Удаление картинки из списка по ее номеру
function im_del_feld(n) {
  var t = arr_load_im_res;
  arr_load_im_res = new Array();
  for(var i=0;i<t.length;i++) {
    if(n != i)
      arr_load_im_res[arr_load_im_res.length] = t[i];
  }
  delete(t);
  show_im_to_feld();    // обновить загруж картинки
}
*/





//******************************************************************************************************************
//******************************************************************************************************************
//******************************************************************************************************************




var block_im = 0;		// если идет процесс загрузки изображения - блокировка

// Добавление картинки в форму
function add_im_sel_n(nm) {
	if(block_im == 1)	// если предыдущая картинка еще не загружена - выход
		return;
		
  fl = true;
  for(var i=0;i<arr_load_im_res.length;i++) {   // проверка дублирования
    if(arr_load_im_res[i]['name'] == arr_load_im[nm]) {
      fl = false;
      break;
    }
  }
  if(fl) {  // если нет дубл - добавить и вывести на экран
    //arr_load_im_res[arr_load_im_res.length] = arr_load_im[nm];
    block_im = 1;
    //alert(arr_load_im[nm]['im']);
    ajrun(   // загрузка картинок с рамблера
				'../backend/admin_edit_gift.php',	
				{ id						: id_gift,										// id редактируемого подарка
					im						: arr_load_im[nm],						// адрес картинки на рамблере
					tp						: 0
				},
				function(a) {	
					//alert(a);
					//$("#debug").html(b);	
					if(a != 0) {
						arr_load_im_res[arr_load_im_res.length] = {uid:a['id'],name:a['im'],orig_lnk:a['orig_lnk'],author:'',typ:0};
						show_im_to_feld();	// вывод изображений в форме
					}
					block_im = 0;
				},
				'add_im_rambl'													
		);
  }
}



// Удаление картинки из списка по ее номеру
function im_del_feld_n(id) {

	if(acc_del_im == 0)		// выход если нет доступа
		return;
	
  if(block_im == 1)	// если предыдущая картинка еще не загружена - выход
		return;
		
  block_im = 1;
  ajrun(   // загрузка картинок с рамблера
				'../backend/admin_edit_gift.php',	
				{ id						: id										// id удаляемой картинки
				},
				function(a) {	
					
					var t = arr_load_im_res;
					
				  arr_load_im_res = new Array();
				  
				  for(var i=0;i<t.length;i++) {
				    if( t[i]['uid'] != id )
				      arr_load_im_res[arr_load_im_res.length] = t[i];
				  }
				  t = null;
				  show_im_to_feld();	// вывод изображений в форме
					block_im = 0;
					//$("#debug").html(b);	
				},
				'del_local_im'													
	);
}


// Добавить локальную картинку
function add_brows_im() {
	//alert(1);
	//if(block_im == 1)	// если предыдущая картинка еще не загружена - выход
	//	return;
	block_im = 1;
	// Отправка данных на сохранение	
	ajrun(
		'../backend/admin_edit_gift.php',
		{ 	id						: id_gift										// id редактируемого подарка
		},
		function(a) {	// обработка результатов
			
			if(a.length < 2) {
				//$("#fl_q").html('<input class="file" id="id_file" type="file">');
				block_im = 0;
				return;	
			}	
      arr_load_im_res[arr_load_im_res.length] = {uid:a['id'], name:a['im'], author:a['author']};
      show_im_to_feld();
      var t = $("#id_search_rambl").val();	// поисковое слово запомнить
			document.fr_load_im.reset();					// сбросить форму (поле загрузки файла)
			$("#id_search_rambl").val(t);
      //$("#fl_q").html('<input class="file" id="id_file" type="file">');
      block_im = 0;
		},
		'add_brows_im',
		$("#id_file")									// локальная загрузка картинок	          
	);
}





// Вывод списка выбранных изображений в форме
function show_im_to_feld() {

  if(arr_load_im_res.length > 0) { 
    
    var str = '<table border="0" cellpadding="0" cellspacing="0"><tr>';
    
  	for(var i=(arr_load_im_res.length-1);i>=0;i--) {
  	  t = arr_load_im_res[i]['name'];
  		str+= '<td class="tb_im_frm_list_id" valign="top">';
  		if(acc_del_im == 1) {
  			str+= '<a onmouseover="Tip(\'Удалить\')" onclick="im_del_feld_n('+arr_load_im_res[i]['uid']+');return false;" href="#"><img src=\''+t+'\'></a>';
  		} else {
  			str+= '<img src=\''+t+'\'>';
  		}
  		str+= '</td><td>&nbsp;</td>';
  	}
  	str+= '</tr></table></a>';
  	
    $("#link_load_im").html(str); 
    $("#win_load_im").css('height','150px');
		// обновить значение количества картинок в списке
		$(("#lnk_line_im_"+id_gift)).html(arr_load_im_res.length);
		
  } else {  // если нет картинок - убрать поле для них
  	$("#link_load_im").empty();
    $("#win_load_im").css('height','0');
    // обновить значение количества картинок в списке
    $(("#lnk_line_im_"+id_gift)).html('0');
  }
}





// Вывод картинок загруженных с рамблера
function print_im(arr) {
  
  if(arr.length > 0) {  // если найдено что то
  	var str = '<table cellpadding="0" cellspacing="3" style="display:inline;padding:0px;width:150px;height:150px;"><tr>';
  	for(var i=0;i<arr.length;i++) {
  
  		str+= '<td valign="top"><a href="#" onclick="add_im_sel_n('+i+');return false;" onmouseover="Tip(\'Добавить в список\')" ><img  style="border:1px #CCCCCC solid;" src="'+arr[i]['im']+'"></td>';
  	}
  	str+= '</tr></table>';
	} else {   // если ничего не найдено
	   str = '<table height="100%"><tr><td valign="middle" align="center">По данному ключевому слову ничего не найдено, <br>попробуйте поиск по другому слову.</td></tr></table>'
	}
	$("#yn_im_brows").html(str);
}




// Показать следующую страницу с картинками
function next_page_im() {
  arr_load_im = new Array();    // сбросить массив 
  $("#yn_im_brows").html('<table height="100%"><tr><td>&nbsp</td></tr><tr><td height="1" align="center">Загрузка...</td></tr><tr><td align="center" height="1"><img src="/img/progr_bar.gif" width="93" height="5"></td></tr><tr><td>&nbsp</td></tr><tr></table>');
  cur_pg_rambl++;   // след страница
  
	ajrun(   // загрузка картинок с рамблера
				'../backend/admin_edit_gift.php',
				[ cur_word,cur_pg_rambl ],	// ключ слово, страница
				function(a) {											 
								arr_load_im = a;
					  		print_im(arr_load_im); // показать картинки с рамблера
				},
				'load'														
	);
}



// Выполнить поиск по введенному слову
function set_search_im() {
    show_load_im(fl_search,id_gift,1);
}

/*
// генерация случайного числа
function getrandom() {
  min_random = 999;
  max_random = 9999;
  var range = max_random - min_random + 1;
  return Math.floor(Math.random()*range) + min_random;
}
*/


function replace_space(v) {
	var reg_sp = /^\s+/g; 			// удаление пробелов
	v = v.replace(reg_sp, '');
	var reg_sp = /\s+$/g; 			// удаление пробелов
	v = v.replace(reg_sp, '');
	return v;
}

// округление до 'r' знаков после запятой
function fix_number_to(v,r) {
	v = v*1;
	v = ''+(v).toFixed(r);			// округление до 2х цифр после запятой
//	var reg_sp = /^(\d*\.0*[1-9]*)0*/g;			// вырезание нулей после запятой
//	v = v.replace(reg_sp, '$1');
	var reg_sp = /0*$/g;			// вырезание нулей после запятой
	v = v.replace(reg_sp, '');
	var reg_sp = /^(\w*)\.$/g;			// убрать точку если после нее нет чисел
	v = v.replace(reg_sp, '$1');
	return v;
}



// Заменяет запятые на точки, для корректного подсчета суммы счета
function replace_zap(v) {
	var reg_sp = /,/g; 				// замена запятых на точки
	v = v.replace(reg_sp, '.');
	var reg_sp = /\s/g; 			// удаление пробелов
	v = v.replace(reg_sp, '');
	return v;
}


// форматирование стоимости - при нажатии клавиши
function replace_price(v) {
	v = ''+v;
	for(i=0;i<3;i++) {
		var reg_sp = /[^\d,\.]*/g;		// вырезание всех символов кроме цифр, запятой и точки
		v = v.replace(reg_sp, '');
		var reg_sp = /\.|,{2,}|\.{2,}|,\.|\.,|,/g; 	// вырезание подряд идущих запятых и точек
		v = v.replace(reg_sp, '.');
		var reg_sp = /^,|^\./g;				// если первый символ точка или запятая, заменяет на '0.'
		v = v.replace(reg_sp, '0.');
	}
	var reg_sp = /\.(\s)/g;					// убрать пробелы после запятой
	v = v.replace(reg_sp, '.');
  v = replace_zap(v);
  var reg_sp = /^(\d*\.\d*)\.[\S\s]*$/;     // удаление '233.434.678' = '233.434'
  v = v.replace(reg_sp, '$1');
	return v;
}



// форматирование номера счета
function replace_num_acc(v) {
	var reg_sp = /[^\d]*/g;		// вырезание всех символов кроме цифр
	v = v.replace(reg_sp, '');
	return v;
}

















/* CART */
    var arr_cart_id     = new Array();
    var arr_cart_inf    = new Array();

    var timerCart = null;
    var timerRun = false;

    // после загрузки страницы
    $(
  			function()
        {
          $("tr.list_tr_all:even").addClass('list_tab_gr_gds');
          //load_cart();   // загрузить
        }
    );

    // загрузить данные корзины
    function load_cart()
    {
      ajrun(
    		'/shop/backend/load_im.php',
    		{
            id						: 1,
            lang          : lang
    		},
    		function(a,b) {
          arr_cart_id = a['cart'];
          arr_cart_inf = { nm: a['nm'], price: a['price'] };
          prnt_cart_inf();
          //$('#debug').html(b);
    		},
    		'load_cart'
    	);
    }

    function prnt_cart_inf() {
      //alert(arr_cart_inf['nm'])
      $('#cart_nm').html(arr_cart_inf['nm']);
      $('#cart_price').html(arr_cart_inf['price']);
    }


    function add_cart_gd(id, sklad, min_part,units) {

      var num_add = replace_num_acc($('#num_add_'+id).val());
      if(num_add == 0)
          num_add = 1;

      $('#num_add_'+id).val(num_add);

      if(num_add < min_part) {
        show_add_cart(3,min_part,units);
        //alert('Минимальная партия данного товара '+min_part+' '+units);
        num_add = min_part;
        $('#num_add_'+id).val(num_add);
        return false;
      }

/*      if(num_add > sklad) {
        alert('Вы хотите добавить товаров в большем количестве, чем есть на складе. Мы свяжемся с вами для согласования точных сроков поставки. Спасибо')
      }*/

      ajrun(
    		'/shop/backend/load_im.php',
    		{
            id						: id,			  // id
            nm            : num_add,
            lang          : lang
    		},
    		function(a,b) {
          if(a['err'] == 1) {
            show_add_cart(1,'','');
            //alert('Вы уже добавили этот товар в корзину. Для увеличения количества, перейдите в корзину.');
          } else {
            if(num_add > sklad) {
              show_add_cart(2,'','');
              //alert('Вы добавили в корзину товаров в большем количестве, чем есть на складе. Мы свяжемся с вами для согласования точных сроков поставки. Спасибо')
            } else {
              show_add_cart(0,'','');
              //alert('Выбранный товар добавлен в корзину');
            }
            //$('#debug').html(b);
            arr_cart_id = a['cart'];
            arr_cart_inf = { nm: a['nm'], price: a['price'] };
            prnt_cart_inf();
          }
    		},
    		'add_cart'
    	);
    }


    function clear_cart() {
      ajrun(
    		'/shop/backend/load_im.php',
    		{
            id						: 1,			// id
            lang          : lang
    		},
    		function(a,b) {
            arr_cart_id = a['cart'];
            arr_cart_inf = { nm: a['nm'], price: a['price'] };
            prnt_cart_inf();
            //$('#debug').html(b);
    		},
    		'clear_cart'
    	);
    }


    // Показать окно добавления,редактирования меню
  	function show_add_cart(num,v1,v2) {

      if(timerRun) {
        clearTimeout(timerCart);
        timerRun = false;
      }
      $("#div_add_cart").fadeOut("fast", function () {
          $('#div_add_cart_txt').html(alert_cart[num]['tx']+v1+' '+v2);
          $("#div_add_cart").show();
          $("#div_add_cart").center3();
          //alert(alert_cart[num]['tm'])
          if((1*alert_cart[num]['tm']) > 0) {
            timerCart = setTimeout('hide_alert_cart()', 1*alert_cart[num]['tm']);
            timerRun = true;
          }
        });
  	}

    // скрыть алерт медленно
    function hide_alert_cart() {
       $("#div_add_cart").fadeOut("slow");
    }

    // скрыть алерт быстро
    function hd_al_cr() {
      if(timerRun) {
        clearTimeout(timerCart);
        timerRun = false;
      }
      $("#div_add_cart").hide();
    }





