Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - dinasty0

Páginas: [1] 2
1
LA web esta completamente desconfigurada con el cambio...

aqui te muestro 2 img una antes del cambio de codigo y otra despues de poner tu codigo...

2
Si ya vi hace tiempo que era esa función... probe en varias ocasiones a modificar la sql por la que me diste y seguia sin mostrarme nada de información... tambien he visto que en el contenido de la carpeta mod_topratedcontentmodule me aparecen 4 archuivos...
1º index.html
2º mod_topratedcontentmodule.php
3º mod_topratedcontentmodule.xml
4º mod_topratedcontentmodulehelper.php

el 1º solo contiene un estilo de color de fondo en blanco...

Código: [Seleccionar]
<?php
/**
 * @version SVN: $Id$
 * @package    mod_topratedcontentmodule
 * @author     Mathias Hortig {@link http://tuts4you.de/}
 * @license    GNU/GPL
 */

// No direct access
defined'_JEXEC' ) or die( 'Restricted access' );
 
// Require the base controller
 
require_once(dirname(__FILE__).DS.'mod_topratedcontentmodulehelper.php');

echo 
mod_topratedcontentmodulehelper::GetRatedArticlesList($params);

3º contiene lo que sería los datos del panel de administración de la configuración


Código: [Seleccionar]
<?php
/**
 * @version SVN: $Id$
 * @package    mod_topratedcontentmodule
 * @author     Mathias Hortig {@link http://tuts4you.de/}
 * @license    GNU/GPL
 */

// No direct access
 
defined'_JEXEC' ) or die( 'Restricted access' );
 
jimport'joomla.application.component.model' );
jimport'joomla.html.parameter' );

class 
mod_topratedcontentmodulehelper
{

  function 
GetRatedArticlesList(&$params)
  {
      require_once 
JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php';
      
$db =& JFactory::getDBO();
      
$query "SELECT cc.title AS category, a.id, a.title, DATE_FORMAT(a.created,'%d.%m.%Y') as created,
 u.username, a.hits, cc.id as catid, format((r.rating_sum / r.rating_count), 2) as averagerating

      FROM #__content AS a

      LEFT JOIN #__categories AS cc ON a.catid = cc.id

      LEFT JOIN #__users AS u ON u.id = a.created_by

      LEFT JOIN #__content_rating as r ON a.id = r.content_id

      WHERE r.rating_count is not null"
;

      if(
$params->get('showOnlyPublicPosts') == 0)
      {
       
$query .= " and a.access = 1 ";
      }


      
$query .= 
ORDER BY (r.rating_sum / r.rating_count) desc, rating_count desc"
;
      if(
$params->get('articleCount') != 0)
      {
         
$query .= " LIMIT 0, " $params->get('articleCount');
      }

      
$db->setQuery$query );
        
$table $db->loadObjectList();

        
$html .= '<ul id="topratedcontentmodule">';
foreach($table as $row)
        {
            
$html .= '<li>';
            
$html .= '<a title="' JText::_('MOD_TOPRATEDCONTENTMODULE_AVERAGERATING') . ': ' $row->averagerating '" href="' JRoute::_(ContentHelperRoute::getArticleRoute($row->id$row->catid)) . '">'.$row->title.'</a>';
            
$html .= '</li>';
      }
           
$html .= '</ul>';

return $html;


  }
}

eso es el contenido de los archivos de mi carpeta...

Tambien me gustaría puntualizar una cosa cuando en el inicio de nuestra larga ya conversación te comente mi problema... te dije donde estba el archivo para descargarlo... y habia 2 uno de ellos ponia module y el otro no ponia nada... yo tengo los 2 instalados... y si me voy a gestor de extensiones... me pone esto...

IMAGEN33.jpg

Es decir uno lo pone como modulo y otro como componente y adesmas uno es administrador y otro sitio...

Te digo esto por si te sirve de información ...

Pero por el momento tu me has dicho unos archivos y uno de ellos no lo tengo yo ya que yo tengo 2 archivos con extension .php y tu me has dicho de 3...

y entre otras cosas también decir, que en los 2 archivos de php, ambos llaman a esa funcion solo que uno lo llama con el argumento (&$params) y el otro lo llama sin argumentos...

Espeor averte servido de alguna ayuda mas... sobre esta problematica...

Un saludo y nuevamente mmuchas gracias...

3
Ok todo funciona como debería, por lo que esta correcto...  ;)

Cuando quieras podemos ver como modificar el código...

4
Título      Votos            Rating (puntuación media)

A320      10                  3.5

B737      20                  3.0   

K878      5                  4.75

L373           1                  5.0

H292      15                  2.50

J383          20                  4.50

M655      15                   4.85

G221      5                  4.95


Con este ultimo ejemplo... que tu me has puesto... se supone que el l373 tiene 5 de rating y los demás aun teniendo más votos no llega el rating a 5, es decir que por ej. el M655 tiene 15 votos pero de esos 15 muchos han votado por debajo de 4 y de 5 es decir que la media no llega a 5... por lo que el que ha votado 1 vez pero 5 estrellas es la mejor ... entonces visto asi ... es como debería ya que si tiene mayor tating es lo importante... lo que si pienso que peude fallar es cuado haya este ejemplo...

Título      Votos            Rating (puntuación media)

A320      10                  5.0

B737      20                  5.0

K878      5                  4.75

L373           1                  5.0

H292      15                  2.50

J383          20                  4.50

M655      15                   4.85

G221      5                  4.95

Ahora con este ej. hay 3 que tienen 5.0 de rating y cada uno con unos votos... en este caso... haciendolo como yo lo he dicho cual saldría vencedor?¿ el B737 no?¿

Si ese es el resultado creeo que no habria ningún problema... por que realmente lo importate es el rating... pero si se hace 1º rating y despues de todos los que hallan sacado 5 se busque el que más votos tiene ...creo que no haría falta nada más...

5
Te comento para que es lo que realmente quiero esto... este código quiero que me muestre el top 10 por ejemplo o top 20 de las imagenes mas valorada con mejor rating... ya que despues el ganador el que este en la 1º tendrá algún premio o algo así... por loq ue es muy importante que la 1º img sea la que mas rating tenga y mayor numero de votos...

Por lo que de las opciones que tu me has dicho creo que la mas fiable para mis necesidades es:

Si ordenas primero por rating y luego por votos te sale primero el M655

O cual crees que se asemeja mejor a mis necesidades?¿ yo creo que sería la que te he puesto...

Un saludo

6
Buenas de nuevo...

Te comento tienes razón no me fije... yo realmente lo que quiero es que el 1º sea el que más votos tenga y con mayor rating... ya que no e slo mismo 5 de rating con 1 que 5 con 10 votos...

Y con la consulta tuya, lo que hacia era mostrar los que tiene el rating 5 pero no tiene en cuenta el nº de votos, ya que aparecen algunos en las 1º posiciones con 1 voto y otras con más votos aparecen muy por abajo cuando no debería de ser así...

7
He estado viendo el codigo donde se supone que hace la llamada sql y demás y este es el código entero por que no se si algunas otras partes del código hay que modificarlas...

Codigo.php

Código: [Seleccionar]
<?php
/**
 * @version SVN: $Id$
 * @package    mod_topratedcontentmodule
 * @author     Mathias Hortig {@link http://tuts4you.de/}
 * @license    GNU/GPL
 */

// No direct access
 
defined'_JEXEC' ) or die( 'Restricted access' );
 
jimport'joomla.application.component.model' );
jimport'joomla.html.parameter' );

class 
mod_topratedcontentmodulehelper
{

  function 
GetRatedArticlesList(&$params)
  {
      require_once 
JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php';
      
$db =& JFactory::getDBO();
      
$query "SELECT cc.title AS category, a.id, a.title, DATE_FORMAT(a.created,'%d.%m.%Y') as created,
 u.username, a.hits, cc.id as catid, format((r.rating_sum / r.rating_count), 2) as averagerating

      FROM #__content AS a

      LEFT JOIN #__categories AS cc ON a.catid = cc.id

      LEFT JOIN #__users AS u ON u.id = a.created_by

      LEFT JOIN #__content_rating as r ON a.id = r.content_id

      WHERE r.rating_count is not null"
;

      if(
$params->get('showOnlyPublicPosts') == 0)
      {
       
$query .= " and a.access = 1 ";
      }


      
$query .= 
ORDER BY (r.rating_sum / r.rating_count) desc, rating_count desc"
;
      if(
$params->get('articleCount') != 0)
      {
         
$query .= " LIMIT 0, " $params->get('articleCount');
      }

      
$db->setQuery$query );
        
$table $db->loadObjectList();

        
$html .= '<ul id="topratedcontentmodule">';
foreach($table as $row)
        {
            
$html .= '<li>';
            
$html .= '<a title="' JText::_('MOD_TOPRATEDCONTENTMODULE_AVERAGERATING') . ': ' $row->averagerating '" href="' JRoute::_(ContentHelperRoute::getArticleRoute($row->id$row->catid)) . '">'.$row->title.'</a>';
            
$html .= '</li>';
      }
           
$html .= '</ul>';

return $html;


  }
}


8
Ahora funciona perfecto... he modificado el orden del rating por el de votos y si me sale bien...ya lo unico que abria que hacer es sustituir todo el codigo de la otra vez por este que tu me has dado no?¿

Esdecir todo esto lo sustituyo por eltuyo?¿
Código: [Seleccionar]
function GetRatedArticlesList(&$params)
  {
      require_once JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php';
      $db =& JFactory::getDBO();
      $query = "SELECT cc.title AS category, a.id, a.title, DATE_FORMAT(a.created,'%d.%m.%Y') as created,
u.username, a.hits, cc.id as catid, format((r.rating_sum / r.rating_count), 2) as averagerating

      FROM #__content AS a

      LEFT JOIN #__categories AS cc ON a.catid = cc.id

      LEFT JOIN #__users AS u ON u.id = a.created_by

      LEFT JOIN #__content_rating as r ON a.id = r.content_id

      WHERE r.rating_count is not null";


9
He comprobado la consulta y ahora si funciona lo que pasa es que sale como antes...es decir el nombre y el nº de estrellas es decir solo el 5... y he comprobado si el 1º es realmente el primero y no era asi... habría que poner el nombre, el nº de votos y el rating que tiene...

Aqui te adjunto la img...

Muchas gracias...por todo

11
Aquí adjunto ambas capturas... la 1º consulta con el titulo de img consulta 980 y la segunda consulta con el titulo consultasegunda980

por cierto no hay ninguna tabla con el nombre AC_zoo_elemnts solo es un campo... de la tabla AC_zoo_item

Ahora tb te adjunto la img con todas las tablas que hay de zoo...

12
Si hay un campo especifico donde aparecen varias cosas entre ellas el nº de votos y el rating generado... ya te lo comente en post anteriores...pero  te pongo la img del 980 que es el que hemos hablado...
Este es el contenido del campo elements:
Código: [Seleccionar]
{
"46a4ee50-9d88-4142-9acf-3b5169833a57":  {
"votes": "2",
"value": "3.5000"
},
"1cc21c78-250d-482f-aa93-54983d2923ce":  {
"value": "1"
},
"f117218a-c831-452e-a8bc-850a6ee9ec0a":  {
"option":  {
"0": "boeing"
},
"select": "1"
},
"701cb971-8956-4aea-8c19-4bf201f25cdc":  {
"0":  {
"value": ""
}
},
"008a8be7-365e-4dfd-9a32-691227f1eced":  {
"0":  {
"value": "60-0350"
}
},
"d4704df9-558c-4beb-9d27-203af1bfc7fa":  {
"0":  {
"value": "USAF"
}
},
"4f65435d-7454-4fdb-9b8f-bdd2816a09fb":  {
"0":  {
"value": "Espa\u00f1a"
}
},
"64b17c0e-e3d5-41f6-b57c-0a8bb5827b50":  {
"0":  {
"value": "Gran Canaria - Gando (LPA\/GCLP) "
}
},
"dfb68bc5-0f33-4fbc-978e-1a8e0b6c62f3":  {
"0":  {
"value": ""
}
},
"d7455e43-f654-49b0-bd65-d8bb84f61e21":  {
"file": "images\/03-spotting\/galeria_spotting\/watermark\/0350-2.jpg",
"title": "",
"link": "images\/03-spotting\/galeria_spotting\/watermark\/0350-2.jpg",
"target": "0",
"rel": "",
"lightbox_image": "",
"spotlight_effect": "",
"caption": "",
"width": 1024,
"height": 683
},
"f001e203-1af8-455a-ad2f-a3c3abce2b09":  {

},
"fe50247a-0bd5-4620-8798-bb8f7fb90a27":  {
"0":  {
"value": ""
}
}
}


13
Funciona...el único problema que hay es que hay 2 datos en el rating... que son la puntuación del 1 al 5 y despues el nº de votos... no es lo mismo 1 voto 5 estrellas, que 20 votos de 5...y creo que ahora mismo salen todos los 5 que haya direct<mente independientemente del número de votos que tengan...

14
perdon me he equivocado... sería AC_zoo_item...

15
He echo lo que tu me has dicho y ya confirmado... el 980 tenia 1 voto que era de 5 y la he vuelto a votar y con un 2 y el rating se ha puesto a 3.5 y en la base de datos ha cambiado... a ese resultado... por lo que los datos salen.. de AC_Zoo_rating...

Entonces ahora... cual debería ser la llamada sql para sustituir... en el modulo...

Un saluod y gracias!!!

16
1º En la tabla zoo_item en el campo "elements" en la gran mayoria de estos contiene estos datos:

Código: [Seleccionar]
{
"46a4ee50-9d88-4142-9acf-3b5169833a57":  {
"votes": "1",
"value": "4.0000"
},
"1cc21c78-250d-482f-aa93-54983d2923ce":  {
"value": "1"
},
"f117218a-c831-452e-a8bc-850a6ee9ec0a":  {
"option":  {
"0": ""
},
"select": "1"
},
"701cb971-8956-4aea-8c19-4bf201f25cdc":  {
"0":  {
"value": ""
}
},
"008a8be7-365e-4dfd-9a32-691227f1eced":  {
"0":  {
"value": "EC-JQQ"
}
},
"d4704df9-558c-4beb-9d27-203af1bfc7fa":  {
"0":  {
"value": "Air Europa"
}
},
"4f65435d-7454-4fdb-9b8f-bdd2816a09fb":  {
"0":  {
"value": "Espa\u00f1a"
}
},
"64b17c0e-e3d5-41f6-b57c-0a8bb5827b50":  {
"0":  {
"value": "Madrid - Barajas (MAD\/LEMD)"
}
},
"dfb68bc5-0f33-4fbc-978e-1a8e0b6c62f3":  {
"0":  {
"value": "<p>Entrando en pista 15R para despegue inmediato v\u00eda LimaAlfa. Impresionantes los 60.30m de envergadura de esta m\u00e1quina.<\/p>"
}
},
"d7455e43-f654-49b0-bd65-d8bb84f61e21":  {
"file": "images\/03-spotting\/galeria_spotting\/watermark\/EC-JQQ-A330-203-AIR-EUROPA5.jpg",
"title": "",
"link": "images\/03-spotting\/galeria_spotting\/watermark\/EC-JQQ-A330-203-AIR-EUROPA5.jpg",
"target": "0",
"rel": "",
"lightbox_image": "",
"spotlight_effect": "",
"caption": "",
"width": 1024,
"height": 683
},
"f001e203-1af8-455a-ad2f-a3c3abce2b09":  {

},
"fe50247a-0bd5-4620-8798-bb8f7fb90a27":  {
"0":  {
"value": ""
}
}
}

Supongo que corresponde con lo que tu me decias, que ahi es donde guarda los calculos y demás de el rating...

Tambien por si sirve de algo te enseño lo que hay dentro del sig. campo que es el de params:

Código: [Seleccionar]
{
"metadata.title": "",
"metadata.description": "",
"metadata.keywords": "",
"metadata.robots": "",
"metadata.author": "",
"config.enable_comments": "1",
"config.primary_category": "738"
}

2º La sql que tu me has puesto ahi... es por la que debería sustituir a la anterior?¿ por que creo que esta modificada no?¿

Un saludo y gracias por tu ayuda...

17
Pues bien toddas esas son las tablas de joomla y las de zoo que he encontrado... y esta es el select del codigo...

Código: [Seleccionar]
      require_once JPATH_SITE.DS.'components'.DS.'com_content'.DS.'helpers'.DS.'route.php';
      $db =& JFactory::getDBO();
      $query = "SELECT cc.title AS category, a.id, a.title, DATE_FORMAT(a.created,'%d.%m.%Y') as created,
u.username, a.hits, cc.id as catid, format((r.rating_sum / r.rating_count), 2) as averagerating

      FROM #__content AS a

      LEFT JOIN #__categories AS cc ON a.catid = cc.id

      LEFT JOIN #__users AS u ON u.id = a.created_by

      LEFT JOIN #__content_rating as r ON a.id = r.content_id

      WHERE r.rating_count is not null";

Te pongo esto por que me hago un poco de lio con los alias... y me dificulta saber relaionar las tblas que realmente puedan ser...

Un saludo

18
Buenas tardes,

Aquí te comento lo que he visto en la base de datos...

En las tablas de joomla creo que son AC_content, AC_content_rating

Y en las de Zoo son las sig.:  AC_zoo_application (Que aquí no creo que haya nada de nuestro interes), AC_zoo_category, AC_zoo_category_item, AC_zoo_item, AC_zoo_rating, AC_zoo_search_index, AC_zoo_tag (Esta vacia), AC_zoo_zoofilter_searches.

Aquí adjunto las img de cada tabla... como solo se permiten 4... asi que ahora escribire otro post para las otras dos...

Gracias

19
Perfecto... me voy a poner a ello a ver si lo consigo... pero supongo que en teoria no debería ser muy complejo eso...no?¿

Bueno ya tendras noticias mias como para una cosa o la otra...

y muchas gracias por la ayuda prestada... :)

20
Si como bien dices... tengo el modulo de zoo...

Entonces para que yo lo comprenda bien... las modificaciones que habría que hacer del código... que e slo que tendría que modificar exactamente si es que me lo puees decir... :D

Muchas gracias....

P.D.: El codigo no lo he modificado.. por lo que está tal cual...

Páginas: [1] 2

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".