X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/7b649ccad8804580632c255b9f451482fdbbe32d..206dea3e99fd260c31bc86b36b309071696f2b3a:/app/models/picture.rb?ds=sidebyside diff --git a/app/models/picture.rb b/app/models/picture.rb index e7df084..9f17ec4 100644 --- a/app/models/picture.rb +++ b/app/models/picture.rb @@ -1,20 +1,30 @@ +# Selectricity: Voting Machinery for the Masses +# Copyright (C) 2007, 2008 Benjamin Mako Hill +# Copyright (C) 2007 Massachusetts Institute of Technology +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public +# License along with this program. If not, see +# . + class Picture < ActiveRecord::Base belongs_to :candidate - def set_from_field(field) - unless field.content_type.match(/^image/) - return false - end - self.filename = base_part_of(field.original_filename) - self.filetype = field.content_type.chomp - self.data = field.read - self - end + has_attachment :storage => :file_system, + :max_size => 1.megabytes, + :thumbnails => { :thumb => '70x53' }, + :processor => :Rmagick - def base_part_of(filename) - name = File.basename(filename) - name.gsub(/[^\w._-]/, '') - end + validates_as_attachment end