increment year in copyright notices
[squirrelmail.git] / plugins / bug_report / setup.php
index 0c2bd4e124426abfb3de4226b06affb186cd21d3..9c1d3ddec2a0dfea6161e19d69743bc93decfe04 100644 (file)
@@ -1,22 +1,14 @@
 <?php
-
 /**
- * setup.php
- *
- * Copyright (c) 1999-2004 The SquirrelMail development team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
- *
- * This is a standard Squirrelmail-1.2 API for plugins.
+ * Bug Report plugin - setup script
  *
+ * @copyright &copy; 1999-2007 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  * @version $Id$
  * @package plugins
  * @subpackage bug_report
  */
 
-/* This button fills out a form with your setup information already
-   gathered -- all you have to do is type. */
-
-
 /**
  * Initialize the bug report plugin
  * @return void
@@ -26,9 +18,8 @@ function squirrelmail_plugin_init_bug_report() {
     global $squirrelmail_plugin_hooks;
 
     $squirrelmail_plugin_hooks['menuline']['bug_report'] = 'bug_report_button';
-    $squirrelmail_plugin_hooks['options_display_inside']['bug_report'] = 'bug_report_options';
-    $squirrelmail_plugin_hooks['options_display_save']['bug_report'] = 'bug_report_save';
     $squirrelmail_plugin_hooks['loading_prefs']['bug_report'] = 'bug_report_load';
+    $squirrelmail_plugin_hooks['optpage_loadhook_display']['bug_report'] = 'bug_report_block';
 }
 
 
@@ -37,9 +28,10 @@ function squirrelmail_plugin_init_bug_report() {
  * @access private
  */
 function bug_report_button() {
+    include_once(SM_PATH.'plugins/bug_report/functions.php');
     global $bug_report_visible;
 
-    if (! $bug_report_visible) {
+    if (! $bug_report_visible || ! bug_report_check_user()) {
         return;
     }
 
@@ -47,20 +39,6 @@ function bug_report_button() {
     echo "&nbsp;&nbsp;\n";
 }
 
-/**
- * Saves bug report options
- * @access private
- */
-function bug_report_save() {
-    global $username,$data_dir;
-
-    if( sqgetGlobalVar('bug_report_bug_report_visible', $vis, SQ_POST) ) {
-        setPref($data_dir, $username, 'bug_report_visible', '1');
-    } else {
-        setPref($data_dir, $username, 'bug_report_visible', '');
-    }
-}
-
 /**
  * Loads bug report options
  * @access private
@@ -69,25 +47,29 @@ function bug_report_load() {
     global $username, $data_dir;
     global $bug_report_visible;
 
-    $bug_report_visible = getPref($data_dir, $username, 'bug_report_visible');
+    $bug_report_visible = (bool) getPref($data_dir, $username, 'bug_report_visible',false);
 }
 
 /**
- * Adds bug report options to display page
+ * Register bug report option block
+ * @since 1.5.1
  * @access private
  */
-function bug_report_options() {
-    global $bug_report_visible;
-
-    echo '<tr>' . html_tag('td',_("Bug Reports:"),'right','','nowrap') . "\n" .
-         '<td><input name="bug_report_bug_report_visible" type="checkbox"';
-    if ($bug_report_visible) {
-        echo ' checked="checked"';
+function bug_report_block() {
+    include_once(SM_PATH.'plugins/bug_report/functions.php');
+    if (bug_report_check_user()) {
+        global $optpage_data;
+        $optpage_data['grps']['bug_report'] = _("Bug Reports");
+        $optionValues = array();
+        // FIXME: option needs refresh in SMOPT_REFRESH_RIGHT 
+        // (menulink is processed before options are saved/loaded)
+        $optionValues[] = array(
+            'name'    => 'bug_report_visible',
+            'caption' => _("Show button in toolbar"),
+            'type'    => SMOPT_TYPE_BOOLEAN,
+            'refresh' => SMOPT_REFRESH_ALL,
+            'initial_value' => false
+            );
+        $optpage_data['vals']['bug_report'] = $optionValues;
     }
-    echo ' /> ' . _("Show button in toolbar") . "</td></tr>\n";
-
-    echo '<tr><td></td>' .
-         '<td><a href="' . SM_PATH . 'plugins/bug_report/show_system_specs.php" target="_blank"><small>' . _("Show system specs") . '</small></a></td></tr>';
 }
-
-?>
\ No newline at end of file