/** * Block an email address from all newsletters * * @param string $email The email address to block * * @return boolean True on success, false on failure */ function newsletter_unsubscribe_all_email($email) { $result = false; if (!empty($email) && newsletter_is_email_address($email)) { // get subscription $subscription = newsletter_get_subscription($email); if (empty($subscription)) { $subscription = new NewsletterSubscription(); $subscription->title = $email; if (!$subscription->save()) { return false; } // remove all existing subscriptions remove_entity_relationships($subscription->getGUID(), NewsletterSubscription::SUBSCRIPTION); // add to general blacklist $site = elgg_get_site_entity(); $result = (bool) add_entity_relationship($subscription->getGUID(), NewsletterSubscription::GENERAL_BLACKLIST, $site->getGUID()); } } return $result; }
$successMessage = ""; if (sizeof($_POST) > 0) { $logger->LogInfo("Processing newsletter subscription ..."); $systemConfiguration->assertReferer(); if (isset($_POST['email'])) { $emailAddress = trim($_POST['email']); $logger->LogDebug("Email address for newsletter was specified."); $logger->LogDebug($emailAddress); $subscription = NewsletterSubscription::fetchFromDbForEmail($emailAddress); if ($subscription == null) { $subscription = new NewsletterSubscription(); } $subscription->email = $emailAddress; $subscription->isActive = true; $logger->LogDebug("Saving subscription ..."); if ($subscription->save()) { $logger->LogDebug("Saving is successful."); $successMessage = HOME_BOX_BOTTOM_LEFT_SUCCESS; } else { $logger->LogError("Saving FAILED!"); $logger->LogError($subscription->errors); $errorMessage = BOOKING_DETAILS_EMAIL_INVALID; } } } $logger->LogDebug("Starting HTML ..."); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>