/** * action create * * @param \In2\Femanager\Domain\Model\User $user * @validate $user In2\Femanager\Domain\Validator\ServersideValidator * @validate $user In2\Femanager\Domain\Validator\PasswordValidator * @validate $user In2\Femanager\Domain\Validator\CaptchaValidator * @return void */ public function createAction(User $user) { $this->allowedUserForInvitationNewAndCreate(); $user->setDisable(TRUE); $user = $this->div->forceValues($user, $this->config['invitation.']['forceValues.']['beforeAnyConfirmation.'], $this->cObj); $user = $this->div->fallbackUsernameAndPassword($user); if ($this->settings['invitation']['fillEmailWithUsername'] == 1) { $user->setEmail($user->getUsername()); } Div::hashPassword($user, $this->settings['invitation']['misc']['passwordSave']); $this->signalSlotDispatcher->dispatch(__CLASS__, __FUNCTION__ . 'BeforePersist', array($user, $this)); $this->createAllConfirmed($user); }
/** * Check if user is authenticated * * @param \In2\Femanager\Domain\Model\User $user * @param int $uid Given fe_users uid * @return void */ protected function testSpoof($user, $uid) { if ($user->getUid() != $uid && $uid > 0) { // write log $this->div->log(LocalizationUtility::translate('tx_femanager_domain_model_log.state.205', 'femanager'), 205, $user); // add flashmessage $this->flashMessageContainer->add(LocalizationUtility::translate('tx_femanager_domain_model_log.state.205', 'femanager'), '', \TYPO3\CMS\Core\Messaging\FlashMessage::ERROR); $this->forward('edit'); } }
/** * Store user values in any database table * * @param User $user User properties * @param array $config TypoScript Settings * @param ContentObjectRenderer $contentObject * @param ObjectManagerInterface $objectManager * @return void */ public static function storeInDatabasePreflight($user, $config, $contentObject, $objectManager) { $uid = 0; if (empty($config['new.']['storeInDatabase.'])) { return; } // one loop for every table to store foreach ((array) $config['new.']['storeInDatabase.'] as $table => $storeSettings) { $storeSettings = NULL; // if turned off if (!$contentObject->cObjGetSingle($config['new.']['storeInDatabase.'][$table]['_enable'], $config['new.']['storeInDatabase.'][$table]['_enable.'])) { continue; } // push user values to TypoScript to use with ".field=username" $contentObject->start(array_merge($user->_getProperties(), array('lastGeneratedUid' => $uid))); /** * @var $storeInDatabase \In2\Femanager\Utility\StoreInDatabase */ $storeInDatabase = $objectManager->get('In2\\Femanager\\Utility\\StoreInDatabase'); $storeInDatabase->setTable($table); foreach ($config['new.']['storeInDatabase.'][$table] as $field => $value) { if ($field[0] === '_' || stristr($field, '.')) { continue; } $value = $contentObject->cObjGetSingle($config['new.']['storeInDatabase.'][$table][$field], $config['new.']['storeInDatabase.'][$table][$field . '.']); $storeInDatabase->addProperty($field, $value); } $uid = $storeInDatabase->execute(); } }
/** * @test * @return void */ public function setUsernameForStringSetsUsername() { $this->fixture->setUsername('Conceived at T3CON10'); $this->assertSame('Conceived at T3CON10', $this->fixture->getUsername()); }