summaryrefslogtreecommitdiff
path: root/app/models/route_element.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/route_element.rb')
-rw-r--r--app/models/route_element.rb26
1 files changed, 26 insertions, 0 deletions
diff --git a/app/models/route_element.rb b/app/models/route_element.rb
new file mode 100644
index 0000000..94f0f84
--- /dev/null
+++ b/app/models/route_element.rb
@@ -0,0 +1,26 @@
+class RouteElement < ActiveRecord::Base
+ ELEMENT_ACTIONS = ['none', 'match', 'not_match', 'set']
+
+ attr_accessible :call_route_id, :var_in, :var_out, :pattern, :replacement, :action, :mandatory, :position
+
+ belongs_to :call_route
+
+ acts_as_list :scope => :call_route
+
+ validates :action,
+ :presence => true,
+ :inclusion => { :in => ELEMENT_ACTIONS }
+
+
+ def to_s
+ "#{pattern} => #{var_in} #{var_out}"
+ end
+
+ def move_up?
+ #return self.position.to_i > RouteElement.where(:call_route_id => self.call_route_id ).order(:position).first.position.to_i
+ end
+
+ def move_down?
+ #return self.position.to_i < RouteElement.where(:call_route_id => self.call_route_id ).order(:position).last.position.to_i
+ end
+end