Search the FirstSpirit Knowledge Base
Hallo ,
wir haben auf einem Server mehrere FS Projekte.
Für diese unterschiedlichen Projekte möchte ich eine eigene Group.xml anlegen.
Die neue Group.xml für das Projekt relaunch soll alte und neue Berechtigungen enthalten.
service.ini
#
# global params
# -------------
# check each x seconds for changes
interval=20
# symbolic names for documents
documents=xyz_groups,relaunch2010
#
# document specific params
# ------------------------
xyz_groups.path=groups.xml
relaunch2010.path=groups_relaunch2010.xml
-----------------------
Alle Berechtigungen von groups.xml sind auch in der groups_relaunch2010.xml , jedoch beinhaltet groups_relaunch2010.xml noch weitere Berechtigungen.
Leider gehen mir alle Referenzen zu den alten bestehenden Berechtigungen aus der alten groups.xml im neuen Projekt mit der groups_relaunch2010.xml verloren.
An meinen alten Strukturelementen hängen jetzt nicht sichtbar die alten Berechtigungen.
Der Grund dafür ist mir jetzt klar, an den Struktureelementen hängen noch die alte Permissions mit document="xyz_groups" dran.
beanshell Ausgabe.
<PERMISSIONS document="xyz_groups" inherit="0" priority="allow"><OPERATION deselected="" name="access" selected=""/></PERMISSIONS>
So das zwar die Permission an sich gleich ist jedoch das documents(service.ini) unterschiedlich.
xyz_groups
<?xml version="1.0" encoding="ISO-8859-1" ?>
<GROUPS name="xyz_groups" version="1"> <--------------------------------unterschiedlich
<GROUP name="Personalization">
<GROUP name="Germany">
<GROUP id="Pers_1" name="Pers_1"/>
<GROUP id="Pers_2" name="Pers_2"/>
<GROUP id="Pers_3" name="Pers_3"/>
<GROUP id="Pers_4" name="4"/>
</GROUP>
</GROUPS>
relaunch2010
<?xml version="1.0" encoding="ISO-8859-1" ?>
<GROUPS name="launch2010" version="1"> <--------------------------------unterschiedlich
<GROUP name="Personalization">
<GROUP name="Germany">
<GROUP id="Pers_1" name="Pers_1"/>
<GROUP id="Pers_2" name="Pers_2"/>
<GROUP id="Pers_3" name="Pers_3"/>
<GROUP id="Pers_4" name="4"/>
</GROUP>
</GROUPS>
Kann man bestehende Projekte kopieren und diese nachträglich mit Unterschiedlichen Group.xml nutzen ohne das einem die Berechtigungen verloren gehen.
Oder kann ich programatisch das document von "document=xyz_groups" auf "document=launch2010" setzen, damit die Berechtigungen wieder stimmen?
Gruß Wiegele
Hallo,
Bsp. wenn Permission-Komponente so definiert ist:
<CMS_INPUT_PERMISSION group="xyz_groups" name="MyPermsVar">
...
</CMS_INPUT_PERMISSION>
dann wird in jedem Knoten, in dem die Berechtigungen über diese Permission-Komponente gesetzt werden, das betroffene Gruppen-Dokument - hier also "xyz_groups" - gespeichert. Wenn man das Projekt reimportiert und in der Definition der Permission-Komponente das Gruppen-Dokument von "xyz_groups" zu "xyz_groups_NEU" ändert, wirkt sich diese Änderung nur bei neuem Setzen der Berechtigungen aus; in den alten Knoten bleibt der alte Name "xyz_groups" natürlich weiterhin bestehen. Intern sieht es also so aus:
<PERMISSIONS document="xyz_groups" inherit="0" priority="allow">
Über die ACCESS-API kann man zwar alle Knoten durchlaufen und herausfinden, wo noch der alte Name des Gruppen-Dokuments steht, z.B. so:
myNode.getMeta().get(0).getEditor().getGroupsName();
aber ob man diesen Namen durch den Neuen (ebenso über die ACCESS-API) ersetzen kann, weiß ich leider nicht... Wenn ja, dann wäre das die Lösung
Gruß,
Walter.
Hallo ,
ja genau nach diesem "setGroupName" suche ich ja, in der öffentlichen API habe ich nichts gefunden.
Muss aber gehen, das CMS kann es ja auch schreiben.
Wäre nett wenn ein Entwickler mal was dazu sagen könnte.
Gruß Wiegele
Von welcher FS-Version ist denn hier die Rede?
Hallo Herr Gockel,
zwei Versionen sind betroffen.
Auf DEV und TRG
Server-Version: 4.2.461.48921
Auf PRD
Server-Version: 4.2.206.37300
Hallo Herr Wiegele,
das Thema ist ja schon etwas älter. Konnten Sie das Problem selbst lösen oder benötigen Sie hier noch Unterstützung?
Viele Grüße
Christoph Feddersen
Hallo Herr Feddersen,
nein bis jetzt habe ich das nicht gelöst bekommen.