Source for file constants.php

Documentation is available at constants.php

  1. <?php
  2.  
  3. /**
  4.  * constants.php
  5.  *
  6.  * Loads constants used by the rest of the SquirrelMail source.
  7.  *
  8.  * Before 1.5.2 script was stored in functions/constants.php
  9.  * @copyright 1999-2014 The SquirrelMail Project Team
  10.  * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  11.  * @version $Id: constants.php 14424 2014-01-13 10:16:27Z jervfors $
  12.  * @package squirrelmail
  13.  * @since 1.2.0
  14.  */
  15.  
  16. /** @ignore */
  17.  
  18. /**
  19.  * SquirrelMail version number -- DO NOT CHANGE
  20.  * @since 1.5.2
  21.  */
  22. define('SM_VERSION''1.5.2 [SVN]');
  23.  
  24. /**
  25.  * Year interval for copyright notices in the interface
  26.  * @since 1.5.2
  27.  */
  28. define('SM_COPYRIGHT''1999-2014');
  29.  
  30. /**************************************************************/
  31. /* Set values for constants used by SquirrelMail preferences. */
  32. /**************************************************************/
  33.  
  34. /**
  35.  * Define constants for SquirrelMail debug modes.
  36.  * Note that these are binary so that modes can be
  37.  * mixed and matched, and they are also ordered from
  38.  * minor to severe.  When adding new modes, please
  39.  * order them in a sensical way (MODERATE is the 10th
  40.  * bit; ADVANCED is the 20th bit).
  41.  * @since 1.5.2
  42.  */
  43. define('SM_DEBUG_MODE_OFF'0);             // complete error suppression
  44. define('SM_DEBUG_MODE_SIMPLE'1);          // PHP E_ERROR
  45. define('SM_DEBUG_MODE_MODERATE'512);      // PHP E_ALL
  46. define('SM_DEBUG_MODE_ADVANCED'524288);   // PHP E_ALL plus log errors intentionally suppressed
  47. define('SM_DEBUG_MODE_STRICT'536870912);  // PHP E_STRICT
  48.  
  49. /**
  50.  * Define basic, general purpose preference constants.
  51.  * @since 1.2.0
  52.  */
  53. define('SMPREF_NO'0);
  54. define('SMPREF_OFF'0);
  55. define('SMPREF_YES'1);
  56. define('SMPREF_ON'1);
  57. define('SMPREF_NONE''none');
  58.  
  59. /**
  60.  * Define constants for location based preferences.
  61.  * @since 1.2.0
  62.  */
  63. define('SMPREF_LOC_TOP''top');
  64. define('SMPREF_LOC_BETWEEN''between');
  65. define('SMPREF_LOC_BOTTOM''bottom');
  66. define('SMPREF_LOC_LEFT''');
  67. define('SMPREF_LOC_RIGHT''right');
  68.  
  69. /**
  70.  * Define preferences for folder settings.
  71.  * @since 1.2.0
  72.  */
  73. define('SMPREF_UNSEEN_NONE'1);
  74. define('SMPREF_UNSEEN_INBOX'2);
  75. define('SMPREF_UNSEEN_ALL'3);
  76. define('SMPREF_UNSEEN_SPECIAL'4)// Only special folders (since 1.2.5)
  77. define('SMPREF_UNSEEN_NORMAL'5);  // Only normal folders (since 1.2.5)
  78. define('SMPREF_UNSEEN_ONLY'1);
  79. define('SMPREF_UNSEEN_TOTAL'2);
  80.  
  81. define('SMPREF_MAILBOX_SELECT_LONG'0);
  82. define('SMPREF_MAILBOX_SELECT_INDENTED'1);
  83. define('SMPREF_MAILBOX_SELECT_DELIMITED'2);
  84.  
  85. /**
  86.  * Define constants for time/date display preferences.
  87.  * @since 1.2.0
  88.  */
  89. define('SMPREF_TIME_24HR'1);
  90. define('SMPREF_TIME_12HR'2);
  91.  
  92. /**
  93.  * Define constants for javascript preferences.
  94.  * @since 1.2.0
  95.  */
  96. define('SMPREF_JS_OFF'0);
  97. define('SMPREF_JS_ON'1);
  98. define('SMPREF_JS_AUTODETECT'2);
  99.  
  100. /**
  101.  * default value for page_selector_max
  102.  * @since 1.5.1
  103.  */
  104. define('PG_SEL_MAX'10);
  105.  
  106.  
  107. /**
  108.  * The number of pages to cache msg headers
  109.  * @since 1.5.1
  110.  */
  111. define('SQM_MAX_PAGES_IN_CACHE',5);
  112.  
  113. /**
  114.  * The number of mailboxes to cache msg headers
  115.  * @since 1.5.1
  116.  */
  117. define('SQM_MAX_MBX_IN_CACHE',3);
  118.  
  119. /**
  120.  * Sort constants used for sorting of messages
  121.  * @since 1.5.1
  122.  */
  123. define('SQSORT_NONE',0);
  124. define('SQSORT_DATE_ASC',1);
  125. define('SQSORT_DATE_DESC',2);
  126. define('SQSORT_FROM_ASC',3);
  127. define('SQSORT_FROM_DESC',4);
  128. define('SQSORT_SUBJ_ASC',5);
  129. define('SQSORT_SUBJ_DESC',6);
  130. define('SQSORT_SIZE_ASC',7);
  131. define('SQSORT_SIZE_DESC',8);
  132. define('SQSORT_TO_ASC',9);
  133. define('SQSORT_TO_DESC',10);
  134. define('SQSORT_CC_ASC',11);
  135. define('SQSORT_CC_DESC',12);
  136. define('SQSORT_INT_DATE_ASC',13);
  137. define('SQSORT_INT_DATE_DESC',14);
  138.  
  139. /**
  140.  * Special sort constant thread which is added to above sort mode.
  141.  * By doing a bitwise check ($sort & SQSORT_THREAD) we know if the mailbox
  142.  * is sorted by thread.
  143.  * @since 1.5.1
  144.  */
  145. define('SQSORT_THREAD',32);
  146.  
  147. /**
  148.  * Mailbox preference array keys
  149.  * @since 1.5.1
  150.  */
  151. define('MBX_PREF_SORT',0);
  152. define('MBX_PREF_LIMIT',1);
  153. define('MBX_PREF_AUTO_EXPUNGE',2);
  154. define('MBX_PREF_INTERNALDATE',3);
  155. define('MBX_PREF_COLUMNS',4);
  156. // define('MBX_PREF_FUTURE',unique integer key);
  157.  
  158. /**
  159.  * Email address array keys
  160.  * @since 1.5.1
  161.  */
  162. define('SQM_ADDR_PERSONAL'0);
  163. define('SQM_ADDR_ADL',      1);
  164. define('SQM_ADDR_MAILBOX',  2);
  165. define('SQM_ADDR_HOST',     3);
  166.  
  167. /**
  168.  * Supported columns to show in a messages list
  169.  * The MBX_PREF_COLUMNS contains an ordered array with these columns
  170.  * @since 1.5.1
  171.  */
  172. define('SQM_COL_CHECK',0);
  173. define('SQM_COL_FROM',1);
  174. define('SQM_COL_DATE'2);
  175. define('SQM_COL_SUBJ'3);
  176. define('SQM_COL_FLAGS'4);
  177. define('SQM_COL_SIZE'5);
  178. define('SQM_COL_PRIO'6);
  179. define('SQM_COL_ATTACHMENT'7);
  180. define('SQM_COL_INT_DATE'8);
  181. define('SQM_COL_TO'9);
  182. define('SQM_COL_CC'10);
  183. define('SQM_COL_BCC'11);
  184.  
  185. /**
  186.  * Address book field list
  187.  * @since 1.4.16 and 1.5.2
  188.  */
  189. define('SM_ABOOK_FIELD_NICKNAME'0);
  190. define('SM_ABOOK_FIELD_FIRSTNAME'1);
  191. define('SM_ABOOK_FIELD_LASTNAME'2);
  192. define('SM_ABOOK_FIELD_EMAIL'3);
  193. define('SM_ABOOK_FIELD_LABEL'4);
  194.  
  195. /**
  196.  * Generic variable type constants
  197.  * @since 1.5.2
  198.  */
  199. define('SQ_TYPE_INT''int');
  200. define('SQ_TYPE_BIGINT''bigint');
  201. define('SQ_TYPE_STRING''string');
  202. define('SQ_TYPE_BOOL''bool');
  203. define('SQ_TYPE_ARRAY''array');
  204.  
  205. /**
  206.  * Template engines supported
  207.  * @since 1.5.2
  208.  */
  209. define('SQ_PHP_TEMPLATE''PHP_');
  210. define('SQ_SMARTY_TEMPLATE''Smarty_');
  211.  
  212. /**
  213.  * Used by plugins to indicate an incompatibility with a SM version
  214.  * @since 1.5.2
  215.  */
  216. define('SQ_INCOMPATIBLE''INCOMPATIBLE');
  217.  
  218. /**
  219.  * Define constants used in the options code
  220.  */
  221.  
  222. // Define constants for the various option types
  223. define('SMOPT_TYPE_STRING'0);
  224. define('SMOPT_TYPE_STRLIST'1);
  225. define('SMOPT_TYPE_TEXTAREA'2);
  226. define('SMOPT_TYPE_INTEGER'3);
  227. define('SMOPT_TYPE_FLOAT'4);
  228. define('SMOPT_TYPE_BOOLEAN'5);
  229. define('SMOPT_TYPE_HIDDEN'6);
  230. define('SMOPT_TYPE_COMMENT'7);
  231. define('SMOPT_TYPE_FLDRLIST'8);
  232. define('SMOPT_TYPE_FLDRLIST_MULTI'9);
  233. define('SMOPT_TYPE_EDIT_LIST'10);
  234. define('SMOPT_TYPE_EDIT_LIST_ASSOCIATIVE'11);
  235. define('SMOPT_TYPE_STRLIST_MULTI'12);
  236. define('SMOPT_TYPE_BOOLEAN_CHECKBOX'13);
  237. define('SMOPT_TYPE_BOOLEAN_RADIO'14);
  238. define('SMOPT_TYPE_STRLIST_RADIO'15);
  239. define('SMOPT_TYPE_SUBMIT'16);
  240. define('SMOPT_TYPE_INFO'17);
  241. define('SMOPT_TYPE_PASSWORD'18);
  242.  
  243. // Define constants for the layout scheme for edit lists
  244. define('SMOPT_EDIT_LIST_LAYOUT_LIST'0);
  245. define('SMOPT_EDIT_LIST_LAYOUT_SELECT'1);
  246.  
  247. // Define constants for the options refresh levels
  248. define('SMOPT_REFRESH_NONE'0);
  249. define('SMOPT_REFRESH_FOLDERLIST'1);
  250. define('SMOPT_REFRESH_ALL'2);
  251.  
  252. // Define constants for the options size
  253. define('SMOPT_SIZE_TINY'0);
  254. define('SMOPT_SIZE_SMALL'1);
  255. define('SMOPT_SIZE_MEDIUM'2);
  256. define('SMOPT_SIZE_LARGE'3);
  257. define('SMOPT_SIZE_HUGE'4);
  258. define('SMOPT_SIZE_NORMAL'5);
  259.  
  260. // Define miscellaneous options constants 
  261. define('SMOPT_SAVE_DEFAULT''save_option');
  262. define('SMOPT_SAVE_NOOP''save_option_noop');
  263.  
  264. // Convenience array of values 'a' through 'z'
  265. $a_to_z array(
  266.               'a' => 'a',
  267.               'b' => 'b',
  268.               'c' => 'c',
  269.               'd' => 'd',
  270.               'e' => 'e',
  271.               'f' => 'f',
  272.               'g' => 'g',
  273.               'h' => 'h',
  274.               'i' => 'i',
  275.               'j' => 'j',
  276.               'k' => 'k',
  277.               'l' => 'l',
  278.               'm' => 'm',
  279.               'n' => 'n',
  280.               'o' => 'o',
  281.               'p' => 'p',
  282.               'q' => 'q',
  283.               'r' => 'r',
  284.               's' => 's',
  285.               't' => 't',
  286.               'u' => 'u',
  287.               'v' => 'v',
  288.               'w' => 'w',
  289.               'x' => 'x',
  290.               'y' => 'y',
  291.               'z' => 'z',
  292.           );

Documentation generated on Mon, 24 Nov 2014 04:17:33 +0100 by phpDocumentor 1.4.3