/** * Get the subscription URL. * * @param int $entityID * @param null $entity * @param string $action * * @return string */ public function subscriptionURL($entityID = NULL, $entity = NULL, $action = 'cancel') { $url = parent::subscriptionURL($entityID, $entity, $action); if (!isset($url)) { return NULL; } if (stristr($url, '&cs=')) { return $url; } $user_id = CRM_Core_Session::singleton()->get('userID'); $contact_id = $this->getContactID($entity, $entityID); if ($contact_id && $user_id != $contact_id) { return $url . '&cs=' . CRM_Contact_BAO_Contact_Utils::generateChecksum($contact_id, NULL, 'inf'); } return $url; }