PageRenderTime 34ms CodeModel.GetById 30ms RepoModel.GetById 0ms app.codeStats 0ms

/Branch_4_6/gforge/www/include/pre.php

https://gitlab.com/oslc-cm-server/olbergers-ff5-oslc
PHP | 204 lines | 84 code | 46 blank | 74 comment | 22 complexity | 17cc417204f2ae01225f8c9107e8a4f3 MD5 | raw file
Possible License(s): GPL-2.0, MPL-2.0-no-copyleft-exception
  1. <?php
  2. /**
  3. * pre.php - Automatically prepend to every page.
  4. *
  5. * SourceForge: Breaking Down the Barriers to Open Source Development
  6. * Copyright 1999-2001 (c) VA Linux Systems
  7. * http://sourceforge.net
  8. *
  9. * @version $Id$
  10. */
  11. // escaping lib
  12. require_once('common/include/escapingUtils.php');
  13. // Just say no to link prefetching (Moz prefetching, Google Web Accelerator, others)
  14. // http://www.google.com/webmasters/faq.html#prefetchblock
  15. if (getStringFromServer('HTTP_X_moz') === 'prefetch'){
  16. header(getStringFromServer('SERVER_PROTOCOL') . ' 404 Prefetch Forbidden');
  17. trigger_error('Prefetch request forbidden.');
  18. exit;
  19. }
  20. if (!isset($no_gz_buffer) || !$no_gz_buffer) {
  21. ob_start("ob_gzhandler");
  22. }
  23. require('local.inc');
  24. // get constants used for flags or status
  25. require('common/include/constants.php');
  26. //
  27. if ($sys_use_jabber) {
  28. require_once('common/include/Jabber.class');
  29. }
  30. //library to determine browser settings
  31. require_once('www/include/browser.php');
  32. //base error library for new objects
  33. require_once('common/include/Error.class');
  34. // HTML layout class, may be overriden by the Theme class
  35. require_once('www/include/Layout.class');
  36. //various html utilities
  37. require_once('common/include/utils.php');
  38. //database abstraction
  39. require_once('common/include/database.php');
  40. //security library
  41. require_once('common/include/session.php');
  42. //system library
  43. require_once('common/include/System.class');
  44. if (!$sys_account_manager_type) {
  45. $sys_account_manager_type='UNIX';
  46. }
  47. require_once('common/include/system/'.$sys_account_manager_type.'.class');
  48. $SYS=new $sys_account_manager_type();
  49. //user functions like get_name, logged_in, etc
  50. require_once('common/include/User.class');
  51. //group functions like get_name, etc
  52. require_once('common/include/Group.class');
  53. //permission functions
  54. require_once('common/include/Permission.class');
  55. //library to set up context help
  56. require_once('www/include/help.php');
  57. //exit_error library
  58. require_once('www/include/exit.php');
  59. //various html libs like button bar, themable
  60. require_once('www/include/html.php');
  61. //forms key generation
  62. require_once('common/include/forms.php');
  63. // #### Connect to db
  64. db_connect();
  65. if (!$conn) {
  66. print "$sys_name Could Not Connect to Database: ".db_error();
  67. exit;
  68. }
  69. // Plugins subsystem
  70. require_once('common/include/Plugin.class') ;
  71. require_once('common/include/PluginManager.class') ;
  72. // SCM-specific plugins subsystem
  73. require_once('common/include/SCM.class') ;
  74. setup_plugin_manager () ;
  75. //determine if they're logged in
  76. session_set();
  77. //mandatory login
  78. if (!session_loggedin() && $sys_force_login == 1 ) {
  79. $expl_pathinfo = explode('/',getStringFromServer('REQUEST_URI'));
  80. if (getStringFromServer('REQUEST_URI')!='/' && $expl_pathinfo[1]!='account' && $expl_pathinfo[1]!='export' ) exit_not_logged_in();
  81. // Show proj* export even if not logged in when force login
  82. // If not default web project page would be broken
  83. if ($expl_pathinfo[1]=='export' && !ereg("^proj", $expl_pathinfo[2])) exit_not_logged_in();
  84. }
  85. //insert this page view into the database
  86. require_once('www/include/logger.php');
  87. //
  88. // If logged in, set up a $LUSER var referencing
  89. // the logged in user's object
  90. //
  91. if (session_loggedin()) {
  92. //set up the user's timezone if they are logged in
  93. $LUSER =& session_get_user();
  94. $LUSER->setUpTheme();
  95. header('Cache-Control: private');
  96. }
  97. //
  98. // Include user Theme
  99. //
  100. require_once($sys_themeroot.$sys_theme.'/Theme.class');
  101. $HTML=new Theme();
  102. /*
  103. Timezone must come after logger to prevent messups
  104. */
  105. if (session_loggedin()) {
  106. //set up the user's timezone if they are logged in
  107. putenv('TZ='. $LUSER->getTimeZone());
  108. } else {
  109. //just use pacific time as always
  110. }
  111. /*
  112. Now figure out what language file to instantiate
  113. */
  114. require_once('www/include/BaseLanguage.class');
  115. if (!$sys_lang) {
  116. $sys_lang="English";
  117. }
  118. if (session_loggedin()) {
  119. $Language=new BaseLanguage();
  120. $Language->loadLanguageID($LUSER->getLanguage());
  121. } else {
  122. $classname = null;
  123. //if you aren't logged in, check your browser settings
  124. //and see if we support that language
  125. //if we don't support it, just use default language
  126. if (getStringFromServer('HTTP_ACCEPT_LANGUAGE')) {
  127. $classname = getLanguageClassName(getStringFromServer('HTTP_ACCEPT_LANGUAGE'));
  128. }
  129. if (!$classname) {
  130. $classname=$sys_lang;
  131. }
  132. $Language=new BaseLanguage();
  133. $Language->loadLanguage($classname);
  134. }
  135. setlocale (LC_TIME, $Language->getText('system','locale'));
  136. $sys_strftimefmt = $Language->getText('system','strftimefmt');
  137. $sys_datefmt = $Language->getText('system','datefmt');
  138. $sys_shortdatefmt = $Language->getText('system','shortdatefmt');
  139. /*
  140. RESERVED VARIABLES
  141. $conn
  142. $session_hash
  143. $Language
  144. $LUSER - Logged in user object
  145. $HTML
  146. $sys_datefmt
  147. $sys_shortdatefmt
  148. */
  149. ?>