Erweiterte Shoutcastanzeige

Forum rules
This forum is not for support requests.

Only post Modifications for Board3 Portal 1.0.x in this forum.

Topic author
fishtown
Active Member
Active Member
Posts: 8
Joined: 3. May 2010 19:05
phpBB.de User: fishtown
phpBB.com User: fishtown

Erweiterte Shoutcastanzeige

Post by fishtown » 1. April 2011 13:25

Hi,
ich habe nach vielem hin und her eine Shoutcastanzeige als Block erstellt, die neben dem Titel und dem Status auch ein Bild des Moderators anzeigt.
Es funktionert nur, wenn auch die Galerie von nickvergessen installiert ist.

Ach ja, das ist meine erste Arbeit in diesem Bereich. Es war mir nur wichtig, das es läuft und das ich nicht mehr php im Template freischalten muss. Es gibt noch kein Languagefile und noch muss jeder Moderator per Hand in einem File eingetragen werden.
Besser wäre es, wenn diese Eingabe über den Adminbereich geschehen würde. Aber damit habe ich noch weniger Ahnung. Wäre da also für Hilfe dankbar.

Version 0.2 beta:
Moderatoren werden nun in einer Textdatei eingetragen.
Bei einigen Styles zerreist es das Layout (z.B. frozen_phonix) Bei anderen keine Probleme (z.B. IDLaunch_Fresh). In Arbeit

Screenshot:
Image

Habe mal alles in einem zip-File zurechtgepackt.
scradio.zip

Grüße
Fishtown
Last edited by fishtown on 4. April 2011 17:36, edited 5 times in total.


Topic author
fishtown
Active Member
Active Member
Posts: 8
Joined: 3. May 2010 19:05
phpBB.de User: fishtown
phpBB.com User: fishtown

Re: Erweiterte Shoutcastanzeige

Post by fishtown » 3. April 2011 09:37

So, nun brauch ich wirklich mal Hilfe.
Ich würde gern im ACP des Portals einen Bereich machen, in dem ich die Moderatoren eintragen kann. Gut wäre auch, wenn ich darüber die Bilder hochladen könnte. Habe da schno einiges versucht, aber nix klappt.
Kann mir da mal jemand bei helfen?

Folgende Daten müsste ich dort eingeben können:
1. Namen des Modis, den er mit dem Stream überträgt
2. Bild, das dabei angezeigt werden soll (entweder Bildernummer aus der Galerie, oder Bild per Upload)
3. Serverdaten des Shoutcastservers. Gut wäre hier, wenn man mehr als einen Server angeben kann.

Bin Dankbar für Hilfe.

Fishtown


Topic author
fishtown
Active Member
Active Member
Posts: 8
Joined: 3. May 2010 19:05
phpBB.de User: fishtown
phpBB.com User: fishtown

Re: Erweiterte Shoutcastanzeige

Post by fishtown » 4. April 2011 17:58

Zu dem Fehler bei einigen Styles:

Sobald ich die scradio.php per include in die additional_blocks.php einfüge, tritt der Fehler bei dem IExplorer auf, dass es das Design zerreist. Selbst wenn ich die scradio.html noch nicht mit eingebunden habe.

Wo ist hier der Fehler? Wer findet ihn?

Code: Select all

<?php

if (!defined('IN_PHPBB') || !defined('IN_PORTAL'))
{
   exit;
}

## shoutcasthack by bikky on ##
## Erweitert by Fishtown ##
include($phpbb_root_path . 'portal/block/scradio/scradio_conf.' . $phpEx);


## Hier nichts aendern ##
$fp = @fsockopen($server, $port, $errno, $errstr, 30);
$fp1 = @fsockopen($server, $port1, $errno, $errstr, 30);

## Abfrage ob Videostream Online ist ##
if ($fp) {
fputs($fp, "GET /7.html HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
while(!feof($fp))
$page .= fgets($fp, 1000);
fclose($fp);
$page = ereg_replace(".*<body>", "", $page);
$page = ereg_replace("</body>.*", ",", $page);
$numbers = explode(",", $page);
$shoutcast_currentlisteners = $numbers[0]; //variable ueber die aktuelle anzahl der zuhoerer
$connected = $numbers[1]; //variable zum anzeigen ob ein sender verbunden sind
if($connected == 1) {
$radio_status = 1; //variable zum anzeigen ob radio an ist oder nicht
$wordconnected = "yes"; //zusaetzliche variable die ich brauchte
}
else
$wordconnected = "no"; //zusaetzliche variable die ich brauchte
$shoutcast_peaklisteners = $numbers[2]; //variable die die anzahl der peaks angiebt
$shoutcast_maxlisteners = $numbers[3]; //variable ueber die maximal moegliche anzahl der zuhoerer
$shoutcast_reportedlisteners = $numbers[4]; //
$shoutcast_bitrate = $numbers[5]; //bitrate
$shoutcast_cursong = $numbers[6]; //aktueller song
$shoutcast_curbwidth = $shoutcast_bitrate * $shoutcast_currentlisteners; //gesamtbandbreite
$shoutcast_peakbwidth = $shoutcast_bitrate * $shoutcast_peaklisteners; //gesamtpeakbandbreite
}
## Abfrage ob Audiostream Online ist ##
if ($fp1) {
fputs($fp1, "GET /7.html HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
while(!feof($fp1))
$page .= fgets($fp1, 1000);
fclose($fp1);
$page = ereg_replace(".*<body>", "", $page);
$page = ereg_replace("</body>.*", ",", $page);
$numbers = explode(",", $page);
$shoutcast_currentlisteners1 = $numbers[0]; //variable ueber die aktuelle anzahl der zuhoerer
$connected = $numbers[1]; //variable zum anzeigen ob ein sender verbunden sind
if($connected == 1) {
$radio_status1 = 1; //variable zum anzeigen ob radio an ist oder nicht
$wordconnected1 = "yes"; //zusaetzliche variable die ich brauchte
$shoutcast_peaklisteners1 = $numbers[2]; //variable die die anzahl der peaks angiebt
$shoutcast_maxlisteners1 = $numbers[3]; //variable ueber die maximal moegliche anzahl der zuhoerer
}
else
$wordconnected1 = "no"; //zusaetzliche variable die ich brauchte
}

if ($radio_status == 1) {
	$rs1status = '<b><a href="http://'. $server .':'. $port .'/listen.pls" target="_blank"><img src="'. $baseurl .'/images/scradio/video.gif" align="middle"><font color="green">   Online</font> </img></a></b>';
	$rs1statuspic = '<img src='. $baseurl .'/images/scradio/onlinepic.gif></img>';
	$rs1song = $shoutcast_cursong;
	$rs1listener = 'Zuhörer:' . $shoutcast_currentlisteners . "/" . $shoutcast_maxlisteners;
	$rs1add = $adonline;
	
$variable = file("moderator.txt");  
$suche = array();
foreach ($variable as $zeile) 
		{ 
$term = explode("|", $zeile);
array_push ($suche, $term[0],$term[1],$term[2]); 
if(strpos($shoutcast_cursong, $term[0])!==false) $modipic = '<img src='. $baseurl .'/gallery/image.php?album_id='. $album .'&image_id='. $term[1] .'></img>';
		} 
}

## Generierung der Ausgabe ##
else {
$rs1status = '<b><font color="red">Offline</font></b>';
$rs1song = 'Zur Zeit leider keine Sendung.';
$rs1listener = '';
$rs1statuspic = '<img src='. $baseurl .'/images/scradio/offlinepic.gif></img>';
$modipic = '';
$rs1add = $adoffline;
}

if ($radio_status1 == 1) {
$rs2status = '<b><a href="http://'. $server .':'. $port1 .'/listen.pls" target="_blank"><img src="'. $baseurl .'/images/scradio/video.gif" align="middle"><font color="green">  Online</font> </img></a></b>';
$rs2statuspic = '<img src='. $baseurl .'/images/scradio/onlinepic.gif></img>';
$rs2song = $shoutcast_cursong;
$rs2listener = 'Zuhörer:' . $shoutcast_currentlisteners1 . '/' . $shoutcast_maxlisteners1;
}
else {
$rs2status = '<b><font color="red">Offline</font></b>';
$rs2song = '';
$rs2listener = '';
$rs2statuspic = '<img src='. $baseurl .'/images/scradio/offlinepic.gif></img>';
}
$video = '<font color="black"><b>Videostream</font>';
$audio = '<font color="black"><b>Audiostream</font>';

// Assign index specific vars
$template->assign_vars(array(
	'RS1ADD'					=> $rs1add,
	'RS1STATUS'					=> $rs1status,
	'RS1SONG'					=> $rs1song,
	'RS1LISTENER'				=> $rs1listener,
	'RS1STATUSPIC'				=> $rs1statuspic,
	'MODIPIC'					=> $modipic,
	'RS2STATUS'					=> $rs2status,
	'RS2SONG'					=> $rs2song,
	'RS2LISTENER'				=> $rs2listener,
	'RS2STATUSPIC'				=> $rs2statuspic,
	'VIDEO'						=> $video,
	'AUDIO'						=> $audio,
	    ));

?>

Return to “board3 Portal v1.0.x - Modifications in Dev”