/**
  * @see parent::getValue()
  */
 function getValue($object, $smarty = null, $params = array())
 {
     if ($smarty) {
         include_once $smarty->_get_plugin_filepath('modifier', 'date_format');
     }
     $propValue = $object->{$this->fieldName};
     $format = CMbArray::extract($params, "format", CAppUI::conf("datetime"));
     if ($format === "relative") {
         $relative = CMbDate::relative($propValue, CMbDT::dateTime());
         return $relative["count"] . " " . CAppUI::tr($relative["unit"] . ($relative["count"] > 1 ? "s" : ""));
     }
     $date = CMbArray::extract($params, "date");
     if ($date && CMbDT::date($propValue) == $date) {
         $format = CAppUI::conf("time");
     }
     return $propValue && $propValue != "0000-00-00 00:00:00" ? smarty_modifier_date_format($propValue, $format) : "";
 }
示例#2
0
 /**
  * @see parent::updateFormFields()
  */
 function updateFormFields()
 {
     parent::updateFormFields();
     // Noms
     $anonyme = is_numeric($this->nom);
     $this->nom = self::applyModeIdentitoVigilance($this->nom, false, null, $anonyme);
     $this->nom_jeune_fille = self::applyModeIdentitoVigilance($this->nom_jeune_fille, false, null, $anonyme);
     $this->prenom = self::applyModeIdentitoVigilance($this->prenom, true, null, $anonyme);
     $this->_nom_naissance = $this->nom_jeune_fille ? $this->nom_jeune_fille : $this->nom;
     $this->_prenoms = array($this->prenom, $this->prenom_2, $this->prenom_3, $this->prenom_4);
     if ($this->libelle_exo) {
         $this->_art115 = preg_match("/pension militaire/i", $this->libelle_exo);
     }
     $relative = CMbDate::relative($this->naissance);
     if ($this->deces) {
         $relative = CMbDate::relative($this->naissance, $this->deces);
     }
     if ($relative["count"] < 0) {
         $relative["count"] = 0;
     }
     $this->evalAge();
     $str = $relative["unit"] . ($relative["count"] > 1 ? "s" : "") . ($relative["unit"] == "year" ? "_old" : "");
     $this->_age = $relative["count"] . " " . CAppUI::tr($str);
     $this->checkVIP();
     $this->_civilite = CAppUI::tr("CPatient.civilite.{$this->civilite}");
     if ($this->civilite === "enf") {
         $this->_civilite_long = CAppUI::tr("CPatient.civilite." . ($this->sexe === "m" ? "le_jeune" : "la_jeune"));
     } else {
         $this->_civilite_long = CAppUI::tr("CPatient.civilite.{$this->civilite}-long");
     }
     $this->_assure_civilite = CAppUI::tr("CPatient.civilite.{$this->assure_civilite}");
     if ($this->assure_civilite === "enf") {
         $this->_assure_civilite_long = CAppUI::tr("CPatient.civilite." . ($this->assure_sexe === "m" ? "le_jeune" : "la_jeune"));
     } else {
         $this->_assure_civilite_long = CAppUI::tr("CPatient.civilite.{$this->assure_civilite}-long");
     }
     $nom_naissance = $this->nom_jeune_fille && $this->nom_jeune_fille != $this->nom ? " ({$this->nom_jeune_fille})" : "";
     $this->_view = "{$this->_civilite} {$this->nom}{$nom_naissance} {$this->prenom}";
     $this->_longview = "{$this->_civilite_long} {$this->nom}{$nom_naissance} {$this->prenom}";
     if (CAppUI::conf("dPpatients CPatient manage_identity_status", CGroups::loadCurrent())) {
         $this->_view .= $this->status ? " [{$this->status}.]" : "";
         $this->_longview .= $this->status ? " [{$this->status}.]" : "";
     }
     $this->_view .= $this->vip ? " [Conf.]" : "";
     $this->_view .= $this->deces ? " [Décès.]" : "";
     $this->_longview .= $this->vip ? " [Conf.]" : "";
     $this->_longview .= $this->deces ? " [Décès.]" : "";
     // Navigation fields
     //$this->_dossier_cabinet_url = self::$dossier_cabinet_prefix[CAppUI::pref("DossierCabinet")] . $this->_id;
     $this->_dossier_cabinet_url = self::$dossier_cabinet_prefix["dPpatients"] . $this->_id;
     if ($this->pays_insee) {
         $this->pays = CPaysInsee::getNomFR($this->pays_insee);
     }
     if ($this->csp) {
         $this->_csp_view = $this->getCSPName();
     }
     $this->mapPerson();
 }
 /**
  * Format to relative datetime
  * Example: {$datetime|rel_datetime:$now}
  *
  * @param string $datetime  The date to format
  * @param string $reference Reference datetime
  *
  * @return string
  */
 function rel_datetime($datetime, $reference = null)
 {
     if (!$datetime) {
         return;
     }
     $relative = CMbDate::relative(CMbDT::dateTime($reference), $datetime);
     return $relative["count"] . " " . CAppUI::tr($relative["unit"] . (abs($relative["count"]) > 1 ? "s" : ""));
 }
示例#4
0
 static function getReleaseInfo()
 {
     $svn_status_file = __DIR__ . "/../tmp/svnstatus.txt";
     $root_release_file = __DIR__ . "/../release.xml";
     $applicationVersion = array("releaseTitle" => null, "releaseDate" => null, "releaseCode" => null, "releaseRev" => null, "revision" => null, "date" => null, "relative" => null, "title" => "");
     // Release information
     if (is_readable($root_release_file)) {
         $releaseInfoDOM = new DOMDocument();
         $releaseInfoDOM->load($root_release_file);
         $releaseElement = $releaseInfoDOM->documentElement;
         $releaseCode = $releaseElement->getAttribute("code");
         list($year, $month) = explode("_", $releaseCode);
         $title = strftime("%B", mktime(0, 0, 0, $month, 10)) . " " . $year;
         $applicationVersion["releaseTitle"] = $title;
         $applicationVersion["releaseDate"] = CMbDT::dateTimeFromXMLDuration($releaseElement->getAttribute("date"));
         $applicationVersion["releaseCode"] = $releaseCode;
         $applicationVersion["releaseRev"] = $releaseElement->getAttribute("rev");
         $applicationVersion["title"] = "Branche de " . $applicationVersion["releaseTitle"];
     }
     // Revision information
     if (is_readable($svn_status_file)) {
         $svnInfo = file($svn_status_file);
         $revision = array("revision" => explode(": ", $svnInfo[0]), "date" => explode(": ", $svnInfo[1]));
         $applicationVersion["revision"] = trim($revision["revision"][1]);
         $applicationVersion["date"] = CMbDT::dateTime(trim($revision["date"][1]));
         $applicationVersion["relative"] = CMbDate::relative($applicationVersion["date"]);
         $applicationVersion["title"] .= "\n" . "Mise à jour le " . CMbDT::dateToLocale($applicationVersion["date"]) . "\n" . "Révision : " . $applicationVersion["revision"];
     }
     return $applicationVersion;
 }
示例#5
0
    $sql = "SELECT sexe\n          FROM affectation\n          LEFT JOIN lit ON lit.lit_id = affectation.lit_id\n          LEFT JOIN sejour ON sejour.sejour_id = affectation.sejour_id\n          LEFT JOIN patients ON patients.patient_id = sejour.patient_id\n          WHERE lit.chambre_id = '{$_lit->chambre_id}'\n          AND lit.lit_id != '{$_lit->_id}'\n          AND '{$datetime}' BETWEEN affectation.entree AND affectation.sortie";
    $_lit->_sexe_other_patient = $ds->loadResult($sql);
    $where = array("lit_id" => "= '{$_lit->_id}'", "entree" => " >= '{$sortie}'");
    $_lit->_ref_next_dispo = new CAffectation();
    $_lit->_ref_next_dispo->loadObject($where, "entree ASC");
    $_lit->_dispo_depuis_friendly = CMbDate::relative($_lit->_ref_last_dispo->sortie, $entree);
    if ($_lit->_ref_next_dispo->entree) {
        $_lit->_occupe_dans = strtotime($_lit->_ref_next_dispo->entree) - strtotime($sortie);
        if ($_lit->_occupe_dans < 0) {
            unset($lits[$key]);
            continue;
        }
        if ($max_sortie < $_lit->_occupe_dans) {
            $max_sortie = $_lit->_occupe_dans;
        }
        $_lit->_occupe_dans_friendly = CMbDate::relative($sortie, $_lit->_ref_next_dispo->entree);
    } else {
        $_lit->_occupe_dans = "libre";
    }
}
$sorter = CMbArray::pluck($lits, "_dispo_depuis");
array_multisort($sorter, SORT_ASC, $lits);
$smarty = new CSmartyDP();
$smarty->assign("lits", $lits);
$smarty->assign("affectation_id", $affectation_id);
$smarty->assign("max_entree", $max_entree);
$smarty->assign("max_sortie", $max_sortie);
$smarty->assign("_link_affectation", $_link_affectation);
$smarty->assign("services_ids_suggest", $services_ids_suggest);
$smarty->assign("datetime", $datetime);
$smarty->display("inc_suggest_lit.tpl");
<?php

/**
 * $Id: httpreq_vw_object_notes.php 19290 2013-05-26 19:48:24Z phenxdesign $
 *
 * @package    Mediboard
 * @subpackage System
 * @author     SARL OpenXtrem <*****@*****.**>
 * @license    GNU General Public License, see http://www.gnu.org/licenses/gpl.html
 * @version    $Revision: 19290 $
 */
$object = mbGetObjectFromGet("object_class", "object_id", "object_guid");
$object->loadRefsNotes(PERM_READ);
foreach ($object->_ref_notes as $note) {
    $note->_ref_user->loadRefsFwd();
    $note->_date_relative = CMbDate::relative($note->date);
}
// Création du template
$smarty = new CSmartyDP();
$smarty->assign("notes", $object->_ref_notes);
$smarty->assign("object", $object);
$smarty->display("vw_object_notes.tpl");
示例#7
0
    $res_current_etab["CChambre"] = $chambre->countList($where, null, $ljoin);
    // - Utilisateurs
    $ljoin = array();
    $where = array();
    $mediuser = new CMediusers();
    $ljoin["functions_mediboard"] = "users_mediboard.function_id = functions_mediboard.function_id";
    $where["functions_mediboard.group_id"] = " = '{$current_group}'";
    $res_current_etab["CMediusers"] = $mediuser->countList($where, null, $ljoin);
    $smarty->assign("res_current_etab", $res_current_etab);
    $smarty->display("inc_metrique_current_etab.tpl");
} else {
    $ds = CSQLDataSource::get("std");
    $etab = CGroups::loadCurrent();
    $result = array();
    $listeClasses = CApp::getInstalledClasses();
    foreach ($listeClasses as $class) {
        $object = new $class();
        if ($object->_spec->measureable) {
            $sql = "SHOW TABLE STATUS LIKE '{$object->_spec->table}'";
            $statusTable = $ds->loadList($sql);
            if ($statusTable) {
                $result[$class] = $statusTable[0];
                $result[$class]["Update_relative"] = CMbDate::relative($result[$class]["Update_time"]);
            }
        }
    }
    $smarty->assign("result", $result);
    $smarty->assign("etab", $etab);
    $smarty->assign("nb_etabs", $etab->countList());
    $smarty->display("view_metrique.tpl");
}