예제 #1
0
 * Envato: 4ffca17e-861e-4921-86c3-8931978c40ca
 * Package Date: 2015-11-25 02:55:20 
 * IP Address: 67.79.165.254
 */
$newsletter_id = isset($_REQUEST['n']) ? (int) $_REQUEST['n'] : false;
$newsletter_member_id = isset($_REQUEST['nm']) ? (int) $_REQUEST['nm'] : 0;
$send_id = isset($_REQUEST['s']) ? (int) $_REQUEST['s'] : 0;
$hash = isset($_REQUEST['hash']) ? trim($_REQUEST['hash']) : false;
if ($newsletter_id && $newsletter_member_id && $hash) {
    if (isset($_REQUEST[_MEMBER_HASH_URL_REDIRECT_BITS])) {
        $correct_hash = module_newsletter::newsletter_redirect_hash($newsletter_member_id, $send_id);
    } else {
        $correct_hash = module_newsletter::unsubscribe_url($newsletter_id, $newsletter_member_id, $send_id, true);
    }
    if ($correct_hash == $hash) {
        $member = module_newsletter::get_newsletter_member($newsletter_member_id);
        if (isset($_REQUEST['email']) && $_REQUEST['email']) {
            if (strtolower($member['email']) == strtolower($_REQUEST['email'])) {
                module_newsletter::unsubscribe_member($newsletter_id, $newsletter_member_id, $send_id);
            } else {
                if (!module_newsletter::unsubscribe_member_via_email($_REQUEST['email'])) {
                    echo 'Unsubscribe failed... Please enter a valid email address.';
                }
            }
            // is the newsletter module giving us a subscription redirection?
            if (module_config::c('newsletter_unsubscribe_redirect', '')) {
                redirect_browser(module_config::c('newsletter_unsubscribe_redirect', ''));
            }
            // or display a message.
            $template = module_template::get_template_by_key('newsletter_unsubscribe_done');
            $data = $member;