You are not logged in.

1

Friday, September 12th 2008, 9:21pm

useroptions.xml Frage

Hallo,

Was muss ich in der useroptions.xml angeben,
wenn ich ein Feld im ACP haben möchte ( was admins einsehen/ändern können), aber nicht in den Profil-Einstellungen auftaucht?


Ich bitte um hilfe.

2

Friday, September 12th 2008, 10:20pm

Da häng ich dann nochmal nen Querverweis an mein Thema dran:
Kategorien der useroptions.xml verstecken

3

Tuesday, September 16th 2008, 2:02pm

Ich hab keine Ahnung obs so nun korrekt ist, aber es funktioniert zumindest...

eventlistener.xml

Source code

1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE data SYSTEM "http://www.woltlab.com/DTDs/eventListeners.dtd">
<data>	
	<import>
 		<eventlistener>
			<eventClassName><![CDATA[UserCPMenu]]></eventClassName>
			<eventName><![CDATA[buildMenu]]></eventName>
			<listenerClassFile><![CDATA[lib/system/event/listener/UserCPMenuListener.class.php]]></listenerClassFile>
 		</eventlistener>
	</import>
</data>


UserCPMenuListener.class.php

PHP Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?php
require_once(WCF_DIR.'lib/system/event/EventListener.class.php');

/*
 * removes the category and menuItem from the UserCPMenu
 */
class UserCPMenuListener implements EventListener
{
    public function execute($eventObj$className$eventName)
    {
        $categoryName 'wcf.user.option.category.myCategory';
        
        $parentCategoryName $eventObj->menuItemList[$categoryName]['parentMenuItem'];
        
        unset( $eventObj->menuItemList[$categoryName] );
        
        foreach ( $eventObj->menuItems[$parentCategoryName] as $key => $category )
        {
            if ( $category['menuItem'] == $categoryName )
            {
                unset( $eventObj->menuItems[$parentCategoryName][$key] );
                break;
            }
        }
    }
}
?>


In der 11. Zeile nur bei $categoryName = 'wcf.user.option.category.myCategory'; den name rein von dem was weg soll.

mfg

Tobias87

Member

  • "Tobias87" is male

Posts: 394

Location: Mainz

Occupation: Student: Geoinformatik u. Vermessung

  • Send private message

4

Thursday, September 18th 2008, 11:49pm

Meinst du sowas wie das Admin.- Kommentarfeld im Profil (im ACP)?

Mit der useroption.xml beschäftige ich mich auch momentan. Aber ich glaub dafür braucht man noch Nichtmals ein php-code.

Werde morgen mal in Ruhe nachschauen.

Gruß
Tobias
WoltLab Community im IRC - Smalltalk only
Community4WCF (C4W) - aktuell: IRC User Online
Visit my profile!

5

Friday, September 19th 2008, 8:16am

Na da bin ich mal gespannt was ich wieder falsch gemacht oder verstanden habe gg

Ich setze follgende useroptions.xml (Beispiel) ein:

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE data SYSTEM "http://www.woltlab.com/DTD/options.dtd">
<data>
	<import>
		<categories>
			<category name="mycategory">
				<parent><![CDATA[settings]]></parent>
			</category>
		</categories>
	
		<options>
			<option name="myIntegerInputField">
		        <categoryname><![CDATA[mycategory]]></categoryname>
		        <optiontype><![CDATA[integer]]></optiontype>
		        <defaultvalue><![CDATA[0]]></defaultvalue>
		        <editable><![CDATA[3]]></editable>
		        <visible><![CDATA[3]]></visible>
		        <showorder><![CDATA[1]]></showorder>
			</option>
		</options>
	</import>
</data>


Und dadurch entsteht dann eine leere Kategorie:
index.php?page=Attachment&attachmentID=28485

Der Sprich der Eintrag funktioniert und wird wie mit dem editable und visible Flag eingestellt nicht angezeigt, aber die Kategorie bleibt auch wenn Sie dann leer ist.
Über den EventListener lösche ich dann nur die "leere" Kategorie aus dem Array damit sie nicht angezeigt wird.

Wenn du eine Lösung ohne EL findest immer her damit, ich bin schließlich Leie :P

mfg

Tobias87

Member

  • "Tobias87" is male

Posts: 394

Location: Mainz

Occupation: Student: Geoinformatik u. Vermessung

  • Send private message

6

Friday, September 19th 2008, 5:30pm

Hallo,

ich glaub wir reden von unterschiedlichen Funktionen.
wenn ich ein Feld im ACP haben möchte ( was admins einsehen/ändern können), aber nicht in den Profil-Einstellungen auftaucht?
Meinst du sowas wie das Admin.- Kommentarfeld im Profil (im ACP)?
Das funktioniert eigentlich mit:

XML

1
2
<editable><![CDATA[3]]></editable>
<visible><![CDATA[3]]></visible>


PS: In dieser Sache bin ich aber auch Leie ;)

Gruß
Tobias
WoltLab Community im IRC - Smalltalk only
Community4WCF (C4W) - aktuell: IRC User Online
Visit my profile!

7

Friday, September 19th 2008, 9:40pm

Das funktioniert eigentlich mit:

XML

1
2
<editable><![CDATA[3]]></editable>
<visible><![CDATA[3]]></visible>


PS: In dieser Sache bin ich aber auch Leie ;)

Gruß
Tobias


Genau, eigentlich, aber wie man auf meinem Screenshot sieht auch nur eigentlich...

Tobias87

Member

  • "Tobias87" is male

Posts: 394

Location: Mainz

Occupation: Student: Geoinformatik u. Vermessung

  • Send private message

8

Friday, September 19th 2008, 9:44pm

Warst du da als Admin angemeldet? Dann erstelle mal einen normalen User und schau es dir dann mal an. Der Admin sieht es im ACP und auch im Profil im Forum, aber sonst niemand.
WoltLab Community im IRC - Smalltalk only
Community4WCF (C4W) - aktuell: IRC User Online
Visit my profile!

9

Saturday, September 20th 2008, 8:09am

Warst du da als Admin angemeldet? Dann erstelle mal einen normalen User und schau es dir dann mal an. Der Admin sieht es im ACP und auch im Profil im Forum, aber sonst niemand.


Na klar war ich da als Admin und ja es sieht auch nur der Admin, das ändert aber nichts daran das es leer angezeigt wird und das es auch für den Admin in leer total überflüssig ist.
Was würde denn dort angezeigt werden dann für den Admin im eigenen Profil damit das anzeigen der Kategorie dort Sinn macht ?

10

Wednesday, May 23rd 2012, 2:43am

hi, ich weiß das es alt ist, aber soll aber auch zeigen, das ich danach suche und es gehört zum Thema ;-)

Der link zur community geht schon nimmer und ich hab nun das selbe Problem..

Möchte Profilfelder setzen, habe auch alles schon angelegt mit visible 2 und editable 2 kann ich es auch bearbeiten bei Registration aber dafür hab ich es im ACP dann nicht. Weiß nicht ob ich bereits es kaputt geupdatet habe. Wenn ich bei editable eine 1 habe dann wären es doch alle? Nur dann ist bei der Registration das Feld wieder weg.

Die Frage ist wie legt man ein Profilfeld was wärend der Registration vorhanden ist aber danach nur noch für den Administrator einsehbar ist?

Visible 2 und Visible 4 letztlich..

Blicke da gerade auch nicht durch -.-

Beispiel am Geburtsdatum..

Registration gibt man es an, und später kann man es nicht ändern, Admin soll bei Fehlererkennung es ändern können, wäre ja doof? Gleiches auch mit den Namen.. Straße z.B. gibt man in der Regiration an und kann der User gerne selbst ändern. Ich blicke da auch nicht durch die Einstellungen für edit und visible durch..

Hat in den vielen Jahren wer nun Ahnung?