constants.php 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. <?php
  2. /**
  3. * constants.php
  4. *
  5. * Loads constants used by the rest of the SquirrelMail source.
  6. * This file is include by src/login.php, src/redirect.php and
  7. * src/load_prefs.php.
  8. *
  9. * @copyright &copy; 1999-2006 The SquirrelMail Project Team
  10. * @license http://opensource.org/licenses/gpl-license.php GNU Public License
  11. * @version $Id$
  12. * @package squirrelmail
  13. * @since 1.2.0
  14. */
  15. /** @ignore */
  16. if (! defined('SM_PATH')) define('SM_PATH','../');
  17. /** Need to enable plugin functions for a hook */
  18. require_once(SM_PATH . 'functions/plugin.php'); /* Required for the hook */
  19. /**************************************************************/
  20. /* Set values for constants used by SquirrelMail preferences. */
  21. /**************************************************************/
  22. /**
  23. * Define basic, general purpose preference constants.
  24. * @since 1.2.0
  25. */
  26. define('SMPREF_NO', 0);
  27. define('SMPREF_OFF', 0);
  28. define('SMPREF_YES', 1);
  29. define('SMPREF_ON', 1);
  30. define('SMPREF_NONE', 'none');
  31. /**
  32. * Define constants for location based preferences.
  33. * @since 1.2.0
  34. */
  35. define('SMPREF_LOC_TOP', 'top');
  36. define('SMPREF_LOC_BETWEEN', 'between');
  37. define('SMPREF_LOC_BOTTOM', 'bottom');
  38. define('SMPREF_LOC_LEFT', '');
  39. define('SMPREF_LOC_RIGHT', 'right');
  40. /**
  41. * Define preferences for folder settings.
  42. * @since 1.2.0
  43. */
  44. define('SMPREF_UNSEEN_NONE', 1);
  45. define('SMPREF_UNSEEN_INBOX', 2);
  46. define('SMPREF_UNSEEN_ALL', 3);
  47. define('SMPREF_UNSEEN_SPECIAL', 4); // Only special folders (since 1.2.5)
  48. define('SMPREF_UNSEEN_NORMAL', 5); // Only normal folders (since 1.2.5)
  49. define('SMPREF_UNSEEN_ONLY', 1);
  50. define('SMPREF_UNSEEN_TOTAL', 2);
  51. /**
  52. * Define constants for time/date display preferences.
  53. * @since 1.2.0
  54. */
  55. define('SMPREF_TIME_24HR', 1);
  56. define('SMPREF_TIME_12HR', 2);
  57. /**
  58. * Define constants for javascript preferences.
  59. * @since 1.2.0
  60. */
  61. define('SMPREF_JS_OFF', 0);
  62. define('SMPREF_JS_ON', 1);
  63. define('SMPREF_JS_AUTODETECT', 2);
  64. /**
  65. * default value for page_selector_max
  66. * @since 1.5.1
  67. */
  68. define('PG_SEL_MAX', 10);
  69. /**
  70. * The number of pages to cache msg headers
  71. * @since 1.5.1
  72. */
  73. define('SQM_MAX_PAGES_IN_CACHE',5);
  74. /**
  75. * The number of mailboxes to cache msg headers
  76. * @since 1.5.1
  77. */
  78. define('SQM_MAX_MBX_IN_CACHE',3);
  79. /**
  80. * Sort constants used for sorting of messages
  81. * @since 1.5.1
  82. */
  83. define('SQSORT_NONE',0);
  84. define('SQSORT_DATE_ASC',1);
  85. define('SQSORT_DATE_DESC',2);
  86. define('SQSORT_FROM_ASC',3);
  87. define('SQSORT_FROM_DESC',4);
  88. define('SQSORT_SUBJ_ASC',5);
  89. define('SQSORT_SUBJ_DESC',6);
  90. define('SQSORT_SIZE_ASC',7);
  91. define('SQSORT_SIZE_DESC',8);
  92. define('SQSORT_TO_ASC',9);
  93. define('SQSORT_TO_DESC',10);
  94. define('SQSORT_CC_ASC',11);
  95. define('SQSORT_CC_DESC',12);
  96. define('SQSORT_INT_DATE_ASC',13);
  97. define('SQSORT_INT_DATE_DESC',14);
  98. /**
  99. * Special sort constant thread which is added to above sort mode.
  100. * By doing a bitwise check ($sort & SQSORT_THREAD) we know if the mailbox
  101. * is sorted by thread.
  102. * @since 1.5.1
  103. */
  104. define('SQSORT_THREAD',32);
  105. /**
  106. * Mailbox preference array keys
  107. * @since 1.5.1
  108. */
  109. define('MBX_PREF_SORT',0);
  110. define('MBX_PREF_LIMIT',1);
  111. define('MBX_PREF_AUTO_EXPUNGE',2);
  112. define('MBX_PREF_INTERNALDATE',3);
  113. define('MBX_PREF_COLUMNS',4);
  114. // define('MBX_PREF_FUTURE',unique integer key);
  115. /**
  116. * Email address array keys
  117. * @since 1.5.1
  118. */
  119. define('SQM_ADDR_PERSONAL', 0);
  120. define('SQM_ADDR_ADL', 1);
  121. define('SQM_ADDR_MAILBOX', 2);
  122. define('SQM_ADDR_HOST', 3);
  123. /**
  124. * Supported columns to show in a messages list
  125. * The MBX_PREF_COLUMNS contains an ordered array with these columns
  126. * @since 1.5.1
  127. */
  128. define('SQM_COL_CHECK',0);
  129. define('SQM_COL_FROM',1);
  130. define('SQM_COL_DATE', 2);
  131. define('SQM_COL_SUBJ', 3);
  132. define('SQM_COL_FLAGS', 4);
  133. define('SQM_COL_SIZE', 5);
  134. define('SQM_COL_PRIO', 6);
  135. define('SQM_COL_ATTACHMENT', 7);
  136. define('SQM_COL_INT_DATE', 8);
  137. define('SQM_COL_TO', 9);
  138. define('SQM_COL_CC', 10);
  139. define('SQM_COL_BCC', 11);
  140. /** @since 1.2.0 */
  141. do_hook('loading_constants');
  142. ?>