Foros del Web » Programando para Internet » Javascript » Frameworks JS »

easyRating de prototype con una sola consulta

Estas en el tema de easyRating de prototype con una sola consulta en el foro de Frameworks JS en Foros del Web. Estoy trabajando sobre una web que tiene un sistema de rating. Son estrellitas para calificar una galeria de fotos. La cuestion es que si tengo ...
  #1 (permalink)  
Antiguo 02/11/2010, 12:49
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
easyRating de prototype con una sola consulta

Estoy trabajando sobre una web que tiene un sistema de rating. Son estrellitas para calificar una galeria de fotos. La cuestion es que si tengo doce fotos, el easyRating me hace 12 consultas a base de datos (via ajax). Eso es muy inefectivo y ralentiza la carga de la pagina.

Mi pregunta es si conocen algun sistema de rating, preferentemente en prototype (o jquery), que no use ajax para preguntar sobre el estado de cada fotito, sino que se valga de los atributos html que yo pueda entregar con PHP desde un primer momento. Por lo que voy viendo, todos hacen consultas pos carga...

Saludos!

Última edición por mayid; 02/11/2010 a las 13:02
  #2 (permalink)  
Antiguo 02/11/2010, 15:56
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: easyRating de prototype con una sola consulta

Bueno, voy a usar este:

jQuery Raty
http://www.wbotelhos.com/raty/

No trae nada de lado servidor, pero tiene opciones y es liviano.

Eso si, hay que programar las consultas ajax y demas...
  #3 (permalink)  
Antiguo 03/11/2010, 12:45
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: easyRating de prototype con una sola consulta

Me estoy liando con esto.

Necesito inicializar el rating para cada foto. Y que el valor inicial sea dinamico.

Desde PhP imprimo los valores para cada foto, y los puedo recoger asi:

Código Javascript:
Ver original
  1. $("#galerias .rate").children("span").attr("class") ;

Y bueno, en el demo de este star system aparece la seleccion de elementos por id. Pero yo necesito aplicarle el sistema a todas las fotos, con un class name:


Código Javascript:
Ver original
  1. $("#galerias .rate").raty({
  2.    
  3.           start:     2,
  4.           path:         ruta + 'app/utiles/rating/img/',
  5.                                  
  6.           starOff:      'star-off.png',                              
  7.           starOn:       'star-on.png',  
  8.  
  9.           onClick: function(score) {
  10.             alert('score: ' + score);
  11.           }
  12.         });

La cuestion es como imprimir el puntaje en donde dice start:

Con un bucle each?
  #4 (permalink)  
Antiguo 03/11/2010, 13:32
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: easyRating de prototype con una sola consulta

En fin, asi funciona:

Código Javascript:
Ver original
  1. $("#galerias .rate").each(function(index) {
  2.        
  3.             estrellas = $(this);
  4.             id = estrellas.attr("class")
  5.             id = id.replace("rate","")
  6.            
  7.             estrellas.raty({
  8.                      
  9.               //showHalf:  true,
  10.               start:        estrellas.children("span").attr("class"),
  11.               path:         ruta + 'app/utiles/rating/img/',
  12.               //starHalf:   'star-half.png',                                
  13.               starOff:      'star-off.png',                              
  14.               starOn:       'star-on.png',  
  15.      
  16.               onClick: function(puntaje) {
  17.                
  18.                 $.post( ruta + 'app/utiles/rating/puntuar.php', {objeto: id,puntaje: puntaje}, function(respuesta){
  19.                     alert(respuesta);                  
  20.                     })             
  21.               }
  22.              
  23.             });
  24.         });
  #5 (permalink)  
Antiguo 03/11/2010, 13:46
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: easyRating de prototype con una sola consulta

http://www.visualjquery.com/rating/rating_redux.html


no lo usé pero según lo que vi en el plugin corta una porción de lo que tiene el valor del atributo title
title="Average Rating: 3.4" lo corta por el ":" y agarra el "3.4" que seria el promedio, y en el form usa el atributo "action" para enviar la calificación

<form class="rating" title="Average Rating: 3.4" action="rating.php">

<label for="r1" class="avg">Rate Me!</label>
<select id="r1">

<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>

</select>
<input type="button" value="Submit Rating">
</form>

tiene buena pinta, sencillo, liviano
  #6 (permalink)  
Antiguo 03/11/2010, 13:56
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: easyRating de prototype con una sola consulta

Tal cual, asi deberían funcionar todos!

Lastima que dice "quick and dirty beta".

Ya tengo mi script encaminado. Lo unicoq ue me falta es calcular el promedio, cuando ya tengo un valor ingresado y recibo otro voto...
  #7 (permalink)  
Antiguo 03/11/2010, 14:39
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: easyRating de prototype con una sola consulta

jeje ni lo leí porque mi inglés es nulo

dice que es sucio? porqué? quizá debería usar lista mas que formulario, o usar opciones al iniciar para formar las estrellas
no debe ser muy difícil ajustarlo a otra estructura

yo habia echo uno creo que con javascript sin jquery, pero ni me acuerdo donde esta ese proyecto
  #8 (permalink)  
Antiguo 03/11/2010, 14:43
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: easyRating de prototype con una sola consulta

Nada, es un beta del año 2006. Ya voy muy encaminado, y solo tengo una duda matemetica respecto a los promedios...

Un codigo "sucio" es un codigo mal escrito, no optimizado. Che, me extraña no hables ingles y programes tan bien. Pilas, eh?

En fin, tengo un buen codigo andando en base a recortar kilos de codigo innecesario de un plugin comercial... que era muy poco efectivo pero era el que usaba el cliente. Volque la logica directamente sobre mysql, en vez de valerme de PHP o javascript
  #9 (permalink)  
Antiguo 03/11/2010, 15:06
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: easyRating de prototype con una sola consulta

no sé jeje nunca me gustó, nunca le di importancia, fui reacio a aprender inglés

pero hasta que me di cuenta que todo la documentación de todo está en inglés, cuando buscaba algo (soluciones o tutoriales) lo encontraba en inglés, los libros de algo que queria aprender los habia de todas clases en inglés, trabajos freelance hay mucho pero en inglés, curriculum te piden que tengas inglés... con eso me di por vencido y este año empecé un curso pero como no tengo mucho tiempo mucho no puedo llevarle, pero ya dentro de unos años lo lograré jeje


ahi te contesté el otro th
  #10 (permalink)  
Antiguo 03/11/2010, 15:11
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 1 mes
Puntos: 101
Respuesta: easyRating de prototype con una sola consulta

Gracias. Lo vi!

En internet hay mucho material para estudiar ingles, si andas con ganas. Pero claro, mejor hacer un curso que marearse con tantos contenidos...
  #11 (permalink)  
Antiguo 03/11/2010, 16:16
 
Fecha de Ingreso: diciembre-2009
Ubicación: Misiones
Mensajes: 867
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: easyRating de prototype con una sola consulta

el orgullo es algo malo, pero creo que eso es lo que hace que intente aprender inglés jeje "no puedo ser tan ### de no aprender" eso pienso y me hace ir jeje

y lo de "programar bien" mmm no sé, recién ahora estoy aprendiendo OOP para php en un curso y javascript no sé mucho
jquery es algo ya hecho jeje aparte lo ocupo todo el tiempo en el trabajo que es un 80% de lo que hago desde hace 1 año jeje

hablando de inglés desvirtuamos el tema, encima me pasé toda la tarde en el foro y me olvidé de estudiar ingles jaja dentro de una hora tengo clase... chau

Etiquetas: prototype
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:02.