/**
 * Main javascript file for the website
 *
 * @author  Sebastian Beyer
 * @version $Id: main.js,v 1.30 2010/03/10 10:36:51 sb Exp $
 */
/*function handleError() { return true; }
window.onerror = handleError;*/

/**
 * load swf
 */
function loadSWF() {
	var now = new Date();
	window.location.href = 'xmas2008.html';
}

// maxNews items will be set automatically (the amount of news on the page)
var maxNews = 0;
// we can only display 6 news items, so hide the rest
var newsHidden = 5;
/**
 * initialize the news display
 */
function initialize() {
	getArgs();
	// toggle classname of element in displaybox
    var newsItems = $('shortnews_elements').childElements();
    // set max news items
    maxNews = newsItems.length;
   
    // hide news items that can not be displayed initially 
    for ( var i = 0; i < maxNews; i++ ) {
        if ( $(newsItems[i]) ) {
            $(newsItems[i]).style.display = (i > newsHidden) ? 'none' : '';
        }
    }
    
    // display item if called by get param active
    if(passedArgs['active'] && passedArgs['active'] > 0  ) {
        switchNewsItems(parseInt(passedArgs['active']));
    }
    
    if(typeof($("image_item_0")) != 'undefined' && document.location.href.match(/kompetenz.html/)) {
    	window.setTimeout("switchSlideShow(1);", 4000);
    }
}

/**
 * activate the slideshow
 * @param {Integer} slideId 
 */
function switchSlideShow(slideId) {
	// if an image item exists slide show always starts with item 0
	var slideItems = $('news_item_0').childElements().length;
	var activeItem = slideId - 1;
	
	if(slideItems > slideId){
		$('slide_item_' + activeItem).style.display = 'none';
		$('slide_image_item_' + activeItem).style.display = 'none';
		Effect.BlindDown('slide_item_' + slideId); 
		Effect.Appear('slide_image_item_' + slideId);
		
		window.setTimeout(" switchSlideShow(" + (slideId+1) + ");", 6000);
	} // begin again
	else {
		$('slide_item_' + (slideItems-1)).style.display = 'none';
        $('slide_image_item_' + (slideItems-1)).style.display = 'none';
        Effect.BlindDown('slide_item_0'); 
        Effect.Appear('slide_image_item_0');
        
        window.setTimeout("switchSlideShow(1);", 6000);
	}
}

// the news item that is active (start counting from zero)
var activeNews = 0;
/**
 * switchNewsItems Changes the display of the news items on the "Home" page
 * @param {Integer} newsId 
 */
function switchNewsItems(newsId) {
    if(newsId == 'up') {
        activeNews != 0 ? newsId = activeNews - 1 : newsId = 0;    
    }
    if(newsId == 'down') {
    	activeNews < maxNews-1 ? newsId = activeNews + 1 : newsId = 0
    }

	// toggle visibility of news in main display
	$('news_item_' + activeNews).style.display = 'none';
	window.setTimeout("if ( activeNews == " + newsId + ") Effect.BlindDown ('news_item_" + newsId + "');", 1800);
//	$('news_item_' + activeNews).toggle(); 
//    $('news_item_' + newsId).toggle(); 
    
    // toggle visibility of images in main display
    if ( $('image_item_' + activeNews) ) {
	    $('image_item_' + activeNews).toggle(); 
	}
	if ( $('image_item_' + newsId) ) {
	    $('image_item_' + newsId).toggle(); 
	}
    
    // toggle classname of element in displaybox
    var newsItems = $('shortnews_elements').childElements();
    $(newsItems[activeNews]).removeClassName('active_news_item');
    $(newsItems[activeNews]).addClassName('norm_news_item');
    $(newsItems[newsId]).removeClassName('norm_news_item');
    $(newsItems[newsId]).addClassName('active_news_item');
    // remember active news
    activeNews = newsId;
    
    // if newscount gets above 5, hide first entries
    if ( newsId > 4 ) {
    	var firstActive = newsId - 4;
    	var lastActive = newsHidden + firstActive;
    	for ( var i = 0; i < maxNews; i++ ) {
    		if ( $(newsItems[i]) ) {
    			$(newsItems[i]).style.display = (i < firstActive || i > lastActive) ? 'none' : '';
    		}
    	}
    }
    else {
    	for ( var i = 0; i < maxNews; i++ ) {
    		if ( $(newsItems[i]) ) {
    			$(newsItems[i]).style.display = (i > newsHidden) ? 'none' : '';
    		}
    	}
    }
}

var passedArgs = '';
/**
 * get the arguments passed by a link in GET param style and provide an array
 * passedArgs that contains them
 */
function getArgs() {
  passedArgs = new Array();
  search = self.location.href;
  search = search.split('?');
  if(search.length>1)
  {
    argList = search[1];
    argList = argList.split('&');

    for(var i=0; i<argList.length; i++)
    {
      newArg = argList[i];
      newArg = argList[i].split('=');
      passedArgs[unescape(newArg[0])] = unescape(newArg[1]);
    }
  }
  else
    passedArgs = false;
}

/**
* check the params that a form gets submitted to do the actions for them
*/
function checkforwardedparams() {
    getArgs();
    
    // if form was submitted alert to user
    if(passedArgs['mail'] == 'submitted') {
        alert("Ihre Anfrage wurde \u00FCbermittelt");
    }
}

var grusskarteLeft = 0
/**
 * 
 * @param {Object} customer The customer with all data that belongs to him
 */
function setCustomerData(customer) {
	if('undefined' != typeof(customer)) {
		$('#greetHeader').html(customer.anredeonline);
		$('#perPost').css('display', '');
		
		if('Du' == customer.dusieversion) {
			$('#duSie').html('Deiner')
		}
		
		if(customer.grusskarte != 0 || customer.grusskarte != '0') {
		    customer.grusskarteversand - customer.grusskarteweg > 0 ? grusskarteLeft = customer.grusskarteversand - customer.grusskarteweg : grusskarteLeft = 0;
		    $('#grusskarteSent').html(grusskarteLeft);
            $('#grusskarteAv').html(customer.grusskarteversand);
		}
		
		// in formular bzw. dialog werte setzen
		switch(customer.verantwortlicher) {
			default:
			  $('#verantwort').html('Uschi Hartmann');
              $('#durchwahl').html('0');
			  $('#2ndverantwort').css('display', 'none');
			
			  break;
			case 'FD':
		      $('#verantwort').html('Florian Dehnhard');
              $('#durchwahl').html('18');
              $('#2ndverantwort').css('display', 'none');
              
              break;
            case 'UH':
              $('#verantwort').html('Uschi Hartmann');
              $('#durchwahl').html('14');
              $('#2ndverantwort').css('display', 'none');
              
              break;   
            case 'VH':
              $('#verantwort').html('Volker Hartmann');
              $('#durchwahl').html('10');
              $('#2ndverantwort').css('display', 'none');
              
              break; 
            case 'CH':
              $('#verantwort').html('Christian Hoffmann');
              $('#durchwahl').html('28');
              $('#2ndverantwort').css('display', 'none');
              
              break;   
            case 'CH/VH':
              $('#verantwort').html('Christian Hoffmann');
              $('#durchwahl').html('28');
              $('#verantwort2').html('Volker Hartmann');
              $('#durchwahl2').html('10');
              $('#2ndverantwort').css('display', '');
              
              break;
            case 'FD/IJ':
              $('#verantwort').html('Florian Dehnhard');
              $('#durchwahl').html('18');
              $('#verantwort2').html('Isabell Jacobsen');
              $('#durchwahl2').html('19');
              $('#2ndverantwort').css('display', '');
              
              break;
            case 'FD/VH':
              $('#verantwort').html('Florian Dehnhard');
              $('#durchwahl').html('18');
              $('#verantwort2').html('Volker Hartmann');
              $('#durchwahl2').html('10');
              $('#2ndverantwort').css('display', '');
              
              break;
            case 'UH/VH':
              $('#verantwort').html('Uschi Hartmann');
              $('#durchwahl').html('14');
              $('#verantwort2').html('Volker Hartmann');
              $('#durchwahl2').html('10');
              $('#2ndverantwort').css('display', '');
              
              break;
             case 'VH/SM':
              $('#verantwort').html('Volker Hartmann');
              $('#durchwahl').html('10');
              $('#verantwort2').html('Sandra Moraviec');
              $('#durchwahl2').html('22');
              $('#2ndverantwort').css('display', '');
              
              break;
              	 
		}
		
	}
}

var tagItems = 0;          // the number of tags found on the server
var allTags = new Object(); // allTags with name and size, array is initialized in returnedTags.each function
                           // and value is set in change function of the slider
var displayedSliders = 14; // beginning with 0=zero so count one more is displayed
// values for font size of tagCloud
var maxFontSizeAll = 360;  // the maximum number of font-size we can have with all elements added together
var actFontSizeAll = 0;    // the font-size of all elements at a ertain time
var maxFontTag = 18;       // the maximum fontsize
var defFontTag = 10;       // the default Size for a tag

/**
 * get taglist from server and create elements and sliders for it
 * 
 * @param {Object} returnedTags A json object returned with all tags as array list
 */
function initializeTags(returnedTags) {
	
	// iterate through tags and create elements & sliders
	$(returnedTags).each(function (i) {
		if(typeof(returnedTags[i]) != 'undefined') {
		  // set tag in allTags
		  allTags[i] = new Object();
		  allTags[i]['name'] = returnedTags[i];
			
		  // create div element with name and element for slider for every returned tag
		  // frame div
		  var divEl = document.createElement('div');
		  var idAttr = document.createAttribute('id');
		  idAttr.nodeValue = 'tag_' + i;
		  divEl.setAttributeNode(idAttr);
		  // create name element
		  var divElName = document.createElement('div');
		  var idAttrName = document.createAttribute('id');
		  idAttrName.nodeValue = 'tag_' + i + '_name';
		  divElName.setAttributeNode(idAttrName);
		  var textNode = document.createTextNode(returnedTags[i]);
		  divElName.appendChild(textNode);
		  divEl.appendChild(divElName);
		  // create slider element
          var divElSlide = document.createElement('div');
          var idAttrSlide = document.createAttribute('id');
          idAttrSlide.nodeValue = 'tag_' + i + '_slider';
          divElSlide.setAttributeNode(idAttrSlide);
          divEl.appendChild(divElSlide);
		   // append to div
          $("#allTags:first")[0].appendChild(divEl);
          
          // hide all sliders of more than 14
          if(i > displayedSliders) {
          	$('#tag_' + i).css("display", "none");
          }
          
          // create span with text for cloud
          var spanEl = document.createElement('span');
          var spanAttr = document.createAttribute('id');
          spanAttr.nodeValue = 'cloud_' + i
          var spanText = document.createTextNode(returnedTags[i] + " ");
          spanEl.appendChild(spanText);
          spanEl.setAttributeNode(spanAttr);
          $("#tagCloud:first")[0].appendChild(spanEl);
          // set font-size
          $('#cloud_' + i).css("font-size", "12" );
          
          // count items
          tagItems++;
		}
	});
	
	// add sliders to all elements
	var tmpMaxFontSizeAll = 0;
	var counter = 0;
	$('#allTags').children().each(function (i, element) {
		  counter++;
		  // split the elementNr
		  var elementNr = element.id.split('_');
		  $(function() {
		      var oldValue = 0;
		      var sliderValueToSet = defFontTag
		  	  if(counter < 8) {
			  	  var randValue = Math.floor( (Math.random()*maxFontTag) );
	              randValue = (randValue < 6) ? 6 : randValue;
	              if ( tmpMaxFontSizeAll > maxFontSizeAll ) {
	                randValue = defFontTag;
	              }
	              sliderValueToSet = randValue;
	          }
		  	  // set in allTags array to remember the value
		  	  allTags[elementNr[1]]['value'] = sliderValueToSet;
		  	  // sum up default Values and set in html for user
		  	  actFontSizeAll = actFontSizeAll + defFontTag;
              $('#divPointsUsed').html(actFontSizeAll);
		  	  // create slider
		  	  
              tmpMaxFontSizeAll += sliderValueToSet;
              var spanId = 'cloud_' + element.id.replace('tag_', '');
              $('#' + spanId).css('font-size', sliderValueToSet + 'px');
		  	  
		      $("#" + element.id + "_slider").slider({
		      	  value: sliderValueToSet,
		      	  min: 6,
		      	  max: maxFontTag,
		      	  step: 2,
		      	  // remember the old value
		      	  start: function(event, ui) {
		      	  	  oldValue = ui.value;
		      	  },	
		      	  // set function for slide event
		          change: function(event, ui) {
		              // if ui.value is bigger than the default tag font-size 
		              // add to the actual font size of all elements and check if bigger than the maximum
		              // that can be used 
		          	  if(ui.value > oldValue){
		          	  	// only if we get over the maxFontSizeAll, we want to alert and do nothing
		          	    if(((ui.value - oldValue) + actFontSizeAll) > maxFontSizeAll) {
		          	    	//alert("Punkte verbraucht, noch " + (maxFontSizeAll - actFontSizeAll) + " vorhanden.");
		          	    	if(document.location.href.match(/picworld_xmas2009_gb/)) {
		          	    	  alert("The place on your card is exploited. If you want this word to be bigger, then you have to make another one smaller.");	
		          	    	}
		          	    	else {
		          	    	  alert("Der Platz auf Ihrer Karte ist leider bereits ausgesch\u00f6pft. Wenn Sie diesen Begriff vergr\u00f6\u00dfern m\u00f6chten, m\u00FCssen Sie zun\u00e4chst einen anderen wieder kleiner machen.");	
		          	    	}
		          	    	
		          	    	// set back old to old value + step
		          	    	$("#" + element.id + "_slider").slider('value', oldValue);
		          	    }
		          	    else {
		          	    	// update actFontSizeAll
		          	    	actFontSizeAll = actFontSizeAll + (ui.value - oldValue);
		          	    	// set value for points used
		          	    	$('#divPointsUsed').html(actFontSizeAll);
		          	    	// remember value in allTags Array
		          	    	allTags[elementNr[1]]['value'] = ui.value;
		          	    	// set value of element
                            $('#cloud_' + elementNr[1]).css("font-size", ui.value);
		          	    }
		          	  }
		          	  // if ui.value is smaller than the default tag font-size
		          	  // substract the differenc from the default and substract from the total actual value
		          	  else if(ui.value < oldValue) {
		          	  	  // update actFontSizeAll
		          	  	  actFontSizeAll = actFontSizeAll - (oldValue - ui.value);
		          	  	  $('#divPointsUsed').html(actFontSizeAll);
		          	  	  // set value of element
                          $('#cloud_' + elementNr[1]).css("font-size", ui.value );
		          	  }
		          }
		      });
		      // set value of element
//              $('#cloud_' + elementNr[1]).css("font-size", defFontTag);
		  });
	});	
	
	
	
	// add vertical slider
	$('#vertSlide').slider({
	   orientation: "vertical",
	   value: tagItems,
	   min: displayedSliders,
	   max: tagItems,
	   step: 1,
	   slide: function(event, ui) {
          // we can only display as many sliders as given in displaySliders
          // so we need to know the displayable range
          var showMax = displayedSliders+(tagItems-ui.value);
          var showMin = tagItems-(ui.value+1);
          for(var i=0;i<tagItems;i++) {
          	 if(i<=showMin || i >showMax){
                $('#tag_' + i).css("display", "none");	 	
          	 }
          	 else {
          	    $('#tag_' + i).css("display", ""); 	
             }
          }
      }
	});
	
	// set points value
	$('#divPointsAvailable').html(maxFontSizeAll);
}

/**
 * Initialize easter card
 * @param {String} values
 */
function initializeCard(returnedValues) {
	
	if(typeof(returnedValues) != 'undefined') {
		var greeting = returnedValues.greeting;
		$('#cardGreetingText').html(greeting);
		var tags = returnedValues.tags;
		tags = JSON.parse(tags);
		
		// iterate through tags and create elements & sliders
	    for(var i in tags) {
	        // create span with text for cloud
	        var spanEl = document.createElement('span');
	        var spanAttr = document.createAttribute('id');
	        spanAttr.nodeValue = 'cloud_' + i
	        var spanText = document.createTextNode(tags[i].name + " ");
	        spanEl.appendChild(spanText);
	        spanEl.setAttributeNode(spanAttr);
	        $("#tagCloudCard:first")[0].appendChild(spanEl);
	        // set font-size
	        $('#cloud_' + i).css("font-size", tags[i].value + 6 );
	    }
	}
}

/**
 * switch the display of the checkbutton image
 * @param {Object} obj the image html dom element
 */
function switchCheckButton(obj) {
	var search = /greetcheck.jpg/g;
	if (search.test(obj.src)) {
		obj.src = 'images/content/xmas2009/greetuncheck.jpg';
	    $('#cardGreetingText').html('')
	}
	else {
		obj.src = 'images/content/xmas2009/greetcheck.jpg';
		$('#cardGreetingText').html($('#personalGreet').val());
	} 
}

/**
 * switch the display of the checkbutton image
 * @param {Object} obj the image html dom element
 */
function switchCheckEasterButton(obj) {
    var search = /greetcheck.jpg/g;
    if (search.test(obj.src)) {
        obj.src = '../images/content/xmas2009/greetuncheck.jpg';
       // $('#cardGreetingText').html('')
        $('#cardGreeting').css('display', 'none');
    }
    else {
        obj.src = '../images/content/xmas2009/greetcheck.jpg';
        //$('#cardGreetingText').html($('#personalGreet').val());
        $('#cardGreeting').css('display', '');
    } 
}

// lastDisplayedItem
var dztSlideShow = 5;
function moveDztSlideShow(direction) {
	if('left' == direction) {
        $('#topRowImage_' + (dztSlideShow - 5)).css('display', '');
        $('#topRowImage_' + dztSlideShow).css('display', 'none');
        dztSlideShow = dztSlideShow - 1;
    } 
    else if('right' == direction) {
        dztSlideShow = dztSlideShow + 1;
        $('#topRowImage_' + dztSlideShow).css('display', '');
        $('#topRowImage_' + (dztSlideShow - 5)).css('display', 'none');
    }
   
   if(dztSlideShow <= 5) {
       $('#topRowImage_left').css('visibility', 'hidden');
   } 
   else if(dztSlideShow == 10){
       $('#topRowImage_right').css('visibility', 'hidden');
   }
   else {
       $('#topRowImage_left').css('visibility', '');
       $('#topRowImage_right').css('visibility', '');
   }
}



var backgroundUsedEaster = 1;
/**
 * switches the card and position of text in it
 * 
 * @param {Integer} number The number of the background to switch to
 */
function switchCardBackgroundEaster(number) {
    
    if(2 == number) {
        $('#tagCloud').css("left", "225px");
        $('#tagCloud').css("width", "222px");
    }
    else {
        $('#tagCloud').css("left", "0.5em");
        $('#tagCloud').css("width", "34em");
    }
    
    // switch background image
    $('#cardTable').css("background-image", "url(../images/content/ostern2010/bg_small/" + number + ".jpg)" );
    
    backgroundUsedEaster = number;
}


var backgroundUsedDzt = 1;
/**
 * switches the card and position of text in it
 * 
 * @param {Integer} number The number of the background to switch to
 */
function switchCardBackgroundDzt(number) {
	// switch background image
	$('#cardTable').css("background-image", "url(images/content/xmas2009/dzt_images/bg_small/" + number + ".jpg)" );
	
	// change position of div with tags
	switch(number) {
	    case 1:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#000");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "21em");
           $('#cardGreeting').css("left", "6.5em");
           
           backgroundUsedDzt = 1;
           
    
           break;
           
	    case 2:
	       $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "22em");
           $('#cardGreeting').css("left", "4.5em");
           
           backgroundUsedDzt = 2;
           
           
	       break;
	       
	   case 3:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "17em");
           $('#cardGreeting').css("left", "0.5em");
           
           backgroundUsedDzt = 3;
            
           break;
        case 4:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "17em");
           $('#cardGreeting').css("left", "0.5em");
           
           backgroundUsedDzt = 4;
           
           break;
        case 5:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "17em");
           $('#cardGreeting').css("left", "0.5em");
           
           backgroundUsedDzt = 5;
           
           break;
        case 6:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "right");
           $('#tagCloud').css("top", "1em");
           $('#tagCloud').css("left", "17.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("top", "22em");
           $('#cardGreeting').css("left", "2em");
     
           backgroundUsedDzt = 6;
                  
           break;
        case 7:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#000");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "21em");
           $('#cardGreeting').css("left", "16.5em");
     
           backgroundUsedDzt = 7;
                  
           break;
        case 8:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "23em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "15em");
           $('#cardGreeting').css("left", "10.5em");
     
           backgroundUsedDzt = 8;
                  
           break;
        case 9:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "right");
           $('#tagCloud').css("top", "1em");
           $('#tagCloud').css("left", "17.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#000");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("top", "22em");
           $('#cardGreeting').css("left", "10em");
     
           backgroundUsedDzt = 9;
                  
           break;
        case 10:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "right");
           $('#tagCloud').css("top", "1em");
           $('#tagCloud').css("left", "17.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("top", "19em");
           $('#cardGreeting').css("left", "17em");
     
           backgroundUsedDzt = 10;
                  
           break;
        
	}
}

var backgroundUsed = 1;
/**
 * switches the card and position of text in it
 * 
 * @param {Integer} number The number of the background to switch to
 */
function switchCardBackground(number) {
    // switch background image
    $('#cardTable').css("background-image", "url(images/content/xmas2009/bg_small/" + number + ".jpg)" );
    
    // change position of div with tags
    switch(number) {
        case 1:
           $('#tagCloud').css("color", "#fff");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "0.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("top", "17em");
           $('#cardGreeting').css("left", "0.5em");
           
           backgroundUsed = 1;
           
           break;
           
        case 2:
           $('#tagCloud').css("color", "#4c2011");
           $('#tagCloud').css("text-align", "right");
           $('#tagCloud').css("top", "9em");
           $('#tagCloud').css("left", "17em");
           $('#tagCloud').css("width", "21em");
       
           $('#cardGreeting').css("color", "#a37833");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "right");
           $('#cardGreeting').css("top", "0.5em");
           $('#cardGreeting').css("left", "17em");
           
           backgroundUsed = 2;
           
           break;
           
       /* case 3:
           $('#tagCloud').css("color", "#4c2011");
           $('#tagCloud').css("text-align", "right");
           $('#tagCloud').css("top", "120px");
           $('#tagCloud').css("left", "210px");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#a37833");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "right");
           $('#cardGreeting').css("top", "-165px");
           $('#cardGreeting').css("left", "210px");
           
           backgroundUsed = 3;
            
           break; */
        case 4:
           $('#tagCloud').css("color", "#6b6b6a");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "6em");
           $('#tagCloud').css("left", "8.5em");
           $('#tagCloud').css("width", "29em");
       
           $('#cardGreeting').css("color", "#a09f9f");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("top", "19em");
           $('#cardGreeting').css("left", "8.5em");
           
           backgroundUsed = 4;
           
           break;
        case 5:
           $('#tagCloud').css("color", "#f4f3f3");
           $('#tagCloud').css("text-align", "left");
           $('#tagCloud').css("top", "8.5em");
           $('#tagCloud').css("left", "0.5em");
           $('#tagCloud').css("width", "19em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("top", "5em");
           $('#cardGreeting').css("left", "10.5em");
           
           backgroundUsed = 5;
           
           break;
        case 6:
           $('#tagCloud').css("color", "#f5eddd");
           $('#tagCloud').css("text-align", "right");
           $('#tagCloud').css("top", "1em");
           $('#tagCloud').css("left", "17.5em");
           $('#tagCloud').css("width", "20em");
       
           $('#cardGreeting').css("color", "#fff");
           $('#cardGreeting').css("font-weight", "bold");
           $('#cardGreeting').css("text-align", "left");
           $('#cardGreeting').css("top", "20em");
           $('#cardGreeting').css("left", "2em");
     
           backgroundUsed = 6; 
                  
           break;
    }
}

/**
 * create the dialog to send out postcard or email
 */
function createSendDialog() {
	if(grusskarteLeft <= 0) {
	   $('#postCheckBox').css({'display':'none'});
	   $('#contingent').css({'display':''});
	}
	
	// initalize frame
	$('#xmasSendFrame').height($('#main_xmas').innerHeight());
	$('#xmasSendFrame').width($('#main_xmas').innerWidth()-10);
	$('#xmasSendFrame').css({
		'z-index': '99', 
		top: 0, 
		left: '5px',
		display: ''
		});
    // display dialog
    $('#xmasSendDialog').dialog('open');
}


/**
 * close the send dialog
 */
function closeSendDialog() {
	$('#xmasSendFrame').css({display: 'none'}); 
}

/**
 * collect all the data and send to PHP script to create Postcard and send via Email
 */
function createEasterPostCard() {
    getArgs();
    
    if(typeof(allTags) != 'undefined') {
        var dataArray = new Object();
        // collect all tags with values
        dataArray['tags'] = allTags;
        // collect greeting & background used
        dataArray['greeting'] = $('#personalGreet').val();
        // found background used
        dataArray['picId'] = backgroundUsedEaster;
        // formulardaten @TODO validation needed
        if(false != validateDataNeeded()) {
            $('#loader').css('display', '');
            dataArray['anrede'] = $('#anrede option:selected').val();
            dataArray['name'] = $('#name').val();
            dataArray['vorname'] = $('#vorname').val();
            dataArray['strasse'] = $('#strasse').val();
            dataArray['plz'] = $('#plz').val();
            dataArray['ort'] = $('#ort').val();
            dataArray['emailreceip'] = $('#emailreceip').val();
            dataArray['emailsender'] = $('#emailsender').val();
            // postkarte ja/nein
            dataArray['postcard'] = false;
            dataArray['customerHash'] = passedArgs['cus'];
            
            
            // send to server
            $.post('../action/xmas2009.php', {
                 action: 'createEasterPostCard',
                 data: JSON.stringify(dataArray)
             },
             function(data){
                 if(data) {
                    $('#loader').css('display', 'none');
                    alert("Daten wurden gesendet");
                    document.location.reload();
                 }
             });
        }
    }
    else {
        alert("Keine Tags zum senden vorhanden!");
    }
}

/**
 * collect all the data and send to PHP script to create Postcard and send via Email
 */
function createPostCard() {
	getArgs();
	
	if(typeof(allTags) != 'undefined') {
        var dataArray = new Object();
        // collect all tags with values
        dataArray['tags'] = allTags;
	    // collect greeting & background used
        dataArray['greeting'] = $('#personalGreet').val();
        // found background used
        dataArray['picId'] = backgroundUsed;
        // formulardaten @TODO validation needed
        if(false != validateDataNeeded()) {
        	$('#loader').css('display', '');
	        dataArray['anrede'] = $('#anrede option:selected').val();
	        dataArray['name'] = $('#name').val();
	        dataArray['vorname'] = $('#vorname').val();
	        dataArray['strasse'] = $('#strasse').val();
	        dataArray['plz'] = $('#plz').val();
	        dataArray['ort'] = $('#ort').val();
	        dataArray['emailreceip'] = $('#emailreceip').val();
	        dataArray['emailsender'] = $('#emailsender').val();
	        // postkarte ja/nein
	        dataArray['postcard'] = (grusskarteLeft > 0 && typeof($('#postCheck:checked').val()) != 'undefined') ? true : false;
	        dataArray['customerHash'] = passedArgs['cus'];
	        
	        
	        // send to server
	        $.post('action/xmas2009.php', {
	             action: 'createPostCard',
	             data: JSON.stringify(dataArray)
	         },
	         function(data){
	             if(data) {
	             	$('#loader').css('display', 'none');
	             	alert("Daten wurden gesendet");
	             	document.location.reload();
	             }
	         });
        }
	}
	else {
		alert("Keine Tags zum senden vorhanden!");
	}
}


/**
 * collect all the data and send to PHP script to create Postcard and send via Email
 */
function createPostCardDzt(greatBrit) {
    getArgs();
    
    if(typeof(allTags) != 'undefined') {
        var dataArray = new Object();
        // collect all tags with values
        dataArray['tags'] = allTags;
        // collect greeting & background used
        dataArray['greeting'] = $('#personalGreet').val();
        // found background used
        dataArray['picId'] = backgroundUsedDzt;
        // formulardaten @TODO validation needed
        if(false != validateDataNeeded(greatBrit)) {
            $('#loader').css('display', '');
            dataArray['anrede'] = $('#anrede option:selected').val();
            dataArray['name'] = $('#name').val();
            dataArray['vorname'] = $('#vorname').val();
            dataArray['emailreceip'] = $('#emailreceip').val();
            dataArray['emailsender'] = $('#emailsender').val();
            // postkarte ja/nein
            dataArray['postcard'] = false;
            
            // send to server
            $.post('action/xmas2009.php', {
                 action: 'createPostCardDzt',
                 data: JSON.stringify(dataArray),
                 eng: greatBrit ? 'ja':false
             },
             function(data){
                 if(data) {
                    $('#loader').css('display', 'none');
                    if(greatBrit) {
                    	alert("The postcard was sent out.");
                    }
                    else {
                        alert("Daten wurden versendet.");	
                    }
                    
                    document.location.reload();
                 }
             });
        }
    }
    else {
        alert("Keine Tags zum senden vorhanden!");
    }
}

/**
 * validate all data needed
 */
function validateDataNeeded(greatBrit) {
	var dataValidated = true;
	if('' == $('#emailsender').val()) {
		if(greatBrit) {
            dataValidated = 'E-Mail Sender';
       }
       else {
          dataValidated = 'E-Mail Absender';
       }
    }
    if('' == $('#emailreceip').val()) {
       if(greatBrit) {
            dataValidated = 'E-Mail Receiver';
       }
       else {
         dataValidated = 'E-Mail Empf\u00e4nger';
       }
    }
    if($('#postCheck').is(':checked') && '' == $('#ort').val()) {
         dataValidated = 'Ort';
    }
    if($('#postCheck').is(':checked') && '' == $('#plz').val()) {
         dataValidated = 'Postleitzahl';
    }
    if($('#postCheck').is(':checked') && '' == $('#strasse').val()) {
         dataValidated = 'Stra\u00dfe';
    }
    if('' == $('#vorname').val()) {
    	if(greatBrit) {
        dataValidated = 'Forename';
       }
       else {
        dataValidated = 'Vorname';
       }
    }
    if('' == $('#name').val()) {
       if(greatBrit) {
       	dataValidated = 'Surname';
       }
       else {
        dataValidated = 'Name';
       }
    }
    
	if(true == dataValidated) {
		return true;
	}   
	else {
		if(greatBrit) {
			alert("The field \"" + dataValidated + "\" is needed to sent the postcard via email.");
		}
		else {
		    alert("Das Feld \"" + dataValidated + "\" wird ben\u00f6tigt um die Weihnachtskarte zu verschicken.");	
		}
		
		return false;
	}
}

var itemTop = '';
function closeText(item) {
    itemTop = $(item).style.top;
    $(item).morph('height:14px; top:400px;');
    
    var closeEl = $(item).firstDescendant();
    var openEl = closeEl.next();
    var divContent = openEl.next();
    
    Effect.BlindUp (divContent);
    //divContent.style.display = 'none';
    closeEl.style.display = 'none';
    openEl.style.display = '';
}

function openText(item) {
	if(itemTop == '') {
		itemTop = '300px;';
	}
    $(item).morph('top:' + itemTop + ';');
    $(item).style.height = '';
    
    var closeEl = $(item).firstDescendant();
    var openEl = closeEl.next();
    var divContent = openEl.next();
    //window.setTimeout("", 1000);
    closeEl.style.display = '';
    openEl.style.display = 'none';
    
    Effect.BlindDown (divContent);
}