Sha256: dcb532678590bc5b57debaf8212451f9b1111a2cead93d8e54202603ec3d7394
Contents?: true
Size: 1.38 KB
Versions: 7
Compression:
Stored size: 1.38 KB
Contents
# Copyright (c) 2008-2013 Michael Dvorkin and contributors. # # Fat Free CRM is freely distributable under the terms of MIT license. # See MIT-LICENSE file or http://www.opensource.org/licenses/mit-license.php #------------------------------------------------------------------------------ module FatFreeCRM module Exportable def self.included(base) base.extend(ClassMethods) end module ClassMethods def exportable(_options = {}) unless included_modules.include?(InstanceMethods) include InstanceMethods extend SingletonMethods end end end module InstanceMethods def user_id_full_name user = self.user user ? user.full_name : '' end def self.included(base) if base.instance_methods.include?(:assignee) || base.instance_methods.include?('assignee') define_method :assigned_to_full_name do user = assignee user ? user.full_name : '' end end if base.instance_methods.include?(:completor) || base.instance_methods.include?('completor') define_method :completed_by_full_name do user = completor user ? user.full_name : '' end end end end module SingletonMethods end end # Exportable end # FatFreeCRM ActiveRecord::Base.send(:include, FatFreeCRM::Exportable)
Version data entries
7 entries across 7 versions & 2 rubygems