equal
deleted
inserted
replaced
123 def __call__(self): |
123 def __call__(self): |
124 session = self._cw |
124 session = self._cw |
125 if session.added_in_transaction(self.entity.eid): |
125 if session.added_in_transaction(self.entity.eid): |
126 return # entity is being created |
126 return # entity is being created |
127 # then compute changes |
127 # then compute changes |
128 attrs = [k for k in self.entity.edited_attributes |
128 attrs = [k for k in self.entity.cw_edited |
129 if not k in self.skip_attrs] |
129 if not k in self.skip_attrs] |
130 if not attrs: |
130 if not attrs: |
131 return |
131 return |
132 changes = session.transaction_data.setdefault('changes', {}) |
132 changes = session.transaction_data.setdefault('changes', {}) |
133 thisentitychanges = changes.setdefault(self.entity.eid, set()) |
133 thisentitychanges = changes.setdefault(self.entity.eid, set()) |
166 event = self.event.split('_', 1)[1] |
166 event = self.event.split('_', 1)[1] |
167 if event == 'update_entity': |
167 if event == 'update_entity': |
168 if self._cw.added_in_transaction(self.entity.eid): |
168 if self._cw.added_in_transaction(self.entity.eid): |
169 return False |
169 return False |
170 if self.entity.e_schema == 'CWUser': |
170 if self.entity.e_schema == 'CWUser': |
171 if not (self.entity.edited_attributes - frozenset(('eid', 'modification_date', |
171 if not (frozenset(self.entity.cw_edited) |
172 'last_login_time'))): |
172 - frozenset(('eid', 'modification_date', |
|
173 'last_login_time'))): |
173 # don't record last_login_time update which are done |
174 # don't record last_login_time update which are done |
174 # automatically at login time |
175 # automatically at login time |
175 return False |
176 return False |
176 self._cw.transaction_data.setdefault('pendingchanges', []).append( |
177 self._cw.transaction_data.setdefault('pendingchanges', []).append( |
177 (event, self)) |
178 (event, self)) |