Add preview pane to advanced default template. This serves as an example of how...
[squirrelmail.git] / plugins / newmail / newmail_opt.php
index 4b450c7bd0e25fa414c51d14a8b4b557e407e714..5b194f3875e87d890f9d17a77ecb7c34b9f775af 100644 (file)
@@ -1,39 +1,29 @@
 <?php
+
 /**
  * newmails_opt.php - options page
  *
- * Copyright (c) 1999-2005 The SquirrelMail Project Team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
- *
  * Displays all options relating to new mail sounds
  *
+ * @copyright &copy; 1999-2007 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package plugins
  * @subpackage newmail
  */
 
-/** @ignore */
-define('SM_PATH','../../');
+/**
+ * Path for SquirrelMail required files.
+ * @ignore
+ */
+require('../../include/init.php');
 
-/* SquirrelMail required files. */
-include_once(SM_PATH . 'include/validate.php');
-/* sqm_baseuri function */
-include_once(SM_PATH . 'functions/display_messages.php');
 /** Plugin functions (also loads plugin's config) */
 include_once(SM_PATH . 'plugins/newmail/functions.php');
 
-displayPageHeader($color, 'None');
-
-$media_enable = getPref($data_dir,$username, 'newmail_enable', 'FALSE' );
-$media_popup = getPref($data_dir, $username,'newmail_popup');
-$media_allbox = getPref($data_dir,$username,'newmail_allbox');
-$media_recent = getPref($data_dir,$username,'newmail_recent');
-$media_changetitle = getPref($data_dir,$username,'newmail_changetitle');
-$media = getPref($data_dir,$username,'newmail_media', '(none)');
-$media_userfile_name = getPref($data_dir,$username,'newmail_userfile_name','');
+include_once(SM_PATH . 'functions/forms.php');
 
-// Set $allowsound to false if you don't want sound files available
-$allowsound = "true";
+displayPageHeader($color, 'None');
 
 echo html_tag( 'table', '', 'center', $color[0], 'width="95%" cellpadding="1" cellspacing="0" border="0"' ) . "\n" .
         html_tag( 'tr' ) . "\n" .
@@ -43,9 +33,7 @@ echo html_tag( 'table', '', 'center', $color[0], 'width="95%" cellpadding="1" ce
                     html_tag( 'tr' ) . "\n" .
                         html_tag( 'td', '', 'left', $color[4] ) . "<br />\n";
 
-echo html_tag( 'p',
-        sprintf(_("The %s option will check ALL of your folders for unseen mail, not just the inbox for notification."), '&quot;'._("Check all boxes, not just INBOX").'&quot;')
-     ) . "\n" .
+echo html_tag( 'p',_("The NewMail plugin will follow the Folder Preferences option &quot;Enable Unread Message Notification&quot;")) . "\n" .
      html_tag( 'p',
         sprintf(_("Selecting the %s option will enable the showing of a popup window when unseen mail is in your folders (requires JavaScript)."), '&quot;'._("Show popup window on new mail").'&quot;')
      ) . "\n" .
@@ -55,7 +43,7 @@ echo html_tag( 'p',
      html_tag( 'p',
         sprintf(_("Selecting the %s option will change the title in some browsers to let you know when you have new mail (requires JavaScript, and only works in IE but you won't see errors with other browsers). This will always tell you if you have new mail, even if you have %s enabled."), '&quot;'._("Change title on supported browsers").'&quot;', '&quot;'._("Count only messages that are RECENT").'&quot;')
      ) . "\n";
-if ($allowsound == "true") {
+if ($newmail_allowsound) {
     echo html_tag( 'p',
             sprintf(_("Select %s to turn on playing a media file when unseen mail is in your folders. When enabled, you can specify the media file to play in the provided file box."), '&quot;'._("Enable Media Playing").'&quot;')
          ) . "\n" .
@@ -71,22 +59,23 @@ echo '</td></tr>' .
 echo '<form action="'.sqm_baseuri().'src/options.php" method="post" enctype="multipart/form-data">' . "\n" .
         html_tag( 'table', '', '', '', 'width="100%" cellpadding="5" cellspacing="0" border="0"' ) . "\n";
 
-// Option: media_allbox
-echo html_tag( 'tr' ) .
-        html_tag( 'td', _("Check all boxes, not just INBOX").':', 'right', '', 'style="white-space: nowrap;"' ) .
-            html_tag( 'td', '', 'left' ) .
-                '<input type="checkbox" ';
-if ($media_allbox == 'on') {
-    echo 'checked="checked" ';
-}
-echo 'name="media_allbox" /></td></tr>' . "\n";
+/* newmail_unseen_notify */
+$newmail_unseen_opts = array( 0 => _("Follow folder preferences"),
+                              SMPREF_UNSEEN_INBOX => _("INBOX"),
+                              SMPREF_UNSEEN_ALL => _("All folders"),
+                              SMPREF_UNSEEN_SPECIAL => _("Special folders"),
+                              SMPREF_UNSEEN_NORMAL => _("Regular folders"));
+echo html_tag('tr',
+              html_tag('td',_("Check for new messages in:"),'right', '', 'style="white-space: nowrap;"').
+              html_tag('td',addSelect('newmail_unseen_notify',$newmail_unseen_opts,$newmail_unseen_notify,true),'left')
+              );
 
 // Option: media_recent
 echo html_tag( 'tr' ) .
         html_tag( 'td', _("Count only messages that are RECENT").':', 'right', '', 'style="white-space: nowrap;"' ) .
             html_tag( 'td', '', 'left' ) .
                 '<input type="checkbox" ';
-if ($media_recent == 'on') {
+if ($newmail_recent == 'on') {
     echo 'checked="checked" ';
 }
 echo 'name="media_recent" /></td></tr>' . "\n";
@@ -96,28 +85,42 @@ echo html_tag( 'tr' ) .
         html_tag( 'td', _("Change title on supported browsers").':', 'right', '', 'style="white-space: nowrap;"' ) .
             html_tag( 'td', '', 'left' ) .
                 '<input type="checkbox" ';
-if ($media_changetitle == 'on') {
+if ($newmail_changetitle == 'on') {
     echo 'checked="checked" ';
 }
-echo 'name="media_changetitle" />&nbsp;('._("requires JavaScript to work").')</td></tr>' . "\n";
+echo 'name="media_changetitle" />&nbsp;<small>('._("requires JavaScript to work").')</small></td></tr>' . "\n";
 
 // Option: media_popup
 echo html_tag( 'tr' ) .
         html_tag( 'td', _("Show popup window on new mail").':', 'right', '', 'style="white-space: nowrap;"' ) .
             html_tag( 'td', '', 'left' ) .
                 '<input type="checkbox" ';
-if($media_popup == 'on') {
+if($newmail_popup == 'on') {
     echo 'checked="checked" ';
 }
-echo 'name="media_popup" />&nbsp;('._("requires JavaScript to work").')</td></tr>' . "\n";
-
-if ($allowsound == "true") {
+echo 'name="media_popup" />&nbsp;<small>('._("requires JavaScript to work").')</small></td></tr>' . "\n";
+
+echo html_tag( 'tr' )
+     . html_tag('td',_("Width of popup window:"),'right','', 'style="white-space: nowrap;"')
+     . html_tag('td','<input type="text" name="popup_width" value="'
+                . (int)$newmail_popup_width . '" size="3" maxlengh="3" />'
+                . '&nbsp;<small>(' . _("If set to 0, reverts to default value") . ')</small>','left')
+     . "</tr>\n";
+
+echo html_tag( 'tr' )
+     . html_tag('td',_("Height of popup window:"),'right','', 'style="white-space: nowrap;"')
+     . html_tag('td','<input type="text" name="popup_height" value="'
+                . (int)$newmail_popup_height . '" size="3" maxlengh="3" />'
+                . '&nbsp;<small>(' . _("If set to 0, reverts to default value") . ')</small>','left')
+     . "</tr>\n";
+
+if ($newmail_allowsound) {
 // Option: media_enable
     echo html_tag( 'tr' ) .
             html_tag( 'td', _("Enable Media Playing").':', 'right', '', 'style="white-space: nowrap;"' ) .
                 html_tag( 'td', '', 'left' ) .
                     '<input type="checkbox" ';
-    if ($media_enable == 'on') {
+    if ($newmail_media_enable == 'on') {
         echo 'checked="checked" ';
     }
     echo 'name="media_enable" /></td></tr>' . "\n";
@@ -128,20 +131,20 @@ if ($allowsound == "true") {
             html_tag( 'td', '', 'left' ) .
                 '<select name="media_sel">' . "\n" .
                     '<option value="(none)"';
-    if ( $media == '(none)') {
+    if ( $newmail_media == '(none)') {
         echo 'selected="selected" ';
     }
     echo '>' . _("(none)") . '</option>' .  "\n";
     // Iterate sound files for options
     $d = dir(SM_PATH . 'plugins/newmail/sounds');
     while($entry=$d->read()) {
-        $fname = get_location () . '/sounds/' . $entry;
-        if ($entry != '..' && $entry != '.' && $entry != 'CVS') {
+        // $fname = get_location () . '/sounds/' . $entry;
+        if ($entry != '..' && $entry != '.' && $entry != 'CVS' && $entry != 'index.php') {
             echo '<option ';
-            if ($fname == $media) {
+            if ($entry == $newmail_media) {
                 echo 'selected="selected" ';
             }
-            echo 'value="' . htmlspecialchars($fname) . '">' .
+            echo 'value="' . htmlspecialchars($entry) . '">' .
                 htmlspecialchars($entry) . "</option>\n";
         }
     }
@@ -149,30 +152,33 @@ if ($allowsound == "true") {
     // display media selection
     foreach($newmail_mmedia as $newmail_mm_name => $newmail_mm_data) {
         echo '<option ';
-        if ($media=='mmedia_' . $newmail_mm_name) {
+        if ($newmail_media=='mmedia_' . $newmail_mm_name) {
             echo 'selected="selected" ';
         }
         echo 'value="mmedia_' . $newmail_mm_name . '">'
             .htmlspecialchars($newmail_mm_name) . "</option>\n";
     }
-    // display local file option
-    echo '<option ';
-    if ($media=='(userfile)') {
-        echo 'selected="selected" ';
+
+    if($newmail_uploadsounds) {
+        // display local file option
+        echo '<option ';
+        if ($newmail_media=='(userfile)') {
+            echo 'selected="selected" ';
+        }
+        echo 'value="(userfile)">'.
+            _("uploaded media file") . "</option>\n";
+        // end of local file option
     }
-    echo 'value="(userfile)">'.
-        _("uploaded media file") . "</option>\n";
-    // end of local file option
 
     // Set media file name
-    if ($media == '(none)') {
+    if ($newmail_media == '(none)') {
         $media_output = _("none");
-    } elseif ($media == '(userfile)') {
-        $media_output = basename($media_userfile_name);
-    } elseif (preg_match("/^mmedia_+/",$media)) {
-        $media_output = preg_replace("/^mmedia_/",'',$media);
+    } elseif ($newmail_media == '(userfile)') {
+        $media_output = basename($newmail_userfile_name);
+    } elseif (preg_match("/^mmedia_+/",$newmail_media)) {
+        $media_output = preg_replace("/^mmedia_/",'',$newmail_media);
     } else {
-        $media_output = substr($media, strrpos($media, '/')+1);
+        $media_output = basename($newmail_media);
     }
 
     echo '</select>'.
@@ -181,30 +187,29 @@ if ($allowsound == "true") {
             "'width=150,height=30,scrollbars=no');" .
             'return false;' .
             '" /></td></tr>';
-    echo  '<tr>'.
-        '<td align="right" nowrap>' . _("Upload Media File:") .
-        '</td><td>'.
-        '<input type="file" size="40" name="media_file">'.
-        '</td>'.
-        '</tr>';
-
-    echo  '<tr>'.
-        '<td align="right" nowrap>' . _("Uploaded Media File:") .
-        '</td><td>'.
-        ($media_userfile_name!='' ? htmlspecialchars($media_userfile_name) : _("unavailable")).
-        '</td>'.
-        '</tr>';
-
-    if ($media_userfile_name!='') {
-        echo '<tr>'
-            .'<td colspan="2" align="center">'
-            .sprintf(_("Media file %s will be removed, if you upload other media file."),basename($media_userfile_name))
-            .'</td></tr>';
+    if ($newmail_uploadsounds) {
+        // upload form
+        echo  html_tag('tr')
+            . html_tag('td',_("Upload Media File:"),'right','','style="white-space: nowrap;"')
+            . html_tag('td','<input type="file" size="40" name="media_file">')
+            . "</tr>\n";
+        // display currently uploaded file information
+        echo  html_tag('tr')
+            . html_tag('td',_("Uploaded Media File:"),'right','','style="white-space: nowrap;"')
+            . html_tag('td',($newmail_userfile_name!='' ? htmlspecialchars($newmail_userfile_name) : _("unavailable")))
+            ."</tr>\n";
+    
+        if ($newmail_userfile_name!='') {
+            echo '<tr>'
+                .'<td colspan="2" align="center">'
+                .sprintf(_("Media file %s will be removed, if you upload other media file."),basename($newmail_userfile_name))
+                .'</td></tr>';
+        }
     }
     echo html_tag( 'tr', "\n" .
                 html_tag( 'td', _("Current File:"), 'right', '', 'style="white-space: nowrap;"' ) .
                     html_tag( 'td', '<input type="hidden" value="' .
-                        htmlspecialchars($media) . '" name="media_default" />' .
+                        htmlspecialchars($newmail_media) . '" name="media_default" />' .
                         htmlspecialchars($media_output) . '', 'left' )
              ) . "\n";
 }
@@ -217,4 +222,5 @@ echo html_tag( 'tr', "\n" .
         'left' )
      ) . "\n";
 ?>
-</table></form></td></tr></table></td></tr></table></body></html>
\ No newline at end of file
+</table></form></td></tr></table></td></tr></table></body></html>
+