2017-09-01 3 views
0

Je développe un plugin d'authentification personnalisé pour la connexion dans joomla à partir d'une API tierce. Lorsque nous nous connectons sur une instance Joomla avec un utilisateur/mot de passe, l'utilisateur/passe est passé à l'API pour obtenir la bonne réponse (comme login_id, nom d'utilisateur, employee_ident, email, nom commun.) Ensuite, Joomla crée l'utilisateur sur Joomla et enregistrer la réponse comme (nom d'utilisateur, nom complet, email) sur la base de données Joomla. Maintenant, le plugin auth ccms fonctionne correctement.Ajouter une colonne supplémentaire sur la table jos_user dans Joomla 3.7

Mon exigence est d'enregistrer une colonne de plus sur jos_users pendant l'authentification de l'utilisateur. Pour cela, j'ai créé la colonne employee_ident dans la table jos_user mais je ne peux pas enregistrer employee_ident dans joomla db sur la table jos_user.

Voici mon code:

$result = $client->call($method, $params); 

[0] => Array 
    (
     [login_id] => Frasier.9878 
     [email_address] => [email protected] 
     [position_code_type_ident] => 157 
     [employee_ident] => 166651 
     [position_code_department_abbr_name] => executive_management 
     [position_code_title] => Chief Financial Officer 
     [hire_date] => 2003-01-20 
     [common_name] => Frasier Crane 

    ) 
if($result) 
      {  
      $email_address   = isset($result[0][email_address]) ? $result[0][email_address] : $credentials['username']."@test.com"; 
      $response->email   = $email_address; 
      $response->fullname  =$result[0][common_name]; 
      $response->employee_ident =$result[0][employee_ident];    
      $response->username  =$credentials['username']; 

      $response->status  = JAuthentication::STATUS_SUCCESS; 
      $response->error_message = ''; 

     } 
+0

Vous semblez avoir la sortie au milieu 'print_r()' de votre code. Cela ne fonctionnera pas tel quel, le modifieriez-vous en fonction de ce que vous avez réellement? – halfer

Répondre