/*
 * jquery.coremetrcis Library v1.0.0
 * http://www.bsmo.de/
 *
 * Copyright (c) 2010 Roman Richter
 *
 * Date: 2010-01-20 14:00:00 
 * Revision: 
 */

/******************** GLOBAL VARIABLES ******************/
var coremetricsDebug = false;

var coremetricsAreaOfExpertise;
var coremetricsMedicalRubric;
var coremetricsContentType;
var coremetricsTitle;
var coremetricsFormTitle;
var coremetricsUserAreaOfExpertise;
var coremetricsUsersFocus;
var coremetricsJournalTitle;
var coremetricsEditionTitle;
var coremetricsNewSession;
var coremetricsBranchKey;
var coremetricsUserGroupIds;
var coremetricsImgGallery;
var coremetricsDartzone;

var portletAddRemoveStr="";
var portletContentAddRemoveStr="";
var ratingValue="";
var videoStatus="";
var videoTimestamp="";
var videoLength="";
var dartPos="";

/*
 * getter for coremetricsAreaOfExpertise
 * 
 */
function getAreaOfExpertise(){
	return coremetricsAreaOfExpertise;
}

/*
* getter for coremetricsMedicalRubric
* 
*/
function getMedicalRubric(){
	return coremetricsMedicalRubric;
}

/*
* getter for coremetricsContentType
* 
*/
function getContentType(){
	return coremetricsContentType;
}

/*
* setter for coremetricsContentType
* 
*/
function setContentType(contentType){
	coremetricsContentType = contentType;
}

/*
* getter for coremetricsTitle
* 
*/
function getTitle(){
	return coremetricsTitle;
}

/*
* getter for coremetricsFormTitle
* 
*/
function getFormTitle(){
	return coremetricsFormTitle;
}

/*
* getter for coremetricsUserAreaOfExpertise
* 
*/
function getUserAreaOfExpertise(){
	return coremetricsUserAreaOfExpertise;
}

/*
* getter for userAreaOfExpertise
* 
*/
function getUsersFocus(){
	return coremetricsUsersFocus;
}

/*
* getter for coremetricsUserGroupIds
* 
*/
function getUserGroupIds(){
	return coremetricsUserGroupIds;
}

/*
* getter for coremetricsJournalTitle
* 
*/
function getJournalTitle(){
	return coremetricsJournalTitle;
}

/*
* setter for coremetricsJournalTitle
* 
*/
function setJournalTitle(journalTitle){
	coremetricsJournalTitle = journalTitle;
}

/*
* getter for coremetricsEditionTitle
* 
*/
function getEditionTitle(){
	return coremetricsEditionTitle;
}

/*
* setter for coremetricsEditionTitle
* 
*/
function setEditionTitle(editionTitle){
	coremetricsEditionTitle = editionTitle;
}

/*
* getter for coremetricsBrancheKey
* 
*/
function getBrancheKey(){
	return coremetricsBranchKey;
}

/*
* getter for coremetricsDartzone
* 
*/
function getDartzone(){
	return coremetricsDartzone;
}

/*
* getter for portletAddRemoveStr
* 
*/
function getPortletAddRemoveStr(){
	return portletAddRemoveStr;
}

/*
* setter for portletAddRemoveStr
* 
*/
function setPortletAddRemoveStr(addRemoveStr){
	portletAddRemoveStr = addRemoveStr;
}

/*
* getter for portletContentAddRemoveStr
* 
*/
function getPortletContentAddRemoveStr(){
	return portletContentAddRemoveStr;
}

/*
* setter for portletContentAddRemoveStr
* 
*/
function setPortletContentAddRemoveStr(contentAddRemoveStr){
	portletContentAddRemoveStr = contentAddRemoveStr;
}

/*
* getter for ratingValue
* 
*/
function getRatingValue(){
	return ratingValue;
}

/*
* setter for ratingValue
* 
*/
function setRatingValue(value){
	ratingValue = value;
}

/*
* getter for videoStatus
* 
*/
function getVideoStatus(){
	return videoStatus;
}

/*
* setter for videoStatus
* 
*/
function setVideoStatus(status){
	videoStatus = status;
}

/*
* getter for videoTimestamp
* 
*/
function getVideoTimestamp(){
	return videoTimestamp;
}

/*
* setter for videoTimestamp
* 
*/
function setVideoTimestamp(timestamp){
	videoTimestamp = timestamp;
}

/*
* getter for videoLength
* 
*/
function getVideoLength(){
	return videoLength;
}

/*
* setter for videoLength
* 
*/
function setVideoLength(length){
	videoLength = length;
}

/*
* getter for dartPos
* 
*/
function getDartPos(){
	return dartPos;
}

/*
* setter for dartPos
* 
*/
function setDartPos(pos){
	dartPos = pos;
}


/*
* getter for coremetrics elementAttributes
* 
*/
function getElementAttributes(){
	return getAreaOfExpertise() + '-_-' + getMedicalRubric() + '-_-' + getContentType() + '-_-' + getJournalTitle() + '-_-' + getEditionTitle() + '-_-' + getPortletAddRemoveStr() + '-_-' + getPortletContentAddRemoveStr() + '-_-' + getUserAreaOfExpertise() + '-_-' + getUsersFocus() + '-_-' + getUserGroupIds() + '-_-' + getRatingValue() + '-_--_-' + getVideoStatus() + '-_-' + getVideoTimestamp() + '-_-' + getVideoLength();
}

/*
* getter for coremetrics conversionEventAttributes
* 
*/
function getConversionEventAttributes(){
	return 'GE-_-B2M-_-' + getBrancheKey() + '-_-SPRINGERMEDIZIN-_-' + getDartzone() + '-_--_--_-' + getDartPos() + '-_-' + getAreaOfExpertise() + '-_-' + getUserAreaOfExpertise() + '-_-' + getUsersFocus() + '-_-' + getUserGroupIds() + '-_-' + getMedicalRubric() + '-_-' + getContentType() + '-_-';
}


/******************** GLOBAL VARIABLES ******************/



/******************** START DEBUG UTILS ******************/

/*
 * debugging function
 * 
 */
function isCoremetricsDebug(){
	 return coremetricsDebug;
}

/*
* debugging function
* 
*/
function debugAlert(text){
	 if(isCoremetricsDebug()){
		 //alert(text);
	 }
}

/*
 * debugging function
 * 
 */
function debugMessage(output){
	 if(isCoremetricsDebug()){
		 if(typeof(window.console)!='undefined'){
			 window.console['info'](output);
		 }else{
			 //alert("console undefiened !");
		 }	 
	 }
}
/******************** END DEBUG UTILS ******************/


/******************** START CHECKBOX FORM UTILS ******************/
 
 var initialCustomizePortletArray = [];
 var initialCustomizeHomepageArray = [];
 var initialSelectboxArray = [];
 
 jQuery(function() {		
 	jQuery.fn.fillCheckboxArrays = function(initCheckboxArray){
 		var i = 0;
 		jQuery(this).find(':checkbox').each( function(){
 			initCheckboxArray[i] = jQuery(this).attr("name") + ':' + jQuery(this).attr("checked");
 			i++;
 		});
 	}
 	
 	jQuery.fn.compareCheckboxesAndThrowCoremetricsTag = function(initCheckboxArray, formName){
 		var item;
 		var attributes;
 		var i = 0;
 		var checkboxAction = 'Add';
 		jQuery(this).find(':checkbox').each( function(){
 			item = initCheckboxArray[i].split(':');
 			if(item[1] != (''+jQuery(this).attr("checked"))){
 				if(jQuery(this).attr("checked") == true){
 					checkboxAction = 'Add';
 				}else{
 					checkboxAction = 'Remove';
 				}
 				setPortletAddRemoveStr(checkboxAction + ': Portlet ' + item[0]);
 				cmCreatePageElementTag(jQuery(this).attr('name'), formName, getElementAttributes());
 				debugMessage('cmCreatePageElementTag(' + jQuery(this).attr('name') + ', ' + formName + ', ' + getElementAttributes() + ')');
 			}
 			i++;
 		});
 	}
 	
// 	jQuery.fn.fillSelectboxArrays = function(initSelectboxArray){
// 		var i = 0;
// 		jQuery(this).find(':checkbox').each( function(){
// 			initSelectboxArray[i] = jQuery(this).attr("name") + ':' + jQuery(this).attr("checked");
// 			i++;
// 		});
// 	}
 	
// 	jQuery.fn.compareSelectboxValuesAndThrowCoremetricsTag = function(initSelectboxArray, formName){
// 		var item;
// 		var attributes;
// 		var i = 0;
// 		var selectboxAction = 'Add';
// 		jQuery(this).find(':checkbox').each( function(){
// 			item = initselectboxArray[i].split(':');
// 			if(item[1] != (''+jQuery(this).attr("checked"))){
// 				if(jQuery(this).attr("checked") == true){
// 					selectboxAction = 'Add';
// 				}else{
// 					selectboxAction = 'Remove';
// 				}
// 				attributes = getAreaOfExpertise() + '-_-Portlet-_-' + selectboxAction;
// 				setPortletAddRemoveStr(selectboxAction + ': Portlet ' + item[0]);
// 				cmCreatePageElementTag(jQuery(this).attr('name'), formName, getElementAttributes());
// 				debugMessage('cmCreatePageElementTag(' + jQuery(this).attr('name') + ', ' + formName + ', ' + getElementAttributes() + ')');
// 			}
// 			i++;
// 		});
// 	}

 
 });

 function getCheckboxAt(checkboxArray, key){
 	var item;
 	for (x in checkboxArray){
 		item = checkboxArray[x].split(':');
 		
 		if(item[0] == key){
 			return item[1];
 		}
 	}
 }

 function setCheckboxAt(checkboxArray, key, value){
 	var item;
 	for (x in checkboxArray){
 		item = checkboxArray[x].split(':');
 		
 		if(item[0] == key){
 			checkboxArray[x] = key + ':' + value;
 			return;
 		}
 	}
 }

/******************** END CHECKBOX FORM UTILS ******************/
 
 
 /*
  * 8.1 ad tag is displayed
  * 
  */
// jQuery(document).ready(
// 		function(){		
// 			var coremetricsAdExist = false;
// 			jQuery('#yoda1').find('.adLabel').each( function(){
// 		 		if((!coremetricsNewSession) && (!coremetricsAdExist)){
// 			 		debugMessage("yoda1 cmCreateConversionEventTag(springermedizin-rectangle, 1, Marketing, 0," + getConversionEventAttributes() + ");");
// 		 			cmCreateConversionEventTag("springermedizin-rectangle", "1", getConversionEventAttributes());
// 		 		}
// 		 		coremetricsAdExist = true;
// 			});
// 			jQuery('#yoda2').find('.adLabel').each( function(){
// 		 		if((!coremetricsNewSession) && (!coremetricsAdExist)){
// 			 		debugMessage("yoda2 cmCreateConversionEventTag(springermedizin-rectangle, 1, Marketing, 0," + getConversionEventAttributes() + ");");
// 		 			cmCreateConversionEventTag("springermedizin-rectangle", "1", getConversionEventAttributes());
// 		 		}
// 		 		coremetricsAdExist = true;
// 			});
//		});

 
	 			
 /*
  * 8.1 click ad
  *  
  */
// jQuery(document).ready(
// 		function(){			
// 			jQuery('#yoda1').click( function() {
//				setDartPos('pos1');
//		 		debugMessage("yoda1 cmCreateConversionEventTag(springermedizin-rectangle, 2, Marketing, 0," + getConversionEventAttributes() + ");");
//	 			cmCreateConversionEventTag("springermedizin-rectangle", "2", getConversionEventAttributes());
//			});
// 			jQuery('#yoda2').click( function() {
//				setDartPos('pos2');
//		 		debugMessage("yoda2 cmCreateConversionEventTag(springermedizin-rectangle, 2, Marketing, 0," + getConversionEventAttributes() + ");");
//	 			cmCreateConversionEventTag("springermedizin-rectangle", "2", getConversionEventAttributes());
//			});
//		});

 
 

/*
 * 7.2.1 Journal Carousel in footer
 * 
 * sample: cmCreatePageElementTag("Der Kardiologe","Journal Carousel in footer", "Kardiologie");
 * 
 * TODO
 * 	
 */
//jQuery(document).ready(
//		function(){			
//			jQuery('.bookshop #heftcarousel .stage').click(function(elem){
//				//cmCreatePageElementTag("Der Kardiologe","Journal Carousel in footer", "Kardiologie");		
//				debugMessage('Journal Carousel in footer');
//			});
//		});	


/*
 * 7.2.1 Print Function
 * 	   read	medical rubric from coremetricsMedicalRubric and area of expertise from coremetricsAreaOfExpertise
 * 
 *      cmCreatePageElementTag("Article-Title","Print",?<Area of expertise>-_-<Medical rubric>-_-<Content-Typ>?);
 *      sample: cmCreatePageElementTag("Article-Title","Print",?Allgemeinmedizin-_-Magazin-_-Artikel?);
 */
jQuery(document).ready(
		function(){			
			jQuery('.articleicons .print').click(function(){
				var articleTitle = getTitle();
				debugMessage('cmCreatePageElementTag(' + articleTitle + ', Print,' + getElementAttributes() + ')');
				cmCreatePageElementTag(articleTitle, 'Print', getElementAttributes());				
			});
		});	

/*
 * 7.2.1 Bookmark Function
 * 	   read	medical rubric from coremetricsMedicalRubric and area of expertise from coremetricsAreaOfExpertise
 * 
 *      cmCreatePageElementTag("Article-Title","Print",?<Area of expertise>-_-<Medical rubric>-_-<Content-Typ>?);
 *      sample: cmCreatePageElementTag("Article-Title","Mein Archiv",?Allgemeinmedizin-_-Magazin-_-Artikel?);
 */
jQuery(document).ready(
		function(){			
			jQuery('.articleicons #bookmark').click(function(){
				var articleTitle = getTitle();
				debugMessage('cmCreatePageElementTag(' + articleTitle + ',Mein Archiv,' + getElementAttributes() + ')');
				cmCreatePageElementTag(articleTitle, 'Mein Archiv', getElementAttributes());				
			});
		});	

/*
 * 7.2.1 Send a Friend Function (open)
 * 	   read	medical rubric from coremetricsMedicalRubric and area of expertise from coremetricsAreaOfExpertise
 *  
 *     sample: cmCreateConversionEventTag("Article Title", "1", "SendAFriend", "10", ?Allgemeinmedizin-_-Magazin-_-Article?);
 */
jQuery(document).ready(
		function(){			
			jQuery('.articleicons .sendafriend').click(function(){
				var functionName = 'SendAFriend';
				var articleTitle = getTitle();

				debugMessage('cmCreateConversionEventTag(' + articleTitle + ', 1, ' + functionName + ', 10, ' + getConversionEventAttributes() + ');');
				cmCreateConversionEventTag(articleTitle, '1', functionName, '10', getConversionEventAttributes());				
			});
		});	


/*
 * 7.2.1 Send a Friend, Contact Function (submit)
 * 	   read	medical rubric from coremetricsMedicalRubric and area of expertise from coremetricsAreaOfExpertise
 * 
 *      TODO cmCreateConversionEventTag wird auch aufgerufen, wenn die Validierung der Formularfelder fehl schlägt.
 *      TODO .dachzeile ist hier nicht mehr verfügbar
 *      sample: cmCreateConversionEventTag("Article Title", "2", "SendAFriend", "20", ?Allgemeinmedizin-_-Magazin-_-Article?);
 */
jQuery(document).ready(
		function(){			
			var functionName = 'SendAFriend';
			var formHead = jQuery('.formhead').text();
			var displayTag = false;
			if(formHead == 'Weiterempfehlen'){
				functionName = 'SendAFriend';
				displayTag = true;
			}else{
				functionName = 'Contact';
			}
			if(displayTag){
				jQuery('.formmaster :submit').click(function(){
					var articleTitle = getFormTitle();
					debugMessage('cmCreateConversionEventTag(' + articleTitle + ', 2, ' + functionName + ', 20, ' + getConversionEventAttributes() + ');');
					cmCreateConversionEventTag(articleTitle, "2", functionName, "20", getConversionEventAttributes());				
				});
			}
		});	

/*
 * 7.2.1 Rating Function
 * 	   read	medical rubric from coremetricsMedicalRubric and area of expertise from coremetricsAreaOfExpertise
 * 
 *     cmCreatePageElementTag("Article-Title","Print",?<Area of expertise>-_-<Medical rubric>-_-<Content-Typ>?);
 *     sample: cmCreatePageElementTag("Article-Title","Article-Rating",?3-_-Allgemeinmedizin-_-Magazin-_-Article?);
 */
jQuery(document).ready(
		function(){			
			jQuery('.rating-tool :submit').click(function(){
				var functionName = 'Rating';
				var articleTitle = getTitle();
				setRatingValue(jQuery('input[type=radio].hover-star:checked', '.rating').val());
				debugMessage('cmCreatePageElementTag(' + articleTitle + ',' + functionName + ',' + getElementAttributes() + ')');
				cmCreatePageElementTag(articleTitle ,functionName , getElementAttributes());		
			});
		});	

/*
 * 7.2.1 Contact Function will not be tracked
 */


/*
 * 7.2.1 Pdf Function
 * 	   read	medical rubric from coremetricsMedicalRubric and area of expertise from coremetricsAreaOfExpertise
 * 
 *     TODO customize for all content types
 *      
 *     sample: cmCreatePageElementTag("Kein Fahrtenbuch notwendig","Der Hausarzt",?Allgemeinmedizin-_-PDF-_-Ausgabe 2006-08 NR.5?);
 *     function cmCreatePageElementTag(elementID, elementCategory, pageID, pageCategoryID, elementLocation,attributes)
 *
 */
jQuery(document).ready(
		function(){			
			jQuery('.pdf').click(function(){
				var functionName = 'PDF';
				var elementID = '';
				if(getJournalTitle() == ''){
					elementID = jQuery('.dachzeile').text() + jQuery('.subject').text();
				}else{
					elementID = jQuery('.dachzeile').text() + jQuery('.subject').text() + '|' + getJournalTitle();
				}	
				var elementCategory = 'PDF';
				setContentType('PDF');
				debugMessage('cmCreatePageElementTag(' + elementID +',' + elementCategory + ',' + getElementAttributes() + ')');
				cmCreatePageElementTag(elementID ,elementCategory , getElementAttributes());		
			});
		});	


/*
 * 2.2.: Customize homepage: open dialog
 * 
 */
jQuery(document).ready( function() {
	jQuery('.home_edit').click( function() {
		var checkboxes = jQuery('#homeeditform').fillCheckboxArrays(initialCustomizeHomepageArray);
		debugMessage('cmCreateConversionEventTag(Customize_Homepage_Lightbox, 1, ' + getUserAreaOfExpertise() + ', 10,' + getConversionEventAttributes() +')');
		cmCreateConversionEventTag("Customize_Homepage_Lightbox", "1", getUserAreaOfExpertise(), "10", getConversionEventAttributes());	
	});
});

/*
 * 2.2.: Customize homepage: submit dialog
 * 
 */
jQuery(document).ready( function() {
	jQuery('#homeeditform :submit').live('click', function() {
		jQuery('#homeeditform').compareCheckboxesAndThrowCoremetricsTag(initialCustomizeHomepageArray, 'Customize_Homepage_Lightbox');
		debugMessage('cmCreateConversionEventTag(Customize_Homepage_Lightbox, 2, ' + getUserAreaOfExpertise() + ', 20,' + getConversionEventAttributes() + ')');
		cmCreateConversionEventTag("Customize_Homepage_Lightbox", "2", getUserAreaOfExpertise(), "20", getConversionEventAttributes());	
	});
});

/*
 * 2.2.: Customize homepage: Add/Remove Portlet from standard configuration
 * 
 * 
 */
//jQuery(document).ready( function() {
//	jQuery('#homeeditform :checkbox').live('click', function() {
//		var checkVal = jQuery(this).attr('checked');
//		debugAlert(jQuery(this).attr('name') + '|' + checkVal);
//	});
//});

/*
 * 2.3.: Reset homepage: ok button
 * 
 */
jQuery(document).ready( function() {
	jQuery('#confirm_msg :submit').live('click', function() {
		debugMessage("cmCreatePageElementTag(Reset-Homepage, Customize-Homepage," + getElementAttributes() + ")");
		cmCreatePageElementTag('Reset-Homepage','Customize-Homepage', getElementAttributes());
	});
});

/*
 * 2.4.: Save portlet configuration
 * 
 */
jQuery(document).ready( function() {
	jQuery('.home_save').click( function() {
		debugMessage("cmCreatePageElementTag(Save-Homepage, Customize-Homepage," + getElementAttributes() + ")");
		cmCreatePageElementTag('Save-Homepage','Customize-Homepage', getElementAttributes());
	});
});

/*
 * 2.4.: Change portlet position on the homepage
 * 
 * TODO every changed position will be tracked
 */
//var changePos=0;
//jQuery(document).ready( function() {
//	jQuery('.portlet-topper').mousedown( function() {
//		var pos = jQuery(this).parents(".portlet").find(".portlet-form").parent().position();
//		changePos = pos.left;
//		debugAlert('portlet-drop mousedown left: ' + pos.left + ' top: ' + pos.top + ' changePos: ' + changePos);
////		debugMessage("cmCreatePageElementTag(Save-Homepage, Customize-Homepage," + getAreaOfExpertise() + ")");
////		cmCreatePageElementTag('Save-Homepage','Customize-Homepage', getAreaOfExpertise());
//	});
//	jQuery('.portlet-topper').mouseup( function() {
//		if(changePos > 0){
//		var pos = jQuery(this).parents(".portlet").find(".portlet-form").parent().position();
//		changePos = pos.left;
//		debugAlert('portlet-drop mouseup left: ' + pos.left + ' top: ' + pos.top + ' changePos: ' + changePos);
////		debugMessage("cmCreatePageElementTag(Save-Homepage, Customize-Homepage," + getAreaOfExpertise() + ")");
////		cmCreatePageElementTag('Save-Homepage','Customize-Homepage', getAreaOfExpertise());
//		}
//	});
//});

/*
 * 2.5.: Customize portlet: open portlet config
 *
 * sample: cmCreateConversionEventTag("Portlet Magazin", "1", "Portlet-Configuration", "10", "Allgemeinmedizin");
 */
jQuery(document).ready( function() {
	jQuery('.portlet-topper .edit_icon').click( function() {
		if(jQuery(this).parents(".portlet").find(".portlet-form").height() == 100){
			/* only call cmCreateConversionEventTag if portlet-form is collapsed */
			var checkboxes = jQuery('.portlet-form').fillCheckboxArrays(initialCustomizePortletArray);
			var portletName = 'Portlet' + jQuery(this).parents('.portlet').find('.portlet-title').text();
			debugMessage('cmCreateConversionEventTag(' + portletName + ', 1, Portlet-Configuration, 10,' + getConversionEventAttributes() +');');
			cmCreateConversionEventTag(portletName, '1', 'Portlet-Configuration', '10', getConversionEventAttributes());
		}
	});
});


/*
 * 2.5.: Customize portlet: close (save) portlet config	
 *
 * sample: cmCreateConversionEventTag("Portlet Magazin", "2", "Portlet-Configuration", "20");
 */
jQuery(document).ready( function() {
	jQuery('.portlet-form :submit').click( function() {
		var portletName = jQuery(this).parents('.portlet').find('.portlet-title').text();
		jQuery('.portlet-form').compareCheckboxesAndThrowCoremetricsTag(initialCustomizePortletArray, 'Portlet ' + portletName);
		debugMessage('cmCreateConversionEventTag(Portlet ' + portletName + ', 2, Portlet-Configuration, 20,' + getConversionEventAttributes() + ')');
		cmCreateConversionEventTag('Portlet ' + portletName, '2', 'Portlet-Configuration', '20', getConversionEventAttributes());
	});
});

/*
 * 2.5.: Customize portlet: call the Element Tag for each checkbox in the form. 
 *
 * sample: cmCreatePageElementTag("Innere Medizin","Portlet Magazin", "Allgemeinmedizin-_-Portlet-_-add");
 * 
 * TODO checkbox values in array merken; beim speichern müssen die Änderungen als PageElementTags ausgespielt werden
 */
jQuery(document).ready( function() {
	jQuery('.portlet-form :checkbox').click( function() {
		var checkVal = jQuery(this).attr('checked');
	});
});


/*
 * 7.2.7 Portlet-Teaser
 *
 * sample: cmCreatePageElementTag("Article-title","Portlet Magazin","Allgemeinmedizin-_-Magazin");
 *
 * TODO medical rubric	
 *
 */
jQuery(document).ready(
		function(){			
			jQuery('.portlet-content-container .weiter').click(function(){
				var articleTitle = jQuery(this).parent().prev('h2').find('span').text();
				var portletTitle = "Portlet " + jQuery(this).parents('.portlet').find('.portlet-title').text();
				portletTitle = portletTitle.replace('\n', '');
				debugMessage('cmCreatePageElementTag(' + articleTitle + ', ' + portletTitle + ', ' + getElementAttributes() + ')');
				cmCreatePageElementTag(articleTitle, portletTitle, getElementAttributes());	
			});
			jQuery('.portlet-content-container .eventlink').click(function(){
				var articleTitle = jQuery(this).parent().parent().parent().find('span').text();
				articleTitle = articleTitle.substring(0, articleTitle.lastIndexOf('weiter'));
				var portletTitle = 'Portlet ' + jQuery(this).parents('.portlet').find('.portlet-title').text();				
				portletTitle = portletTitle.replace('\n', '');
				debugMessage('cmCreatePageElementTag(' + articleTitle + ', ' + portletTitle + ', ' + getElementAttributes() + ')');
				cmCreatePageElementTag(articleTitle, portletTitle, getElementAttributes());	
			});
			jQuery('.portlet-content-container .countdownlink').click(function(){
				var articleTitle = jQuery(this).parent().parent().parent().find('span').text();
				articleTitle = articleTitle.substring(0, articleTitle.lastIndexOf('weiter'));
				var portletTitle = 'Portlet ' + jQuery(this).parents('.portlet').find('.portlet-title').text();				
				portletTitle = portletTitle.replace('\n', '');
				debugMessage('cmCreatePageElementTag(' + articleTitle + ', ' + portletTitle + ', ' + getElementAttributes() + ')');
				cmCreatePageElementTag(articleTitle, portletTitle, getElementAttributes());	
			});
		});	


/*
 * 7.2.8 Portlet JobCenter Medizin
 *
 * sample: cmCreatePageElementTag("Alle Fachagebiete","Portlet Jobcenter Medizin");
 *
 */
jQuery(document).ready(
	function(){	
		jQuery('#jobcenter_medizin .portlet-content form').live("submit", function(){
			var elementCategory = 'Portlet Jobcenter Medizin';
			var selectedSub = $('#JCSubjects option:selected').text();
			var selectedPos = $('#JCPositions option:selected').text();
			var selectedReg = $('#JCRegions option:selected').text();
			var	selectedField = selectedSub+"|"+selectedPos+"|"+selectedReg;
			debugMessage('cmCreatePageElementTag(' + selectedField + ', ' + elementCategory + ', ' + getElementAttributes() + ')');
			cmCreatePageElementTag(selectedField, elementCategory, getElementAttributes());	
		});
	});


/*
 * 7.2.9 Portlet Kongresskalender
 *
 * sample: cmCreatePageElementTag("Chirurgie","Portlet Kongresskalender");
 *
 * TODO erst beim abschicken oder schon beim auswaehlen; Wenn mehrere Felder ausgewählt werden, werden diese hintereinander ohne Leerzeichen als elementId ausgespielt.
 */
jQuery(document).ready(
		function(){			
			var elementCategory = 'Portlet Kongresskalender';
			jQuery('.kongressportlet :submit').live("click", function(){
				var selectedField = "";
				$.each($('#kongress-select option:selected'), function(){
					selectedField += $(this).text()+"|";
				});
				selectedField = selectedField.substring(0, selectedField.lastIndexOf("|"));
				debugMessage('cmCreatePageElementTag(' + selectedField + ', ' + elementCategory + ', ' + getElementAttributes() + ')');
				cmCreatePageElementTag(selectedField, elementCategory, getElementAttributes());	
			});
		});

/*
 * 7.2.10 Portlets Karussell
 * 
 *
 */
$(document).ready(function(){
	$('.portlet .portlet-content .carousel a').live( "click", function(event){
		debugMessage('cmCreatePageElementTag("' + $(this).parent().find("a.text").text() + '", "Portlet ' + $(this).parents("div.portlet").attr("id") + '", "' + getElementAttributes() + '")');
		cmCreatePageElementTag($(this).parent().find("a.text").text(), "Portlet "+$(this).parents("div.portlet").attr("id"), getElementAttributes());
	});
});

/*
 * 8.Bilderstrecken Hero
 * 
 * cmCreateConversionEventTag('Bilderstrecke ' + galleryTitle, '1', 'Interaktiv', '10');
 *
 *	TODO
 */
$(document).ready(function(){
	if(jQuery('#heroteaser #gallerycarousel .stage').size()) {
		var galleryViewed = new Array("1");
		var galleryIndex = 0;
		var galleryLength = jQuery('#heroteaser #gallerycarousel .stage li img').size() -2;
		var cmTagState = "blank";
		var galleryTitle = $('#gallerycarousel h2').text();
		coremetricsImgGallery = coremetricsImgGallery.split("|");
		for (i=0; i < galleryLength-1; i++) {
			galleryViewed.push("0");
		}
		jQuery('#heroteaser #gallerycarousel .buttons a').click(function(){
			if($(this).hasClass("prev")) {
				galleryIndex--;
				if(galleryIndex < 0)
					galleryIndex = galleryLength -1;
			}
			else {
				galleryIndex++;
				if(galleryIndex > galleryLength -1)
					galleryIndex = 0;
			}
			
			if(cmTagState == "blank") {
				debugMessage("cmCreateConversionEventTag('"+ galleryTitle +"', '1', 'Interaktiv Bilderstrecken', '10', "+ getConversionEventAttributes() +")");
				cmCreateConversionEventTag( galleryTitle , '1', 'Interaktiv Bilderstrecken', '10', getConversionEventAttributes());
				debugMessage('cmCreatePageElementTag(' + coremetricsImgGallery[0] + ',' + galleryTitle +', ' + getElementAttributes() + ')');
				cmCreatePageElementTag(coremetricsImgGallery[0], galleryTitle, getElementAttributes());
				cmTagState = "open";
			}

			debugMessage('cmCreatePageElementTag(' + coremetricsImgGallery[galleryIndex] + ', ' + galleryTitle +', ' + getElementAttributes() + ')');
			cmCreatePageElementTag(coremetricsImgGallery[galleryIndex], galleryTitle, getElementAttributes());
			
			if(cmTagState == "open") {
				if(galleryViewed[galleryIndex] == "0") galleryViewed[galleryIndex] = "1";
				if(jQuery.inArray("0",galleryViewed) == -1) {
					debugMessage("cmCreateConversionEventTag('" + galleryTitle +"', '2', 'Interaktiv Bilderstrecken', '20', "+ getConversionEventAttributes() +")");
					cmCreateConversionEventTag( galleryTitle , '2', 'Interaktiv Bilderstrecken', '20', getConversionEventAttributes());
					cmTagState = "closed";
				}
			}
		});
	}
});

/*
 * 9.Footer Zeitschriften
 * 
 *
 */
$(document).ready(function(){
	jQuery('#heftcarousel .stage li img').click( function(e){
		var coremetricsMag = $(this).attr("alt");
		coremetricsMag = coremetricsMag.replace(/\s-\s(?=\d)/,"|");
		coremetricsMag = coremetricsMag.split("|");
		setJournalTitle(coremetricsMag[0]);
		setEditionTitle(coremetricsMag[1]);
		debugMessage('cmCreatePageElementTag("' + coremetricsMag[0] + '", "Journals Carousel Footer", ' + getElementAttributes() + ')');
		cmCreatePageElementTag(coremetricsMag[0], "Journals Carousel Footer", getElementAttributes());
	});
});

/*
 * 9.1 Header Coverflow Zeitschriften
 * 
 *
 */
$(document).ready(function(){
	jQuery('#heroteaser #heftflow .stage img').click( function(e){
		var coremetricsMag = $(this).attr("alt");
		if(coremetricsMag.match(/\sAusgabe\s(?=\d)/))
			coremetricsMag = coremetricsMag.replace(/\sAusgabe\s(?=\d)/,"|");
		else
			coremetricsMag = coremetricsMag.replace(/\s-\s(?=\d)/,"|");
		coremetricsMag = coremetricsMag.split("|");
		setJournalTitle(coremetricsMag[0]);
		setEditionTitle(coremetricsMag[1]);
		debugMessage('cmCreatePageElementTag("' + coremetricsMag[0] + '", "Journals Carousel Hero", ' + getElementAttributes() + ')');
		cmCreatePageElementTag(coremetricsMag[0], "Journals Carousel Hero", getElementAttributes());
	});
});

/*
 * 11. Sidebar Bildergalerie
 * 
 *
 */
$(document).ready(function(){
	$('#relatedGallery .carousel .stage a').live( "click", function(event){
		debugMessage('cmCreatePageElementTag("' + $(this).parent().find("a.text").text() + '", "Sidebar Related Gallery", "' + getElementAttributes() + '")');
		cmCreatePageElementTag($(this).parent().find("a.text").text(), "Portlet "+$(this).parents("div.portlet").attr("id"), getElementAttributes());
	});
	$('#relatedGallery .carousel .label a').live( "click", function(event){
		debugMessage('cmCreatePageElementTag("' + $(this).parent().find("a.text").text() + '", "Sidebar Related Gallery", "' + getElementAttributes() + '")');
		cmCreatePageElementTag($(this).parent().find("a.text").text(), "Portlet "+$(this).parents("div.portlet").attr("id"), getElementAttributes());
	});
});

/*
 * 12. Login
 * 
 *
 */
jQuery(document).ready( function() {
	if(jQuery('form#fm1').size()) {
		debugMessage('cmCreateConversionEventTag(Springer Login, 1, Login, 10,' + getConversionEventAttributes() +')');
		cmCreateConversionEventTag("Springer Login", "1", "Login", "10", getConversionEventAttributes());
		
		jQuery('form#fm1 :submit').click( function() {
			var check = $(this).parents("form").eq(0).find(":checkbox");
			$(check).each(function() {
				if($(this).attr("checked") == true) {
					debugMessage('cmCreatePageElementTag("' + $(check).attr('name') + '", "Springer Login", "' + getElementAttributes() + '")');
					cmCreatePageElementTag($(check).attr('name'), "Springer Login", getElementAttributes());
				}
			});
			
			debugMessage('cmCreateConversionEventTag(Springer Login, 2, Login, 20,' + getConversionEventAttributes() +')');
			cmCreateConversionEventTag("Springer Login", "2", "Login", "20", getConversionEventAttributes());
		});
	}
	
	if(jQuery('form#login_form').size()) {
		
		jQuery('form#login_form :submit').click( function() {
			debugMessage('cmCreateConversionEventTag(Springer Login - Header, 1, Login, 10,' + getConversionEventAttributes() +')');
			cmCreateConversionEventTag("Springer Login - Header", "1", "Login", "10", getConversionEventAttributes());
			
			var check = $(this).parents("form").eq(0).find(":checkbox");
			$(check).each(function() {
				if($(this).attr("checked") == true) {
					debugMessage('cmCreatePageElementTag("' + $(check).attr('name') + '", "Springer Login - Header", "' + getElementAttributes() + '")');
					cmCreatePageElementTag($(check).attr('name'), "Springer Login - Header", getElementAttributes());
				}
			});
			
			debugMessage('cmCreateConversionEventTag(Springer Login - Header, 2, Login, 20,' + getConversionEventAttributes() +')');
			cmCreateConversionEventTag("Springer Login - Header", "2", "Login", "20", getConversionEventAttributes());
		});
	}
	
});
