
/*
 * asigna un parametro asignado en el action de un form al valor deseado (permite cambiar dinamicamente los parametros del action).
 */
function set_form_action_param(attr_key,attr_value) {
				var form_node=$("form");
				var action_text=form_node.attr("action");
				
        action_text=action_text.replace(/action=[a-zA-Z_]*/g,attr_key+"="+attr_value);

        $(form_node).attr("action",action_text);
}


function xsite_toggle(element) {	
	if ($(element).css("display")=="none") {		
		$(element).fadeIn(500);
	} else {
		$(element).fadeOut(250);
	}
}

function xsite_setup_toggle(node) {
		$(node).click(
			function(){ xsite_toggle($(this).next());return false; }
		);	 //ocultamos aquellos que hace falta la primera vez que se carga.			
		$(node).each(function(i) {
			if (i>0) $(this).next().hide(); //ocultamos el panel.
		});
}

$(document).ready(function(){	
  $("[class='date']").datepicker();				        	
	xsite_setup_toggle($("[class='title2']"));
});


function form_submit() {
	document.forms[0].submit();
	return false;
}


// MANEJO DE IMAGENES

function free_tag(tag) {    
  var e=document.getElementById("xnote_detail");  
  i=1;
  for (i=1;i<=40;i++) {
    var exp="_"+tag+i+"_";
    if (e.value.indexOf(exp)==-1) break;
  }   
  return "_"+tag+i+"_";
}

function editor_style_insert(tag) {    
	editor_style_set(tag,free_tag(tag),'');    
	return false;
} 


function editor_style_apply(tag){      
  	editor_style_set(tag,'_'+tag+' ',' '+ tag+'_');    
  	return false;
}

function editor_style_set(tag,startTag,endTag){       		
    var myField=document.getElementById("xnote_detail");    

    if (document.selection) {//IE support
        myField.focus();
        sel = document.selection.createRange();        
        sel.text = applyTagAux(tag,sel.text);        
    } else if (myField.selectionStart || myField.selectionStart == '0') { //Mozilla/Firefox/Netscape 7+ support
        var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        myField.value = myField.value.substring(0, startPos) + applyTagAux(tag,myField.value.substring(startPos, endPos),startTag,endTag) + myField.value.substring(endPos, myField.value.length);        
    } else {
        myField.value += myValue;
    }   
}


function applyTagAux(tag, text,startTag,endTag){	
    var txt= trim(text);
    var aux1=txt.substring(0,startTag.length);
    var aux2=txt.substring(txt.length-endTag.length,txt.length);
    
    if (aux1==startTag && aux2==endTag)
    { // si comienza y termina con el tag, lo saco
        txt= txt.substring(startTag.length , txt.length - endTag.length );
    }
    else{ // hay que agregar el tag a text (sin trim)
        txt= startTag + text + endTag;
    }
    return txt
}

function trim(stringValue)
{
    return stringValue.replace(/(^\s*|\s*$)/, "");
}

function insertAtSelection(myStartValue,myEndValue) {    
    var myField=document.getElementById("textDescripcion");    
    if (document.selection) {//IE support
        myField.focus();
        sel = document.selection.createRange();        
        sel.text = myStartValue+sel.text+myEndValue;        
    } else if (myField.selectionStart || myField.selectionStart == '0') { //Mozilla/Firefox/Netscape 7+ support
        var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        myField.value = myField.value.substring(0, startPos)+ myStartValue+myField.value.substring(startPos, endPos)+ myEndValue+myField.value.substring(endPos, myField.value.length);        
    } else {
        myField.value += myValue;
    }
} 



function file_save(elem,id) {
	var scale=$(elem).parent().parent().find("[name='scale']").attr("value");		
	node_reload("#files","file/files","file_save","file_id="+id+"&scale="+scale);		
	return false;
}


function node_reload(selector,template,action,extras) {
	var param="";
	if (template!=null) {
		param+="template="+template;
	}
	
	if (action!=null) {
		param+="&action="+action;
	}
	
	if (extras!=null) {
		param+="&"+extras;
	}
	
	$.ajax(
	{
	        type: "POST",
	        url: "inc.php",
	        data: param,
	        success: function(content) {
	        	var old=$(selector);
	        	var prev=$(old).prev();
	        	$(old).remove();
	        	$(prev).after($(content));
	        }
	});
	return false;
}

function file_remove(id) {
	if (confirm('¿está seguro de querer quitar este archivo?')) { 
		node_reload("#files","file/files","file_remove","id="+id);
	}
	return false;	
}
