/** * Get import function * * @return CFunctions */ function getImportFunction() { static $function; if ($function) { return $function; } $function_name = CAppUI::conf($this->_import_function_name_conf); $function = new CFunctions(); $function->text = $function_name; $function->loadMatchingObjectEsc(); if (!$function->_id) { $function->group_id = CGroups::loadCurrent()->_id; $function->type = "cabinet"; $function->compta_partagee = 0; $function->color = "#CCCCCC"; if ($msg = $function->store()) { CAppUI::setMsg($msg, UI_MSG_WARNING); } } return $function; }
/** * Create the mediuser * * @param CMediusers $mediuser mediuser * * @return int */ function createDoctor(CMediusers $mediuser) { $sender = $this->_ref_sender; $function = new CFunctions(); $function->text = CAppUI::conf("hl7 importFunctionName"); $function->group_id = $sender->group_id; $function->loadMatchingObjectEsc(); if (!$function->_id) { $function->type = "cabinet"; $function->compta_partagee = 0; $function->color = "ffffff"; $function->store(); } $mediuser->function_id = $function->_id; $mediuser->makeUsernamePassword($mediuser->_user_first_name, $mediuser->_user_last_name, null, true); $mediuser->_user_type = 13; // Medecin $mediuser->actif = CAppUI::conf("hl7 doctorActif") ? 1 : 0; $user = new CUser(); $user->user_last_name = $mediuser->_user_last_name; $user->user_first_name = $mediuser->_user_first_name; // On recherche par le seek $users = $user->seek("{$user->user_last_name} {$user->user_first_name}"); if (count($users) == 1) { $user = reset($users); $user->loadRefMediuser(); $mediuser = $user->_ref_mediuser; } else { // Dernière recherche si le login est déjà existant $user = new CUser(); $user->user_username = $mediuser->_user_username; if ($user->loadMatchingObject()) { // On affecte un username aléatoire $mediuser->_user_username .= rand(1, 10); } $mediuser->store(); } return $mediuser->_id; }