X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/9086b07aefc0560832373bb4ba30888d8d43f0d6..e8111bfbb23641eb8f5e6afadab6ec38e9e260c4:/app/models/token.rb?ds=inline diff --git a/app/models/token.rb b/app/models/token.rb index 4ed9598..c2d3667 100644 --- a/app/models/token.rb +++ b/app/models/token.rb @@ -1,11 +1,29 @@ -class Token < ActiveRecord::Base - belongs_to :vote +# 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 Token < ActiveRecord::Base + belongs_to :vote + def initialize super token_generator = UniqueTokenGenerator.new( 16 ) - until not token.empty? and Token.find(:all, :conditions => [ "token = ?", token ]).empty? + until not token.empty? and Token.find(:all, :conditions => [ "token = ?", token ]).empty? and token[0..3] != "open" self.token = token_generator.token end