1
Sangdrax
Re: Shoutbox font question
  • 2005/6/25 5:17

  • Sangdrax

  • Just popping in

  • Posts: 6

  • Since: 2005/6/22


/bumpage

Please XOOPS Guru's......I need yer help



2
Sangdrax
Shoutbox font question
  • 2005/6/25 0:39

  • Sangdrax

  • Just popping in

  • Posts: 6

  • Since: 2005/6/22


This is driving me nuts I need to make the dialog in Shoutbox smaller. Anyone have any tips on how to do this?

I think I've worn out the search function here



3
Sangdrax
Need help figuring out what module to use....if any?
  • 2005/6/24 4:15

  • Sangdrax

  • Just popping in

  • Posts: 6

  • Since: 2005/6/22


Hi folks,

I've done a bit of looking and can't seem to figure out how to get something done on my site. It's a gaming guild site.

I figured out (with the help of m0nty) how to make a php script appear in a block.

I have multiple scripts that I'd like to show in the center of my site.

What I'd like to be able to do is select a link from the main menu....aka "guidsomething or other". There I'd like to be able select what script to display in the center of my site.

I hope I'm being clear. Basically...I have scripts to describe all kinds of stats for my guild. I need to have a way to access these scripts from the main menu.

Thanks in advance for any help




4
Sangdrax
Re: Newb Question on displaying php script in a block
  • 2005/6/22 20:17

  • Sangdrax

  • Just popping in

  • Posts: 6

  • Since: 2005/6/22


Yer my hero for today m0nty :)

I tried that earlier today but had no luck. I must have typed the wrong syntax.

Works like a charm now :)

Thanks again



5
Sangdrax
Re: Newb Question on displaying php script in a block
  • 2005/6/22 20:08

  • Sangdrax

  • Just popping in

  • Posts: 6

  • Since: 2005/6/22


Actually, I have been searching here all morning. I've tried getting rid of the start and end tags and no luck



6
Sangdrax
Newb Question on displaying php script in a block
  • 2005/6/22 19:15

  • Sangdrax

  • Just popping in

  • Posts: 6

  • Since: 2005/6/22


Hi folks,

I'm trying to get a script to display in a center block on one of my pages. I'm having no luck. I've been able to make a new block and do a preview and I can see the script displaying just fine but, when I goto my actual site, I come up with a blank page.

Here is a sample script that I want to display on my site:

/*
* guildxml.php
* a Dark Age of Camelot Guild XML data parser that returns a guild roster
* sortable with some parameters like name, Realm Points, Level, etc...
* for use on Dark Age of Camelot community websites.
*
* Dark Age of Camelot (or DAoC) is a MMORPG
* (massively multiplayer online rolepaying game)
* developed by Mythic Entertainment (http://www.mythicentertainment.com)
*
* Author: Julien COQUET
* a.k.a Glenfiddich Singlemalt on DAoC Merlin/Albion
* e-mail glenfiddich@purpledragons.net
*http://www.purpledragons.net/xml/
*
* Adapted from generic PHP code fromhttp://www.php.net
*
* Developed in September of 2002 under the GNU GPL License.
* For more information, visithttp://www.gnu.org/licenses/gpl.html
*
* Enjoy and please link to our site
*http://www.purpledragons.net
*
* Changelog:
* September 9, 2003 : added support for realm title selection according to realm in XML
* March 28, 2003 : added UTF8 support for GOA XML - Euro servers only
* Feb. 25, 2003 : finally added $param as $_GET['param']
*/


class guildXML {

/*
* This class takes a Dark Age of Camelot Herald XML guild data file and parses it
*/

var $xml_parser;
var $xml_file;
var $html;
var $open_tag ;
var $close_tag ;
var $in_char;
var $in_alliance;
var $chars_array;
var $alliance_array;
var $current_tag ='';

/*
* Class Constructor
*/

function guildXML() {
$this->xml_parser = "";
$this->xml_file = "";
$this->html = "";
}

//Class Destructor (has to be invoked manually as PHP does not support destructors)
function destroy() {
xml_parser_free($this->xml_parser);
}

//Class Members
function concat($str) {
$this->html .= $str;
}

function startElement($parser, $name, $attrs) {
global $totalchars, $num_activechars,$num_inactivechars, $insideElement, $in_char, $current_tag, $i;

if (($in_char==1)||($in_alliance==1)){
$current_tag = $name;
}
if ($name=='GUILD'){
$current_tag= $name;
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
if ($k=='GUILDRP'){$this->guildrp=$v;};
if ($k=='TIMESTAMP'){$this->timestamp=$v;};
if ($k=='REALM'){$this->realm=$v;};
}
}
}

if ($name=='CHARACTER'){
$in_alliance = 1;
}
if ($name=='CHARACTER'){
$in_char=1;
$totalchars++;
if (sizeof($attrs)) {
while (list($k, $v) = each($attrs)) {
if ($k=='NAME'){
$this->chars_array[$i]['name']=trim($v);
$this->chars_array[$i]['firstname']= trim (substr($this->chars_array[$i]['name'],0, strpos($this->chars_array[$i]['name'],' ')));
$this->chars_array[$i]['lastname']= trim (substr($this->chars_array[$i]['name'], strpos($this->chars_array[$i]['name'],' ')));
// Italian servers with Base64 encoding for last name, comment the above line and uncomment the following line
//$this->chars_array[$i]['lastname']= base64_decode(trim (substr($this->chars_array[$i]['name'], strpos($this->chars_array[$i]['name'],' '))));

if (!$this->chars_array[$i]['firstname'] && $this->chars_array[$i]['lastname']){
$this->chars_array[$i]['firstname'] = $this->chars_array[$i]['lastname'];
$this->chars_array[$i]['lastname']='';
}
}

if ($k=='LASTON') {
$this->chars_array[$i]['laston']=$v;
if ($v!='Inactive') {
$num_activechars++;
} elseif($v=='Inactive'){
$num_inactivechars++;
}
}
}
}
}

}

function endElement($parser, $name) {
global $close_tag, $current_tag, $in_char, $i;

if ($name=='CHARACTER'){$i++; $in_char=0;}
if ($name=='ALLIANCE'){$i++; $in_alliance=0;}
}

function characterData($parser, $data) {
global $guildrp, $inactiverp, $current_tag, $in_char, $i;
//$content_output .= '<br>'.$current_tag.' = '.$data.'<br>';
if (($in_char==1) && ($current_tag=='RACE')){
$this->chars_array[$i]['race'].=$data;
}
if (($in_char==1) && ($current_tag=='CLASS')){
$this->chars_array[$i]['class'].=$data;
}
if (($in_char==1) && ($current_tag=='LEVEL')){
$this->chars_array[$i]['level'].=$data;
}
if (($in_char==1) && ($current_tag=='TOTALRP')){
$this->chars_array[$i]['rp'].=$data;
if ($this->chars_array[$i]['laston']=='Inactive'){
$inactiverp += $data;
} else {
$guildrp += $data;
}

}
if (($in_char==1) && ($current_tag=='GUILDRANK')){
$this->chars_array[$i]['guildrank'].=$data;
}
//$this->html .= $data;
}

function parse() {

$this->xml_parser = xml_parser_create();
xml_set_object($this->xml_parser, $this);
// use case-folding so we are sure to find the tag in $map_array
xml_parser_set_option($this->xml_parser, XML_OPTION_CASE_FOLDING, true);

xml_set_element_handler($this->xml_parser, "startElement", "endElement");
xml_set_character_data_handler($this->xml_parser, "characterData");
//xml_set_processing_instruction_handler($this->xml_parser, "PIHandler");

if (!($fp = fopen($this->xml_file, "r"))) {
die("could not open XML input");
}
while ($data = fread($fp, 4096)) {
if (!xml_parse($this->xml_parser, $data, feof($fp))) {
die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($this->xml_parser)),
xml_get_current_line_number($this->xml_parser)));
}
}
}
}
// End of class

// Support functions

/*
* The function sortItems() is used for sorting, called upon by uksort()
* It uses querystring parameter $param as the sorting parameter
* querystring parameter $dir indicates ascending or descending order
*/

function sortItems($a, $b) {
global $gu, $dir, $param;

$val_a = ($gu[$a][$param]);
$val_b = ($gu[$b][$param]);

if (!$param){$param='level';}
if (!$dir){$dir='down';}
switch ($param){
case 'rp':
$val_a = $val_a - 0;
$val_b = $val_b - 0;
break;

case 'level':
$val_a = $val_a - 0;
$val_b = $val_b - 0;
break;
}

if ($dir=='up'){
if ( $val_a > $val_b ){return 1;}
if ( $val_a < $val_b ){return -1;}
if ( $val_a = $val_b ){return 0;}
} else {
if ( $val_a < $val_b ){return 1;}
if ( $val_a > $val_b ){return -1;}
if ( $val_a = $val_b ){return 0;}
}
}

/*
* returns array with Guild Rank information
*/

function guildrank($rank){
switch ($rank){
case 0: $rankname = array('Guildmaster', 'Description for Guildmaster');
break;

case 1: $rankname = array('Rank 1 Title', 'Description for Guild Rank 1');
break;

case 2: $rankname = array('Rank 2 Title', 'Description for Guild Rank 2');
break;

case 3: $rankname = array('Rank 3 Title', 'Description for Guild Rank 3');
break;

case 4: $rankname = array('Rank 4 Title', 'Description for Guild Rank 4');
break;

case 5: $rankname = array('Rank 5 Title', 'Description for Guild Rank 5');
break;

case 6: $rankname = array('Rank 6 Title', 'Description for Guild Rank 6');
break;

case 7: $rankname = array('Rank 7 Title', 'Description for Guild Rank 7');
break;

case 8: $rankname = array('Rank 8 Title', 'Description for Guild Rank 8');
break;

case 9: $rankname = array('Rank 9 Title', 'Description for Guild Rank 9');
break;
}
return $rankname;
}

/*
* returns Realm Rank/Level
*/

function realmlevel ($rp){
$rap =1;
for ($i=1; $i<11; $i++){
if ($i!=1){
for ($j=0;$j<10;$j++){
$rp_needed = ((25/3)*(pow($rap,3))) - ((25/2)*(pow($rap,2))) + ((25/6)*$rap);

if ($rp_needed <10) {
$rp_needed =0;
}
if ($rp>=$rp_needed) {
$level = 'R'.$i.'L'.$j;
}
$rap++;
}
} else {
for ($j=1;$j<10;$j++){
$rp_needed = ((25/3)*(pow($rap,3))) - ((25/2)*(pow($rap,2))) + ((25/6)*$rap);

if ($rp_needed <10) {
$rp_needed =0;
}
if ($rp>=$rp_needed) {
$level = 'R'.$i.'L'.$j;
}
$rap++;
}

}
}
return $level;
}

/*
* returns Realm Title
*/


function realmtitle($rp){
/*
* You start at Rank 1. To rise to Rank 2, you need 7125 realm points.
* Rank 3 = 61750, Rank 4 = 213875, Rank 5 = 513500, Rank 6 = 1010625, Rank 7 = 1755250, Rank 8 = 2797375, Rank 9 = 4187000
* and finally Rank 10 = 5974125
*
* These ranks are for the Albion Realm. You need to add correct values for Hibernia or Midgard.
* The list of ranks per realm can be found athttp://www.purpledragons.net/camelot/rp_chart.php
*/
global $realm_id;

if ($rp >=0)
$rank= array ('Guardian','Savant','Skilvakten');

if ($rp > 7125)
$rank = array ('Warder','Cosantoir','Isen Vakten');

if ($rp > 61750)
$rank = array ('Myrmidon','Brehon','Flamen Vakten');

if ($rp > 213875)
$rank = array ('Gryphon Knight','Grove Protector','Elding Vakten');

if ($rp > 513500)
$rank = array ('Eagle Knight','Raven Ardent','Stormur Vakten');

if ($rp > 1010625)
$rank = array ('Phoenix Knight','Silver Hand','Isen Herra');

if ($rp > 1755250)
$rank = array ('Alerion Knight','Thunderer','Flammen Herra');

if ($rp > 2797375)
$rank = array ('Unicorn Knight','Gilded Spear','Elding Herra');

if ($rp > 4187000)
$rank = array ('Lion Knight','Tiarna','Stormur Herra');

if ($rp > 5974125)
$rank = array ('Dragon Knight','Emerald Rider','Einherjar');

return $rank[$realm_id];
}

// Main content

$guild = new guildXML(); //instantiate class
$guild->xml_file = "http://www.camelotherald.com/guilds/Merlin/804.xml";
// the xml_file property referes to you guild XML data file.
// Example given is the Merlin/Albion guild Dragon's Blood

$guild->parse();


// Copy some variables
$gu = $guild->chars_array;
$guildrp = $guild->guildrp;
$guildtimestamp = $guild->timestamp;
$realm = $guild->realm;

switch($realm){
case 'Albion': $realm_id=0; break;
case 'Hibernia': $realm_id=1; break;
case 'Midgard': $realm_id=2; break;
default: $realm_id=0;
} // switch

$xml_file = $guild->xml_file;

$guild->destroy(); // destroy the object

$param = $_GET['param']; // retrieve sort parameter from URL querystring

uksort($gu, "sortItems"); // call upon sortItems() to sort the guild information array
reset($gu);

/*
*
* Bases stats on active vs. inactive characters and indicates differentials
*
*/


if ($_GET['active']=='no'){
$content_output.= 'Statistics for <b>'.$num_inactivechars.'</b> inactive characters out of <b>'. $totalchars .'</b> [<a href=" '.$PHP_SELF. '">see active</a>]<br>';

} else {
$content_output.='Statistics for <b>'.$num_activechars.'</b> active characters out of <b>'.$totalchars.'</b> [<a href="'.$PHP_SELF.'?active=no">see inactive</a>]<br>';
}

/*
* Creates the output table
*/

$content_output .= 'Total Realm Points: <b>'. $guildrp .'</b>';
$content_output .= '<br><span style="font-size:9pt;">Data last updated: <b>'.$guildtimestamp.'</b>&nbsp;::&nbsp;<a href="'.$xml_file.'" target="xml">View raw XML data</a></span><hr noshade="true">
<table cellspacing="0" cellpadding="0" style="border: solid 1px #3F5471;">
<tr>
<td>
<table width="100%" cellspacing="0" cellpadding="2">
<tr bgcolor="#E5E5E5">
<form action="'. $PHP_SELF .'" method="get">
<td>
<SELECT name="param">
<option value="name">Name</option>
<option value="level">Level</option>
<option value="class">Class</option>
<option value="race">Race</option>
<option value="rp">RP</option>
<option value="guildrank">Guild Rank</option>
</select>
<SELECT name="dir">
<option value="up">Ascending</option>
<option value="down">Descending</option>
</select>
<input type="submit" value="search"><input type="hidden" name="active" value="'.$_GET['active'].'">
</td>
</form>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table cellspacing="0" cellpadding="5">
<tr style="font-weight: bold;" bgcolor="#CCCCCC">
<td>#</td>
<td>Name</td>
<td>Level</td>
<td>Class</td>
<td>Race</td>
<td>RPs</td>
<td>Rank</td>
<td>level</td>
<td>Guild</td>
</tr>
';

$i=1;

foreach ($gu as $key=>$value){

if ($_GET['active']!='no'){
if ($value['laston']!='Inactive') {
if ($i%2==0){$color='#CCCCCC';}else{$color='#DDDDFF';}
$content_output .= '
<tr bgcolor="'.$color.'" style="font-size:9pt;">
<td>#'.$i.'</td>
<td><b>'.$value['firstname'].' '.$value['lastname'].'</b></td>
<td>'.$value['level'].'</td>
<td>'.$value['class'].'</td>
<td>'.$value['race'].'</td>
<td align="right">';
if ($value['level']>=20){
$content_output .= number_format($value['rp']);
} else {
$content_output .= '&nbsp;';
}
$content_output .= '
</td>
<td>';
if ($value['level']>=20){
$content_output .= realmtitle($value['rp']);
} else {
$content_output .= '&nbsp;';
}
$content_output .= '
</td>
<td>';
if ($value['level']>=20){
$content_output .= realmlevel($value['rp']);
} else {
$content_output .= '&nbsp;';
}
$content_output .= '
</td>';
$guildrank = guildrank($value['guildrank']);
$content_output .= '
<td>'.$guildrank[0].'</td>
</tr>';
$i++;
}
} else {
if ($value['laston']=='Inactive') {
if ($i%2==0){$color='#CCCCCC';}else{$color='#DDDDFF';}
$content_output .= '
<tr bgcolor="'.$color.'" style="font-size:9pt;">
<td>#'.$i.'</td>
<td><b>'.$value['firstname'].' '.$value['lastname'].'</b></td>
<td>'.$value['level'].'</td>
<td>'.$value['class'].'</td>
<td>'.$value['race'].'</td>
<td align="right">';
if ($value['level']>=20){
$content_output .= number_format($value['rp']);
} else {
$content_output .= '&nbsp;';
}
$content_output .= '
</td>
<td>';
if ($value['level']>=20){
$content_output .= realmtitle($value['rp']);
} else {
$content_output .= '&nbsp;';
}
$content_output .= '
</td>
<td>';
if ($value['level']>=20){
$content_output .= realmlevel($value['rp']);
} else {
$content_output .= '&nbsp;';
}
$content_output .= '
</td>';
$guildrank = guildrank($value['guildrank']);
$content_output .= '
<td>'.$guildrank[0].'</td>
</tr>';
$i++;
}

}

}
$content_output .= '
</table>
</td>
</tr>
</table>';

/*
For Euro guilds: uncomment the following instructions
*/

// $content_output = utf8_decode($content_output); // handles UTF8 character encoding

/*
* Outputs table; end of script
*/

print $content_output;






It's to display character from a guild in the mmorpg Dark Age of Camelot.

I'm not sure if I'm going about the right way to display this data.

Any help would be most appreciated




TopTop



Login

Who's Online

158 user(s) are online (124 user(s) are browsing Support Forums)


Members: 0


Guests: 158


more...

Donat-O-Meter

Stats
Goal: $100.00
Due Date: Apr 30
Gross Amount: $0.00
Net Balance: $0.00
Left to go: $100.00
Make donations with PayPal!

Latest GitHub Commits