2013-08-11 13:30:41 +02:00
|
|
|
<?php
|
2018-11-15 20:52:17 +01:00
|
|
|
/**
|
|
|
|
* This file is part of RSS-Bridge, a PHP project capable of generating RSS and
|
|
|
|
* Atom feeds for websites that don't have one.
|
|
|
|
*
|
|
|
|
* For the full license information, please view the UNLICENSE file distributed
|
|
|
|
* with this source code.
|
|
|
|
*
|
|
|
|
* @package Core
|
|
|
|
* @license http://unlicense.org/ UNLICENSE
|
|
|
|
* @link https://github.com/rss-bridge/rss-bridge
|
|
|
|
*/
|
2013-08-11 13:30:41 +02:00
|
|
|
|
2018-11-15 20:52:17 +01:00
|
|
|
/** Path to the root folder of RSS-Bridge (where index.php is located) */
|
|
|
|
define('PATH_ROOT', __DIR__ . '/../');
|
|
|
|
|
|
|
|
/** Path to the core library */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_LIB', PATH_ROOT . 'lib/');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
|
|
|
/** Path to the vendor library */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_LIB_VENDOR', PATH_ROOT . 'vendor/');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
|
|
|
/** Path to the bridges library */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_LIB_BRIDGES', PATH_ROOT . 'bridges/');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
|
|
|
/** Path to the formats library */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_LIB_FORMATS', PATH_ROOT . 'formats/');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
|
|
|
/** Path to the caches library */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_LIB_CACHES', PATH_ROOT . 'caches/');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
2019-02-06 18:34:51 +01:00
|
|
|
/** Path to the actions library */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_LIB_ACTIONS', PATH_ROOT . 'actions/');
|
2019-02-06 18:34:51 +01:00
|
|
|
|
2018-11-15 20:52:17 +01:00
|
|
|
/** Path to the cache folder */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('PATH_CACHE', PATH_ROOT . 'cache/');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
|
|
|
/** Path to the whitelist file */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('WHITELIST', PATH_ROOT . 'whitelist.txt');
|
2018-11-15 20:52:17 +01:00
|
|
|
|
2019-06-06 20:53:44 +02:00
|
|
|
/** Path to the default whitelist file */
|
2019-06-07 19:51:00 +02:00
|
|
|
define('WHITELIST_DEFAULT', PATH_ROOT . 'whitelist.default.txt');
|
2019-06-06 20:53:44 +02:00
|
|
|
|
2019-06-07 19:45:47 +02:00
|
|
|
/** Path to the configuration file */
|
|
|
|
define('FILE_CONFIG', PATH_ROOT . 'config.ini.php');
|
|
|
|
|
|
|
|
/** Path to the default configuration file */
|
|
|
|
define('FILE_CONFIG_DEFAULT', PATH_ROOT . 'config.default.ini.php');
|
|
|
|
|
2018-11-15 20:52:17 +01:00
|
|
|
/** URL to the RSS-Bridge repository */
|
2018-11-06 18:53:35 +01:00
|
|
|
define('REPOSITORY', 'https://github.com/RSS-Bridge/rss-bridge/');
|
2018-11-06 18:24:05 +01:00
|
|
|
|
2018-11-06 19:23:32 +01:00
|
|
|
// Interfaces
|
2019-02-06 18:34:51 +01:00
|
|
|
require_once PATH_LIB . 'ActionInterface.php';
|
2018-11-06 19:23:32 +01:00
|
|
|
require_once PATH_LIB . 'BridgeInterface.php';
|
|
|
|
require_once PATH_LIB . 'CacheInterface.php';
|
|
|
|
require_once PATH_LIB . 'FormatInterface.php';
|
|
|
|
|
2018-11-06 18:29:00 +01:00
|
|
|
// Classes
|
2019-02-06 18:34:51 +01:00
|
|
|
require_once PATH_LIB . 'FactoryAbstract.php';
|
2018-12-26 22:41:32 +01:00
|
|
|
require_once PATH_LIB . 'FeedItem.php';
|
2018-11-10 20:03:03 +01:00
|
|
|
require_once PATH_LIB . 'Debug.php';
|
2018-11-06 18:44:45 +01:00
|
|
|
require_once PATH_LIB . 'Exceptions.php';
|
|
|
|
require_once PATH_LIB . 'Format.php';
|
|
|
|
require_once PATH_LIB . 'FormatAbstract.php';
|
2019-06-18 18:55:29 +02:00
|
|
|
require_once PATH_LIB . 'BridgeFactory.php';
|
2018-11-06 18:44:45 +01:00
|
|
|
require_once PATH_LIB . 'BridgeAbstract.php';
|
|
|
|
require_once PATH_LIB . 'FeedExpander.php';
|
|
|
|
require_once PATH_LIB . 'Cache.php';
|
|
|
|
require_once PATH_LIB . 'Authentication.php';
|
|
|
|
require_once PATH_LIB . 'Configuration.php';
|
|
|
|
require_once PATH_LIB . 'BridgeCard.php';
|
|
|
|
require_once PATH_LIB . 'BridgeList.php';
|
|
|
|
require_once PATH_LIB . 'ParameterValidator.php';
|
2019-02-06 18:34:51 +01:00
|
|
|
require_once PATH_LIB . 'ActionFactory.php';
|
|
|
|
require_once PATH_LIB . 'ActionAbstract.php';
|
2018-11-06 18:24:05 +01:00
|
|
|
|
2018-11-06 18:29:00 +01:00
|
|
|
// Functions
|
2018-11-06 18:44:45 +01:00
|
|
|
require_once PATH_LIB . 'html.php';
|
|
|
|
require_once PATH_LIB . 'error.php';
|
|
|
|
require_once PATH_LIB . 'contents.php';
|
2013-08-11 13:30:41 +02:00
|
|
|
|
2018-11-06 18:29:00 +01:00
|
|
|
// Vendor
|
2019-01-13 22:02:59 +01:00
|
|
|
define('MAX_FILE_SIZE', 10000000); /* Allow larger files for simple_html_dom */
|
2018-11-06 18:44:45 +01:00
|
|
|
require_once PATH_LIB_VENDOR . 'simplehtmldom/simple_html_dom.php';
|
|
|
|
require_once PATH_LIB_VENDOR . 'php-urljoin/src/urljoin.php';
|
2018-11-10 19:42:49 +01:00
|
|
|
|
|
|
|
// Initialize static members
|
|
|
|
try {
|
2018-11-15 20:01:56 +01:00
|
|
|
Format::setWorkingDir(PATH_LIB_FORMATS);
|
2018-11-14 20:39:39 +01:00
|
|
|
Cache::setWorkingDir(PATH_LIB_CACHES);
|
2018-11-10 19:42:49 +01:00
|
|
|
} catch(Exception $e) {
|
|
|
|
error_log($e);
|
|
|
|
header('Content-type: text/plain', true, 500);
|
|
|
|
die($e->getMessage());
|
|
|
|
}
|