rendered paste body<?php
function gencode()
{
$chars = '2345679bcdfghjkmnnprstuwxyz';
for($i = 0; $i < 5; $i++)
{
$ch = substr($chars, mt_rand(0, 25), 1);
$code .= $ch;
}
return $code;
}
function shoutstat()
{
// SHOUTstat 1.0.1
// © 2006 farhnware
// http://farhnware.homelinux.com/software/shoutstat.php
//
// Changlog:
// 10/14/06 - Project created based on http://farhnware.homelinux.com/radio/current.php to be released to the public
// - Fixed rather large bug that kept script from working
//
// Fill in the following lines with your own information
$url="imagiradio.net"; // SHOUTcast server address
$port="8000"; // SHOUTcast server port
$station_name="Imagination"; // SHOUTcast station name
$track_color="adfcff"; // CSS color for the current song title
$artist_color="DDDDDD"; // CSS color for the current song artist
$offline_on_nothing=true; // if true it says the server is offline if no song is playing
// Now let the script work its magic!
$open = @fsockopen($url,$port);
if ($open) {
fputs($open,"GET /7.html HTTP/1.1\nUser-Agent:Mozilla\n\n");
while(!feof($open)) {
$data.=fread($open,1000);
}
// I suck at regex, so the the next two lines were grabbed from
// http://www.curtisfamily.org.uk/wp_shoutcast.zip
// thanks, Chris Curtis ;)
$data=ereg_replace("^.*<body>","",$data);
$data=ereg_replace("</body>.*","",$data);
list($listeners,$status,$peak,$max,$reported,$bitrate,$track)=explode(",",$data,7);
if($status=='0') {
if($offline_on_nothing==true) {
$out = "<center>".$station_name." is currently offline <br /> Check show times</center>";
} else {
$out = '<center>'.$station_name.' is <a href="http://www.thefeuerfrei.com/radio.m3u">online</a> ';
$out += '('.$listeners.'/'.$max.' listeners)<br />Playing nothing';
}
} else {
// thanks to Qtax_ in #regex on irc.freenode.net for this first expression
preg_match("/- (.*?)$/",$track,$matches);
$song='<strong style="color:#'.$track_color.';">'.$matches[1].'</strong>';
// I'm so proud I figured out the next one by myself :D
preg_match("/^(.*?) -/",$track,$matches);
$song.='<br /> by <strong style="color:#'.$artist_color.';">'.$matches[1].'</strong>';
$out = '<center>'.$station_name.' is <a href="http://www.thefeuerfrei.com/radio.m3u">online</a> ';
$out += '('.$listeners.'/'.$max.' listeners)<br />Playing '.$song.'<center>';
}
} else {
$out = '<span style="color: red;"><center>ERROR 01: Server Down</center></span>';
}
return $out
}
$head =
'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content=
"text/html; charset=utf-8" />
<meta name="robots" content="all" />
<meta name="generator" content="RapidWeaver" />
<meta name="generatorversion" content="3.5.1 (Build 264)" />
<title>Imagi-Nation</title>
<link rel="stylesheet" type="text/css" media="screen" href=
"rw_common/themes/magnesium/styles.css" />
<link rel="stylesheet" type="text/css" media="print" href=
"rw_common/themes/magnesium/print.css" />
<link rel="stylesheet" type="text/css" media="handheld" href=
"rw_common/themes/magnesium/handheld.css" />
<link rel="stylesheet" type="text/css" media="screen" href=
"rw_common/themes/magnesium/css/styles/electric.css" />
<link rel="stylesheet" type="text/css" media="screen" href=
"rw_common/themes/magnesium/css/width/width_default.css" />
<link rel="stylesheet" type="text/css" media="screen" href=
"rw_common/themes/magnesium/css/sidebar/sidebar_right.css" />
<script type="text/javascript" src=
"rw_common/themes/magnesium/javascript.js">
</script>
<style type="text/css">
<!--
#Layer1 {
position:absolute;
left:644px;
top:8px;
width:243px;
height:46px;
z-index:1;
}
.style4 {
font-size: 7px;
font-weight: bold;
}
.style10 {font-size: 18px}
.style11 {font-size: 12px}
.style12 {color: #FFFFFF}
#Layer2 {
position:absolute;
left:727px;
top:432px;
width:123px;
height:79px;
z-index:5;
}
-->
</style>
<link rel="alternate" type="application/rss+xml" title="Imagination RSS" href="rssfeed.xml" />
</head>
<body>
<div id="container"><!-- Start container -->
<div id="pageHeader"><!-- Start page header -->
<h1><img src="img/imagitop.png" width="385" height="52"></h1>
</div>
<!-- End page header -->
<div id="sidebarContainer"><!-- Start Sidebar wrapper -->
<div id="navcontainer"><!-- Start Navigation -->
<ul>
<li><a href="#" rel="self" name="current" id="current">Home</a></li>
<li><a href="page6/" rel="self">Latest News </a></li>
<li><a href="page1/" rel="self">Mission Statement </a></li>
<li><a href="page7/" rel="self">Tune In! </a></li>
<li><a href="page5/" rel="self">DJ Bios </a></li>
<li><a href="page2/" rel="self">Show Times </a></li>
<li><a href="page3/" rel="self">Featured Artists </a></li>
<li><a href="java/" target="_blank" rel="self">Imagi Chat</a></li>
<li><a href="page4/" rel="self">ImagiTV</a></li>
</ul>
</div>
<!-- End navigation -->
<div class="sideHeader">
<div align="center"></div>
</div>
<!-- Sidebar header -->
<div id="sidebar"><!-- Start sidebar content -->
<div align="center">
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p><a href="http://www.dreamhost.com/donate.cgi?id=6717"><img border="0"
alt="Donate towards my web hosting bill!" src="https://secure.newdream.net/donate4.gif" /></a><br />
<!-- sidebar content you enter in the page inspector -->
</p>
</div>
<!-- sidebar content such as the blog archive links --></div>
<!-- End sidebar content --></div>
<!-- End sidebar wrapper -->
<div id="contentContainer">
<!-- Start main content wrapper -->
<div id="content">
<!-- Start content -->
<!-- End breadcrumb -->
<div class="filesharing-description">
<p class="style4"><span class="filesharing-description style10"><span class="style12">Welcome to Imagination Radio!</span><br />';
foot =
'
</p>
</div>
<div class="filesharing-item">
<div class="filesharing-item-description"></div>
</div>
</div>
<!-- End content -->
</div>
<!-- End main content wrapper -->
<div class="clearer"></div>
<div id="footer"><!-- Start Footer -->
<p>(C) 2006 Imagination <a href="mailto:tragicphucup@gmail.com">Contact
Me</a></p>
</div>
<!-- End Footer --></div>
<!-- End container -->
<div id="Layer1"><!-- Macgeeks PHP -->
' . shoutstat() . '
<!-- End macgeeks PHP --></div>
</body>
</html>';
// check the timestamp, update if necessary
$link = mysql_connect('mysql.imagination.net', 'login', 'admincode')
or die("Could not connect to the database: " . mysql_error());
mysql_select_db('login')
or die("Could not select database 'tstamp': " . mysql_error());
$result = mysql_query('SELECT stamp FROM tstamp;');
$row = mysql_fetch_array($result);
$result = mysql_query("SELECT UNIX_TIMESTAMP('" . $row[0] . "');");
$row = mysql_fetch_array($result);
$timelast = $row[0];
$timenow = time();
if($timenow >= $timelast + (3600 * 72))
{
mysql_query("UPDATE tstamp SET stamp=" . $timelast + (3600 * 72) . ";");
mysql_query("UPDATE pword SET pw='" . mysql_real_escape_string(gencode()) . "';");
}
mysql_free_result($result);
mysql_close($link);
if(isset($_COOKIE['pass']))
{
$pass = $_COOKIE['pass'];
$link = mysql_connect('mysql.imagination.net', 'login', 'admincode')
or die("Could not connect to the database: " . mysql_error());
mysql_select_db('login')
or die("Could not select database 'login': " . mysql_error());
$result = mysql_query('SELECT pw FROM pword;');
$row = mysql_fetch_array($result);
$check1 = $row[0];
mysql_free_result($result);
$result = mysql_query('SELECT pw FROM master;');
$row = mysql_fetch_array($result);
$check2 = $row[0];
mysql_free_result($result);
mysql_close($link);
if($check1 == $pass || $check2 == $pass)
{
header('Location: http://imagiradio.net'); // change to the main page
break;
}
header('Location: http://imagiradio.net/login.php?do=login');
}
if(isset($_GET['do'])
{
$action = $_GET['do'];
if($action == 'setup')
{
if(isset($_POST['masterpw']))
{
$master = $_POST['masterpw'];
$link = mysql_connect('mysql.imagination.net', 'login', 'admincode')
or die("Could not connect to the database: " . mysql_error());
mysql_select_db('login')
or die("Could not select database 'login': " . mysql_error());
mysql_query('CREATE TABLE IF NOT EXISTS tstamp (stamp TIMESTAMP NOT NULL PRIMARY KEY);')
or die("Could not create table 'tstamp': " . mysql_error());
mysql_query('CREATE TABLE IF NOT EXISTS master (pw TINYTEXT NOT NULL;')
or die("Could not create table 'master': " . mysql_error());
mysql_query('CREATE TABLE IF NOT EXISTS pword (pw TINYTEXT NOT NULL;')
or die("Could not create table 'pwords': " . mysql_error());
mysql_query('INSERT INTO tstamp (date) values (NOW());')
or die("Could not insert timestamp into table 'tstamp': " . mysql_error());
mysql_query('INSERT INTO master (pw) values (' . mysql_real_escape_string($master) . ');')
or die("Could not insert master password into 'master': " . mysql_error());
mysql_close($link);
}
else
{
echo head;
?>
<form action="<?=$_SERVER['SCRIPT_NAME']?>?do=setup" method="POST">
<span class="style11">Master Password: <input type="password" id="masterpw" name="masterpw" />
<br /><input type="submit" value="Setup" /></span>
</form>
<?php
echo foot;
}
}
if($action == 'login')
{
if(isset($_POST['pass']))
{
$pass = $_POST['pass'];
$link = mysql_connect('mysql.imagination.net', 'login', 'admincode')
or die("Could not connect to the database: " . mysql_error());
mysql_select_db('login')
or die("Could not select database 'login': " . mysql_error());
$result = mysql_query('SELECT password FROM pwords;');
while($row = mysql_fetch_array($result))
{
if($row[0] == $pass)
{
setcookie('pass', $row[0], time() + (3600 * 72)); // lasts for 72 hours
break;
}
}
mysql_free_result($result);
mysql_close($link);
header('Location: ' . $_SERVER['SCRIPT_NAME']);
}
else
{
echo head;
?>
<form action="<?=$_SERVER['SCRIPT_NAME']?>?do=login" method="POST">
<span class="style11">Code: <input type="password" id="pass" name="pass" /> <span style="color:red;">Invalid code</span>
<br /><input type="submit" value="Login" /></span>
</form>
<?php
echo foot;
}
}
else
{
header('Location: ' . $_SERVER['SCRIPT_NAME']);
}
}
else
{
echo head;
?>
<form action="<?=$_SERVER['SCRIPT_NAME']?>?do=login" method="POST">
<span class="style11">Code: <input type="password" id="pass" name="pass" />
<br /><input type="submit" value="Login" /></span>
</form>
<?php
echo foot;
}
?>