﻿function onResponse(JSON, responseText) {

	if(JSON){
		 if(JSON.error != ""){ alert(JSON.error); }
		 
		 $('dropBox').innerHTML = "";
		
		 JSON.words.each(function(word){
			
			var indexXML =  word.index;
			var wordFromXML = word.word_from;
			var wordFrom = (wordFromXML.length >= 15) ? wordFromXML.slice(0,13)+"..." : wordFromXML;
			var wordToXML = word.word_to;
			var wordTo = (wordToXML.length >= 15) ? wordToXML.slice(0,13)+"..." : wordToXML;
			
			new Element('table',{'border':0,'cellspacing':0,'cellpadding':0,'width':'100%'}).adopt(
				new Element('tbody').adopt( // ie bugfix
					new Element('tr',{'class':'tr_rows', 'id': 'trrows_'+indexXML}).adopt(
						new Element('td',{'width':10, 'class':'wlrow', 'id':'row_'+indexXML+'_1'}).adopt(
							new Element('input',{'id':'row_'+indexXML, 'name':'cbox', 'unchecked':'unchecked', 'type':'checkbox', 'events':{'click':function(){SelectRow(indexXML)} }  })
						),
						new Element('td',{'width':'50%', 'title': wordFromXML, 'class':'wlrow', 'id':'row_'+ indexXML +'_2'}).adopt(
							new Element('div',{'text':wordFrom, 'align':'left'})
						),
						new Element('td',{'width':'50%', 'title': wordToXML, 'class':'wlrow', 'id':'row_'+ indexXML +'_3'}).adopt(
							new Element('div',{'text':wordTo, 'align':'left'})
						)
					)
				)
			).inject($('dropBox'));
		});
	
	/*  var myElementsEffects = new Fx.Elements($$('.tr_rows').getLast(),{duration: 'long'});
		myElementsEffects.start({
			'0': { // sargan felvillan
				'background-color': ['#FFFFFF','#FFFF00'],
				'background-color': ['#FFFF00','#FFFFFF']
			}
		});
*/

	}else{
  		$('dropBox').innerHTML="<div style='margin-top:15px'>Új szó hozzáadása: <img src='images/add.png' ></div>";
  	}	
}




function deleteRow() {
	
	var idArray = [];
	
	$$("input[name=cbox]:checked").each(function(item){
			//new Fx.Slide($(item.getParent('table')),{'onComplete':function(el){ el.dispose(); } }).slideOut('vertical');
			$(item.getParent('table')).slide('out');
			idArray.push(item.id.split('_')[1]);
	});

	var ids = idArray.join(':');
	
	new Request({'method':'get',
				'url':'wordlist.php'/*,
				'onSuccess':onResponse*/
				}).send('cmd=del&sid='+ids+'&lng_from='+$("from").value+'&lng_to='+$("to").value);
}


function openWordlist(){
	var href = window.location.href.split('?');
	window.open('wl_collection.php?return=index.php?'+escape(href[1]), '_self');
	return false;
}


function newWordList(){
	new Request({'method':'get',
			'url':'wordlist.php',
			'onSuccess':onResponse
			}).send('cmd=new');
	$('wl_name').innerHTML = "Szógyűjtemény";
	wl_name = ""; // szogy
	//saveWordList();
	promptBox('show'); // szogyujtemeny nevenek megadasa
	return false;
}



function SelectRow(id){
	var id_0 = $('row_'+id);
	var tds = $$('#row_'+id+'_1', '#row_'+id+'_2', '#row_'+id+'_3');

	if (id_0.get('checked')){
		tds.setStyle('background-color',SelectedRow);
	}else{
		tds.setStyle('background-color','');
	}
}


window.addEvent('domready',function(){
	// a spec karakterek ablak becsukasa
	var ToggleFX2 = new Fx.Slide($('toggled_1')).hide();
	$('toggler_1').addEvent('click', function(e){
			e = new Event(e);
			nyelvvalaszt();
			ToggleFX2.toggle();
			e.stop();
	});
	
	//, {transition: 'bounce:in', duration : 'long'}
	// szogyujtemeny betoltese, ha a keresett szora van talat
	if ($('dropBox')){
		new Request.JSON({
					'url':'wordlist.php',
					'onSuccess':onResponse
					}).post({'lng_from':$("from").value,'lng_to':$("to").value});
		
		//floater kezdo poziciojanak megadasa
		$('floater').setStyle('top',$('results_table').getCoordinates().top);
		
		//csak akkor legyen scrollozhato, ha a result table nagyobb mint a floater;
		if($('results_table').getCoordinates().height > $('floater').getCoordinates().height){
			var floater = $('floater');
			var result_table = $('results_table');
			var myFx = new Fx.Tween(floater, {'link':'ignore', 'transition': 'linear', 'duration':'short'});
			
			var maxTop	 = result_table.getCoordinates().top; // legfelul
			var minBottom= result_table.getCoordinates().bottom - floater.getCoordinates().height;
			
			var myFunction = function(){
					var halfPage = window.getSize().y/2+window.getScroll().y - floater.getCoordinates().height/2; // oldal fele
					
					// ha a box elerte az oldal felet, akkor scrollozodjan
					if( halfPage >= maxTop && halfPage <= minBottom){
						var topPos = halfPage;
					// max magassag
					}else if(halfPage < maxTop){
						var topPos = maxTop;
					// min magassag
					}else{
						var topPos = minBottom;
					}
					myFx.start('top', topPos);
			};
			var intervalID = myFunction.periodical(200);
		}
	}
});


function saveWordList(){
	if ((wl_name == "" || wl_name == null) && user != ""){
		promptBox('show');
	}// csak reggelt felhasznalonal kerdezzen ra a mentesre
	if (wl_name != "" && wl_name != null){
		new Request({'method':'get',
				'url':'wordlist.php',
				'onSuccess':onResponse
				}).send('cmd=save&lng_from='+$('from').value+'&lng_to='+$('to').value+'&wl_name='+wl_name);
		$('wl_name').innerHTML = '<strong>'+wl_name+'</strong>';
	}
}

function openQueez(){
		new Request({'method':'get',
				'url':'wordlist.php',
				'onSuccess':function(){window.open('queez.php','_self');}
				}).send('cmd=queez&selected_wl=queez');
		return false;
}

function promptBox(mode){
	switch(mode){
		case 'show':
			var paddingFromTop = (window.getCoordinates().height/2-90)+ window.getScroll().y; // kozepre helyezes
			$('lightBox').setStyles({'height':window.getScrollSize().y, 'display':'block'}); // szurke hatter
			$('promptBox').setStyles({'top': paddingFromTop, 'display':'block' }); // kozepre helyezes
			$('prompt').set('value',wl_name).focus(); // regi nev torlese,  mezo kijelolese
		break;
		case 'save':
			wl_name = $('prompt').get('value');
			saveWordList();
			$('lightBox').setStyle('display','none');
			$('promptBox').setStyle('display','none');
		break;
		case 'cancel':
			$('lightBox').setStyle('display','none');
			$('promptBox').setStyle('display','none');
		break;
	}
	return false;
}

function changeFlag(url, type){
	$(type).setStyle('backgroundImage', url);
}

function switchLng(from, to){
	var tmp_f = $(to).options[$(to).selectedIndex].getStyle('backgroundImage'); //selected flag
	$(to).setStyle('backgroundImage', $(from).options[$(from).selectedIndex].getStyle('backgroundImage'));
	$(from).setStyle('backgroundImage', tmp_f);

	var i_from =$(from).selectedIndex; //selected language
	var i_to = $(to).selectedIndex;
	
	if (i_from == 0){i_from = 1;}else if (i_from == 1){i_from = 0;} //except eng, hun index
	if (i_to == 0){i_to = 1;}else if (i_to == 1){i_to = 0;}

	$(from).options[i_to].selected = true;
	$(to).options[i_from].selected = true;
}
