var UOLPROD = window.UOLPROD || {};
//window.nonAuthMessage = "Use seu e-mail cadastrado no TodaOferta";
window.nonAuthMessage = "Para acessar esta área, é necessário identificar-se.";

UOLPROD.TB_login = function () {
	UOLPROD.loginWidth = 355;
	UOLPROD.loginHeight = 280;
	if ($('#TB_window').length < 1) {
		debugme('ThickBox não encontrado, abrindo TB para TB_login');
		UOLPROD.prevTop = 'noPrev';
		$('#ajaxStatusImage').addClass('hidden');
		$('body').append('<div id="loginNewTB"></div>');
		$('#loginNewTB').addClass('hidden').html(
			MARKUP.TB_loginWindow
				.replace('_MESSAGE_', window.nonAuthMessage)
				.replace('_IFRAME_W_', UOLPROD.loginWidth)
				.replace('_IFRAME_H_', UOLPROD.loginHeight-71)
		);
		TB_show($(this).html(),'#TB_inline?height='+(UOLPROD.loginHeight+5)+'&width='+(UOLPROD.loginWidth-20)+'&inlineId=loginNewTB',null);
		$('#loginNewTB').not('#TB_window #loginNewTB').remove();
	} else {
		debugme('ThickBox detectado, continuando o TB_login');
		var difWidth = UOLPROD.loginWidth - $('#TB_window').css('width').replace('px', '');
		var difHeight = UOLPROD.loginHeight - $('#TB_window').height();
		difWidth = ( difWidth < 10 ) ? 0 : difWidth;
		difHeight = ( difHeight < 10 ) ? 0 : difHeight;
		UOLPROD.prevTop = $('#TB_window').css('top').replace('px', '');
		UOLPROD.prevLeft = $('#TB_window').css('left').replace('px', '');
		UOLPROD.prevWidth = $('#TB_window').css('width').replace('px', '');
		UOLPROD.prevHeight = $('#TB_window').height();
		UOLPROD.prevContentWidth = $('#TB_ajaxContent').css('width').replace('px', '');
		UOLPROD.prevContentHeight = $('#TB_ajaxContent').css('height').replace('px', '');
		$('#TB_window').animate({
			width: parseInt(UOLPROD.loginWidth+10), height: parseInt(UOLPROD.loginHeight), top: parseInt(UOLPROD.prevTop-difHeight/2), left: parseInt(UOLPROD.prevLeft-difWidth/2)
		}, 'medium');
		$('#TB_ajaxContent').animate({
			width: parseInt(UOLPROD.loginWidth-20), height: parseInt(UOLPROD.loginHeight-2)
		}, 'medium');
		window.TB_WIDTH = UOLPROD.loginWidth;
		window.TB_HEIGHT = UOLPROD.loginHeight;
		$('#TB_ajaxContent > div').eq(0).slideUp('medium', function(){
			$('#TB_ajaxContent').append(
				MARKUP.TB_loginWindow
					.replace('_MESSAGE_', window.nonAuthMessage)
					.replace('_IFRAME_W_', UOLPROD.loginWidth)
					.replace('_IFRAME_H_', UOLPROD.loginHeight-60)
			);
		});
	}
	debugme('esperando usuário logar')
}

UOLPROD.TB_login_ok = function () {
	debugme('Login OK');
	if(UOLPROD.prevTop == 'noPrev') {
		$('#ajaxStatusImage').removeClass('hidden');
		TB_remove();
		debugme('Thickbox fechado.');
		try{
			debugme('Chamando o TB_login_callback');
			TB_login_callback();
		}catch(e){void(null)}
	} else {
		$('#TB_ajaxContent iframe#notauth').remove();
		$('#TB_ajaxContent > div').eq(0).slideDown('medium');
		window.TB_WIDTH = UOLPROD.prevWidth;
		window.TB_HEIGHT = UOLPROD.prevHeight;
		$('#TB_ajaxContent').animate({
			width: parseInt(UOLPROD.prevContentWidth), height: parseInt(UOLPROD.prevContentHeight)
		}, 'medium'); 
		$('#TB_window').animate({
			width: parseInt(UOLPROD.prevWidth), height: parseInt(UOLPROD.prevHeight), top: parseInt(UOLPROD.prevTop), left: parseInt(UOLPROD.prevLeft)
		}, 'medium', function() {
			try{
				debugme('Chamando o TB_login_callback');
				TB_login_callback();
			}catch(e){void(null)}
		});
	}
}

UOLPROD.dataPostAjaxForm = function (formElm, omitType) {
		// omitType serve para receber a URL sem tratar um tipo de elemento, por exemplo: se receber "radio" nenhum radiobutton terá o valor retornado
		var ajaxData = {};
		myForm = document.forms[formElm.name];
		for(var i=0, myEl; myEl = myForm[i]; i++) {
			if(myEl.name){
				if(myEl.type != 'checkbox' && myEl.type != omitType && myEl.type != 'radio' ){
					var val = escape(myEl.value);
					eval('ajaxData["'+myEl.name+'"] = val');
				} else if(myEl.type != omitType) {
					if(myEl.checked){
						var val = escape(myEl.value);
						eval('ajaxData["'+myEl.name+'"] = val');
					}
				}
			}
		}
		return ajaxData;
}

UOLPROD.escapedDataFormString = function (formElm, omitType) {
		// omitType serve para receber a URL sem tratar um tipo de elemento, por exemplo: se receber "radio" nenhum radiobutton terá o valor retornado
		myForm = document.forms[formElm.name];
		var dataForm = '';
		for(var i=0, myEl; myEl = myForm[i]; i++) {
			if(myEl.name){
				if(myEl.type != 'checkbox' && myEl.type != omitType && myEl.type != 'radio' ){
					dataForm += myEl.name+'='+escape(myEl.value)+'&';
				} else if(myEl.type != omitType) {
					if(myEl.checked){
						dataForm += myEl.name+'='+escape(myEl.value)+'&';
					}
				}
			}
		}
		return dataForm;
}

UOLPROD.parseXML = function(str) {
    var x = false;
    str = str.replace(/<\?.*\?>/, '');
    str = '<xml>' + str + '</xml>';
    if (typeof DOMParser != "undefined") {
        var parser = new DOMParser();
        try {
            x = parser.parseFromString(str, 'text/xml');
        } catch (e) {
            return false;
        }
    } else if (window.ActiveXObject) {
        try {
            x = new ActiveXObject("Microsoft.XMLDOM");
            x.async = false;
            x.loadXML(str);
        } catch (e) {
            return false;
        }
    }
    return x? x.firstChild : false;
}

