Example #1
0
function select_rub($id_cde, $id_rubrique = 0)
{
    global $msg, $charset;
    global $select_rub;
    $cde = new actes($id_cde);
    if ($cde->statut >= STA_ACT_ARC) {
        //Commande archivée, facture non modifiable
        $lig_rub = $select_rub[1];
        if (!$id_rubrique) {
            $id_rubrique = 0;
            $lib_rub = '';
        } else {
            $rub = new rubriques($id_rubrique);
            $bud = new budgets($rub->num_budget);
            $lib_bud = $bud->libelle;
            $tab_rub = rubriques::listAncetres($id_rubrique, true);
            $lib_rub = $lib_bud . ':';
            foreach ($tab_rub as $value) {
                $lib_rub .= htmlentities($value[1], ENT_QUOTES, $charset);
                if ($value[0] != $id_rubrique) {
                    $lib_rub .= ":";
                }
            }
        }
        $lig_rub = str_replace('!!id_rub!!', $id_rubrique, $lig_rub);
        $lig_rub = str_replace('!!lib_rub!!', $lib_rub, $lig_rub);
    } else {
        //Commande non archivée, modification des rubriques possible
        if (!$id_rubrique) {
            //Pas de rubrique sélectionnée
            $lig_rub = $select_rub[0];
            $lig_rub = str_replace('!!id_rub!!', 0, $lig_rub);
            $lig_rub = str_replace('!!lib_rub!!', '', $lig_rub);
        } else {
            //Rubrique selectionnée
            $user_userid = getCurrentUserId();
            $rub = new rubriques($id_rubrique);
            $bud = new budgets($rub->num_budget);
            if (!rubriques::getAutorisations($id_rubrique, $user_userid)) {
                //L'utilisateur n'a pas de droits sur la rubrique
                $lig_rub = $select_rub[1];
            } else {
                //L'utilisateur à des droits sur la rubrique
                $lig_rub = $select_rub[0];
            }
            $lig_rub = str_replace('!!id_rub!!', $rub->id_rubrique, $lig_rub);
            $lib_bud = htmlentities($bud->libelle, ENT_QUOTES, $charset);
            $tab_rub = rubriques::listAncetres($id_rubrique, true);
            $lib_rub = $lib_bud . ':';
            foreach ($tab_rub as $value) {
                $lib_rub .= htmlentities($value[1], ENT_QUOTES, $charset);
                if ($value[0] != $id_rubrique) {
                    $lib_rub .= ":";
                }
            }
            $lig_rub = str_replace('!!lib_rub!!', $lib_rub, $lig_rub);
        }
    }
    return $lig_rub;
}