User anonymous

Allgemeiner Support zum phpBB 2 Board und phpBB 2 Modifikationen
Forumsregeln
Auch wenn hier der Support für phpBB 2 weiterhin aufrecht erhalten bleibt, weisen wir darauf hin, dass das phpBB 2 nicht mehr offiziell unterstützt und weiterentwickelt wird!
Antworten
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

User anonymous

Beitrag von drkmnn666 »

hallo,

wie schaffe ich es den zähler für den user anonymous komplett zu deaktiveren. sodass vom ihm absolut nichts gezählt wird. danke
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Was soll denn nicht gezählt werden?
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

einfach alles, im endeffekt geht es mir darum, ich habe den postcount stars mod im einsatz, welcher die anzahl der beiträge im vbulletin-stil darstellt. allerdings hat jener bei mir die unangenehme eigenschaft, wenn ich einen user oder er sich selber löscht, dann jener als anonymous (klar) im forum gilt (name bleibt erhalten). allerdings wird bei anonymous dann der stil der posts so dargestellt, als hätte er 24732657 (zahl nicht im kopf) posts und somit wird das template zerstört in der breite. nach einem resync mit db maintenance ist wieder alles ok. bloß ich kann ja nicht laufend resyncs durchführen etc. deshalb war mein gedankengang alles komplett für ihn zu deaktivieren, und somit null beiträge und somit auch keine zerstörung des templates. danke

ps: habe dies hier gefunden. allerdings gefällt mir daran nicht, dass es bei allen usern gilt. wer weiß, ob es überhaupt mein hauptproblem lösen würde.
Zuletzt geändert von drkmnn666 am Do 17.Jul, 2008 02:20, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

einfach alles
Das ist recht umfangreich und sehr unpräzise formuliert...

Die Beiträge selber werden dem Gast-Account wie jedem andere auch abgezogen oder hinzugezählt, ist ja auch zunächst logisch nicht falsch.
Warum dann also nicht eher die Werte für den Gast-Account nicht einfach aus den einzelnen Anzeigen entfernen?
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

mmmhhh, klar... wie entferne ich die denn?
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

<!-- vorkaumodus=on -->

Da gibt es mehrere Methoden.
Die Einfachste ist es, die Angaben z. B. in der viewtopic_body.tpl nur für reg. User anzeigen zu lassen.
Also wie folgt:

Code: Alles auswählen

#
#-----[ OPEN ]-----
#
viewtopic.php

#
#-----[ DELETE ]-----
#
		'POSTER_POSTS' => $poster_posts,

#
#-----[ FIND ]-----
#
$template->pparse('body');

#
#-----[ BEFORE, ADD ]-----
#
$template->assign_block_vars('postrow.reg_data', array(
		'POSTER_POSTS' => $poster_posts,
);

#
#-----[ OPEN ]-----
#
templates/subSilver/viewtopic_body.tpl

#
#-----[ FIND ]-----
#
		<td width="150" align="left" valign="top" class="{postrow.ROW_CLASS}"><span class="name"><a name="{postrow.U_POST_ID}"></a><b>{postrow.POSTER_NAME}</b></span><br /><span class="postdetails">{postrow.POSTER_RANK}<br />{postrow.RANK_IMAGE}{postrow.POSTER_AVATAR}<br /><br />{postrow.POSTER_JOINED}<br />{postrow.POSTER_POSTS}<br />{postrow.POSTER_FROM}</span><br /></td>

#
#-----[ REPLACE WITH ]-----
# // Wichtig: Der hier umschlossene Platzhalter und die dazu gehörenden Switches müssen jeweils in einer eigenen Zeile stehen!
		<td width="150" align="left" valign="top" class="{postrow.ROW_CLASS}"><span class="name"><a name="{postrow.U_POST_ID}"></a><b>{postrow.POSTER_NAME}</b></span><br /><span class="postdetails">{postrow.POSTER_RANK}<br />{postrow.RANK_IMAGE}{postrow.POSTER_AVATAR}<br /><br />{postrow.POSTER_JOINED}<br />
		<!-- BEGIN reg_data -->
		{postrow.reg_data.POSTER_POSTS}<br />
		<!-- END reg_data -->
		{postrow.POSTER_FROM}</span><br /></td>
<!-- vorkaumodus=off -->
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

danke, allerdings meinte ich die komplette funktion zu deaktivieren und nicht das verschwinden lassen in der tpl. danke
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Moment:
Nur für Gäste wird nichts angezeigt, sie hiervon auszunehmen ist aber logisch falsch!
Daher kannst Du diese Funktion nicht einfach ausbauen sondern höchstens umbauen und das dann aber durch das gesamte Forum, was deutlich schwerer und umfangreicher ist (je nach vorhandener MODs), als lediglich die Anzeige zu steuern.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

gäste haben bei mir keinerlei rechte, wenn nur leserechte... also gibt es keine möglichkeit, außer die oben schon genannte in post 3
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Es geht nicht um die Rechte der Gäste, sondern darum, wo Gastdaten angezeigt werden können und damit "vermeintlich falsche" Angaben auszublenden sind.

Noch einmal:
Falsch sind die Angaben nicht, sie sind nur logisch nicht zutreffend.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

die anzeige der gäste ist egal, ich möchte einfach nur, dass für sie keine posts gezählt werden. ob nun plus oder minus, egal.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Das ist aber logisch falsch!
Der Gast Account wird überall wie jeder andere User auch behandelt, also mit plus und minus bei Posts.
Wenn diese Angabe nun permanent auf 0 gesetzt wird, kann es zu anderweitigen Fehlern kommen, wenn man einen weiteren Post eines Gasts löscht.
Daher ist es eben geschickter, die Anzeige auszublenden und eben NICHT die Routinen des Boards hieraus anzupassen, daß es eben nicht nur eine, sondern viele Stellen im Board anzupassen wären und eben durch alle installierten MODs hindurch, sofern sie hier eine Rolle spielen.
Eine Arbeit, die ich mir aber auch gerne von Dir bezahlen lasse :D
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

sehe ich anders, da mein board darauf konzipiert ist, dass gäste keinerlei rechte haben. sie können nur lesen. falls sich ein user bei mir löscht, dann behalten die beiträge seinen namen. natürlich wird er dann als gast dargestellt. aber warum sollte ich seine beiträge dann löschen wollen, ist unlogisch. auch habe ich einen mod mit dem ich posts anderen usern per namen oder id wieder zuordnen kann, falls sich mal jemand wieder anmelden möchte.

demzufolge hätte es keinerlei konsequenzen, wenn du mir verrätst, wie ich nur den gast vom zähler ausschließe. das der beitragszähler nicht reduziert wird, wenn man posts löscht, dafür habe ich einen mod, allerdings wie schon geschildert gilt dies dann für alle und dies will ich nicht. danke für die antwort.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Noch mal:
So ohne weiteres ist es nicht nur der Zähler, der ausgeschaltet wird, sondern das gesamte Board muss untersucht werden, wo der Zähler für die Gäste noch eine Rolle spielt.
Und das ist eben eine Menge Arbeit, die ich von meiner Seite nicht kostenlos anbiete.

Und vor allem:
Warum soll der Zähler abgeschaltet werden, wenn Gäste doch nur lesen, aber nicht posten können?
Hast Du da Dir jetzt nicht selber wiedersprochen?

Wenn User gelöscht werden, erhält der Gast-Account die Beiträge zugeschlagen.
Da ich ja Dein Board nicht kenne, kann ich auch nicht sagen, was hier gemacht werden muss, um eben diesen Zuschlag nicht in Zahl auszudrücken.

Wie gesagt: Die Zählung schadet ja nicht, diese abzuschalten ist aber aufwendiger, als lediglich die Anzeige zu unterdrücken ;)
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

ok, vielleicht hab ich mich mißverständlich ausgedrückt, aber es soll allein der zähler für die posts deaktiviert sein.

nein, ich widerspreche mir nicht, siehe post 3.
Zuletzt geändert von drkmnn666 am Fr 18.Jul, 2008 10:42, insgesamt 1-mal geändert.
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

Ja, aber das sagte ich doch schon auch alles:

1. Der MOD, mit dem sich die User selber löschen können, wandelt die Beiträge in Gastposts um.
2. Der Gast-Account bekommt dann wohl die Posts hinzugezählt, was ja eigentlich Blödsinn ist, also ein Fehler in dem MOD.
3. Beim Löschen von Posts, also gerade Gast-Posts, muss man darauf achten, daß diese nicht vom Gast-Account abgezogen werden, damit eben die Zahl nicht negativ läuft, wenn anderweitig nicht hinzugezählt werden darf.

Was aber, wenn nun zunächst (und glaub mit: nicht "mal eben") der Post-Zähler in deinem gesamten Board für den Gast-Account erfolgreich abgeschaltet wurde?
Es wird dann in den Posts angezeigt, daß der Gast "0" Posts hat, also eine dann falsche, die man dann wieder ausblenden müsste, also mein Code aus Post #6.

Und nun beantworte mir eine einfache Frage:
Soll der Zähler auf die schnelle Art oder "sauber" aus Deinem Board entfernt werden?
Lösungen:
1. Füge in der page_header.php diesen Code ein:

Code: Alles auswählen

$sql = "UPDATE phpbb_users SET user_posts = 0 WHERE user-id = -1";
$db->sql_query($sql);
und das möglichst vor

Code: Alles auswählen

// Add no-cache control for cookies if they are set
//$c_no_cache = (isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_sid']) || isset($HTTP_COOKIE_VARS[$board_config['cookie_name'] . '_data'])) ? 'no-cache="set-cookie", ' : '';

// Work around for "current" Apache 2 + PHP module which seems to not
// cope with private cache control setting
if (!empty($HTTP_SERVER_VARS['SERVER_SOFTWARE']) && strstr($HTTP_SERVER_VARS['SERVER_SOFTWARE'], 'Apache/2'))
{
	header ('Cache-Control: no-cache, pre-check=0, post-check=0');
}
else
{
	header ('Cache-Control: private, pre-check=0, post-check=0, max-age=0');
}
header ('Expires: 0');
header ('Pragma: no-cache');

$template->pparse('overall_header');
Damit wird bei jedem Seitenaufruf in Deinem Board die Anzahl Posts des Gast-Accounts auf 0 gesetzt, schnell, unkompliziert und ohne irgendwelche anderen phpBB-Dateien oder MODs anzupassen, aber auch die unsauberste Lösung!

2. Man schaut sich den von Dir installierten MOD an, mit dem sich die User selber löschen können, um zu schauen, was er mit dem Postzähler treibe und dazu auch den phpBB eigenen Postzähler beim Erstellen/Löschen von Posts sowie den Rest des Boards, wo der Postzähler noch manipuliert werden könnte.
Dauer: Unbekannt
Aufwand: Unbekannt
Kosten (wenn ich das machen soll): Unbekannt

Bei beiden Lösungen muss aber dennoch die Anzeige der Posts für den Gast beim Post ausgeblendet werden, denn er wäre so oder so ja falsch und auch nach Deinem Wunsch eben überflüssig dargestellt.
Und wenn man den Zählerstand dann auch so oder so ausblenden muss, weil er eben falsch, ungewollt und überflüssig ist, kann man sich den Rest eigentlich auch schenken, oder ;)
Zuletzt geändert von oxpus am Fr 18.Jul, 2008 10:55, insgesamt 1-mal geändert.
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
drkmnn666
Beiträge: 388
Registriert: Mi 23.Jan, 2008 17:29

Beitrag von drkmnn666 »

na der mod ist der self-delete, dazu hast du glaube auch den fix mit dem usernamen geschrieben und ja die ausblendung müsste dann sein, obwohl mir dies auch nicht so recht gefällt. weil wie schon geschrieben bleibt ja der username erhalten. demzufolge wäre es praktisch, rein theoretisch die posts nicht nach id zuzuordnen, sondern nach benutzername. jener dürfte dann natürlich nur einmal vorkommen und dann nie wieder, um keine falschen zuordnungen zu treffen.

die idealste lösung wäre, wenn user x sich löscht und dann steht immer beim letzten post, sein name, klar, 66 posts und gut ist. aber dies ist bestimmt nicht machbar iwie.

*ironie* und nein, ich möchte dich nicht reicher machen. dazu müß´te ich erst in den keller gehen und meinen farbkopierer anwerfen *ironie*
Benutzeravatar
oxpus
Administrator
Beiträge: 28735
Registriert: Mo 27.Jan, 2003 22:13
Wohnort: Bad Wildungen
Kontaktdaten:

Beitrag von oxpus »

ich möchte dich nicht reicher machen
Ist auch nicht beabsichtigt und letztlich Deine Entscheidung.

Für den Self-Delete MOD hatte ich noch kein Add-On verfasst, jedenfalls kann ich mich aktuell an kein Add-On von mir erinnern.
Wie dem aber auch sei: Eine Zuordnung nach Username wäre sicherlich auch möglich, da jeder Username bereits nur einmal vorkommen darf.
Nur wäre diese Lösung ungeschickt, da eine Abfrage auf Strings immer langsamer ist als gegen Zahlen, wie sie User- und Post-IDs nun mal darstellen.
Daher (und aus mir spontan einfallenden ein Dutzend anderen Gründen) wurde das auch nie gemacht.
ja die ausblendung müsste dann sein, obwohl mir dies auch nicht so recht gefällt
Wie jetzt nun: Der Username bleibt doch stehen, es wird doch nur ausgeblendet: "Beiträge: 0". Oder, sofern die Post-Anzahl für den Gast-Account nicht korrigiert wird z. B. "Beiträge: 4711".
Beides eben logisch falsch, daher sollte es ausgeblendet werden und der Rest wäre einfach nur im Hintergrund. Stört ja dann auch nicht weiter, denn das Board wird dadurch ja nicht schneller, wenn man die Routinen für den Gastaccount anpasst. Denn auf der einen Seite kommt eine Bedingung und ggf. noch etwas PHP-Code dazu, auf der anderen Seite würde eine Abfrage gegen die Datenbank wegfallen...

Daher wäre es wirklich zu überlegen, wie "sauber" man es wirklich haben will:
Ausblenden macht auf jeden Fall Sinn, unabhängig davon, in wie weit im Hintergrund die Daten auch für den Gast-Account eben beackert werden oder nicht.
Mich persönlich würde das an dieser Stelle dann nicht mehr weiter stören, wenn ich die Daten nur ausblende, denn alles andere ist wirklich schon mehr Arbeit (abgesehen von der "Notlösung" über die page_header.php), die man ja nicht wirklich angehen und bezahlen muss (wäre auch für mich, selbst wenn Du mir den Auftrag dafür geben würdest, nicht toll, da es wirklich eine Menge Arbeit bedeutet).
Karsten Ude
-={ Das Mädchen für alles }=-
Kein Support per Messenger, Email oder PN! Unaufgeforderte Nachrichten werden ignoriert!
No support per Messenger, Email or PM. Each unasked message will be ignored!
Antworten