本文整理汇总了PHP中CStoredObject::massLoadFwdRef方法的典型用法代码示例。如果您正苦于以下问题:PHP CStoredObject::massLoadFwdRef方法的具体用法?PHP CStoredObject::massLoadFwdRef怎么用?PHP CStoredObject::massLoadFwdRef使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CStoredObject
的用法示例。
在下文中一共展示了CStoredObject::massLoadFwdRef方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: CAffectation
$where["affectation.entree"] = "BETWEEN '{$date_min}' AND '{$date_max}'";
} else {
$where["affectation.sortie"] = "BETWEEN '{$date_min}' AND '{$date_max}'";
}
$where["sejour.annule"] = "= '0'";
$affectation = new CAffectation();
$order = "entree, sortie";
/** @var CAffectation[] $affectations */
$affectations = $affectation->loadList($where, $order, null, null, $ljoin);
$sejours = CStoredObject::massLoadFwdRef($affectations, "sejour_id");
$patients = CStoredObject::massLoadFwdRef($sejours, "patient_id");
$praticiens = CStoredObject::massLoadFwdRef($sejours, "praticien_id");
$functions = CStoredObject::massLoadFwdRef($praticiens, "function_id");
$lits = CStoredObject::massLoadFwdRef($affectations, "lit_id");
$chambres = CStoredObject::massLoadFwdRef($lits, "chambre_id");
$services = CStoredObject::massLoadFwdRef($chambres, "service_id");
CStoredObject::massLoadBackRefs($sejours, "notes");
// Chargement des NDA
CSejour::massLoadNDA($sejours);
// Chargement des IPP
CPatient::massLoadIPP($patients);
foreach ($affectations as $affectation_id => $affectation) {
$affectation->loadView();
$affectation->loadRefsAffectations();
$affectation->_ref_prev->loadView();
$affectation->_ref_next->loadView();
$sejour = $affectation->loadRefSejour();
$praticien = $sejour->loadRefPraticien();
if ($filterFunction && $filterFunction != $praticien->function_id) {
unset($sejours[$sejour->_id]);
continue;
示例2: CConsultation
$where["plageconsult.chir_id"] = "= '{$user->_id}'";
}
/* @var CConsultation[] $consultations*/
$consultation = new CConsultation();
$consultations = $consultation->loadList($where, null, null, null, $ljoin);
$totals["consultations"] = count($consultations);
/** @var CPlageConsult[] $plages */
$plages = CStoredObject::massLoadFwdRef($consultations, "plageconsult_id");
CStoredObject::massLoadFwdRef($consultations, "sejour_id");
CStoredObject::massLoadFwdRef($consultations, "patient_id");
// Pré-chargement des users
$where = array("user_id" => CSQLDataSource::prepareIn(CMbArray::pluck($plages, "chir_id")));
$user->loadList($where);
/** @var CMediusers[] $chirs */
$chirs = CStoredObject::massLoadFwdRef($plages, "chir_id");
CStoredObject::massLoadFwdRef($chirs, "function_id");
CStoredObject::massLoadBackRefs($consultations, "actes_ccam");
foreach ($consultations as $key => $_consult) {
// Chargemement des codes CCAM
$_consult->loadExtCodesCCAM();
$codes_ccam = $_consult->_ext_codes_ccam;
// Nombre d'acte cotés par le praticien et réinitialisation du count pour le cache
$nb_actes_ccam = count($_consult->loadRefsActesCCAM());
// Aucun acte prévu ou coté
if (!count($codes_ccam) && !$_consult->_count_actes) {
$_consult->loadRefSejour();
$_consult->loadRefPraticien()->loadRefFunction();
$_consult->loadRefPatient();
continue;
}
// Actes prévus restant en suspend
示例3: mapDocs
function mapDocs($object, $with_cancelled, $tri)
{
// Documents et fichiers
$object->loadRefsDocItems($with_cancelled);
CStoredObject::massLoadFwdRef($object->_ref_documents, "file_category_id");
foreach ($object->_ref_documents as $_doc) {
CDocumentItem::makeIconName($_doc);
$_doc->loadContent(false);
$_doc->loadRefCategory();
$_doc->_ref_object = $object;
$this->_all_docs[$this->makePrefix($tri, $object, $_doc)][] = $_doc;
}
CStoredObject::massLoadFwdRef($object->_ref_files, "file_category_id");
foreach ($object->_ref_files as $_file) {
CDocumentItem::makeIconName($_file);
$_file->loadRefCategory();
$_file->_ref_object = $object;
$this->_all_docs[$this->makePrefix($tri, $object, $_file)][] = $_file;
}
// Formulaires
$ex_link = new CExLink();
$ex_link->setObject($object);
$ex_link->level = "object";
$ex_links = $ex_link->loadMatchingList();
$ex_objects = CExLink::massLoadExObjects($ex_links);
CStoredObject::massLoadFwdRef($ex_objects, "object_id");
foreach ($ex_links as $_link) {
$_ex = $_link->loadRefExObject();
$_ex->updateCreationFields();
$object = $_ex->loadTargetObject();
$_ex->_ex_class_id = $_link->ex_class_id;
$_ex->loadRefExClass();
CDocumentItem::makeIconName($_ex->_ref_ex_class);
$this->_all_docs[$this->makePrefix($tri, $object, $_ex)][] = $_link;
}
}
示例4: loadRefAffectationsUF
/**
* @return CAffectationUniteFonctionnelle[]
*/
function loadRefAffectationsUF()
{
/** @var CAffectationUniteFonctionnelle[] $affectations_uf */
$affectations_uf = $this->loadBackRefs("ufs");
CStoredObject::massLoadFwdRef($affectations_uf, "uf_id");
foreach ($affectations_uf as $_aff_uf) {
$_aff_uf->loadRefUniteFonctionnelle();
}
return $this->_ref_affectations_uf = $affectations_uf;
}
示例5: foreach
CPatient::massCountPhotoIdentite($patients);
foreach ($affectations as $_affectation_imc) {
/* @var CAffectation $_affectation_imc*/
if (CAppUI::conf("dPhospi vue_temporelle show_imc_patient", "CService-" . $_affectation_imc->service_id)) {
$_affectation_imc->loadRefSejour()->loadRefPatient()->loadRefLatestConstantes(null, array("poids", "taille"));
}
}
// Préchargement des users
$user = new CUser();
$where = array("user_id" => CSQLDataSource::prepareIn(CMbArray::pluck($_sejours, "praticien_id")));
$users = $user->loadList($where);
$praticiens = CStoredObject::massLoadFwdRef($_sejours, "praticien_id");
CStoredObject::massLoadFwdRef($praticiens, "function_id");
CStoredObject::massCountBackRefs($affectations, "affectations_enfant");
$_operations = CStoredObject::massLoadBackRefs($sejours, "operations", "date ASC");
CStoredObject::massLoadFwdRef($_operations, "plageop_id");
loadVueTempo($sejours, $suivi_affectation, null, $operations, $date_min, $date_max, $period, $prestation_id, $functions_filter, $filter_function, $sejours_non_affectes);
if (CAppUI::conf("dPadmissions show_deficience")) {
CStoredObject::massLoadBackRefs($patients, "dossier_medical");
$dossiers = CMbArray::pluck($sejours, "_ref_patient", "_ref_dossier_medical");
CDossierMedical::massCountAntecedentsByType($dossiers, "deficience");
}
loadVueTempo($affectations, $suivi_affectation, null, $operations, $date_min, $date_max, $period, $prestation_id, $functions_filter, $filter_function, $sejours_non_affectes);
if (count($affectations) && CAppUI::conf("dPadmissions show_deficience")) {
$dossiers = CMbArray::pluck($affectations, "_ref_sejour", "_ref_patient", "_ref_dossier_medical");
CDossierMedical::massCountAntecedentsByType($dossiers, "deficience");
}
ksort($sejours_non_affectes, SORT_STRING);
$_sejour = new CSejour();
$_sejour->_type_admission = $_type_admission;
$smarty = new CSmartyDP();
示例6: foreach
foreach ($consultations as $_consultation) {
if ($_consultation->sejour_id != $_sejour->_id) {
continue;
}
if ($_consultation->type == "entree") {
continue;
}
$_consultation->loadRefPraticien()->loadRefFunction();
$patients_offline[$patient->_guid]["consultations"][$_consultation->_ref_chir->function_id] = $_consultation;
}
array_multisort(CMbArray::pluck($patients_offline[$patient->_guid]["consultations"], "_datetime"), SORT_DESC, $patients_offline[$patient->_guid]["consultations"]);
// Constantes
$patients_offline[$patient->_guid]["constantes"] = "";
$cstes = array_reverse($_sejour->loadListConstantesMedicales($where_cste));
if (count($cstes)) {
CStoredObject::massLoadFwdRef($cstes, "user_id");
foreach ($cstes as $_cste) {
$_cste->loadRefUser();
}
$smarty_cstes->assign("constantes_medicales_grid", CConstantesMedicales::buildGrid($cstes, false));
$smarty_cstes->assign("sejour", $_sejour);
$patients_offline[$patient->_guid]["constantes"] = $smarty_cstes->fetch("print_constantes.tpl", '', '', 0);
}
// Plan de soins
$page_break = 0;
if (count($patients_offline[$patient->_guid]["transmissions"]) || count($patients_offline[$patient->_guid]["observations"]) || count($patients_offline[$patient->_guid]["consultations"]) || $patients_offline[$patient->_guid]["constantes"]) {
$page_break = 1;
}
$params = array("sejours_ids" => $_sejour->_id, "date" => $date, "hours_before" => "2", "hours_after" => "2", "empty_lines" => "2", "dialog" => 1, "mode_lite" => 1, "page_break" => $page_break);
$patients_offline[$patient->_guid]["plan_soins"] = CApp::fetch("soins", "offline_plan_soins", $params);
// Pour IE9 qui a des soucis avec les espaces entre une fermeture et une ouverture de td
示例7: array
*/
CCanDo::checkRead();
$date = CValue::get("date", CMbDT::date());
$group = CGroups::loadCurrent();
$date_min = CMbDT::date("-" . CAppUI::conf("maternite CGrossesse min_check_terme", $group) . " DAYS", $date);
$date_max = CMbDT::date("+" . CAppUI::conf("maternite CGrossesse max_check_terme", $group) . " DAYS", $date);
$where = array();
$ljoin = array();
$where["grossesse.terme_prevu"] = "BETWEEN '{$date_min}' AND '{$date_max}'";
$where["grossesse.group_id"] = "= '{$group->_id}' ";
$where["grossesse.active"] = "= '1'";
$ljoin["patients"] = "patients.patient_id = grossesse.parturiente_id";
$grossesse = new CGrossesse();
/** @var CStoredObject[] $grossesses */
$grossesses = $grossesse->loadList($where, "terme_prevu ASC, nom ASC", null, null, $ljoin);
CStoredObject::massLoadFwdRef($grossesses, "parturiente_id");
CStoredObject::massCountBackRefs($grossesses, "sejours");
$consultations = CStoredObject::massLoadBackRefs($grossesses, "consultations");
CStoredObject::massLoadFwdRef($consultations, "plageconsult_id");
/** @var CGrossesse[] $grossesses */
foreach ($grossesses as $_grossesse) {
$_grossesse->loadRefParturiente();
$_grossesse->countRefSejours();
$_grossesse->loadRefsConsultations(true);
}
$smarty = new CSmartyDP();
$smarty->assign("grossesses", $grossesses);
$smarty->assign("date", $date);
$smarty->assign("date_min", $date_min);
$smarty->assign("date_max", $date_max);
$smarty->display("inc_tdb_grossesses.tpl");
示例8: array
$duration_operand = CValue::get("duration_operand");
$filter->duration = CValue::get("duration");
$ds = CSQLDataSource::get('std');
$where = array();
if ($filter->user_id) {
$where["user_id"] = $ds->prepare("= ?", $filter->user_id);
}
if ($filter->_date_min) {
$where[] = $ds->prepare("`datetime` >= ?", $filter->_date_min);
}
if ($filter->_date_max) {
$where[] = $ds->prepare("`datetime` >= ?", $filter->_date_max);
}
if ($filter->duration && in_array($duration_operand, array('<', '<=', '=', '>', '>='))) {
$where['duration'] = $ds->prepare("{$duration_operand} ?", $filter->duration);
}
$order = "datetime DESC";
/** @var CLongRequestLog[] $logs */
$logs = $filter->loadList($where, $order, "{$start}, 50");
$list_count = $filter->countList($where);
CStoredObject::massLoadFwdRef($logs, 'user_id');
foreach ($logs as $_log) {
$_log->loadRefUser();
$_log->_ref_user->loadRefFunction();
}
$smarty = new CSmartyDP();
$smarty->assign("start", $start);
$smarty->assign("list_count", $list_count);
$smarty->assign("filter", $filter);
$smarty->assign("logs", $logs);
$smarty->display("inc_list_long_request_logs.tpl");
示例9: array
$hours = array();
while ($date_temp < $date_max) {
$hours[] = $date_temp;
$date_temp = CMbDT::dateTime("+1 hour", $date_temp);
}
$operation->_debut_offset = CMbDate::position($debut_op, $date_min, "1hour");
$operation->_fin_offset = CMbDate::position($min_fin_op, $date_min, "1hour");
$operation->_width = $operation->_fin_offset - $operation->_debut_offset;
$ressource = new CRessourceMaterielle();
$ressource->type_ressource_id = $type_ressource_id;
// Les usages sur la période définie
$usages = $ressource->loadRefsUsages($date_min, $date_max);
CStoredObject::massLoadFwdRef($usages, "ressource_materielle_id");
$usages_by_ressource = array();
$besoins = CStoredObject::massLoadFwdRef($usages, "besoin_ressource_id");
CStoredObject::massLoadFwdRef($besoins, "operation_id");
$display_alert = array();
foreach ($usages as $_usage) {
if (!isset($usages_by_ressource[$_usage->ressource_materielle_id])) {
$usages_by_ressource[$_usage->ressource_materielle_id] = array();
}
$_ressource = $_usage->loadRefRessource();
$_operation = $_usage->loadRefBesoin()->loadRefOperation();
$_operation->loadRefPlageOp();
$_debut_op = $_operation->_datetime;
$_fin_op = CMbDT::addDateTime($_operation->temp_operation, $_debut_op);
$fin_retab = CMbDT::addDateTime($_ressource->retablissement, $_fin_op);
$_usage->_debut_offset = CMbDate::position(max($date_min, $_debut_op), $date_min, "1hour");
$_usage->_fin_offset = CMbDate::position(min($date_max, $_fin_op), $date_min, "1hour");
$_usage->_width = $_usage->_fin_offset - $_usage->_debut_offset;
$_usage->_debut_offset_retablissement = $_usage->_fin_offset;
示例10: CConsultation
$group = CGroups::loadCurrent();
$consultation = new CConsultation();
$where = array();
$where["consultation.grossesse_id"] = "IS NOT NULL";
$where["consultation.annule"] = "= '0'";
$where["plageconsult.date"] = "= '{$date}'";
$where["functions_mediboard.group_id"] = "= '{$group->_id}'";
$ljoin = array();
$ljoin["plageconsult"] = "plageconsult.plageconsult_id = consultation.plageconsult_id";
$ljoin["users_mediboard"] = "plageconsult.chir_id = users_mediboard.user_id";
$ljoin["functions_mediboard"] = "functions_mediboard.function_id = users_mediboard.function_id";
$curr_user = CMediusers::get();
if ($curr_user->isPraticien() || $curr_user->isSageFemme()) {
$where["plageconsult.chir_id"] = "= '{$curr_user->_id}'";
}
/** @var CConsultation[] $listConsults */
$listConsults = $consultation->loadList($where, "heure ASC", null, null, $ljoin);
$plages = CStoredObject::massLoadFwdRef($listConsults, "plageconsult_id");
CStoredObject::massLoadFwdRef($plages, "chir_id");
CStoredObject::massLoadFwdRef($listConsults, "sejour_id");
$grossesses = CStoredObject::massLoadFwdRef($listConsults, "grossesse_id");
CStoredObject::massLoadFwdRef($grossesses, "parturiente_id");
foreach ($listConsults as $_consult) {
$_consult->loadRefPraticien();
$_consult->loadRefSejour()->loadRefGrossesse();
$_consult->loadRefGrossesse()->loadRefParturiente();
}
$smarty = new CSmartyDP();
$smarty->assign("date", $date);
$smarty->assign("listConsults", $listConsults);
$smarty->display("inc_tdb_consultations.tpl");
示例11: unset
}
if ($next["CSejour"]->_id) {
$next["CSejour"]->loadRefPraticien();
$next["CSejour"]->loadNDA();
$next["CSejour"]->loadRefsNotes();
if ($filter == "dhe") {
unset($listConsultations[$_consult->_id]);
}
}
$_consult->_next_sejour_and_operation = $next;
} elseif ($filter == "dhe") {
unset($listConsultations[$_consult->_id]);
}
}
CStoredObject::massLoadFwdRef($sejours_total, "patient_id");
CStoredObject::massLoadFwdRef($sejours_total, "praticien_id");
CStoredObject::massLoadBackRefs($sejours_total, "notes");
CStoredObject::massLoadBackRefs($sejours_total, "affectations", "sortie DESC");
// Chargement des NDA
CSejour::massLoadNDA($sejours_total);
// Chargement optimisé des prestations
CSejour::massCountPrestationSouhaitees($sejours_total);
foreach ($sejours_total as $_sejour) {
$_sejour->loadRefPatient();
$_sejour->loadRefPraticien();
$_sejour->loadRefsNotes();
$_sejour->loadRefFirstAffectation();
$_sejour->getDroitsCMU();
}
// Création du template
$smarty = new CSmartyDP();
示例12: getReportedValues
/**
* attention aux dates, il faut surement checker le log de derniere modif des champs du concept
*
* @fixme pas trop optimisé
*/
function getReportedValues(CExClassEvent $event)
{
$ex_class = $this->_ref_ex_class;
$fields = $ex_class->loadRefsAllFields(true);
if ($this->_id) {
return $fields;
}
self::$_multiple_load = true;
CExClassField::$_load_lite = true;
$this->loadRefsLinks();
$latest_ex_objects = array($ex_class->getLatestExObject($this->_ref_object), $ex_class->getLatestExObject($this->_ref_reference_object_1), $ex_class->getLatestExObject($this->_ref_reference_object_2));
if ($this->_ref_object->_id) {
$this->_ref_object->loadComplete();
}
if ($this->_ref_reference_object_1->_id) {
$this->_ref_reference_object_1->loadComplete();
}
if ($this->_ref_reference_object_2->_id) {
$this->_ref_reference_object_2->loadComplete();
}
CStoredObject::massLoadFwdRef($fields, "ex_group_id");
$all_concepts = CStoredObject::massLoadFwdRef($fields, "concept_id");
$all_back_fields = CStoredObject::massLoadBackRefs($all_concepts, "class_fields");
$ex_groups = CStoredObject::massLoadFwdRef($all_back_fields, "ex_group_id");
CStoredObject::massLoadFwdRef($ex_groups, "ex_class_id");
// Cache de concepts
$concepts = array();
$ex_classes = array();
// on cherche les champs reportés de l'objet courant
foreach ($fields as $_field) {
$field_name = $_field->name;
$this->_reported_fields[$field_name] = null;
// valeur par défaut
$spec_obj = $_field->getSpecObject();
$this->{$field_name} = CExClassField::unescapeProp($spec_obj->default);
$_concept = null;
if ($_field->concept_id) {
$_concept = $_field->loadRefConcept();
}
// si champ pas reporté, on passe au suivant
if (!($_field->report_class || $_field->concept_id && $_concept->native_field)) {
continue;
}
// Native fields
if ($_concept && $_concept->native_field) {
list($_class, $_path) = explode(" ", $_concept->native_field, 2);
if (isset($this->_preview)) {
$this->_reported_fields[$field_name] = new $_class();
$this->{$field_name} = "Test";
} else {
if ($this->_ref_object->_class == $_class) {
$_object = $this->_ref_object;
} elseif ($this->_ref_reference_object_1->_class == $_class) {
$_object = $this->_ref_reference_object_1;
} elseif ($this->_ref_reference_object_2->_class == $_class) {
$_object = $this->_ref_reference_object_2;
}
list($_object, $_path) = CExClassConstraint::getFieldAndObjectStatic($_object, $_path);
$_resolved = CExClassConstraint::resolveObjectFieldStatic($_object, $_path);
$_obj = $_resolved["object"];
$_field_name = $_resolved["field"];
$this->_reported_fields[$field_name] = $_object;
$this->{$field_name} = $_obj->{$_field_name};
}
if ($this->{$field_name}) {
continue;
}
}
$_report_class = $_field->report_class;
// si champ basé sur un concept, il faut parcourir
// tous les formulaires qui ont un champ du meme concept
if ($_field->concept_id) {
if (!isset($concepts[$_field->concept_id])) {
$_concept_fields = $_concept->loadRefClassFields();
foreach ($_concept_fields as $_concept_field) {
if (!isset($ex_classes[$_concept_field->ex_group_id])) {
$ex_classes[$_concept_field->ex_group_id] = $_concept_field->loadRefExClass();
} else {
$_concept_field->_ref_ex_class = $ex_classes[$_concept_field->ex_group_id];
}
}
$concepts[$_field->concept_id] = array($_concept, $_concept_fields);
} else {
list(, $_concept_fields) = $concepts[$_field->concept_id];
}
/** @var CExObject $_latest */
$_latest = null;
$_latest_value = null;
// on regarde tous les champs du concept
foreach ($_concept_fields as $_concept_field) {
$_ex_class = $_concept_field->_ref_ex_class;
$_concept_latest = null;
if ($this->_ref_object->_class == $_report_class) {
$_concept_latest = $_ex_class->getLatestExObject($this->_ref_object);
} elseif ($this->_ref_reference_object_1->_class == $_report_class) {
//.........这里部分代码省略.........
示例13: COperation
$operation = new COperation();
$ljoin = array();
$ljoin["sejour"] = "operations.sejour_id = sejour.sejour_id";
$ljoin["grossesse"] = "sejour.grossesse_id = grossesse.grossesse_id";
$where = array();
// Interv ou travail qui commence le jour choisi et n'a pas terminé d'accoucher
$where[] = "operations.date = '{$date}' OR (\n grossesse.datetime_debut_travail IS NOT NULL AND\n DATE(grossesse.datetime_debut_travail) < '{$date}' AND\n grossesse.datetime_accouchement IS NULL\n)";
$where["operations.chir_id"] = CSQLDataSource::prepareIn(array_keys($listChirs));
$where["sejour.grossesse_id"] = "IS NOT NULL";
/** @var CStoredObject[] $urgences */
$urgences = $operation->loadGroupList($where, "salle_id, chir_id", null, null, $ljoin);
$reservation_installed = CModule::getActive("reservation");
$diff_hour_urgence = CAppUI::conf("reservation diff_hour_urgence");
$sejours = CStoredObject::massLoadFwdRef($urgences, "sejour_id");
$patients = CStoredObject::massLoadFwdRef($sejours, "patient_id");
CStoredObject::massLoadFwdRef($sejours, "grossesse_id");
$plage = new CPlageOp();
/** @var COperation[] $urgences */
foreach ($urgences as &$urgence) {
$urgence->loadRefsFwd();
$urgence->loadRefAnesth();
$urgence->_ref_chir->loadRefsFwd();
$sejour = $urgence->_ref_sejour;
$patient = $sejour->loadRefPatient();
$sejour->loadRefGrossesse();
$dossier_medical = $patient->loadRefDossierMedical();
$dossier_medical->loadRefsAntecedents();
$dossier_medical->countAntecedents();
$dossier_medical->countAllergies();
if ($reservation_installed) {
$first_log = $urgence->loadFirstLog();
示例14: CPlateauTechnique
// Chargement de tous les plateaux et des equipements et techniciens associés
$plateau_tech = new CPlateauTechnique();
$plateau_tech->group_id = CGroups::loadCurrent()->_id;
/** @var CPlateauTechnique[] $plateaux */
$plateaux = $plateau_tech->loadMatchingList();
CMbObject::massLoadBackRefs($plateaux, "equipements", "nom ASC");
foreach ($plateaux as $_plateau) {
$_plateau->loadRefsEquipements();
}
// Chargement des executants en fonction des category de prescription
$executants = array();
$reeducateurs = array();
$selected_cat = "";
$user = CMediusers::get();
$func_cats = CStoredObject::massLoadBackRefs($categories, "functions_category");
CStoredObject::massLoadFwdRef($func_cats, "function_id");
foreach ($categories as $_category) {
// Chargement des associations pour chaque catégorie
$associations[$_category->_id] = $_category->loadBackRefs("functions_category");
// Parcours des associations trouvées et chargement des utilisateurs
/** @var CFunctionCategoryPrescription $_association */
foreach ($associations[$_category->_id] as $_association) {
$function = $_association->loadRefFunction();
$function->loadRefsUsers();
foreach ($function->_ref_users as $_user) {
$_user->_ref_function = $function;
if ($_user->_id == $user->_id && !$selected_cat) {
$selected_cat = $_category;
}
$executants[$_category->_id][$_user->_id] = $_user;
$reeducateurs[$_user->_id] = $_user;
示例15: array_merge
$error_logs[] = $error_log;
$user_ids = array_merge($user_ids, $error_log->_similar_user_ids);
$list_ids = array_merge($list_ids, $error_log->_similar_ids);
}
// Load users for similar groupings
$user_ids = array_unique($user_ids);
$user = new CUser();
$users = $user->loadAll($user_ids);
} else {
$total = $error_log->countList($where);
$error_logs = $error_log->loadList($where, $order, $limit, $groupby);
$list_ids = CMbArray::pluck($error_logs, "_id");
$users = CStoredObject::massLoadFwdRef($error_logs, "user_id");
}
// Get all data
CStoredObject::massLoadFwdRef($error_logs, "stacktrace_id");
CStoredObject::massLoadFwdRef($error_logs, "param_GET_id");
CStoredObject::massLoadFwdRef($error_logs, "param_POST_id");
CStoredObject::massLoadFwdRef($error_logs, "session_data_id");
foreach ($error_logs as $_error_log) {
$_error_log->loadComplete();
}
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("error_logs", $error_logs);
$smarty->assign("list_ids", $list_ids);
$smarty->assign("total", $total);
$smarty->assign("start", $start);
$smarty->assign("users", $users);
$smarty->assign("group_similar", $group_similar);
$smarty->display('inc_list_error_logs.tpl');