Willkommen Gast.
Um die volle Funktionalität des Forums nutzen zu können,
müssen Sie sich einloggen oder registrieren.
Haben Sie Ihre Aktivierungs E-Mail übersehen?

 
Erweiterte Suche

31.108 Beiträge in 6.473 Themen- von 6.478 Mitglieder - Neuestes Mitglied: Frideborg

24-10-2019 01:02:02
JOOM::GALLERY::FORUMArchivJoomGallery 1.5 MVCZusammenspiel mit anderen KomponentenGelöste Themen: Zusammenspiel mit anderen KomponentenAutoerstellen neuer Kategorien mit CB?
Seiten: [1]
Drucken
Autor Thema: Autoerstellen neuer Kategorien mit CB?  (Gelesen 5894 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« am: 04-08-2010 15:46:09 »

Hallo zusammen,

erstmal ein dickes Dankeschön an die Macher der JoomGallery für die Mühe und Arbeit in den letzten Jahren.

Ich hab da ein kleines Problemchen. Ich nutze den CommunityBuilder und die JoomGallery - unter anderem auch mit dem JoomAutoCat Plugin (1.5 BETA2). Das JoomlaAutoCat funktioniert an sich optimal, nur brauch ich leider noch ein "wenig mehr". Im CB habe ich ein Drop-Down-Feld, das einen User einer Gruppe zuweist (zusätzlich zur Joomla-internen Einteilung).

Diese Gruppen sollen die Kategorien (auf der obersten Ebene) für die Gallery sein. Innerhalb dieser Kategorien soll dann ein Plugin automatisch eine Userkategorie (wie beim JoomlaAutoCat) in der jeweiligen Kategorie anlegen. Leider hab ich vom coden so ziemlich gar keine Ahnung. Ich zähle daher auf eure Hilfe.
« Letzte Änderung: 05-08-2010 01:03:31 von tankberg » Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #1 am: 04-08-2010 23:25:29 »

Hi,

falls man über das CBuser-Objekt eines Benutzers auf diese zusätzlichen Daten zugreifen kann (wovon ich stark ausgehe), sollte es über eine 'switch'-Anweisung ganz einfach möglich sein, zum Beispiel so:

Code
$cbUser = & CBuser::getInstance($user['id']);
$cbUserData = &$cbUser->getUserData();
 
switch($cbUserData->gruppen_id)
{
 case 1:
   $category->parent = 35;
   break;
 case 2:
   $category->parent = 17;
   break;
 case 3:
   $category->parent = 47;
   break;
 default:
   $category->parent = 36;
   break;
}

Gruß
Chraneco
Gespeichert

Der Sprecher
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« Antworten #2 am: 05-08-2010 00:00:29 »

Hallo Chraneco,

ich steh grad ziemlich auf dem Schlauch - glaub ich. Dein Code würde ins JoomAutoCat kommen, versteh ich das richtig? Und was würde ich im Case genau abfragen? Meine Eigenschaft hat 4 Ausprägungen in der Form "Hund", "Katze", "Maus", "Vogel".
Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #3 am: 05-08-2010 00:05:52 »

Hi,

jep, du müsstest im Plugin folgenden Code ersetzen:

Code
if($parent = $this->params->get('parent'))
   {
     $category->parent = intval($parent);
   }

Mit deinen Daten würde es dann so aussehen:

Code
$cbUser = & CBuser::getInstance($user['id']);
$cbUserData = &$cbUser->getUserData();
 
switch($cbUserData->tiergruppe)
{
 case 'Hund':
   $category->parent = 35;
   break;
 case 'Katze':
   $category->parent = 17;
   break;
 case 'Maus':
   $category->parent = 47;
   break;
 case 'Vogel':
   $category->parent = 36;
   break;
 default:
   $category->parent = 36;
   break;
}

wobei du die Kategorie-IDs noch mit den gewünschten IDs ersetzen musst und hier die Kategorie 36 als Standard verwendet wird, falls vom Benutzer keine Auswahl eines Tieres getroffen wurde. Das '$cbUserData->tiergruppe' muss wahrscheinlich auch noch angepasst werden.

Gruß
Chraneco
Gespeichert

Der Sprecher
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« Antworten #4 am: 05-08-2010 01:03:03 »

Super! Hat geklappt. Vielen Dank.

Allerdings hab ich noch die Zeile über deinem Code eingefügt.
Code:
$category->parent = $user['cb_usergroup'];

Keinen Schimmer was die genau macht, aber es funktioniert.

PS: Nett hier. Ich glaub, ich bleib hier. :)
Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #5 am: 05-08-2010 01:16:23 »

Hi,

Wie sieht die Datei bei dir jetzt genau aus?

Könntest du bitte mal testweise meinen Code komplett löschen und nur die von dir eingefügte Zeile stehen lassen? sm_smile

Denn falls diese Zeile zum gewünschten Ergebnis geführt hat, sollte mein Code völlig nutzlos sein. Das funktioniert dann aber nur, falls die Kategorie-IDs genau mit den Benutzergruppen-IDs übereinstimmen.

Gruß
Chraneco
Gespeichert

Der Sprecher
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« Antworten #6 am: 05-08-2010 01:29:05 »

Aaaaaalso. Erstens, es geht auch ohne meine Zeile. Grad probiert.

Zweitens hab ich das grad mit ohne deinen Code probiert. Die Kategorie-Namen IDs stimmten nicht mit den Namen in der CB überein, aber ich habs gerade mal angepasst. Ohne deinen Code - nur mit meiner Zeile - funktioniert es nicht. Dann erstellt der eine neue Kategorie für den neuen User auf der obersten Ebene.

Gleich mal ne Kleinigkeit hinterher, kann ich die Category-ID (sprich die Zahl) irgendwo von Hand nachträglich ändern? Durch das Erstellen und Löschen von Kategorien beim Testen hab ich da jetzt eine kleine Lücke die ich korrigieren möchte.
Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #7 am: 05-08-2010 01:39:06 »

Hi,

du kannst die eingetragenen IDs in der 'switch'-Anweisung auch noch nachträglich ändern oder habe ich dich jetzt falsch verstanden?

Gruß
Chraneco
Gespeichert

Der Sprecher
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« Antworten #8 am: 05-08-2010 01:39:18 »

Ich meinte die IDs im Backend der "regulären" JoomGallery-Komponente. Wenns nicht geht, ist es auch nicht tragisch.
Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #9 am: 05-08-2010 01:41:56 »

Hi,

achso, das wäre direkt in der Datenbank mit Hilfe von PhpMyAdmin oder ähnlichem möglich, wenn sich noch keine Bilder in den Kategorien befinden. Ansonsten musst du die Zuweisungen der Bilder ebenfalls direkt in der Datenbank erneuern.

Gruß
Chraneco
Gespeichert

Der Sprecher
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« Antworten #10 am: 05-08-2010 01:53:03 »

Ich hab grad in der Datenbank in "jos_joomgallery_catg" den Schlüssel(?) "Nächste Autoindex" mit dem Wert 22 gefunden. Das ist eigentlich genau das was ich suche. Wie kann ich den auf einen niedrigeren Wert ändern? Ich nutze PHPMyAdmin (von 1&1).

So, das war die letzte Frage für heute.  sm_smilewinkgrin
Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #11 am: 05-08-2010 01:59:13 »

Hi,

diesen Wert kannst du mit PhpMyAdmin im Abschnitt 'Tabellenoptionen' ändern, nachdem du während dem Betrachten der Tabelle oben auf 'Operationen' geklickt hast.

Gruß
Chraneco
Gespeichert

Der Sprecher
tankberg
Newbie
*
Offline Offline

Beiträge: 13


« Antworten #12 am: 05-08-2010 02:03:27 »

Hat wieder funktioniert. Vielen Dank.

So Feierabend, gute Nacht und nochmal danke für die Hilfe heute (und gestern).
Gespeichert
Chraneco
Entwickler-Team
Hero Member
*****
Offline Offline

Beiträge: 4.066



« Antworten #13 am: 05-08-2010 02:04:17 »

Hi,

kein Problem, gute Nacht sm_smile

Gruß
Chraneco
Gespeichert

Der Sprecher
Seiten: [1]
Drucken
Gehe zu:  

HOSTED BY SCHWARZKÜNSTLER ®

PROTECTED BY  ZB BLOCK  AND Project Honey Pot
Theme orange-lt created by panic

Bad Behavior has blocked 3572 access attempts in the last 7 days.