/* EMWEE.de Tag-Generator Klassendefinition */
/* (c) 2007 Markus Wirtz. Alle Rechte vorbehalten. */
/* Nutzung, auch nur in Teilen, nur mit vorheriger schriftlicher Genehmigung. */

// =======================================================================
// = V1 ==================================================================
// =======================================================================

// Globale Variablen

var notice_url;
var notice_sms;
var embed_code;

var form_options;

var field_url;
var field_txt;
var field_tel;
var field_sms;
var field_mail;
var field_vcf;

var f_url;
var f_txt;
var f_tel;
var f_sms;
var f_mail;
var f_vcfname;

var offline;

// Funktionen

function emwee_taggen_update_submit (event) {
	// Event.stop(event);
	emwee_taggen_update();
}

function emwee_taggen_getid(pars) {
	var url = '/wp-content/plugins/emwee/id.php?'+pars;
	var embed_code = $('emwee-taggen-embed-code');

	if ( embed_code.value == "Bitte Daten eingeben.") {
		// alert("Invalid");
		notice_url.update(embed_code.value);
		notice_sms.update(embed_code.value);
	} else {
		new Ajax.Updater (	'emwee-taggen-id', 
							url,
							{ 
							method: 'get',
							onComplete: function() { 
									// alert('done'); 
									var tagid = $('emwee-taggen-id').innerHTML;
									var notice_url = $('emwee-taggen-aufruf-url');
									var notice_sms = $('emwee-taggen-aufruf-sms');
									// var notice_code_id = $('emwee-taggen-embed-code-id');
									notice_url.update('Rufe "ts.emwee.de/'+tagid+'" auf');
									notice_sms.update('Sende SMS mit "tag '+tagid+'" an 88881 (49ct/SMS)');
									// notice_code_id.value = ('<img src="http://ts.emwee.de/img?id='+tagid+'" alt="EMWEE.de Tag">');
								}
							}
						);
	}
}

function emwee_taggen_update () {
	var showtag = false;
	switch (taggen_select) {
		case "url":
			if ($F('url').length >= 1) { showtag = true; }
			Field.focus($('url'));
		break;
		case "txt":
			if ($F('txt').length >= 1) { showtag = true; }
			Field.focus($('txt'));
		break;
		case "tel":
			if ($F('tel').length >= 1) { showtag = true; }
			Field.focus($('tel'));
		break;
		case "sms":
			if ($F('sms').length >= 1) { showtag = true; }
			Field.focus($('sms'));
		break;
		case "mail":
			if ($F('mail').length >= 1) { showtag = true; }
			Field.focus($('mail'));
		break;
		case "vcf":
			if ($F('vcfname').length >= 1) { showtag = true; }
			Field.focus($('vcfname'));
		break;
		case "ticket":
			if ($F('ticket').length >= 1) { showtag = true; }
			Field.focus($('ticket'));
		break;
	}
	var form = "emwee-taggen-"+taggen_select;
	var pars = Form.serialize($(form)) + "&" + Form.serialize('emwee-taggen-options');
	if (showtag) {
		var tagcode_img = '<img src="http://ts.emwee.de/img?'+pars+'" alt="EMWEE.de Mobile Tag">';
		var tagcode_save = '<a href="http://ts.emwee.de/img?'+pars+'&save=y">'+tagcode_img+'</a>';
	} else {
		var tagcode_img = 'Bitte Daten eingeben.';
		var tagcode_save = 'Bitte Daten eingeben.';
	}
	// Tag Image Update
	$("emwee-taggen-tag-"+taggen_select).update(tagcode_save);
	// Code Snippet update
	$("emwee-taggen-embed-code").value = tagcode_img;
	// Handy-Abruf updaten
	emwee_taggen_getid(pars);
}

function emwee_taggen_select (taggen_select_new) {
	var form_old = "emwee-taggen-"+taggen_select;
	var form_new = "emwee-taggen-"+taggen_select_new;
	var select_old = "emwee-taggen-select-"+taggen_select;
	var select_new = "emwee-taggen-select-"+taggen_select_new;
	
	// Switch Display to new form
	
	if (taggen_select != taggen_select_new) {
		$(form_old).hide();
		$(select_old).style.background = taggen_select_background;
	}
	$(form_new).show();
	$(select_new).style.background = "#555";
		
	// Activate interactive Functions for new selection
	
	switch (taggen_select_new) {
		case "url":
			// Event.observe("url", "keyup", emwee_taggen_update, true );
			// Event.observe("emwee-taggen-url", "submit", emwee_taggen_update_submit, true );
			$('offline').value='n';
		break;
		case "txt":
			// Event.observe("emwee-taggen-txt", "submit", emwee_taggen_update_submit, true );
			$('offline').value='y';
		break;
		case "tel":
			// Event.observe("emwee-taggen-tel", "submit", emwee_taggen_update_submit, true );
			$('offline').value='y';
		break;
		case "sms":
			// Event.observe("emwee-taggen-sms", "submit", emwee_taggen_update_submit, true );
			$('offline').value='y';
		break;
		case "mail":
			// Event.observe("emwee-taggen-mail", "submit", emwee_taggen_update_submit, true );
			$('offline').value='y';
		break;
		case "vcf":
			// Event.observe("emwee-taggen-vcf", "submit", emwee_taggen_update_submit, true );
			$('offline').value='n';
		break;
		case "ticket":
			// Event.observe("emwee-taggen-vcf", "submit", emwee_taggen_update_submit, true );
			$('offline').value='y';
		break;
	}

	// Save new setting as old
	taggen_select = taggen_select_new;

	// Update Tag
	emwee_taggen_update();

}

function emwee_taggen_load () {

	var div = $("emwee-taggen-div");
	
	if (div) {
		taggen_select = "url"; // Default
		var form = "emwee-taggen-"+taggen_select;
		taggen_select_background = $(form).style.background;
		emwee_taggen_select (taggen_select);


		// Globale Variablen zuordnen
		notice_url = $('emwee-taggen-aufruf-url');
		notice_sms = $('emwee-taggen-aufruf-sms');
		embed_code = $('emwee-taggen-embed-code');

		form_options = $('emwee-taggen-options');

	}

}

if (window.addEventListener)
	window.addEventListener("load", emwee_taggen_load, false)
else if (window.attachEvent)
	window.attachEvent("onload", emwee_taggen_load)
else if (document.getElementById)
	window.onload=emwee_taggen_load


// =======================================================================
// = V1 ==================================================================
// =======================================================================

var EMWEE_taggen = function(param) {
	
	this.targetdiv = param || "emwee-taggen-div";

	// Display Status
	this.log = function(text) {
		li = document.createElement("li");
		li.appendChild(document.createTextNode(text));
		document.getElementById("emwee-taggen-log").appendChild(li);
	}
	
	this.status = function(text) {
		$("emwee-taggen-status").update(text);
	}
	
}

function taggen () {
	var EMWEE = new EMWEE_taggen();
	var pars = Form.serialize($("emwee-taggen-form"));
	EMWEE.status("Generiere: "+$F("url"));
	// EMWEE.log(pars);
	var tag = $("emwee-taggen-tag");
	tag.update('<img src="http://ts.emwee.de/img?'+pars+'">');
}


