﻿/**
 * @author tmartins
 */
var fbiz = fbiz || {};
fbiz.omo = {
    init: function() {
        //$('#login_Email, #usuario_Email').attr('title', 'Endereço de e-mail');
        //$('#login_Senha, #usuario_Senha').attr('title', 'Senha');
        $('.login-holder').addClass('hide');
        this.clearInp($('#login_Senha, #login_Email, #usuario_Email, #usuario_Senha'));
        this.login();
        Cufon.replace(".section-title", { fontFamily: "universcondlight" });
		Cufon.replace(".txt-replace", {
			hover:true, hoverables: { span:true }
		});
		Cufon.replace(".universcondlight", { fontFamily: "universcondlight"})
        Cufon.replace(".comments h3", { fontFamily: "universcondlight" });
		Cufon.replace(".post-holder-full .box .subtitle-medium-bg", { fontFamily: "universcondlight" });
		Cufon.replace(".post-holder-full .box .title-simples", { fontFamily: "universcondlight" });
		Cufon.replace(".cufon-universcondlight", { fontFamily: "universcondlight" });
		Cufon.replace("#main-sidebar h3", { fontFamily: "universcondlight" });
		Cufon.replace(".splash-box-green h3", { fontFamily: "universcondlight" });
		Cufon.replace(".splash-box-blue h3", { fontFamily: "universcondlight" });
		Cufon.replace("#main-produto #main-content h1", { fontFamily: "universcondlight" });		
		Cufon.replace("#main-content h2", { fontFamily: "universcondlight" });
		Cufon.replace(".header-holder .navigation ul li a", { fontFamily: "universcondlight" });
		Cufon.replace(".produtos-footer .dicas ul li a ", { fontFamily: "universcondlight", hover:true });
		Cufon.replace("a.tit-dica-blue", { fontFamily: "univers-lts-td-light-cn" });			
		Cufon.replace(".produtos-footer .omo-type h2", { fontFamily: "univers-lts-td-light-cn" });
		Cufon.replace(".omo-box .omo-text .title h1", { fontFamily: "univers-lts-td-light-cn" });  		  
        Cufon.now()
		
		// 
		$('.comments input#comentario_Nome').focus(function(){if(this.value=="Nome"){this.value = "";}});$('.comments input#comentario_Nome').blur(function(){if (this.value == ""){this.value = "Nome";}});
        $('.comments input#comentario_Email').focus(function(){if (this.value == "E-mail"){this.value = "";}});$('.comments input#comentario_Email').blur(function(){if (this.value == ""){this.value = "E-mail";}});
		
        $('#comentario_Mensagem').bind("keyup blur click mouseout", function() {
        limitChars('comentario_Mensagem', 10000, 'charlimitinfo');
        });
		
		$("a[rel*='action']").click(function(){return false;});
    },
    clearInp: function(inputs) {
        inputs.focus(function() {
            $(this).prev().addClass('hide')
        });
        inputs.blur(function() {
            if (this.value != "") {
                $(this).prev().addClass('hide')
            }
            else {
                $(this).prev().removeClass('hide')
            }
        });
    },
    login: function() {
        $('#btEntrar').click(function() {
            $('.login-navigation-holder').addClass('hide');
            $('.login-holder').removeClass('hide');
        })
    }
}
function limitChars(textid, limit, infodiv) {
    var text = jQuery('#' + textid).val();
    var textlength = text.length;
    if (textlength > limit) {
        jQuery('#' + infodiv).html('Você não pode escrever mais que ' + limit + ' Caracteres');
        jQuery('#' + textid).val(text.substr(0, limit));
        return false;
    }
    else {
        jQuery('#' + infodiv).html('Voc&ecirc; ainda tem ' + (limit - textlength) + ' caracteres.');
        return true;
    }
}
/**
 * "Package" for ajax stuff
 */
(function($){

	if(!$) {
		throw new Error ('jQuery 1.3.2 is needed for "fbiz.LazyAjax"');
		return;
	}
	
	/**
	 * Ajax controller ("service")
	 * @needs {jQuery}
	 */ 
	fbiz.LazyAjax = function(type, url, data, dataType){
		
		var _this = this;
		
		// data
		this.type = type;
		this.url = url;
		this.data = data || {};
		this.dataType = dataType;
		
		this.send = function(data){
			if(typeof(data) == 'object' && data != null){
				$.extend(_this.data, data);
			}else{
				_this.data = data;
			}
			$.ajax({
				type: _this.type,
				url: _this.url,
				data: _this.data,
				dataType: _this.dataType,
				success: function(data, status){
					$(_this).trigger('complete', {
						data: data,
						status: status
					});
				},
				error: function(data, status, stack){
					$(_this).trigger('error', {
						data: data,
						status: status,
						stack: stack
					});
				}
			});
		};
	};
})(jQuery);

/**
 * very simple syncronous JS Loader to insert code on includes
 * @param {String} url
 * @param {Object} verifier
 * @constructor
 */
fbiz.JS = {
	load: function(url, verifier){
		if(!verifier && url){
			document.write('<scr'+'ipt type="text/javascript" src="'+url+'"></scri'+'pt>');
		}
	}
};

(function($) {
	$.fn.only = function(type){
		this.each(function(){
			$(this).keypress(function(e){
				var key = 0, letter = '', pattern = '';
				
				if(window.event){
					key = window.event.keyCode;
				}else if(e){
					key = e.which;
				}else{
					return true;
				}
				
				letter = String.fromCharCode(key);
				
				switch (type) {
					case 'num':
					case 'number':
					case 'numeric':
						pattern = /\d/i;
						break;
						
					case 'let':
					case 'letters':
						pattern = /\D/i;
						break;
						
					case 'alnum':
					case 'alphanumeric':
						pattern = /\w/i;
						break;
						
					case 'low':
					case 'lower':
					case 'lowercase':
						pattern = /[a-z]/;
						break;
						
					case 'up':
					case 'upper':
					case 'uppercase':
						pattern = /[A-Z]/;
						break;
						
					case 'rest':
					case 'restrict':
						pattern = /[a-z0-9]/i;
						break;
						
					case 'email':
						pattern = /[a-z0-9@-_.]/i;
						break;
						
					default:
						pattern = /.*/i;
				}
				
				if (key === null || key === 0 || key === 8 || key === 9 || key === 13 || key === 27) {
					return true;
				}
				
				return pattern.test(letter);
			});
		});
		return this;
	};
})(jQuery);

jQuery(document).ready(function($){
	
	$('.labeled').focus(function(){
		if($(this).val() == $(this).attr('title')){
			$(this).val('');
		}
	});
	
	$('.labeled').blur(function(){
		if($(this).val() == ''){
			$(this).val($(this).attr('title'));
		}
	});
});
