Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 19. Mai 2011 19:57

Foaly*
Gast

[GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Hallo,

im Blogpost, in dem calguy CMSms 1.8 ankündigt, ist eine Methode beschrieben, um einen Content Block zu erstellen, der die Auswahl von Benutzergruppen ermöglicht. Dies soll so funktionieren:
{content_module block='groups' name='allowed_groups' module='FrontEndUsers' type='grouplist'}

Leider ist das weder in der FEU Modulhilfe beschrieben, noch lande ich damit einen Erfolg. Jemand Erfahrungen mit sowas? Alternative Möglichkeiten über AC?

Danke

Edit: Oh, calguy spricht von seinen Plänen für die Zukunft.. Gibt es eine Möglichkeit mit AC die Gruppen aus der DB zu bekommen? Nur mit UDT und smarty=true?

Beitrag geändert von Foaly* (25. Mai 2011 11:22)

#2 19. Mai 2011 20:22

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

{content_module} und FrontEndUsers ist leider noch nicht zu gebrauchen.
Was genau willst Du denn erreichen?
Wozu brauchst Du die Gruppen?


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#3 19. Mai 2011 20:33

Foaly*
Gast

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Um im Backend auswählen zu können, welche Gruppen die Seite sehen können. Versuche es grade mit nem UDT.

[== PHP ==]
$db = cmsms()->GetDb();
$smarty = cmsms()->GetSmarty();
$dbresult = $db->Execute('SELECT id,groupname FROM '.cms_db_prefix().'module_feusers_groups');
while($row = $dbresult->FetchRow()){
    $items[] = $row['groupname'];
    $values[] = $row['id'];
}
if(count($items) > 0 && count($values) > 0){
    $smarty->assign('usergroup_items', implode('|', $items));
    $smarty->assign('usergroup_values', implode('|', $values));
}

und

[== Smarty ==]
{content block="usergroups" label="Seite sichtbar für" block_tab="Locked Optionen" block_type="dropdown" values=$usergroup_values items=$usergroup_items}

Aber er gibt im Dropdown den Variablennamen als String aus... Kurios!

Beitrag geändert von Foaly* (19. Mai 2011 20:35)

#4 19. Mai 2011 20:50

Foaly*
Gast

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Habs jetzt so gelöst:

[== Smarty ==]
{content block='usergroup' label='Seite sichtbar für' block_tab='Locked Optionen' block_type='select_multiple' items=":::list_feu_usergroups:::" assign='usergroup' smarty=true}

#5 19. Mai 2011 20:55

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Ähm... die Funktion ist doch schon in AdvancedContent eingebaut (Tab "Erweiterte Optionen").


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#6 19. Mai 2011 21:15

Foaly*
Gast

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Oh, übersehen  ops

Schaffe ich es damit, einen Inhaltsblock für eingeloggt, einen für ausgeloggt zu haben? Oder sind die Werte in einer Variable im Template verfügbar (get_template_vars zeigt keine)?

Beitrag geändert von Foaly* (19. Mai 2011 21:16)

#7 20. Mai 2011 23:51

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Also Du kannst zum Einen die komplette Seite nur für bestimmte User zugänglich machen (Tab "Erweiterte Optionen") und zum Anderen einzelne Blöcke (Parameter "feu_access").

Du kannst die Seiten, die nur bestimmten Usern angezeigt werden sollen, im Menü ausblenden, wenn der User nicht eingeloggt ist.

Umgekehrt kannst Du auch öffentliche Seiten ausblenden, sobald man eingeloggt ist.

Letzteres gibt es aber leider noch nicht für Inhaltsblöcke.
Hätte mir aber denken können, dass danach gefragt wird - kommt demnächst.
(Und wenn ich schonmal dabei bin: macht es Sinn, bei Zugriff auf öffentliche Seiten, die ausgeblendet werden sollen, wenn man eingeloggt ist, und man ist eingeloggt, irgendwohin umzuleiten oder den Inhalt auszublenden?)

Templatevariablen gibt es da von AdvancedContent aus keine.
Meines Wissens müsste da aber ein Objekt namens {$mod} oder {$FrontEndUsers} sein.
(Müsste von FrontEndUsers selbst oder von CGExtensions kommen.)
Falls nicht, kannst über das (Advanced)Inhaltsobjekt eine Instanz des FEU Moduls ins Template holen.
Mit diesem Objekt kannst Du dann den Login-Status prüfen.

Bsp:

{* Modulinstanz an Smarty übergeben (falls nötig): *}
{$content_obj->get_module('FrontEndUsers')} {* jetzt gibt es eine Templatevariable {$FrontEndUsers} *}

{* login prüfen *}
{if $FrontEndUsers->LoggedInId()}

   foo

{else}

   bar

{/if}

Oder Du nimmst eben doch CustomContent.
(Aber ehrlich gesagt verstehe ich Sinn und Zweck von CustomContent immer weniger big_smile )


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#8 20. Mai 2011 13:15

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Im SVN habe ich mal den Parameter feu_hide hinzugefügt. Einfach auf true setzen, um öffentliche Blöcke auszublenden, wenn der Besucher eingeloggt ist.

Welcher Block für welche Gruppen ist, lässt sich leider nicht für jede Seite individuell festlegen.
Geht im Moment nur über die Parameter im Template. Aber ich hoffe, dass ich dafür auch noch eine Lösung finde. Dann könnte man alle Blockparameter für jede Seite einzeln vergeben und die Parameter im Template gelten nur als Standard-Werte.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#9 20. Mai 2011 14:13

owr_web
Server-Pate
Registriert: 16. Dezember 2010
Beiträge: 543

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

NaN schrieb:

(Und wenn ich schonmal dabei bin: macht es Sinn, bei Zugriff auf öffentliche Seiten, die ausgeblendet werden sollen, wenn man eingeloggt ist, und man ist eingeloggt, irgendwohin umzuleiten oder den Inhalt auszublenden?)

Gefühlsmäßig würde ich sagen umleiten, denn bei ausblenden hab ich ja dann nur eine leere Seite. Mir fällt grade so (als einfaches Beispiel ohne Beispielcharakter) ein, dass z.B. wenn jemand auf der Login-Seite ist und sich einloggt, dass der dann auf z.B. die download-Seite geschickt wird.

Offline

#10 20. Mai 2011 14:29

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Derartige Sachen kann man aber doch im FrontEndUsers Modul einstellen.
Mir ging es eher darum, dass, wenn man eingeloggt ist, und man gelangt (wie auch immer) auf eine Seite, deren Menüpunkt ausgeblendet werden soll, wenn man eingeloggt ist, was soll dann passieren? Soll die Seite angezeigt werden, als wäre man nicht eingeloggt, soll garnichts angezeigt werden, oder soll auf eine Seite umgeleitet werden?


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#11 20. Mai 2011 16:08

owr_web
Server-Pate
Registriert: 16. Dezember 2010
Beiträge: 543

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

DAfür meinte ich ja ohne Beispielcharakter - ist mir ja nix besseres auf die schnelle eingefallen. monkey

Wobei da wäre sicher die "Luxusvariante" die beste. Man kann sozusagen aussuchen, was man im Einzelfall will.

Offline

#12 20. Mai 2011 19:33

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Muss da eh nochmal ran. Eine völlig sinnlose Kombination von Einstellungen hat mich gerade zwei Stunden lang völlig durcheinander gebracht: Zugriff nur für eine bestimmte Benutzergruppe, aber die Seite soll ausgeblendet werden, wenn man eingeloggt ist. Dann noch die redirect-Funktion ... und man bekam den Inhalt der Seite nie zu Gesicht.  roll
Wer macht denn sowas?
Wenn man manchmal wirklich nicht an alles denkt...  roll


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#13 22. Mai 2011 16:47

Foaly*
Gast

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

NaN schrieb:

Meines Wissens müsste da aber ein Objekt namens {$mod} oder {$FrontEndUsers} sein.
(Müsste von FrontEndUsers selbst oder von CGExtensions kommen.)

$feu_smarty heißt sie. Danke! CC hat allerdings praktischerweise die Möglichkeit, kommasepariert auf mehrere Gruppenmitgliedschaften auf einmal zu prüfen.

#14 22. Mai 2011 20:42

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

Aber das kann man doch mit AdvancedContent und dem Parameter feu_access auch.
Gut, ein kompletter Ersatz für CC ist es nicht. War ja auch nicht so gedacht.
Naja, egal. Wenn Du eine Lösung hast, ist ja alles in Butter, oder?
Wie sieht denn Deine Lösung letztendlich genau aus?


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#15 25. Mai 2011 00:08

Foaly*
Gast

Re: [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [GELÖST] [gelöst] FEU grouplist mit {content_module} bzw. Advanced Content

UDT:

[== PHP ==]
$db = cmsms()->GetDb();
$smarty = cmsms()->GetSmarty();
$dbresult = $db->Execute('SELECT groupname FROM '.cms_db_prefix().'module_feusers_groups');
while($row = $dbresult->FetchRow())
    $items[] = $row['groupname'];

if(count($items) > 0)
    echo implode('|', $items);

Template:

[== Smarty ==]
{content block='usergroups' label='Nur Usergroup zeigen' block_type='select_multiple' items=":::list_feu_usergroups:::" assign='usergroups' smarty=true}
{if !$ccuser->loggedin() || !$ccuser->memberof($usergroups|replace:'|':',')}
{content block='loggedout' label='ausgeloggt'}
{else}
{content}
{/if}

Beitrag geändert von Foaly* (25. Mai 2011 00:09)