<?php

/**
 * Refresh list domains EAI
 *  
 * @category EAI
 * @package  Mediboard
 * @author   SARL OpenXtrem <*****@*****.**>
 * @license  GNU General Public License, see http://www.gnu.org/licenses/gpl.html 
 * @version  SVN: $Id:$ 
 * @link     http://www.mediboard.org
 */
CCanDo::checkAdmin();
// Liste des domaines
$domain = new CDomain();
$domains = $domain->loadList();
foreach ($domains as $_domain) {
    $_domain->loadRefActor();
    $_domain->loadRefIncrementer()->loadView();
    $_domain->loadRefsGroupDomains();
    foreach ($_domain->_ref_group_domains as $_group_domain) {
        $_group_domain->loadRefGroup();
    }
    $_domain->isMaster();
}
// Récupération due l'incrementeur à ajouter/editer
$domain = new CDomain();
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("domains", $domains);
$smarty->assign("domain", $domain);
 /**
  * Get actors identifiers
  *
  * @param array         &$identifiers Identifiers
  * @param CMbObject     $object       Object
  * @param CInteropActor $actor        Actor
  *
  * @return void
  */
 function fillActorsIdentifiers(&$identifiers, CMbObject $object, CInteropActor $actor = null)
 {
     if (!$actor->_configs["send_actor_identifier"]) {
         return;
     }
     $domain = new CDomain();
     $where = array();
     $where["incrementer_id"] = "IS NULL";
     $where["actor_id"] = "IS NOT NULL";
     /** @var CDomain[] $domains */
     $domains = $domain->loadList($where);
     foreach ($domains as $_domain) {
         $value = CIdSante400::getValueFor($object, $_domain->tag);
         if (!$value) {
             continue;
         }
         $identifiers[] = array($value, null, null, $this->getAssigningAuthority("domain", null, null, $_domain), $actor->_configs["build_identifier_authority"] == "PI_AN" ? "PI" : "RI");
     }
 }