/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); if ($this->item_data['name'] == 'reply') { $item = $this->getReply($table->id); if (!$item) { return false; } $this->item_data['title'] = $item->title; // Set meta data $this->item_data['metadata']->set('alias', $item->alias); $this->item_data['metadata']->set('p_alias', $item->p_alias); $this->item_data['metadata']->set('p_title', $item->p_title); $this->item_data['metadata']->set('t_id', $item->topic_id); $this->item_data['metadata']->set('t_alias', $item->alias); $this->item_data['metadata']->set('t_title', $item->title); } if ($this->item_data['name'] == 'topic') { // Set meta data $p = $this->getProject($table->project_id); $this->item_data['metadata']->set('p_alias', $p->alias); $this->item_data['metadata']->set('p_title', $p->title); } $this->item_data['xref_id'] = $table->project_id; if ($store) { return $this->save(); } return true; }
/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); // Handle directory if ($context == 'com_pfrepo.directory') { $item = $this->getProject($table->project_id); $item->p_alias = $item->alias; $item->p_title = $item->title; $item->path = $table->path; } else { // Note and File list($ext, $type) = explode('.', $context, 2); if ($ext != 'com_pfrepo' || $type == 'attachment') { return true; } $item = $this->getItem($type, $table->id); $this->item_data['metadata']->set('d_id', $item->parent_id); $this->item_data['metadata']->set('d_alias', $item->d_alias); } // Handle shared data $this->item_data['xref_id'] = $table->project_id; $this->item_data['metadata']->set('alias', $item->alias); $this->item_data['metadata']->set('p_alias', $item->p_alias); $this->item_data['metadata']->set('p_title', $item->p_title); $this->item_data['metadata']->set('path', $item->path); if ($store) { return $this->save(); } return true; }
/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); $this->item_data['xref_id'] = $table->project_id; // Set meta data $p = $this->getProject($table->project_id); $this->item_data['metadata']->set('p_alias', $p->alias); $this->item_data['metadata']->set('p_title', $p->title); if ($store) { return $this->save(); } return true; }
/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); $project = $this->getProject($table->project_id); $this->item_data['xref_id'] = $table->project_id; $this->item_data['metadata']->set('alias', $table->alias); $this->item_data['metadata']->set('p_alias', $project->alias); $this->item_data['metadata']->set('p_title', $project->title); if ($context == 'com_pfdesigns.design') { if ($table->album_id) { $album = $this->getItem('album', $table->album_id); $this->item_data['metadata']->set('a_id', $table->album_id); $this->item_data['metadata']->set('a_alias', $album->alias); $this->item_data['metadata']->set('a_title', $album->title); } else { $this->item_data['metadata']->set('a_id', 0); $this->item_data['metadata']->set('a_alias', ''); $this->item_data['metadata']->set('a_title', ''); } } if ($context == 'com_pfdesigns.revision') { $design = $this->getItem('design', $table->parent_id); $this->item_data['metadata']->set('d_id', $table->parent_id); $this->item_data['metadata']->set('d_alias', $design->alias); $this->item_data['metadata']->set('d_title', $design->title); $this->item_data['metadata']->set('a_id', $design->album_id); $this->item_data['metadata']->set('a_alias', $design->a_alias); $this->item_data['metadata']->set('a_title', $design->a_title); } // Override event if (in_array(JRequest::getVar('task'), array('approve', 'decline')) && !$is_new) { $event_name = $table->approved ? 'approve_design' : 'decline_design'; $event_id = $this->activity_model->getEventId($event_name); if (!$event_id) { $event_id = $this->activity_model->saveEvent($event_name); } if (!$event_id) { return true; } list($extension, $item_name) = explode('.', $context, 2); $this->setDataFromContext($extension, $item_name, $event_id); } if ($store) { return $this->save(); } return true; }
/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); // Handle task complete event if (JRequest::getVar('task') == 'complete') { $event_name = $table->complete ? 'complete' : 'incomplete'; $event_id = $this->activity_model->getEventId($event_name); if (!$event_id) { $event_id = $this->activity_model->saveEvent($event_name); } if (!$event_id) { return true; } list($extension, $item_name) = explode('.', $context, 2); $this->setDataFromContext($extension, $item_name, $event_id); } $this->item_data['xref_id'] = $table->project_id; // Set meta data for a task if ($context == 'com_pftasks.task') { $item = $this->getTask($table->id); $this->item_data['metadata']->set('p_alias', $item->p_alias); $this->item_data['metadata']->set('p_title', $item->p_title); $this->item_data['metadata']->set('m_id', $item->milestone_id); $this->item_data['metadata']->set('m_alias', $item->m_alias); $this->item_data['metadata']->set('m_title', $item->m_title); $this->item_data['metadata']->set('l_id', $item->list_id); $this->item_data['metadata']->set('l_alias', $item->l_alias); $this->item_data['metadata']->set('l_title', $item->l_title); } // Set meta data for a list if ($context == 'com_pftasks.tasklist') { $item = $this->getTaskList($table->id); $this->item_data['metadata']->set('p_alias', $item->p_alias); $this->item_data['metadata']->set('p_title', $item->p_title); $this->item_data['metadata']->set('m_id', $item->milestone_id); $this->item_data['metadata']->set('m_alias', $item->m_alias); $this->item_data['metadata']->set('m_title', $item->m_title); } if ($store) { return $this->save(); } return true; }
/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); $this->item_data['xref_id'] = $table->id; // Set meta data $this->item_data['metadata']->set('cat_alias', ''); $this->item_data['metadata']->set('cat_title', ''); if ($table->catid) { $cat = $this->getCategory($table->catid); if ($cat) { $this->item_data['metadata']->set('cat_alias', $cat->alias); $this->item_data['metadata']->set('cat_title', $cat->title); } } if ($store) { return $this->save(); } return true; }
/** * Method to store user activity after a save event * * @param string $context The item context * @param object $table The item table object * @param boolean $is_new New item indicator (True is new, False is update) * @param boolean $store Indicates whether to store the data or not * * @return boolean True on success, False on error */ public function onUserActivityAfterSave($context, $table, $is_new, $store = true) { parent::onUserActivityAfterSave($context, $table, $is_new, false); // Dont track adding to time recorder if (JRequest::getVar('task') == 'add') { return true; } // Set the title $this->item_data['title'] = $table->task_title; $this->item_data['xref_id'] = $table->project_id; // Set meta data $p = $this->getProject($table->project_id); $this->item_data['metadata']->set('p_alias', $p->alias); $this->item_data['metadata']->set('p_title', $p->title); $this->item_data['metadata']->set('log_time', (int) $table->log_time); $this->item_data['metadata']->set('t_id', (int) $table->task_id); if ($store) { return $this->save(); } return true; }