PDA

View Full Version : Show rating stars



Petrache Nicolae
October 2, 2012, 04:35 PM
Hello. how can we show listing rating stars even if no rating has been made by a user? thanks

Mike
October 3, 2012, 06:09 AM
Not sure that understand your goal, maybe following changes is what you need:

plugins/rating/listing.tpl



{if $listing.lr_rating}
some smarty code here
{/if}


change to (remove condition)




some smarty code here

Petrache Nicolae
October 3, 2012, 02:06 PM
Not sure that understand your goal, maybe following changes is what you need:

plugins/rating/listing.tpl



{if $listing.lr_rating}
some smarty code here
{/if}


change to (remove condition)




some smarty code here


not working. let me explain better in this case

right now, in grid/list view mode, we see the 5 stars to an ad only when a user rate that ad. i want to show on all ads the 5 stars. if that ad received a rating, stars will show yellow. if not, stars will not be yellow.

Steffen Buschkemper
October 3, 2012, 02:23 PM
Hi Petrache,

thats working
In plugins/rating/listing.tpl you can see



{if $listing.lr_rating}
{math assign='average_rating' equation='round(rating/votes, 1)' rating=$listing.lr_rating votes=$listing.lr_rating_votes}
{math assign='rating_rest' equation='(av_rating - floor(av_rating))*100+5' av_rating=$average_rating}
{assign var='star' value=`$smarty.ldelim`number`$smarty.rdelim`}

<ul class="lising_rating {if $smarty.const.RL_LANG_DIR == rtl}lising_rating_rtl{/if}">
{section name='ratingS' start=0 loop=$config.rating_stars_number}<li title="{$lang.rating_rating}: {$average_rating}" {if $smarty.section.ratingS.iteration <= $average_rating}class="active"{/if}>{if $average_rating|ceil == $smarty.section.ratingS.iteration}<div style="width: {$rating_rest}%;"></div>{/if}</li>{/section}
</ul>
{/if}


Then it should look like this




{math assign='average_rating' equation='round(rating/votes, 1)' rating=$listing.lr_rating votes=$listing.lr_rating_votes}
{math assign='rating_rest' equation='(av_rating - floor(av_rating))*100+5' av_rating=$average_rating}
{assign var='star' value=`$smarty.ldelim`number`$smarty.rdelim`}

<ul class="lising_rating {if $smarty.const.RL_LANG_DIR == rtl}lising_rating_rtl{/if}">
{section name='ratingS' start=0 loop=$config.rating_stars_number}<li title="{$lang.rating_rating}: {$average_rating}" {if $smarty.section.ratingS.iteration <= $average_rating}class="active"{/if}>{if $average_rating|ceil == $smarty.section.ratingS.iteration}<div style="width: {$rating_rest}%;"></div>{/if}</li>{/section}
</ul>

Petrache Nicolae
October 3, 2012, 03:37 PM
Hi Petrache,

thats working
In plugins/rating/listing.tpl you can see



{if $listing.lr_rating}
{math assign='average_rating' equation='round(rating/votes, 1)' rating=$listing.lr_rating votes=$listing.lr_rating_votes}
{math assign='rating_rest' equation='(av_rating - floor(av_rating))*100+5' av_rating=$average_rating}
{assign var='star' value=`$smarty.ldelim`number`$smarty.rdelim`}

<ul class="lising_rating {if $smarty.const.RL_LANG_DIR == rtl}lising_rating_rtl{/if}">
{section name='ratingS' start=0 loop=$config.rating_stars_number}<li title="{$lang.rating_rating}: {$average_rating}" {if $smarty.section.ratingS.iteration <= $average_rating}class="active"{/if}>{if $average_rating|ceil == $smarty.section.ratingS.iteration}<div style="width: {$rating_rest}%;"></div>{/if}</li>{/section}
</ul>
{/if}


Then it should look like this




{math assign='average_rating' equation='round(rating/votes, 1)' rating=$listing.lr_rating votes=$listing.lr_rating_votes}
{math assign='rating_rest' equation='(av_rating - floor(av_rating))*100+5' av_rating=$average_rating}
{assign var='star' value=`$smarty.ldelim`number`$smarty.rdelim`}

<ul class="lising_rating {if $smarty.const.RL_LANG_DIR == rtl}lising_rating_rtl{/if}">
{section name='ratingS' start=0 loop=$config.rating_stars_number}<li title="{$lang.rating_rating}: {$average_rating}" {if $smarty.section.ratingS.iteration <= $average_rating}class="active"{/if}>{if $average_rating|ceil == $smarty.section.ratingS.iteration}<div style="width: {$rating_rest}%;"></div>{/if}</li>{/section}
</ul>



i have hidden {if $listing.lr_rating} and the closing if and that didn't work in my case. i do have a modified structure and maybee becouse of that is not working. i have separate file for list and grid view with lib.js customised. anyway, thanks for the help