refs #1245 - Subtask - Added option to events to avoid recursive calls

This commit is contained in:
Max Kamashev 2015-09-24 12:06:02 +03:00
parent aeb79f7de5
commit 5b2e49d294
2 changed files with 4 additions and 3 deletions

View File

@ -234,15 +234,16 @@ class Subtask extends Base
*
* @access public
* @param array $values Form values
* @param array $options Additional options. If passed [quietly => true] - will not be called an event
* @return bool
*/
public function update(array $values)
public function update(array $values, array $options = null)
{
$this->prepare($values);
$subtask = $this->getById($values['id']);
$result = $this->db->table(self::TABLE)->eq('id', $values['id'])->save($values);
if ($result) {
if ($result && isset($options['quietly']) && $options['quietly']) {
$event = $subtask;
$event['changes'] = array_diff_assoc($values, $subtask);
$this->container['dispatcher']->dispatch(self::EVENT_UPDATE, new SubtaskEvent($event));

View File

@ -345,7 +345,7 @@ class SubtaskTimeTracking extends Base
'id' => $subtask['id'],
'time_spent' => $subtask['time_spent'] + $time_spent,
'task_id' => $subtask['task_id'],
));
), array('quietly' => true));
}
/**