Class: DcPart

Inherits:
Object
  • Object
show all
Includes:
DcPieceConcern
Defined in:
app/models/dc_part.rb

Overview

Schema information

Collection name: dc_part : Parts of page

_id BSON::ObjectId _id created_at Time created_at updated_at Time Last updated at name String Parts can be searched by name or by id description String Short description of part picture String Picture contents of part thumbnail String Small version of picture if available body String Content of this part css String CSS script String Script, if script is included in part script_type String Script type params String params piece_id BSON::ObjectId Piece name if part is connected to piece div_id String Div id (position name) where this part is displayed as defined on design site_id BSON::ObjectId site_id order Integer Order between parts active Mongoid::Boolean Part is active valid_from DateTime Part is valid from valid_to DateTime Part is valid to created_by BSON::ObjectId created_by updated_by BSON::ObjectId Last updated by _type String _type policy_id BSON::ObjectId Access policy for the part link String Link when part can be accessed with pretty link

DcPart model is used for embedding parts of final document into other models. It declares fields which may be used in various scenarios. For example:

  • part of page which is visible to all users and part only to registered users
  • list of pictures or attachments which belong to document

DcPart model inherits its definition from DcPiece model, but adds policy_id field to definition. Policy_id field may be used where site policy must be taken into account when rendering part.

Instance Method Summary collapse

Instance Method Details

#cache_clearObject

Clear parent's record from cache if cache is configured



81
82
83
# File 'app/models/dc_part.rb', line 81

def cache_clear
  _parent.cache_clear() if _parent&.respond_to?(:cache_clear)
end

#do_before_saveObject

Implementation of before_save callback.



88
89
90
91
92
# File 'app/models/dc_part.rb', line 88

def do_before_save
  if self.link.blank?
    self.link = self.name.strip.downcase.gsub(' ','-')
  end
end