*
* The code is read from the raw content of the version file on the Git server.
*
+ * @param string $url URL to reach to get the latest version.
+ * @param int $timeout Timeout to check the URL (in seconds).
+ *
* @return mixed the version code from the repository if available, else 'false'
*/
public static function getLatestGitVersionCode($url, $timeout=2)
{
- list($headers, $data) = get_http_url($url, $timeout);
+ list($headers, $data) = get_http_response($url, $timeout);
if (strpos($headers[0], '200 OK') === false) {
error_log('Failed to retrieve ' . $url);
* @param int $checkInterval the minimum interval between update checks (in seconds
* @param bool $enableCheck whether to check for new versions
* @param bool $isLoggedIn whether the user is logged in
+ * @param string $branch check update for the given branch
+ *
+ * @throws Exception an invalid branch has been set for update checks
*
* @return mixed the new version code if available and greater, else 'false'
*/
/**
* Checks Shaarli has the proper access permissions to its resources
*
- * @param array $globalConfig The $GLOBALS['config'] array
+ * @param ConfigManager $conf Configuration Manager instance.
*
* @return array A list of the detected configuration issues
*/
- public static function checkResourcePermissions($globalConfig)
+ public static function checkResourcePermissions($conf)
{
$errors = array();
'application',
'inc',
'plugins',
- $globalConfig['RAINTPL_TPL']
+ $conf->get('resource.raintpl_tpl'),
) as $path) {
if (! is_readable(realpath($path))) {
$errors[] = '"'.$path.'" directory is not readable';
}
}
- // Check cache and data directories are readable and writeable
+ // Check cache and data directories are readable and writable
foreach (array(
- $globalConfig['CACHEDIR'],
- $globalConfig['DATADIR'],
- $globalConfig['PAGECACHE'],
- $globalConfig['RAINTPL_TMP']
+ $conf->get('resource.thumbnails_cache'),
+ $conf->get('resource.data_dir'),
+ $conf->get('resource.page_cache'),
+ $conf->get('resource.raintpl_tmp'),
) as $path) {
if (! is_readable(realpath($path))) {
$errors[] = '"'.$path.'" directory is not readable';
}
}
- // Check configuration files are readable and writeable
+ // Check configuration files are readable and writable
foreach (array(
- $globalConfig['CONFIG_FILE'],
- $globalConfig['DATASTORE'],
- $globalConfig['IPBANS_FILENAME'],
- $globalConfig['LOG_FILE'],
- $globalConfig['UPDATECHECK_FILENAME']
+ $conf->getConfigFileExt(),
+ $conf->get('resource.datastore'),
+ $conf->get('resource.ban_file'),
+ $conf->get('resource.log'),
+ $conf->get('resource.update_check'),
) as $path) {
if (! is_file(realpath($path))) {
# the file may not exist yet