da viele von euch ein Gildenforum haben und auf der suche nach einen Raidplaner sind (ohne DKP und co) und eine Raidübersicht im Portal haben wollen, für die hab ich was gefunden, was auch für so gut wie jedes MMORPG geeigent ist.
mal ein paar kleine details:
*für fast jedes online spiel geeignet
*anpassung ans phpbb3/phpbb2 forum (nur ein login)
*kein Dkp oder ähnliches dabei
*austauschbare Game Packages, Hacks, Images, Themes
*eigene styles einbinden
*leicht in der Administration
*eigener Block im Portal
so hier mal eine anleitunf für das einfügen ins Portal
erstelle eien raidweek.php und speichere sie ind den phpraider Ordner, füge darin den Text ein und trage dort unter // MySQL- settings, // Where the raidcalender's index.php is located und // Where the raidcalenders raid-icons are located deine daten ein
Code: Select all
<?
// Where the raidcalender's index.php is located
$raid_cal_index = 'http://YOURSITENAME/phpraider/';
// Where the raidcalenders raid-icons are located
$raid_icon_folder = '/LINK TO YOUR RAID IMAGES FOLDER/'; // IE /raid/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 = 'HOSTNAME';
$db_raid_database_name = 'DATABASE NAME';
$db_raid_database_user = 'USERNAME';
$db_raid_database_pwd = 'PASSWORD';
$db_table_raid = 'phpraider_raid';
$db_table_signups = 'phpraider_signups';
// 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 = -7;
// Layout. The size of the windows of the days displayed.
//$layout_frame_width = 100;
$layout_frame_width = 65;
$layout_frame_height = 46;
$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 = 'text'; // 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.
// READ ME ________________________________________________________________________________________
//goto line 131 and in that line u will find the word URLINK change that word to the link of your phpraider index.php IE http://mywebsite/phpraider/index.php
//
// 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
$timezone = $timezone * 3600; // Calculates the timezone-diff.
?>
<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;?>\"><< Previous</a> - <a href=\"?offset=0\">Current</a> - <a href=\"?offset=<?=$next;?>\">Next >></a><a href=\"URLINK/index.php\" 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 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 = time( date("H,i") );
$now = date(dm, $now_timestamp);
// Loops through the week
for ( $i = 0; $i < 7; $i++ ) {
$raidscheduled = 0;
$current = $weekstart + (86400*($i) );
$xday = date('D', $current);
$xdate = date('d', $current);
$currdate = date('dm', $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 == date('dm', $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));
$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 "<a target='_parent' href='" . $raid_cal_index . "index.php?option=com_view&id=" . $check['raid_id'] . "'><img src='" . $raid_icon_folder . $check['icon_name']."' onmouseover=\"InsertText('" . addslashes($img_txt) . "');\" onmouseout='ClearText();' border='0'></a>";
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>
Code: Select all
{$C_BLOCK_H_L}Wochenuebersicht Raidplaner{$C_BLOCK_H_R}
<table class="tablebg" cellspacing="1" width="100%">
<tr class="row1">
<td style="text-align:center;">
<div align="center"><p align="center"><iframe src="http://deine seite/phpraider/raidweek.php" frameborder="0" width="471" scrolling="no" height="180" allowtransparency="allowtransparency"></iframe></p></div>
</td>
</tr>
</table>
{$C_BLOCK_F_L}{$C_BLOCK_F_R}
suche:
Code: Select all
<!-- IF S_DISPLAY_ANNOUNCEMENTS -->
<!-- IF S_ANNOUNCE_COMPACT -->
<!-- INCLUDE portal/block/announcements_compact.html -->
<!-- ELSE -->
<!-- INCLUDE portal/block/announcements.html -->
<!-- ENDIF -->
<!-- ENDIF -->
Code: Select all
<!-- INCLUDE portal/block/raidweek.html -->
Speicher alles, leere deinen Cache vom Forum
und fertig ist es......
Downlaods:
PhPRaider
Lg
Cromatics