示例#1
0
         $owner = 'func';
         $id = $compte_rendu->function_id;
     } else {
         if ($compte_rendu->group_id) {
             $owner = 'etab';
             $id = $compte_rendu->group_id;
         } else {
             $owner = 'etab';
             $id = CGroups::loadCurrent()->_id;
         }
     }
 }
 $headers = CCompteRendu::loadAllModelesFor($id, $owner, $compte_rendu->object_class, "header");
 $prefaces = CCompteRendu::loadAllModelesFor($id, $owner, $compte_rendu->object_class, "preface");
 $endings = CCompteRendu::loadAllModelesFor($id, $owner, $compte_rendu->object_class, "ending");
 $footers = CCompteRendu::loadAllModelesFor($id, $owner, $compte_rendu->object_class, "footer");
 if ($compte_rendu->_owner != "prat") {
     unset($headers["prat"]);
     unset($prefaces["prat"]);
     unset($endings["prat"]);
     unset($footers["prat"]);
 }
 if ($compte_rendu->_owner == "etab") {
     unset($headers["func"]);
     unset($prefaces["func"]);
     unset($endings["func"]);
     unset($footers["func"]);
 }
 switch ($compte_rendu->type) {
     case "header":
         $compte_rendu->_count_utilisation = $compte_rendu->countBackRefs("modeles_headed");
示例#2
0
preg_match_all("/(:?\\[\\[Texte libre - ([^\\]]*)\\]\\])/i", $compte_rendu->_source, $matches);
$templateManager->textes_libres = $matches[2];
// Suppression des doublons
$templateManager->textes_libres = array_unique($templateManager->textes_libres);
if (isset($compte_rendu->_ref_file->_id)) {
    $smarty->assign("file", $compte_rendu->_ref_file);
}
$smarty->assign("textes_libres", $templateManager->textes_libres);
$exchange_source = CExchangeSource::get("mediuser-" . $curr_user->_id);
$smarty->assign("exchange_source", $exchange_source, "smtp");
// Ajout d'entête / pied de page à la volée
$headers = array();
$footers = array();
if (CAppUI::conf("dPcompteRendu CCompteRendu header_footer_fly")) {
    $headers = CCompteRendu::loadAllModelesFor($user->_id, "prat", $compte_rendu->object_class, "header");
    $footers = CCompteRendu::loadAllModelesFor($user->_id, "prat", $compte_rendu->object_class, "footer");
}
$smarty->assign("headers", $headers);
$smarty->assign("footers", $footers);
// Nettoyage des balises meta et link.
// Pose problème lors de la présence d'un entête et ou/pied de page
$source =& $templateManager->document;
$source = preg_replace("/<meta\\s*[^>]*\\s*[^\\/]>/", '', $source);
$source = preg_replace("/(<\\/meta>)+/i", '', $source);
$source = preg_replace("/<link\\s*[^>]*\\s*>/", '', $source);
$pdf_thumbnails = CAppUI::conf("dPcompteRendu CCompteRendu pdf_thumbnails");
$pdf_and_thumbs = CAppUI::pref("pdf_and_thumbs");
// Chargement du
if ($compte_rendu->_id) {
    $compte_rendu->loadModele();
}
// Accès aux listes de choix de la fonction et de l'établissement
$module = CModule::getActive("dPcompteRendu");
$is_admin = $module && $module->canAdmin();
$access_function = $is_admin || CAppUI::conf("compteRendu CListeChoix access_function");
$access_group = $is_admin || CAppUI::conf("compteRendu CListeChoix access_group");
// Liste sélectionnée
$liste = new CListeChoix();
$liste->user_id = $user->_id;
$liste->load($liste_id);
if ($liste->_id) {
    if ($liste->function_id && !$access_function) {
        CAppUI::redirect("m=system&a=access_denied");
    }
    if ($liste->group_id && !$access_group) {
        CAppUI::redirect("m=system&a=access_denied");
    }
}
$liste->loadRefOwner();
$liste->loadRefModele();
$liste->loadRefsNotes();
$modeles = CCompteRendu::loadAllModelesFor($user->_id, "prat", null, "body");
$owners = $user->getOwners();
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("modeles", $modeles);
$smarty->assign("owners", $owners);
$smarty->assign("access_function", $access_function);
$smarty->assign("access_group", $access_group);
$smarty->assign("user", $user);
$smarty->assign("liste", $liste);
$smarty->display("inc_edit_liste_choix.tpl");
示例#4
0
// Chargement de l'objet
$object = new $object_class();
/** @var $object CMbObject */
$object->load($object_id);
// Chargement du praticien concerné et des praticiens disponibles
$praticien = CMediusers::get($praticien_id);
$praticien->canDo();
$praticiens = $praticien->loadPraticiens(PERM_EDIT);
// Chargement des objets relatifs a l'objet chargé
$templateClasses = $object->getTemplateClasses();
// Chargement des modeles de consultations du praticien
$modelesCompat = array();
$modelesNonCompat = array();
// Chargement des modeles pour chaque classe, pour les praticiens et leur fonction
foreach ($templateClasses as $class => $id) {
    $modeles = CCompteRendu::loadAllModelesFor($praticien->_id, 'prat', $class, 'body');
    if ($id) {
        $modelesCompat[$class] = $modeles;
        continue;
    }
    $modelesNonCompat[$class] = $modeles;
}
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("praticien", $praticien);
$smarty->assign("praticiens", $praticiens);
$smarty->assign("target_id", $object->_id);
$smarty->assign("target_class", $object->_class);
$smarty->assign("modelesCompat", $modelesCompat);
$smarty->assign("modelesNonCompat", $modelesNonCompat);
$smarty->assign("modelesId", $templateClasses);
示例#5
0
$owner = "prat";
$owner_id = $filtre->user_id;
$owners = $user->getOwners();
if ($filtre->function_id) {
    $owner = "func";
    $owner_id = $filtre->function_id;
    $func = new CFunctions();
    $func->load($owner_id);
    $owners = array("func" => $func, "etab" => $func->loadRefGroup());
} else {
    $sec_func = $user->loadRefsSecondaryFunctions();
    foreach ($sec_func as $_func) {
        $owners["func" . $_func->_id] = $_func;
    }
}
$modeles = CCompteRendu::loadAllModelesFor($owner_id, $owner, $filtre->object_class, $filtre->type, 1, $order);
if ($filtre->function_id) {
    unset($modeles["prat"]);
}
foreach ($modeles as $key => &$_modeles) {
    /** @var $_modeles CStoredObject[] */
    CStoredObject::massCountBackRefs($_modeles, "documents_generated");
    /** @var $_modele CCompteRendu */
    foreach ($_modeles as $_modele) {
        $_modele->canDo();
        switch ($_modele->type) {
            case "body":
                $_modele->loadComponents();
                break;
            case "header":
                $_modele->countBackRefs("modeles_headed", array("object_id" => "IS NULL"));
 * @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::checkRead();
$object_guid = CValue::get("object_guid");
$pack_id = CValue::get("pack_id");
$filter_class = CValue::get("filter_class");
$object = CMbObject::loadFromGuid($object_guid, true);
$module = CModule::getActive("dPcompteRendu");
$is_admin = $module && $module->canAdmin();
$access_function = $is_admin || CAppUI::conf("compteRendu CCompteRendu access_function");
$access_group = $is_admin || CAppUI::conf("compteRendu CCompteRendu access_group");
$owner_types = array("CMediusers" => "prat", "CFunctions" => "func", "CGroups" => "etab");
$modeles = CCompteRendu::loadAllModelesFor($object->_id, $owner_types[$object->_class], $filter_class, "body");
$nb_modeles = count($modeles["prat"]);
$nb_modeles += isset($modeles["func"]) ? count($modeles["func"]) : 0;
$nb_modeles += isset($modeles["etab"]) ? count($modeles["etab"]) : 0;
$link = new CModeleToPack();
$link->pack_id = $pack_id;
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("link", $link);
$smarty->assign("modeles", $modeles);
$smarty->assign("pack_id", $pack_id);
$smarty->assign("access_function", $access_function);
$smarty->assign("access_group", $access_group);
$smarty->assign("nb_modeles", $nb_modeles);
$smarty->display("inc_form_modeles_links.tpl");
示例#7
0
 * @license  GNU General Public License, see http://www.gnu.org/licenses/gpl.html
 * @version  SVN: $Id:\$
 * @link     http://www.mediboard.org
 */
$compte_rendu_id = CValue::get("compte_rendu_id");
$object_class = CValue::get("object_class");
$type = CValue::get("type");
$compte_rendu = new CCompteRendu();
$compte_rendu->load($compte_rendu_id);
if ($compte_rendu->user_id) {
    $owner = 'prat';
    $id = $compte_rendu->user_id;
} else {
    if ($compte_rendu->function_id) {
        $owner = 'func';
        $id = $compte_rendu->function_id;
    } else {
        if ($compte_rendu->group_id) {
            $owner = 'etab';
            $id = $compte_rendu->group_id;
        } else {
            $owner = 'etab';
            $id = CGroups::loadCurrent()->_id;
        }
    }
}
$components = CCompteRendu::loadAllModelesFor($id, $owner, $object_class, $type);
$smarty = new CSmartyDP();
$smarty->assign("type", $type);
$smarty->assign("components", $components);
$smarty->display("inc_headers_footers.tpl");