fsShoutcast перестал работать при переносе на сервер

Тема в разделе "Установка и обновление расширений Joomla", создана пользователем Karyuudo, 31.12.2008.

  1. Offline

    Karyuudo Недавно здесь

    Регистрация:
    25.10.2008
    Сообщения:
    47
    Симпатии:
    0
    Пол:
    Мужской
    перенес сайт на хостинг, этот модуль перестал работать, и более того стал грузить сайт ужасно, каждая страница минуты по 2-3 грузится наверное. проверил на локал хостел, и кое что заметил:
    если отрубится от инета - модуль будет не работать и тормозить сайт, точно также как и на хостинге!
    а если врубить инет, то все ок!

    потому появилась мысль.. этот модуль пытается получить информацию о названии текущей песни, со стороннего сайта, после чего на сайте пишут название песни+картинка+кнопка слушать... но по каким-то не известным причинам, этого не происходит, и модуль не может получить ответа от радиостанции...
    мне кажется может тут как-то с правами связано? но как их настроить?
    а может другая причина?
    ниже приведу код основных файлов (там есть еще парочка но там по управлению модуля в админке) вдруг кто-то что-то в этом понимает

    mod_fsShoutcast.php
    Код (CODE):
    1. <?php
    2. // no direct access
    3. defined( '_JEXEC' ) or die( 'Restricted access' );
    4.  
    5. // Include the syndicate functions only once
    6. require_once (dirname(__FILE__).DS.'helper.php');
    7.  
    8. $data = modShoutcast::getContent( $params );
    9. $titel = modShoutcast::filterName($params,$data);
    10. $listen = modShoutcast::getListenButton( $params );
    11. $image = modShoutcast::getImageFor($data,$params);
    12. if($titel!="Offline")
    13. require( JModuleHelper::getLayoutPath( 'mod_fsShoutcast' ) );//executes the default.php in tmpl
    14. ?>



    helper.php
    Код (CODE):
    1. <?php
    2. define("JA",1);
    3. define("NEIN",2);
    4. define("NL","\r\n");
    5.  
    6.  
    7. class modShoutcast{
    8. function getListenbutton($params){
    9.  // now make listen button
    10.  switch($params->get('s_listen')){
    11.   case JA:
    12.    $link_item = "<b>Слушать</b>";  
    13.    break;
    14.   case NEIN:
    15.    return "";
    16.    break;
    17.   case 3://image
    18.    $link_item = '<img src="/modules/mod_fsShoutcast/tmpl/images/winamp.gif" border="0" alt="Слушать" />';
    19.    break;
    20.  }
    21.  
    22.  $listen = '<noindex><a href="http://kawaii-radio.net/listen.m3u" rel="nofollow">'.$link_item.'</a></noindex>';
    23.  return $listen;
    24. }
    25.  
    26. function getImageFor($data,$params){
    27.  $titel=$data[6];
    28.  $image = "";
    29.  if($params->get('s_images') == JA){
    30.   $dir = JPATH_SITE.DS.$params->get('imagepath');
    31.  
    32.   $file = $dir.$titel.".jpg";
    33.   if($data[1]==0){
    34.    $file = "/modules/mod_fsShoutcast/tmpl/images/offline.gif";
    35.    $title = "OFFLINE";
    36.   }else{  
    37.    if( file_exists($file)){    
    38.     $file = $params->get('imagepath').$titel.".jpg";
    39.    }else{
    40.     /* no image found */
    41.     $file = "/modules/mod_fsShoutcast/tmpl/images/toradora.jpg";
    42.    }
    43.   }
    44.   $image='<img src="'.$file.'" alt="'.$data[7].'" border="0" />';
    45.  }
    46.  return $image;
    47. }
    48.  function filterName($params,$data){
    49.  if($data[1]==0)
    50.   return "Offline";
    51.  $name = $data[7];
    52.  if(strlen($params->get('filter'))>0){
    53.   $filter = explode("|",$params->get('filter'));
    54.   $replace =  explode("|",$params->get('replace'));
    55.   for ($i = 0; $i < sizeof($filter); $i++) {
    56.    $name=ereg_replace($filter[$i],$replace[$i],$name);
    57.   }
    58.  }
    59.  return $name;
    60.  
    61. }
    62.  
    63. function getContent($params){
    64.  $host = $params->get('server');
    65.  $port = $params->get('port');
    66.  // connect to sc_serv
    67.  $data = array(0,0,0,0,0,0,""); //moved up, because when socket is opend but timedout, no data will be setup
    68.  $sp=@fsockopen($host,$port);
    69.  if(!$sp){
    70.  
    71.  }else{
    72.   // set_socket_blocking($sp,false);
    73.   fputs($sp,"GET /7.html HTTP/1.1\r\nUser-Agent:Mozilla\r\n\r\n");
    74.   for($i=0; $i<30; $i++) {
    75.     if(feof($sp)) break; // exit if connection broken
    76.     $sp_data.=fread($sp,31337);
    77.    
    78.   }
    79.   $sp_data=ereg_replace("^.*<body>","",$sp_data);
    80.   $sp_data=ereg_replace("</body>.*","",$sp_data);
    81.   $data = explode(",", $sp_data, 7);
    82.   $data[7]=" <b>Сейчас играет: </b>$data[6]";
    83.  }
    84.  return $data;
    85. }
    86.  
    87. }
    88. ?>



    default.php

    Код (CODE):
    1. <?php // no direct access
    2. defined( '_JEXEC' ) or die( 'Restricted access' ); ?>
    3. <div align="center">
    4. <?php echo $titel.($titel!=""?"<br />":"");?>
    5. <?php echo $image.($image!=""?"<br />":"");?>
    6. <?php echo $listen.($listen!=""?"<br />":"");?>
    7.  
    8. <br />
    9. </div>
    10. <!-- END fsShoutcast modul -->
     
  2.  

Поделиться этой страницей

Загрузка...