[gelöst] Auto Assign Role und Registrierung
Eingetragen von 1000 (764)
am 15.06.2011 - 19:50 Uhr in
am 15.06.2011 - 19:50 Uhr in
Hallo,
ich möchte, dass neue User sich entscheinen können, ob Sie ein Unternehmensprofil oder ein Privatprofil anlegen können. Dies soll per Auswahlfeld wählbar sein. Im Prinzip reicht dazu eine einfache Rollenzuweisung. Ich denke Auto Assign Role sollte dafür evt. geeignet sein. Ich habe allerdings es nicht hinbekommen. Kann ich mein Vorhaben mit Auto Assign Role realisieren?
Ok, kann man. Habe ich auch schon hinbekommen. Nun habe ich das Userprofil welches in Abhängigkeit von der Rolle verschieden sein soll. Im Prinzip soll sich der gesamte Seitenaufbau unterscheiden.
Also:
Menue
Userprofil und bearbeitung
- Anmelden oder Registrieren um Kommentare zu schreiben
Hi, ja das geht doch sehr gut
am 15.06.2011 - 20:12 Uhr
Hi,
ja das geht doch sehr gut damit! Entweder die Leute wählen selbst die Rollen oder du machst einen extra Registrierungsseite für die Rolle.
- Rollen anlegen - wie gewohnt
- Unter Assign from path: Benutzer Rolle die zugewiesen werden soll aufklappen.
- Auto Assign dort AKTIVIEREN
- Titel, Beschreibung, etc. frei wählbar
- Pfad: hier kann frei ein node erstellt werden. Z.B. reicht "node/2000" aus. Der Pfad darf noch nicht vergeben sein. Es gehen auch "normale" Wörter z.B. "registrieung-rolle-xyz"
Das wars eig. schon. Default Registration Page kann auf Nein stehen. Sonst würde jeder der auf "Registrieren" klickt ab sofort nur noch die neue Registrierung sehen. Ggf. ist das ja nich gewünscht.
Da du jetzt einen Link zur neuen Reg.-Seite hast, kannst du den frei ins Menü packen.
www.meine-domain.de/registrieung-rolle-xyz
Jeder der auf den Link klickt, bekommt die Registrierugnssite, mit dem angepassten Titel und Text zu sehen. Nur das jetzt jeder neu angemeldetet die Rolle xyz bekommt.
Oder aber du aktivierst Allow User to Choose. DAnn kann jeder eine beliebige Rolle aus der Liste selbst wählen. Fertig!
Der erste PUnkt im Modul Automatic role assignment kann dabei deaktiviert bleiben! Es geht dabei um Accounts, die über die normale Registrierugn laufen oder die vom Admin geschaffen wurden.
Seblst wenn dort NEIN steht funktioniert die Zuweisung über den Registrierungspfad. Es reicht wenn also Automatic role assignment bei der Rolle unter Assign from path AKTIV ist!
mfg Crusher
Vielen Dank für die Antwort.
am 15.06.2011 - 20:38 Uhr
Vielen Dank für die Antwort. Mit der Variante "Allow User to choose" bin ich schon zufrienden. Nur wie kann ich nun es erreichen, dass das anzulegende Profil sich unterscheidet. Ein Unternehmensprofil ist anders aufgebaut als ein Privatprofil. Problem ist nun auch das einige Profilangaben bereits zu beginn verscheiden sind. So kommt beim Unternehmensprofil der Firmenname hinzu. Andere Angaben entfallen.
Im Prinzip würde ich gerne die Registrierung in zwei Schritten vornehmen.
1) Wahl des Profils
2) Je nach Auswahl registrieren mit spezifischen angabne
Es gibt auch noch das Modul
am 15.06.2011 - 21:53 Uhr
Es gibt auch noch das Modul "User-selectable roles". Damit kann der User, vor der Registrierung, per Radio-Button/Checkbox auswählen welche Rolle er einnehmen will.
Mit dem Modul "Content Profile" kannst Du Dir dann ein/mehrere Profil(e) anlegen (z.B. für jede Rolle eins) und wenn Du dann noch das Modul "Rules" verwendest, kannst Du die entsprechende Rolle, nach dem ersten Login auf den rollenspezifischen Profil-Inhaltstypen weiterleiten.
Oder Du nutzt nur einen Profil-Inhaltstypen - dort legst Du alle Felder (für alle Rollen) an und über die Persmissions regelst Du welche Rolle welche Felder editieren/ausfüllen darf. Felder die nicht ausgefüllt/editiert werden dürfen, werden automatisch ausgeblendet und sind für die jeweilige Rolle nicht sichtbar.
Gruß Matthias
Danke für die Tipps. So wie
am 16.06.2011 - 12:10 Uhr
Danke für die Tipps. So wie es scheint gibt es mehrere Möglichkeiten, die zum Ziel führen. Mir sind momentan noch alle Optionen schleierhaft. So werden in den Permissions längst nicht alle Felder der unter Profile angelegten Profilfelder angezeigt, so das eine Differenzierung nicht möglich ist. Ich weiss auch nicht wie ich mehrere Profile für unterschiedliche Rollen mittels "Content Profile" anlegen kann. Die Module habe ich alle installiert. Es gibt zwar einen Inhaltstyp Profile allerdings: Wie kann ich denn das alles so hinbekommen, dass eine "Rollenweiche" für die Profile funktioniert. Ich bin etwas planlos verplant.
Da ich momentan ein eigens programmiertes Profil verwende würde es sich quasi anbieten eine Art "Rollenweiche" per php einzubinden. Hat jemand eine Ahnung wie das aussehen könnte?
Die "Rollenweiche" machst Du,
am 16.06.2011 - 12:26 Uhr
Die "Rollenweiche" machst Du, wie schon erwähnt, mit "Rules".
Weiterhin kannst Du in den Permissions angeben welche Rolle welchen Inhalsttypen erstellen darf.
Bsp: Du hast Rolle A und Rolle B
Du erstellst Dir nun, einen Inhalsttypen A (Profile_A) und einen Inhalsttypen B (Profile_B). Diese markierst Du in den Settings "Als Content-Profil verwenden"!
Dann gibst Du unter Permission der Rolle A das Recht Inhalsttypen A zu erstellen. Rolle B bekommt das recht nicht sondern Rolle B darf nur Inhalsttypen B erstellen.
Nun legst Du Dir mit Rules 2 Regeln an.
1. Wenn Rolle A sich registriert/einloggt UND noch kein Content-Profil (negieren) hat dann leite ihn auf das Add-Form von Inhalsttypen A.
2. Wenn Rolle B sich registriert/einloggt UND noch kein Content-Profil (negieren) hat dann leite ihn auf das Add-Form von Inhalsttypen B.
Das wars auch schon.
Anmerkung:
Ich nutze in der page.tpl.php auch noch einen PHP-Abfrage damit jede Rolle, wenn sie sich registriert und auf das Add-Form weitergeleitet wird, solange das Add-Form nicht verlassen kann bis es ausgefüllt und gespeichert wurde. Bei mir ist es z.b. wichtig das die PLZ und der Ort angegeben wird (für die Umkreissuche) - will der User, ohne diese Angaben zu machen, auf sie Startseite gelangen (oder wohin auch immer) wird er automatisch immer wieder auf das Content-Profile-Add-Form umgeleitet und zwar so lange bis er es ausgefüllt hat und speichert.
1000 schriebSo werden in den
am 16.06.2011 - 12:34 Uhr
So werden in den Permissions längst nicht alle Felder der unter Profile angelegten Profilfelder angezeigt, so das eine Differenzierung nicht möglich ist.
Du darfst "Content Profile" nicht mit den Core-Profile-Feldern verwechseln. Content Profile nutzt ganz normale Inhaltstypen für das Profil und arbeitet mit CCK-Feldern und diese sind ALLE über die Permissions regelbar (edit/view/wasauchimmer).
Gibt es eine Möglichkeit die
am 16.06.2011 - 12:40 Uhr
Gibt es eine Möglichkeit die Core-ProfileFelder ebenfalls per Permissions zu steuern?
Keine Ahnung! Weiß ich leider
am 16.06.2011 - 12:44 Uhr
Keine Ahnung! Weiß ich leider nicht!
Wenn Du aber die Core-Felder verwenden willst, brauchst Du Content-Profile nicht. Content-Profile ist aber wesentlich mächtiger!
Edit:
5 Sekunden googlen -> http://drupal.org/project/profile_permission
Esrteinmal vielen Dank! Warum
am 16.06.2011 - 13:00 Uhr
Esrteinmal vielen Dank! Warum ist Content Profile mächtiger? Die "Profile Permissions" Variante erscheint mir sinnvoll auf den ersten Blick.
Außerdem hat sich nach dem Installieren von Profile Permissions nichts geändert. Ich kann immernoch keine Core Profil Felder bestimmten Rollen zuweisen.
Schau Dir doch einfach mal an
am 16.06.2011 - 13:03 Uhr
Schau Dir doch einfach mal an wie wenig Feldmöglichkeiten das Core-Profile bietet und wieviele verschiedenen Typen Felder es für CCK (Content-Profile) gibt. Weiterhin weiß ich nicht ob die Core-Felder auch alle per View ansprechbar sind (exposed Filter) usw..
Was Du nutzen willst, musst Du für Dich entscheiden.
1000 schrieb Außerdem hat
am 16.06.2011 - 13:05 Uhr
Außerdem hat sich nach dem Installieren von Profile Permissions nichts geändert. Ich kann immernoch keine Core Profil Felder bestimmten Rollen zuweisen.
Lies doch bitte die Readme.txt - da steht alles drin!
Hab ich gemacht. Ich habe
am 16.06.2011 - 13:28 Uhr
Hab ich gemacht. Ich habe alle Einstellungsmöglichkeitern der Profilfelder durchgeprüft. In den Permissions gibt es keinen gesonderten Eintrag "Profile_Permissions"
Keine Ahnung - wie ich schon
am 16.06.2011 - 13:32 Uhr
Keine Ahnung - wie ich schon sagte, nutze ich das Core-Profile nicht. Schau in den Issues ob dort was darüber steht.
Ist eigendlich Schade, denn
am 16.06.2011 - 13:34 Uhr
Ist eigendlich Schade, denn das wäre extrem einfach. Alle zur Verfügung stehenden Profilfeder per permissions den einzelnen Rollen zuweisen. Dann könnte ich in meinem Fall auch das bestehende User Profil weiterverwenden, ohne alles neu zu gestalten.
Dann probiere die Dev-version
am 16.06.2011 - 13:38 Uhr
Dann probiere die Dev-version aus - vielleicht besteht das problem dort nicht. Keine Ahnung.
Ist wohl nicht so einfach.
am 16.06.2011 - 13:47 Uhr
Ist wohl nicht so einfach. Vielen Dank für die Tipps!
Habe Profile Role vom selben
am 16.06.2011 - 14:32 Uhr
Habe Profile Role vom selben Autor installiert. Es wird ein neuer Kartenreiter angezeigt, der eine Zuweisung einzelner Kategorien per Rolle zulässt. Wenn es funktioniert dann ist es damit schnell realisiert. Vielen Dank für Eure Hilfe !!!
Es funktioniert damit !