X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=plugins%2Fnewmail%2Fsetup.php;h=0e2fcab08431fe1d6819fcc09304958ee2cd224f;hp=ecc7af3c5128cdac0f24960bba4a406d3add6402;hb=c69bc63529c64510bdccbfb74bfcecc1d9d0d07b;hpb=1f62f24f90b8f8f69181093a5d29ead788c5a90a
diff --git a/plugins/newmail/setup.php b/plugins/newmail/setup.php
index ecc7af3c..0e2fcab0 100644
--- a/plugins/newmail/setup.php
+++ b/plugins/newmail/setup.php
@@ -1,248 +1,132 @@
0, then we play a sound (using the HTML at the
- * far end of this script).
- *
- * This was tested with IE5.0 - but I hear Netscape works well,
- * too (with a plugin).
- *
- * $Id$
- */
-
- function CheckNewMailboxSound($imapConnection, $mailbox, $real_box, $delimeter, $unseen, &$total_new) {
-
- global $folder_prefix, $trash_folder, $sent_folder,
- $color, $move_to_sent, $move_to_trash,
- $unseen_notify, $unseen_type, $newmail_allbox,
- $newmail_recent, $newmail_changetitle;
-
- $mailboxURL = urlencode($real_box);
- $unseen = $recent = 0;
-
- // Skip folders for Sent and Trash
-
- if ($real_box == $sent_folder ||
- $real_box == $trash_folder) {
- return 0;
- }
-
- if (($unseen_notify == 2 && $real_box == 'INBOX') ||
- ($unseen_notify == 3 && ($newmail_allbox == 'on' ||
- $real_box == 'INBOX'))) {
- $status = sqimap_status_messages( $imapConnection, $real_box);
- if($newmail_recent == 'on') {
- $total_new += $status['RECENT'];
- } else {
- $total_new += $status['UNSEEN'];
- }
- if ($total_new) {
- return 1;
- }
-
- }
- return 0;
- }
-
- function squirrelmail_plugin_init_newmail() {
- global $squirrelmail_plugin_hooks;
-
- $squirrelmail_plugin_hooks['left_main_before']['newmail'] = 'newmail_plugin';
- $squirrelmail_plugin_hooks['optpage_register_block']['newmail'] = 'newmail_optpage_register_block';
- $squirrelmail_plugin_hooks['options_save']['newmail'] = 'newmail_sav';
- $squirrelmail_plugin_hooks['loading_prefs']['newmail'] = 'newmail_pref';
- }
-
- function newmail_optpage_register_block() {
- // Gets added to the user's OPTIONS page.
- global $optpage_blocks;
-
- if ( !soupNazi() ) {
-
- /* Register Squirrelspell with the $optionpages array. */
- $optpage_blocks[] = array(
- 'name' => _("NewMail Options"),
- 'url' => '../plugins/newmail/newmail_opt.php',
- 'desc' => _("This configures settings for playing sounds and/or showing popup windows when new mail arrives."),
- 'js' => TRUE
- );
- }
- }
-
- function newmail_sav() {
-
- global $data_dir, $username, $_POST;
-
- if ( isset($_POST['submit_newmail']) ) {
-
- if(isset($_POST['media_enable'])) {
- setPref($data_dir,$username,'newmail_enable',$_POST['media_enable']);
- } else {
- setPref($data_dir,$username,'newmail_enable','');
- }
- if(isset($_POST['media_popup'])) {
- setPref($data_dir,$username,'newmail_popup',$_POST['media_popup']);
- } else {
- setPref($data_dir,$username,'newmail_popup','');
- }
- if(isset($_POST['media_allbox'])) {
- setPref($data_dir,$username,'newmail_allbox',$_POST['media_allbox']);
- } else {
- setPref($data_dir,$username,'newmail_allbox','');
- }
- if(isset($_POST['media_recent'])) {
- setPref($data_dir,$username,'newmail_recent',$_POST['media_recent']);
- } else {
- setPref($data_dir,$username,'newmail_recent','');
- }
- if(isset($_POST['media_changetitle'])) {
- setPref($data_dir,$username,'newmail_changetitle',$_POST['media_changetitle']);
- } else {
- setPref($data_dir,$username,'newmail_changetitle','');
- }
- if(isset($_POST['media_sel'])) {
- if($_POST['media_sel'] == '(local media)') {
- setPref($data_dir,$username,'newmail_media',StripSlashes($_POST['media_file']));
- } else {
- setPref($data_dir,$username,'newmail_media',$_POST['media_sel']);
- }
- } else {
- setPref($data_dir,$username,'newmail_media','');
- }
- echo html_tag( 'p', _("New Mail Notification options saved"), 'center' );
- }
- }
-
- function newmail_pref() {
-
- global $username,$data_dir;
- global $newmail_media,$newmail_enable,$newmail_popup,$newmail_allbox;
- global $newmail_recent, $newmail_changetitle;
-
- $newmail_recent = getPref($data_dir,$username,'newmail_recent');
- $newmail_enable = getPref($data_dir,$username,'newmail_enable');
- $newmail_media = getPref($data_dir, $username, 'newmail_media', '../plugins/newmail/sounds/Notify.wav');
- $newmail_popup = getPref($data_dir, $username, 'newmail_popup');
- $newmail_allbox = getPref($data_dir, $username, 'newmail_allbox');
- $newmail_changetitle = getPref($data_dir, $username, 'newmail_changetitle');
-
- }
-
- function newmail_plugin() {
-
- global $username, $key, $imapServerAddress, $imapPort,
- $newmail_media, $newmail_enable, $newmail_popup,
- $newmail_recent, $newmail_changetitle, $imapConnection, $PHP_SELF;
-
- /* temp hack to locate the sounds correct from the src dir */
- $newmail_media = SM_PATH . 'plugins/newmail/' . $newmail_media;
- if ($newmail_enable == 'on' ||
- $newmail_popup == 'on' ||
- $newmail_changetitle) {
-
- // open a connection on the imap port (143)
-
- $boxes = sqimap_mailbox_list($imapConnection);
- $delimeter = sqimap_get_delimiter($imapConnection);
-
- $status = 0;
- $totalNew = 0;
-
- for ($i = 0;$i < count($boxes); $i++) {
-
- $line = '';
- $mailbox = $boxes[$i]['formatted'];
-
- if (! isset($boxes[$i]['unseen'])) {
- $boxes[$i]['unseen'] = '';
- }
- if ($boxes[$i]['flags']) {
- $noselect = false;
- for ($h = 0; $h < count($boxes[$i]['flags']); $h++) {
- if (strtolower($boxes[$i]["flags"][$h]) == 'noselect') {
- $noselect = TRUE;
- }
- }
- if (! $noselect) {
- $status += CheckNewMailboxSound($imapConnection,
- $mailbox,
- $boxes[$i]['unformatted'],
- $delimeter,
- $boxes[$i]['unseen'],
- $totalNew);
- }
- } else {
- $status += CheckNewMailboxSound($imapConnection,
- $mailbox,
- $boxes[$i]['unformatted'],
- $delimeter,
- $boxes[$i]['unseen'],
- $totalNew);
- }
-
- }
-
- // sqimap_logout($imapConnection);
-
- // If we found unseen messages, then we
- // will play the sound as follows:
-
- if ($newmail_changetitle) {
- echo "\n";
- }
-
- if ($totalNew > 0 && $newmail_enable == 'on') {
- echo "