who is online block

Begonnen von Kurdo, 15 Oktober 2006, 00:54:43

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 2 Gäste betrachten dieses Thema.

Kurdo

ich habe hier ein who is online block das es meiner meinung nach bissel zu groß ist wollte ich es verkleinern aber leider funktioniert es nicht

hier der komplette block wie kann ich es bissel kleiner machen

<?php
/************************************
 pragmaMx  Content Management System
 Copyright (c) 2005 pragmaMx Dev Team - http://pragmaMx.org
 ***********************************
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 2 of the License, or
 (at your option) any later version.
 ***********************************
 $Source: /cvsroot/pragmamx/stable/blocks/block-Who_is_Online.php,v $
 $Revision: 1.2 $
 $Author: tora60 $
 $Date: 2005/06/19 20:27:57 $
************************************/

################# Einstell Variablen ############################################################################
$onlinelistsize  10     # Hoehe des Selectfeld der Onlinuser (Online-Liste)
$showuserlistall 0;      # Wenn Online-Liste immer erscheinen soll, 1=Ja, 0=nein
$showbuddy       0;   # Buddylink (Messenger) anzeigen , 1=Ja, 0=nein
# User, die nicht angezeigt werden sollen
# Namen mit Komma trennen!
$excludedusers ="Texsterdsgf, Knaxllerfgfd";
##################################################################################################################
$imagedir="images/maaxon";
$pm_module_name "Private_Messages";
##################################################################################################################


$thisfile=basename(__file__);
if (!
defined("mxMainFileLoaded")) die ("You can't access this file directly...");

$mxblockcache FALSE;

global 
$prefix$user_prefix$bgcolor1$bgcolor2$bgcolor3$txtcolor1$txtcolor2

if(@
file_exists("language/maaXoN/maaXoN-".$GLOBALS['currentlang'].".php")) {
include_once("language/maaXoN/maaXoN-".$GLOBALS['currentlang'].".php");
}
else {
include_once("language/maaXoN/maaXoN-english.php");
}
# Variablen initialisieren
#if(substr(strtolower($GLOBALS['currentlang']), 0, 6) == "german"){ # Bilder fuer Buttons definieren (noch keine Bilder vorhanden!!)
# $pmimagepath="modules/$pm_module_name/images/buttons/german";
# }
#else{
# $pmimagepath="modules/$pm_module_name/images/buttons/english";
# }

# Variablen initialisieren
$username "";
if (
MX_IS_USER){
$cookie=mxGetUserSession();
$username $cookie[1];
$uid $cookie[0];
}

# SQL-bedingung fuer excluded Users erstellen
$exusers explode (","$excludedusers);
if(!
MX_IS_ADMIN){
while (list($key$val) = each($exusers)) {      
$xexusers[]=trim($val);
}
}
$xexusers[] = $GLOBALS['anonymous'];
$excludedusers "'".implode("','",$xexusers)."'";

# Anzahl aller User und hoechste uid ermitteln
$totalmembers=0;
$qry="select COUNT(uid), MAX(uid) from ${user_prefix}_users where user_stat=1;";
list(
$totalmembers$lastuid) = sql_fetch_row(sql_query($qry));

$totaluser=0;
$qry="select COUNT(uid) from ${user_prefix}_users;";
list(
$totaluser) = sql_fetch_row(sql_query($qry));

# neusten User ermitteln
$lastuid = (empty($lastuid)) ? $lastuid;
$qry="select uname from ${user_prefix}_users where uid = $lastuid;";
$result sql_query($qry); # neusten User ermitteln
list($lastuser) = sql_fetch_row($result);

$past time()- MX_SETINACTIVE_MINS ;
# Alle Gaeste ermitteln
$guest_online_num=0;
$result sql_query("SELECT Count(ip) FROM ${prefix}_visitors WHERE time>".$past." AND uid=0;");
list(
$guest_online_num) = sql_fetch_row($result);

# Alle User ermitteln, evtl auflisten
$member_online_num 0
$whoonlineselect "";
$smallunmae strtolower($username);

# Anzahl weiblicher Mitglieder ermitteln
$weiblich=0;
$qry="select COUNT(uid), MAX(uid) from ${user_prefix}_users where user_sexus=1 and user_stat=1;";
list(
$weiblich) = sql_fetch_row(sql_query($qry));

# Anzahl männlicher Mitglieder ermitteln
$maenlich=0;
$qry="select COUNT(uid), MAX(uid) from ${user_prefix}_users where user_sexus=2 and user_stat=1;";
list(
$maenlich) = sql_fetch_row(sql_query($qry));


$result sql_query("SELECT uname, user_sexus, (YEAR( CURRENT_DATE ) - YEAR( user_bday )) -
( RIGHT( CURRENT_DATE, 5 ) < RIGHT( user_bday, 5 ) ) AS user_age FROM 
${user_prefix}_users
WHERE ((uname Not In ("
.$excludedusers.")) AND (user_lastvisit >= ".$past.") AND (user_stat=1) AND (user_lastmod<>'logout')) ORDER BY uname");
#$GLOBALS["mxSqlDebug"]      = 0;
while (list($uname2$user_sexus$user_age) = sql_fetch_row($result)) {


$check date('Y');

if (
$user_sexus==1) {
    
    
$uname3 mxCutString($uname218"..""");    # Kurzen Usernamen erstellen
    
$whoonlineselect.="<option style=\"color:black;\" value=\"".$uname2."\" title=\"".$uname2."\">".$uname3." (w-".$user_age.")</OPTION>\n"# options fuer auswahlselect erstellen
    
$member_online_num++;    # Anzahl User hochzaehlen
    
}
if (
$user_sexus==2){    
    
    
$uname3 mxCutString($uname218"..""");    # Kurzen Usernamen erstellen
    
$whoonlineselect.="<option style=\"color:black;\" value=\"".$uname2."\" title=\"".$uname2."\">".$uname3." (m-".$user_age.")</OPTION>\n"# options fuer auswahlselect erstellen
    
$member_online_num++;    # Anzahl User hochzaehlen
    
}
if (
$user_sexus==0){    
    
    
$uname3 mxCutString($uname218"..""");    # Kurzen Usernamen erstellen
    
$whoonlineselect.="<option style=\"color:black;\" value=\"".$uname2."\" title=\"".$uname2."\">".$uname3." (".$user_age.")</OPTION>\n"# options fuer auswahlselect erstellen
    
$member_online_num++;    # Anzahl User hochzaehlen
    
}
}
# Private Nachrichten 
$countpm=0$countpmunread=0;
if (
MX_IS_USER) { # Wenn aktueller User registriert ist (kein Gast)
$pmactiv = (mxModuleAllowed($pm_module_name)) ? 0# feststellen ob pm-modul aktiv ist
if ($pmactiv){ # falls pm-modul aktiv ist
$qry="SELECT read_msg, Count(msg_id) FROM ${prefix}_priv_msgs WHERE to_userid=".$uid." group by read_msg;";
$result sql_query($qry);
while (list($read_msg$nums) = sql_fetch_row($result)) {
   if ($read_msg==0) { # wenn angemeldeter User
$countpmunread=$nums; # Anzahl ungelesene ermitteln
   }
else{
$countpm=$nums; #++; # Anzahl aller pm's ermitteln
}
}
}
#else{
#$checkpmtime=0; # private Nachrichten nicht abfragen!
# }
}

# Usergaestebuch
$content_ug "";
if (
MX_IS_USER) { # Wenn aktueller User registriert ist (kein Gast)
if (mxModuleAllowed("UserGuest")){ # falls gaestebuch vorhanden
$qry="SELECT Count(gid) FROM ${prefix}_userguest WHERE touserid='".$uid."' AND touser = '".$username."' AND dummy=0;";
$result sql_query($qry);
list($gbnewentries) = sql_fetch_row($result);
# Usergaestebuch
if(!empty($gbnewentries)){
$content_ug .= "<div align=\"left\"><a href=\"modules.php?name=UserGuest&amp;op=view&amp;touser=".urlencode($username)."\">
<img src=\"
$imagedir/tcake.gif\" width=\"19\" height=\"19\" border=\"0\" Alt=\""._BWOGUESTBOOK."\"></a> \n
<b>
$gbnewentries </b><a href=\"modules.php?name=UserGuest&amp;op=view&amp;touser=".urlencode($username)."\">";
if($gbnewentries==1){ 
$content_ug .= ""._BWOGUESTBOOK1."";
}
else { 
$content_ug .= ""._BWOGUESTBOOK2."";
}
$content_ug .= "</a></div>";
}
}
}

# weitere Variablen initialisieren zur Zeitberechnung :(
//Creating SQL parameter
$gestern mktime(000date ("m") , date ("d")-1date("Y"));
$heute mktime(000date ("m") , date ("d"), date("Y"));

# Heute neu angemeldete User ermitteln
$qry "SELECT COUNT(uid) from ${user_prefix}_users WHERE user_regtime >= $heute and user_stat=1 and uname not in($excludedusers);";
list(
$userCount) = sql_fetch_row(sql_query($qry));

# Gestern neu angemeldete User ermitteln
$qry "SELECT COUNT(uid) from ${user_prefix}_users WHERE user_regtime >= $gestern and user_regtime < $heute and user_stat=1 and uname not in($excludedusers);";
list(
$userCount2) = sql_fetch_row(sql_query($qry));

# Ausgabe ...................................
$content "\n<!-- $thisfile output start -->\n<div class=\"boxcontent\" align=\"center\">\n"
."<a href=\"modules.php?name=Your_Account\"><img src=\"$imagedir/people.gif\" width=\"19\" height=\"19\" border=\"0\" Alt=\""._BWOPICS."\"></a>\n"
."<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" style=\"border: 0px; margin-bottom: 5px;\">\n"
####///."\n<tr>\n<td class=\"boxcontent\">"._BWOTOTALMEMBERS."</td>\n<td align=\"right\" class=\"boxcontent\">\n<b>$totalmembers</b></td>\n</tr>\n"###
####///."\n<tr>\n<td class=\"boxcontent\">"._BWOTODAYMEMBERS."</td>\n<td align=\"right\" class=\"boxcontent\">\n<b>$userCount</b></td>\n</tr>\n"###
####///."\n<tr>\n<td class=\"boxcontent\">"._BWOYESTERDAYMEMBERS."</td>\n<td align=\"right\" class=\"boxcontent\">\n<b>$userCount2</b></td>\n</tr>\n"###
####."\n<tr>\n<td class=\"boxcontent\">"._BWOMEMBERS1."</td>\n<td align=\"right\" class=\"boxcontent\">\n<b>$member_online_num</b></td>\n</tr>\n"
####."\n<tr>\n<td class=\"boxcontent\">"._BWOGUESTES."</td>\n<td align=\"right\" class=\"boxcontent\">\n<b>$guest_online_num</b></td>\n</tr>\n"
."</table>\n";
##if (MX_IS_USER) {
// zuletzt angemeldeter User
##$content .= "<div style=\"border: 0px; margin-bottom: 5px;\">"._BWOLATEMEMBER."<br>\n<a href=\"modules.php?name=Userinfo&amp;uname=".urlencode($lastuser)."\">$lastuser</a></div>\n";
##}
if (MX_IS_USER || MX_IS_ADMIN || $showuserlistall) { # Wenn angemeldeter User oder Admin oder Liste immer erscheinen soll
# Onlineliste anzeigen wenn User online sind
if($member_online_num>0){
if($onlinelistsize>=$member_online_num) {$onlinelistsize=$member_online_num+30;}
if(!MX_IS_USER || !$pmactiv){
$script "";
}
else{
$script " onDblClick=\"whob_clickit()\"";
$content .= "<script language=\"JavaScript\" type=\"text/javascript\">\n<!--\n";
$content .= "function whob_clickit(){\n";
$content .= " var y=document.onlineuserinfo.uname.selectedIndex; \n";
$content .= " var x=document.onlineuserinfo.uname.options[y].value; \n";
$content .= " window.open('modules.php?name=$pm_module_name&file=buddy&op=compose&to='+x, '".md5(time())."','left=370,top=150,width=360,height=200,toolbar=no,location=no,menubar=no,scrollbars=yes,resizeable=yes,status=no');\n";
$content .= " return false;\n";
$content .= " }\n//-->\n";
$content .= "</script>\n";
}
#background-color: $bgcolor1; font-size: 9px; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; color: $txtcolor1; width: 90%; border: 0px $bgcolor1;

$content .= "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" style=\"border: 0px; margin-bottom: 5px;\">\n";
$content .= "\n<tr>\n<td colspan=\"2\" align=\"center\" class=\"boxcontent\">\n";
$content .= "Online (<b>$member_online_num</b>)";
$content .= "</td>\n</tr>\n";
$content .= "\n<tr>\n<td colspan=\"2\" align=\"center\">"; # select-options verwenden
$content .= "<form action=\"modules.php?test\" name=\"onlineuserinfo\" method=\"get\" style=\"border: 0px; margin-bottom: 5px; margin-top: 0px;\">";
$content .= "<input type=\"hidden\" name=\"name\" value=\"Your_Account\">";
$content .= "<input type=\"hidden\" name=\"op\" value=\"userinfo\">";
$content .= "<select name=\"uname\" size=\"$onlinelistsize\" style=\" background-color: $bgcolor1; font-size: 9px; font-family: Verdana, Geneva, Arial, Helvetica, sans-serif; color: $txtcolor1; width: 90%; cursor: hand; border: 1px solid $bgcolor2; text-decoration: none; padding-left: 1px; padding-top: 1px; padding-bottom: 1px;\" $script>".$whoonlineselect."</select>";
$content .= "<br>\n<input type=\"image\" src=\"$imagedir/info.png\" alt=\""._BWOUSERINFO."\">";
$content .= "</form>\n";
$content .= "</td>\n</tr>\n";
$content .= "</table>\n";
}
# private messages
if (!empty($pmactiv) && MX_IS_USER){
# pm Liste
$content .= "<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" style=\"border: 0px; margin-bottom: 5px;\">\n";
if ($countpm){
##$content .= "\n<tr>\n<td colspan=\"3\" align=\"center\" class=\"boxcontent\"><a href=\"modules.php?name=".$pm_module_name."\">"._BWOPMSG."</a></td>\n</tr>\n";
$content .= "\n<tr>\n<td align=\"center\" class=\"boxcontent\"><a href=\"modules.php?name=".$pm_module_name."\"><img src=\"$imagedir/pmessage.gif\" width=\"19\" height=\"19\" border=\"0\" Alt=\""._BWOPMSG."\"></a></td>\n";
$content .= "<td valign=\"top\" class=\"boxcontent\">"._BWOPMSGALL.":<br>\n"._BWOPMSGUNREAD.":</td>\n";
$content .= "<td valign=\"top\" align=\"right\" class=\"boxcontent\"><b>".$countpm."</b><br>\n";
$content .= ($countpmunread) ? "<img src=\"images/menu/arrow-ani.gif\" alt=\"\" width=\"14\" height=\"9\" border=\"0\">&nbsp;<b>".$countpmunread."</b>" "<b>$countpmunread</b>";
$content .= "</td>\n</tr>\n";
}
else{
$content .= "<tr><td class=\"boxcontent\"><a href=\"modules.php?name=".$pm_module_name."\"><img src=\"$imagedir/pmessage.gif\" width=\"19\" height=\"19\" border=\"0\" Alt=\""._BWOPMSG."\" hspace=\"0\"></a></td><td><a href=\"modules.php?name=".$pm_module_name."\">"._BWOPMSG."</a></td></tr>\n";
}
$content .= "</table>\n";
# Buddy
if ($showbuddy){
$themedir MX_THEME_DIR."/images";
$buddyimg = (@file_exists($themedir."/buddy.gif")) ? $themedir."/buddy.gif" $imagedir."/buddy.gif";
$buddyimg mxCreateImage($buddyimg_BWOBUDDIE0);
$windowname=md5($GLOBALS['sitename']);
$content .= "<a href=\"#\" onClick=\"window.open('modules.php?name=".$pm_module_name."&amp;file=buddy','$windowname','left=180, top=150, width=240,height=50,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,copyhistory=0'); return false;\">".$buddyimg."</a><br>\n";
}
}
# Usergaestebuch
$content .= $content_ug;


if (!
MX_IS_USER) { # Gast no user
$content .= "<div align=\"justify\"><br>\n"._BWOASREGISTERED."</div>\n";
}

#if(MX_IS_USER && $checkpmtime>0 && $pmactiv){
# $checkpmfile="modules.php?name=$pm_module_name&file=buddy&op=check&ref_intervall=$checkpmtime";
# $content.= "<iframe name=\"who_checkpm_1\" src=\"$checkpmfile\" marginwidth=\"0\" marginheight=\"0\" width=\"0\" height=\"0\" scrolling=\"no\" frameborder=\"0\"></iframe>";
# }
$content .= "";
$content .= "</div>\n<!-- $thisfile output end -->\n";
# Blocktitel aus Sprachdatei auslesen
$blockfiletitle=_BWOMAAXONLINE;
?>

cihan

hi, die höhe kannst du hier einstellen:


$onlinelistsize  = 10;     # Hoehe des Selectfeld der Onlinuser (Online-Liste)

statt der 10 was kleineres einsetzen.

Kurdo

habe ich ja gemacht aber ging nicht es war vorher 20 hab auf 10 gemacht und es ist trotzdem gleich geblieben

FrankySZ


hi,

unter Admin-Bloecke nachsehen ob caching fuer den Block an ist, wenn ja ausschalten und danach blockcache zuruecksetzten, dann sollte es korrekt aussehen ...
greets Franky

Kurdo

hab ich gemacht geht nicht

ich weiss nicht was ich falsch mache

Kurdo

habe es schon 3 mal versucht franky aber es geht einfach nicht

Andi

Zitatdas es meiner meinung nach bissel zu groß ist wollte ich es verkleinern aber leider funktioniert es nicht

Was willst du denn überhaupt verkleinern?
Erklär das mal genauer....
schön´s Grüssle, Andi

Kurdo

ich möchte das block ingsgesamt verkleinern es ist zu lang

meebou

#8
du hast doppelt gemoppelt, also der tipp oben von den anderen war gut, aber du hast das hier bei dir drin stehen.

if($onlinelistsize>=$member_online_num) {$onlinelistsize=$member_online_num+30;}

mehr braucht man nicht zu sagen, oder? :-)

----

Aber eine Frage hätte ich!!!
Kann man die Hintergrundfarbe noch zusätzlich ändern? Also das hier nicht nur männlich weiblich mit (m/w) differenziert wird, sondern das die einzelnen Nicknames auch andere Hintergrundfarben haben (m=blau/w=rosa) ?? Wenn ja, wie?

Kurdo

danke meebou es hat geklappt;)

Kurdo

jetzt habe ich noch ein problem mit der breit hehe wie kann ich die breite festlegen da manche user einen längeren namen haben und somit die seite vergrößern des sieht dann nicht gut aus

ich möchte eine größe für die breite festlegen damit es die seite nicht verschiebt