documentation updates
authortokul <tokul@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Fri, 8 Apr 2005 11:38:30 +0000 (11:38 +0000)
committertokul <tokul@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Fri, 8 Apr 2005 11:38:30 +0000 (11:38 +0000)
git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@9224 7612ce4b-ef26-0410-bec9-ea0150e637f0

doc/i18n.txt
doc/index.html
doc/rfc_documents.txt

index fff433bf437f6cf9c3b410ace26de686471dc670..5012d3c8d9056b07fdcaf414d7315c84e5b7a2db 100644 (file)
@@ -1,4 +1,10 @@
-SquirrelMail internationalization
+
+    *************************************
+    * SquirrelMail internationalization *
+    *************************************
+
+$Date$
+$Revision$
 
 This document should explain how SquirrelMail internationalization works and
 provide information about some aspects of implementation.
 
 This document should explain how SquirrelMail internationalization works and
 provide information about some aspects of implementation.
@@ -9,6 +15,8 @@ provide information about some aspects of implementation.
 4. Display of different charsets
 5. IMAP folder names
 6. Plural forms
 4. Display of different charsets
 5. IMAP folder names
 6. Plural forms
+7. Language setup
+8. Time zones
 
 -------------------------------
 1. Supported languages
 
 -------------------------------
 1. Supported languages
@@ -158,7 +166,7 @@ Used in functions/strings.php (sqWordWrap)
 --------------------------------
 4. Display of different charsets
 --------------------------------
 --------------------------------
 4. Display of different charsets
 --------------------------------
-When SquirrelMail generates html pages, it uses charset set by translation
+When SquirrelMail generates html pages, it uses charset defined in translation
 selected by end user. Interface can display emails encoded in different
 charsets. In order to display characters that might be unsupported by user's
 charset, SquirrelMail uses decoding functions that convert non us-ascii symbols
 selected by end user. Interface can display emails encoded in different
 charsets. In order to display characters that might be unsupported by user's
 charset, SquirrelMail uses decoding functions that convert non us-ascii symbols
@@ -169,11 +177,14 @@ By default SquirrelMail includes decoding functions that support iso-8859-x,
 windows-125x, utf-8, us-ascii, koi8-r, koi8-u, tis-620, ns-4551_1, iso-ir-111,
 cp855 and cp866 charsets. Other decoding functions are distributed in separate
 packages. Separate packaging of decoding functions is supported from
 windows-125x, utf-8, us-ascii, koi8-r, koi8-u, tis-620, ns-4551_1, iso-ir-111,
 cp855 and cp866 charsets. Other decoding functions are distributed in separate
 packages. Separate packaging of decoding functions is supported from
-SquirrelMail 1.4.4 and 1.5.0.
+SquirrelMail 1.4.4 and 1.5.0. us-ascii decoding replaces all 8bit symbols with
+question marks. utf-8 decoding function does not enable decoding of five and six
+byte utf-8 symbols by default (code is commented) and replaces all incorrectly
+formated 8bit symbols with question marks.
 
 
-Some decoding functions might require php recode support. If your php
-installation does not support recode, you might be using slower and cpu/memory
-intensive functions.
+Some decoding functions might require php recode extension or php 4.3+ mbstring
+extension. If your php installation does not support them, you might be using 
+slower and cpu/memory intensive functions.
 
 --------------------
 5. IMAP folder names
 
 --------------------
 5. IMAP folder names
@@ -205,9 +216,63 @@ bindtextdomain and textdomain wrappers that load missing functions.
 If plugins want to use ngettext functions without increasing php requirements
 to 4.2.0 with gettext support, they should require SquirrelMail 1.5.1, use 
 sq_bindtextdomain function instead of bindtextdomain and use sq_textdomain 
 If plugins want to use ngettext functions without increasing php requirements
 to 4.2.0 with gettext support, they should require SquirrelMail 1.5.1, use 
 sq_bindtextdomain function instead of bindtextdomain and use sq_textdomain 
-function instead of text domain function. If SquirrelMail wrapper functions 
+function instead of textdomain function. If SquirrelMail wrapper functions 
 are used, there is no need to issue sq_bindtextdomain when plugins reverts to
 SquirrelMail domain.
 
 More information about ngettext and plural forms can be found at:
 http://www.gnu.org/software/gettext/manual/html_chapter/gettext_10.html#SEC150
 are used, there is no need to issue sq_bindtextdomain when plugins reverts to
 SquirrelMail domain.
 
 More information about ngettext and plural forms can be found at:
 http://www.gnu.org/software/gettext/manual/html_chapter/gettext_10.html#SEC150
+
+-----------------
+7. Language setup
+-----------------
+SquirrelMail uses set_up_language() function to setup language environment.
+Environment is setup automatically when include/validate.php is loaded.
+
+SquirrelMail gets interface language from three places:
+ a) user preference. It is set in Options -> Display Preferences -> Language.
+    preference uses language key. If user's preferences are not available (user
+    is not logged in), system tries to extract language value from 
+    'squirrelmail_language' cookie.
+ b) default squirrelmail language that is set in configuration 
+    ($squirrelmail_default_language variable).
+ c) preferred language setting provided by browser. It is used only when default 
+    squirrelmail language is set to empty string
+
+If language information is not available, SquirrelMail falls back to US English
+translation.
+
+-------------
+8. Time zones
+-------------
+If php install allows modifying environment variable TZ, SquirrelMail allows
+end users to select different time zone in their preferences. It can be set in
+Options -> Personal Information -> Your current timezone. Time zone is
+setup automatically when include/validate.php is loaded.
+
+If TZ variable can't be modified (php is running is safe mode and variable 
+is not listed in php safe_mode_allowed_env_vars), user's time zone options are
+not visible and interface use default webserver's time zone.
+
+List of available time zones is stored in locale/timezones.cfg. Current list
+of time zones uses some time zone names that depend on webserver's system 
+libraries. These names are not compatible with Windows operating system.
+
+TODO: move time zone information to php array in order to be able to translate 
+it and make sure that time zone names are compatible with Windows operating
+system. Or at least provide 'default' and 'strict' time zone options in
+SquirrelMail configuration. Maybe even provide 'custom' time zone list
+options.
+
+If modifications in TZ environment are visible in your webserver's logs (time
+offset is changed), make sure that you can reproduce such behavior in latest php
+version and report bug to php developers. Issue can be fixed by blocking use of
+time zone (php safe mode and TZ is not listed in safe_mode_allowed_env_vars
+setting or forced_prefs plugin) or by attaching special php script with 
+putenv('TZ=some time zone') call in php auto_append_file setting (suggestion is
+not tested and you might have to fix all SquirrelMail exit calls).
+
+Please note, that use of auto_append_file provides only temporally workaround
+and does not fix your php setup. Script that runs as unprivileged user, should
+be unable to affect webserver's logging system.
+
index 25c5c26eb223e1742f592095bb49b1c3b63822c2..3367aaf93748d62eb831d4e33b7f1fc959e5b835 100644 (file)
@@ -71,16 +71,52 @@ together a good documentation system.  This is just meant to get you up and runn
      This document describes how to use this new code, and the requirements.
    </dd>
 
      This document describes how to use this new code, and the requirements.
    </dd>
 
-   <dt>Basic documentation that comes with distrbution:</dt>
+   <dt><a href="db-backend.txt">Database Backend</a></dt>
+   <dd>
+     SquirrelMail allows you to store user's preferences and address books
+     in database that is compatible with PHP Pear DB libraries. This document
+     describes how to setup database.
+   </dd>
+
+   <dt><a href="presets.txt">Specific IMAP server setups</a></dt>
+   <dd>
+     SquirrelMail configuration utility allows adjusting settings for selected
+     IMAP server with one quick command. D command asks for IMAP server name and
+     modifies all settings that are specific to selected IMAP server. This
+     document provides quick description of all IMAP presets.
+   </dd>
+
+   <dt><a href="i18n.txt">SquirrelMail internationalization</a></dt>
+   <dd>
+     Some information about SquirrelMail internationalization (interface
+     translations, time zones, reading emails in different charsets.)
+     internals.
+   </dd>
+
+   <dt><a href="rfc_documents.txt">RFC documents</a></dt>
+   <dd>
+     Information about protocol standards that are being implemented in
+     SquirrelMail.
+   </dd>
+
+   <dt><a href="ie_ssl.txt">Internet Explorer and SSL</a></dt>
+   <dd>
+     Information about possible issues in Internet Explorer, when SquirrelMail
+     is used in SSL enabled webserver.
+   </dd>
+
+   <dt>Basic documentation that comes with distribution:</dt>
    <dd>
       <a href="../AUTHORS">AUTHORS</a> - Who's behind all this?<br />
       <a href="../INSTALL">INSTALL</a> - Installation instructions<br />
       <a href="../UPGRADE">UPGRADE</a> - Upgrading instructions<br />
       <a href="../README">README</a> - Everyone should read this.<br />
       <a href="../COPYING">COPYING</a> - Licencing of SquirrelMail<br/>
    <dd>
       <a href="../AUTHORS">AUTHORS</a> - Who's behind all this?<br />
       <a href="../INSTALL">INSTALL</a> - Installation instructions<br />
       <a href="../UPGRADE">UPGRADE</a> - Upgrading instructions<br />
       <a href="../README">README</a> - Everyone should read this.<br />
       <a href="../COPYING">COPYING</a> - Licencing of SquirrelMail<br/>
-      <a href="../ChangeLog">ChangeLog</a> - Differences between SquirrelMail versions.<br />
+      <a href="../ChangeLog">ChangeLog</a> - Differences between SquirrelMail
+      versions.<br />
+      <a href="../ReleaseNotes">ReleaseNotes</a> - SquirrelMail release notes.<br />
    </dd>
 </dl>
 
 </body>
    </dd>
 </dl>
 
 </body>
-</html>
\ No newline at end of file
+</html>
index fedc353f014c598fcdd9a4daec87d2a31f7e053d..62e12aa1db62e487f3066df8b846bccf9d7ce666 100644 (file)
@@ -10,8 +10,12 @@ For instance, if you want RFC 822, you can jump directly to it at
 
 NUMBER     DESCRIPTION
 -----------------------------------------------------------
 
 NUMBER     DESCRIPTION
 -----------------------------------------------------------
-RFC 1730   IMAP version 4
-RFC 2060   IMAP version 4rev1
+RFC 822    Format of ARPA Internet text messages
+RFC 1730   IMAP version 4 (obsoleted by 2060)
+RFC 2045   MIME Part One: Format of Internet Message Bodies
+RFC 2046   MIME Part Two: Media Types
+RFC 2047   MIME Part Three: Message Header Extensions for Non-ASCII Text
+RFC 2060   IMAP version 4rev1 (obsoleted by 3501)
 RFC 2183   Content-Disposition MIME header
 RFC 2195   IMAP/POP AUTHorize Extension for Simple Challenge/Response
 RFC 2221   IMAP4 Login Referrals
 RFC 2183   Content-Disposition MIME header
 RFC 2195   IMAP/POP AUTHorize Extension for Simple Challenge/Response
 RFC 2221   IMAP4 Login Referrals
@@ -21,3 +25,4 @@ RFC 2616   HTTP/1.1
 RFC 2683   IMAP4 Implementation Recommendations
 RFC 2822   Format of an email message (sendmail)
 RFC 2831   Using Digest Authentication as a SASL Mechanism (digest-md5)
 RFC 2683   IMAP4 Implementation Recommendations
 RFC 2822   Format of an email message (sendmail)
 RFC 2831   Using Digest Authentication as a SASL Mechanism (digest-md5)
+RFC 3501   IMAP version 4rev1