Skip to content

Commit

Permalink
remove rails 2 comp
Browse files Browse the repository at this point in the history
  • Loading branch information
artemk committed Nov 28, 2011
1 parent dcc0c62 commit fd8ead9
Show file tree
Hide file tree
Showing 7 changed files with 83 additions and 100 deletions.
4 changes: 1 addition & 3 deletions .travis.yml
@@ -1,9 +1,7 @@
script: "cp spec/database.yml.sample spec/database.yml && bundle install && bundle exec rake"
rvm:
- 1.8.7
- ree
- 1.9.2
- rbx
- 1.9.3
env:
- DB=sqlite3
- DB=mysql
Expand Down
6 changes: 3 additions & 3 deletions acts-as-taggable-on.gemspec
Expand Up @@ -4,16 +4,16 @@ require 'acts-as-taggable-on/version'
Gem::Specification.new do |gem|
gem.name = %q{acts-as-taggable-on}
gem.authors = ["Michael Bleigh"]
gem.date = %q{2010-05-19}
gem.date = %q{2011-09-26}
gem.description = %q{With ActsAsTaggableOn, you can tag a single model on several contexts, such as skills, interests, and awards. It also provides other advanced functionality.}
gem.summary = "Advanced tagging for Rails."
gem.email = %q{michael@intridea.com}
gem.homepage = ''

gem.add_runtime_dependency 'rails'
gem.add_runtime_dependency 'rails', '~> 3.1'
gem.add_development_dependency 'rspec', '~> 2.5'
gem.add_development_dependency 'sqlite3'
gem.add_development_dependency 'mysql2', '< 0.3'
gem.add_development_dependency 'mysql2', '~> 0.3.7'
gem.add_development_dependency 'pg'
gem.add_development_dependency 'guard'
gem.add_development_dependency 'guard-rspec'
Expand Down
4 changes: 0 additions & 4 deletions lib/acts-as-taggable-on.rb
@@ -1,12 +1,9 @@
require "active_record"
require "active_record/version"
require "action_view"
RAILS_3 = ::ActiveRecord::VERSION::MAJOR >= 3

$LOAD_PATH.unshift(File.dirname(__FILE__))

require "acts_as_taggable_on/compatibility/active_record_backports" unless RAILS_3

require "acts_as_taggable_on/utils"

require "acts_as_taggable_on/acts_as_taggable_on"
Expand All @@ -16,7 +13,6 @@
require "acts_as_taggable_on/acts_as_taggable_on/ownership"
require "acts_as_taggable_on/acts_as_taggable_on/related"

#require "acts_as_taggable_on/utils"
require "acts_as_taggable_on/acts_as_tagger"
require "acts_as_taggable_on/tag"
require "acts_as_taggable_on/tag_list"
Expand Down
17 changes: 4 additions & 13 deletions lib/acts_as_taggable_on/acts_as_taggable_on.rb
Expand Up @@ -28,29 +28,20 @@ def acts_as_taggable_on(*tag_types)
tag_types = tag_types.to_a.flatten.compact.map(&:to_sym)

if taggable?
if RAILS_3
self.tag_types = (self.tag_types + tag_types).uniq
else
write_inheritable_attribute(:tag_types, (self.tag_types + tag_types).uniq)
end
self.tag_types = (self.tag_types + tag_types).uniq
else
if RAILS_3
class_attribute :tag_types
self.tag_types = tag_types
else
write_inheritable_attribute(:tag_types, tag_types)
class_inheritable_reader(:tag_types)
end


class_eval do
has_many :taggings, :as => :taggable, :dependent => :destroy, :include => :tag, :class_name => "ActsAsTaggableOn::Tagging"
has_many :base_tags, :through => :taggings, :source => :tag, :class_name => "ActsAsTaggableOn::Tag"

def self.taggable?
true
end
include ActsAsTaggableOn::Utils

include ActsAsTaggableOn::Utils
include ActsAsTaggableOn::Taggable::Core
include ActsAsTaggableOn::Taggable::Collection
include ActsAsTaggableOn::Taggable::Cache
Expand Down
17 changes: 8 additions & 9 deletions lib/acts_as_taggable_on/tag.rb
@@ -1,8 +1,7 @@
module ActsAsTaggableOn
class Tag < ::ActiveRecord::Base
include ActsAsTaggableOn::ActiveRecord::Backports if ::ActiveRecord::VERSION::MAJOR < 3
include ActsAsTaggableOn::Utils

attr_accessible :name

### ASSOCIATIONS:
Expand All @@ -15,15 +14,15 @@ class Tag < ::ActiveRecord::Base
validates_uniqueness_of :name

### SCOPES:

def self.named(name)
where(["name #{like_operator} ?", escape_like(name)])
end

def self.named_any(list)
where(list.map { |tag| sanitize_sql(["name #{like_operator} ?", escape_like(tag.to_s)]) }.join(" OR "))
end

def self.named_like(name)
where(["name #{like_operator} ?", "%#{escape_like(name)}%"])
end
Expand All @@ -44,7 +43,7 @@ def self.find_or_create_all_with_like_by_name(*list)
return [] if list.empty?

existing_tags = Tag.named_any(list).all
new_tag_names = list.reject do |name|
new_tag_names = list.reject do |name|
name = comparable_name(name)
existing_tags.any? { |tag| comparable_name(tag.name) == name }
end
Expand All @@ -66,13 +65,13 @@ def to_s
def count
read_attribute(:count).to_i
end

def safe_name
name.gsub(/[^a-zA-Z0-9]/, '')
end

class << self
private
private
def comparable_name(str)
RUBY_VERSION >= "1.9" ? str.downcase : str.mb_chars.downcase
end
Expand Down

0 comments on commit fd8ead9

Please sign in to comment.