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

#1 27. Juni 2012 09:51

sweettigerpunk
kennt CMS/ms
Registriert: 03. Januar 2012
Beiträge: 136

[GELÖST] Feu Benutzergruppen + cgCalendar

Hallöchen,

Ich habe derzeit ein Problem mit den FEU Benutzergruppen, die Ich im CGCalendar benötige.
Hab Die Gruppen nun via PHP ausgelesen

{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'];
{/php}

bei echo $items[0] bekomme ich den Wert Leiter und $items[0] Master...

Bloss wie bekomme ich den Wert nun in smarty ausgelesen?

Folgendes will ich machen:

Im CGCalender sollen die Leute die in der Feu Benutzergruppe Master sind noch einen zusätzlichen Link sehen und die anderen halt nicht...

Jemand eine Idee oder Hilfestellung?
Danke & Lg

Offline

#2 27. Juni 2012 09:55

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Feu Benutzergruppen + cgCalendar


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#3 27. Juni 2012 10:16

sweettigerpunk
kennt CMS/ms
Registriert: 03. Januar 2012
Beiträge: 136

Re: [GELÖST] Feu Benutzergruppen + cgCalendar

Hi Nockenfell,

Danke für den Link, nur leider versteh ich nicht ganz wie/wo ich das einbauen muss und wie ich dann das btHasAccess richtig aufrufe... zz bekomme ich nur etliche Fehler sad

Kannst du mir das nochmal erklären?
Danke
LG

Offline

#4 27. Juni 2012 10:31

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Feu Benutzergruppen + cgCalendar

Klar. Das btHasAccess kannst du auch als UDT (Benutzerdefinierter Tag) einsetzen:

UDT Name "btHasAccess"

if (!$params['feugroups']) {
	if (isset($params['assign'])) { $smarty->assign(trim($params['assign']),false); return; }
	return false;
}
$feusers = cms_utils::get_module('FrontEndUsers');
$user_id = $feusers->LoggedInId();
$groups = $feusers->GetMemberGroupsArray($user_id);

$gns = array();
if($groups !== false ) {
    foreach( $groups as $gid ) {
        $gns[] = $gid['groupid'];
    }
}

$feuArray= explode(',',$params['feugroups']);
$retval = false;
foreach ($feuArray as $feu) {
	if (in_array($feu,$gns)) {   
		if (isset($params['assign'])) { $smarty->assign(trim($params['assign']),true); return; }
		return true;
	}
}
if (isset($params['assign'])) { $smarty->assign(trim($params['assign']),false); return; }
return false;

Aufruf mit

{btHasAccess feugroups="1,2,3" assign="hasAccess"}

[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#5 27. Juni 2012 10:40

sweettigerpunk
kennt CMS/ms
Registriert: 03. Januar 2012
Beiträge: 136

Re: [GELÖST] Feu Benutzergruppen + cgCalendar

Hi Nockenfell,

Danke hat super geklappt... Hatte den Aufruf die ganze Zeit falsch geschrieben hmm

Lg

Offline

#6 27. Juni 2012 11:34

nicmare
Server-Pate
Registriert: 15. Dezember 2010
Beiträge: 1.314
Webseite

Re: [GELÖST] Feu Benutzergruppen + cgCalendar

an die gruppen komsmt du übrigens auch einfacher ran. zB so:

$feu_ob = cms_utils::get_module('FrontEndUsers');
$groups = $feu_ob->GetGroupList();
foreach($groups as $key => $group){$value .= $key.", ";}
echo $value;

Offline

#7 23. Februar 2015 18:33

langweilo
probiert CMS/ms aus
Registriert: 08. November 2011
Beiträge: 66

Re: [GELÖST] Feu Benutzergruppen + cgCalendar

nockenfell schrieb:

Klar. Das btHasAccess kannst du auch als UDT (Benutzerdefinierter Tag) einsetzen:

UDT Name "btHasAccess"

if (!$params['feugroups']) {
	if (isset($params['assign'])) { $smarty->assign(trim($params['assign']),false); return; }
	return false;
}
$feusers = cms_utils::get_module('FrontEndUsers');
$user_id = $feusers->LoggedInId();
$groups = $feusers->GetMemberGroupsArray($user_id);

$gns = array();
if($groups !== false ) {
    foreach( $groups as $gid ) {
        $gns[] = $gid['groupid'];
    }
}

$feuArray= explode(',',$params['feugroups']);
$retval = false;
foreach ($feuArray as $feu) {
	if (in_array($feu,$gns)) {   
		if (isset($params['assign'])) { $smarty->assign(trim($params['assign']),true); return; }
		return true;
	}
}
if (isset($params['assign'])) { $smarty->assign(trim($params['assign']),false); return; }
return false;

Aufruf mit

{btHasAccess feugroups="1,2,3" assign="hasAccess"}

das ist, so denke ich, genau das was ich suche nur steh ich grad auf dem schlauch.

ich möchte z.B. eine Meldung anzeigen "Noch nicht aktiviert" wenn ein Nutzer in der Gruppe 2 Steckt.
wenn er in der 1 Steckt soll er den hinweis bekommen "Aktiviert".

in wie fern kann ich denn da dein schnippsel benutzen und ist er noch aktuell?

Beitrag geändert von langweilo (23. Februar 2015 19:39)

Offline

#8 24. Februar 2015 23:05

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Feu Benutzergruppen + cgCalendar

Ich nehme an, dass du meinst deine Frage aus diesem Thread: http://www.cmsmadesimple.de/forum/viewt … 802#p33802

Stelle bitte deine Fragen im aktuellen Thread oder öffne einen neuen. Alte als gelöst markierte Threads sind nicht der richtige Ort für neue Fragen.

Zur Antwort:

{if tbtools::hasFeuGroupAccess("1")}Benutzer der Gruppe 1 hat die Berechtigung
{elseif tbtools::hasFeuGroupAccess("2")}Der Benutzer ist noch nicht freigeschaltet
{else}Der Benutzer hat keine Berechtigung{/if}

Lies mal die Hilfe des ToolBox Moduls. Hier im Reiter "Smarty Tools". Da steht alles was du brauchst inkl. einem Beispiel.

Beitrag geändert von nockenfell (24. Februar 2015 23:05)


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline