Sha256: 5fe6526424ce7b7191c8923ea03da0ce8752b409ada8333a8ebe4e3df96e9b3e
Contents?: true
Size: 1.5 KB
Versions: 6
Compression:
Stored size: 1.5 KB
Contents
# -*- encoding : utf-8 -*- module Helpers def rating_for(rateable_obj, options={}) cached_average = rateable_obj.average avg = cached_average ? cached_average.avg : 0 star = options[:star] || 5 disable_after_rate = options[:disable_after_rate].nil? ? true : options[:disable_after_rate] readonly = !(current_user && rateable_obj.can_rate?(current_user)) content_tag :div, '', :class => "star", "data-rating" => avg, "data-id" => rateable_obj.id, "data-classname" => rateable_obj.class.name, "data-disable-after-rate" => disable_after_rate, "data-readonly" => readonly, "data-star-count" => star end def rating_for_user(rateable_obj, rating_user, options = {}) @object = rateable_obj @user = rating_user @rating = Rate.find_by_rater_id_and_rateable_id(@user.id, @object.id) stars = @rating ? @rating.stars : 0 disable_after_rate = options[:disable_after_rate].nil? ? true : options[:disable_after_rate] readonly=false if disable_after_rate readonly = current_user.present? ? !rateable_obj.can_rate?(current_user.id) : true end content_tag :div, '', :class => "star", "data-rating" => stars, "data-id" => rateable_obj.id, "data-classname" => rateable_obj.class.name, "data-disable-after-rate" => disable_after_rate, "data-readonly" => readonly, "data-star-count" => stars end end class ActionView::Base include Helpers end
Version data entries
6 entries across 6 versions & 1 rubygems