Seite 3 von 3

Re: Wohnort im UCP ausblenden

Verfasst: 01.09.2012 19:05
von BNa
Secretly hat geschrieben:Wenn ich Debug anschalte, bekomme ich jetzt auch die Meldung "Undefined index: viewlocation"
Seite: memberlist.php
Datei: [ROOT]/includes/session.php
Zeile: 2373

Code: Alles auswählen

	{
2372:		$var = ($data !== false) ? $data : $this->data['user_options'];
2373:		return phpbb_optionget($this->keyoptions[$key], $var);
	}
Falsche Zeile, Falsche Datei? Hier findet sich nix von 'viewlocation'.

Re: Wohnort im UCP ausblenden

Verfasst: 01.09.2012 19:22
von Secretly
Hm, okay. Ich hatte jetzt die session.php genommen, wegen "[phpBB Debug] PHP Notice: in file [ROOT]/includes/session.php on line 2373: Undefined index: viewlocation"

Ansonsten gibt es in der memberslist.php

Code: Alles auswählen

    'S_LOCATION'  => $user->optionget('viewlocation'),
welche dann wohl die Meldung auslöst?

Die Zeile war vor dem Update noch nicht dort, entferne ich sie aber, wird das "Feld" im Profil nicht mehr angezeigt, ändere ich es in "location" dann wird in der Meldung viewlocation gegen location ausgetauscht.

Re: Wohnort im UCP ausblenden

Verfasst: 01.09.2012 21:41
von Miriam
Der Fehler wird in der /includes/session.php hervorgerufen. Und zwar an besagter Stelle: return phpbb_optionget($this->keyoptions[$key], $var);
Es gibt in dem Objekt $user keine Keyoption 'viewlocation'. Du kannst das gern überprüfen, indem Du in der memberlist.php folgendes machst:
suche:

Code: Alles auswählen

        // Generate page      
davor füge ein:

Code: Alles auswählen

        var_dump($user->keyoptions);
Im Output, der ungefähr so aussieht:

Code: Alles auswählen

array(13) { ["viewimg"]=> int(0) ["viewflash"]=> int(1) ["viewsmilies"]=> int(2) ["viewsigs"]=> int(3) ["viewavatars"]=> int(4) ["viewcensors"]=> int(5) ["attachsig"]=> int(6) ["bbcode"]=> int(8) ["smilies"]=> int(9) ["popuppm"]=> int(10) ["sig_bbcode"]=> int(15) ["sig_smilies"]=> int(16) ["sig_links"]=> int(17) }
und bei Aufruf der memberlist.php generiert wird, wirst Du sehen, daß es keinen Index 'viewlocation' gibt.

Du fragst sie zwar ab:

Code: Alles auswählen

'S_LOCATION'  => $user->optionget('viewlocation'), 
es ist aber keine da. Deshalb meckert phpbb_optionget() das an.

Warum das so ist,... also warum keine 'viewlocation' da ist, mußt Du herausfinden.

Re: Wohnort im UCP ausblenden

Verfasst: 02.09.2012 00:05
von Secretly
Danke, ich weiß jetzt, dass es an dieser Änderung liegt und baue sie einfach wieder aus.

Re: Wohnort im UCP ausblenden

Verfasst: 02.09.2012 10:12
von Miriam
Entweder das... oder Du biegst es endgültig grade:

Finde in der /includes/sessions.php

Code: Alles auswählen

    // Able to add new options (up to id 31)
    var $keyoptions = array('viewimg' => 0, 'viewflash' => 1, 'viewsmilies' => 2, 'viewsigs' => 3, 'viewavatars' => 4, 'viewcensors' => 5, 'attachsig' => 6, 'bbcode' => 8, 'smilies' => 9, 'popuppm' => 10, 'sig_bbcode' => 15, 'sig_smilies' => 16, 'sig_links' => 17); 
und füge 'viewlocation' => 11, an einer sinnvollen Stelle ein.

finde in der /includes/ucp/ucp_prefs.php:

Code: Alles auswählen

                    'flash'            => request_var('flash', (bool) $user->optionget('viewflash')),
danach füge ein:

Code: Alles auswählen

                    'viewlocation'    => request_var('viewlocation', (bool) $user->optionget('viewlocation')),
finde in der /includes/functions_convert.php

Code: Alles auswählen

        'popuppm'        => array('bit' => 10, 'default' => 0),
danach füge ein:

Code: Alles auswählen

        'viewlocation'    => array('bit' => 11, 'default' => 1),
Ich habe es nicht komplett durchgecheckt, aber es sollte so passen.

Weitere Lektüre: Klick.