iMasters Code: Função para criar usuário novo em Joomla 1.5 - iMasters Code

Ir para

Página 1 de 1
  • Novo código
  • Revisar

Função para criar usuário novo em Joomla 1.5

#1 Membro offline   Rafael 

  • Colaborador
  • Grupo: Colaborador
  • Revisões 1
  • Cadastrado: 01-outubro 10

Revisou 01 outubro 2010 - 17:47

Sem dúvida quebra um galhão! ;)

Código da Função
<?php
function CreateNewUser($name, $username, $email, $password, $registerDate = NULL, $usertype = 'Registered', $block = '0', $sendEmail = '1', $gid = '18') {
        global $db;

        $db = & JFactory::getDBO();
        jimport('joomla.user.helper');

        //Make the joomla password hash
        $salt = JUserHelper::genRandomPassword(32);
        $crypt = JUserHelper::getCryptedPassword($password, $salt);
        $joomlapassword = $crypt . ':' . $salt;

        //Table #__users
        //Informations about the user
        $user = new stdClass;
        $user->id = NULL;
        $user->name = $name;
        $user->username = $username;
        $user->email = $email;
        $user->password = $joomlapassword;
        $user->registerDate = registerDate;
        $user->usertype = $usertype;
        $user->block = $block;
        $user->sendEmail = $sendEmail;
        $user->gid = $gid;

        if (!$db->insertObject('#__users', $user, 'id')) {
            echo $db->stderr();
            return false;
        }


        //Table #__core_acl_aro
        //Discover what is the last value of value in #__core_acl_aro
        $query = "SELECT value FROM #__core_acl_aro ORDER BY id DESC LIMIT 1";
        $db->setQuery($query);
        $coreaclarolastvalue = $db->loadResult();

        $coreaclaro = new stdClass;
        $coreaclaro->id = NULL;
        $coreaclaro->section_value = 'users';
        $coreaclaro->value = $coreaclarolastvalue + 1;
        $coreaclaro->order_value = NULL;
        $coreaclaro->name = $name;
        $coreaclaro->hidden = NULL;

        if (!$db->insertObject('#__core_acl_aro', $coreaclaro, 'id')) {
            echo $db->stderr();
            return false;
        }

        //Table #__core_acl_groups_aro_map
        $coreaclmap = new stdClass;
        $coreaclmap->group_id = $gid;
        $coreaclmap->section_value = NULL;
        $coreaclmap->aro_id = $coreaclaro->id; // maybe just $user->id ?

        if (!$db->insertObject('#__core_acl_groups_aro_map', $coreaclmap)) {
            echo $db->stderr();
            return false;
        }

        $CreateNewUserInfo = array($user->id, $user->name, $user->username, $user->email);
        return $CreateNewUserInfo;
}


Exemplo de implementação
//This exemple will take data from one post, for example
$username = JRequest::getVar('username');
$name = JRequest::getvar('name');
$email = JRequest::getVar('email');
$password = JRequest::getVar('password');

//This code will call your funcion, then register with your data
$NewUserInfo = CreateNewUser($name, $username, $email, $password, $registerDate);

1

#2 Membro offline   deivison arthur 

  • Colaborador
  • Grupo: Colaborador
  • Revisões 1
  • Cadastrado: 14-janeiro 11

Revisou 14 janeiro 2011 - 23:35

Show de bola Rafael, eu estava pensando exatamente em procurar esse script hoje rs e sem querer dando um rolé no imasters ví o anuncio do code imasters. Pretendo implementar no cód do módulo multibuy que estou fazendo veja www.vaifacil.com.br/pjclube. vlw
0

#3 Membro offline   Clube do PhP 

  • Colaborador
  • Grupo: Colaborador
  • Revisões 6
  • Cadastrado: 27-abril 12
  • LocalizaçãoPalmas - Pr - Brasil

Revisou 16 maio 2012 - 01:03

belo post... mais sera q roda no joomla! atual?
Queria alterar o mundo...
Mais não me deram o código-fonte!!!
0

Compartilhar este código:


Página 1 de 1
  • Novo código
  • Revisar

1 usuário(s) está(ão) lendo este código
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)