Weiterleitung nach Registrierung

  • Hi allezusammen,


    ich stehe mal wieder vor einem Problem. Wenn man sich ERFOLGREICH registriert wird man ja auch auf die Adresseingabe weitergeleitet (Das Formular ist quasi identisch nur das man jetzt eine Kundennummer hat.) Ich möchte aber, das wer sich Erfolgreich anmeldet, nach der Anmeldung auf eine Beitragsseite kommt (Z.B. mit einem Begrüßungstext o.ä.). Ich habe bereits die "Übeltäter" ausgemacht aber weiß nicht wie ich Daten von der administrator/components/com_virtuemart/models/user.php in die components/com_virtuemart/controllers/user.php Übertragen kann.
    Via Globale Variable (global), Statisch Variable (static) oder setVar (JRequest::set('key1', 'value1', 'post')) funktioniert einfach nicht...


    Zur Ausführung im Detail, meine Idee:
    in "administrator/components/com_virtuemart/models/user.php"
    im Punkt
    //Save the VM user stuff
    unterhalb von
    vmInfo('COM_VIRTUEMART_REG_COMPLETE');
    ein $weiterleiten = 1
    einfügen. Dort wird festgelegt ob die Registerierung erfolgreich war oder ob noch etwas fehlt.
    Dann in
    components/com_virtuemart/controllers/user.php
    bei
    function saveUser(){
    eine Weiche einbauen ala
    if ($weiterleitung == 1){
    $this->setRedirect( JRoute::_('Link zum Beitrag'));
    } else {
    $this->setRedirect( JRoute::_('index.php?option=com_virtuemart&view=user&layout='.$layout, FALSE), $msg );
    }


    Hat jeman eine Idee wie ich das hinbekomme oder eine andere Lösungsmöglichkeit? Ich möchte so wenig wie möglich fremde Plugins und Module verwenden, daher wäre mir eine Joomlainterne Lösung am liebsten.

  • Nach langem grübeln hab ich die Lösung gefunden. In der components/com_virtuemart/controllers/user.php
    bei function saveUser(){ eine Weiche war schon die Idee. Da die UserID bei Erfolg bereits existiert geht es über:


    function saveUser(){


    $layout = JRequest::getWord('layout','edit');
    if($this->checkCaptcha('index.php?option=com_virtuemart&view=user&layout='.$layout) != FALSE) {
    $msg = $this->saveData(true, true);

    $user = JFactory::getUser();
    if ($user->id == "") {
    $this->setRedirect( JRoute::_('index.php?option=com_virtuemart&view=user&layout='.$layout, FALSE), $msg );
    } else {
    $this->setRedirect( JRoute::_('URL der Weiterleitung bei Erfolgreicher Registrierung', FALSE), $msg );
    }
    }


    }