コード例 #1
0
ファイル: User.php プロジェクト: knatorski/SMS
 public function createUserImport($form, $sendEmail = true)
 {
     $values = $form->getValues();
     $pass = Base_PasswordGenerator::generate();
     $values['password'] = $pass['hashed'];
     if ($values['symbol'] != '') {
         /**
          * 1. odnalezenia brancha o podanym symbolu (pole "symbol") w polu profil w danych z csv.
          * 2. dopisanie do profile "id_branch", "id_user", "landing" zawsze na /contact
          * 3. dopisanie uprawnien dla usera do grupy uprawnien "logowanie"
          * 4. dopisanie uprawnien dla usera do konkretnej roli szukanej po nazwie podanej w danych z csv z userami w polu "rola".
          */
         $branchModel = new Branch();
         $branch = $branchModel->getBranchBySymbol($values['symbol']);
         if (isset($branch['id'])) {
             $valuesProfile['id_branch'] = $branch['id'];
             $valuesProfile['landing'] = '/contact';
         }
         if ($values['rola'] != '') {
             $roleModel = new Role();
             $rola = $roleModel->getRoleByName($values['rola']);
             if (isset($rola['id'])) {
                 $valuesRole['id_role'] = $rola['id'];
                 $valuesRole['id_profile'] = '';
                 // po dodaniu profilu wstawiamy jego id.
             }
         }
     }
     if (isset($values['symbol'])) {
         unset($values['symbol']);
     }
     if (isset($values['rola'])) {
         unset($values['rola']);
     }
     $user = new User();
     $row = $user->createRow($values);
     $id_user = $row->save();
     if (is_array($valuesProfile)) {
         $valuesProfile['id_user'] = $id_user;
         $profile = new Profile();
         $rowProfile = $profile->createRow($valuesProfile);
         $id_profile = $rowProfile->save();
         if (isset($id_profile) && isset($valuesRole['id_role'])) {
             $valuesRole['id_profile'] = $id_profile;
             $role = new ProfileRole();
             $rowRole = $role->createRow($valuesRole);
             $id_role = $rowRole->save();
             $valuesProfileGroup['id_profile'] = $id_profile;
             $valuesProfileGroup['id_group'] = 5;
             $profileGroup = new ProfileGroup();
             $rowProfileGroup = $profileGroup->createRow($valuesProfileGroup);
             $id_profile_group = $rowProfileGroup->save();
         }
     }
     $passwordData['id_user'] = $id_user;
     $passwordData['password'] = $pass['hashed'];
     $userPassword = new UserPassword();
     $rowPassword = $userPassword->createRow($passwordData);
     $rowPassword->save();
     /*
      if($sendEmail == true) {
      $mailer = new Logic_Mailer(Zend_Controller_Front::getInstance()->getParam('bootstrap')->getResource('view'), $translate);
      $user_row = $user->findOne($id_user);
      $mailer->userPass($pass['clean'], $user_row);
      }
     */
 }