Mercurial > hg > soundsoftware-site
comparison app/models/user_preference.rb @ 1115:433d4f72a19b redmine-2.2
Update to Redmine SVN revision 11137 on 2.2-stable branch
author | Chris Cannam |
---|---|
date | Mon, 07 Jan 2013 12:01:42 +0000 |
parents | 5f33065ddc4b |
children | 622f24f53b42 261b3d9a4903 |
comparison
equal
deleted
inserted
replaced
929:5f33065ddc4b | 1115:433d4f72a19b |
---|---|
1 # Redmine - project management software | 1 # Redmine - project management software |
2 # Copyright (C) 2006-2011 Jean-Philippe Lang | 2 # Copyright (C) 2006-2012 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. |
19 belongs_to :user | 19 belongs_to :user |
20 serialize :others | 20 serialize :others |
21 | 21 |
22 attr_protected :others, :user_id | 22 attr_protected :others, :user_id |
23 | 23 |
24 def initialize(attributes = nil) | 24 before_save :set_others_hash |
25 | |
26 def initialize(attributes=nil, *args) | |
25 super | 27 super |
26 self.others ||= {} | 28 self.others ||= {} |
27 end | 29 end |
28 | 30 |
29 def before_save | 31 def set_others_hash |
30 self.others ||= {} | 32 self.others ||= {} |
31 end | 33 end |
32 | 34 |
33 def [](attr_name) | 35 def [](attr_name) |
34 if attribute_present? attr_name | 36 if attribute_present? attr_name |
40 | 42 |
41 def []=(attr_name, value) | 43 def []=(attr_name, value) |
42 if attribute_present? attr_name | 44 if attribute_present? attr_name |
43 super | 45 super |
44 else | 46 else |
45 h = read_attribute(:others).dup || {} | 47 h = (read_attribute(:others) || {}).dup |
46 h.update(attr_name => value) | 48 h.update(attr_name => value) |
47 write_attribute(:others, h) | 49 write_attribute(:others, h) |
48 value | 50 value |
49 end | 51 end |
50 end | 52 end |