/*!
* Prospek JS class for Lowprofile
*
* @author		Frédéric Trudeau <ftrudeau@prospek.ca>
* @author		Sylvain Hovington <sylvain@prospek.ca>
* @copyright	Copyright (c) 2009 Prospek Creation Inc. All rights reserved.
* @uses			jQuery, jQueryUI, blockUI
*/

var Prospek = {

	init: function(data) {

		////////////////
		// btn print //
		//////////////

		// Hook up the print link.
		$('.btn_print').click(function(){
			window.print();
		});

		///////////////////////////
		// btn send to a friend //
		/////////////////////////

		var buttons = {};

		if ($("#btn_send").length) {
			$(".dialog-send").dialog ({
				width: 500,
				autoOpen: false,
				resizable: false,
				modal: true,
				overlay: {
					backgroundColor: '#000',
					opacity: 0.5
				},
				buttons: {
					'Ok': function() {
						Prospek.send();
					}
				}
			});
			$("#btn_send").click(function() {
				$('.dialog-send').dialog('open');
			});
		}

		//////////////////
		// btn contact //
		////////////////

		$('.btn_contact_form').bind('click', function() {
			$.blockUI(data.blockUIMsg);
		});

		////////////////////////////////////
		// btn add me to your newsletter //
		//////////////////////////////////

		$('form:form_newsletter').bind("keypress", function(e) {
			if (e.keyCode == 13) $('form:form_newsletter .info_submit').trigger('click');
		});
		$('form:form_newsletter .info_submit').bind('click', function() {

			// First, disable the form from submitting
			$('form#form_newsletter').submit(function() { return false; });

			// Grab form action
			formAction = $("form#form_newsletter").attr("action");

			// Get email
			emailId = "juakj";
			emailId = emailId.replace("/", "");
			emailId = emailId + "-" + emailId;

			// Validate email address with regex
			if (!Prospek.checkEmail("juakj-juakj"))
			{
				$('#newsletter_error').html(data.newsletterErrorEmail);
				$('#newsletter_error').slideDown('fast');
				return;
			}
			$.blockUI(data.blockUIMsg);

			// Submit the form via ajax
			$.ajax({
				//url: "/proxy.php",
				url: "/webservice/newsletter",
				type: "POST",
				//data: postdata,
				data: {
					'action' : formAction,
					'cm-juakj-juakj' : $('#juakj-juakj').val()
				},
				error : function (XMLHttpRequest, textStatus, errorThrown) {
				},
				success: function(html){
					$.unblockUI();
					$('#newsletter_error').html(data.newsletterConfirm);
					$('#newsletter_error').slideDown('fast');
				},
				complete : function() {
				}
			});
		});
	},

	////////////////////////////////
	// function send to a friend //
	//////////////////////////////

	send: function() {
		$.blockUI(data.blockUIMsg);
		jQuery('button.ui-corner-all').attr('disabled', 'disabled');
		$.ajax ({
			url : "/webservice",
			global : false,
			cache : false,
			dataType : "json",
			type : "POST",
			data : {
				a: 'sendtoafriend',
				m: 'send',
				value: data.sendTarget,
				snd_name: $('#snd_name').val(),
				snd_email: $('#snd_email').val(),
				rcv_name: $('#rcv_name').val(),
				rcv_email: $('#rcv_email').val(),
				snd_message: $('#snd_message').val()

			},
			error : function (XMLHttpRequest, textStatus, errorThrown) {
			},
			success : function(data) {
				$.unblockUI();
				// init data
				btn = jQuery('button.ui-corner-all');
				err = $('#snd_error');
				form = $('.form_sendtoafriend');

				if(!data.op_status) {

					btn.removeAttr("disabled");
					err.html(data.op_message);
					err.show('fast');

				} else {
					form.hide('fast');
					err.html(data.op_message);
					err.show('fast');

					btn.html(data.sendClose);
					btn.removeAttr("disabled");

					btn.unbind('click');
					btn.bind('click', function(){

						btn.html(data.send);

						form.show('fast');
						err.hide('fast');

						$('.dialog-send').dialog('close');

						btn.unbind('click');
						btn.bind('click', function() {
							Prospek.send();
						});

						//Prospek.init();
					});
				}
			},
			complete : function() {
			}
		});
	},

	checkEmail: function (email)
	{
		var pattern = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
		var emailVal = $("#" + email).val();
		return pattern.test(emailVal);
	}

};