TP-Docs
HTML5 Icon HTML5 Icon HTML5 Icon
TP on Social Media

Recent

Welcome to TinyPortal. Please login or sign up.

Members
Stats
  • Total Posts: 196,004
  • Total Topics: 21,330
  • Online today: 455
  • Online ever: 8,223 (February 19, 2025, 04:35:35 AM)
Users Online
  • Users: 0
  • Guests: 254
  • Total: 254

PHPblock Help?

Started by tragidy, October 03, 2006, 04:17:36 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

tragidy

Hello,
I am trying to use the following code on my tinyportal and it just wont work not even when made as a php block.

However it works when it is a .php file.

<?php

// WOW Server Status
// Version 3.4
// Copyright 2006 Nick Schaffner

//////// Set your server name only

foreach ($_GET as $key => $value)
$
$key $value;

if (!
$realm


$server  "Andorhal"; // ENTER YOUR SERVER NAME HERE!


$up  'Server Up';
$down  'Server Down';
$max 'Max (Queued)';
$high 'High';
$medium 'Medium';
$low 'Low';
$error 'Server Error';

$timer 30;


if (!
$image)
$generate_image TRUE; // Set to TRUE if you would like the script
// to automatically generate an image


if (!$display)
$display  'full'; // Set to 'half' to only display server status
$folder_path   '/home/pstwosou/public_html/ejeet/wowss/'; // Path to wowss folder

$url  'http://www.worldofwarcraft.com/realmstatus/status.xml';
// World of Wacraft XML status page URL






//////// Configure what the script outputs as text
//////// Edit if you have a knowledge of PHP and HTML

function output($server,$servertype,$serverstatus,$serverpop) { return "




<u>
$server</u> $servertype: <b>$serverstatus | $serverpop</b>




"
;}

//////// PHP Magic Below, Don't Edit

$magic_array = array(min,server,servertype,serverstatus,serverpop,err);
if (
$realm$server $realm;
if (
$image == 'true'$generate_image true;
if (
$image == 'false'$generate_image false;


// Check timestamp, update when ready
if (substr($folder_path, -11) != '/'$folder_path '$folder_path/';
$timestamp $folder_path 'wowss_data.txt';
$min date(i)*1;
$info explode(","file_get_contents($timestamp));
if (
filesize($timestamp) == 0) { $pass true; }
if (
$min >= ($info[0]+$timer) or $min $info[0] or $realm or $pass) {


// Fetch and format XML data
error_reporting(0);
$xml file_get_contents($url);
if (
$xml) {

$server str_replace('\\','',str_replace("'","'",$server));
if (!strpos($xml,$server)) { 
$error "$error, check Realm name";
$err true;
}


// Determine Server Type
$servertype substr($xml,strpos($xml,$server) + (strlen($server)+5),1);
if (
is_numeric($servertype) and $servertype <= 3) { 

if ($servertype == 0$servertype 'RP PVP';
elseif ($servertype == 1$servertype 'PVE';
elseif ($servertype == 2$servertype 'PVP';
elseif ($servertype == 3$servertype 'Roleplay';

} else 
$err true;



// Determine Serverstatus
$serverstatus substr($xml,strpos($xml,$server) + (strlen($server)+11),1);
if (
is_numeric($serverstatus) and $serverstatus <= 1) { 
$serverstatus 'up';
} else 
$serverstatus 'down';



// Determine Server Pop.
$serverpop substr($xml,strpos($xml,$server) + (strlen($server)+17),1);
if (
is_numeric($serverpop) and $serverpop != and $serverpop >= and $serverpop <= 4) { 

if ($serverpop == 1$serverpop 'low';
elseif ($serverpop == 2$serverpop 'medium';
elseif ($serverpop == 3$serverpop 'high';
else $serverpop 'max';

}


// Write info to data file for storage
if (!$realm) {

foreach($magic_array as $value)
$data $data . $$value ',';

$handle fopen($timestamp,"w");
flock($handleLOCK_EX);
fwrite($handle$data);
flock($handleLOCK_UN);
fclose($handle);

}

} else { 
$error 'Realmstatus Not Available';
$err true;
}

}
// If timer isn't up yet, fetch old data and output
else { 

$i=0;
foreach ($info as $value) {
$$magic_array[$i] = $value;
$i++;
}
}


// Where to go and what to do function calls
if ($generate_image) {

imgoutput ($server,$servertype,$serverstatus,$serverpop,$err,$folder_path,$display);
} else { 
$serverstatus = $$serverstatus$serverpop = $$serverpop;
if (!$err) echo trim(output($server,$servertype,$serverstatus,$serverpop));
else echo $error;




// Begin dynamic image generation function

function imgoutput ($server,$servertype,$serverstatus,$serverpop,$err,$folder_path,$display) {

$serverfont $folder_path 'silkscreen.ttf';
$typefont $folder_path 'silkscreenb.ttf';
header("Content-type: image/png");


// Error control
if ($serverstatus == 'down'$serverpop 'offline';
if ($err){$serverstatus 'unknown'$serverpop 'error';}


// Get and combine base images, set colors
$back imagecreatefrompng($folder_path strtolower($serverstatus) . '.png');

if ($display == 'full') {

$backwidth imagesx($back);

$bottom imagecreatefrompng($folder_path strtolower($serverstatus) . '2.png');
$serverpop imagecreatefrompng($folder_path strtolower($serverpop) . '.png');
$full imagecreate($backwidth,(imagesy($back)+imagesy($bottom)));
$bg imagecolorallocate($full0255255);
$red imagecolorallocate($full,204,0,0); // HIGH Red color
imagecolortransparent($full$bg); 
imagecopy($full,$back,0,0,0,0,$backwidth,imagesy($back));
imagecopy($full,$bottom,0,imagesy($back),0,0,imagesx($bottom),imagesy($bottom));
$back $full;

$textcolor imagecolorallocate($back515151);
$shadow imagecolorclosest($back2552040);

imagecopy($back,$serverpop,round(($backwidth-imagesx($serverpop))/2),62,0,0,imagesx($serverpop),imagesy($serverpop));


// Ouput centered $server name

$maxw 62;
$box imagettfbbox(6,0,$serverfont,$server);
$w abs($box[0]) + abs($box[2]);

if ($w $maxw) {

$i $w;
$t strlen($server);

while ($i $maxw) {
$t--;
$box imagettfbbox (60,$serverfont,substr($server,0,$t));
   $i abs($box[0]) + abs($box[2]);
}

$t strrpos(substr($server0$t), " ");

$output[0] = substr($server0$t);
$output[1] = ltrim(substr($server$t));
$vadj = -6;

} else $output[0] = $server;

$i 0;
foreach($output as $value) {

$box imagettfbbox(6,0,$serverfont,$value);
$w abs($box[0]) + abs($box[2]);

imagettftext($back60round(($backwidth-$w)/2)+158+($i*8)+$vadj$shadow$serverfont$value);
imagettftext($back60round(($backwidth-$w)/2), 57+($i*8)+$vadj, -$textcolor$serverfont$value);
$i++;

}


// Ouput centered $servertype
if ($servertype and !$err) {
$box imagettfbbox(6,0,$typefont,$servertype);
$w abs($box[0]) + abs($box[2]);
imagettftext($back60round(($backwidth-$w)/2)+185$shadow$typefont$servertype);
imagettftext($back60round(($backwidth-$w)/2), 84, -$textcolor$typefont$servertype);
}
}

imagepng($back);
imagedestroy($back);
}

?>


Anyone have any idea on what should be done to get this to work as a block in tinyportal?

Thank you all in advance

akulion

take out the

<?php

and

?>

that all

This website is proudly hosted on Crocweb Cloud Website Hosting.