function showBlanket() {}

function refreshEmail(str) {
  document.getElementById('inform_e_mail').value=str;
}

function shEmailForm() {
  document.getElementById('ertesites').style.display='block';
}

function hEmailForm() {
	document.getElementById('ertesites').style.display='none';
}

function selector(container, id, kind, dellink, idname, callback) {
	//var img = new Element('img', { alt: '', src: '/css/loading.gif' });
	//container.insert(img);

	new Ajax.Request('index.php?BODY=External&OP=ajaxRequest', { 
		parameters: {
			kind: kind,
			id: id,
			idname: idname,
			AJAX: 1
		},
		onSuccess: function(transport) {				
			container.update(transport.responseText);
			container.getElementsBySelector('select').each(
				function(s) {
					s.observe('change', function(event) {
						selector(container, s.value, kind, dellink, idname, callback);
					});
				}
			);
			
			if(dellink) {	
				var subbutton = new Element('span').update('-');
				subbutton.observe('click', function(event) {
					container.remove();
				});
				container.insert(subbutton);
			}	
			callback(container);
		}, 
		
		method: 'get'
	});
}

function addselector(container, id, kind, dellink, idname, callback) {
	var d = new Element('div');
	$(container).insert(d);
	selector(d, id, kind, dellink, idname, callback);
}

var expanded=[];

function cat_init(cookiename) {
	$j('#cattree').hide();
	$j('#cattree ul').hide();
	
	$j('#cattree span.node').each(function() {
		if($j(this).siblings('ul').length!=0) {
			$j(this).before('<span class="folder_closed"></span>');
		} else {
			$j(this).before('<span class="folder_none"></span>');
		}
	});	

	cat_load_expanded(cookiename);
	
	$j('#cattree > li > ul').show();	
	$j('#cattree > li > ul > li > ul').show();
	$j('#cattree').show();
	
	$j('#cattree span.folder_open, #cattree span.folder_closed').click(function() {
			$j(this).siblings('ul:first').toggle(500, function() {
				expanded=[];
				$j('#cattree ul:visible').each(function() {
					expanded.push($j(this).siblings('span.node').attr('id'));
					$j(this).siblings('span.folder_open, span.folder_closed').attr('class', 'folder_open');
					cat_record_expanded(cookiename);
				});
				$j('#cattree ul:hidden').each(function() {
					$j(this).siblings('span.folder_open, span.folder_closed').attr('class', 'folder_closed');
				});
			});
	});
	
	$j('#cattree a').click(function() {
		expanded.push($j(this).	parent('span.node').attr('id'));
		cat_record_expanded(cookiename);
	});
	
	cat_apply_classes();
}

function cat_record_expanded(cookiename) {
	if(cookiename!='X') {
		$j.JSONCookie(cookiename, { expanded: expanded });
	}
}

function cat_load_expanded(cookiename) {
	if(cookiename!='X') {
		if($j.JSONCookie(cookiename).expanded!=undefined) {
			eval('expanded='+$j.JSONCookie(cookiename).expanded);
			$j.each(expanded, function(k, v) {
				if(v!='') $j('#'+v).siblings('ul').show();
			});
		}
	}
}

function cat_apply_classes() {
	$j('#cattree ul:visible').each(function() {
		$j(this).siblings('span.folder_closed, span.folder_open').attr('class', 'folder_open');
	});
	$j('#cattree ul:hidden').each(function() {
		$j(this).siblings('span.folder_closed, span.folder_open').attr('class', 'folder_closed');
	});
}

function toggleinit(subject, num, appendto) {
	$j(subject).each(function(idx) {
		if(idx>=num) $j(this).hide();
	});
	
	if($j(subject).length>num) {
		$j('<span class="control"></span>').appendTo($j(appendto));
		$j('<span class="caption more">(<a href="#">több &gt;&gt;</a>)</span><span class="caption less" style="display: none;">(<a href="#">kevesebb &lt;&lt;</a>)</span>').appendTo($j(appendto).find('.control'));
	
		$j(appendto).find('.caption').click(function() {
			$j(subject).each(function(idx) {
				if(idx>=num) $j(this).toggle();
			});
	
			$j(appendto).find('.caption').toggle();
			return false;
		});
	}
}

function stateinit(where, id, appendto) {
	$j(appendto).html('<h3 class="dethead"><div>Anima könyvesboltok készlete</div></h3>');
	$j(where).hide().html('<div class="detcont"></div>');
	$j(appendto).find('.dethead').click(function() {
		if($j(where).find('.detcont').html()=='') {
			$j(where).slideDown(100).find('.detcont').html('Aktuális bolti adatok lekérése...');
			$j.ajax({
				type: 'get',
				url: 'index.php', 
				data: ({ BODY: 'Bookinfo', EXT: 1, ID: id, OP: 'tronStock', AJAX: 1 }), 
				success: function(data) {
					$j(where).find('.detcont').html(data);
					$j(appendto).find('.dethead').toggleClass('dethead_open');
				}
			});
		} else {
			$j(where).slideToggle(300);
			$j(appendto).find('.dethead').toggleClass('dethead_open');
		}
		
		return false;
	});
}

function dpdinit(where, url, id, hash, appendto) {
	$j('<input type="button" class="caption more" value="csomag követése" /><input type="button" class="caption less" style="display: none;" value="bezárás" />').appendTo($j(appendto));
	$j(where).parent('div').hide();
	$j(appendto).find('.caption').click(function() {
		if($j(where).html()=='') {
			$j(where).html('Kapcsolatfelvétel a futárcéggel...').parent('div').show(100);
			$j.ajax({
				type: 'get',
				url: 'index.php', 
				data: ({ BODY: 'Orders', EXT: 1, ID: id, OP: 'pingDPD', hash: hash, AJAX: 1 }), 
				success: function(data) {
					if(data=='DPD_YES') {
						$j(where).html('<iframe class="dpdframe" src="'+url+'"></iframe>').parent('div').slideDown(500);
					} else {
						if(data=='DPD_NO') {
							$j(where).html('A csomag nincs jelen a futárcég rendszerében.').parent('div').slideDown(500);
						} else {
							$j(where).html(data).parent('div').slideDown(500);						
						}
					}
					$j(appendto).find('.caption').toggle();
				}
			});		
		
		} else {
			$j(where).parent('div').slideToggle(500);
			$j(appendto).find('.caption').toggle();
		}
		
		return false;
	});
}

function putcal(where) {
	$j(where).datepicker({
			changeMonth: true,
			changeYear: true,
			dateFormat: 'yy-mm-dd',
			showOn: 'button', 
			buttonImage: 'implementation/images/calendar/calendar.gif', 
			buttonImageOnly: true,
			monthNames: ['január', 'február', 'március', 'április', 'május', 'június', 'július', 'augusztus', 'szeptember', 'október', 'november', 'december'],
			monthNamesShort: ['jan', 'feb', 'már', 'ápr', 'máj', 'jún', 'júl', 'aug', 'szep', 'okt', 'nov', 'dec'],
			nextText: 'Következő',
			prevText: 'Előző',
			firstDay: 1,
			dayNames: ['vasárnap', 'hétfő', 'kedd', 'szerda', 'csütörtök', 'péntek', 'szombat'],
			dayNamesMin: ['v', 'h', 'k', 'sz', 'cs', 'p', 'sz'],
			dayNamesShort: ['vas', 'hét', 'ked', 'sze', 'csüt', 'pén', 'szo']			
	});
}


var debugmsgs=[];

function debug(msg) {
	debugmsgs.push(msg);
	//ha nagyobb mint 10 elemű, akkor csonkoljuk
	if(debugmsgs.size()>30) {
		var ret=[];
		debugmsgs.each(function(a,idx) {
			if(idx>0) {
				ret.push(a);
			}
		});
		debugmsgs=ret;	
	}
	
	var html='';
	debugmsgs.each(function(v) {
		html+=(v+"<br \>");
	});
	$j('#debugdiv').html(html);
}

function parseXml(xml) {  
	if (jQuery.browser.msie) {  
		var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");  
		xmlDoc.loadXML(xml);  
		xml = xmlDoc;  
	}  
	return xml;  
} 

function observeinput(i) {					
	var val;
	var prevdata;
	var timeout=150; //ha ennyi ideig nincs tevékenység, akkor lekérdezünk...
	var requid=0;
	var resprequid=0;
	var data;
	var timeouts=[];
	var textinput=$j(i);
	var suggest=$j('<div id="suggest_content"></div>');
	
	textinput.attr('autocomplete', 'off');
	textinput.after(suggest);
	suggest.remove();

	textinput.keyup(function(e) {
		if(e.which==27 || e.which==9) {
			suggest.remove();
		} else
		if(e.which==13) {
			if(suggest.find('li.on').size()==0) {
				textinput.parent('form').submit();
			} else {
				document.location=suggest.find('li.on:first a').attr('href');
				return false;
			}
		} else
		if(e.which==38) { //fel
			oldon=suggest.find('li.on');
			if(suggest.find('li.on').size()==0) {
				suggest.find('li:last').addClass('on');
			} else {
				suggest.find('li.on').prev().addClass('on');
			}
			oldon.removeClass('on');
		} else
		if(e.which==40) { //le
			oldon=suggest.find('li.on');
			if(suggest.find('li.on').size()==0) {
				suggest.find('li:first').addClass('on');
			} else {
				suggest.find('li.on').next().addClass('on');
			}
			oldon.removeClass('on');
		} else {
			//ha változott a mező
			if(textinput.val()!=val) {
				val=textinput.val();
	   		timeouts.each(function(timeoutid) {
					clearTimeout(timeoutid);
				});
				timeouts.clear();

				timeouts.push(
					setTimeout(function() {
						//debug('ajax'+requid);
						textinput.addClass('busy');

						$j.ajax({
							type: 'get',
							url: 'index.php', 
							data: { BODY: 'Suggestion', EXT: 1, word: textinput.val(), OP: 'get', REQUID: requid, AJAX: 1 }, 
							dataType: (jQuery.browser.msie) ? "text" : "xml",
							success: function(backraw) {
								var back=parseXml(backraw);
								resprequid=parseInt($j(back).find('requid').text());
								//debug('ajaxresp'+resprequid+', requid now: '+requid);
								
								if((resprequid+1)==requid) { //ha az utolsó ajaxrequest megjött, akkor csinálunk csak valamit
									//debug('LAST RESP');
									textinput.removeClass('busy');
									data=$j(back).find('data').text();							
									if(data!=prevdata) { //ha a régi ajánló más mint az új
										prevdata=data;
											
										suggest.html(data);
										suggest.find('li').mouseover(function(){ 
											suggest.find('li.on').removeClass('on');
											$j(this).addClass('on');		
										});
										
										textinput.after(suggest);
									}		
									if(data=='NOT_FOUND') {
										suggest.remove();
									}								 										
								}
							}		
						});
						requid++;
												
					}, timeout)
				);	
			}
		}
	});
}

function observesimpleinput(input, module) {
	var val;
	var prevdata;
	var timeout=200; //ha ennyi ideig nincs tevékenység, akkor lekérdezünk...
	var requid=0;
	var resprequid=0;
	var data;
	var timeouts=[];

	var textinput=input.children('input.observeinput');
	
	var suggest=$j('<div class="suggest_content"></div>');
	
	textinput.attr('autocomplete', 'off');
	textinput.after(suggest);
	suggest.remove();
		
	var change=function() {
		if(suggest.find('li.on').size()==0) {
			suggest.remove();
		} else {
			textinput.val(suggest.find('li.on:first .megnev').html());
			val=textinput.val();
			suggest.remove();
		}
	   timeouts.each(function(timeoutid) {
			clearTimeout(timeoutid);
		});
		timeouts.clear();
	}
	
	textinput.keyup(function(e) {
		//debug('keyup');
		if(e.which==27 || e.which==9) {
			suggest.remove();
		} else
		if(e.which==13) {
			change();
		} else
		if(e.which==38) { //fel
			oldon=suggest.find('li.on');
			if(suggest.find('li.on').size()==0) {
				suggest.find('li:last').addClass('on');
			} else {
				suggest.find('li.on').prev().addClass('on');
			}
			oldon.removeClass('on');
		} else
		if(e.which==40) { //le
			oldon=suggest.find('li.on');
			if(suggest.find('li.on').size()==0) {
				suggest.find('li:first').addClass('on');
			} else {
				suggest.find('li.on').next().addClass('on');
			}
			oldon.removeClass('on');
		} else {
			//ha változott a mező
			if(textinput.val()!=val) {
				val=textinput.val();
			
			   timeouts.each(function(timeoutid) {
					clearTimeout(timeoutid);
				});
				timeouts.clear();
				
				timeouts.push(
					setTimeout(function() {
						//debug('ajax'+requid);
						textinput.addClass('busy');
				
						$j.ajax({
							type: 'get',
							url: 'index.php', 
							data: { BODY: 'Suggestion', OP: module, EXT: 1, word: textinput.val(), REQUID: requid, AJAX: 1 },
							dataType: (jQuery.browser.msie) ? "text" : "xml",  
							success: function(backraw) {	
								var back=parseXml(backraw);
								resprequid=parseInt($j(back).find('requid').text());
								//debug('ajaxresp'+resprequid+', requid now: '+requid);
								
								if((resprequid+1)==requid) { //ha az utolsó ajaxrequest megjött, akkor csinálunk csak valamit
									//debug('LAST RESP');
									textinput.removeClass('busy');
									data=$j(back).find('data').text();							
									if(data!=prevdata) { //ha a régi ajánló más mint az új
										prevdata=data;
													
										suggest.html(data);
										
										suggest.find('li').mouseover(function(){ 
											suggest.find('li.on').removeClass('on');
											$j(this).addClass('on');		
										});
										
										suggest.find('li').click(function(){ 
											change();
										});
										
										textinput.after(suggest);
									}		
									if(data=='NOT_FOUND') {
										suggest.remove();
									}
								}
							}		
						});
						requid++;
												
					}, timeout)
				);	
			}
		}
	});
}

function toggleCheck(container, what) {
	$j(container).find('input[type=checkbox]').attr('checked', $j(what).attr('checked'));
	$j(container).find('input[type=checkbox]').not(what).click(function() {
		$j(what).attr('checked', false);
	});
}

function detailinit(what, defaulthide) {
	$j(what).find('.dethead').wrapInner('<div></div>');
	if(defaulthide==1) {
		$j(what).find('.detcont').hide();
	} else {
		$j(what).find('.dethead').addClass('dethead_open');
	}

	$j(what).find('.dethead').click(function() {
		$j(this).toggleClass('dethead_open');
		$j(what).find('.detcont').slideToggle(300);
	});		
}

function activate_closes() {
	$j('#sysmsg .close_icon').click(function() {
		$j(this).parent().parent().slideUp(600); 
	});
}
