/** * Adds the group to the given user * * @param InputInterface $input Input object * @param OutputInterface $output Output object * @param \Aimeos\MShop\Context\Item\Iface $context Aimeos context object * @param \Aimeos\MShop\Customer\Item\Iface $user Aimeos customer object * @param string $group Unique customer group code */ protected function addGroup(InputInterface $input, OutputInterface $output, \Aimeos\MShop\Context\Item\Iface $context, \Aimeos\MShop\Customer\Item\Iface $user, $group) { $output->writeln(sprintf('Add "%1$s" group to user "%2$s" for sites', $group, $user->getCode())); $localeManager = \Aimeos\MShop\Locale\Manager\Factory::createManager($context); foreach ($this->getSiteItems($context, $input) as $siteItem) { $localeItem = $localeManager->bootstrap($siteItem->getCode(), '', '', false); $lcontext = clone $context; $lcontext->setLocale($localeItem); $output->writeln('- ' . $siteItem->getCode()); $groupItem = $this->getGroupItem($lcontext, $group); $this->addListItem($lcontext, $user->getId(), $groupItem->getId()); } }
/** * Adds the privilege to the given user * * @param \Aimeos\MShop\Context\Item\Iface $context Aimeos context object * @param \Aimeos\MShop\Customer\Item\Iface $user Aimeos customer object * @param string $privilege Unique customer group code */ protected function addPrivilege(\Aimeos\MShop\Context\Item\Iface $context, \Aimeos\MShop\Customer\Item\Iface $user, $privilege) { $this->info(sprintf('Add "%1$s" privilege to user "%2$s" for sites', $privilege, $user->getCode())); $localeManager = \Aimeos\MShop\Locale\Manager\Factory::createManager($context); foreach ($this->getSiteItems($context, $this->argument('site')) as $siteItem) { $localeItem = $localeManager->bootstrap($siteItem->getCode(), '', '', false); $lcontext = clone $context; $lcontext->setLocale($localeItem); $this->info('- ' . $siteItem->getCode()); $groupItem = $this->getGroupItem($lcontext, $privilege); $this->addListItem($lcontext, $user->getId(), $groupItem->getId()); } }
/** * Sends the account creation e-mail to the e-mail address of the customer * * @param \Aimeos\MShop\Context\Item\Iface $context Context item object * @param \Aimeos\MShop\Customer\Item\Iface $item Customer item object * @param string $password Customer clear text password */ protected function sendEmail(\Aimeos\MShop\Context\Item\Iface $context, \Aimeos\MShop\Customer\Item\Iface $item, $password) { $address = $item->getPaymentAddress(); $view = $context->getView(); $view->extAddressItem = $address; $view->extAccountCode = $item->getCode(); $view->extAccountPassword = $password; $helper = new \Aimeos\MW\View\Helper\Translate\Standard($view, $context->getI18n($address->getLanguageId())); $view->addHelper('translate', $helper); $mailer = $context->getMail(); $message = $mailer->createMessage(); $helper = new \Aimeos\MW\View\Helper\Mail\Standard($view, $message); $view->addHelper('mail', $helper); $client = $this->getClient($context); $client->setView($view); $client->getHeader(); $client->getBody(); $mailer->send($message); }