Mit JavaScript Wer ist online Block Refreshen!!!

Begonnen von Sevdam, 27 Oktober 2007, 21:17:00

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Sevdam

Hallo!!!

Also ich habe das ganze Forum auf dem Kopf gestellt, mit der Hoffnung auf meine Frage bzw Problem eine Antwort bzw Lösung zufinden, leider ohne erfolg.
Ich habe im Forum gelesen das dies eventuell mit JavaScript bzw iframe gehen würde, ja leider habe ich von beiden keine Ahnung, also habe ich mich auf die suche gemacht und habe ein JavaScript endeckt, das refresh nur ich weiss nicht wo ich dies einfügen muss und wie ich es dem wer ist online block anpassen kann, würde mich riessig freuen  wenn mir jemand dabei helefen könnte  :red:

Hier der Code:
<html>

<head>
<title>Refresh JavaScript Example</title>
<noscript>
<!--
    We have the "refresh" meta-tag in case the user's browser does
    not correctly support JavaScript or has JavaScript disabled.

    Notice that this is nested within a "noscript" block.
-->
<meta http-equiv="refresh" content="2">

</noscript>

<script language="JavaScript">
<!--

var sURL = unescape(window.location.pathname);

function doLoad()
{
    // the timeout value should be the same as in the "refresh" meta-tag
    setTimeout( "refresh()", 2*1000 );
}

function refresh()
{
    //  This version of the refresh function will cause a new
    //  entry in the visitor's history.  It is provided for
    //  those browsers that only support JavaScript 1.0.
    //
    window.location.href = sURL;
}
//-->
</script>

<script language="JavaScript1.1">
<!--
function refresh()
{
    //  This version does NOT cause an entry in the browser's
    //  page view history.  Most browsers will always retrieve
    //  the document from the web-server whether it is already
    //  in the browsers page-cache or not.
    // 
    window.location.replace( sURL );
}
//-->
</script>

<script language="JavaScript1.2">
<!--
function refresh()
{
    //  This version of the refresh function will be invoked
    //  for browsers that support JavaScript version 1.2
    //
   
    //  The argument to the location.reload function determines
    //  if the browser should retrieve the document from the
    //  web-server.  In our example all we need to do is cause
    //  the JavaScript block in the document body to be
    //  re-evaluated.  If we needed to pull the document from
    //  the web-server again (such as where the document contents
    //  change dynamically) we would pass the argument as 'true'.
    // 
    window.location.reload( false );
}
//-->
</script>
</head>

<!--
    Use the "onload" event to start the refresh process.
-->
<body onload="doLoad()">

<script language="JavaScript">
<!--
    // we put this here so we can see something change
    document.write('<b>' + (new Date).toLocaleString() + '</b>');
//-->
</script>


</body>

</html>


Schonmal ein dickes Dankeschön an alle!!!

breakdancer

Hi,

verstehe Dein Anliegen nicht ganz. Die online Zahlen refreshen sich doch selbstständig, die Aktualisierungszeit kannt Du im System sogar selbst bestimmen.

Was hast Du denn vor ?

Liebe Grüße

Markus

Sevdam

Erstmal danke für die schnelle anwort, leider ist es nich so wie du es sagst, wenn user online sind und mal einfach für ein paar minuten nichts machen, dann verschwinden sie autmatisch aus der wer ist online block, aber ich will das nicht, auch wenn sie sich einfachmal auf der startseite aufhalten, sollen sie solange erschenen bis sie enweder auslogen bzw die seite ganz verlassen...

hier habe ich noch einen code gefunden aber wie gesagt weiss ich nicht wie ich es einfügen und wo einfügen muss...

<script language="javascript">
function IM(IM) { var MainWindow = window.open (IM, "_blank","width=360,height=200,toolbar=no,location=no,menubar=no,scrollbars=yes,resizeable=no,status=no");}


function fenster()
{
window.open("online.php?op=allusers","buddywindow","width=360,height=200,toolbar=no,location=no,menubar=no,scrollbars=yes,resizeable=no,status=no");
}
</script><script language="javascript">
function PM(PM) { var MainWindow = window.open (PM, "_blank","width=500,height=600,toolbar=no,location=no,menubar=no,scrollbars=yes,resizeable=no,status=no");}


function fenster()
{
window.open("online.php?op=allusers","buddywindow","width=360,height=200,toolbar=no,location=no,menubar=no,scrollbars=yes,resizeable=no,status=no");
}
</script><LINK REL="StyleSheet" HREF="themes/OpenNuke/style/buddy.css" TYPE="text/css">


<body onload=setInterval('self.location.reload()',50000) bgcolor=#ffffcc text=#000000 link=#ffffcc alink=#ffffcc vlink=#ffffcc><a href="javascript:IM('online.php?op=compose&to=aiko')"> <img src="images/buddy/email.gif" align="absmiddle" border="0"></a><a


Hoffe habe mich jetzt etwas besser ausgedrückt  :red:

breakdancer

@Admins: Stimmt das so ?

Wenn ja, sollte man das nicht als Bug betrachten und mal tracken ?

LG

Markus

Eismann1976

Also selbst wenn ich 3 Stunden auf der HP bin und sie nur im Task ist bekomm ich Nachrichten. Also müssen mich die Leute auch online sehen. Müßte man mal mit einem zweiten Account testen.
LG Eismann


Kein Support per PN/ICQ/MSN ect.
Bitte schreibt eure Frage ins Forum, so haben Alle was von der Antwort.
Viele Antworten findest du auch im DOKUWIKI



http://www.wtj-clan.de | pragmaMx 0.1.11.2 &  1.12 RC2 | PHP: 5.2.9 | mysql: 5.1.33 | apache: 2.2.11 (Win32) & Microsoft-IIS/7.5

Sevdam

was meinst du mit einem zweiten account testen? Habe ich ja wenn ich mich mit mozila mit einem nik anmelde und IE einem anderen nik so bin ich wenn ich nur auf der start seite 5 minuten aufhalte und sonst nichts mache, von der wer ist online liste verschwunden  :gruebel:

lausbub

Hi Sevdan

geh in deine include Ordner da findest du die datei mx_baseconfig.php
da änderst du in Zeile 46


$vkpInactiveMins = (empty($vkpInactiveMins)) ? (int)$vkpInactiveMins : 5; # Standard 5


einfach den Standartwert auf die minutenanzahl die du brauchst oder möchtest und speicherst sie wieder ab fertig. Schon werden die User entsprechend länger online Angezeigt auch wenn sie nur anwesend sind.

Hoffe das hilft dir weiter

Gruß
Thorsten
PHP Version: 5.2.11
MySql Version: 5.0.51a
Server-Version: Apache/2.2.8 (Linux/SUSE)
Pragma 1.12

lausbub

Wollt noch kurz was dazu sagen, wäre auf jedenfall eine Überlegung wert, es eventuell in einer der nächsten Versionen über das Adminmenü flexible einstellen zu können  :gruebel:



gruß und gute nacht  :puzzled:

Thorsten
PHP Version: 5.2.11
MySql Version: 5.0.51a
Server-Version: Apache/2.2.8 (Linux/SUSE)
Pragma 1.12

JoergK

Zitat von: neuling321 am 28 Oktober 2007, 01:35:42
Wollt noch kurz was dazu sagen, wäre auf jedenfall eine Überlegung wert, es eventuell in einer der nächsten Versionen über das Adminmenü flexible einstellen zu können  :gruebel:
:puzzled:

Das ist doch schon urlange einstellbar:
Adminmenü
    -> Einstellungen
        -> Abschnitt: Sonstige Einstellungen
            -> Aktualisierungsintervall für die "wer ist Online" Anzeige:


Gruß,
Jörg


Nobody is perfect ... so don't call me Nobody

lausbub

Zitat von: JoergK am 28 Oktober 2007, 02:23:58
Zitat von: neuling321 am 28 Oktober 2007, 01:35:42

:puzzled:

Das ist doch schon urlange einstellbar:
Adminmenü
    -> Einstellungen
        -> Abschnitt: Sonstige Einstellungen
            -> Aktualisierungsintervall für die "wer ist Online" Anzeige:



Hi JOERGK
Ja diese einstellungsmöglichkeit gibt es schon lange, jedoch wirkt es sich nicht auf den Wer ist online block aus.
Wie lange es dauert bis ein User stumm ist, da gibt es eben leider nur die lösung die ich oben gepostet habe.

Gruß
thorsten
PHP Version: 5.2.11
MySql Version: 5.0.51a
Server-Version: Apache/2.2.8 (Linux/SUSE)
Pragma 1.12

Sevdam

Zitat von: neuling321 am 28 Oktober 2007, 01:26:51
Hi Sevdan

geh in deine include Ordner da findest du die datei mx_baseconfig.php
da änderst du in Zeile 46


$vkpInactiveMins = (empty($vkpInactiveMins)) ? (int)$vkpInactiveMins : 5; # Standard 5


einfach den Standartwert auf die minutenanzahl die du brauchst oder möchtest und speicherst sie wieder ab fertig. Schon werden die User entsprechend länger online Angezeigt auch wenn sie nur anwesend sind.

Hoffe das hilft dir weiter

Gruß
Thorsten

Erstmal vielen Dank für die Hilfe, ja es hat zwar gekappt, aber wenn der user wirklich nicht mehr online ist steht er auf der online liste :( aber ich will wenn er auf der seite ist das er online bleibt, und wenn er sich ausloogt bzw die seite wirklich ganz verlässt das er auch auf der online seite verschwindet...