/**
 * @author Udo Gehards
 */

 function reloadPic(){
  
   var d = new Date();
   
   $('#captcha').val('');
                                             
   $.get("fileadmin/templates/scripts/captcha/captcha.php");
  
   $('#captcha_img img').attr('src', 'fileadmin/templates/scripts/captcha/captcha.php?id='+ d.getTime());
  
 }

 function handleVoting(responseText, statusText, xhr, form) {
 	
	var result = xhr.responseXML;
	
	var status = parseInt($(result).find("result").text());
	
	var voteCount = parseInt($(result).find("votecount").text())
	
	
	var messageContainer = $('#dialog_vote .message');
	
	var errorContainer = $('#dialog_vote #error');
	
	var voteLink = $('a[rel="voting"]');
	
	var voteCountContainer = $('#votecount');
	
	
	var message = '';

    switch(status) {
		
		case 0x1:
		
			// Ok
			
			message = "Vielen Dank für Deine Bewertung! In Kürze senden wir Dir eine E-Mail mit einem Link zur Bestätigung Deiner Abstimmung! Bitte beachte, daß wir Deine Stimme erst zählen können, wenn Du den Bestätigungslink angeklickt hast!";
			
			messageContainer.html(message);
			
			voteLink.remove();
			
			voteCountContainer.html(voteCount);
		
			break;
			
		case 0x102:		// no valid page
		case 0x105:		// uknown error
			
			message = "<p class='error'>Leider ist beim Speichern Deiner Bewertung ein Fehler aufgetreten! Bitte wende Dich an info@bundes-schuelerfirmen-contest.de, damit wir diesen Fehler prüfen können!</p>";
			
			messageContainer.html(message);
			
			voteLink.remove();
			
			break;
			
		case 0x104:
			
			// Already voted
			
			message = "<p class='error'>Leider hast Du für diese Firma schon Deine Stimme abgegeben! Bitte beachte, daß wir pro Firma nur eine Stimme von Dir zulassen können!</p>";
			
			messageContainer.html(message);
			
			voteLink.remove();
			
			break;
			
		case 0x103:
		
			// E-Mail not valid / missing
			
			reloadPic();			
			
			message = "Leider konnten wir Deine Bewertung nicht speichern! Bitte überprüfe die angegebene E-Mail-Adresse!";
			
			if (errorContainer.length > 0) {
				
				errorContainer.hide();
				
				errorContainer.html(message);
				
				errorContainer.show(500);
				
			} else {
				
				messageContainer.prepend('<p id="error">'+message+'</p>');
				
				$('#error').show(500);
				
			}	
		
			break;
			
		case 0x101:
			
			// Captcha not valid
			
			reloadPic();
			
			message = "Leider konnten wir Deine Bewertung nicht speichern, da die angegebene Ziffern-/Zahlenkombination nicht korrekt ist! Bitte versuche es erneut!";
			
			if (errorContainer.length > 0) {
				
				errorContainer.hide();
				
				errorContainer.html(message);
				
				errorContainer.show(500);
				
			} else {
				
				messageContainer.prepend('<p id="error">'+message+'</p>');
				
				$('#error').show(500);
				
			}			
			
			break;
			
		default:
			
			// none
			
			break;
		
	}
	
 }

 function setupVoting() {
 	
	var voteDialog = $('#dialog_vote');
	
	var close = $("#dialog_vote .title a");
		
	var save = $('#dialog_vote input[name="speichern"]');
		
	var abort = $('#dialog_vote input[name="abbrechen"]');
		
	var mask = $('#mask');
	
	var voteForm = $('#form_vote');
	
	close.click(function(e){
			
			e.preventDefault();
			
			$(this).parents('div[id^="dialog"]').first().fadeOut(1000);
			
			$('#mask').fadeOut(1000);
			
		});
		
        mask.click(function(e){
			
			e.preventDefault();
			
			voteDialog.fadeOut(1000);
			
			$(this).fadeOut(1000);
			
		});
		
	save.click(function(e){
			
			e.preventDefault();
				
			$(this).parents('form').submit();
		
		});
		
	abort.click(function(e){
			
			e.preventDefault();
			
			$(this).parents('div[id^="dialog"]').first().fadeOut(1000);
			
			$('#mask').fadeOut(1000);
			
		});	
		
		
	voteForm.ajaxForm({
					
					type: 'POST',
					
					data: {
						
						eID: "tx_bsfc_vote"
						
					},
					
					dataType: 'xml',
									
					success: handleVoting				
				});
	
	
	$('a[rel="voting"]').click(function(e) {
		
		e.preventDefault();
		
		$('#mask').fadeTo('slow',0.7);
		
		voteDialog.fadeIn(1000, reloadPic);
		
	});	
 }
