Lançado Adianti Framework 8.1!
Clique aqui para saber mais
Cadastrar novos usuários e relacionar grupos e programas cadas.. Pessoal, preciso da ajuda de vocês . Estou criando um novo form para que os usuários possam se cadastrar e acessar as páginas de acesso restrito. Como administrador já cadastrei o grupo e os programas que o grupo terá acesso. Clonei a classe SystemUserForm , agora estou meio perdido como alterar o código do onSave para que eu consiga salvar o novo usuário e relacionar ao grupo e programas ...
WR
Cadastrar novos usuários e relacionar grupos e programas cadas..  
Fechado
Pessoal, preciso da ajuda de vocês . Estou criando um novo form para que os usuários possam se cadastrar e acessar as páginas de acesso restrito. Como administrador já cadastrei o grupo e os programas que o grupo terá acesso. Clonei a classe SystemUserForm , agora estou meio perdido como alterar o código do onSave para que eu consiga salvar o novo usuário e relacionar ao grupo e programas já criados .

  1. <?php
  2. function onSave()
  3.     {
  4.         try
  5.         {
  6.             // open a transaction with database 'permission'
  7.             TTransaction::open('permission');
  8.             
  9.             // get the form data into an active record System_user
  10.             $object $this->form->getData('SystemUser');
  11.             
  12.             // form validation
  13.             $this->form->validate();
  14.             
  15.             $senha $object->password;
  16.             
  17.             if( ! $object->id )
  18.             {
  19.                 if( ! $object->password )
  20.                     throw new Exception(TAdiantiCoreTranslator::translate('The field ^1 is required'_t('Password')));
  21.             }
  22.             
  23.             if( $object->password )
  24.             {
  25.                 if( $object->password != $object->repassword )
  26.                     throw new Exception(_t('The passwords do not match'));
  27.                 
  28.                 $object->password md5($object->password);
  29.             }
  30.             else
  31.                 unset($object->password);
  32.             
  33.             $object->store(); // stores the object
  34.             $object->clearParts();
  35.             
  36.             if( $object->groups )// GRUPO 3 = COLABORADOR
  37.             {
  38.                 foreach( $object->groups as $group )
  39.                 {
  40.                     $object->addSystemUserGroup( new SystemGroup($group) );
  41.                 }
  42.             }
  43.             
  44.             if( $object->programs // PROGRAMAS 
  45.             {
  46.                 foreach( $object->programs as $program )
  47.                 {
  48.                     $object->addSystemUserProgram$program );
  49.                 }
  50.             }
  51.             
  52.             $object->password $senha;
  53.             
  54.             // fill the form with the active record data
  55.             $this->form->setData($object);
  56.             
  57.             // close the transaction
  58.             TTransaction::close();
  59.             
  60.             // shows the success message
  61.             new TMessage('info'TAdiantiCoreTranslator::translate('Record saved'));
  62.             // reload the listing
  63.         }
  64.         catch (Exception $e// in case of exception
  65.         {
  66.             // shows the exception error message
  67.             new TMessage('error''<b>Error</b> ' $e->getMessage());
  68.             
  69.             // undo all pending operations
  70.             TTransaction::rollback();
  71.         }
  72.     }
  73. ?>

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (1)


WR

Pessoal consegui fazer funcional!! Modifiquei as linhas a abaixo fixando o grupo e removi as linhas referentes ao programas, uma vez que já exite no cadastro do grupo.

  1. <?php
  2.             //adiciona no grupo 
  3.             $group '3';//Grupo Colaborador
  4.             $object->addSystemUserGroup( new SystemGroup($group) );
  5. ?>