Removed, now a plugin, no idea if this will be included with the source tree.
[squirrelmail.git] / functions / prefs.php
index 51265242727e4a4ea47d8116e99fc08fc8ab47d3..e43d18071970f33891b6869181ac259f3b4f1478 100644 (file)
@@ -1,15 +1,17 @@
-<?
+<?php
    /**
     **  prefs.php
     **
     **  This contains functions for manipulating user preferences
     **/
 
+   $prefs_php = true;
+
    /** returns the value for $string **/
-   function getPref($username, $string) {
-      $filename = "../data/$username.pref";
+   function getPref($data_dir, $username, $string) {
+      $filename = "$data_dir$username.pref";
       if (!file_exists($filename)) {
-         echo "Preference file \"$filename\" not found.  Exiting abnormally";
+         echo _("Preference file ") . "\"$filename\"" . _(" not found.  Exiting abnormally");
          exit;
       }
 
       return "";
    }
 
+   function removePref($data_dir, $username, $string) {
+      $filename = "$data_dir$username.pref";
+      $found = false;
+      if (!file_exists($filename)) {
+         echo _("Preference file, ") . "\"$filename\"" . _(", does not exist.  Log out, and log back in to create a default preference file. ") ."<BR>";
+         exit;
+      }
+      $file = fopen($filename, "r");
+
+      for ($i=0; !feof($file); $i++) {
+         $pref[$i] = fgets($file, 1024);
+         if (substr($pref[$i], 0, strpos($pref[$i], "=")) == $string) {
+            $i--;
+         }
+      }
+      fclose($file);
+
+      for ($i=0,$j=0; $i < count($pref); $i++) {
+         if (substr($pref[$i], 0, 9) == "highlight") {
+            $hlt[$j] = substr($pref[$i], strpos($pref[$i], "=")+1);
+            $j++;
+         }
+      }
+
+      $file = fopen($filename, "w");
+      for ($i=0; $i < count($pref); $i++) {
+         if (substr($pref[$i], 0, 9) != "highlight") {
+            fwrite($file, "$pref[$i]", 1024);
+         }   
+      }
+      for ($i=0; $i < count($hlt); $i++) {
+         fwrite($file, "highlight$i=$hlt[$i]");
+      }
+
+      fclose($file);
+   }
+   
    /** sets the pref, $string, to $set_to **/
-   function setPref($username, $string, $set_to) {
-      $filename = "../data/$username.pref";
+   function setPref($data_dir, $username, $string, $set_to) {
+      $filename = "$data_dir$username.pref";
       $found = false;
       if (!file_exists($filename)) {
-         echo "Preference file, $filename, does not exist.  Log out, and log back in to create a default preference file.<BR>";
+         echo _("Preference file, ") . "\"$filename\"" . _(", does not exist.  Log out, and log back in to create a default preference file. ") ."<BR>";
          exit;
       }
       $file = fopen($filename, "r");
       fclose($file);
    }
 
-   /** This checks if there is a pref file, if there isn't, it will create it. **/
-   function checkForPrefs($username) {
-      $filename = "../data/$username.pref";
+
+
+
+   /** This checks if there is a pref file, if there isn't, it will
+       create it. **/
+   function checkForPrefs($data_dir, $username) {
+      $filename = "$data_dir$username.pref";
       if (!file_exists($filename)) {
-         if (!copy("../data/default_pref", $filename)) {
-            echo "Error opening $filename";
+         if (!copy("$data_dir" . "default_pref", $filename)) {
+            echo _("Error opening ") ."$filename";
             exit;
          }
       }
-      return;
    }
-?>
\ No newline at end of file
+
+
+
+   /** Writes the Signature **/
+   function setSig($data_dir, $username, $string) {
+      $filename = "$data_dir$username.sig";
+      $file = fopen($filename, "w");
+      fwrite($file, $string);
+      fclose($file);
+   }
+
+
+
+   /** Gets the signature **/
+   function getSig($data_dir, $username) {
+      $filename = "$data_dir$username.sig";
+      if (file_exists($filename)) {
+         $file = fopen($filename, "r");
+         while (!feof($file)) {
+            $sig .= fgets($file, 1024);
+         }
+         fclose($file);
+      }
+      return $sig;
+   }
+?>