$(document).ready(function() {


/**Start Selectbox**/
if(($('#myprofil').size()>0)) {
	$('.hidebyJS').hide();
	
	showHideOtherOrganisation($('#organisation'));
	
	$('#organisation').change(function() { showHideOtherOrganisation($('#organisation'))});
		
	if($('#topics')) $('#topics').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
	if($('#sessions')) $('#sessions').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
}

if(($('#documentUpload').size()>0)) {
	$('.hidebyJS').hide();
	
	if($('#topics')) $('#topics').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
}

if(($('#eventCreate').size()>0) || ($('#eventEdit').size()>0)) {
	$('.hidebyJS').hide();	
	if($('#topics')) $('#topics').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
	
	showHideOtherOrganisation($('#organisation'));
	$('#organisation').change(function() { showHideOtherOrganisation($('#organisation'))});
}

if(($('#manageCategories').size()>0)) {
	$('.hidebyJS').hide();
	
	if($('#topics')) $('#topics').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });
	if($('#sessions')) $('#sessions').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
}

if(($('#manageForums').size()>0)) {
	$('.hidebyJS').hide();
	
	if($('#topics')) $('#topics').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });
	if($('#sessions')) $('#sessions').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
}

if(($('#eventInvitation').size()>0)) {
	$('.hidebyJS').hide();	
	if($('#experts')) $('#experts').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
}

if(($('#organisationprofil').size()>0)) {
	$('.hidebyJS').hide();	
	if($('#documents')) $('#documents').comboselect({ sort: 'both', addbtn: 'add',  rembtn: 'rem' });	
}

if(($('#schedule\\.timeSlot\\.day').size()>0) && ($('#schedule\\.dateTo').size()>0)) {
	setScheduleDates();
	
	$('#schedule\\.dateFrom').change(setScheduleDates);
	$('#schedule\\.dateTo').change(setScheduleDates);
}

if($('#forAllVenues').size()>0) {
	if ($('#forAllVenues').is(':checked')) {
		$('#tsDescription').show();
	} else {
		$('#tsDescription').hide();
	}

	$('#forAllVenues').click(function() {
		$('#tsDescription').toggle();
	});
}

if($('#bulletinPreferences').size()>0) {
	if ($('#bulletinPreferences').is(':checked')) {
		$('#bulletinPreferencesTypes').show();
	} else {
		$('#bulletinPreferencesTypes').hide();
	}

	$('#bulletinPreferences').click(function() {
		$('#bulletinPreferencesTypes').toggle();
	});
}


// In Iframe, adjust height
if ($("#jDialogContainer iframe", parent.document.body).is("iframe")) {
	var height = $("div.DialogContainer").height()+40;
	if (height > 600) {
		height = 600;
	}
	$("#jDialogContainer iframe", parent.document.body).height(height);
}


function setScheduleDates() {
	var options = '';
	var format = 'mm/dd/yy';
	var dateFrom = new Date($('#schedule\\.dateFrom').val());
	
	if (isNaN(dateFrom)) {
		return;
	}
	
	var dateTo = new Date($('#schedule\\.dateTo').val());

	options += '<option value="'+$.datepicker.formatDate( format, dateFrom)+'">'+$.datepicker.formatDate( format, dateFrom)+'</option>\n';
	
	while (dateFrom < dateTo) {
		dateFrom.setDate(dateFrom.getDate()+1);
		options += '<option value="'+$.datepicker.formatDate( format, dateFrom)+'">'+$.datepicker.formatDate( format, dateFrom)+'</option>\n';
	}
	
	$('#schedule\\.timeSlot\\.day').html(options);
}

function showHideOtherOrganisation(organisation) {
	if($(organisation).val() == "other") {
		$('#otherorganisationlabel').show();
		$('#organisationNew').show();		
	} else {
		$('#otherorganisationlabel').hide();
		$('#organisationNew').hide();				
	}	
}
	
/****************************************/
/**Function for carousel initialisation**/	
/****************************************/

/**Member Array**/
	var mycarousel_itemList = new Array();
		
	for(i=0;i<$('#newmemberscarousel li').length; i++) {
		mycarousel_itemList[i] = ($($('#newmemberscarousel li')[i]).html());
	}


	function mycarousel_itemVisibleInCallback(carousel, item, i, state, evt) {
	
	    // The index() method calculates the index from a
	    // given index who is out of the actual item range.
	
	    var idx = carousel.index(i, mycarousel_itemList.length);
	    carousel.add(i, mycarousel_itemList[idx-1]);
	};

	function mycarousel_itemVisibleOutCallback(carousel, item, i, state, evt) {
	    carousel.remove(i);
	};

/**Start Link Carousel**/
    $('#linkcarousel').jcarousel({
		vertical: true,
        scroll: 1
    });
    
/**Start Link Carousel**/
    $('#linkcarouselpublicationDate').jcarousel({
		vertical: true,
        scroll: 1
    });
	
/**Start Member Carousel**/
    $('#newmemberscarousel').jcarousel({
		scroll: 1,
        wrap: 'circular',
		itemVisibleInCallback: {onBeforeAnimation: mycarousel_itemVisibleInCallback},
        itemVisibleOutCallback: {onAfterAnimation: mycarousel_itemVisibleOutCallback}

    });

/**Start Drop Down Navigation (QuickAccess)**/
     $("ul.quickAccess").superfish({	 	
			animation: {height:'show'},   // slide-down effect without fade-in 
				delay:   800,
				speed:       'slow',                          // faster animation speed 
				autoArrows:  false,                           // disable generation of arrow mark-up 
				dropShadows: false                            // disable drop shadows    
		
	 }).find('ul').bgIframe({opacity:false}); 

/**Start Drop Down Navigation (Sessions)**/
	if($('.containerButtonSession').is("div")) {
		 $(".containerButtonSession ul ul").addClass("withJS");	
    	 $(".containerButtonSession > ul").superfish({       
				animation: {height:'show'},   // slide-down effect without fade-in 
				delay:   400,
				speed:       'fast',                          // faster animation speed 
				autoArrows:  false,                           // disable generation of arrow mark-up 
				dropShadows: false                           // disable drop shadows 
			}).find('ul').bgIframe({opacity:false}); 
	}
	
/**Start Partnner Banner in Marginal Column )**/
	$('.containerPartner ul li').click( function(){
		handleSlide(this);
	});
	
	
/**Start Tab Navigation )**/
	if($('.cols2 .tabContainer').is("div")) {
		$('.tabContainer').tabs(0);		
	}
	


/**Start Tab Navigation )**/
	if($('.containerPartner').is("div")) {
		handleSlide(".containerPartner");	
	}
	
/**Start GoogleMaps )**/
	if($('#map').is("div")) {
		mapLoad();	
	}
	
	
/**Hide Submit for manual Tag Selection*/
if ($('.JStrigger').is("div")) {
	$('.JStrigger').removeClass("JStrigger");
}
	
if ($('.JStriggerOff').is("div")) {
	$('.JStriggerOff').addClass("JStrigger");
}
	 
/**Init Checkbox Window*/
	if($('a.dialogTrigger').is("a")) {
		
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		bg: '#000'
	}
	$(".dialogTrigger").createDialog({
		addr: '/data.html',
		bg: '#000'
	});

}

/**Init Event Workstream Window*/
if($('a.eventWorkstreamDialogTrigger').is("a")) {
	$('a.eventWorkstreamDialogTrigger').click(function() {
		var url = $(this).parents("form").attr("action");
		var data = "doSaveTemp=Save";
		data += readFormFields($(this).parents("form").attr("id"));
		$.ajax({
			type: "POST",
			url: url,
			data: data 
		});
	});
	
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		alwaysLoad: true,
		bg: '#000'
	}
	workstreams = $('a.eventWorkstreamDialogTrigger')
	for(i=0;i<$(workstreams).length;i++) {
		$(workstreams[i]).createDialog({
		addr: workstreams[i].id,
		bg: '#000'
	});
	}
}

/**Init Event Timeslot Window*/
if($('a.eventTimeslotDialogTrigger').is("a")) {
	$('a.eventTimeslotDialogTrigger').click(function() {
		var url = $(this).parents("form").attr("action");
		var data = "doSaveTemp=Save";
		data += readFormFields($(this).parents("form").attr("id"));
		$.ajax({
			type: "POST",
			url: url,
			data: data 
		});
	});
	
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		alwaysLoad: true,
		bg: '#000'
	}
	
	timeslots = $('a.eventTimeslotDialogTrigger');
	for(i=0;i<$(timeslots).length;i++) {
		$(timeslots[i]).createDialog({
		addr: timeslots[i].id,
		bg: '#000'
	});
	}
}

/**Init Event Session Window */
if($('a.eventSessionDialogTrigger').is("a")) {
	$('a.eventSessionDialogTrigger').click(function() {
		var url = $(this).parents("form").attr("action");
		var data = "doSaveTemp=Save";
		data += readFormFields($(this).parents("form").attr("id"));
		$.ajax({
			type: "POST",
			url: url,
			data: data 
		});
	});
	
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		alwaysLoad: true,
		wide: true,
		bg: '#000'
	}
	
	sessions = $('a.eventSessionDialogTrigger');
	for(i=0;i<$(sessions).length;i++) {
		$(sessions[i]).createDialog({
		addr: sessions[i].id,
		bg: '#000'
	});
	}
}

/**Init Event Session View Window */
if($('a.eventSessionViewDialogTrigger').is("a")) {
		
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		alwaysLoad: true,
		bg: '#000'
	}
	
	sessions = $('a.eventSessionViewDialogTrigger');
	for(i=0;i<$(sessions).length;i++) {
		$(sessions[i]).createDialog({
		addr: sessions[i].id,
		bg: '#000'
	});
	}
}

/**Init Select Experts Window */
if($('a.selectExpertsDialogTrigger').is("a")) {
	$('a.selectExpertsDialogTrigger').click(function() {
		var url = $(this).parents("form").attr("action");
		var data = "doSaveTemp=Save";
		data += readFormFields($(this).parents("form").attr("id"));
		var href = $(this).attr("href");
		$.ajax({
			type: "POST",
			url: url,
			data: data,
			success: function(msg){
			    document.location = href;
			}
		});
		return false;
	});
	
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		wide: true,
		bg: '#000'
	}
	
	if (!$('a.selectExpertsDialogTrigger').hasClass('noDialog')) {
		experts = $('a.selectExpertsDialogTrigger');
		for(i=0;i<$(experts).length;i++) {
			$(experts[i]).createDialog({
				addr: experts[i].id,
				bg: '#000'
			});
		}
	}
	
}

/**Init Select Documents Window */
if($('a.selectDocumentsDialogTrigger').is("a")) {
	$('a.selectDocumentsDialogTrigger').click(function() {
		var url = $(this).parents("form").attr("action");
		var data = "doSaveTemp=Save";
		data += readFormFields($(this).parents("form").attr("id"));
		$.ajax({
			type: "POST",
			url: url,
			data: data 
		});
	});
	
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		alwaysLoad: true,
		wide: true,
		bg: '#000'
	}

	documents = $('a.selectDocumentsDialogTrigger');
	for(i=0;i<$(documents).length;i++) {
		$(documents[i]).createDialog({
		addr: documents[i].id,
		bg: '#000'
	});
	}
}

/**Init Select Documents Window */
if($('a.refuseEventRegistrationDialogTrigger').is("a")) {
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		useIframe: true,
		alwaysLoad: true,
		bg: '#000'
	}
	
	refused = $('a.refuseEventRegistrationDialogTrigger');
	for(i=0;i<$(refused).length;i++) {
		$(refused[i]).createDialog({
		addr: refused[i].id,
		bg: '#000'
	});
	}
}

/**Init Edir User Rights Window*/
if($('a.editUserRightsDialogTrigger').is("a")) {
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		bg: '#000',
		alwaysLoad: true
	}
	
	users = $('a.editUserRightsDialogTrigger');
	for(i=0;i<$(users).length;i++) {
		$(users[i]).createDialog({
		addr: users[i].id,
		bg: '#000'
	});
	}
}

/**Init Checkbox Window im FavoriteBox */
if($('a.dialogTriggerBox').is("a")) {
		
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		bg: '#000'
	}
	$(".dialogTriggerBox").createDialog({
		addr: '/data.html',
		bg: '#000'
	});
	
	
	
}

/**Init Checkbox Window im FavoriteList */
if($('a.dialogTriggerFav').is("a")) {
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		bg: '#000'
	}
	
		
	$(".dialogTriggerFav").createDialog({
		addr: '/data.html',
	   	 //target: $($(".dialogTriggerFav")[i]).prev().attr("id"), 
		bg: '#000'
	});	
}

/**Init News Window */
if($('a.dialogNews').is("a")) {
		
	$.fn.createDialog.defaults = {
		progress: true,
		center: true,
		opacity: 0.7,
		bg: '#000',
		alwaysLoad: true
	}
	
	news = $('a.dialogNews');
	for(i=0;i<$(news).length;i++) {
	    // Starts with new_?
		if (news[i].id.match('^news_')) {
			$(news[i]).createDialog( {
				addr: '/new.html?id='+news[i].id.substring(5),
				bg: '#000'
			});
		}
	}
}


/** Event Registration Types */
if ($('#eventRegistrationTypes').is("select")) {
	$('#eventRegistrationTypes').change(function() {
		if ($(this).val() == 'none') {
			$("#registration\\.deadline",$(this).parents("form")).attr("class","");
			$(".ui-datepicker-trigger").remove();
			$("#registration\\.deadline,#registration\\.maxParticipants",$(this).parents("form")).attr("readOnly","readOnly");
			$("#registration\\.deadline,#registration\\.maxParticipants",$(this).parents("form")).attr("disabled","disabled");
			$(":radio,:checkbox",$(this).parents("form")).attr("disabled","disabled");
		} else if (!$("#registration\\.deadline",$(this).parents("form")).hasClass("inputDateFrom")) {
			$("#registration\\.deadline",$(this).parents("form")).attr("class","inputDateFrom");
			datePicker();
			$("[disabled]",$(this).parents("form")).removeAttr("disabled");
			$("[readOnly]",$(this).parents("form")).removeAttr("readOnly");
		}
	});
}
		

/**Datepicker**/
	datePicker();
	
/** Join as IRRN Member Formular ein- und ausblenden */
if ($('#joinAsIRRNMember').is("div")) {
	if ($('#joinAsIRRNMemberCB').is(':checked')) {
		$('#joinAsIRRNMember').show();
	} else {
		$('#joinAsIRRNMember').hide();
	}

	$('#joinAsIRRNMemberCB').click(function() {
		$('#joinAsIRRNMember').toggle();
	});
}

});

var datePicker = function() {
	if($('.inputDateFrom').is("input")){

		$(".inputDateFrom, .inputDateTo").datepicker({ 
   			showOn: "both", 
    		buttonImage: "/images/calendar.gif", 
    		buttonImageOnly: true 
		});
	}
}



function submitModal(){	

		var strValues = '';
		var strDivider = '';
		var strTagString = '';
		var strCurrentTarget ='';
		
		
		$(".check:checked","#DialogContainer").each (function() {		
			strValues += ','+ $(this).val();
			});
		
		strValues = strValues.substr(1);
		
		if($('#tagString').val()) {
			strTagString = $('#tagString').val();
			strDivider =",";
			$('#tagString').attr("value","");
		}

		
		if($('#tagString').val()) {
			strDivider =",";	
		}
		
		if($('#' + $('#targetId').val()).is("input")) {				
			$('#' + $('#targetId').val()).attr("value", strValues + strDivider + strTagString);	
		}


		$.closeDialog();

	
}



/**Start Timer Function for Partner Banner**/
var click = false;	
var delay=4000; //set delay in miliseconds
var curindex=0;
var randomimages=new Array();

/**Select random image and control the interval of Slide Show**/
function timer(obj) {
	if(!click) {
		if (curindex==(tempindex=Math.floor(Math.random()*(randomimages.length)))){
			curindex=curindex==0? 1 : curindex-1
		} else curindex=tempindex;
		if (randomimages.length > 1) {
			showSlide(randomimages[curindex],obj);
		}
	}
}
	
	
function handleSlide(obj) {

	for(i=0;i<$(obj + " ul li").length;i++) {	
		$($(obj + " ul li")[i]).children().attr("title",$($(obj + " ul li")[i]).children().attr("href"));		
		$($(obj + " ul li")[i]).children().removeAttr("href");
		$($(obj + " ul li")[i]).children().css("cursor","pointer");
		randomimages[i] = $($(obj + " ul li")[i]).children();		
	}
	
	setInterval("timer('"+ obj + "')",delay);

	$(obj + " ul li a").click(
		function(){
			click = true;
			showSlide($(this),obj);
	})		
}

/**Show the images and links above the thumbnails**/
function showSlide(obj,slide) {

		obj.css("cursor","pointer");
		$(slide + " ul li.selected-parent").removeAttr("class");	
		obj.parent().addClass("selected-parent");	
		$(".logoPartner a").attr("href", obj.attr("title"));
			
		var imgsrc = obj.children().attr('src');
		imgsrc = imgsrc.replace(/\/xs\//,'/lh/');

		var xlimgsrc = imgsrc.split("_s.jpg");
		xlimgsrc = xlimgsrc[0] + "_xl.jpg";
		$(".logoPartner img").attr('src',xlimgsrc)
}

function readFormFields(formId) {
	var params = '';
	$('#'+formId+' :input').each(function() {
		if (this.type != 'submit' && this.value != '') {
			//params += '&'+this.name+'='+escape(this.value);
			if (this.type == 'select-multiple') {
				var name = this.name;
				// Handle right - select boxes from jquery comboselect
				if (this.name.match('_right$')=='_right') {
					//Ends with _right
					name = this.name.substring(0,this.name.indexOf('_right'));
				}
				params += '&'+name+'='+encodeURI($(this).val().join("&"+name+"="));
			} else {
				params += '&'+this.name+'='+encodeURIComponent($(this).val());
			}
		}
	});
	return params;
}

function limitTextInput(textFieldId,countFieldId,maxCharacters) {
	textFieldId = textFieldId.replace(/\./g,"\\.");
	countFieldId = countFieldId.replace(/\./g,"\\.");


	var text = $('textarea#'+textFieldId).val();
	if (text.length > maxCharacters) {
		$("textarea#"+textFieldId).val(text.substring(0,maxCharacters));
	}
	var left = maxCharacters - $("textarea#"+textFieldId).val().length;
	if (left == 0) {
		left = "none";
	}
	$("#"+countFieldId).html(left);
}
