View file inc/gzip.php

File size: 2.11Kb
<?php 
// Файл взят из скрипта WAP_MOTOR 16.2_beta
// Автор VANTUZ http://pizdec.ru
if ($config_gzip == "1") {
    $PREFER_DEFLATE = false; // Если поддерживает 2 вида компрессии хватит одного или нет
    $FORCE_COMPRESSION = false; // force compression even when client does not report support
    // ////////////////////////////////////
    function compress_output_gzip($output)
    {
        return gzencode($output);
    } 

    function compress_output_deflate($output)
    {
        return gzdeflate($output, 9);
    } 

    function compress_output_x_gzip($output)
    {
        return gzcompress($output, 9);
    } 

    if (isset($_SERVER['HTTP_ACCEPT_ENCODING']))
        $AE = $_SERVER['HTTP_ACCEPT_ENCODING'];
    else
        $AE = $_SERVER['HTTP_TE'];

    $support_gzip = (strpos($AE, 'gzip') !== false) || $FORCE_COMPRESSION;
    $support_deflate = (strpos($AE, 'deflate') !== false) || $FORCE_COMPRESSION;
    $support_x_gzip = (strpos($AE, 'x-gzip') !== false) || $FORCE_COMPRESSION;

    if ($support_gzip && $support_deflate) {
        $support_deflate = $PREFER_DEFLATE;
    } 

    if ($support_deflate) {
        header("Content-Encoding: deflate");
        ob_start("compress_output_deflate");
    } else {
        if ($support_gzip) {
            header("Content-Encoding: gzip");
            ob_start("compress_output_gzip");
        } else {
            if ($support_x_gzip) {
                header("Content-Encoding: x_gzip");
                ob_start("compress_output_x_gzip");
            } else {
                ob_start();
                $config_gzip = "0";
            } 
        } 
    } 
    if (!extension_loaded('zlib')) {
        $config_gzip = "0";
    } 
} 

$config_c = base64_decode('PGNlbnRlcj7QoNCw0LHQvtGC0LDQtdGCINC/0L7QtCDRg9C/0YDQsNCy0LvQtdC90LjQtdC8IDxmb250IGNvbG9yPSJyZWQiPk9wdGltYS1DTVM8L2ZvbnQ+PC9jZW50ZXI+');
function csites($string)
{
    global $config_c;
    $string = str_replace("</body>", "$config_c</body>", $string);
    return $string;
} 
ob_start(csites);

?>