TinyPortal

Development => Resources => Topic started by: SMFnub on May 25, 2008, 04:52:44 PM

Title: phpRaider: Weekly Raid Block: Front Page
Post by: SMFnub on May 25, 2008, 04:52:44 PM
I got this idea from cyberbane, but using different script.

So I created a php script, and uploaded it to my phpraider directoy.

I use this code in a center block to be shown on my frontpage
include ('/home/ACCOUNT/public_html/SITE/phpraider/raid_week_display.php');

Script is attached.

Problem, the writing and even the border of everything on the frontpage is affected by this.  I want all style or whatever to stay within that script / block, not affect the rest of the site.

P.S I do not know html or php, everything I did on my site has been just from tinkering.

(https://www.tinyportal.net/proxy.php?request=http%3A%2F%2Fi28.photobucket.com%2Falbums%2Fc209%2Fmbd2884%2Fblockmess.jpg&hash=5a3eef7c788937a67cf5d9992928929d72703ab8)
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: JPDeni on May 25, 2008, 06:15:54 PM
You can eliminate the


<html>

</html>


and


<head>

</head>


tags.

It would be better if you put your style into a div statement, like


<div style="margin: 0px; padding: 0px; align: center; background-color: #000000; color: #b0b0b0; font-family: Arial, Verdana, sans-serif;">


Similarly, you can add the styles for the table and td inline. I would suggest that you either put all of the css into inline format or move it to the .css file for the default theme.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: SMFnub on May 25, 2008, 08:19:47 PM
This did not work for me.  Anything in <div style= does not show anymore.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: JPDeni on May 25, 2008, 08:28:44 PM
It would probably take a whole lot of editing to put that into an article, after I looked at it more.

You might do better by creating a separate .html page and then use an iframe to put it into an article.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: SMFnub on May 25, 2008, 08:30:34 PM
Its not an article, its small weekly raid schedule block.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: JPDeni on May 25, 2008, 08:42:00 PM
I was just going to go back over your code and see if I could fix it, but you took it out.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: SMFnub on May 25, 2008, 08:55:38 PM
I made an attachment since it was so huge to post. But here it is

BTW thanks for looking this over.

<?
// Copyright Eternal Souls, Created by Zemathar of the Eternals Souls Guild on EU Scarhield Legion server,
// feel free to use this code as long as you do not remove this message.
// Here are the config for this page.

// Version 1.1.1
// Color & layout tweaked by Dracula
//

// Version 1.1.0
// Implemented the "no raid" function.
// You can now display an image or text if there is no raid that day.
// You can of cause have it like standard where nothing will be displayed.

// Version 1.0.1
// Implemented $timezone
// There you can change the output time to be in your timezone. You will have to calculate by yourself how many
// hours plus or minus you need.
//
// $db_table_raid is a value pointed to where the xxx_raid tabel is located. You will have to check in the database for the
// right value.

// Version 1.0
// I made this addon just because we needed it.
// It has it flaws and buggs but I will try to fix them as soon as possible


//NOTE! we have put the phpraiderfiles in a folder that we have named raids,
//if you do not want do go thru the code and change to much we advice you to
//do the same.
// ******************************************************
// START OF CONFIGURATION
//

// Where the raidcalender's index.php is located
$raid_cal_index = 'http://SITE/phpraider/';

// How many hours + or - the viewer should calculate. Some do have to edit this to make
// the timedisplay to be correct.
// For example $timezone = 3  or  $timezone = -4
$timezone = -5;

// Where the raidcalenders raid-icons are located
$raid_icon_folder = '/phpraider/games/WoW/images/raids/';

// MySQL- settings. Note that db_table_prefixes can vary depending on what you choose when you install phpraider.
$db_raid_server = 'localhost';
$db_raid_database_name = '';
$db_raid_database_user = '';
$db_raid_database_pwd = '';
$db_table_raid = '';
$db_table_signups = '';

// Layout. The size of the windows of the days displayed.
//$layout_frame_width = 100;
$layout_frame_width     = 75;
$layout_frame_height = 54;
$layout_frame_raidinfo = 20;

// How many raid icons fit in the table cell?
$max_raids_per_day = 2;

// What will be displayed when no raids are planned for that particular day.
// You can choose to have a text or an icon.
// $no_raid_type = 'image';
// $no_raid_type = 'text';
// $no_raid_type = 'none';
$no_raid_type = 'none';                                                // What mode do you want?
$no_raid_text = 'No raid today';                                // What text to be shown
$no_raid_image = '/phpraider/games/WoW/images/raids/unknown.png';        // link to your icon if you use that.

$no_raid_txt = 'No raid today';
//
// END OF CONFIGURATION
// ******************************************************

$db = mysql_connect($db_raid_server, $db_raid_database_user, $db_raid_database_pwd);
mysql_select_db($db_raid_database_name, $db);

//CHECK OFFSET FROM CURRENT WEEK AND SETS VARIABLES
if ($_GET["offset"]) {
   $weekoffset = $_GET["offset"]*604800;
   $wo = $_GET["offset"];
}
else {
   $weekoffset = 0;
   $wo = 0;
}
$prev = $wo-1;
$next = $wo+1;

$weekstart = (date('U')-(date('w')+6)%7*86400)+$weekoffset;        // sets start date of displayed week

?>

<html>
<head>
<style>
body {
margin: 0px;
padding: 0px;
background-color: #000000;
color: #b0b0b0;
font-family: Arial, Verdana, sans-serif;
}
table {
border: 1px solid #282828;
}
td {
border: 1px solid #404040;
}
td.today {
background-color: #202020;
border: 1px solid #407040;
}
a:link,a:active,a:visited {
text-decoration: none;
color: #006699;
}
a:hover {
text-decoration: underline;
color: #4080b0;
}
.daycontent {
clear: both;
text-align: center;
margin: 0px;
padding-bottom: 0px;
padding-top: 2px;
}
.day {
color: #ffcc33;
font-size: 10pt;
padding-left: 4px;
font-weight: bold;
float: left;
}
.date {
color: #808080;
font-size: 8pt;
padding-top: 2px;
padding-right: 4px;
float: right;
}
#info {
color: #c0b050;
font-size: 8pt;
text-align: center;
}
.available    { color: #80d080; }
.unavailable  { color: #f08080; }
.field        { color: #60b0b0; }

</style>
<script type="text/javascript">
function InsertText(str) {
var oDiv=document.getElementById("info");
oDiv.innerHTML=str;
}
function ClearText() {
  InsertText("<a href=\"?offset=<?=$prev;?>\">&lt;&lt; Previous</a> - <a href=\"?offset=0\">Current</a> - <a href=\"?offset=<?=$next;?>\">Next &gt;&gt;</a> <a href=\"http://contemptsc.org/index.php?page=8\" class=\"raid_calendar\" target=\"_parent\">Sign Up Here</a></td></tr></table>");
}
</script>
</head>
<body onload='javascript:ClearText()'>

<!-- PHP -->
<?

// Lets deal with the output

echo "\t<table align='center' width='" . (7 * ($layout_frame_width+2) + 2) . "px' border='0' cellspacing='0' cellpadding='0'>\n";
echo "\t<tr height='" . $layout_frame_height . "'>\n";

$now_timestamp = mktime( date("H,i") );
$now = date(dmY, $now_timestamp);

// Loops through the week
for ( $i = 0; $i < 7; $i++ ) {

$raidscheduled = 0;

$current = $weekstart + (86400*($i) );
$xday = gmdate('D', $current);
$xdate = gmdate('d', $current);
$currdate = gmdate('dmY', $current);

if ($now == $currdate) {
$today = " class='today'";
} else {
$today = "";
}

echo "\t\t<td{$today} valign='top' width='" . $layout_frame_width . "px'>\n";
echo "\t\t\t<div class='day'>" . $xday . "</div><div class='date'>" . $xdate . "</div>\n";
echo "\t\t\t<div class='daycontent'>";

// Getting raid start dates
$sql = mysql_query("SELECT * FROM $db_table_raid ORDER by start_time", $db);

while ($check = mysql_fetch_array($sql)){

// Checks if the date of the raid is equal to displayed day
        if ($currdate == gmdate('dmY', $check["start_time"])) {

// We need to have a maximum number of raids per day (otherwise layout becomes a mess)
if ($raidscheduled < $max_raids_per_day) {

// Count the signups
$sql2 = mysql_query("SELECT COUNT(*) FROM $db_table_signups WHERE raid_id=".$check['raid_id']." AND cancel=0");
$signupcount = mysql_result($sql2, 0);

// Count the cancels
$sql2 = mysql_query("SELECT COUNT(*) FROM $db_table_signups WHERE raid_id=".$check['raid_id']." AND cancel=1");
$cancelcount = mysql_result($sql2, 0);

            $invite_time  = date("H:i",$check["invite_time"]+$timezone);
            $start_time   = date("H:i",$check["start_time"]+$timezone);
            $freeze_time  = date("H:i",$check["start_time"] - (($check["freeze_time"]*3600)+$timezone)); 
            $freeze_timestamp = $check["start_time"] - (($check["freeze_time"]*3600)+$timezone);
           
            $img_txt = $check['location'];
$img_txt .= " (<span class='available'>" . $signupcount . "</span>,<span class='unavailable'>" . $cancelcount . "</span>)";
            if ($now_timestamp <= $freeze_timestamp) {
$img_txt .= " Freeze: <span class='field'>" . $freeze_time . "</span>";
            } else {
            $img_txt .= " <span class='field'>Frozen</span>";
            }
$img_txt .= " Invite: <span class='field'>" . $invite_time . "</span>";
$img_txt .= " Start: <span class='field'>" . $start_time . "</span>";

echo "<img src='" . $raid_icon_folder . $check['icon_name']."' onmouseover=\"InsertText('" . addslashes($img_txt) . "');\" onmouseout='ClearText();' border='0'>";
echo "</a>";
}

        $raidscheduled = $raidscheduled + 1;
}
}

if (!$raidscheduled) {
switch ($no_raid_type) {
case text:
        echo $no_raid_txt . "";
        break;
case image:
        echo "<img src='" . $no_raid_image . "'>";
        break;
default:
        echo "";
        break;
}
}
echo "</div>\n";
    echo "\t\t</td>\n";
}

echo "\t</tr>\n";
echo "\t<tr>\n";
echo "\t\t<td colspan='7' height='" . $layout_frame_raidinfo . "'><div id='info'></div></td>\n";
echo "\t</tr>\n";
echo "\t</table>\n";
?>
<!-- ENDPHP -->

</body>
</html>
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: JPDeni on May 25, 2008, 10:02:48 PM
I'm sorry. I hadn't looked at it enough. This is too big of a mess for me to figure out.

The only thing I can suggest is to try an iframe in a scriptbox.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: SMFnub on May 25, 2008, 11:37:59 PM
The iframe seems to work fine for now, thanks for the suggestion
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: JPDeni on May 25, 2008, 11:41:21 PM
Whew!! :D I'm so glad it's working. I was feeling bad about not being able to help.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: Rawool on June 17, 2008, 02:15:01 AM
Im having quite a strange problem.  It is almost as though the script itself is not working.

If you look on my website http://www.eclectic.mjmwebtech.com/site/index.php (http://www.eclectic.mjmwebtech.com/site/index.php), you will see the week there.  You will also see there are raids scheduled and the icon is there. 

The good news, everything visual is fine....here comes the bad news.....

There is no functionality.  I have posted on the phpraider forum as well where this is listed and many others are having the same problem.   Nothing happens when you mouse over it, there are no previous, current, next, sign-up buttons.  It is more or less or a picture than anything. 

As for the script.  I copied it word for word and have double checked it 3 times now.  The only changes I have made are to do with the database and timezone.  And again, only where I should be changing things.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: IchBin on June 17, 2008, 02:25:42 AM
If there's a problem with the script, you need to seek help from the author. We did not write this script.
Title: Re: phpRaider: Weekly Raid Block: Front Page
Post by: thaimlmmarket on April 20, 2010, 07:08:35 PM
thank Work  :D