25 lines
653 B
Ruby
25 lines
653 B
Ruby
|
class RegisteredDesktopWidget
|
||
|
include Mongoid::Document
|
||
|
include Mongoid::Timestamps
|
||
|
include OrbitCategory::Categorizable
|
||
|
include OrbitTag::Taggable
|
||
|
include Slug
|
||
|
|
||
|
field :name, as: :slug_title, localize: true
|
||
|
field :widget_key
|
||
|
field :create_user_id, type: BSON::ObjectId
|
||
|
field :update_user_id, type: BSON::ObjectId
|
||
|
field :approved, type: Boolean, :default => false
|
||
|
scope :approve, ->{ where(approved: true) }
|
||
|
|
||
|
mount_uploader :widget, TemplateUploader
|
||
|
mount_uploader :icon, ImageUploader
|
||
|
|
||
|
after_create :save_widget_key
|
||
|
|
||
|
def save_widget_key
|
||
|
self.widget_key = self.name.parameterize + "-" + self.uid
|
||
|
self.save
|
||
|
end
|
||
|
end
|