// JavaScript Document
var q,modConfig;
var ajaxWorking = false

$(document).ready(function() {
	q = $("#_mid").val();
	modConfig = jQuery.parseJSON($("#_midConfig").val());
	$("#formCambio").validationEngine();
	//ak todo lo que puede ir en la intro y en el index
	$("#cantidad").keydown(function(event) {
		if (event.keyCode == '13') $("#btnCambiar").click();
	});
	$("#btnCambiar").click(function(){
		$.msgBox({
        	title: "ATENCI&Oacute;N",
    		content: "Los valores del convertidor son puramente informativos y no representan un compromiso de precio asociado a ninguna transacción comercial.",
			type: "alert",
			success: function(){$("#formCambio").submit();}
    	});
	});

		
	//
	/*--------------- MAIN SWITCH --------------------*/
	switch (q) {
		case "portada":
			$('#slider').nivoSlider({
				effect: 'sliceDown', // Specify sets like: 'fold,fade,sliceDown'
				slices: 15, // For slice animations
				boxCols: 8, // For box animations
				boxRows: 4, // For box animations
				animSpeed: 500, // Slide transition speed
				pauseTime: 3000, // How long each slide will show
				startSlide: 0, // Set starting Slide (0 index)
				directionNav: false, // Next & Prev navigation
				directionNavHide: false, // Only show on hover
				controlNav: false, // 1,2,3... navigation
				controlNavThumbs: false, // Use thumbnails for Control Nav
				controlNavThumbsFromRel: false, // Use image rel for thumbs
				controlNavThumbsSearch: '.jpg', // Replace this with...
				controlNavThumbsReplace: '_thumb.jpg', // ...this in thumb Image src
				keyboardNav: true, // Use left & right arrows
				pauseOnHover: true, // Stop animation while hovering
				manualAdvance: false, // Force manual transitions
				captionOpacity: 0.8, // Universal caption opacity
				prevText: 'Prev', // Prev directionNav text
				nextText: 'Next'// Next directionNav text
			});
			$('.boxPropiedad').css("cursor","pointer");
			$('.boxPropiedad').hover(
				function(){
					$(this)
						.css('background-color', '#edecec')
						
				},
				function(){
					$(this)
					   .css('background-color', '#FFFFFF');	
				}			
			)
			
		break;	
		case "trabajarFortex":
		$("#nombreTrab").focus();
		case "contacto":
			if(q=="trabajarFortex") {
				$("#pickArchsUploadButton").css("visibility","hidden");
				//uploaderImg
				var uploaderArchs = new plupload.Uploader({
					unique_names:true,
					runtimes: 'flash,html5,silverlight,gears,browserplus',
					browse_button: 'pickArchs',
					max_file_size: '2mb',
					url: 'standalone.archs.php?cmd=upload&mid=' + modConfig.attr.mid,
					flash_swf_url: 'includes/js/3Party/plupload/js/plupload.flash.swf',
					silverlight_xap_url: 'includes/js/3Party/plupload/js/plupload.silverlight.xap',
					filters: [{
						title: "Documents",
						extensions: "doc,pdf"
					}]
				});
				uploaderArchs.bind('Init', function(up, params) {
					try {console.log("uploaderArchs.Init")} catch (e) {}
					$('#pickArchsMotor').html("<div>» motor: " + params.runtime + "</div>");
					$('#pickArchsFileList').html("");
					$("#pickArchsTmpIds").html("");
					
				});
				uploaderArchs.bind('FilesAdded', function(up, files) {
					try {console.log("uploaderArchs.FilesAdded")} catch (e) {}
					var html = "";
					//multiple files
					for (var i in files)
						html += '<div id="' + files[i].id + '">' + files[i].name + ' (' + plupload.formatSize(files[i].size) + ') <b></b></div>';
					//one file
						html = '<div id="' + files[0].id + '">' + files[0].name + ' (' + plupload.formatSize(files[0].size) + ') <b></b></div>';
					//
					$('#pickArchsFileList').html(html);
					$("#btnSubmit,#selectFiles,.plupload flash").slideUp();
					$("#pickArchsUploadButton").css("visibility","visible");
				});
				uploaderArchs.bind('UploadFile', function(up, file) {
					try {console.log("uploaderArchs.UploadFile")} catch (e) {}
					$('#pickArchsFileList').html($('#pickArchsFileList').html() + '<input type="hidden" name="file-' + file.id + '" value="' + file.name + '" />');
				});
				uploaderArchs.bind('UploadProgress', function(up, file) {
					$("#" + file.id + " b").html('<span>' + file.percent + "%</span>");
				});
				uploaderArchs.bind('FileUploaded', function(up, file, response) {
					response.response = jQuery.parseJSON(response.response);
					//try {console.debug(response)} catch (e) {}
					//if (response.status == 200) {
						$("#pickArchsTmp").html($('#pickArchsTmp').html() + '<input type="hidden" name="archsTmp[]" value="' + response.response.filename + '" />');
					//} else {
						//$("#" + file.id + " b").html('<span>ERROR</span>');
					//}
				});
				uploaderArchs.bind('UploadComplete', function(uploader, files) {
					try {console.log("uploaderArchs.UploadComplete")} catch (e) {}
					trabajarSubmit();
				});
				$('#pickArchsUploadButton').click(function() {
					if($("#formTrabajar").validationEngine('validate')){
						$("#formu").slideUp();
						$("#subiendo").slideDown();
						$("#pickArchsTmp").html("");
						$("#pickArchsUploadButton").css("visibility","hidden");
						uploaderArchs.start();
					}
				});
				uploaderArchs.init();
			}
			$("#formContacto,#formTrabajar").validationEngine();
			$("#btnSubmit").click(function(){
				if(q=="contacto")
					contactoSubmit();
				else
					trabajarSubmit();
			});
			$("#formContacto input,#formTrabajar input").keydown(function(event) {
				if (event.keyCode == '13') $("#btnSubmit").click();
			});
			$("#nombreCont").focus();


		break;
		
	}
	
});
function contactoSubmit(){
	if($("#formContacto").validationEngine('validate')){
		$('#formContacto').find('.submit').html('<img src="img/ajax-loader.gif" width="16" height="11"/>');
		$.post(
			'index.php?mid=contacto', 
			$("#formContacto").serialize(), 
			function(data) {
				$('#formContacto').slideUp();
				if(data.error== 'ok') {
					$('.submit').html('<span class="submit_response"><strong>Gracias!</strong><br/>Su mensaje fue enviado correctamente.</span>');
				}else {
					$('.submit').html('<span class="submit_response"><strong>Error</strong><br/>No hemos podido procesar su mensaje, por favor inténtelo más tarde.</span>');
				}
			},
			'json'
		);	
	}
}
function trabajarSubmit(){
	if($("#formTrabajar").validationEngine('validate')){
		$('#formTrabajar').find('.submit').html('<img src="img/ajax-loader.gif" width="16" height="11"/>');
		$.post(
			'index.php?mid=contacto&func=trabaja', 
			$("#formTrabajar").serialize(), 
			function(data) {
				$('#formTrabajar').slideUp();
				if(data.error== 'ok') {
					$('.submit').html('<span class="submit_response"><strong>Gracias!</strong><br/>Su mensaje fue enviado correctamente.</span>');
				}else {
					$('.submit').html('<span class="submit_response"><strong>Error</strong><br/>No hemos podido procesar su mensaje, por favor inténtelo más tarde.</span>');
				}
			},
			'json'
		);	
	}
}
/*function setCodeView(mainCode) {
            var code = mainCode.split('');
            var temp = "";
            var spanRed = "<span style=\"color:red;\">";
            var spanGreen = "<span style=\"color:green;\">";
            var spanClose = "</span>";
            var isOpen = false;
            var lastIndex = 0;
            for (var i = 0; i < code.length; i++) {
                if (code[i] == '"' || code[i] == '\'') {
                    temp += (isOpen ? code[i] + spanClose : spanRed + code[i]);
                    lastIndex = i;
                    isOpen = !isOpen;
                }
                else if (code[i] == ',' || code[i] == ':' || code[i] == '{' || code[i] == '}') {
                    temp += spanGreen + code[i] + spanClose;
                }
                else if (code[i] == '<') {
                    temp += "&#060";
                }
                else if (code[i] == '>') {
                    temp += "&#062";
                }
                else if (code[i] == '\n') {
                    temp += i == 0 ? "" : (i == code.length - 1 ? "" : "<br/>");
                }
                else if (code[i] == ' ') {
                    temp += ' ';
                }
                else {
                    temp += code[i];
                }
            }
            return temp;
        }

        function SetCodeBlocks() {
            $("div.codeBlock>code").each(function (index, domEle) {
                var code = setCodeView($(this).html());
                $(this).html(code);
            });
        }
        $(function () {
            SetCodeBlocks();
        });*/

/* placeholder emulator */
(function($) {
	$.extend({
		placeholder : {
			settings : {
				focusClass: 'placeholderFocus',
				activeClass: 'placeholder',
				overrideSupport: false,
				preventRefreshIssues: true
			},
			debug : false,
			log : function(msg){
				if(!$.placeholder.debug) return;
				msg = "[Placeholder] " + msg;
				$.placeholder.hasFirebug ?
				console.log(msg) :
				$.placeholder.hasConsoleLog ?
					window.console.log(msg) :
					alert(msg);
			},
			hasFirebug : "console" in window && "firebug" in window.console,
			hasConsoleLog: "console" in window && "log" in window.console
		}

	});

    // check browser support for placeholder
    $.support.placeholder = 'placeholder' in document.createElement('input');

	// Replace the val function to never return placeholders
	$.fn.plVal = $.fn.val;
	$.fn.val = function(value) {
		$.placeholder.log('in val');
		if(this[0]) {
			$.placeholder.log('have found an element');
			var el = $(this[0]);
			if(value != undefined)
			{
				$.placeholder.log('in setter');
				var currentValue = el.plVal();
				var returnValue = $(this).plVal(value);
				if(el.hasClass($.placeholder.settings.activeClass) && currentValue == el.attr('placeholder')){
					el.removeClass($.placeholder.settings.activeClass);
				}
				return returnValue;
			}

			if(el.hasClass($.placeholder.settings.activeClass) && el.plVal() == el.attr('placeholder')) {
				$.placeholder.log('returning empty because it\'s a placeholder');
				return '';
			} else {
				$.placeholder.log('returning original val');
				return el.plVal();
			}
		}
		$.placeholder.log('returning undefined');
		return undefined;
	};

	// Clear placeholder values upon page reload
	$(window).bind('beforeunload.placeholder', function() {
		var els = $('input.' + $.placeholder.settings.activeClass);
		if(els.length > 0)
			els.val('').attr('autocomplete','off');
	});


    // plugin code
	$.fn.placeholder = function(opts) {
		opts = $.extend({},$.placeholder.settings, opts);

		// we don't have to do anything if the browser supports placeholder
		if(!opts.overrideSupport && $.support.placeholder)
		    return this;
			
        return this.each(function() {
            var $el = $(this);

            // skip if we do not have the placeholder attribute
            if(!$el.is('[placeholder]'))
                return;

            // we cannot do password fields, but supported browsers can
            if($el.is(':password'))
                return;
			
			// Prevent values from being reapplied on refresh
			if(opts.preventRefreshIssues)
				$el.attr('autocomplete','off');

            $el.bind('focus.placeholder', function(){
                var $el = $(this);
                if(this.value == $el.attr('placeholder') && $el.hasClass(opts.activeClass))
                    $el.val('')
                       .removeClass(opts.activeClass)
                       .addClass(opts.focusClass);
            });
            $el.bind('blur.placeholder', function(){
                var $el = $(this);
				
				$el.removeClass(opts.focusClass);

                if(this.value == '')
                  $el.val($el.attr('placeholder'))
                     .addClass(opts.activeClass);
            });

            $el.triggerHandler('blur');
			
			// Prevent incorrect form values being posted
			$el.parents('form').submit(function(){
				$el.triggerHandler('focus.placeholder');
			});

        });
    };
})(jQuery);

