/** * add an item to the recent stack * * @param string $title the title to display * @param string $url the link for the above title * @param string $icon a link to a graphical image * @param string $id object id * * @return void * @access public * @static */ static function add($title, $url, $id, $type, $contactId, $contactName, $others = array()) { self::initialize(); $session = CRM_Core_Session::singleton(); // make sure item is not already present in list for ($i = 0; $i < count(self::$_recent); $i++) { if (self::$_recent[$i]['url'] == $url) { // delete item from array array_splice(self::$_recent, $i, 1); break; } } if (!is_array($others)) { $others = array(); } array_unshift(self::$_recent, array('title' => $title, 'url' => $url, 'id' => $id, 'type' => $type, 'contact_id' => $contactId, 'contactName' => $contactName, 'subtype' => CRM_Utils_Array::value('subtype', $others), 'isDeleted' => CRM_Utils_Array::value('isDeleted', $others, FALSE), 'image_url' => CRM_Utils_Array::value('imageUrl', $others), 'edit_url' => CRM_Utils_Array::value('editUrl', $others), 'delete_url' => CRM_Utils_Array::value('deleteUrl', $others))); if (count(self::$_recent) > self::MAX_ITEMS) { array_pop(self::$_recent); } CRM_Utils_Hook::recent(self::$_recent); $session->set(self::STORE_NAME, self::$_recent); }
/** * add an item to the recent stack * * @param string $title the title to display * @param string $url the link for the above title * @param string $icon a link to a graphical image * @param string $id object id * * @return void * @access public * @static */ static function add($title, $url, $id, $type, $contactId, $contactName, $imageUrl = null, $subtype = null) { self::initialize(); $session =& CRM_Core_Session::singleton(); // make sure item is not already present in list for ($i = 0; $i < count(self::$_recent); $i++) { if (self::$_recent[$i]['url'] == $url) { // delete item from array array_splice(self::$_recent, $i, 1); break; } } array_unshift(self::$_recent, array('title' => $title, 'url' => $url, 'id' => $id, 'type' => $type, 'subtype' => $subtype, 'contact_id' => $contactId, 'contactName' => $contactName, 'image_url' => $imageUrl)); if (count(self::$_recent) > self::MAX_ITEMS) { array_pop(self::$_recent); } require_once 'CRM/Utils/Hook.php'; CRM_Utils_Hook::recent(self::$_recent); $session->set(self::STORE_NAME, self::$_recent); }