$conf = new ConfigManager();
$sessionManager = new SessionManager($_SESSION, $conf);
+// LC_MESSAGES isn't defined without php-intl, in this case use LC_COLLATE locale instead.
+if (! defined('LC_MESSAGES')) {
+ define('LC_MESSAGES', LC_COLLATE);
+}
+
// Sniff browser language and set date format accordingly.
if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
autoLocale($_SERVER['HTTP_ACCEPT_LANGUAGE']);
// If this is an HTTP(S) link, we try go get the page to extract the title (otherwise we will to straight to the edit form.)
if (empty($title) && strpos(get_url_scheme($url), 'http') !== false) {
// Short timeout to keep the application responsive
- list($headers, $content) = get_http_response($url, 4);
- if (strpos($headers[0], '200 OK') !== false) {
- // Retrieve charset.
- $charset = get_charset($headers, $content);
- // Extract title.
- $title = html_extract_title($content);
- // Re-encode title in utf-8 if necessary.
- if (! empty($title) && strtolower($charset) != 'utf-8') {
- $title = mb_convert_encoding($title, 'utf-8', $charset);
- }
+ // The callback will fill $charset and $title with data from the downloaded page.
+ get_http_response($url, 25, 4194304, get_curl_download_callback($charset, $title));
+ if (! empty($title) && strtolower($charset) != 'utf-8') {
+ $title = mb_convert_encoding($title, 'utf-8', $charset);
}
}