Seite 3 von 6

Verfasst: 14.05.2005 20:44
von -Jo-
Wenn es jetzt einen offiziellen Bugfix dafür gibt, muss ich dann den von andreasOymann genannten Vorschlag (der ja auch gut funktionierte!) wieder komplett deinstallieren und aif den offiziellen Bugfix ändern, oder kkann ich einfach die Zeile

Code: Alles auswählen

            WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level != " . ADMIN; 
in

Code: Alles auswählen

          WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level = " . MOD;
ändern?

Oder "beißen" sich die beiden Code-Änderungen?

Verfasst: 14.05.2005 21:47
von Christian_N
Ein beißen wird da wohl kaum geben, da du eigentlich nur die änderrung von andreasOymann in den offizelle bugfix umänderst also die

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level != " . ADMIN; 
änderst ja dann in

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level = " . MOD;
Somit hast dann den offizelle Bugfix drin und von andreasOymann den drausse.... da bei ihm eigentlich nur die reihe:

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ")";
in

Code: Alles auswählen

WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level != " . ADMIN; 
geändert wurde, er hatte es allerdings größer eingegrenzt also ein größere teil zum suchen gemacht und somit ein großere teil zum ändern aber am ende wurde nur die eine reihe geändert wenn mal die vergleichen tun fällt es auf.

Somit brauchst den von andreasOymann nicht erst löschen oder so da sobald die änderrung machst so wie sie selbst schriebst hast die reihe von andreasOymann in den offizelle Bugfix geändert :)

Wieso allerdings bei dem offizelle Bugfix des level MOD lauten tut, weiss ich nicht so recht, da ich wie ich las nur die Adminrechte verloren gegangen sind?

Dann müsste ja auch ein Moderator die Moderatoren rechte verloren haben damit, so das dann jetzt durch MOD dann Moteratoren und Admin die rechte behalten, oder versteh ich da was falsch?

Gruß SuesseMaus28884

Verfasst: 14.05.2005 22:16
von pokepika
SuesseMaus28884 hat geschrieben:Wieso allerdings bei dem offizelle Bugfix des level MOD lauten tut, weiss ich nicht so recht, da ich wie ich las nur die Adminrechte verloren gegangen sind?

Dann müsste ja auch ein Moderator die Moderatoren rechte verloren haben damit, so das dann jetzt durch MOD dann Moteratoren und Admin die rechte behalten, oder versteh ich da was falsch?
!= ADMIN
und
= MOD

da sind unterschiede im gleich.

Verfasst: 14.05.2005 22:19
von Christian_N
versteh ich nicht so ganz, jedenfalls schon klar das da unterschieden geben, ADMIN = nur admins MOD = Moderatoren und Admins, aber wieso wurde beim offizelle Bugfix MOD also Moteratoren und Admins gemacht, haben auch Moteratoren die rechten verloren gehabt?

Verfasst: 14.05.2005 22:35
von pokepika
!= ADMIN
schließt alle anderen mit ein, also MOD, USER und evtl. auch andere User, die bei Mods hinzukommen.

= MOD
meint nur die Moderatoren.

Verfasst: 15.05.2005 02:02
von Christian_N
Aso ist das alles klar, aber dann ist doch wieder das Problem das die ADMINs die rechte verlieren?!?!? etwas komisch irgendwie.

Verfasst: 15.05.2005 07:10
von Bootenks
Nein die Admins verlieren da ihre Adminrechte nicht da wie schon erwähnt

!= ADMIN bedeutet dass nur der user_level ADMIN in diesem Zusammenhang nicht in diese SQL Abfrage eingespannt wird

= MOD bedeutet dass ausschliesslich die Mods in der SQL Abfrage berücksichtigt werden (was logischerweise damit das selbe wie != ADMIN behinhaltet und dazu noch den SQL Anweisung für alle ausser user_level MOD blockiert)

Was ich nicht weiss ist ob es den Bug mit den MOD´s fixed... aber den hatte ich bis dato auch noch nicht persönlich gesehen.

Code: Alles auswählen

		if (sizeof($group_user))
	      {
      		$sql = "UPDATE " . USERS_TABLE . "
	            	SET user_level = " . USER . "
	            	WHERE user_id IN (" . implode(', ', $group_user) . ") AND user_level = " . MOD;
Diese Funktion die muss man auch mal verstehn ^^". Die wird genau dann angewendet wenn sizeof($group_user) existiert sprich mind. 1 ist. $group_user wird mit den id´s der Gruppenmitglieder als Array gespeichert. Das implode in der WHERE CLAUSE dient ja nur das Array group_user mit Kommata jeweils hintereinader zu schreiben. Also besagt die Where Abfrage: Wenn die user_id gleich der id in dem array group_user und das user_level gleich MOD ist, dann und nur dann wird das user_level der besagten Person geändert. Hier komme ich zu dem Punkt an dem ich die Funktion nicht mehr in ihrer "Funktion" begreife. Wozu sollte da das Level verändert werden?? Würde mich freuen wenn mich da einer aufklärt.

Verfasst: 15.05.2005 10:40
von Helmut
Hallo,

also bei mir schaut der Bereich in der admin/admin_ug_auth.php etwas anders aus.

Code: Alles auswählen

		if ( $unset_mod != '' )
		{
			$sql = "UPDATE " . USERS_TABLE . " 
				SET user_level = " . USER . " 
				WHERE user_id IN ($unset_mod)";
			if( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, "Couldn't update user level", "", __LINE__, __FILE__, $sql);
			}
		}

Ich habe am 25.04.2005 die deutsche Version vom 2.0.14 hier heruntergeladen und die Version von der admin_ug_auth.php ist : $Id: admin_ug_auth.php,v 1.13.2.5 2004/03/25 15:57:20 acydburn Exp $. Soll ich die alte admin_ug_auth.php einfach durch die neue admin_ug_auth.php vom aktuellen Download des 2.0.15 Deutsch ersetzen, oder würde das Probleme machen?

Gestern habe ich das Patsch 2.0.14_to_2.0.15 heruntergeladen und ausgeführt, somit hat das Forum nun die Version 2.0.15.

Gruß Helmut


P.S. Es ist nicht mein Forum, sondern ich habe es für jemand anderes eingerichtet.

Verfasst: 15.05.2005 11:10
von oxpus
Wenn an der Datei nie was geändert wurde, kannst Du die einfach austauschen.

Patch hilft bei mir nicht.

Verfasst: 17.05.2005 00:28
von daPeda
Vor eineinhalb Stunden habe ich die Admin-Rechte verloren, nachdem ich lediglich eine Gruppe angelegt hatte - es war die erste.

Ich habe sowohl den hier ursprünglich genannten != ADMIN- als auch dann den 'offiziellen' Patch in admin_ug_auth.php gemacht und werde noch immer als user ohne Administrator-Rechte geführt.

In der Datenbank nachgesehen habe ich die Rechte allerdings.

Irgendwas gröberes hat's hier.

Auf 2.0.6 (die einzig ältere Version die ich noch bei mir gefunden habe) kann ich wohl nicht zurückgehen, da es ja seither eine Änderung in der DB-Struktur gegeben hat, oder?