/**
* Toggles the check state of a group of boxes
*
* Checkboxes must have an id attribute in the form cb0, cb1...
* @param The number of box to 'check'
* @param An alternative field name
*/

function checkAll( n, fldName ) {
  if (!fldName) {
     fldName = 'cb';
  }
  
  var f = document.adminForm;
  var n2 = 0;
  toggle='toggle_'+fldName;
  tgl=eval('f.' + toggle);
  if (fldName=='cb') c = f.toggle.checked; else c = tgl.checked;
  for (i=0; i < n; i++) {
    cb = eval( 'f.' + fldName + '' + i );
    if (cb) {
      cb.checked = c;
      n2++;
    }
  }
  if (c) {
    document.adminForm.boxchecked.value = n2;
  } else {
    document.adminForm.boxchecked.value = 0;
  }
}

function checkAllDin( n, fldName, toggleName ) {
 	// alert('teszt');
 if (!fldName) {
     fldName = 'cb';
  }
	var f = document.adminForm;
	var n2 = 0;
	tgl = eval('f.' + toggleName);
	c = tgl.checked;
	for (i=0; i < n; i++) {
		cb = eval( 'f.' + fldName + '' + i );
		if (cb) {
			cb.checked = c;
			n2++;
		}
	}
  if (c) {
    document.adminForm.boxchecked.value = n2;
  } else {
    document.adminForm.boxchecked.value = 0;
  }
}

function checkAny( n, fldName ) {
  if (!fldName) {
     fldName = 'cb';
  }
  
  var f = document.adminForm;
  var n2 = 0;
  toggle='toggle_'+fldName;
  tgl=eval('f.' + toggle);
  if (fldName=='cb') c = f.toggle.checked; else c = tgl.checked;
  for (i=0; i < n; i++) {
    cb = eval( 'f.' + fldName + '' + i );
    if (cb) {
      cb.checked = c;
      n2++;
    }
  }
  if (c) {
    document.adminForm.boxchecked.value = n2;
  } else {
    document.adminForm.boxchecked.value = 0;
  }
}


function isChecked(isitchecked){
  if (isitchecked == true){
    document.adminForm.boxchecked.value++;
  }
  else {
    document.adminForm.boxchecked.value--;
  }
}

/**
* Default function.  Usually would be overriden by the component
*/
function submitbutton(pressbutton) {
  submitform(pressbutton);
}

/**
* Submit the admin form
*/
function submitform(pressbutton){
  document.adminForm.task.value=pressbutton;
  try {
    document.adminForm.onsubmit();
    }
  catch(e){}
  document.adminForm.submit();
}

function submitform2(formID, pressbutton){
	myForm = $(formID);
	myForm.task.value = pressbutton;
	myForm.submit();
}

function submitbutton_controll(pressbutton, id){
  document.adminForm.task.value=pressbutton;
  document.adminForm.action = document.adminForm.action + "?id=" + id + "&id2=5";
  //alert(document.adminForm.action);
  try {
    document.adminForm.onsubmit();
    }
  catch(e){}
  document.adminForm.submit();
}

function submitbutton_controll_url(pressbutton, id, url){
  document.adminForm.task.value=pressbutton;
  document.adminForm.action = document.adminForm.action + "?id=" + id + "&id2=5" + url;
  //alert(document.adminForm.action);
  try {
    document.adminForm.onsubmit();
    }
  catch(e){}
  document.adminForm.submit();
}

function submitbutton_controll_full(pressbutton, url){
  document.adminForm.task.value=pressbutton;
  document.adminForm.action = document.adminForm.action;// + "?" + url;
  //alert(document.adminForm.action);
  try {
    document.adminForm.onsubmit();
    }
  catch(e){}
  document.adminForm.submit();
}

function submitbutton_user(pressbutton) {
  submitform_user(pressbutton);
}

/**
* Submit the admin form
*/
function submitform_user(pressbutton){
  document.urlap.task.value=pressbutton;
  try {
    document.urlap.onsubmit();
    }
  catch(e){}
  document.urlap.submit();
}
// Hirlevel selecthez
function submitformhirlevel(){
  try {
    document.adminHirlevel.onsubmit();
    }
  catch(e){}
  document.adminHirlevel.submit();
}

function checked_alert(submiting)
{
  if (document.adminForm.boxchecked.value == 0) 
  {
    alert('Jelöljön ki egy elemet!'); 
  }
  else 
  {
    submitbutton(submiting);
  }
}

function checked_alert_confirm(submiting)
{
  if (document.adminForm.boxchecked.value == 0) 
  {
    alert('Jelöljön ki egy elemet!'); 
  }
  else 
  {
    if (confirm('Biztos, hogy törli?')) submitbutton(submiting);
    else return false;
  }
}

function checked_alert_confirm_hir(submiting)
{
  if (document.adminForm.boxchecked.value == 0) 
  {
    alert('Jelöljön ki egy elemet!'); 
  }
  else 
  {
    if (confirm('Biztos, hogy el szeretné küldeni?')) submitbutton(submiting);
    else return false;
  }
}

function listItemTask( id, task ) {
    var f = document.adminForm;
    cb = eval( 'f.' + id );
    if (cb) {
        for (i = 0; true; i++) {
            cbx = eval('f.cb'+i);
            if (!cbx) break;
            cbx.checked = false;
        } // for
        cb.checked = true;
        f.boxchecked.value = 1;
        submitbutton(task);
    }
    return false;
}

function checkclick(id) {
var elem = document.getElementById(id);
if (elem.checked == '') elem.checked='checked'; else elem.checked='';
}

function txt_num_suffix() {
  if (document.getElementById('type_sel').value == 'text_num')
  document.getElementById('suffix').style.display ='';
  else 
  document.getElementById('suffix').style.display ='none';

}


function open_window_img(what, pwidth, pheight, bezartxt) {

  myleft=(screen.width)?(screen.width-pwidth)/2:100;
  mytop=(screen.height)?(screen.height-pheight)/2:100;
  
  f_popup = open("","cartridge_popup","width="+pwidth+",height="+pheight+",left="+myleft+", top="+mytop+",status=no,toolbar=no,menubar=no,resizable=no");
  f_popup.document.open();
  f_popup.document.write("<HTML><HEAD><TITLE>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TITLE></HEAD>");
  f_popup.document.write("<BODY style='margin: 0px 0px 0px 0px; padding: 0px;' bgcolor='#000000'>");
  f_popup.document.write("<a href='javascript:;' onClick='javascript:window.close();'><img src='"+what+"' title='"+bezartxt+"' border='0'></a>");
  f_popup.document.write("</BODY></HTML>");
  f_popup.document.close();
}
function open_window_data(url, left, top, width, height)
{
  //if(f_popup && !f_popup.closed) f_popup.close();
  f_popup = open(url, 'ing_popup', 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=yes, resizable=no, copyhistory=no, width='+width+', height='+height+', left='+left+', top='+top+', screenX='+left+', screenY='+top+'');
  
}


function submitenter(myfield,e)
{
var keycode;
if (window.event) keycode = window.event.keyCode;
else if (e) keycode = e.which;
else return true;

if (keycode == 13)
   {
   try {
    document.urlap.onsubmit();
    }
    catch(e){}
    document.urlap.submit();
    return false;
   }
else
   return true;
}

var d = document;
function getObj(id)
{
  if (d.getElementById) return d.getElementById(id);
  else if (d.all) return d.all(id);
  else if (d.layers) return d.layers[id];
  else return null;
}

function hint_show(id)
{
  var hint = getObj(id);
  if (hint != null) hint.style.display = 'block';
}

function hint_hide(id)
{
  var hint = getObj(id);
  if (hint != null) hint.style.display = 'none';
}

function Is_Email(addr){
  if(addr.length == 0)return false;
  reg = /^(([a-z,0-9])*(\-|\.))*([a-z,0-9])*\@(([a-z,0-9])*(\-|\.))*([a-z,0-9])*\.[a-z]{2,3}$/;
  result = reg.test(addr);
  if(!result){
    return true;  
  }
  return false;
}

function validateBlogKuld(url, serverurl)
{
  var error = 0;
  if($('nev1').value=='') 
  {
    error++;
    $('err_nev1').innerHTML = "Kitöltése kötelező!"; 
  } 
  else $('err_nev1').innerHTML = ""; 
  
  if($('nev2').value=='')  
  {
    error++;
    $('err_nev2').innerHTML = "Kitöltése kötelező!"; 
  }  
  else $('err_nev2').innerHTML = "";      
  if($('email1').value=='') 
  {
    error++;              
    $('err_email1').innerHTML = "Kitöltése kötelező!"; 
  } 
  else if(Is_Email($('email1').value)) 
  {
    error++;
    
    $('err_email1').innerHTML = "Hibás emailcím!"; 
  } 
  else $('err_email1').innerHTML = "";
  
  if($('email2').value=='') 
  {
    error++;              
    $('err_email2').innerHTML = "Kitöltése kötelező!"; 
  } 
  else if(Is_Email($('email2').value)) 
  {
    error++;
    $('err_email2').innerHTML = "Hibás emailcím!"; 
  }
  else $('err_email2').innerHTML = "";
  
  if(error==0) sendBlogInMail($('nev1').value, $('nev2').value, $('email1').value, $('email2').value, url, serverurl);
}

function clearKuldForm()
{
  $('nev1').value='';
  $('nev2').value='';
  $('email1').value='';
  $('email2').value='';
  $('err_nev1').innerHTML='';
  $('err_nev2').innerHTML='';
  $('err_email1').innerHTML='';
  $('err_email2').innerHTML='';
  hint_hide('kuldform');
}

function position_layer(div, x, y){
  var dim = document.viewport.getDimensions();
  var myLayer = $(div);
  AktTop = document.viewport.getScrollOffsets().top;
	if(x && y){
	  mywidth = x;
	  myheight = y;
	}
	else{
	  mywidth = myLayer.getWidth();
	  myheight = myLayer.getHeight();
	}
  // myheight += (myheight<50 ? plusheight : 0);
  
  newLeft = (dim.width-mywidth)/2;
	if(myheight > dim.height)newtop = AktTop + 10;
  else newtop = AktTop + (dim.height-myheight)/2;
	if(newLeft < 10)newLeft = 10;
	if(newtop < 10)newtop = 10;

  // alert(myLayer.style.left + ' - ' + myLayer.style.top);
  myLayer.style.left = newLeft + "px";
  myLayer.style.top = newtop + "px";
}

function submitForm_withaction(formname, myAction){
	var form = $(formname);
	form.action = myAction;
  try {
    form.onsubmit();
    }
  catch(e){}
  form.submit();
}

function Display_Cover(request){
	var myDiv = 'ws_content_prod';
	var myLayer = $(myDiv);
	
	var body_dimensions = $('body').getDimensions();  
	Width = body_dimensions.width + 'px';  
	Height = body_dimensions.height + 'px';  
	$('ws_cover').setStyle({width: Width,height: Height,display: 'block'});

	myLayer.innerHTML = request.responseText;
	// position_layer(myDiv, 500);
	position_layer_IsSize(myDiv);
	// position_layer(myDiv);
	// myLayer.style.display = '';	
	new Effect.Appear(myDiv,
			{
				duration:2,
				from:0.0-0.0,
				to:1.0-0.0
			}
		);
	new Move_Galery_Thumb('motiongallery', 600, 800);
	// alert(request.responseText);
}
function Hide_Cover_Effect(AllDiv){
	var myDivArr = AllDiv.split(";");
	// Redony fel
	$(myDivArr[1]).fade({ duration: 2.0 });
	// new Effect.BlindUp(myDivArr[1],
			// {
				// duration:3,
				// from:0.0,
				// to:1.0				
			// }
		// );
	setTimeout("Set_Display_Arr('" + myDivArr[0] + "', 'none')", 2000);
	// eltunik csokkenve
	// new Effect.Shrink(myDivArr[1],
			// {
				// direction:'center',
				// duration:3,
				// afterFinish:setTimeout("Set_Display_Arr('" + myDivArr[0] + "', 'none')", 3000)
			// }
		// );
}

function Villog(myDiv){
	new Effect.Pulsate(myDiv,
			{
				duration:10,
				from:0.0-1.0
			}
		);
}

function SetValue_intoDiv(serverurl, func, param, mydiv, confirm, message, form, task){
	var div = 'ws_content_prod';
	if(confirm && confirm<2){
    var confirmForm = '<div>' +
                      '<table>' +
                      '<td>'+ 
                      '<table><tr><td colspan="2" style="padding-bottom:10px;line-height:17px;">'+message+'</td></tr><tr><td align="right" style="padding-right:3px;">' +
                        '<input type="button" value="Igen" onclick="SetValue_intoDiv(\'' + serverurl + '\',\'' + func + '\', \'' + param + '\', \'' + mydiv + '\'';
		if(form) confirmForm = confirmForm	+ ', ' + 2 + ', \'0\', \'' + form + '\', \'' + task + '\'';
		
    confirmForm = confirmForm + ')"></td><td align="left" style="padding-left:3px;">'+
                        '<input type="button" value="Nem" onclick="Set_Display(\'ws_cover\',\'none\'); Set_Display(\'ws_content_prod\',\'none\')"></td>'+
                        '</tr></table></td>' +
                      '</div>';
											
    Display_Transparent(serverurl, confirmForm, 'kerdes');
	
	}
	else if(form){
		if(task)$(form).task.value = task;
		myFormData = $(form).serialize(true);
		// $(div).innerHTML = '';
		Display_Transparent(serverurl, '<div><img src="'+serverurl+'/themes/default/images/loading.gif" height="30"/></div>');
		ajaxRequest = new Ajax.Request(
			serverurl + '/functions/ajaxfunc.php?funcid=' + func + '&' + param,
			{
				method: 'post',
				parameters: myFormData,
				onComplete: function(request) 
				{
					$(mydiv).innerHTML = request.responseText;
					// Display_Product(request);; 
					$(div).innerHTML = "";
					// $(div).style.display = 'none';
					// $('ws_cover').style.display = 'none';
					Set_Display_Arr('ws_cover;ws_content_prod;calendarDiv', 'none'); 
				}
			}
		)
	}
	else{
		// $(div).innerHTML = '';
		Display_Transparent(serverurl, '<div><img src="'+serverurl+'/themes/default/images/loading.gif" height="30"/></div>');
		ajaxRequest = new Ajax.Request(
			serverurl + '/functions/ajaxfunc.php',
			{
				method: 'get',
				parameters: 'funcid=' + func + '&' + param,
				onComplete: function(request) 
				{
					$(mydiv).innerHTML = request.responseText;
					// Display_Product(request);; 
					$(div).innerHTML = "";
					Set_Display_Arr('ws_cover;ws_content_prod;calendarDiv', 'none'); 
				}
			}
		)
	}
}

// Kereses
function Form_Controll(serverurl, param, form, task){
	if(task)$(form).task.value = task;
	myFormData = $(form).serialize(true);
	// alert(param);
	
	$('ws_content_prod').innerHTML = '';
	ajaxRequest = new Ajax.Request(
		serverurl + '/functions/ajaxfunc.php?' + param,
		{
			method: 'post',
			parameters: myFormData,
			onComplete: function(request) 
			{
				var myMesArr = request.responseText.split("##");
				// $('navilabel').innerHTML = myMesArr[1];
				// Display_Products_Text(myMesArr[0]); 
				if(myMesArr.length > 1){
					// alert(">2" + request.responseText);

					$('ws_content_prod').innerHTML =  myMesArr[0];
					$('ws_ms').style.display = '';
					$('ws_ms').innerHTML = myMesArr[1];
					setTimeout("Set_Display('ws_ms', 'none')", 8000); 
				}
				else{
					
					$('content_of_page').innerHTML =  request.responseText;
					Set_Display_Arr('ws_cover;ws_content_prod;calendarDiv', 'none'); 
					// setTimeout("Set_Busket('" + serverurl + "', 0)", 500);
				}
			}
		}
	)
}

function Popup_Image(data, x, y){
	var myDiv = 'ws_content_prod';
	var myLayer = $(myDiv);
	myLayer.innerHTML = '';
	
	var body_dimensions = $('body').getDimensions();  
	Width = body_dimensions.width + 'px';  
	Height = body_dimensions.height + 'px';  
	$('ws_cover').setStyle({width: Width,height: Height,display: 'block'});

	myLayer.innerHTML = '<div class="img_close" onclick="Set_Display_Arr(\'ws_cover;ws_content_prod\', \'none\')">X</div><img src="' + data + '" border="0">';
	// position_layer(myDiv, 500);
	position_layer(myDiv, x, y);
	myLayer.style.display = '';	
	// position_layer(myDiv);
}


// # Page Scroll
var PageScrollMove;
var PageScrollCounterTop;
var PageScrollDifferent;
var PageScrollDifferent2;
var PageScrollFinish;
var PageScrollStart;
var PageScrollStep = 1;	// Aktualis mozgas merteke
var PageScrolloldtop = -1;	
var PageScrolln = 0;	// Gyorsulas
var PSStepStep = 1;		// Gyorsulas merteke
var PSMaxSpeed = 300;	// Max sebesseg
var PSDistance = 100;	// A felvezeto ill. leallo tav

function Set_Scroll(id){
  var myLayer = $(id);
  PageScrollCounterTop = document.viewport.getScrollOffsets().top;
	PageScrollStart = PageScrollCounterTop;
	pos = Position.cumulativeOffset(myLayer);
	PageScrollFinish = pos[1];
	PageScrollDifferent = parseInt((PageScrollCounterTop-PageScrollFinish)/2)+PageScrollFinish;
	PageScrollDifferent2 = Math.abs(parseInt((PageScrollDifferent-PageScrollFinish)/2));
	if(PageScrollCounterTop < PageScrollFinish)PageScrollMove = true;	// az oldal felfele mozgasa, scroll lefele azaz top erteke novekszik
	else PageScrollMove = false;
	Slide_Page();
}
function Slide_Page(){
	AktTop = document.viewport.getScrollOffsets().top;
	// Ugras lefele
	if(PageScrollMove){
		// Gyorsulas
		if(PageScrollCounterTop < PageScrollDifferent){
			// A megtett resze a tavnak	
			elapsed = Math.abs(PageScrollStart-AktTop);			
			// Noveles: 
			// * Nem eri el a max sebesseget
			// * A gyorsito reszen van
			// * A gyorsito resz kisebb mint a tav 1/4-e
			if(PageScrollStep < PSMaxSpeed && elapsed < PSDistance && elapsed < PageScrollDifferent2){
				PageScrollStep += Math.floor(Math.pow(2, PageScrolln));
				if(PageScrolln<90)PageScrolln += PSStepStep;
			}
		}
		// Lassulas
		else{		
			remains = Math.abs(PageScrollFinish-AktTop); // Hatralevo resze a tavnak			
			if(PageScrollStep > 2 && (remains/2) < PageScrollStep){
				PageScrollStep = Math.floor(remains/2)-1;
			}
		}
	}
	// Ugras felfele
	else{
		// Gyorsulas
		if(PageScrollCounterTop > PageScrollDifferent){
			// A megtett resze a tavnak	
			elapsed = Math.abs(PageScrollStart-AktTop);			
			// Noveles: 
			// * Nem eri el a max sebesseget
			// * A gyorsito reszen van
			// * A gyorsito resz kisebb mint a tav 1/4-e
			if(PageScrollStep < PSMaxSpeed && elapsed < PSDistance && elapsed < PageScrollDifferent2){
				PageScrollStep += Math.floor(Math.pow(2, PageScrolln));
				if(PageScrolln<90)PageScrolln += PSStepStep;
			}
		}
		// Lassulas
		else{		
			remains = Math.abs(PageScrollFinish-AktTop); // Hatralevo resze a tavnak			
			if(PageScrollStep > 2 && (remains/2) < PageScrollStep){
				PageScrollStep = Math.floor(remains/2)-1;
			}
		}
	}
	
	if(PageScrolloldtop != AktTop){		
		if(PageScrollMove)PageScrollCounterTop += PageScrollStep;
		else if(PageScrollCounterTop > PageScrollStep)PageScrollCounterTop -= PageScrollStep;
		PageScrolloldtop = AktTop;
		window.scrollTo(0, PageScrollCounterTop);
		if(PageScrollCounterTop < (PageScrollFinish - PageScrollStep) || PageScrollCounterTop > (PageScrollFinish+ PageScrollStep)){		
			setTimeout("Slide_Page()", 50);
		}
		else{
			PageScrolloldtop = -1;
			// alert("MyStop: " + PageScrollCounterTop);
			PageScrolln=0;
			PageScrollStep = 1;
		}
	}
	else{
		PageScrolloldtop = -1;
		// alert("System: " + PageScrollCounterTop);
		PageScrolln=0;
		PageScrollStep = 1;	
	}
}
// # End - Page Scroll
