
var confClearBoth = function() {
	if ($('conf-list-container')) $('conf-list-container').setText('');
	if ($('conf-list-form-container')) $('conf-list-form-container').setText('');
}


var confLinks = function(cl,cf,ol,of) {
	var cl = cl>=0?cl:1;
	var cf = cf>=0?cf:1;
	var ol = ol>=0?ol:1;
	var of = of>=0?of:1;
	if ($('show-conf-list')) $('show-conf-list').setStyle('visibility',(cl==1?'visible':'hidden'));
	if ($('show-add-conf-form')) $('show-add-conf-form').setStyle('visibility',(cf==1?'visible':'hidden'));
	if ($('show-conf-org-list')) $('show-conf-org-list').setStyle('visibility',(ol==1?'visible':'hidden'));
	if ($('show-add-conf-org-form')) $('show-add-conf-org-form').setStyle('visibility',(of==1?'visible':'hidden'));
}





/**
 * Konferencje
 */

var showConferenceListForm = function() {
	
	if (!linkGetConferenceListForm) return;
	
	var container = $('conf-list-container');
	var containerListForm = $('conf-list-form-container');
	var url = linkGetConferenceListForm?linkGetConferenceListForm:'';
	
	if (url=='' || !container || !containerListForm) return;
	
	confLinks(0,1,1,1);
	confClearBoth();
	container.setClass('ajax-loader');
	
	new Ajax(url,{
		update: containerListForm,
		onComplete: function() {
			container.removeClass('ajax-loader');
			showConferenceList();
		}
	}).request();
}



var showConferenceList = function() {
	var year = $('conf_year').value;
	var month = $('conf_month').value;
	var container = $('conf-list-container');
	var url = linkConferenceList+'&year='+year+'&month='+month;
	
	container.setText('');
	container.setClass('ajax-loader');
	
	new Ajax(url,{
		update: container,
		onComplete: function() {
			container.removeClass('ajax-loader');
		}
	}).request();
}



var showConferenceForm = function(confId) {
	
	var confId = confId && confId>0?confId:'';
	var container = $('conf-list-container');
	var containerListForm = $('conf-list-form-container');
	var url = linkGetConferenceForm+confId;
	
	confLinks(1,0,1,1);
	confClearBoth();
	container.setClass('ajax-loader');
	
	new Ajax(url,{
		update: container,
		onComplete: function() {
			container.removeClass('ajax-loader');
			addSubmitConferenceForm();
		}
	}).request();
}




var addSubmitConferenceForm = function() {
	
	var form = $('conference-form');
	
	form.addEvent('submit',function(e) {
		new Event(e).stop();
		
		if ($('conf_name').value=='' || $('conf_place').value=='' || $('conf_contact').value=='') {
			alert(langEmptyFields);
			return;
		}
		
		var query = form.toQueryString();
		var url = linkConferenceFormSend+'&'+query;
		var container = $('conf-list-container');
		var containerListForm = $('conf-list-form-container');
		
		confLinks(1,0,1,1);
		confClearBoth();
		container.setClass('ajax-loader');
		
		new Ajax(url,{
			onComplete: function() {
				if (this.response.text=='error') {alert(langErrorWhileAddingConference);}
				container.removeClass('ajax-loader');
				showConferenceListForm();
			}
		}).request();
	});
}



var deleteConference = function(confId) {
	if (!confId || confId<=0) return;
	
	var container = $('conf-list-container');
	var url = linkConferenceDelete+confId;
	
	new Ajax(url,{
		onComplete: function() {
			//if (this.response.text=='success') {alert(langConferenceWasDeleted);}
			if (this.response.text=='error') {alert(langErrorWhileDeletingConference);}
			container.removeClass('ajax-loader');
			showConferenceListForm();
		}
	}).request();
}


var mouseTop;

var showConferenceData = function(id,name,url,modal,print) {
	if (!url || url=='') return;
	
	getMouse();
	
	if (Browser.Engine.presto) {
		mouseTop = 0;
	}
	
	var top = mouseTop-230<0?10:mouseTop-200;
	var modal = modal?modal:false;
	url = print && print===true?url+'&print':url;
	var mUI = document.mochaUI;
	mUI.newWindow({
		id: 'conference-data-window-'+id,
		title: name,
		modal: modal,
		loadMethod: 'iframe',
		contentURL: url,
		draggable: true,
		effects: true,
		resizable: false,
		minimizable: true,
		maximizable: false,
		scrollbars: true,
		footerHeight: 1,
		width: 400,
		height:460,
		y:top
	});
}





/**
 * Organizatorzy
 */


var showConfOrgList = function() {
	
	var container = $('conf-list-container');
	var url = linkCongOrgList;
	
	confLinks(1,1,0,1);
	confClearBoth();
	container.setClass('ajax-loader');
	
	new Ajax(url,{
		update: container,
		onComplete: function() {
			container.removeClass('ajax-loader');
		}
	}).request();
}




var showConfOrgForm = function(orgId) {
	
	var orgId = orgId && orgId>0?orgId:'';
	var container = $('conf-list-container');
	var url = linkGetConferenceOrgForm+orgId;
	
	confLinks(1,1,1,0);
	confClearBoth();
	container.setClass('ajax-loader');
	
	new Ajax(url,{
		update: container,
		onComplete: function() {
			container.removeClass('ajax-loader');
			addSubmitConferenceOrgForm();
		}
	}).request();
}




var addSubmitConferenceOrgForm = function() {
	
	var form = $('conference-org-form');
	
	form.addEvent('submit',function(e) {
		new Event(e).stop();
		
		if ($('org_name').value=='') {
			alert(langEmptyFields);
			return;
		}
		
		var query = form.toQueryString();
		var url = linkConferenceFormOrgSend+'&'+query;
		var container = $('conf-list-container');
		
		confLinks(1,0,1,1);
		confClearBoth();
		container.setClass('ajax-loader');
		
		new Ajax(url,{
			onComplete: function() {
				if (this.response.text=='error') {alert(langErrorWhileAddingConferenceOrg);}
				container.removeClass('ajax-loader');
				showConfOrgList();
			}
		}).request();
	});
}



var deleteConference = function(orgId) {
	if (!orgId || orgId<=0) return;
	
	var container = $('conf-list-container');
	var url = linkConferenceOrgDelete+orgId;
	
	new Ajax(url,{
		onComplete: function() {
			//if (this.response.text=='success') {alert(langConferenceWasDeleted);}
			if (this.response.text=='error') {alert(langErrorWhileDeletingConference);}
			container.removeClass('ajax-loader');
			showConfOrgList();
		}
	}).request();
}










/**
 * Start konferencji
 */
$(window).addEvent('domready',function() {
	showConferenceListForm();
});
