Frontend\Modules\Profiles\Actions\Activate::execute PHP Method

execute() public method

Execute the extra.
public execute ( )
    public function execute()
    {
        // get activation key
        $key = $this->URL->getParameter(0);
        // load template
        $this->loadTemplate();
        // do we have an activation key?
        if (isset($key)) {
            // get profile id
            $profileId = FrontendProfilesModel::getIdBySetting('activation_key', $key);
            // have id?
            if ($profileId != null) {
                // update status
                FrontendProfilesModel::update($profileId, array('status' => 'active'));
                // delete activation key
                FrontendProfilesModel::deleteSetting($profileId, 'activation_key');
                // login profile
                FrontendProfilesAuthentication::login($profileId);
                // trigger event
                FrontendModel::triggerEvent('Profiles', 'after_activate', array('id' => $profileId));
                // show success message
                $this->tpl->assign('activationSuccess', true);
            } else {
                // failure
                $this->redirect(FrontendNavigation::getURL(404));
            }
        } else {
            $this->redirect(FrontendNavigation::getURL(404));
        }
    }
Activate