lib/common/base.rb in inkwell-1.0.5 vs lib/common/base.rb in inkwell-1.1.1

- old
+ new

@@ -1,26 +1,50 @@ module Inkwell module Common - def is_comment(obj) + def get_item_type(obj) post_class = Object.const_get ::Inkwell::Engine::config.post_table.to_s.singularize.capitalize case obj when ::Inkwell::Comment - is_comment = true + result = ::Inkwell::Constants::ItemTypes::COMMENT when post_class - is_comment = false + result = ::Inkwell::Constants::ItemTypes::POST else raise "obj should be Comment or #{post_class.class}" end - is_comment + result end + def get_class_for_item_type(type) + post_class = Object.const_get ::Inkwell::Engine::config.post_table.to_s.singularize.capitalize + case type + when ::Inkwell::Constants::ItemTypes::COMMENT + result = ::Inkwell::Comment + when ::Inkwell::Constants::ItemTypes::POST + result = post_class + else raise "obj type #{type} is unknown" + end + result + end + def check_user(obj) user_class = Object.const_get ::Inkwell::Engine::config.user_table.to_s.singularize.capitalize raise "user should be a #{user_class.to_s}" unless obj.is_a? user_class end def check_post(obj) post_class = Object.const_get ::Inkwell::Engine::config.post_table.to_s.singularize.capitalize raise "post should be a #{user_class.to_s}" unless obj.is_a? post_class + end + end + + module Constants + module ItemTypes + POST = 'p' + COMMENT = 'c' + end + + module OwnerTypes + USER = 'u' + COMMUNITY = 'c' end end end \ No newline at end of file