function infoBox(e, txt) {
    var contenedor = new Element('div', {'class':'info_box', 'id':e.id+'_infobox'});
    var contenido = new Element('div', {'class':'info_box_cont'});
    var cumulativeOffsetT = e.cumulativeOffset()[1];
    var cumulativeOffsetL = e.cumulativeOffset()[0];
    var posL = getPosL(cumulativeOffsetL, e)+e.offsetWidth;
    
    contenido.innerHTML = txt;
    contenedor.insert(contenido);
    contenedor.style.left = posL+'px';
    $('body').insert(contenedor);
    var posT = getPosT(cumulativeOffsetT, e)-(contenedor.offsetHeight/2)+(e.offsetHeight/2);
    contenedor.style.top = posT+'px';
    contenedor.style.display='none';
    contenedor.appear({ duration: 0.5 });
}

function infoBoxDestroy(e) {

    new Effect.Fade(e.id+'_infobox', {duration: 0.5, afterFinish: function () {$(e.id+'_infobox').remove();}} );
}

function getPosT(posicionTop, capa) {
    var posicionRespectoViewport = posicionTop - document.viewport.getScrollOffsets()[1] + capa.offsetHeight;
    if (posicionRespectoViewport > document.viewport.getDimensions().height) {
        posicionTop = document.viewport.getDimensions().height + document.viewport.getScrollOffsets()[1] - capa.offsetHeight;
    }
    return posicionTop;
}

function getPosL(posicionLeft, capa) {
    var posicionRespectoViewport = posicionLeft - document.viewport.getScrollOffsets()[0] + capa.offseWidth;
    if (posicionRespectoViewport > document.viewport.getDimensions().width) {
        posicionLeft = document.viewport.getDimensions().width + document.viewport.getScrollOffsets()[0] - capa.offsetWidth;
    }
    return posicionLeft;
}

function anunShowPas(p) {

    $('boton_paso_'+paso).className = 'boton_pasos';
    $('boton_paso_'+p).className = 'boton_pasos canun_pasos_focus';
    
    Effect.Fade('paso_'+paso,{duration: 0.3, queue: 'end'});
    Effect.Appear('paso_'+p,{duration: 0.3, queue: 'end'})
    
    paso = p;
}

function loadYTiFrame(id) {
    if (id.length > 0)  {
        $('video_box').style.display='block';
        $('iframe_youtube').src = 'http://www.youtube.com/embed/'+id
    } else {
        $('video_box').style.display='none';
        $('iframe_youtube').src = '';
    }
}

function SWFqueueComplete() {
    var url = SWFRoot+'site/crearAnuncioPics/'+SWFAnun;
    cargar(url, 'anunciosPics');
}


function cargar(url, e) {
    new Ajax.Updater(
			 e,url,
			 {
				asynchronous:true,
				evalScripts:true,
                onLoading:function(request, json)
				{
					
                },
				onComplete:function(request, json)
				{
					
                },
                requestHeaders:['X-Update', e]
			}
		);
}

function setCatAnun(padre, val, cat, anun, exp, up, m) {
   
    if (padre) {
        var precursor = $(cat).parentNode.parentNode.id;
        var precursor_id = precursor.replace('hijos_', '');
        var desactivar = true;
        var precursor_checked = false;
        var inputs = $A($(precursor).getElementsByTagName('input'));
        inputs.each( function(o) {if (o.checked && o.id != cat) { desactivar=false; } });
        if (desactivar) {
            $(precursor_id).disabled=val;
        }
        var hermanos = $$('.hijo_'+padre);
        hermanos.each( function(o) {
            if (o.firstChild.nextSibling.id != cat) {
                if (val) {
                    o.firstChild.nextSibling.checked = false;
                    o.firstChild.nextSibling.disabled = true;
                } else {
                    o.firstChild.nextSibling.checked = false;
                    o.firstChild.nextSibling.disabled = false;
                }
            }
        });
    } else {
        var principales = $$('.principal');
        principales.each( function(o) {
            if (o.firstChild.nextSibling.id != cat) {
                if (val) {
                    o.firstChild.nextSibling.checked = false;
                    o.firstChild.nextSibling.disabled = true;
                } else {
                    o.firstChild.nextSibling.checked = false;
                    o.firstChild.nextSibling.disabled = false;
                }
            }
        });
    }
    if (exp>0) {
        if (val) {        
            Effect.BlindDown('hijos_'+cat, {duration: 0.3, queue: 'end'});
        } else {
            Effect.BlindUp('hijos_'+cat, {duration: 0.3, queue: 'end'});
        }
    }
    
    switch (m) {
        case 1:
            if (up) {
                var accion = (val) ? 1 : 2;
                var url = '/site/crearAnuncioCatSave/'+anun+'/'+cat+'/'+accion
                cargar(url, 'anunioCatsDump');
            }
        break;
    
        case 2:
            var url = '/site/crearAnuncioSaveCatMilanuncios/'+anun+'/'+cat
            cargar(url, 'anunioCatsDump');
        break;
    }
}

function resetCatsAnun() {
    var inputs = $A($(menuCats).getElementsByTagName('input'));
    inputs.each( function(o) {
        if (o.checked) {
            try {
                Effect.BlindUp('hijos_'+o.id, {duration: 0.3, queue: 'end'});
            } catch(e) {}
        }
        o.checked = false;
        o.disabled = false;
    });
}

function prepareShowCatAnun(ids) {
    var cats = ids.split(';');
    cats.each( function(o) { if (o.length>0) showCatAnun(o) });
}

function showCatAnun(id) {
    if ($('hijos_'+id)) {
        $('hijos_'+id).style.display='block';
    }
    $(id).checked = true;
    var precursor = $(id).parentNode.parentNode.id;
    if (precursor!='menuCats') {
        var precursor_id = precursor.replace('hijos_', '');
        var desactivar = true;
        var inputs = $A($(precursor).getElementsByTagName('input'));
        inputs.each( function(o) { if (o.checked && o.id != id) { desactivar=false; } });
        if (desactivar) {
            $(precursor_id).disabled=1;
        }
        var hermanos = $$('.hijo_'+precursor_id);
        hermanos.each( function(o) {
            if (o.firstChild.nextSibling.id != id) {
                o.firstChild.nextSibling.checked = false;
                o.firstChild.nextSibling.disabled = true;
            }
        });
    } else {
        var principales = $$('.principal');
        principales.each( function(o) {
            if (o.firstChild.nextSibling.id != id) {
                o.firstChild.nextSibling.checked = false;
                o.firstChild.nextSibling.disabled = true;
            }
        });
    }
}

function anunFin(id) {
    if ($('publicar_ahora').checked) {
        location.href='/site/publicarAnuncio/'+id;
    } else {
        location.href='/site/misAnuncios';
    }
}

function transProds(s) {
    if (s) {
        new Effect.Parallel([
            new Effect.Move('productosLayout', { sync: true, x: -775, y: 0, mode: 'relative' }),
            new Effect.Opacity('productosLayout', { sync: true, from: 1, to: 0 })
        ], {
            duration: 0.2
        });
    } else {
        new Effect.Parallel([
            new Effect.Move('productosLayout', { sync: true, x: -775, y: 0, mode: 'relative' }),
        ], {
            duration: 0.2
        });
    }
}

function catFiltPais(pais, cat) {
    if (pais=='null') {
	var url = '/categoria/'+cat;
    } else {
	var url = '/categoria/'+cat+'/pais:'+pais;
    }
    cargar(url, 'contendorProductos');
}

function catFiltProv(prov, cat) {
    if (prov=='null') {
	var url = '/categoria/'+cat+'/pais:1';
    } else {
	var url = '/categoria/'+cat+'/prov:'+prov;
    }
    cargar(url, 'contendorProductos');
}


function setProvAnun(e, anuncio) {
    var val = (e.checked) ? 1 : 2;
    var url = '/site/crearAnuncioSaveProvMilanuncios/'+anuncio+'/'+e.id+'/'+val;
    //alert(url);
    cargar(url, 'dumpProvs');
}


function selProvs(s, anuncio) {
    if (s) {
        var url = '/site/crearAnuncioSaveProvMilanuncios/'+anuncio+'/1/3';
        cargar(url, 'dumpProvs');
        $$(".check_prov").each( function(input) {input.checked = true;});
    } else {
        var url = '/site/crearAnuncioSaveProvMilanuncios/'+anuncio+'/1/4';
        cargar(url, 'dumpProvs');
        $$(".check_prov").each( function(input) {input.checked = false;});
    }
}

function saveAjaxInPlace(l) {
    $$(".editor_ok_button").each(
	function(e) {
	    e.click();
	}
    );
    if (l)
	setTimeout('location.href="'+l.href+'"', 1000);
}
