PHP Code:
<?php
// **********************************************************************
// Rusnak PHP Adoptables Script
// Copyright 2009 Brandon Rusnak
// For help and support: http://www.rusnakweb.com/forum/
//
// Redistribution prohibited without written permission
// **********************************************************************
// Wake the sleeping giant
// **********************************************************************
// Basic Configuration Info
// **********************************************************************
include("inc/functions.php");
include("inc/config.php");
include("lang/lang.php");
$themeurl = grabanysetting("themeurl");
// **********************************************************************
// Define our top links by calling getlinks()
// **********************************************************************
$links = getlinks();
// **********************************************************************
// Define our ads by calling getads()
// **********************************************************************
$ads = getads("any");
// **********************************************************************
// Grab any dynamic article content from the content table
// **********************************************************************
$pagecontent = getsitecontent("index");
$article_title = $pagecontent[title];
$article_content = $pagecontent[content];
$article_content = nl2br($article_content);
// **********************************************************************
// Grab any settings that we will need for the current page from the DB
// **********************************************************************
$browsertitle = grabanysetting("browsertitle");
$sitename = grabanysetting("sitename");
$slogan = grabanysetting("slogan");
// **********************************************************************
// Check and see if the user is logged in to the site
// **********************************************************************
$loginstatus = logincheck();
$isloggedin = $loginstatus[loginstatus];
$loggedinname = $loginstatus[username];
// **********************************************************************
// End Prepwork - Output the page to the user
// This file lets a user manage their adoptables...
// **********************************************************************
$id = $_GET["id"];
$id = preg_replace("/[^a-zA-Z0-9s]/", "", $id);
$id = secure($id);
$act = $_GET["act"];
$act = preg_replace("/[^a-zA-Z0-9\\040.]/", "", $act);
$act = secure($act);
$more = $_GET["more"];
$more = preg_replace("/[^a-zA-Z0-9\\040.]/", "", $more);
$more = secure($more);
if($isloggedin == "yes"){
if($act == ""){
// No action specified, we just show all the adoptables with a manage link
$article_title = $loggedinname."'s Adoptables";
$article_content = $lang_adoptmanagement."<br>";
// We need to get all of the user's adoptables from the database and display them...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < $num) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
// Our code to determine if we show the table or not...
$article_content = $article_content."<table width='440' border='1'><tr>";
// Output the table information...
// Get the current adoptable's image
$image = getcurrentimage($aid);
$article_content = $article_content."<td><div align='center'><p>".$name."</p><p><a href='myadopts.php?act=manage&id=".$aid."'><img src='".$image."' border=0></a></p><p>
<b><a href='myadopts.php?act=manage&id=".$aid."'>Manage</a></b></p></div></td>";
$article_content = $article_content."</tr></table><br>";
$i++;
}
}
else if($act == "manage"){
// We are managing a specific adoptable
if($id == "" or !is_numeric($id)){
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
else{
// See if the adoptable actually exists...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < 1) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$i++;
}
// Check that the adoptable exists for real, or show an error...
if($aid == $id){
// The adoptable does exist, so we show the image and junk to the user...
$image = getcurrentimage($id);
$article_title = "Managing ".$name;
$article_content = "<img src='".$image."'><br><br>This page allows you to manage ".$name.". Click on an option below to change settings.<br><br>
<b><a href='levelup.php?id=".$id."'><img src='templates/icons/add.gif' border=0> Level Up ".$name."</a><br>
<a href='myadopts.php?act=stats&id=".$id."'><img src='templates/icons/stats.gif' border=0> Get Stats for ".$name."</a><br>
<a href='myadopts.php?act=bbcode&id=".$id."'><img src='templates/icons/bbcodes.gif' border=0> Get BBCodes / HTML Codes for ".$name."</a><br>
<a href='myadopts.php?act=rename&id=".$id."'><img src='templates/icons/title.gif' border=0> Rename ".$name."</a><br>
<a href='myadopts.php?act=freeze&id=".$id."'><img src='templates/icons/freeze.gif' border=0> Freeze or Unfreeze ".$name."</a><br>
<a href='myadopts.php?act=kill&id=".$id."'><img src='templates/icons/delete.gif' border=0> Kill ".$name."</a></b>";
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
} // End the MANAGE action code
else if($act == "stats"){
// We are getting the stats for the adoptable
// Check that an ID was submitted...
if(is_numeric($id)){
// Now we see if the adoptable actually exists...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < 1) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$i++;
}
if($aid == $id){
// The adoptable exists, so we show the stats for it...
$image = getcurrentimage($id);
$nextlevelexists = getnextlevelexists($type, $currentlevel);
$nextlevel = "";
// If a higher level exists, get that level's information...
if($nextlevelexists == "true"){
$nextlevel = $currentlevel + 1;
$query = "SELECT * FROM ".$prefix."levels WHERE adoptiename='$type' and thisislevel='$nextlevel'";
$result = mysql_query($query);
$num = mysql_numrows($result);
$i=0;
while ($i < 1) {
$requiredclicks=@mysql_result($result,$i,"requiredclicks"); //The adoptable's ID
$i++;
}
} // End grab next level info...
// Determine what to show for next level:
if($nextlevelexists == "true" and $nextlevel != ""){
// See how many more clicks to go
$ctg = $requiredclicks - totalclicks;
$nloutput = $nextlevel."<br>Clicks Required for Level Increase: ".$ctg;
}
else{
$nloutput = "This adoptable is at its maximum level";
}
$article_title = $name."'s Statistics:";
$article_content = "<img src='".$image."'><br><br>
<b>Total Clicks: ".$totalclicks."<br>
Current Level: ".$currentlevel."<br>
Next Level: ".$nloutput."<br></b>";
// Voters Information...
$article_content = $article_content."<h2>".$name."'s Voters:</h2><br>".$lang_voters_explain."<br><br><table width='450' border='1'>
<tr><td width='129'><strong>Username:</strong></td><td width='156'><strong>Date Voted: </strong></td><td width='82'><strong>Profile:</strong></td><td width='55'><strong>PM:</strong></td></tr>";
// Select the voters from the DB
$query = "SELECT * FROM ".$prefix."vote_voters WHERE adoptableid='$id' ORDER BY date DESC LIMIT 10";
$result = mysql_query($query);
$num = mysql_numrows($result);
$i=0;
while ($i < $num) {
$date=@mysql_result($result,$i,"date");
$username=@mysql_result($result,$i,"username");
if($username == ""){
$username = "Guest";
}
if($username == "Guest"){
$article_content = $article_content."<tr>
<td><div align='left'>Guest</div></td>
<td><div align='left'>".$date."</div></td>
<td><div align='center'></div></td>
<td><div align='center'></div></td>
</tr>";
}
else{
$article_content = $article_content."<tr>
<td><div align='left'>".$username."</div></td>
<td><div align='left'>".$date."</div></td>
<td><div align='center'><a href='profile.php?user=".$username."' target='_blank'><img src='templates/buttons/profile.gif' border=0></a></div></td>
<td><div align='center'><a href='messages.php?act=newpm&user=".$username."' target='_blank'><img src='templates/buttons/pm.gif' border=0></a></div></td>
</tr>";
}
$i++;
}
$article_content = $article_content."</table><br>";
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
} // End the STATS code
else if($act == "bbcode"){
if(is_numeric($id)){
// Now we see if the adoptable actually exists...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < 1) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen");
$i++;
}
if($aid == $id){
$altbb = grabanysetting("usealtbbcode");
// Adoptable exists, so show the BBCode:
$article_title = "Codes for ".$name;
$article_content = $lang_bbcode_explain."<br>
<p><u>Forum Codes / BBCode: </u></p>
<p>
<textarea name='textarea' cols='50' rows='4'>[url=http://www.".$domain."".$scriptpath."/levelup.php?id=".$aid."][img]http://www.".$domain."".$scriptpath."/siggy.php?id=".$aid."[/img][/url]
</textarea>
</p>";
if($altbb == "yes"){
// Use the seo friendly alternate bbcodes...
$article_content = $article_content."<p><u>Alternate BBCodes (Use if the above do not work on a forum): </u></p>
<p>
<textarea name='textarea' cols='50' rows='4'>[url=http://www.".$domain."".$scriptpath."/levelup.php?id=".$aid."][img]http://www.".$domain."".$scriptpath."/get/".$aid.".gif\"[/img][/url]
</textarea>
</p>";
}
$article_content = $article_content."<p><u>HTML Code</u>:</p>
<p>
<textarea name='textarea' cols='50' rows='4'><a href=\"http://www.".$domain."".$scriptpath."/levelup.php?id=".$aid."\" target=\"_blank\">
<img src=\"http://www.".$domain."".$scriptpath."/siggy.php?id=".$aid."\" border=0></a>
</textarea>
</p>";
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
} // End the BBCODE generation for the adoptable...
else if($act == "rename"){
// We are renaming an adoptable
if(is_numeric($id)){
// Now we see if the adoptable actually exists...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < 1) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen");
$i++;
}
if($aid == $id){
$image = getcurrentimage($id);
if($isfrozen != "yes"){
if($more == ""){
$article_title = "Rename ".$name;
$article_content = "<img src='".$image."'><br>".$lang_rename."".$name."".$lang_rename2."<br>
<form name='form1' method='get' action='myadopts.php'>
<p>Adoptable Name:
<input name='more' type='text' id='more'>
<input name='id' type='hidden' id='id' value='".$id."'>
<input name='act' type='hidden' id='act' value='rename'>
</p>
<p>
<input type='submit' name='Submit' value='Rename Adoptable'>
</p>
</form>";
}
else{
// We are renaming the adoptable
// The adoptable exists, so now we can rename it...
$query = "UPDATE ".$prefix."owned_adoptables SET name='".$more."' WHERE aid='".$id."' and owner='".$loggedinname."'";
mysql_query($query);
$article_title = $lang_rename_success_title;
$article_content = "<img src='".$image."'><br>".$lang_rename_success."".$more.". You can now manage ".$more." on the <a href='myadopts.php?act=manage&id=".$id."'>My Adopts</a> page.";
}
}
else{
// We cannot rename a frozen adoptable...
$article_title = $lang_frozen_title;
$article_content = $lang_frozen."<a href='manage.php?act=freeze&id=".$id."&more=unfreeze'>unfreeze</a> ".$lang_frozen2;
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
//******************************************************
//Start Gift Section
//******************************************************
elseif ($act == "gift") {
// We are renaming an adoptable
if (is_numeric($id)) {
// Now we see if the adoptable actually exists...
$query = "SELECT * FROM " . $prefix . "owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i = 0;
while ($i < 1) {
//The adoptable's ID
$aid = @mysql_result($result, $i, "aid");
$currentlevel = @mysql_result($result, $i, "currentlevel");
$newowner = @mysql_result($result, $i, "owner");
$name = @mysql_result($result, $i, "name");
$totalclicks = @mysql_result($result, $i, "totalclicks");
$status = @mysql_result($result, $i, "tradestatus");
$i++;
}
if ($aid == $id) {
$image = getcurrentimage($id);
if ($status != "notfortrade") {
if ($more == "") {
$article_title = "Sending " . $name . " to new Owner<br /><br />";
$article_content = $found . "<center><img src='" . $image . "'></center><br /><br /> You are about to send this Pet to another Owner and add it to their Account. Doing so will <b>permantally remove</b> the Pet from your Account.<br /><br />
To complete your gift or trade type in the name of the Username you are sending this Pet to and then click the <b>Send Pet</b>button below.<br /><br />
<form name='form1' method='get' action='myadopts.php'>
<p>Caretaker's Name:
<input name='more' type='text' id='more'>
<input name='id' type='hidden' id='id' value='" . $id . "'>
<input name='act' type='hidden' id='act' value='gift'>
</p>
<p>
<input type='submit' name='Submit' value='Send Pet'>
</p>
</form>";
} else {
$uchquery = "SELECT username FROM " . $prefix . "users WHERE username='$more'";
$uchresult = mysql_query($uchquery);
$uchnum = mysql_num_rows($uchresult);
if ($uchnum == "0") {
$article_title = "Pet Not Sent<br /><br />";
$article_content = $found . 'There is no user by the name of ' . $more . ' at the this site .<br /><br /><a href="myadopts.php?act=gift&id=' . $id . '">Enter Another user</a>';
} else {
$query = "UPDATE " . $prefix . "owned_adoptables SET owner='" . $more . "' WHERE aid='" . $id . "' and owner='" . $loggedinname . "'";
mysql_query($query);
$article_title = "Pet Sent<br /><br />";
$article_content = $found . "Pet is now with " . $more . " and can be seen on their account!";
}
}
} else {
$article_title = "Action Forbidden!<br /><br />";
$article_content = " This Pet CAN NOT be abandoned! You may not do this, sorry. Return to your <a href='myadopts.php'> adoptables</a>.";
}
} else {
$article_title = $err_idnoexist . "<br /><br />";
$article_content = $err_idnoexist_text;
}
} else {
$article_title = $err_idnoexist . "<br /><br />";
$article_content = $err_idnoexist_text;
}
}
else if($act == "freeze"){
// We are freezing an adoptable here...
if(is_numeric($id)){
// Now we see if the adoptable actually exists...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < 1) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen");
$i++;
}
if($aid == $id){
$image = getcurrentimage($id); // Get the image for the adopt...
if($more == ""){
if($isfrozen == "yes"){
$status = "<img src='templates/icons/freeze.gif'> Frozen<br>";
$go = "<a href='myadopts.php?act=freeze&id=".$id."&more=unfreeze'><img src='templates/icons/unfreeze.gif' border=0> Unfreeze This Adoptable</a>";
}
else{
$status = "<img src='templates/icons/unfreeze.gif'> Not Frozen<br>";
$go = "<a href='myadopts.php?act=freeze&id=".$id."&more=freeze'><img src='templates/icons/freeze.gif' border=0> Freeze This Adoptable</a>";
}
$article_title = $lang_freeze_title;
$article_content = "<img src='".$image."'><br><b>".$name."'s Current Status: ".$status."</b><br>".$lang_freeze."<br><br><b>".$go."</b><br><br>
".$lang_freeze_warning."";
}
else{
// We are actually freezing or unfreezing the adopt...
$frz = "no";
if($more == "freeze"){
$frz = "yes";
}
$query = "UPDATE ".$prefix."owned_adoptables SET isfrozen='".$frz."' WHERE aid='".$id."' and owner='".$loggedinname."'";
mysql_query($query);
if($frz == "yes"){
$article_title = $name." Frozen Successfully";
}
else{
$article_title = $name." Unfrozen Successfully";
}
$article_content = "Action Complete. You may now manage ".$name." on the <a href='myadopts.php?act=manage&id=".$id.">My Adopts</a> page.";
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
else if($act == "trade"){
// We are setting the trade status for an adoptable...
}
else if($act == "kill"){
///////////////////////////////////////////////////////////////
// X - X - X - X - X - X - X - X - X - X - X - X - X - X - X //
// We are killing an adoptable here... //
// X - X - X - X - X - X - X - X - X - X - X - X - X - X - X //
///////////////////////////////////////////////////////////////
if(is_numeric($id)){
// Now we see if the adoptable actually exists...
$query = "SELECT * FROM ".$prefix."owned_adoptables WHERE owner='$loggedinname' and aid='$id'";
$result = mysql_query($query);
$num = mysql_numrows($result);
//Loop out code
$i=0;
while ($i < 1) {
$aid=@mysql_result($result,$i,"aid"); //The adoptable's ID
$currentlevel=@mysql_result($result,$i,"currentlevel");
$type=@mysql_result($result,$i,"type");
$name=@mysql_result($result,$i,"name");
$totalclicks=@mysql_result($result,$i,"totalclicks");
$isfrozen=@mysql_result($result,$i,"isfrozen");
$i++;
}
if($aid == $id){
$image = getcurrentimage($id); // Get the image for the adopt...
if($more == ""){
$article_title = "Killing ".$name;
$article_content = "<img src='".$image."'><br>".$lang_kill."<br><br>".$lang_kill_warning."<br><br>
<center><b><a href='myadopts.php?act=kill&id=".$id."&more=confirm'><img src='templates/icons/delete.gif' border=0> Kill ".$name." - THIS CANNOT BE UNDONE! <img src='templates/icons/delete.gif' border=0></a></b><br><br>
<b><a href='myadopts.php'><img src='templates/icons/yes.gif' border=0> DO NOT KILL ".$name."! Go Somewhere Safe. <img src='templates/icons/yes.gif' border=0></a></b></center><br>";
}
else if($more == "confirm"){
// Actually run the execution
$query = "DELETE FROM ".$prefix."owned_adoptables WHERE aid='$id' and owner='$loggedinname'";
mysql_query($query);
$article_title = $lang_kill_title_complete;
$article_content = $lang_kill_complete;
}
else{
$article_title = "Invalid Action";
$article_content = "Invalid Action Specified";
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
else{
$article_title = $err_idnoexist;
$article_content = $err_idnoexist_text;
}
}
else{
// No valid action specified :: show an error
$article_title = $lang_invalid_action_title;
$article_content = $lang_invalid_action;
}
}
else{
$article_title = $accden;
$article_content = $reqlogin;
} // End is logged in check else
// **********************************************************************
// Begin Template Definition
// **********************************************************************
//Define our current theme
$file = $themeurl;
// Do the template changes and echo the ready template
$template = file_get_contents($file);
$template = replace(':ARTICLETITLE:',$article_title,$template);
$template = replace(':ARTICLECONTENT:',$article_content,$template);
$template = replace(':ARTICLEDATE:',$article_date,$template);
$template = replace(':BROWSERTITLE:',$browsertitle,$template);
$template = replace(':SITENAME:',$sitename,$template);
//Define our links
$template = replace(':LINKSBAR:',$links,$template);
//Get the content for the side bar...
$sidebar = getsidebar();
$template = replace(':SIDEFEED:',$sidebar,$template);
//Get the ad content...
$template = replace(':ADS:',$ads,$template);
//Get the slogan info
$template = replace(':SLOGAN:',$slogan,$template);
echo $template;
// **********************************************************************
// End Template Definition
// **********************************************************************
?>
However, I received an notification saying that there is a syntax error on line 500. I managed to fix this, but now I am getting another error that I cant seem to fix it myself: