This repository has been archived by the owner on Jun 7, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 317
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
moving some assets around, fiing tag extensions
- Loading branch information
Showing
44 changed files
with
359 additions
and
611 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes
File renamed without changes.
File renamed without changes.
File renamed without changes.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,72 +1,67 @@ | ||
#require_dependency ActsAsTaggableOn::Engine.config.root.join('app', 'models', 'acts_as_taggable_on', 'tag.rb').to_s | ||
# require_dependency ActsAsTaggableOn::Engine.config.root.join('lib', 'acts_as_taggable_on', 'tag.rb').to_s | ||
|
||
class ActsAsTaggableOn::Tag < ActiveRecord::Base | ||
# ActsAsTaggableOn::Tag.instance_eval do | ||
# def popular(limit = 20, type = nil) | ||
# tags = ActsAsTaggableOn::Tag.counts(:at_least => 0).limit(limit).order('count DESC') | ||
# tags = tags.where("taggings.taggable_type = ?", type.capitalize) if type | ||
# tags | ||
# end | ||
|
||
class << self | ||
def popular(limit = 20, type = nil) | ||
tags = ActsAsTaggableOn::Tag.counts(:at_least => 0).limit(limit).order('count DESC') | ||
tags = tags.where("taggings.taggable_type = ?", type.capitalize) if type | ||
tags | ||
end | ||
# def default_per_page | ||
# 25 | ||
# end | ||
|
||
def default_per_page | ||
25 | ||
end | ||
# # Calculate the tag counts for all tags. | ||
# # | ||
# # - +:start_at+ - restrict the tags to those created after a certain time | ||
# # - +:end_at+ - restrict the tags to those created before a certain time | ||
# # - +:at_least+ - exclude tags with a frequency less than the given value | ||
# # - +:at_most+ - exclude tags with a frequency greater than the given value | ||
# # | ||
# # Deprecated: | ||
# # | ||
# # - +:conditions+ | ||
# # - +:limit+ | ||
# # - +:order+ | ||
# # | ||
# def counts(options = {}) | ||
# options.assert_valid_keys :start_at, :end_at, :at_least, :at_most, :conditions, :limit, :order, :joins | ||
|
||
# Calculate the tag counts for all tags. | ||
# | ||
# - +:start_at+ - restrict the tags to those created after a certain time | ||
# - +:end_at+ - restrict the tags to those created before a certain time | ||
# - +:at_least+ - exclude tags with a frequency less than the given value | ||
# - +:at_most+ - exclude tags with a frequency greater than the given value | ||
# | ||
# Deprecated: | ||
# | ||
# - +:conditions+ | ||
# - +:limit+ | ||
# - +:order+ | ||
# | ||
def counts(options = {}) | ||
options.assert_valid_keys :start_at, :end_at, :at_least, :at_most, :conditions, :limit, :order, :joins | ||
# tags = select("#{quoted_table_name}.id", "#{quoted_table_name}.name", "COUNT(#{quoted_table_name}.id) AS count") | ||
# tags = tags.joins(:taggings) | ||
# tags = tags.having(["COUNT(#{ActsAsTaggableOn::Tagging.quoted_table_name}.id) >= ?", options[:at_least]]) if options[:at_least] | ||
# tags = tags.having(["COUNT(#{ActsAsTaggableOn::Tagging.quoted_table_name}.id) <= ?", options[:at_most]]) if options[:at_most] | ||
# tags = tags.where("#{ActsAsTaggableOn::Tagging.quoted_table_name}.created_at >= ?", options[:start_at]) if options[:start_at] | ||
# tags = tags.where("#{ActsAsTaggableOn::Tagging.quoted_table_name}.created_at <= ?", options[:end_at]) if options[:end_at] | ||
# tags = tags.where(options[:conditions]) if options[:conditions] | ||
# tags = tags.limit(options[:limit]) if options[:limit] | ||
# tags = tags.order(options[:order]) if options[:order] | ||
|
||
tags = select("#{quoted_table_name}.id", "#{quoted_table_name}.name", "COUNT(#{quoted_table_name}.id) AS count") | ||
tags = tags.joins(:taggings) | ||
tags = tags.having(["COUNT(#{ActsAsTaggableOn::Tagging.quoted_table_name}.id) >= ?", options[:at_least]]) if options[:at_least] | ||
tags = tags.having(["COUNT(#{ActsAsTaggableOn::Tagging.quoted_table_name}.id) <= ?", options[:at_most]]) if options[:at_most] | ||
tags = tags.where("#{ActsAsTaggableOn::Tagging.quoted_table_name}.created_at >= ?", options[:start_at]) if options[:start_at] | ||
tags = tags.where("#{ActsAsTaggableOn::Tagging.quoted_table_name}.created_at <= ?", options[:end_at]) if options[:end_at] | ||
tags = tags.where(options[:conditions]) if options[:conditions] | ||
tags = tags.limit(options[:limit]) if options[:limit] | ||
tags = tags.order(options[:order]) if options[:order] | ||
# if joins = options.delete(:joins) | ||
# tags = tags.joins(joins) | ||
# end | ||
|
||
if joins = options.delete(:joins) | ||
tags = tags.joins(joins) | ||
end | ||
# tags.group("#{quoted_table_name}.id, #{quoted_table_name}.name") | ||
# end | ||
# end | ||
|
||
tags.group("#{quoted_table_name}.id, #{quoted_table_name}.name") | ||
end | ||
# ActsAsTaggableOn::Tag.class_eval do | ||
# def to_param | ||
# URI.escape(URI.escape(self.name), /[\/.?#]/) | ||
# end | ||
|
||
# def related_tags(limit = 10) | ||
# taggables = self.taggings.limit(10).to_a.collect{|t| t.taggable }.compact | ||
|
||
end | ||
|
||
def to_param | ||
URI.escape(URI.escape(self.name), /[\/.?#]/) | ||
end | ||
|
||
def related_tags(limit = 10) | ||
taggables = self.taggings.limit(10).to_a.collect{|t| t.taggable }.compact | ||
|
||
tagging_ids = taggables.map{|t| t.taggings.limit(10).map(&:id) }.flatten.uniq | ||
return [] if tagging_ids.blank? | ||
|
||
ActsAsTaggableOn::Tag.where("tags.id != '#{self.id}'") | ||
.select("tags.id, tags.name, COUNT(tags.id) as count") | ||
.joins(:taggings) | ||
.where({:taggings => {:id => tagging_ids }}) | ||
.group("tags.id, tags.name") | ||
.order("count DESC") | ||
.limit(limit) | ||
end | ||
|
||
end | ||
# tagging_ids = taggables.map{|t| t.taggings.limit(10).map(&:id) }.flatten.uniq | ||
# return [] if tagging_ids.blank? | ||
|
||
# ActsAsTaggableOn::Tag.where("tags.id != '#{self.id}'") | ||
# .select("tags.id, tags.name, COUNT(tags.id) as count") | ||
# .joins(:taggings) | ||
# .where({:taggings => {:id => tagging_ids }}) | ||
# .group("tags.id, tags.name") | ||
# .order("count DESC") | ||
# .limit(limit) | ||
# end | ||
# end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
class ActiveAdmin::PagePolicy < ApplicationPolicy | ||
|
||
def dashboard? | ||
true | ||
end | ||
|
||
def index? | ||
true | ||
end | ||
|
||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
class ApplicationPolicy | ||
attr_reader :user, :record | ||
|
||
def initialize(user, record) | ||
@user = user | ||
@record = record | ||
end | ||
|
||
def show? | ||
true | ||
end | ||
|
||
def index? | ||
true | ||
end | ||
|
||
def new? | ||
create? | ||
end | ||
|
||
def create? | ||
true | ||
end | ||
|
||
def edit? | ||
update? | ||
end | ||
|
||
def update? | ||
user.admin? || record.respond_to(:user) && record.user.eql?(user) | ||
end | ||
|
||
def destroy? | ||
update? | ||
end | ||
|
||
def destroy_all? | ||
user.admin? | ||
end | ||
|
||
def scope | ||
Pundit.policy_scope!(user, record.class) | ||
end | ||
|
||
class Scope | ||
attr_reader :user, :scope | ||
|
||
def initialize(user, scope) | ||
@user = user | ||
@scope = scope | ||
end | ||
|
||
def resolve | ||
scope | ||
end | ||
end | ||
|
||
end | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
class SbPostPolicy < ApplicationPolicy | ||
|
||
def edit? | ||
update? | ||
end | ||
|
||
def destroy? | ||
update? | ||
end | ||
|
||
def update? | ||
record.editable_by?(user) | ||
end | ||
|
||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
class TopicPolicy < ApplicationPolicy | ||
|
||
def new? | ||
create? | ||
end | ||
|
||
def create? | ||
true | ||
end | ||
|
||
def edit? | ||
update? | ||
end | ||
|
||
def destroy? | ||
update? | ||
end | ||
|
||
def update? | ||
record.editable_by?(user) | ||
end | ||
|
||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.