Exemple #1
0
 function widget_newsletter($args)
 {
     $options = get_option('newsletter');
     // $args is an array of strings that help widgets to conform to
     // the active theme: before_widget, before_title, after_widget,
     // and after_title are the array keys. Default tags: li and h2.
     extract($args);
     // Each widget can store its own options. We keep strings here.
     $optionsw = get_option('newsletter_widget');
     $title = $optionsw['title'];
     $text = $optionsw['text'];
     $form = $optionsw['form'];
     // These lines generate our output. Widgets can be very complex
     // but as you can see here, they can also be very, very simple.
     echo $before_widget . $before_title . $title . $after_title;
     if (newsletter_has_extras('1.0.2') && $form != '') {
         $buffer .= str_replace('{newsletter_url}', $options['url'], newsletter_extras_get_form($form));
     } else {
         if (isset($options['noname'])) {
             $buffer = str_replace('{newsletter_url}', $options['url'], newsletter_label('widget_form_noname'));
         } else {
             $buffer = str_replace('{newsletter_url}', $options['url'], newsletter_label('widget_form'));
         }
     }
     $buffer = str_replace('{text}', $optionsw['text'], $buffer);
     $buffer = str_replace('{count}', newsletter_subscribers_count(), $buffer);
     //if (defined('NEWSLETTER_EXTRAS')) echo $buffer;
     //else echo $buffer . '<div style="text-align:right;padding:0 10px;margin:0;"><a style="font-size:9px;color:#bbb;text-decoration:none" href="http://www.satollo.net">by satollo.net</a></div>';
     echo $buffer;
     echo $after_widget;
 }
Exemple #2
0
function newsletter_call($attrs, $content = null)
{
    global $newsletter_step, $newsletter_subscriber;
    $options = get_option('newsletter');
    $buffer = '';
    // When a user is starting the subscription process
    if ($newsletter_step == 'subscription') {
        $buffer .= $options['subscription_text'];
        if (newsletter_has_extras('1.0.2') && isset($attrs['form'])) {
            $buffer .= str_replace('{newsletter_url}', $options['url'], newsletter_extras_get_form($attrs['form']));
        } else {
            if (isset($options['noname'])) {
                $buffer .= newsletter_label('subscription_form_noname');
            } else {
                $buffer .= newsletter_label('subscription_form');
            }
            //if (!defined('NEWSLETTER_EXTRAS'))
            //    $buffer .=  '<div style="text-align:right;padding:0 10px;margin:0;"><a style="font-size:9px;color:#bbb;text-decoration:none" href="http://www.satollo.net">by satollo.net</a></div>';
        }
    }
    // When a user asked to subscribe and the connfirmation request has been sent
    if ($newsletter_step == 'subscribed') {
        $text = newsletter_replace($options['subscribed_text'], $newsletter_subscriber);
        $buffer .= $text;
    }
    if ($newsletter_step == 'confirmed') {
        $text = newsletter_replace($options['confirmed_text'], $newsletter_subscriber);
        $buffer .= $text;
        if (isset($options['confirmed_tracking'])) {
            ob_start();
            eval('?>' . $options['confirmed_tracking']);
            $buffer .= ob_get_clean();
        }
    }
    // Here we are when an unsubscription is requested. There are two kind of unsubscription: the
    // ones with email and token, so the user has only to confire and the ones without
    // data, so the user is requested to insert his email. In the latter case an email
    // will be sent to the user with alink to confirm the email removal.
    if ($newsletter_step == 'unsubscription' || $newsletter_step == 'unsubscription_error') {
        $newsletter_subscriber = newsletter_get_subscriber($_REQUEST['ni']);
        $buffer = newsletter_replace($options['unsubscription_text'], $newsletter_subscriber);
        $url = newsletter_add_qs($options['url'], 'na=uc&amp;ni=' . $newsletter_subscriber->id . '&amp;nt=' . $_REQUEST['nt']);
        $buffer = newsletter_replace_url($buffer, 'UNSUBSCRIPTION_CONFIRM_URL', $url);
    }
    // Last message shown to user to say good bye
    if ($newsletter_step == 'unsubscribed') {
        $text = $options['unsubscribed_text'];
        $text = newsletter_replace($text, $newsletter_subscriber);
        $buffer .= $text;
    }
    return '<div class="newsletter">' . $buffer . '</div>';
}