Class: Panel

Inherits:
ActiveRecord::Base
  • Object
show all
Defined in:
app/models/panel.rb

Overview

Panel

Panel contient les panneaux publicitaires proprement dits. Ces panneaux appartiennent à des médias, décrits par le modèle Furniture.

Schema Information

Schema version: 13

Table name: panels

id           :integer(11)   not null, primary key
name         :string(64)    not null
panel_key    :string(36)    not null
furniture_id :integer(11)   not null
network_id   :integer(11)   
created_at   :datetime      
updated_at   :datetime

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.unassigned_panelsObject

Retourne la liste de tous les panneaux non attribués à un réseau



117
118
119
# File 'app/models/panel.rb', line 117

def self.unassigned_panels
  Panel.find(:all, :conditions => [ 'network_id IS NULL' ])
end

Instance Method Details

#after_saveObject

Enregistrement d’une nouvelle révision du panneau à chaque enregistrement, que ce soit “save” ou “update”.

Ce callback sera appelé aussi bien pour les modification sur le panneau que lors de modifications du réseau associé.



133
134
135
# File 'app/models/panel.rb', line 133

def after_save
  PanelRevision.add(self) # Nouvelle révision du panneau
end

#before_validationObject

Met une texture par défaut si aucune n’est précisée à la création



122
123
124
125
126
# File 'app/models/panel.rb', line 122

def before_validation # :doc:
  if !texture
    self.texture = ObjectInWorld.default_texture
  end
end