Вход Регистрация
Файл: controllers/notifiersbar.php
Строк: 86
<?php

include("database.php");

function 
check_notifiers()
{
    
$xml="http://santivi.com/category/uvedomleniya-v-santi/feed";

    
$xmlDoc = new DOMDocument();
    
$xmlDoc->load($xml);

    
$x=$xmlDoc->getElementsByTagName('item');

    if( 
$x->length > 20 )
      
$num = 20;
    else
      
$num = $x->length;

    for (
$i=0; $i<$num; $i++)
    {
        
$item_title=htmlspecialchars(strip_tags($x->item($i)->getElementsByTagName('title')->item(0)->childNodes->item(0)->nodeValue));
        
$item_link=htmlspecialchars(strip_tags($x->item($i)->getElementsByTagName('link')->item(0)->childNodes->item(0)->nodeValue));
        
$item_desc=htmlspecialchars(strip_tags($x->item($i)->getElementsByTagName('description')->item(0)->childNodes->item(0)->nodeValue));
        
$item_date=htmlspecialchars(strip_tags($x->item($i)->getElementsByTagName('pubDate')->item(0)->childNodes->item(0)->nodeValue));

        
notifiers_add($item_link, $item_title, Rfc2822ToTimestamp($item_date), 0);
    }

$ver_data = "";

$url = "http://santivi.com/version.txt";
$parse_url = parse_url($url);
$path = $parse_url["path"];
$host = $parse_url["host"];

$result = tcp_send("santivi.com", array(
                            
"POST ".$path." HTTP/1.1rn",
                            
"Host: santivi.comrn",
                            
"User-Agent: Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.2 Safari/537.36rn", 
                            
"Content-Type: application/x-www-form-urlencodedrn",
                            
"Content-Length: ".strlen($ver_data)."rn",
                            
"Connection: closernrn",
                            
$ver_data."nn",
                        )
    );

$length = strrpos($result, "~") - strpos($result, "~");
$result = substr($result, strpos($result, "~")+1, $length-1);

if(
SANTI_VERSION < $result)
    
notifiers_add("http://santivi.com/skachat", "Скачайте обновленный САНТИ.", "Ваша версия устарела.", 0);
}

function 
Rfc2822ToTimestamp($date){
    
$aMonth = array(
             
"Jan"=>"1", "Feb"=>"2", "Mar"=>"3", "Apr"=>"4", "May"=>"5",
             
"Jun"=>"6", "Jul"=>"7", "Aug"=>"8", "Sep"=>"9", "Oct"=>"10",
             
"Nov"=>"11", "Dec"=>"12",
             
"янв"=>"1", "фев"=>"2", "мар"=>"3", "апр"=>"4", "май"=>"5",
             
"июн"=>"6", "июл"=>"7", "авг"=>"8", "сен"=>"9", "окт"=>"10",
             
"ноя"=>"11", "дек"=>"12",
             );
    
//26 Jul 2013 10:51:00 +0400
    
if (strlen($date) <= 27){$date="Fri, ".$date;}
        
    list( , 
$day, $month, $year, $time) = explode(" ", $date);
    list(
$hour, $min, $sec) = explode(":", $time);
    
$month = $aMonth[$month];
    return 
$year."-".$month."-".$day." ".$hour.":".$min.":".$sec;
}

function 
tcp_send($board, $data)
{
        
$answer = "";

        
// Get IP
        
$ip = gethostbyname($board);
        
// Open socket
        
$fp = fsockopen($ip, 80);

        if ( 
$fp )
        {
            
// Set HTTP header
            
foreach( $data as $row )
            {
                
fputs($fp, $row);
            }

            
// Get an answer
            
while( !feof($fp) )
            {
                
$answer .= fread($fp, 512);
            }

            
fclose($fp);
        }

        return 
$answer;
} 

?>
Онлайн: 0
Реклама