comparison app/models/user_preference.rb @ 1464:261b3d9a4903 redmine-2.4

Update to Redmine 2.4 branch rev 12663
author Chris Cannam
date Tue, 14 Jan 2014 14:37:42 +0000
parents 433d4f72a19b
children e248c7af89ec
comparison
equal deleted inserted replaced
1296:038ba2d95de8 1464:261b3d9a4903
1 # Redmine - project management software 1 # Redmine - project management software
2 # Copyright (C) 2006-2012 Jean-Philippe Lang 2 # Copyright (C) 2006-2013 Jean-Philippe Lang
3 # 3 #
4 # This program is free software; you can redistribute it and/or 4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License 5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2 6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version. 7 # of the License, or (at your option) any later version.
20 serialize :others 20 serialize :others
21 21
22 attr_protected :others, :user_id 22 attr_protected :others, :user_id
23 23
24 before_save :set_others_hash 24 before_save :set_others_hash
25 25
26 def initialize(attributes=nil, *args) 26 def initialize(attributes=nil, *args)
27 super 27 super
28 self.others ||= {} 28 self.others ||= {}
29 end 29 end
30 30
31 def set_others_hash 31 def set_others_hash
32 self.others ||= {} 32 self.others ||= {}
33 end 33 end
34 34
35 def [](attr_name) 35 def [](attr_name)
36 if attribute_present? attr_name 36 if has_attribute? attr_name
37 super 37 super
38 else 38 else
39 others ? others[attr_name] : nil 39 others ? others[attr_name] : nil
40 end 40 end
41 end 41 end
42 42
43 def []=(attr_name, value) 43 def []=(attr_name, value)
44 if attribute_present? attr_name 44 if has_attribute? attr_name
45 super 45 super
46 else 46 else
47 h = (read_attribute(:others) || {}).dup 47 h = (read_attribute(:others) || {}).dup
48 h.update(attr_name => value) 48 h.update(attr_name => value)
49 write_attribute(:others, h) 49 write_attribute(:others, h)
54 def comments_sorting; self[:comments_sorting] end 54 def comments_sorting; self[:comments_sorting] end
55 def comments_sorting=(order); self[:comments_sorting]=order end 55 def comments_sorting=(order); self[:comments_sorting]=order end
56 56
57 def warn_on_leaving_unsaved; self[:warn_on_leaving_unsaved] || '1'; end 57 def warn_on_leaving_unsaved; self[:warn_on_leaving_unsaved] || '1'; end
58 def warn_on_leaving_unsaved=(value); self[:warn_on_leaving_unsaved]=value; end 58 def warn_on_leaving_unsaved=(value); self[:warn_on_leaving_unsaved]=value; end
59
60 def no_self_notified; (self[:no_self_notified] == true || self[:no_self_notified] == '1'); end
61 def no_self_notified=(value); self[:no_self_notified]=value; end
59 end 62 end