Seite 1 von 8

In der "Wer ist online-Liste" NUR Mods & Admins anzeigen?!

Verfasst: 18.05.2012 07:13
von Knowhow-Sauger
Hallo Freunde,

sorry, aber eine bessere Überschrift fiel mir für mein Problem gerade nicht ein.
Es geht um folgendes:

Immer wenn Mods/Admins online sind, sollte dies in einem deutlich sichtbaren Fenster unten rechts angezeigt werden.
Das müsste natürlich immer offen sein und man sollte es nicht schliessen können. Das Fenster sollte auch immer mit-scrollen, so dass es permanent da ist.
Auf dem Fenster sollte dann stehen, dass einer von der Forum-Crew für Ratschläge und Hilfe jetzt online ist. Falls ein User mal ein Problem hat, kann er sofort Kontakt aufnehmen und braucht nicht extra eine PN zu schreiben.
Nur wenn keiner der Forum-Crew online ist, sollte gar kein Fenster angezeigt werden.
In diesem Fenster sollte man dann nach Möglichkeit auch gleich miteinander chatten können.
Ist aber auch nicht sooooo wichtig. Es würde auch reichen, wenn das Fenster nur ein Link zu den PNs bieten würde.
Am besten sollte dann auch gleich stehen, WER von der Foren-Crew online ist.
Wäre das sehr schwer zu installieren? Weil normalerweise werden ja immer nur ALLE User in der "Wer ist Online"-Liste angezeigt.
In diesem Fall sollten aber NUR Admins und Moderatoren angezeigt werden.

Der Sinn und Zweck soll sein, dass man bei Anliegen/Lob/Kritik gleich einen Ansprechpartner vor Ort hat.
Außerdem soll es auch vor Spammern schützen, denn in meinem Forum sollen auch Gäste Beiträge verfassen dürfen.

Danke für alle Ratschläge!! :)

LG
Chris

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 13:36
von Miriam
Ein möglicher Ansatz wäre der:

finde in der /includes/functions.php:
  • Code: Alles auswählen

        // The following assigns all _common_ variables that may be used at any point in a template.
        $template->assign_vars(array( 
davor füge ein:
  • Code: Alles auswählen

        $sql = 'SELECT u.user_id, u.username, u.username_clean, u.user_type, u.user_colour, s.session_time, s.session_viewonline 
            FROM ' . USERS_TABLE . ' u, ' . SESSIONS_TABLE . ' s
            WHERE u.user_id = s.session_user_id
                AND u.group_id IN (4, 5)
                AND s.session_time >= ' . (time() - ($config['load_online_time'] * 60)) . '
                AND s.session_viewonline = 1
            ORDER BY s.session_viewonline';
        $result = $db->sql_query($sql);
        if ($result)
        {
            $template->assign_vars(array(
                'S_STAFF_ONLINE'    => true,
            ));
        } 
finde in der overall_header des prosilvers: davor füge ein:
  • Code: Alles auswählen

    <!-- IF S_USER_LOGGED_IN -->
    <div id="fix" style="background-color:<!-- IF S_STAFF_ONLINE -->green<!-- ELSE -->red<!-- ENDIF -->;">
        <p><a href="">Administratoren</a><p>
        <p><a href="">Moderatoren</a></p>
    </div>
    <!-- ENDIF --> 
finde in der content.css des prosilvers die letzte Zeile und füge danach ein:
  • Code: Alles auswählen

    /* setup a fixed container */
    
    #fix {
        position: absolute;
        top: 2.8em; left: -17em;
        width: 18em;
        border: 1px solid silver;
        z-index: 100;
        background-color: green;
        color: white;
    }
    
    html>body #fix {
        position: fixed;
    }
    
    #fix img {
        height: 6.8em; float: right;
    }
    
    #fix:hover {
        left: 0em;
    }
    #fix a {
        font-weight: bold;
        text-decoration: none;
        color: white;
    } 
Nun hast Du eine "aufpoppende" Box, die rot ist, wenn keiner da ist und grün, falls ein "Chef" online ist, bzw. die garnicht für Gäste zu sehen ist. Du kannst dort dann die Admins & Mods verlinken, so daß denen einen PN geschrieben werden kann. Mußt natürlich das PN Schreiben erlauben im ACP. Oder Du kannst Jabber hinterlegen oder was immer bei demjenigen, der angesprochen werden soll hinterlegt ist.

Und Du mußt auch das ganze in der /includes/functions.php noch etwas aufbohren, damit die Usernamen angezeigt werden.

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 18:26
von Knowhow-Sauger
WOW! Dankeschön :grin:

Jedoch ist es mir schon sehr wichtig, wenn kein "Chef" online ist, dass die Liste dann gar nicht zu sehen ist und nicht Rot.
Und außerdem sollte die rote Box unbedingt auch für Gäste sichtbar sein!
Denn in meinem Forum dürfen ja auch Gäste Beiträge verfassen, von daher finde ich das schon sehr wichtig.
Und Du mußt auch das ganze in der /includes/functions.php noch etwas aufbohren, damit die Usernamen angezeigt werden.
Wie meinst Du das? Die Usernamen sollen ja gar nicht angezeigt werden, sondern nur die Mods und Admins!

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 18:35
von Miriam
Na dann bau es doch etwas in der overall_header.html um:

Code: Alles auswählen

    <!-- IF S_STAFF_ONLINE -->
    <div id="fix" style="background-color:#333333;">
        <p><a href="">Administratoren</a><p>
        <p><a href="">Moderatoren</a></p>
    </div>
    <!-- ENDIF -->  
Jetzt wird die Box nur angezeigt, wenn mindestens ein Staff-Member online ist. Die Namen derjenigen, die online sind, kannst Du mittels der SQL Query erfahren und dann die Benutzernamen nebst Link zum Posten ein PM in die Box einpflegen.

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 18:49
von Knowhow-Sauger
Super. Das werde ich gleich ausprobieren! :)
Jedoch sollte zusätzlich in der Box auch noch diese Grafik angezeigt werden:
http://www.kurzehosenforum.com/images/r ... ogross.png
Und natürlich NUR, wenn überhaupt ein Staff-Member online ist.
Füge ich dazu einfach
background-image
zu der Hintergrundfarbe hinzu?

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 19:26
von Miriam
Kannst Du so machen.
Würde aber eher das Bild so mit <img> Tag einpflegen. Wenn es ein Hintergrundbild ist, würde es wohl eher stören. Also zumindest der Lesbarkeit der Benutzernamen abträglich sein.

Dann kannst Du das #fix img in der CSS Datei anpassen.

Beachte auch, daß die Grafik nicht gefunden wird, falls Du in der Verzeichnishierarchie abtauchst (z.B., wenn Du im ACP bist). Arbeite also mit $phpbb_root_path und $config['ranks_path'], wenn möglich.
Lies auch hier: Klick.

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 19:27
von Knowhow-Sauger
Jetzt geht gar nichts mehr. :-?
Schau:

http://www.kurzehosenforum.com/index.ph ... 8270a95361

Könnte es daran liegen, dass bei "background" kein Hintergrund eingetragen wurde?

Code: Alles auswählen

<!-- IF S_USER_LOGGED_IN -->
<div id="fix" style="background-color:<!-- IF S_STAFF_ONLINE -->green<!-- ELSE -->red<!-- ENDIF -->;">
    <p><a href="">Administratoren</a><p>
    <p><a href="">Moderatoren</a></p>
</div>
<!-- ENDIF --> 

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 19:45
von Miriam
Fatal: ./cache/ is NOT writable.
Na dann starte mal Dein FTP Programm und ändere den CHMOD des Verzeichnisses /cache auf 777

Lies auch: KB:rechte.

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 20:16
von Knowhow-Sauger
Geht leider immer noch nicht!

schau hier:

http://www.kurzehosenforum.com/index.ph ... 8270a95361

Da muss ja irgendein Fehler in der Datei sein.. denn er sagt:

Code: Alles auswählen

Parse error: syntax error, unexpected $end in /home/.sites/110/site2750/web/cache/tpl_prosilver_overall_header.html.php on line 208
Oder muss ich die Rechte auch für alle Unterordner freigeben?

Das Blöde ist, dass ich jetzt nichtmal mehr in den Admin-Bereich komme.

Re: In der "Wer ist online-Liste" NUR Mods & Admins anzeigen

Verfasst: 19.05.2012 21:55
von Miriam
Was hast Du denn genau gemacht, bevor es nicht mehr funktionierte?