##// END OF EJS Templates
Allow referencing issue numbers in brackets. This style is used by other...
Allow referencing issue numbers in brackets. This style is used by other bug trackers. Examples: * "[#nnn] Worked on this issue" * "[#nnn, #mmm] Worked on these" * "[#nnn #mmm] Working some more" git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@2854 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r2678:6da0542af48b
r2749:609faba6a3d3
Show More
token.rb
51 lines | 1.5 KiB | text/x-ruby | RubyLexer
Jean-Philippe Lang
Delete previous tokens when creating a new one....
r2678 # Redmine - project management software
# Copyright (C) 2006-2009 Jean-Philippe Lang
Jean-Philippe Lang
0.3 unstable...
r10 #
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# 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 General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
class Token < ActiveRecord::Base
belongs_to :user
Jean-Philippe Lang
Add token value uniqueness validation (#3351)....
r2642 validates_uniqueness_of :value
Jean-Philippe Lang
0.3 unstable...
r10
Jean-Philippe Lang
Delete previous tokens when creating a new one....
r2678 before_create :delete_previous_tokens
Jean-Philippe Lang
0.3 unstable...
r10 @@validity_time = 1.day
def before_create
self.value = Token.generate_token_value
end
# Return true if token has expired
def expired?
return Time.now > self.created_on + @@validity_time
end
# Delete all expired tokens
def self.destroy_expired
Jean-Philippe Lang
added rss/atom feeds at project levels for:...
r336 Token.delete_all ["action <> 'feeds' AND created_on < ?", Time.now - @@validity_time]
Jean-Philippe Lang
0.3 unstable...
r10 end
private
def self.generate_token_value
Jean-Philippe Lang
Use ActiveSupport::SecureRandom to generate tokens (#3351)....
r2641 ActiveSupport::SecureRandom.hex(20)
Jean-Philippe Lang
0.3 unstable...
r10 end
Jean-Philippe Lang
Delete previous tokens when creating a new one....
r2678
# Removes obsolete tokens (same user and action)
def delete_previous_tokens
if user
Token.delete_all(['user_id = ? AND action = ?', user.id, action])
end
end
Jean-Philippe Lang
0.3 unstable...
r10 end