Subversion-Projekte lars-tiefland.ci

Revision

Revision 69 | Revision 203 | Zur aktuellen Revision | Details | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

Revision Autor Zeilennr. Zeile
1 lars 1
<?php
2
/**
3
 * CodeIgniter
4
 *
5
 * An open source application development framework for PHP
6
 *
7
 * This content is released under the MIT License (MIT)
8
 *
9
 * Copyright (c) 2014 - 2016, British Columbia Institute of Technology
10
 *
11
 * Permission is hereby granted, free of charge, to any person obtaining a copy
12
 * of this software and associated documentation files (the "Software"), to deal
13
 * in the Software without restriction, including without limitation the rights
14
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
15
 * copies of the Software, and to permit persons to whom the Software is
16
 * furnished to do so, subject to the following conditions:
17
 *
18
 * The above copyright notice and this permission notice shall be included in
19
 * all copies or substantial portions of the Software.
20
 *
21
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
25
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
26
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
27
 * THE SOFTWARE.
28
 *
29
 * @package	CodeIgniter
30
 * @author	EllisLab Dev Team
31
 * @copyright	Copyright (c) 2008 - 2014, EllisLab, Inc. (https://ellislab.com/)
32
 * @copyright	Copyright (c) 2014 - 2016, British Columbia Institute of Technology (http://bcit.ca/)
33
 * @license	http://opensource.org/licenses/MIT	MIT License
34
 * @link	https://codeigniter.com
35
 * @since	Version 1.0.0
36
 * @filesource
37
 */
38
 
39
/*
40
 *---------------------------------------------------------------
41
 * APPLICATION ENVIRONMENT
42
 *---------------------------------------------------------------
43
 *
44
 * You can load different configurations depending on your
45
 * current environment. Setting the environment also influences
46
 * things like logging and error reporting.
47
 *
48
 * This can be set to anything, but default usage is:
49
 *
50
 *     development
51
 *     testing
52
 *     production
53
 *
54
 * NOTE: If you change these, also change the error_reporting() code below
55
 */
56
	define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
57
 
58
/*
59
 *---------------------------------------------------------------
60
 * ERROR REPORTING
61
 *---------------------------------------------------------------
62
 *
63
 * Different environments will require different levels of error reporting.
64
 * By default development will show errors but testing and live will hide them.
65
 */
66
switch (ENVIRONMENT)
67
{
68
	case 'development':
69
		error_reporting(-1);
70
		ini_set('display_errors', 1);
71
	break;
72
 
73
	case 'testing':
74
	case 'production':
75
		ini_set('display_errors', 0);
76
		if (version_compare(PHP_VERSION, '5.3', '>='))
77
		{
78
			error_reporting(E_ALL & ~E_NOTICE & ~E_DEPRECATED & ~E_STRICT & ~E_USER_NOTICE & ~E_USER_DEPRECATED);
79
		}
80
		else
81
		{
82
			error_reporting(E_ALL & ~E_NOTICE & ~E_STRICT & ~E_USER_NOTICE);
83
		}
84
	break;
85
 
86
	default:
87
		header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
88
		echo 'The application environment is not set correctly.';
89
		exit(1); // EXIT_ERROR
90
}
91
 
92
/*
93
 *---------------------------------------------------------------
94
 * SYSTEM DIRECTORY NAME
95
 *---------------------------------------------------------------
96
 *
97
 * This variable must contain the name of your "system" directory.
98
 * Set the path if it is not in the same directory as this file.
99
 */
70 lars 100
	$system_path = '/var/www/starfleethq/ci/system';
1 lars 101
 
102
/*
103
 *---------------------------------------------------------------
104
 * APPLICATION DIRECTORY NAME
105
 *---------------------------------------------------------------
106
 *
107
 * If you want this front controller to use a different "application"
108
 * directory than the default one you can set its name here. The directory
109
 * can also be renamed or relocated anywhere on your server. If you do,
110
 * use an absolute (full) server path.
111
 * For more info please see the user guide:
112
 *
113
 * https://codeigniter.com/user_guide/general/managing_apps.html
114
 *
115
 * NO TRAILING SLASH!
116
 */
70 lars 117
	$application_folder = '/var/www/starfleethq/ci/application';
1 lars 118
 
119
/*
120
 *---------------------------------------------------------------
121
 * VIEW DIRECTORY NAME
122
 *---------------------------------------------------------------
123
 *
124
 * If you want to move the view directory out of the application
125
 * directory, set the path to it here. The directory can be renamed
126
 * and relocated anywhere on your server. If blank, it will default
127
 * to the standard location inside your application directory.
128
 * If you do move this, use an absolute (full) server path.
129
 *
130
 * NO TRAILING SLASH!
131
 */
132
	$view_folder = '';
133
 
134
 
135
/*
136
 * --------------------------------------------------------------------
137
 * DEFAULT CONTROLLER
138
 * --------------------------------------------------------------------
139
 *
140
 * Normally you will set your default controller in the routes.php file.
141
 * You can, however, force a custom routing by hard-coding a
142
 * specific controller class/function here. For most applications, you
143
 * WILL NOT set your routing here, but it's an option for those
144
 * special instances where you might want to override the standard
145
 * routing in a specific front controller that shares a common CI installation.
146
 *
147
 * IMPORTANT: If you set the routing here, NO OTHER controller will be
148
 * callable. In essence, this preference limits your application to ONE
149
 * specific controller. Leave the function name blank if you need
150
 * to call functions dynamically via the URI.
151
 *
152
 * Un-comment the $routing array below to use this feature
153
 */
154
	// The directory name, relative to the "controllers" directory.  Leave blank
155
	// if your controller is not in a sub-directory within the "controllers" one
156
	// $routing['directory'] = '';
157
 
158
	// The controller class file name.  Example:  mycontroller
159
	// $routing['controller'] = '';
160
 
161
	// The controller function you wish to be called.
162
	// $routing['function']	= '';
163
 
164
 
165
/*
166
 * -------------------------------------------------------------------
167
 *  CUSTOM CONFIG VALUES
168
 * -------------------------------------------------------------------
169
 *
170
 * The $assign_to_config array below will be passed dynamically to the
171
 * config class when initialized. This allows you to set custom config
172
 * items or override any default config values found in the config.php file.
173
 * This can be handy as it permits you to share one application between
174
 * multiple front controller files, with each file containing different
175
 * config values.
176
 *
177
 * Un-comment the $assign_to_config array below to use this feature
178
 */
179
	// $assign_to_config['name_of_config_item'] = 'value of config item';
180
 
181
 
182
 
183
// --------------------------------------------------------------------
184
// END OF USER CONFIGURABLE SETTINGS.  DO NOT EDIT BELOW THIS LINE
185
// --------------------------------------------------------------------
186
 
187
/*
188
 * ---------------------------------------------------------------
189
 *  Resolve the system path for increased reliability
190
 * ---------------------------------------------------------------
191
 */
192
 
193
	// Set the current directory correctly for CLI requests
194
	if (defined('STDIN'))
195
	{
196
		chdir(dirname(__FILE__));
197
	}
198
 
199
	if (($_temp = realpath($system_path)) !== FALSE)
200
	{
201
		$system_path = $_temp.DIRECTORY_SEPARATOR;
202
	}
203
	else
204
	{
205
		// Ensure there's a trailing slash
206
		$system_path = strtr(
207
			rtrim($system_path, '/\\'),
208
			'/\\',
209
			DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
210
		).DIRECTORY_SEPARATOR;
211
	}
212
 
213
	// Is the system path correct?
214
	if ( ! is_dir($system_path))
215
	{
216
		header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
217
		echo 'Your system folder path does not appear to be set correctly. Please open the following file and correct this: '.pathinfo(__FILE__, PATHINFO_BASENAME);
218
		exit(3); // EXIT_CONFIG
219
	}
220
 
221
/*
222
 * -------------------------------------------------------------------
223
 *  Now that we know the path, set the main path constants
224
 * -------------------------------------------------------------------
225
 */
226
	// The name of THIS file
227
	define('SELF', pathinfo(__FILE__, PATHINFO_BASENAME));
228
 
229
	// Path to the system directory
230
	define('BASEPATH', $system_path);
231
 
232
	// Path to the front controller (this file) directory
233
	define('FCPATH', dirname(__FILE__).DIRECTORY_SEPARATOR);
234
 
235
	// Name of the "system" directory
236
	define('SYSDIR', basename(BASEPATH));
237
 
238
	// The path to the "application" directory
239
	if (is_dir($application_folder))
240
	{
241
		if (($_temp = realpath($application_folder)) !== FALSE)
242
		{
243
			$application_folder = $_temp;
244
		}
245
		else
246
		{
247
			$application_folder = strtr(
248
				rtrim($application_folder, '/\\'),
249
				'/\\',
250
				DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
251
			);
252
		}
253
	}
254
	elseif (is_dir(BASEPATH.$application_folder.DIRECTORY_SEPARATOR))
255
	{
256
		$application_folder = BASEPATH.strtr(
257
			trim($application_folder, '/\\'),
258
			'/\\',
259
			DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
260
		);
261
	}
262
	else
263
	{
264
		header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
265
		echo 'Your application folder path does not appear to be set correctly. Please open the following file and correct this: '.SELF;
266
		exit(3); // EXIT_CONFIG
267
	}
268
 
269
	define('APPPATH', $application_folder.DIRECTORY_SEPARATOR);
270
 
271
	// The path to the "views" directory
272
	if ( ! isset($view_folder[0]) && is_dir(APPPATH.'views'.DIRECTORY_SEPARATOR))
273
	{
274
		$view_folder = APPPATH.'views';
275
	}
276
	elseif (is_dir($view_folder))
277
	{
278
		if (($_temp = realpath($view_folder)) !== FALSE)
279
		{
280
			$view_folder = $_temp;
281
		}
282
		else
283
		{
284
			$view_folder = strtr(
285
				rtrim($view_folder, '/\\'),
286
				'/\\',
287
				DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
288
			);
289
		}
290
	}
291
	elseif (is_dir(APPPATH.$view_folder.DIRECTORY_SEPARATOR))
292
	{
293
		$view_folder = APPPATH.strtr(
294
			trim($view_folder, '/\\'),
295
			'/\\',
296
			DIRECTORY_SEPARATOR.DIRECTORY_SEPARATOR
297
		);
298
	}
299
	else
300
	{
301
		header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
302
		echo 'Your view folder path does not appear to be set correctly. Please open the following file and correct this: '.SELF;
303
		exit(3); // EXIT_CONFIG
304
	}
305
 
306
	define('VIEWPATH', $view_folder.DIRECTORY_SEPARATOR);
307
 
308
/*
309
 * --------------------------------------------------------------------
310
 * LOAD THE BOOTSTRAP FILE
311
 * --------------------------------------------------------------------
312
 *
313
 * And away we go...
314
 */
315
require_once BASEPATH.'core/CodeIgniter.php';