diff options
Diffstat (limited to 'wallabag_compatibility_test.php')
-rw-r--r-- | wallabag_compatibility_test.php | 120 |
1 files changed, 78 insertions, 42 deletions
diff --git a/wallabag_compatibility_test.php b/wallabag_compatibility_test.php index d6f22156..3f9ff59f 100644 --- a/wallabag_compatibility_test.php +++ b/wallabag_compatibility_test.php | |||
@@ -1,10 +1,20 @@ | |||
1 | <?php | 1 | <?php |
2 | /** | ||
3 | * wallabag, self hostable application allowing you to not miss any content anymore | ||
4 | * | ||
5 | * @category wallabag | ||
6 | * @author Nicolas LÅ“uillet <nicolas@loeuillet.org> | ||
7 | * @copyright 2013 | ||
8 | * @license http://opensource.org/licenses/MIT see COPYING file | ||
9 | */ | ||
10 | |||
2 | $app_name = 'wallabag'; | 11 | $app_name = 'wallabag'; |
3 | 12 | ||
4 | $php_ok = (function_exists('version_compare') && version_compare(phpversion(), '5.3.3', '>=')); | 13 | $php_ok = (function_exists('version_compare') && version_compare(phpversion(), '5.3.3', '>=')); |
5 | $pcre_ok = extension_loaded('pcre'); | 14 | $pcre_ok = extension_loaded('pcre'); |
6 | $zlib_ok = extension_loaded('zlib'); | 15 | $zlib_ok = extension_loaded('zlib'); |
7 | $mbstring_ok = extension_loaded('mbstring'); | 16 | $mbstring_ok = extension_loaded('mbstring'); |
17 | $dom_ok = extension_loaded('DOM'); | ||
8 | $iconv_ok = extension_loaded('iconv'); | 18 | $iconv_ok = extension_loaded('iconv'); |
9 | $tidy_ok = function_exists('tidy_parse_string'); | 19 | $tidy_ok = function_exists('tidy_parse_string'); |
10 | $curl_ok = function_exists('curl_exec'); | 20 | $curl_ok = function_exists('curl_exec'); |
@@ -13,6 +23,8 @@ $parallel_ok = ((extension_loaded('http') && class_exists('HttpRequestPool')) || | |||
13 | $allow_url_fopen_ok = (bool)ini_get('allow_url_fopen'); | 23 | $allow_url_fopen_ok = (bool)ini_get('allow_url_fopen'); |
14 | $filter_ok = extension_loaded('filter'); | 24 | $filter_ok = extension_loaded('filter'); |
15 | $gettext_ok = function_exists("gettext"); | 25 | $gettext_ok = function_exists("gettext"); |
26 | $gd_ok = extension_loaded('gd'); | ||
27 | |||
16 | 28 | ||
17 | if (extension_loaded('xmlreader')) { | 29 | if (extension_loaded('xmlreader')) { |
18 | $xml_ok = true; | 30 | $xml_ok = true; |
@@ -223,10 +235,20 @@ if (isset($_GET['from'])){ | |||
223 | <td>Enabled</td> | 235 | <td>Enabled</td> |
224 | <?php echo ($iconv_ok) ? '<td class="good">Enabled' : '<td class="bad">Disabled'; ?></td> | 236 | <?php echo ($iconv_ok) ? '<td class="good">Enabled' : '<td class="bad">Disabled'; ?></td> |
225 | </tr> --> | 237 | </tr> --> |
238 | <tr class="<?php echo ($dom_ok) ? 'enabled' : 'disabled'; ?>"> | ||
239 | <td><a href="http://php.net/manual/en/book.dom.php">DOM / XML extension</a></td> | ||
240 | <td>Enabled</td> | ||
241 | <?php echo ($dom_ok) ? '<td class="good">Enabled' : '<td class="bad">Disabled'; ?></td> | ||
242 | </tr> | ||
226 | <tr class="<?php echo ($filter_ok) ? 'enabled' : 'disabled'; ?>"> | 243 | <tr class="<?php echo ($filter_ok) ? 'enabled' : 'disabled'; ?>"> |
227 | <td><a href="http://uk.php.net/manual/en/book.filter.php">Data filtering</a></td> | 244 | <td><a href="http://uk.php.net/manual/en/book.filter.php">Data filtering</a></td> |
228 | <td>Enabled</td> | 245 | <td>Enabled</td> |
229 | <?php echo ($filter_ok) ? '<td class="good">Enabled' : '<td class="pass">Disabled'; ?></td> | 246 | <?php echo ($filter_ok) ? '<td class="good">Enabled' : '<td class="pass">Disabled'; ?></td> |
247 | </tr> | ||
248 | <tr class="<?php echo ($gd_ok) ? 'enabled' : 'disabled'; ?>"> | ||
249 | <td><a href="http://php.net/manual/en/book.image.php">GD</a></td> | ||
250 | <td>Enabled</td> | ||
251 | <?php echo ($gd_ok) ? '<td class="good">Enabled' : '<td class="pass">Disabled'; ?></td> | ||
230 | </tr> | 252 | </tr> |
231 | <tr class="<?php echo ($tidy_ok) ? 'enabled' : 'disabled'; ?>"> | 253 | <tr class="<?php echo ($tidy_ok) ? 'enabled' : 'disabled'; ?>"> |
232 | <td><a href="http://php.net/tidy">Tidy</a></td> | 254 | <td><a href="http://php.net/tidy">Tidy</a></td> |
@@ -266,7 +288,7 @@ if (isset($_GET['from'])){ | |||
266 | <h3>What does this mean?</h3> | 288 | <h3>What does this mean?</h3> |
267 | <ol> | 289 | <ol> |
268 | <?php //if ($php_ok && $xml_ok && $pcre_ok && $mbstring_ok && $iconv_ok && $filter_ok && $zlib_ok && $tidy_ok && $curl_ok && $parallel_ok && $allow_url_fopen_ok): ?> | 290 | <?php //if ($php_ok && $xml_ok && $pcre_ok && $mbstring_ok && $iconv_ok && $filter_ok && $zlib_ok && $tidy_ok && $curl_ok && $parallel_ok && $allow_url_fopen_ok): ?> |
269 | <?php if ($php_ok && $xml_ok && $pcre_ok && $filter_ok && $tidy_ok && $curl_ok && $parallel_ok && $allow_url_fopen_ok && $gettext_ok && $parse_ini_ok): ?> | 291 | <?php if ($php_ok && $xml_ok && $pcre_ok && $dom_ok && $filter_ok && $gd_ok && $tidy_ok && $curl_ok && $parallel_ok && $allow_url_fopen_ok && $gettext_ok && $parse_ini_ok): ?> |
270 | <li><em>You have everything you need to run <?php echo $app_name; ?> properly! Congratulations!</em></li> | 292 | <li><em>You have everything you need to run <?php echo $app_name; ?> properly! Congratulations!</em></li> |
271 | <?php else: ?> | 293 | <?php else: ?> |
272 | <?php if ($php_ok): ?> | 294 | <?php if ($php_ok): ?> |
@@ -283,48 +305,62 @@ if (isset($_GET['from'])){ | |||
283 | <li><strong>Gettext:</strong> You have <code>gettext</code> enabled. <em>No problems here.</em></li> | 305 | <li><strong>Gettext:</strong> You have <code>gettext</code> enabled. <em>No problems here.</em></li> |
284 | 306 | ||
285 | <?php if ($parse_ini_ok): ?> | 307 | <?php if ($parse_ini_ok): ?> |
308 | <li><strong>Parse ini:</strong> You can parse <em>ini</em> files. <em>No problems here.</em></li> | ||
309 | |||
310 | <?php if ($dom_ok): ?> | ||
311 | <li><strong>DOM/XML:</strong> You can parse <em>ini</em> files. <em>No problems here.</em></li> | ||
286 | 312 | ||
287 | <?php if ($filter_ok): ?> | 313 | <?php if ($filter_ok): ?> |
288 | <li><strong>Data filtering:</strong> You have the PHP filter extension enabled. <em>No problems here.</em></li> | 314 | <li><strong>Data filtering:</strong> You can use the PHP build-in DOM to operate on XML documents. <em>No problems here.</em></li> |
289 | 315 | ||
290 | <?php if ($zlib_ok): ?> | 316 | <?php if ($zlib_ok): ?> |
291 | <li><strong>Zlib:</strong> You have <code>Zlib</code> enabled. This allows SimplePie to support GZIP-encoded feeds. <em>No problems here.</em></li> | 317 | <li><strong>Zlib:</strong> You have <code>Zlib</code> enabled. This allows SimplePie to support GZIP-encoded feeds. <em>No problems here.</em></li> |
292 | <?php else: ?> | 318 | <?php else: ?> |
293 | <li><strong>Zlib:</strong> The <code>Zlib</code> extension is not available. SimplePie will ignore any GZIP-encoding, and instead handle feeds as uncompressed text.</li> | 319 | <li><strong>Zlib:</strong> The <code>Zlib</code> extension is not available. SimplePie will ignore any GZIP-encoding, and instead handle feeds as uncompressed text.</li> |
294 | <?php endif; ?> | 320 | <?php endif; ?> |
295 | 321 | ||
296 | <?php if ($mbstring_ok && $iconv_ok): ?> | 322 | <?php if ($mbstring_ok && $iconv_ok): ?> |
297 | <li><strong>mbstring and iconv:</strong> You have both <code>mbstring</code> and <code>iconv</code> installed! This will allow <?php echo $app_name; ?> to handle the greatest number of languages. <em>No problems here.</em></li> | 323 | <li><strong>mbstring and iconv:</strong> You have both <code>mbstring</code> and <code>iconv</code> installed! This will allow <?php echo $app_name; ?> to handle the greatest number of languages. <em>No problems here.</em></li> |
298 | <?php elseif ($mbstring_ok): ?> | 324 | <?php elseif ($mbstring_ok): ?> |
299 | <li><strong>mbstring:</strong> <code>mbstring</code> is installed, but <code>iconv</code> is not.</li> | 325 | <li><strong>mbstring:</strong> <code>mbstring</code> is installed, but <code>iconv</code> is not.</li> |
300 | <?php elseif ($iconv_ok): ?> | 326 | <?php elseif ($iconv_ok): ?> |
301 | <li><strong>iconv:</strong> <code>iconv</code> is installed, but <code>mbstring</code> is not.</li> | 327 | <li><strong>iconv:</strong> <code>iconv</code> is installed, but <code>mbstring</code> is not.</li> |
302 | <?php else: ?> | 328 | <?php else: ?> |
303 | <li><strong>mbstring and iconv:</strong> <em>You do not have either of the extensions installed.</em> This will significantly impair your ability to read non-English feeds, as well as even some English ones.</li> | 329 | <li><strong>mbstring and iconv:</strong> <em>You do not have either of the extensions installed.</em> This will significantly impair your ability to read non-English feeds, as well as even some English ones.</li> |
304 | <?php endif; ?> | 330 | <?php endif; ?> |
305 | 331 | ||
306 | <?php if ($tidy_ok): ?> | 332 | <?php if ($gd_ok): ?> |
307 | <li><strong>Tidy:</strong> You have <code>Tidy</code> support installed. <em>No problems here.</em></li> | 333 | <li><strong>GD:</strong> You have <code>GD</code> support installed. <em>No problems here.</em></li> |
308 | <?php else: ?> | 334 | <?php else: ?> |
309 | <li><strong>Tidy:</strong> The <code>Tidy</code> extension is not available. <?php echo $app_name; ?> should still work with most feeds, but you may experience problems with some.</li> | 335 | <li><strong>GD:</strong> The <code>GD</code> extension is not available. <?php echo $app_name; ?> will not be able to download pictures locally on your server.</li> |
310 | <?php endif; ?> | 336 | <?php endif; ?> |
311 | 337 | ||
312 | <?php if ($curl_ok): ?> | 338 | <?php if ($tidy_ok): ?> |
313 | <li><strong>cURL:</strong> You have <code>cURL</code> support installed. <em>No problems here.</em></li> | 339 | <li><strong>Tidy:</strong> You have <code>Tidy</code> support installed. <em>No problems here.</em></li> |
314 | <?php else: ?> | 340 | <?php else: ?> |
315 | <li><strong>cURL:</strong> The <code>cURL</code> extension is not available. SimplePie will use <code>fsockopen()</code> instead.</li> | 341 | <li><strong>Tidy:</strong> The <code>Tidy</code> extension is not available. <?php echo $app_name; ?> should still work with most feeds, but you may experience problems with some.</li> |
316 | <?php endif; ?> | 342 | <?php endif; ?> |
317 | 343 | ||
318 | <?php if ($parallel_ok): ?> | 344 | <?php if ($curl_ok): ?> |
319 | <li><strong>Parallel URL fetching:</strong> You have <code>HttpRequestPool</code> or <code>curl_multi</code> support installed. <em>No problems here.</em></li> | 345 | <li><strong>cURL:</strong> You have <code>cURL</code> support installed. <em>No problems here.</em></li> |
320 | <?php else: ?> | 346 | <?php else: ?> |
321 | <li><strong>Parallel URL fetching:</strong> <code>HttpRequestPool</code> or <code>curl_multi</code> support is not available. <?php echo $app_name; ?> will use <code>file_get_contents()</code> instead to fetch URLs sequentially rather than in parallel.</li> | 347 | <li><strong>cURL:</strong> The <code>cURL</code> extension is not available. SimplePie will use <code>fsockopen()</code> instead.</li> |
322 | <?php endif; ?> | 348 | <?php endif; ?> |
323 | 349 | ||
324 | <?php else: ?> | 350 | <?php if ($parallel_ok): ?> |
325 | <li><strong>Data filtering:</strong> Your PHP configuration has the filter extension disabled. <strong><?php echo $app_name; ?> will not work here.</strong></li> | 351 | <li><strong>Parallel URL fetching:</strong> You have <code>HttpRequestPool</code> or <code>curl_multi</code> support installed. <em>No problems here.</em></li> |
326 | <?php endif; ?> | 352 | <?php else: ?> |
327 | 353 | <li><strong>Parallel URL fetching:</strong> <code>HttpRequestPool</code> or <code>curl_multi</code> support is not available. <?php echo $app_name; ?> will use <code>file_get_contents()</code> instead to fetch URLs sequentially rather than in parallel.</li> | |
354 | <?php endif; ?> | ||
355 | |||
356 | <?php else: ?> | ||
357 | <li><strong>Data filtering:</strong> Your PHP configuration has the filter extension disabled. <strong><?php echo $app_name; ?> will not work here.</strong></li> | ||
358 | <?php endif; ?> | ||
359 | |||
360 | <?php else: ?> | ||
361 | <li><strong>DOM/XML:</strong> Your PHP configuration isn't standard, you're missing PHP-DOM. You may try to install a package or recompile PHP. <strong><?php echo $app_name; ?> will not work here.</strong></li> | ||
362 | <?php endif; ?> | ||
363 | |||
328 | <?php else : ?> | 364 | <?php else : ?> |
329 | <li><strong>Parse ini files function :</strong> Bad luck : your webhost has decided to block the use of the <em>parse_ini_file</em> function. <strong><?php echo $app_name; ?> will not work here.</strong> | 365 | <li><strong>Parse ini files function :</strong> Bad luck : your webhost has decided to block the use of the <em>parse_ini_file</em> function. <strong><?php echo $app_name; ?> will not work here.</strong> |
330 | <?php endif; ?> | 366 | <?php endif; ?> |