X-Git-Url: https://projects.mako.cc/source/selectricity-live/blobdiff_plain/1260415e640fec24f8c970ae8e61f4a7ab4594d4..31b488895f365c4bd3b0d295cea4a096e1846b23:/app/models/candidate.rb?ds=sidebyside diff --git a/app/models/candidate.rb b/app/models/candidate.rb index e17ba29..eeba4d2 100644 --- a/app/models/candidate.rb +++ b/app/models/candidate.rb @@ -1,5 +1,12 @@ class Candidate < ActiveRecord::Base belongs_to :election + validates_presence_of :name + + # i have to call this picture_assoc because picture= does not overload + # the normal association method made by has_one + has_one :picture_obj, :class_name => "Picture" + + # validate uniqueness of a name *within a given election* def <=>(other) self.name <=> other.name @@ -9,4 +16,22 @@ class Candidate < ActiveRecord::Base name end + def picture + picture_obj + end + + def picture=(field) + if field and field.length > 0 + self.picture_obj = Picture.new.set_from_field(field) + return picture_obj.save + else + return false + end + end + + def picture? + !self.picture_obj.nil? + end + end +