// consola
function consola(str) {
	Str= str.replace(/^\s*|\s*$/g,'');
	if(str.es('redo repetir r idem igual same')) { str = lastStr; } else { lastStr = str; }
	arg = str.split(' '); // arg = ['argumento1','argumento2',...]
	com = arg.shift().toLowerCase(); // com = 'comando'
	lon = arg.join(' '); // lon = 'argumento1 argumento2';
	if(com.es('soynacho nacho sudo admin nosoynacho')) {
		$.post(root+'/scripts/soynacho.php',{pass:arg[0]},function(r){ log(r.m); },'json');
	} else if(com.es('soynacho? nacho? serenacho?')) {
		$.post(root+'/scripts/serenacho.php',{},function(r){ log(r.r); },'json');
	} else if(com.es('alert mensaje trace msg alerta prompt')) {
		alert(lon);
	} else if(com.es('atras back backward volver')) {
		history.back();
	} else if(com.es('adelante forward avanzar')) {
		history.forward();
	} else if(com.es('log echo print say write output')) {
		log(lon);
	} else if(com.es('url www web ira http open abrir')) {
		ventana(lon);
	} else if(com.es('actualizar f5 update reload recargar re')) {
		location.href=lon;
	} else if(com.es('uri goto site nacholabs root index browse seccion sub')) {
		if(lon.indexOf('/')!=0) lon='/'+lon; location.href= root+lon;
	} else if(com.es('cls clear limpiar wipe vaciar clean')) {
		$('#output').slideUp().html('');
	} else if(com.es('eval js javascript ejecutar execute evaluar exec')) {
		log(eval(lon));
	} else if(com.es('google buscar search find yahoo msn')) {
		ventana('http://google.com/search?q='+lon);
	} else if(com.es('define defini definir lookup quees definicion')) {
		ventana('http://google.com/search?q=define:'+lon);
	} else if(com.es('img imgs images imagenes image imagen ver')) {
		ventana('http://images.google.com/images?q='+lon);
	} else if(com.es('query')) {
		$.post(root+'/scripts/query.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('fetch mysql sql consulta db database')) {
		$.post(root+'/scripts/fetch.php',{q:lon},function(r){log(r);});
	} else if(com.es('cuadronuevo nuevo new crear nuevocuadro crearcuadro cuadrocrear')) {
		$.post(root+'/scripts/cuadronuevo.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadrotitulo titulo titulocuadro nombrecuadro nombre cuadronombre')) {
		$.post(root+'/scripts/cuadrotitulo.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadrolink link linkcuadro cuadrourl urlcuadro')) {
		$.post(root+'/scripts/cuadrolink.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadrotexto texto textocuadro text txt descripcion desc sub')) {
		$.post(root+'/scripts/cuadrotexto.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadroseleccionar seleccionar select sel cuadro usar cuadrobuscar')) {
		$.post(root+'/scripts/cuadroselect.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadroborrador borrador draft borradorcuadro toggledrafts')) {
		$.post(root+'/scripts/cuadroborrador.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadroborrar borrar borrarcuadro cuadrodel eliminarcuadro')) {
		$.post(root+'/scripts/cuadroborrar.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadroarriba arriba arribacuadro subir subircuadro cuadrosubir')) {
		$.post(root+'/scripts/cuadroarriba.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('cuadroabajo abajo abajocuadro bajar bajarcuadro cuadrobajar')) {
		$.post(root+'/scripts/cuadroabajo.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('pass password contraseña nachopass safeword swordfish')) {
		$.post(root+'/scripts/pass.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('variable var edit editar editvar')) {
		arg0 = arg.shift(); arg1 = arg.join(' '); $.post(root+'/scripts/var.php',{v:arg0,str:arg1},function(r){log(r.r);},'json');
	} else if(com.es('ping ip whois info server quiensoy cualesmiip')) {
		$.post(root+'/scripts/ip.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('hola quetal hi hello helloworld buenas kiace')) {
		log('Cómo te va.');
	} else if(com.es('bgcolor bg background back fondo colorfondo pintar')) {
		$('body').css('background',lon);
	} else if(com.es('color foreground letras colores trazo linea')) {
		$('.c').css('border-color',lon); $('body').css('color',lon);
	} else if(com.es('title head header pagina page pagetitle')) {
		$('title').html(lon);
	} else if(com.es('upload host subir up justin file archivo load')) {
		log('<form action="'+root+'/scripts/upload.php" method="post" enctype="multipart/form-data" target="_blank"><input type="file" name="file" class="file" onchange="upload(this);"/><input type="hidden" name="name" value="'+lon+'"/></form>');
	} else if(com.es('css style estilo editcss rule regla')) {
		arg0 = arg.shift();	arg1 = arg.shift();	arg2 = arg.join(' '); $(arg0).css(arg1,arg2);
	} else if(com.es('links permalinks permalink toggle togglelinks togglepermalinks')) {
		$('.b a').each(function(i) { temp = $(this).attr('href'); $(this).attr('href',$(this).attr('permalink'));	$(this).attr('permalink',temp);	});	log('Cambiados links por permalinks.');
	} else if(com.es('¿ ? ¿? help ayuda f1 wtf que como cuando donde quien')) {
		$.post(root+'/scripts/help.php',{},function(r){log(r);});
	} else if(com.es('dir ls listar carpeta folder contents archivos directorio')) {
		$.post(root+'/scripts/dir.php',{dir:lon},function(r){log(r);});
	} else if(com.es('del delete eliminar destruir destroy unlink remove')) {
		if(lon=='nacholabs') lon = $('.c2').children('.i').children('img').attr('src');	$.post(root+'/scripts/del.php',{q:lon},function(r){log(r.r);},'json');
	} else if(com.es('muro wall chat libro book firmas msgs visitas')) {
		$.post(root+'/scripts/muro.php',{q:lon},function(r){log(r);});
	} else if(com.es('twitter twitt tweet twit t')) {
		$.post(root+'/scripts/twitter.php',{q:lon},function(r){log(r);});
	} else if(com.es('greader reader read r')) {
		$.post(root+'/scripts/greader.php',{q:lon},function(r){log(r);});
	} else {
		log('No reconozco <i>'+str+'</i>');
	}
}
// mostrar/esconder consola
function toggleConsola() {
	if($('#consola').css('top')=='-100px') {
		$('#consola').animate({top:'0px'},{queue:false,complete:function(){
			$('#input').focus();
		}});
		if($('#output').html()!='') $('#output').slideDown();
	} else {
		$('#input').blur();
		$('#consola').animate({top:'-100px'},{queue:false});
		$('#output').slideUp();
	}
}
// imprimir en output
function log(str) {
	$('#output').slideDown().prepend('<p>'+str+'</p>');
}
// abrir tab/ventana
function ventana(url) {
	window.open(url,Math.random());
}
// buscar comando de lista
String.prototype.es = function(ar) {
	ar=ar.split(' ');
	for(a in ar)
		if(ar[a]==this) return true;
	return false;
}
// mandar upload y esconder form
function upload(t,justin) {
	$(t).parent().submit();
	if(justin!== true) $(t).parent().html('El archivo se debería estar subiendo en una ventana nueva.');
	window.focus();
}
// init
var lastStr = 'echo Tipeando <i>redo</i> en cualquier momento podés repetir el último comando.';
$(function(){
	if($('textarea').length==0) //solo creamos consola si no hay textareas
	$('body').append('<div id="consola"><input type="text" id="input" value=""/><div id="output"></div></div>');
	$('#input').css({width:($('#consola').width()-40)+'px'});
});
$(window).keypress(function(e) {
	if(e.which==13) {
		if($('#input').val()=='') {
			toggleConsola();
		} else {
			consola($('#input').val());
			$('#input').val('');
		}
	}
});
