コード例 #1
0
ファイル: Module.php プロジェクト: quangdungninh/zendvnteam
 public function getFormElementConfig()
 {
     return array('factories' => array('findForm' => function ($sm) {
         $myForm = new \Admin\Form\Find();
         $myForm->setInputFilter(new \Admin\Form\FindFilter());
         return $myForm;
     }, 'userForm' => function ($sm) {
         $myForm = new \Admin\Form\User();
         $myForm->setInputFilter(new \Admin\Form\UserFilter());
         return $myForm;
     }, 'businessForm' => function ($sm) {
         $myForm = new \Admin\Form\Business();
         $myForm->setInputFilter(new \Admin\Form\BusinessFilter());
         return $myForm;
     }, 'newsForm' => function ($sm) {
         $myForm = new \Admin\Form\News();
         $myForm->setInputFilter(new \Admin\Form\NewsFilter());
         return $myForm;
     }, 'fengshuiNewsForm' => function ($sm) {
         $myForm = new \Admin\Form\FengshuiNews();
         $myForm->setInputFilter(new \Admin\Form\FengshuiNewsFilter());
         return $myForm;
     }, 'legalhousingForm' => function ($sm) {
         $myForm = new \Admin\Form\LegalHousing();
         $myForm->setInputFilter(new \Admin\Form\LegalHousingFilter());
         return $myForm;
     }, 'legislationHousingForm' => function ($sm) {
         $myForm = new \Admin\Form\LegislationHousing();
         $myForm->setInputFilter(new \Admin\Form\LegislationHousingFilter());
         return $myForm;
     }, 'contractFormForm' => function ($sm) {
         $myForm = new \Admin\Form\ContractForm();
         $myForm->setInputFilter(new \Admin\Form\ContractFormFilter());
         return $myForm;
     }, 'niceHouseForm' => function ($sm) {
         $myForm = new \Admin\Form\NiceHouse();
         $myForm->setInputFilter(new \Admin\Form\NiceHouseFilter());
         return $myForm;
     }, 'projectForm' => function ($sm) {
         $myForm = new \Admin\Form\Project();
         $myForm->setInputFilter(new \Admin\Form\ProjectFilter());
         return $myForm;
     }, 'tvForm' => function ($sm) {
         $myForm = new \Admin\Form\Tv();
         $myForm->setInputFilter(new \Admin\Form\TvFilter());
         return $myForm;
     }, 'businessTypeAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\BusinessType();
         $myForm->setInputFilter(new \Admin\Form\BusinessTypeFilter());
         return $myForm;
     }, 'userGroupAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\UserGroup();
         $myForm->setInputFilter(new \Admin\Form\UserGroupFilter());
         return $myForm;
     }, 'niceHouseCategoryAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\NiceHouseCategory();
         $myForm->setInputFilter(new \Admin\Form\NiceHouseCategoryFilter());
         return $myForm;
     }, 'fengshuiAppAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\FengshuiApp();
         $myForm->setInputFilter(new \Admin\Form\FengshuiAppFilter());
         return $myForm;
     }, 'websiteAdsAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\WebsiteAds();
         $myForm->setInputFilter(new \Admin\Form\WebsiteAdsFilter());
         return $myForm;
     }, 'logoAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Logo();
         $myForm->setInputFilter(new \Admin\Form\LogoFilter());
         return $myForm;
     }, 'footerAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Footer();
         $myForm->setInputFilter(new \Admin\Form\FooterFilter());
         return $myForm;
     }, 'navFooterAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\NavFooter();
         $myForm->setInputFilter(new \Admin\Form\NavFooterFilter());
         return $myForm;
     }, 'bannerAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Banner();
         $myForm->setInputFilter(new \Admin\Form\BannerFilter());
         return $myForm;
     }, 'notificationtemplateAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\NotificationTemplate();
         $myForm->setInputFilter(new \Admin\Form\NotificationTemplateFilter());
         return $myForm;
     }, 'realEstateAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\RealEstate();
         $myForm->setInputFilter(new \Admin\Form\RealEstateFilter());
         return $myForm;
     }, 'serviceAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Service();
         $myForm->setInputFilter(new \Admin\Form\ServiceFilter());
         return $myForm;
     }, 'seoAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Seo();
         $myForm->setInputFilter(new \Admin\Form\SeoFilter());
         return $myForm;
     }, 'configWebsiteAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\ConfigWebsite();
         $myForm->setInputFilter(new \Admin\Form\ConfigWebsiteFilter());
         return $myForm;
     }, 'configCompanyAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\ConfigCompany();
         $myForm->setInputFilter(new \Admin\Form\ConfigCompanyFilter());
         return $myForm;
     }, 'configEmailAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\ConfigEmail();
         $myForm->setInputFilter(new \Admin\Form\ConfigEmailFilter());
         return $myForm;
     }, 'configAdvanceAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\ConfigAdvance();
         $myForm->setInputFilter(new \Admin\Form\ConfigAdvanceFilter());
         return $myForm;
     }, 'configDisplayAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\ConfigDisplay();
         $myForm->setInputFilter(new \Admin\Form\ConfigDisplayFilter());
         return $myForm;
     }, 'configMaintenanceAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\ConfigMaintenance();
         $myForm->setInputFilter(new \Admin\Form\ConfigMaintenanceFilter());
         return $myForm;
     }, 'supportAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Support();
         $myForm->setInputFilter(new \Admin\Form\SupportFilter());
         return $myForm;
     }, 'emailTemplateAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\EmailTemplate();
         $myForm->setInputFilter(new \Admin\Form\EmailTemplateFilter());
         return $myForm;
     }, 'emailMarketingAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\EmailMarketing();
         $myForm->setInputFilter(new \Admin\Form\EmailMarketingFilter());
         return $myForm;
     }, 'adsAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Ads();
         $myForm->setInputFilter(new \Admin\Form\AdsFilter());
         return $myForm;
     }, 'fileManagerAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\FileManager();
         $myForm->setInputFilter(new \Admin\Form\FileManagerFilter());
         return $myForm;
     }, 'surveyAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Survey();
         $myForm->setInputFilter(new \Admin\Form\SurveyFilter());
         return $myForm;
     }, 'slideAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Slide();
         $myForm->setInputFilter(new \Admin\Form\SlideFilter());
         return $myForm;
     }, 'messageAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Message();
         $myForm->setInputFilter(new \Admin\Form\MessageFilter());
         return $myForm;
     }, 'sitesAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\sites();
         $myForm->setInputFilter(new \Admin\Form\sitesFilter());
         return $myForm;
     }, 'banAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Ban();
         $myForm->setInputFilter(new \Admin\Form\BanFilter());
         return $myForm;
     }, 'notifiAdminForm' => function ($sm) {
         $myForm = new \Admin\Form\Notifi();
         $myForm->setInputFilter(new \Admin\Form\NotifiFilter());
         return $myForm;
     }));
 }
コード例 #2
0
ファイル: LogController.php プロジェクト: veniva/zcms
 public function initialAction()
 {
     $serviceLocator = $this->getServiceLocator();
     $entityManager = $serviceLocator->get('entity-manager');
     $user = $serviceLocator->get('user-entity');
     //check if user already exists
     $numberUsers = $entityManager->getRepository(get_class($user))->countAdminUsers();
     if ($numberUsers) {
         return $this->redir()->toRoute('admin/default', array('controller' => 'log', 'action' => 'in'));
     }
     $form = new \Admin\Form\User($user, $entityManager);
     $form->get('submit')->setValue('Submit');
     //region add language name + select flag
     $languageForm = new Language($this->getServiceLocator());
     $form->add($languageForm->get('isoCode'));
     $languageName = $languageForm->get('name');
     $languageName->setName('language_name');
     $form->add($languageName);
     $form->getInputFilter()->add($languageForm->getInputFilter()->get('isoCode'));
     $languageNameInputFilter = $languageForm->getInputFilter()->get('name');
     $languageNameInputFilter->setName($languageName->getName());
     $form->getInputFilter()->add($languageNameInputFilter);
     //endregion
     $request = $this->getRequest();
     if ($request->isPost()) {
         $form->setData($request->getPost());
         //set the role field to not required
         $form->getInputFilter()->get('role')->setRequired(false);
         if ($form->isValid()) {
             $newPassword = $form->getInputFilter()->get('password_fields')->get('password')->getValue();
             if ($newPassword) {
                 $user->setUpass($form->getInputFilter()->get('password_fields')->get('password')->getValue());
             }
             $user->setRegDate();
             $user->setRole(User::USER_SUPER_ADMIN);
             $entityManager->persist($user);
             $lang = new Lang();
             $lang->setIsoCode($form->getInputFilter()->getInputs()['isoCode']->getValue());
             $lang->setName($form->getInputFilter()->getInputs()['language_name']->getValue());
             $lang->setStatus($lang::STATUS_DEFAULT);
             $entityManager->persist($lang);
             $entityManager->flush();
             $langCode = $lang->getIsoCode();
             $locale = $locale = $langCode != 'en' ? $langCode . '_' . strtoupper($langCode) : 'en_US';
             $this->flashMessenger()->addSuccessMessage($this->translator->translate("The user has been added successfully. Please log below.", 'default', $locale));
             return $this->redir()->toRoute('admin/default', ['controller' => 'log', 'action' => 'in']);
         }
     }
     return ['form' => $form, 'flagCode' => $this->getRequest()->isPost() ? $this->params()->fromPost('isoCode') : null];
 }
コード例 #3
0
ファイル: UserController.php プロジェクト: veniva/zcms
 public function handleCreateUpdate($data, $id = null)
 {
     $entityManager = $this->getServiceLocator()->get('entity-manager');
     $user = $this->getServiceLocator()->get('user-entity');
     //accessed it from service manager as this way the User::setPasswordAdapter() is initialized
     if ($id) {
         $user = $entityManager->find(get_class($user), $id);
         if (!$user) {
             return $this->redirMissingUser($id);
         }
     }
     $loggedInUser = $this->getServiceLocator()->get('current-user');
     $editOwn = $loggedInUser->getId() == $user->getId();
     //security check - is the edited user really having a role equal or less privileged to the editing user
     if (!$loggedInUser->canEdit($user->getRole())) {
         return $this->redirToList('You have no right to edit this user', 'error');
     }
     $currentUserName = $user->getUname();
     $currentEmail = $user->getEmail();
     $form = new \Admin\Form\User($loggedInUser, $this->getServiceLocator()->get('entity-manager'));
     $form->bind($user);
     $form->setData($data);
     $action = $id ? 'edit' : 'add';
     if ($form->isValid($action, $currentUserName, $currentEmail, $editOwn)) {
         //security check - is the new role equal or less privileged to the editing user
         $newRole = $form->getData()->getRole();
         if (!$loggedInUser->canEdit($newRole)) {
             //this protection is redundant as there will be notFoundInTheHaystack validation error
             return $this->redirToList('You have no right to assign this user role', 'error');
         }
         if ($editOwn && isset($data['role'])) {
             return $this->redirToList('You have no right to assign new role to yourself', 'error');
         }
         $newPassword = $form->getInputFilter()->get('password_fields')->get('password')->getValue();
         if ($newPassword) {
             $user->setUpass($form->getInputFilter()->get('password_fields')->get('password')->getValue());
         }
         $user->setRegDate();
         $entityManager->persist($user);
         $entityManager->flush();
         if ($this->getRequest()->isPost()) {
             $this->getResponse()->setStatusCode(201);
         }
         return $this->redirToList('The user has been ' . $action . 'ed successfully');
     }
     return $this->renderData($action, $form, $editOwn, $user);
 }