miniflux-legacy/common.php

88 lines
3.6 KiB
PHP
Raw Normal View History

2013-02-18 03:48:21 +01:00
<?php
2014-03-17 02:56:43 +01:00
require __DIR__.'/lib/Translator.php';
2014-02-08 20:13:14 +01:00
require __DIR__.'/vendor/PicoDb/Database.php';
2014-05-20 20:20:27 +02:00
require __DIR__.'/vendor/PicoFeed/PicoFeed.php';
require __DIR__.'/vendor/SimpleValidator/Validator.php';
require __DIR__.'/vendor/SimpleValidator/Base.php';
require __DIR__.'/vendor/SimpleValidator/Validators/Required.php';
require __DIR__.'/vendor/SimpleValidator/Validators/Unique.php';
require __DIR__.'/vendor/SimpleValidator/Validators/MaxLength.php';
require __DIR__.'/vendor/SimpleValidator/Validators/MinLength.php';
require __DIR__.'/vendor/SimpleValidator/Validators/Integer.php';
require __DIR__.'/vendor/SimpleValidator/Validators/Equals.php';
require __DIR__.'/vendor/SimpleValidator/Validators/AlphaNumeric.php';
2014-02-08 20:13:14 +01:00
require __DIR__.'/models/config.php';
require __DIR__.'/models/user.php';
require __DIR__.'/models/feed.php';
require __DIR__.'/models/item.php';
require __DIR__.'/models/schema.php';
2014-03-30 21:59:26 +02:00
require __DIR__.'/models/auto_update.php';
require __DIR__.'/models/database.php';
2014-05-27 02:47:40 +02:00
require __DIR__.'/models/remember_me.php';
2013-02-18 03:48:21 +01:00
2014-11-07 03:15:37 +01:00
if (file_exists(__DIR__.'/config.php')) {
require __DIR__.'/config.php';
2014-05-28 22:10:41 +02:00
}
2013-05-26 19:09:34 +02:00
defined('APP_VERSION') or define('APP_VERSION', 'master');
defined('HTTP_TIMEOUT') or define('HTTP_TIMEOUT', 20);
2014-05-27 02:47:40 +02:00
defined('BASE_URL_DIRECTORY') or define('BASE_URL_DIRECTORY', dirname($_SERVER['PHP_SELF']));
defined('ROOT_DIRECTORY') or define('ROOT_DIRECTORY', __DIR__);
2014-10-30 02:28:23 +01:00
defined('DATA_DIRECTORY') or define('DATA_DIRECTORY', __DIR__.'/data');
defined('ENABLE_MULTIPLE_DB') or define('ENABLE_MULTIPLE_DB', true);
defined('DB_FILENAME') or define('DB_FILENAME', 'db.sqlite');
2013-08-30 01:34:11 +02:00
defined('DEBUG') or define('DEBUG', true);
defined('DEBUG_FILENAME') or define('DEBUG_FILENAME', DATA_DIRECTORY.DIRECTORY_SEPARATOR.'debug.log');
2013-07-17 03:58:11 +02:00
defined('THEME_DIRECTORY') or define('THEME_DIRECTORY', 'themes');
defined('SESSION_SAVE_PATH') or define('SESSION_SAVE_PATH', '');
2013-09-24 01:22:13 +02:00
defined('PROXY_HOSTNAME') or define('PROXY_HOSTNAME', '');
defined('PROXY_PORT') or define('PROXY_PORT', 3128);
defined('PROXY_USERNAME') or define('PROXY_USERNAME', '');
defined('PROXY_PASSWORD') or define('PROXY_PASSWORD', '');
2014-03-30 21:59:26 +02:00
defined('ENABLE_AUTO_UPDATE') or define('ENABLE_AUTO_UPDATE', true);
defined('AUTO_UPDATE_DOWNLOAD_DIRECTORY') or define('AUTO_UPDATE_DOWNLOAD_DIRECTORY', DATA_DIRECTORY.DIRECTORY_SEPARATOR.'download');
defined('AUTO_UPDATE_ARCHIVE_DIRECTORY') or define('AUTO_UPDATE_ARCHIVE_DIRECTORY', DATA_DIRECTORY.DIRECTORY_SEPARATOR.'archive');
defined('AUTO_UPDATE_BACKUP_DIRECTORY') or define('AUTO_UPDATE_BACKUP_DIRECTORY', DATA_DIRECTORY.DIRECTORY_SEPARATOR.'backup');
2013-09-24 01:22:13 +02:00
2014-05-28 22:10:41 +02:00
require __DIR__.'/check_setup.php';
2014-02-08 20:13:14 +01:00
PicoDb\Database::bootstrap('db', function() {
2013-02-18 03:48:21 +01:00
$db = new PicoDb\Database(array(
'driver' => 'sqlite',
'filename' => \Model\Database\get_path(),
2013-02-18 03:48:21 +01:00
));
2013-05-26 19:09:34 +02:00
if ($db->schema()->check(Model\Config\DB_VERSION)) {
2013-02-18 03:48:21 +01:00
return $db;
}
else {
$errors = $db->getLogMessages();
$pdo = new \PDO('sqlite::memory:');
$result = $pdo->query('select sqlite_version()', PDO::FETCH_COLUMN, 0);
$sqlite_version = $result ? $result->fetch() : '?';
$html = 'Unable to migrate the database schema, <strong>please copy and paste this message and create a bug report:</strong><hr/>';
$html .= '<pre><code>';
$html .= (isset($errors[0]) ? $errors[0] : 'Unknown SQL error').PHP_EOL.PHP_EOL;
$html .= '- PHP version: '.phpversion().PHP_EOL;
$html .= '- SAPI: '.php_sapi_name().PHP_EOL;
$html .= '- PDO Sqlite version: '.phpversion('pdo_sqlite').PHP_EOL;
$html .= '- Sqlite version: '.$sqlite_version.PHP_EOL;
$html .= '- OS: '.php_uname();
$html .= '</code></pre>';
die($html);
2013-02-18 03:48:21 +01:00
}
});