Source for file functions.php

Documentation is available at functions.php

  1. <?php
  2.  
  3. /**
  4.  * Fortune plugin functions
  5.  *
  6.  * @copyright &copy; 2004-2006 The SquirrelMail Project Team
  7.  * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  8.  * @version $Id: functions.php,v 1.9 2006/07/07 12:53:50 tokul Exp $
  9.  * @package plugins
  10.  * @subpackage fortune
  11.  */
  12.  
  13. /**
  14.  * Declare configuration global and set default value
  15.  */
  16. global $fortune_command;
  17. $fortune_command '/usr/games/fortune -s';
  18.  
  19. /**
  20.  * Load site config
  21.  */
  22. if (file_exists(SM_PATH 'config/fortune_config.php')) {
  23.     include_once(SM_PATH 'config/fortune_config.php');
  24. elseif (file_exists(SM_PATH 'plugins/fortune/config.php')) {
  25.     include_once(SM_PATH 'plugins/fortune/config.php');
  26. }
  27.  
  28. /**
  29.  * Show fortune
  30.  * @access private
  31.  * @since 1.5.1
  32.  */
  33. function fortune_function({
  34.     global $fortune_visible$color$fortune_command;
  35.  
  36.     if (!$fortune_visible{
  37.         return;
  38.     }
  39.  
  40.     echo "<table cellpadding=\"0\" cellspacing=\"0\" border=\"0\" bgcolor=\"$color[10]\" align=\"center\">\n".
  41.         "<tr><td><table width=\"100%\" cellpadding=\"2\" cellspacing=\"1\" border=\"0\" bgcolor=\"$color[5]\">\n".
  42.         "<tr><td align=\"center\">\n";
  43.     echo '<table><tr><td>';
  44.  
  45.     /* open handle and get all command output*/
  46.     $handle popen($fortune_command,'r');
  47.     $fortune '';
  48.     while ($read fread($handle,1024)) {
  49.         $fortune .= $read;
  50.     }
  51.     /* if pclose return != 0, popen command failed. Yes, I know that it is broken when --enable-sigchild is used */
  52.     if (pclose($handle)) {
  53.         // %s shows executed fortune cookie command.
  54.         $fortune sprintf(_("Unable to execute \"%s\"."),$fortune_command);
  55.     }
  56.     echo "<div style=\"text-align: center;\"><em>" _("Today's Fortune""</em></div><pre>\n" .
  57.             htmlspecialchars($fortune.
  58.             "</pre>\n";
  59.  
  60.     echo '</td></tr></table></td></tr></table></td></tr></table>';
  61. }
  62.  
  63. /**
  64.  * Add fortune options
  65.  * @access private
  66.  * @since 1.5.1
  67.  */
  68. function fortune_function_options({
  69.     global $optpage_data;
  70.  
  71.     $optpage_data['grps']['fortune'_("Fortunes:");
  72.     $optionValues array();
  73.     $optionValues[array('name'    => 'fortune_visible',
  74.                             'caption' => _("Show fortunes at top of mailbox"),
  75.                             'type'    => SMOPT_TYPE_BOOLEAN,
  76.                             'initial_value' => false );
  77.     $optpage_data['vals']['fortune'$optionValues;
  78. }
  79.  
  80. /**
  81.  * Get fortune prefs
  82.  * @access private
  83.  * @since 1.5.1
  84.  */
  85. function fortune_function_load({
  86.     global $username$data_dir$fortune_visible;
  87.  
  88.     $fortune_visible getPref($data_dir$username'fortune_visible');
  89. }

Documentation generated on Sat, 07 Oct 2006 16:11:24 +0300 by phpDocumentor 1.3.0RC6