PDA

Ver la Versión Completa : Numerar trucos


Casimiro Notevi
21-06-2006, 23:43:27
Buenas noches, ... ¡camarero!, un helado de tutti frutti, please...

Bien, una sugerencia: al igual que los foros están numerados mediante su "hilo", ¿sería posible numerar también los trucos?, lo digo porque cuando alguien haga una pregunta en los foros y sea contestable mediante el pertinente truco, el poder decir: "mira el truco nº xxx", porque ahora está más complicadillo dirigir a alguien a los trucos.

Y ya me acabo mi helado y me voy, que mañana hay que madrugar, hasta mañana.

Emilio
21-06-2006, 23:53:35
Oído cocina, una numeración de trucos para la mesa seis, marchando.

Emilio
22-06-2006, 00:01:38
Ya salió de cocina la numeración de trucos para la mesa seis ;)

Casimiro Notevi
22-06-2006, 08:59:07
¡¡¡ qué velocidad !!!, me voy a dormir y cuando me levanto ya está lista la petición..... :eek:

Esto se merece una buena propina, ¡¡¡ camarero !!!, el cambio... para el bote !!!

Lepe
22-06-2006, 10:10:48
Ya que estamos con helados... uno chocolate / trufa / vainilla.

Poyaque estamos pidiendo, ¿Que tal un Top Trucos? (trucos más visitados). Quizás los 10 / 20 trucos más visitados ¿? (sirva tambien de debate la preguntita)

OFFtopic: "Poyaque" es una abreviatura típica del sur de españa, abrevia la frase "Pues ya que"; se suele aplicar cuando queremos decir: "Pues ya que has hecho esto... haz lo otro" (además quiere decir que se haga por el mismo precio, sin cobrar más :D)

Saludos

Sick boy
22-06-2006, 12:18:59
Muy bueno lo de la numeración, aunque me tiene descolocado desde el primer día la ordenación de los trucos. Tardo un rato en saber que trucos son nuevos y cuales ya he leido, ya que me parece que se mezclan.

Una solución, que se puedan ordenar los resultados pinchando en el titulo de la columna.

Y otra cosa que me tiene loco es que no puedo abrir los resultados en una nueva pestaña (uso FireFox) lo cual es muy, muy comodo.
Para resolverlo, habria que cambiar el onclick="vertruco('xx')" por un <a href='......', de modo que el link fuese un enlace y no la respuesta a un evento.

Además, de esta forma google indexará las paginas de los trucos.
Corregirme si me equivoco, pero creo que google no indexa paginas referenciadas mediante javascript, verdad??

Es muy facil pedir, asi que ofrezco mi ayuda ya que tengo experiencia con PHP y javascript.

Por cierto, acabo de descubrir un fallo de seguridad que intentaré postear en privado al moderador.

Saludos

Casimiro Notevi
22-06-2006, 12:19:00
Ya que estamos con helados... uno chocolate / trufa / vainilla.

Poyaque estamos pidiendo, ¿Que tal un Top Trucos? (trucos más visitados). Quizás los 10 / 20 trucos más visitados ¿? (sirva tambien de debate la preguntita)

OFFtopic: "Poyaque" es una abreviatura típica del sur de españa, abrevia la frase "Pues ya que"; se suele aplicar cuando queremos decir: "Pues ya que has hecho esto... haz lo otro" (además quiere decir que se haga por el mismo precio, sin cobrar más :D)

Saludos

creí que los "poyaque" eran en todos lados :D

por cierto, Lepe, eres de Lepe?

turminator
22-06-2006, 13:27:57
Se podria meter algun sistema que avisara de lo los comentarios de los trucos, ya que si no vas mirando uno a uno, no hay forma de saber si alguien ha comentado algo. Se podria hacer una columa de comentario, con la fecha, si la hay, del ultimo. Que os parece?

Casimiro Notevi
22-06-2006, 13:43:03
Se podria meter algun sistema que avisara de lo los comentarios de los trucos, ya que si no vas mirando uno a uno, no hay forma de saber si alguien ha comentado algo. Se podria hacer una columa de comentario, con la fecha, si la hay, del ultimo. Que os parece?

perfecto, lo veo muy necesario

Lepe
22-06-2006, 15:33:23
creí que los "poyaque" eran en todos lados :D

Bueno no sé yo en America latina :confused:. En un hilo anterior usé la palabra cachondeo.... y parece que tenía connotaciones sexuales por allá, por eso ahora lo he "traducido"

por cierto, Lepe, eres de Lepe?
tú que crees??, los programadores no somos muy originales :p

Saludos ;)

Lepe
22-06-2006, 15:41:38
Una solución, que se puedan ordenar los resultados pinchando en el titulo de la columna.


Actualmente, antes de hacer la búsqueda, tienes una casilla de verificación para ordenar opr fecha / Autor / titulo, falta la opción recien añadida de "Por nº de truco", pero supongo que se hará con más tiempo.

Por cierto Emilio, además de la Batería, también te gusta el WindSurf ??, está un poquito escondido el link... pero se vé ;)

Saludos

Casimiro Notevi
22-06-2006, 19:01:31
Bueno no sé yo en America latina :confused:. En un hilo anterior usé la palabra cachondeo.... y parece que tenía connotaciones sexuales por allá, por eso ahora lo he "traducido"
tú que crees??, los programadores no somos muy originales :p
Saludos ;)

pues parece que a veces no mucho :)

Emilio
22-06-2006, 19:17:35
Por cierto Emilio, además de la Batería, también te gusta el WindSurf ??

Lo he practicado en alguna ocasión pero no soy ni he sido aficionado, como si lo he sido al sky, parasailing y vuelo en globo, ya sólo me falta lo otro :D

Ahora ya sólo me queda tiempo para la batería.

Por cierto que casi todas las fotos de la página de windsurf (http://www.totalwind.net)están hechas frente a mi casa :)

Un deporte apasionante (http://www.totalwind.net/galeria/v/mallorca-surf-action/2005/foto-mallorca-surf-action-2005-0026.jpg.html)

vtdeleon
22-06-2006, 23:09:57
Bueno no sé yo en America latina .No lo he escuchado, no creo que tenga mas significado que el que comentas:).
Un deporte apasionante (http://www.totalwind.net/galeria/v/mallorca-surf-action/2005/foto-mallorca-surf-action-2005-0026.jpg.html)Y entretenido :D:D

Emilio
29-06-2006, 10:46:38
Muy bueno lo de la numeración, aunque me tiene descolocado desde el primer día la ordenación de los trucos. Tardo un rato en saber que trucos son nuevos y cuales ya he leido, ya que me parece que se mezclan.

El orden es cronológico, los más recientes siempre primero. Si un truco ha sido editado o revisado por el autor, entonces le cambia la fecha a la de la última revisión.

Una solución, que se puedan ordenar los resultados pinchando en el titulo de la columna.

Pues sí, lo tendré en cuenta.

Y otra cosa que me tiene loco es que no puedo abrir los resultados en una nueva pestaña (uso FireFox) lo cual es muy, muy comodo.
Para resolverlo, habria que cambiar el onclick="vertruco('xx')" por un <a href='......', de modo que el link fuese un enlace y no la respuesta a un evento.

Para resolverlo es bastante más sencillo, configuras tu Firefox para que abrá en una pestaña nueva y listo, por cierto que debes haberlo tocado, creo que es la configuración por defecto.

Además, de esta forma google indexará las paginas de los trucos.
Corregirme si me equivoco, pero creo que google no indexa paginas referenciadas mediante javascript, verdad??

Ese es un tema que ya hemos debatido en el foro de moderadores y no hemos llegado a una conclusión satisfactoria para todos.

Es muy facil pedir, asi que ofrezco mi ayuda ya que tengo experiencia con PHP y javascript.

ok, lo que se pretende es no perder el efecto cambiante de color onMouseOver sobre el TR y que a su vez se pueda hacer clic en toda la zona del TR para abrir los enlaces, además tener la opción de que sobre alguna de sus celdas se abrá otro enlace distinto, esto último es útil para que los moderadores, así tienen un enlace directo para poder editar.

Si tienes una solución que cumpla con todo eso y con los navegadores principales te damos un 10 ;)

Sick boy
29-06-2006, 11:47:40
Puede que haya modificado la configuración de mi firefox, pero ahora esta como me gusta :D :D :D

ok, lo que se pretende es no perder el efecto cambiante de color onMouseOver sobre el TR y que a su vez se pueda hacer clic en toda la zona del TR para abrir los enlaces, además tener la opción de que sobre alguna de sus celdas se abrá otro enlace distinto, esto último es útil para que los moderadores, así tienen un enlace directo para poder editar.
Acepto el reto !!!
De momento, tengo ese efecto implementado para navegadores explorer.
Lo he probado con firefox, y no funciona, pero voy a intentar modificarlo.
Creo que es posible hacerlo, porque recuerdo haber visto alguna pagina donde mi firefox si que funcionaba.....

Saludos

Emilio
29-06-2006, 11:54:48
Se podria meter algun sistema que avisara de lo los comentarios de los trucos, ya que si no vas mirando uno a uno, no hay forma de saber si alguien ha comentado algo. Se podria hacer una columa de comentario, con la fecha, si la hay, del ultimo. Que os parece?

ok, pues ya tienes tu columna con el número de comentarios de cada uno de los trucos, no he puesto la fecha del último comentario porque ya ocupamos un ancho demasiado grande para algunas resoluciones de pantalla.

Emilio
29-06-2006, 11:59:34
Acepto el reto !!!

Así me gusta, con dos pares de... :rolleyes:

De verdad me alegra ver que la gente acepte retos y de paso que eche una mano que no viene mal.

De momento, tengo ese efecto implementado para navegadores explorer.

Eso no vale, el Explorer se lo traga todo, es más, está hecho para explorer sin ningún problema, basta con meter el table o el tr dentro de href y funciona perfectamente.

Lo he probado con firefox, y no funciona, pero voy a intentar modificarlo.
Creo que es posible hacerlo, porque recuerdo haber visto alguna pagina donde mi firefox si que funcionaba.....

Sin duda hay una solución, sólo falta dedicarle más tiempo del que yo he podido dedicarle que no es poco.

Emilio
29-06-2006, 12:06:53
Actualmente, antes de hacer la búsqueda, tienes una casilla de verificación para ordenar opr fecha / Autor / titulo, falta la opción recien añadida de "Por nº de truco", pero supongo que se hará con más tiempo.

Hecho, ya hay checkbox para ordenar por número.

JavierB
29-06-2006, 12:31:22
Si tienes una solución que cumpla con todo eso y con los navegadores principales te damos un 10


<html>
<head>
<style type="text/css">
td {border:1px solid black}
td a {width:100%; display:block}
td a:hover {background:red}
</style>
</head>
<body>
<table>
<tr>
<td style="width:120px">
<a href="algo.html">Enlace</a>
</td>
</tr>
</table>
</body>
</html>

Si funciona, me conformo con un "gracias"

Saludos, :cool:

Emilio
29-06-2006, 12:45:50
No está mal, pero eso funciona con TD, la intención es que funcione con el TR o con el TABLE.

De todas formas las gracias por supuesto que ya las tienes ;)

Sick boy
29-06-2006, 14:20:47
Ya recorde donde lo habia visto, esta en PHPMyAdmin !!!!!!!

Esta es la función javascript:

/**
* This array is used to remember mark status of rows in browse mode
*/
var marked_row = new Array;


/**
* Sets/unsets the pointer and marker in browse mode
*
* @param object the table row
* @param integer the row number
* @param string the action calling this script (over, out or click)
* @param string the default background color
* @param string the color to use for mouseover
* @param string the color to use for marking a row
*
* @return boolean whether pointer is set or not
*/
function setPointer(theRow, theRowNum, theAction, theDefaultColor, thePointerColor, theMarkColor)
{
var theCells = null;

// 1. Pointer and mark feature are disabled or the browser can't get the
// row -> exits
if ((thePointerColor == '' && theMarkColor == '')
|| typeof(theRow.style) == 'undefined') {
return false;
}

// 2. Gets the current row and exits if the browser can't get it
if (typeof(document.getElementsByTagName) != 'undefined') {
theCells = theRow.getElementsByTagName('td');
}
else if (typeof(theRow.cells) != 'undefined') {
theCells = theRow.cells;
}
else {
return false;
}

// 3. Gets the current color...
var rowCellsCnt = theCells.length;
var domDetect = null;
var currentColor = null;
var newColor = null;
// 3.1 ... with DOM compatible browsers except Opera that does not return
// valid values with "getAttribute"
if (typeof(window.opera) == 'undefined'
&& typeof(theCells[0].getAttribute) != 'undefined') {
currentColor = theCells[0].getAttribute('bgcolor');
domDetect = true;
}
// 3.2 ... with other browsers
else {
currentColor = theCells[0].style.backgroundColor;
domDetect = false;
} // end 3

// 3.3 ... Opera changes colors set via HTML to rgb(r,g,b) format so fix it
if (currentColor.indexOf("rgb") >= 0)
{
var rgbStr = currentColor.slice(currentColor.indexOf('(') + 1,
currentColor.indexOf(')'));
var rgbValues = rgbStr.split(",");
currentColor = "#";
var hexChars = "0123456789ABCDEF";
for (var i = 0; i < 3; i++)
{
var v = rgbValues[i].valueOf();
currentColor += hexChars.charAt(v/16) + hexChars.charAt(v%16);
}
}

// 4. Defines the new color
// 4.1 Current color is the default one
if (currentColor == ''
|| currentColor.toLowerCase() == theDefaultColor.toLowerCase()) {
if (theAction == 'over' && thePointerColor != '') {
newColor = thePointerColor;
}
else if (theAction == 'click' && theMarkColor != '') {
newColor = theMarkColor;
marked_row[theRowNum] = true;
// Garvin: deactivated onclick marking of the checkbox because it's also executed
// when an action (like edit/delete) on a single item is performed. Then the checkbox
// would get deactived, even though we need it activated. Maybe there is a way
// to detect if the row was clicked, and not an item therein...
// document.getElementById('id_rows_to_delete' + theRowNum).checked = true;
}
}
// 4.1.2 Current color is the pointer one
else if (currentColor.toLowerCase() == thePointerColor.toLowerCase()
&& (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])) {
if (theAction == 'out') {
newColor = theDefaultColor;
}
else if (theAction == 'click' && theMarkColor != '') {
newColor = theMarkColor;
marked_row[theRowNum] = true;
// document.getElementById('id_rows_to_delete' + theRowNum).checked = true;
}
}
// 4.1.3 Current color is the marker one
else if (currentColor.toLowerCase() == theMarkColor.toLowerCase()) {
if (theAction == 'click') {
newColor = (thePointerColor != '')
? thePointerColor
: theDefaultColor;
marked_row[theRowNum] = (typeof(marked_row[theRowNum]) == 'undefined' || !marked_row[theRowNum])
? true
: null;
// document.getElementById('id_rows_to_delete' + theRowNum).checked = false;
}
} // end 4

// 5. Sets the new color...
if (newColor) {
var c = null;
// 5.1 ... with DOM compatible browsers except Opera
if (domDetect) {
for (c = 0; c < rowCellsCnt; c++) {
theCells[c].setAttribute('bgcolor', newColor, 0);
} // end for
}
// 5.2 ... with other browsers
else {
for (c = 0; c < rowCellsCnt; c++) {
theCells[c].style.backgroundColor = newColor;
}
}
} // end 5

return true;
} // end of the 'setPointer()' function


Y esta es la forma de utilizarlo:


<tr onmouseover="setPointer(this, 1, 'over', '#E5E5E5', '#CCFFCC', '#FFCC99');" onmouseout="setPointer(this, 1, 'out', '#E5E5E5', '#CCFFCC', '#FFCC99');" onmousedown="setPointer(this, 1, 'click', '#E5E5E5', '#CCFFCC', '#FFCC99');">
<td align="center" bgcolor="#e5e5e5">
<a href="hola_mundo.htm">Texto de prueba</a>
</td>
</tr>


Funciona con todos los navegadores, y gestiona el evento onmousedown, para marcar de otro color los trucos visitados durante esa sesión, por ejemplo.

En cada celda puedes poner un href a documentos diferentes (por ejemplo para editar).

Me parece que el efecto es el que se buscaba, funciona con todos los navegadores, y funciona el boton derecho, y como el link esta en un href el google lo indexa correctamente.

No me merezco el 10, porque la función no es mia (ni mucho menos), solo soy muy observador, y recuerdo donde veo cosas interesantes.

Emilio
29-06-2006, 14:38:58
No me merezco el 10, porque....

Porque tampoco sirve :D

A ver si es que me he explicado mal...

Se tiene que poder hacer clic en cualquier zona del TR, con eso sólo se puede hacer clic en el href.

Por cierto todo ese codigo se puede reducir a 4 líneas y se logra el mismo efecto, pero gracias por intentarlo, esto se está convirtiendo en un reto para muchos :rolleyes:

Sick boy
29-06-2006, 14:51:16
Se tiene que poder hacer clic en cualquier zona del TR, con eso sólo se puede hacer clic en el href.

Pues basta con poner un href en todos los TD en los que quieras que se pueda clickar.
De todas formas, no puedes poner el mismo link para todo el TR, ya que necesitas un link distinto de los demas para editar el truco.

Por cierto todo ese codigo se puede reducir a 4 líneas y se logra el mismo efecto,
Como ??? Si es posible puedes pasar ese codigo de cuatro lineas.

Me parece que no has probado esta función, si la pruebas comprobaras que no solo hace lo que se pide,sino que hace más.

Si quieres verla en acción, entra en el phpmyadmin, y selecciona una tabla.
Donde te aparecen las especificaciones de los campos ( Campo Tipo Atributos Nulo Predeterminado Extra Acción) hay la tienes funcionando.

Creo que es el efecto que se busca, o al menos el efecto que yo pondria

Sick boy
29-06-2006, 15:03:19
Cuando dices "cualquier zona del TR", te refieres también a zonas donde no hay texto??

En ese caso tienes razón, si la fila es muy ancha, solo puedes hacer click donde hay texto, en caso contrario no funciona.

En el explorer, puedes poner un href antes del TR o antes del TD para que el link abarque toda la columna, pero para firefox no funciona.

Llegados a este punto, no se me ocurre nada más, no conozco ninguna forma de hacer lo que se comenta.

JavierB
29-06-2006, 16:58:56
Hola de nuevo.

La verdad es que esto llega a enganchar :) ¿Que tal añadiendo un poco de JavaScript?

<html>
<head>
<style type="text/css">
table {border-collapse:collapse}
td {border:1px solid black}
td a {width:100%; display:block}
</style>
<script type="text/javascript">
function ini() {
obj = document.getElementById('tabla');
for (i=0; ele=obj.getElementsByTagName('a')[i]; i++) {
ele.onmouseover = function() {this.parentNode.parentNode.style.background = '#ff0'}
ele.onmouseout = function() {this.parentNode.parentNode.style.background = ''}
}
}
</script>
</head>
<body onload="ini()">
<table id="tabla">
<tr>
<td style="width:100px"><a href="algo.html">28/06/06</a></td>
<td style="width:50px"><a href="algo.html">90</a></td>
<td style="width:200px"><a href="algo.html">Minimizar todo</a></td>
</tr>
<tr>
<td style="width:100px"><a href="algo.html">29/06/06</a></td>
<td style="width:50px"><a href="algo.html">89</a></td>
<td style="width:200px"><a href="algo.html">Combinar</a></td>
</tr>
</table>
</body>
</html>
Saludos, :cool:

Emilio
29-06-2006, 17:03:42
Cuando dices "cualquier zona del TR", te refieres también a zonas donde no hay texto??

Efectivamente, tal y como está ahora en los trucos.

En ese caso tienes razón, si la fila es muy ancha, solo puedes hacer click donde hay texto, en caso contrario no funciona.

Si la cosa no es tan simple como a primera vista parece.

En el explorer, puedes poner un href antes del TR o antes del TD para que el link abarque toda la columna, pero para firefox no funciona.

En Explorer incluso se lo puedes poner antes de un TABLE, ya dije eso por ahí.

Llegados a este punto, no se me ocurre nada más, no conozco ninguna forma de hacer lo que se comenta.

Vaya, uno que ya se rinde. Por cierto, por supuesto que he probado la función y ejemplo que pusiste, tuve que añadir un table y cierre de table que faltaba y lo probé, no soy tan jeta de decir que algo no funciona sin haberlo probado, no obstante me extrañaba porque uso con frecuencia PhpMyAdmin y sé que incluso las últimas versiones no hacen eso.

Sick boy
29-06-2006, 18:47:17
Pues perfecto.