Tengo unas librerias que me baje de http://prototype-window.xilinus.com y mi idea es hacer que la botonera del sitio este dentro de una de esas ventanas. La ventana ya la tengo hecha, diseño y contenido, pero lo que quiero hacer y no se como es usar la funcion setCookie que trae para poder guardar una cookie que recuerde la posición y el tamaño de la ventana mientras navegues por el sitio.
PHP:
Código :
<script type="text/javascript" language="Javascript"> function ventana_text(){ var text = '<ul id="menu">' + '<li><a href="">Noticias</a></li>' + '<li><a href="">Fechas</a></li>' + '<li><a href="">Bandas</a></li>' + '<li><a href="">Salas</a></li>' + '<li><a href="">Comentarios</a></li>' + '</ul>'; var win = new Window("content_win",{ className: "hds", width: 200, height: 200, zIndex: 100, left: 100, top: 120, resizable: true, closable: false, maximizable: false, title: "MENU", draggable:true, wiredDrag: true }) win.setCookie("", 1000, "/cartelera_rock/web/intranet/", "localhost", true); win.getContent().innerHTML= text; win.setStatusBar("CarteleraRock.com.ar"); win.show(); } </script>
setCookie y getCookie en .js:
Código :
setCookie: function(name, expires, path, domain, secure) { name = name || this.element.id; alert("name: "+name+" - expires: "+expires+" - path: "+path+" - domain: "+domain+" - secure: "+secure); this.cookie = [name, expires, path, domain, secure]; alert(this.cookie); // Get cookie var value = WindowUtilities.getCookie(name) // If exists if (value) { var values = value.split(','); var x = values[0].split(':'); var y = values[1].split(':'); var w = parseFloat(values[2]), h = parseFloat(values[3]); var mini = values[4]; var maxi = values[5]; this.setSize(w, h); if (mini == "true") this.doMinimize = true; // Minimize will be done at onload window event else if (maxi == "true") this.doMaximize = true; // Maximize will be done at onload window event this.useLeft = x[0] == "l"; this.useTop = y[0] == "t"; this.element.setStyle(this.useLeft ? {left: x[1]} : {right: x[1]}); this.element.setStyle(this.useTop ? {top: y[1]} : {bottom: y[1]}); } }, setCookie: function(value, parameters) { alert("value: "+value+"\nparams: "+parameters); document.cookie= parameters[0] + "=" + escape(value) + ((parameters[1]) ? "; expires=" + parameters[1].toGMTString : "") + ((parameters[2]) ? "; path=" + parameters[2] : "") + ((parameters[3]) ? "; domain=" + parameters[3] : "") + ((parameters[4]) ? "; secure" : ""); }, getCookie: function(name) { var dc = document.cookie; var prefix = name + "="; var begin = dc.indexOf("; " + prefix); if (begin == -1) { begin = dc.indexOf(prefix); if (begin != 0){ return null; } } else { begin += 2; } var end = document.cookie.indexOf(";", begin); alert(end); if (end == -1) { end = dc.length; } return unescape(dc.substring(begin + prefix.length, end)); },
El problema esta en que no crea la cookie ya que cuando hago un alert de document.cookie me lo devuelve vacío. No se si con el setCookie que le paso a win bastará o tengo que utilizar PHP para crearlo.
Cualquier tipo de ayuda sera muy bien recibida. Gracias