Pommo_Helper_Messages::notify PHP Method

notify() public method

public notify ( &$notices, &$sub, $type, $comments = false )
    function notify(&$notices, &$sub, $type, $comments = false)
    {
        global $pommo;
        require_once Pommo::$_baseDir . 'classes/Pommo_Mailer.php';
        $mails = Pommo_Helper::trimArray(explode(',', $notices['email']));
        if (empty($mails[0])) {
            $mails = array(Pommo::$_config['admin_email']);
        }
        $subject = $notices['subject'] . ' ';
        $body = sprintf(Pommo::_T('poMMo %s Notice'), $type);
        $body .= "  [" . date("F j, Y, g:i a") . "]\n\n";
        $body .= "EMAIL: " . $sub['email'] . "\n";
        $body .= "IP: " . $sub['ip'] . "\n";
        $body .= "REGISTERED: " . $sub['registered'] . "\n\n";
        if ($comments) {
            $body .= "COMMENTS: {$comments} \n\n";
        }
        $body .= "DATA:\n";
        require_once Pommo::$_baseDir . 'classes/Pommo_Fields.php';
        $fields = Pommo_Fields::getNames();
        foreach ($sub['data'] as $fid => $v) {
            $body .= "\t" . $fields[$fid] . ": {$v}\n";
        }
        switch ($type) {
            case 'subscribe':
                $subject .= Pommo::_T('new subscriber!');
                break;
            case 'unsubscribe':
                $subject .= Pommo::_T('user unsubscribed.');
                break;
            case 'pending':
                $subject .= Pommo::_T('new pending!');
                break;
            case 'update':
                $subject .= Pommo::_T('subscriber updated.');
                break;
        }
        $mail = new Pommo_Mailer();
        // allow mail to be sent, even if demo mode is on
        $mail->toggleDemoMode("off");
        // send the confirmation mail
        $mail->prepareMail($subject, $body);
        foreach ($mails as $to) {
            $mail->bmSendmail($to);
        }
        // reset demo mode to default
        $mail->toggleDemoMode();
        return;
    }

Usage Example

Example #1
0
$notices = unserialize($config['notices']);
if (Pommo_Pending::perform($pending)) {
    require_once Pommo::$_baseDir . 'classes/Pommo_Helper_Messages.php';
    // get subscriber info
    require_once Pommo::$_baseDir . 'classes/Pommo_Subscribers.php';
    $subscriber = current(Pommo_Subscribers::get(array('id' => $pending['subscriber_id'])));
    switch ($pending['type']) {
        case "add":
            // send/print welcome message
            Pommo_Helper_Messages::sendMessage(array('to' => $subscriber['email'], 'type' => 'subscribe'));
            if (isset($notices['subscribe']) && $notices['subscribe'] == 'on') {
                Pommo_Helper_Messages::notify($notices, $subscriber, 'subscribe');
            }
            if (!empty($config['site_success'])) {
                Pommo::redirect($config['site_success']);
            }
            break;
        case "change":
            if (isset($notices['update']) && $notices['update'] == 'on') {
                Pommo_Helper_Messages::notify($notices, $subscriber, 'update');
            }
            $logger->addMsg(Pommo::_T('Your records have been updated.'));
            break;
        case "password":
            break;
        default:
            $logger->addMsg('Unknown Pending Type.');
            break;
    }
}
$view->display('user/confirm');
All Usage Examples Of Pommo_Helper_Messages::notify