summaryrefslogtreecommitdiff
path: root/app/models/switchboard_entry.rb
diff options
context:
space:
mode:
authorPeter Kozak <spag@golwen.net>2013-03-11 02:43:51 -0400
committerPeter Kozak <spag@golwen.net>2013-03-11 02:43:51 -0400
commit436368d7719a9447c5c09dc6f8b24a623b48f3b6 (patch)
treec288f4c91d7937303f5f2553c60aa16062bcab73 /app/models/switchboard_entry.rb
parent0c5c2bc651bc701117d376a68905cb7d2f913449 (diff)
parentbeb9e66a5b4e2744435f2c1f301828b68a58c96a (diff)
Merge branch 'develop' of github.com:amooma/GS5 into develop
Diffstat (limited to 'app/models/switchboard_entry.rb')
-rw-r--r--app/models/switchboard_entry.rb31
1 files changed, 31 insertions, 0 deletions
diff --git a/app/models/switchboard_entry.rb b/app/models/switchboard_entry.rb
new file mode 100644
index 0000000..76d002f
--- /dev/null
+++ b/app/models/switchboard_entry.rb
@@ -0,0 +1,31 @@
+class SwitchboardEntry < ActiveRecord::Base
+ # https://github.com/rails/strong_parameters
+ include ActiveModel::ForbiddenAttributesProtection
+
+ belongs_to :switchboard, :touch => true
+ belongs_to :sip_account, :touch => true
+
+ validates :switchboard,
+ :presence => true
+
+ validates :sip_account,
+ :presence => true
+
+ validates :name,
+ :length => { :maximum => 10 },
+ :uniqueness => {:scope => :switchboard_id},
+ :allow_blank => true,
+ :allow_nil => true
+
+ acts_as_list :scope => [ :switchboard_id ]
+
+ default_scope order(:position)
+
+ def to_s
+ if self.name.blank? && !self.sip_account.to_s.blank?
+ self.sip_account.to_s
+ else
+ self.name.to_s
+ end
+ end
+end