|
31 | 31 | define('SESSION_COOKIE_NAME', env('SESSION_COOKIE_NAME', genEvoSessionName())); // $site_sessionname |
32 | 32 | } |
33 | 33 |
|
| 34 | +/** |
| 35 | + * @deprecated use EVO_CLASS |
| 36 | + */ |
34 | 37 | if (!defined('MODX_CLASS')) { |
35 | 38 | define('MODX_CLASS', env('MODX_CLASS', '\DocumentParser')); |
36 | 39 | } |
| 40 | +if (!defined('EVO_CLASS')) { |
| 41 | + define('EVO_CLASS', env('EVO_CLASS', '\DocumentParser')); |
| 42 | +} |
37 | 43 |
|
| 44 | +/** |
| 45 | + * @deprecated use EVO_SITE_HOSTNAMES |
| 46 | + */ |
38 | 47 | if (!defined('MODX_SITE_HOSTNAMES')) { |
39 | 48 | define('MODX_SITE_HOSTNAMES', env('MODX_SITE_HOSTNAMES', '')); |
40 | 49 | } |
| 50 | +if (!defined('EVO_SITE_HOSTNAMES')) { |
| 51 | + define('EVO_SITE_HOSTNAMES', env('EVO_SITE_HOSTNAMES', '')); |
| 52 | +} |
41 | 53 |
|
42 | 54 | if (!defined('MGR_DIR')) { |
43 | 55 | define('MGR_DIR', env('MGR_DIR', 'manager')); |
|
51 | 63 | define('EVO_STORAGE_PATH', env('EVO_STORAGE_PATH', EVO_CORE_PATH . 'storage/')); |
52 | 64 | } |
53 | 65 |
|
| 66 | +/** |
| 67 | + * @deprecated use EVO_BASE_PATH |
| 68 | + */ |
54 | 69 | if (!defined('MODX_BASE_PATH') || !defined('MODX_BASE_URL')) { |
55 | 70 | // automatically assign base_path and base_url |
56 | 71 | $script_name = str_replace( |
|
112 | 127 | } |
113 | 128 | unset($base_url); |
114 | 129 | } |
| 130 | +if (!defined('EVO_BASE_PATH') || !defined('EVO_BASE_PATH')) { |
| 131 | + // automatically assign base_path and base_url |
| 132 | + $script_name = str_replace( |
| 133 | + '\\', |
| 134 | + '/', |
| 135 | + dirname( |
| 136 | + get_by_key( |
| 137 | + $_SERVER, |
| 138 | + ($_SERVER['PHP_SELF'] !== $_SERVER['SCRIPT_NAME'] && ('undefined' === php_sapi_name() || is_cli())) ? |
| 139 | + 'PHP_SELF' : 'SCRIPT_NAME' |
| 140 | + ) |
| 141 | + ) |
| 142 | + ); |
| 143 | + |
| 144 | + if (substr($script_name, -1 - strlen(MGR_DIR)) === '/' . MGR_DIR || |
| 145 | + strpos($script_name, '/' . MGR_DIR . '/') !== false |
| 146 | + ) { |
| 147 | + $separator = MGR_DIR; |
| 148 | + } elseif (strpos($script_name, '/assets/') !== false) { |
| 149 | + $separator = 'assets'; |
| 150 | + } else { |
| 151 | + $separator = ''; |
| 152 | + } |
| 153 | + |
| 154 | + if ($separator !== '') { |
| 155 | + $items = explode('/' . $separator, $script_name); |
| 156 | + } else { |
| 157 | + $items = array($script_name); |
| 158 | + } |
| 159 | + unset($script_name); |
| 160 | + |
| 161 | + if (count($items) > 1) { |
| 162 | + array_pop($items); |
| 163 | + } |
| 164 | + |
| 165 | + $url = implode($separator, $items); |
| 166 | + |
| 167 | + $base_url = Str::finish(implode($separator, $items), '/'); |
| 168 | + unset($separator); |
| 169 | + |
| 170 | + reset($items); |
| 171 | + $items = explode(MGR_DIR, str_replace('\\', '/', dirname(__DIR__, 2))); |
| 172 | + if (count($items) > 1) { |
| 173 | + array_pop($items); |
| 174 | + } |
| 175 | + |
| 176 | + $base_path = Str::finish( |
| 177 | + str_replace('\\', '/', implode(MGR_DIR, $items)) |
| 178 | + , '/' |
| 179 | + ); |
| 180 | + |
| 181 | + if (!defined('EVO_BASE_PATH')) { |
| 182 | + define('EVO_BASE_PATH', env('EVO_BASE_PATH', $base_path)); |
| 183 | + } |
| 184 | + unset($base_path); |
| 185 | + |
| 186 | + if (!defined('EVO_BASE_URL')) { |
| 187 | + define('EVO_BASE_URL', env('EVO_BASE_URL', $base_url)); |
| 188 | + } |
| 189 | + unset($base_url); |
| 190 | +} |
115 | 191 |
|
| 192 | +/** |
| 193 | + * @deprecated use EVO_BASE_PATH |
| 194 | + */ |
116 | 195 | if (!preg_match('/\/$/', MODX_BASE_PATH)) { |
117 | 196 | throw new RuntimeException('Please, use trailing slash at the end of MODX_BASE_PATH'); |
118 | 197 | } |
| 198 | +if (!preg_match('/\/$/', EVO_BASE_PATH)) { |
| 199 | + throw new RuntimeException('Please, use trailing slash at the end of EVO_BASE_PATH'); |
| 200 | +} |
119 | 201 |
|
120 | | -if (!preg_match('/\/$/', MODX_BASE_URL)) { |
121 | | - throw new RuntimeException('Please, use trailing slash at the end of MODX_BASE_URL'); |
| 202 | +/** |
| 203 | + * @deprecated use EVO_BASE_URL |
| 204 | + */ |
| 205 | +if (!preg_match('/\/$/', EVO_BASE_URL)) { |
| 206 | + throw new RuntimeException('Please, use trailing slash at the end of EVO_BASE_URL'); |
122 | 207 | } |
123 | 208 |
|
| 209 | +/** |
| 210 | + * @deprecated use EVO_MANAGER_PATH |
| 211 | + */ |
124 | 212 | if (!defined('MODX_MANAGER_PATH')) { |
125 | 213 | define('MODX_MANAGER_PATH', env('MODX_MANAGER_PATH', MODX_BASE_PATH . MGR_DIR . '/')); |
126 | 214 | } |
| 215 | +if (!defined('EVO_MANAGER_PATH')) { |
| 216 | + define('EVO_MANAGER_PATH', env('EVO_MANAGER_PATH', EVO_BASE_PATH . MGR_DIR . '/')); |
| 217 | +} |
127 | 218 |
|
| 219 | +/** |
| 220 | + * @deprecated use EVO_SITE_URL |
| 221 | + */ |
128 | 222 | if (!defined('MODX_SITE_URL')) { |
129 | 223 | // check for valid hostnames |
130 | 224 | $site_hostname = 'localhost'; |
|
171 | 265 | define('MODX_SITE_URL', env('MODX_SITE_URL', $site_url)); |
172 | 266 | unset($site_url); |
173 | 267 | } |
| 268 | +if (!defined('EVO_SITE_URL')) { |
| 269 | + // check for valid hostnames |
| 270 | + $site_hostname = 'localhost'; |
| 271 | + if (!is_cli()) { |
| 272 | + $site_hostname = str_replace( |
| 273 | + ':' . $_SERVER['SERVER_PORT'], |
| 274 | + '', |
| 275 | + get_by_key($_SERVER, 'HTTP_HOST', $site_hostname) |
| 276 | + ); |
| 277 | + } |
| 278 | + $site_hostnames = explode(',', EVO_SITE_HOSTNAMES); |
| 279 | + if (!empty($site_hostnames[0]) && !in_array($site_hostname, $site_hostnames)) { |
| 280 | + $site_hostname = $site_hostnames[0]; |
| 281 | + } |
| 282 | + unset($site_hostnames); |
| 283 | + |
| 284 | + if (!isset($_SERVER['SERVER_PORT'])) { |
| 285 | + $_SERVER['SERVER_PORT'] = 80; |
| 286 | + } |
| 287 | + |
| 288 | + // assign site_url |
| 289 | + if ((isset($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) === 'on') || |
| 290 | + $_SERVER['SERVER_PORT'] == HTTPS_PORT || |
| 291 | + (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') |
| 292 | + ) { |
| 293 | + $site_url = 'https://' . $site_hostname; |
| 294 | + } else { |
| 295 | + $site_url = 'http://' . $site_hostname; |
| 296 | + } |
| 297 | + unset($site_hostname); |
| 298 | + |
| 299 | + if ($_SERVER['SERVER_PORT'] !== 80) { // remove port from HTTP_HOST |
| 300 | + $site_url = str_replace(':' . $_SERVER['SERVER_PORT'], '', $site_url); |
| 301 | + } |
| 302 | + |
| 303 | + if (!in_array((int)$_SERVER['SERVER_PORT'], [80, (int)HTTPS_PORT], true) && |
| 304 | + strtolower(get_by_key($_SERVER, 'HTTPS', 'off')) |
| 305 | + ) { |
| 306 | + $site_url .= ':' . $_SERVER['SERVER_PORT']; |
| 307 | + } |
| 308 | + |
| 309 | + $site_url .= EVO_BASE_URL; |
| 310 | + |
| 311 | + define('EVO_SITE_URL', env('EVO_SITE_URL', $site_url)); |
| 312 | + unset($site_url); |
| 313 | +} |
174 | 314 |
|
| 315 | +/** |
| 316 | + * @deprecated use EVO_SITE_URL |
| 317 | + */ |
175 | 318 | if (!preg_match('/\/$/', MODX_SITE_URL)) { |
176 | 319 | throw new RuntimeException('Please, use trailing slash at the end of MODX_SITE_URL'); |
177 | 320 | } |
| 321 | +if (!preg_match('/\/$/', EVO_SITE_URL)) { |
| 322 | + throw new RuntimeException('Please, use trailing slash at the end of EVO_SITE_URL'); |
| 323 | +} |
178 | 324 |
|
| 325 | +/** |
| 326 | + * @deprecated use EVO_MANAGER_URL |
| 327 | + */ |
179 | 328 | if (!defined('MODX_MANAGER_URL')) { |
180 | 329 | define('MODX_MANAGER_URL', env('MODX_MANAGER_URL', MODX_SITE_URL . MGR_DIR . '/')); |
181 | 330 | } |
| 331 | +if (!defined('EVO_MANAGER_URL')) { |
| 332 | + define('EVO_MANAGER_URL', env('EVO_MANAGER_URL', EVO_SITE_URL . MGR_DIR . '/')); |
| 333 | +} |
182 | 334 |
|
| 335 | +/** |
| 336 | + * @deprecated use EVO_SANITIZE_SEED |
| 337 | + */ |
183 | 338 | if (!defined('MODX_SANITIZE_SEED')) { |
184 | 339 | define('MODX_SANITIZE_SEED', 'sanitize_seed_' . base_convert(md5(__FILE__), 16, 36)); |
185 | 340 | } |
| 341 | +if (!defined('EVO_SANITIZE_SEED')) { |
| 342 | + define('EVO_SANITIZE_SEED', 'sanitize_seed_' . base_convert(md5(__FILE__), 16, 36)); |
| 343 | +} |
186 | 344 |
|
187 | 345 | if (is_cli()) { |
| 346 | + /** |
| 347 | + * @deprecated use EVO_CLI |
| 348 | + */ |
188 | 349 | if (!defined('MODX_CLI')) { |
189 | 350 | define('MODX_CLI', true); |
190 | 351 | } |
| 352 | + if (!defined('EVO_CLI')) { |
| 353 | + define('EVO_CLI', true); |
| 354 | + } |
191 | 355 |
|
| 356 | + /** |
| 357 | + * @deprecated use EVO_BASE_PATH |
| 358 | + */ |
192 | 359 | if (!(defined('MODX_BASE_PATH') || defined('MODX_BASE_URL'))) { |
193 | 360 | throw new RuntimeException('Please, define MODX_BASE_PATH and MODX_BASE_URL on cli mode'); |
194 | 361 | } |
| 362 | + if (!(defined('EVO_BASE_PATH') || defined('EVO_BASE_URL'))) { |
| 363 | + throw new RuntimeException('Please, define EVO_BASE_PATH and EVO_BASE_URL on cli mode'); |
| 364 | + } |
195 | 365 |
|
| 366 | + /** |
| 367 | + * @deprecated use EVO_SITE_URL |
| 368 | + */ |
196 | 369 | if (!defined('MODX_SITE_URL')) { |
197 | 370 | throw new RuntimeException('Please, define MODX_SITE_URL on cli mode'); |
198 | 371 | } |
| 372 | + if (!defined('EVO_SITE_URL')) { |
| 373 | + throw new RuntimeException('Please, define EVO_SITE_URL on cli mode'); |
| 374 | + } |
199 | 375 | } |
0 commit comments