Class: Document
- Inherits:
-
ApplicationRecord
- Object
- ActiveRecord::Base
- ApplicationRecord
- Document
- Includes:
- Redmine::SafeAttributes
- Defined in:
- app/models/document.rb
Overview
Redmine - project management software Copyright © 2006- Jean-Philippe Lang
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Instance Method Summary collapse
-
#initialize(attributes = nil, *args) ⇒ Document
constructor
A new instance of Document.
- #notified_users ⇒ Object
- #updated_on ⇒ Object
- #visible?(user = User.current) ⇒ Boolean
Methods included from Redmine::SafeAttributes
#delete_unsafe_attributes, included, #safe_attribute?, #safe_attribute_names, #safe_attributes=
Methods inherited from ApplicationRecord
Constructor Details
#initialize(attributes = nil, *args) ⇒ Document
Returns a new instance of Document.
59 60 61 62 63 64 |
# File 'app/models/document.rb', line 59 def initialize(attributes=nil, *args) super if new_record? self.category ||= DocumentCategory.default end end |
Instance Method Details
#notified_users ⇒ Object
74 75 76 |
# File 'app/models/document.rb', line 74 def notified_users project.notified_users.reject {|user| !visible?(user)} end |
#updated_on ⇒ Object
66 67 68 69 70 71 72 |
# File 'app/models/document.rb', line 66 def updated_on unless @updated_on a = .last @updated_on = (a && a.created_on) || created_on end @updated_on end |
#visible?(user = User.current) ⇒ Boolean
55 56 57 |
# File 'app/models/document.rb', line 55 def visible?(user=User.current) !user.nil? && user.allowed_to?(:view_documents, project) end |