
    function AC_AddExtension( src, ext ) {
      if (src.indexOf('?') != -1)
        return src.replace(/\?/, ext+'?'); 
      else
        return src + ext;
    }

    function AC_Generateobj( objAttrs, params, embedAttrs ) { 
      var str  = '<object ';
      for ( var i in objAttrs )
        str   += i + '="' + objAttrs[i] + '" ';
      str     += '>';
      for ( var i in params )
        str   += '<param name="' + i + '" value="' + params[i] + '" /> ';
      str     += '<embed ';
      for ( var i in embedAttrs )
        str   += i + '="' + embedAttrs[i] + '" ';
      str     += ' ></embed></object>';
      document.write(str);
    }

    function AC_FL_RunContent( ) {
      var ret = AC_GetArgs (  arguments, '.swf', 'movie', 'clsid:d27cdb6e-ae6d-11cf-96b8-444553540000', 'application/x-shockwave-flash' );
      AC_Generateobj( ret.objAttrs, ret.params, ret.embedAttrs );
    }

    function AC_SW_RunContent(){
      var ret = AC_GetArgs(  arguments, '.dcr', 'src', 'clsid:166B1BCA-3F9C-11CF-8075-444553540000', null );
      AC_Generateobj( ret.objAttrs, ret.params, ret.embedAttrs );
    }

    function AC_GetArgs( args, ext, srcParamName, classid, mimeType ){
      var ret        = new Object();
      ret.embedAttrs = new Object();
      ret.params     = new Object();
      ret.objAttrs   = new Object();
      for ( var i = 0; i < args.length; i = i+2 ) {
        var currArg  = args[i].toLowerCase();    

        switch (currArg){	
          case 'classid':
            break;
          case 'pluginspage':
            ret.embedAttrs[args[i]]        = args[i+1];
            break;
          case 'src':
          case 'movie':	
            args[i+1]                      = AC_AddExtension(args[i+1], ext);
            ret.embedAttrs['src']          = args[i+1];
            ret.params[srcParamName]       = args[i+1];
            break;
          case 'onafterupdate':
          case 'onbeforeupdate':
          case 'onblur':
        case 'oncellchange':
          case 'onclick':
          case 'ondblClick':
          case 'ondrag':
          case 'ondragend':
          case 'ondragenter':
          case 'ondragleave':
          case 'ondragover':
          case 'ondrop':
          case 'onfinish':
          case 'onfocus':
          case 'onhelp':
          case 'onmousedown':
          case 'onmouseup':
          case 'onmouseover':
          case 'onmousemove':
          case 'onmouseout':
          case 'onkeypress':
          case 'onkeydown':
          case 'onkeyup':
          case 'onload':
          case 'onlosecapture':
          case 'onpropertychange':
          case 'onreadystatechange':
          case 'onrowsdelete':
          case 'onrowenter':
          case 'onrowexit':
          case 'onrowsinserted':
          case 'onstart':
          case 'onscroll':
          case 'onbeforeeditfocus':
          case 'onactivate':
          case 'onbeforedeactivate':
          case 'ondeactivate':
          case 'type':
          case 'codebase':
            ret.objAttrs[args[i]]          = args[i+1];
            break;
          case 'width':
          case 'height':
          case 'align':
          case 'vspace': 
          case 'hspace':
          case 'class':
          case 'title':
          case 'accesskey':
          case 'name':
          case 'id':
          case 'tabindex':
            ret.embedAttrs[args[i]]        = ret.objAttrs[args[i]] = args[i+1];
            break;
          default:
            ret.embedAttrs[args[i]]        = ret.params[args[i]] = args[i+1];
        }
      }
      ret.objAttrs['classid']              = classid;
      if (mimeType) ret.embedAttrs['type'] = mimeType;
      return ret;
    }

	function open_window( name, page, params ) {
		window.open( page, 'window_' + name, params );
	}
	function cambiar_anio( anio ) {
		document.reserva.anio.value	= anio;
		document.reserva.submit();
	}

	function rowOverEffect(object) {
		if (object.className == 'row') {
			object.className	= 'row_on';
		}
	}

	function rowOutEffect(object) {
		if (object.className == 'row_on') {
			object.className	= 'row';
		}
	}	
	function textCounter(field,maxlimit,evento) {
		if(in_array(evento.keyCode)){
			return;	
		}
		if (field.value.length > maxlimit){ // if too long...trim it!
				cancelEvent(evento);
				field.value = field.value.substring(0, maxlimit);
				ex=new Array('8','46','37','38','39','40');
		}
	}		
	
	function open_window( name, page, params ) {
		window.open( page, 'window' + name, params );
	}

	function rollOver( object, className ) {
		object.className			= className;
	}

	function uploadImage( type ) {
		open_window( 'image', 'upload_image.php?type=' + type, 'top=200, width=640, height=110, resizable=yes, scrollbars=yes, status=yes' );
	}

	function uploadFile(file) {
		open_window( 'image', file , 'top=200, width=640, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}

	function uploadFoto(tipo) {
		open_window( 'image', 'upload_image.php?ext=jpg&tipo='+tipo, 'top=200, width=320, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}

	function uploadFileSeccion(tipo) {
		open_window( 'image', 'upload_file_seccion.php?ext=*&tipo='+tipo, 'top=200, width=320, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}

	function uploadFotoNoticia(tipo) {
		open_window( 'image', 'upload_image_noticias.php?ext=jpg&tipo='+tipo, 'top=200, width=320, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}

	function uploadGaleria(tipo) {
		open_window( 'image', 'upload_galeria.php?ext=jpg&tipo='+tipo, 'top=200, width=320, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}

	function uploadFotoPrincipal() {
		open_window( 'image', 'upload_fotoPrincipal.php?ext=*&tipo=principal', 'top=200, width=320, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}

	function upload(file,ext,tipo) {
		open_window( 'image', file+'?ext='+ext+'&tipo='+tipo , 'top=200, width=320, height=150, resizable=yes, scrollbars=yes, status=yes' );
	}
	function validateUser( ) {
		if ( document.login.username.value.length && document.login.password.value.length ) {
			document.login.submit();
		}
	}
  	function showIframe(iframe,label){
	  	if(document.getElementById(iframe).style.display=='block'){
			document.getElementById(iframe).style.display='none';
			label.innerHTML="+ "+label.innerHTML.replace('- ','');
		}
		else{
			document.getElementById(iframe).style.display='block';
			label.innerHTML="- "+label.innerHTML.replace('+ ','');
		}
 	 }

	function setOrder( id, current, direction ) {
		document.form.method			= 'GET';
		document.form.pos.value			= current;
		document.form.move.value		= direction;
		document.form.id.value			= id;
		document.form.exec.value		= 'set_order';
		document.form.submit();
	}
	
	function editRecord( id ) {
		document.form.method			= 'POST';
		document.form.exec.value		= 'edit';
		document.form.id.value			= id;
		document.form.submit();
	}
	
	function newRecord( ) {
		editRecord( 0 );
	}

	function changeStatus( id ) {
		document.form.exec.value		= 'status';
		document.form.id.value			= id;
		document.form.submit();
	}
	function changeStatusMain( id ) {
		document.form.exec.value		= 'status_main';
		document.form.id.value			= id;
		document.form.submit();
	}

	function changePrivate( id ) {
		document.form.exec.value		= 'private';
		document.form.id.value			= id;
		document.form.submit();
	}

	function changeNextStatus( id ) {
		document.form.exec.value		= 'next_status';
		document.form.id.value			= id;
		document.form.submit();
	}

	function changeOrderStatus( id, status ) {
		document.form.exec.value		= 'order_status';
		document.form.pos.value			= status;
		document.form.id.value			= id;
		document.form.submit();
	}

	function changeHighlight( id ) {
		document.form.exec.value		= 'highlight';
		document.form.id.value			= id;
		document.form.submit();
	}

	function changeWineOfTheMonth( id ) {
		document.form.exec.value		= 'wine_of_the_month';
		document.form.id.value			= id;
		document.form.submit();
	}

	function confirmDrop( id, confirmed ) {
		if ( confirm( 'Está seguro que desea eliminar el contenido seleccionado?' ) ) {
			document.form.exec.value	= 'drop';
			document.form.confirm.value	= 1;
			document.form.id.value		= id;
			document.form.submit();
		}
	}
	
	function confirmCategoryDrop( id, confirmed ) {
		if ( confirm( 'Está seguro que desea eliminar la categoría seleccionada?.\nSe elmininarán también todos las comercios asociados a la misma.' ) ) {
			document.form.exec.value	= 'drop';
			document.form.confirm.value	= 1;
			document.form.id.value		= id;
			document.form.submit();
		}
	}

	function confirmSubcategoryDrop( id, confirmed ) {
		if ( confirm( 'Está seguro que desea eliminar la subcategoría seleccionada?.\nSe elmininarán también todos los productos asociados a la misma.' ) ) {
			document.form.exec.value	= 'drop';
			document.form.confirm.value	= 1;
			document.form.id.value		= id;
			document.form.submit();
		}
	}

	function confirmImageDrop( image ) {
		if ( confirm( 'Está seguro que desea eliminar la imagenseleccionada?' ) ) {
			document.form.exec.value	= 'drop_image';
			document.form.image.value	= image;
			document.form.submit();
		}
	}

	function acceptContent( ) {
		document.form.exec.value		= 'save';
		document.form.submit();
	}

	function setViewStatus( ) {
		document.form.submit();
	}

	function updateCurrencies( ) {
		document.form.exec.value		= 'update_currencies';
		document.form.submit();
	}

	function cancelContent( ) {
		window.location.href			= self.location;
	}

	function checkTextLength(l){
		aux=new String();
		aux=event.srcElement.value;
		if(aux.length>=l){
			event.returnValue=false;
		}
	}
	
	function checkForm(frm,arr){ //(formulario, array de excepciones)
		var aux="";
			for(var i=0;i<document.getElementById(frm).elements.length;i++){
       			if(document.getElementById(frm).elements[i].type == "password" || document.getElementById(frm).elements[i].type == "text" || document.getElementById(frm).elements[i].type == "select"  || document.getElementById(frm).elements[i].type == "textarea" || document.getElementById(frm).elements[i].type == "select-one" || document.getElementById(frm).elements[i].type == "select multiple"){
		       		if(!in_array(arr,document.getElementById(frm).elements[i].name)){ 
						//document.frmOp.elements[i].checked = true;
						if(document.getElementById(frm).elements[i].value==""){
							aux=aux+"\n"+document.getElementById(frm).elements[i].name;
						}
					}
				}	
		   }
		   if(aux!=""){
				aux="Debe completar los campos:" + aux;
			   	alert(aux);
				return false;
		   }
		   else{
				return true;
		   }	
	}	
	
	function checkFormFields(frm,arr){ //(formulario, array de campos a validar)
		var aux="";
			for(var i=0;i<document.getElementById(frm).elements.length;i++){
       			if(document.getElementById(frm).elements[i].type == "password" || document.getElementById(frm).elements[i].type == "text" || document.getElementById(frm).elements[i].type == "select"  || document.getElementById(frm).elements[i].type == "textarea" || document.getElementById(frm).elements[i].type == "select-one" || document.getElementById(frm).elements[i].type == "select multiple"){
		       		if(in_array(arr,document.getElementById(frm).elements[i].name)){ 
						if(document.getElementById(frm).elements[i].value==""){
							aux=aux+"\n"+document.getElementById(frm).elements[i].name;
						}
					}
				}	
		   }
		   if(aux!=""){
				aux="Debe completar los campos:" + aux;
			   	alert(aux);
				return false;
		   }
		   else{
				return true;
		   }	
	}	

	function in_array(mat,field){
			var i;
			for(i=0;i<mat.length;i++){
				if(mat[i].toLowerCase()==field.toLowerCase()){
					return true;
				}	
			}
			return false;	
	}


	function eventTrigger (e) {
	    	if (! e) e = event;
		    return e.target || e.srcElement;
	}
		
	function cancelEvent(e){
			if(navigator.userAgent.indexOf("MSIE")!=-1){
				e.returnValue=0;	
			}
			if(navigator.userAgent.indexOf("Gecko")!=-1){
				e.preventDefault();	
			}
	}
	function validateExtensions(file,ext,evt){
		var auxext=new String(file);
		var extPosibles;
		for (var i=0;i<ext.length;i++){
			if(i==0){
				extPosibles=ext[i];
			}
			else{
				extPosibles += ","+ext[i];
			}
		}
		auxext=auxext.substring(auxext.lastIndexOf('.')+1);
		if(!in_array(ext,auxext)){
			alert ("Sólo se admiten las siguientes extensiones: \n"+extPosibles);
			cancelEvent(evt);	
		}
		else{
			return true;	
		}
	
	}
//------------------------ORDENAMIENTO DE IMAGENES -------------------------------------------
var origen='',destino='',origenDiv,destinoDiv;
function orderFoto(src){
	//alert(src);
	if(origen == ''){
		origen=src
		origenDiv=document.getElementById('documento_'+src);
		var img=document.getElementById(src +'_img');
		img.style.border='solid';
		img.style.borderColor='blue';
		img.style.borderWidth='1px';
	}
	else{
		if(src!=origen){
		origenDiv=document.getElementById('documento_'+origen);
		destino=src;
		destinoDiv=document.getElementById('documento_'+destino);
		var auxInner=origenDiv.innerHTML;
		origenDiv.innerHTML=destinoDiv.innerHTML;
		destinoDiv.innerHTML=auxInner;
		//cambio id's
		origenDiv.id='documento_'+destino;
		destinoDiv.id='documento_'+origen;
		//cambiar indices
		var auxIndexOrigen=document.getElementById(origen+'_index').value;
		var auxIndexDestino=document.getElementById(destino+'_index').value;
		document.getElementById(origen +'_index').value=auxIndexDestino;
		document.getElementById(destino +'_index').value=auxIndexOrigen;
		//quito recuadro de selección
		var img=document.getElementById(origen +'_img');
		img.style.border='solid';
		img.style.borderColor='#9573a6';
		img.style.borderWidth='1px';
		document.getElementById('iframeControl').src='_ajax_manageFiles.php?opc=order&origen='+origen+'&destino='+destino+'&origenIndex='+auxIndexDestino+'&destinoIndex='+auxIndexOrigen;
		origen='';
		destino='';
		origenDiv='';
		destinoDiv='';
		}
		else{
			origen='';
			origenDiv=null;
			var img=document.getElementById(src +'_img');
			img.style.border='solid';
			img.style.borderColor='#9573a6';
			img.style.borderWidth='1px';
		}
	}
}
//------------------------ORDENAMIENTO DE IMAGENES -------------------------------------------
var origen='',destino='',origenDiv,destinoDiv;
function orderGaleria(src){
	//alert(src);
	if(origen == ''){
		origen=src
		origenDiv=document.getElementById('documento_'+src);
		var img=document.getElementById(src +'_img');
		img.style.border='solid';
		img.style.borderColor='blue';
		img.style.borderWidth='1px';
	}
	else{
		if(src!=origen){
		origenDiv=document.getElementById('documento_'+origen);
		destino=src;
		destinoDiv=document.getElementById('documento_'+destino);
		var auxInner=origenDiv.innerHTML;
		origenDiv.innerHTML=destinoDiv.innerHTML;
		destinoDiv.innerHTML=auxInner;
		//cambio id's
		origenDiv.id='documento_'+destino;
		destinoDiv.id='documento_'+origen;
		//cambiar indices
		var auxIndexOrigen=document.getElementById(origen+'_index').value;
		var auxIndexDestino=document.getElementById(destino+'_index').value;
		document.getElementById(origen +'_index').value=auxIndexDestino;
		document.getElementById(destino +'_index').value=auxIndexOrigen;
		//quito recuadro de selección
		var img=document.getElementById(origen +'_img');
		img.style.border='solid';
		img.style.borderColor='#9573a6';
		img.style.borderWidth='1px';
		document.getElementById('iframeControl').src='_ajax_manageGaleria.php?opc=order&origen='+origen+'&destino='+destino+'&origenIndex='+auxIndexDestino+'&destinoIndex='+auxIndexOrigen;
		origen='';
		destino='';
		origenDiv='';
		destinoDiv='';
		}
		else{
			origen='';
			origenDiv=null;
			var img=document.getElementById(src +'_img');
			img.style.border='solid';
			img.style.borderColor='#9573a6';
			img.style.borderWidth='1px';
		}
	}
}