/** * Compile la balise `#VOIR_SAISIE` qui retourne le code HTML de la vue d'une saisie indiquée * * Cette balise incluera le squelette `saisies-vues/_base.html` et lui-même `saisies-vues/{type}.html` * * @syntaxe `#VOIR_SAISIE{type,nom[,option=valeur,...]}` * @uses Pile::recuperer_et_supprimer_argument_balise() * @uses Pile::creer_et_ajouter_argument_balise() * @uses Pile::creer_balise() * @see balise_INCLURE_dist() * * @param Champ $p * @return Champ */ function balise_VOIR_SAISIE_dist ($p) { // on recupere les parametres sans les traduire en code d'execution php $type_saisie = Pile::recuperer_et_supprimer_argument_balise(1, $p); $nom = Pile::recuperer_et_supprimer_argument_balise(1, $p); // creer #ENV*{$titre} (* pour les cas de tableau serialises par exemple, que l'on veut reutiliser) $env_nom = Pile::creer_balise('ENV', array('param' => array($nom), 'etoile' => '*')); // #ENV*{nom} // on modifie $p pour ajouter des arguments // {nom=$nom, valeur=#ENV{$nom}, type_saisie=$type, fond=saisies/_base} $p = Pile::creer_et_ajouter_argument_balise($p, 'nom', $nom); $p = Pile::creer_et_ajouter_argument_balise($p, 'valeur', $env_nom); $p = Pile::creer_et_ajouter_argument_balise($p, 'type_saisie', $type_saisie); $p = Pile::creer_et_ajouter_argument_balise($p, 'fond', 'saisies-vues/_base'); // on appelle la balise #INCLURE // avec les arguments ajoutes if(function_exists('balise_INCLURE')) { return balise_INCLURE($p); } else { return balise_INCLURE_dist($p); } }
/** * Compile la balise `#CONFIGURER_SAISIE` * * @uses Pile::recuperer_et_supprimer_argument_balise() * @uses Pile::creer_et_ajouter_argument_balise() * @see balise_INCLURE_dist() * * @param Champ $p * @return Champ **/ function balise_CONFIGURER_SAISIE_dist($p) { // On recupere le premier argument : le nom de la saisie $saisie = Pile::recuperer_et_supprimer_argument_balise(1, $p); // On ajoute le squelette a inclure dans les parametres $p = Pile::creer_et_ajouter_argument_balise($p, 'fond', 'inclure/configurer_saisie'); // On ajoute l'environnement $p = Pile::creer_et_ajouter_argument_balise($p, 'env'); // On ajoute le nom recupere $p = Pile::creer_et_ajouter_argument_balise($p, 'saisie', $saisie); // On redirige vers la balise INCLURE if (function_exists('balise_INCLURE')) { return balise_INCLURE($p); } else { return balise_INCLURE_dist($p); } }
/** * Compile la balise `#GENERER_SAISIES` qui retourne le code HTML des saisies de formulaire, * à partir du tableau des saisies transmises * * La balise accepte 1 paramètre qui est une liste de descriptions de saisies * dont on veut générer le HTML affichant les champs du formulaires * * Cette balise est un raccourcis : * - `#GENERER_SAISIES{#TABLEAU_DE_SAISIES}` est équivalent à * - `#INCLURE{fond=inclure/generer_saisies,env,saisies=#TABLEAU_DE_SAISIES}` * * @syntaxe `#GENERER_SAISIE{#TABLEAU_DE_SAISIES}` * * @param Champ $p * Pile au niveau de la balise * @return Champ * Pile complété du code à générer **/ function balise_GENERER_SAISIES_dist($p) { // On recupere le premier (et seul) argument : le tableau decrivant ce qu'on veut generer $config = Pile::recuperer_et_supprimer_argument_balise(1, $p); // On ajoute le squelette a inclure dans les parametres $p = Pile::creer_et_ajouter_argument_balise($p, 'fond', 'inclure/generer_saisies'); // On ajoute l'environnement $p = Pile::creer_et_ajouter_argument_balise($p, 'env'); // On ajoute le tableau recupere $p = Pile::creer_et_ajouter_argument_balise($p, 'saisies', $config); // On redirige vers la balise INCLURE if (function_exists('balise_INCLURE')) { return balise_INCLURE($p); } else { return balise_INCLURE_dist($p); } }
/** * Compile la balise `#VOIR_SAISIES` qui retourne le code HTML des vues de formulaire, * à partir du tableau des saisies transmises * * La balise accepte 1 paramètre qui est une liste de descriptions de saisies * dont on veut générer le HTML affichant les vues du formulaires * * Cette balise est un raccourcis : * - `#VOIR_SAISIES{#TABLEAU_DE_SAISIES}` est équivalent à * - `#INCLURE{fond=inclure/voir_saisies,env,saisies=#TABLEAU_DE_SAISIES}` * * @syntaxe `#VOIR_SAISIE{#TABLEAU_DE_SAISIES}` * * @param Champ $p * Pile au niveau de la balise * @return Champ * Pile complété du code à générer **/ function balise_VOIR_SAISIES_dist($p) { // On recupere les arguments : les tableaux decrivant ce qu'on veut generer + les reponses $saisies = Pile::recuperer_et_supprimer_argument_balise(1, $p); $valeurs = Pile::recuperer_et_supprimer_argument_balise(1, $p); // On ajoute le squelette a inclure dans les parametres $p = Pile::creer_et_ajouter_argument_balise($p, 'fond', 'inclure/voir_saisies'); // On ajoute l'environnement $p = Pile::creer_et_ajouter_argument_balise($p, 'env'); // On ajoute les tableaux recuperes $p = Pile::creer_et_ajouter_argument_balise($p, 'saisies', $saisies); $p = Pile::creer_et_ajouter_argument_balise($p, 'valeurs', $valeurs); // On redirige vers la balise INCLURE if (function_exists('balise_INCLURE')) { return balise_INCLURE($p); } else { return balise_INCLURE_dist($p); } }
</div> <? }else if($scrapbookName=='userScrapbook'){ ?> <h1><span><?=t("%s's Personal Scrapbook", $u->getUserName()) ?></span></h1> <div class="ccm-dashboard-inner"> <a style="float: right" href="<?=View::url($cPath) ?>"><?= t("« Return to Scrapbook List") ?></a> <div id="ccm-scrapbook-list" class="user-scrapbook ui-sortable"> <? $sp = Pile::getDefault(); $contents = $sp->getPileContentObjects('display_order_date'); $realPilesCounter=0; foreach($contents as $obj) { $item = $obj->getObject(); if (is_object($item)) { $bt = $item->getBlockTypeObject(); $btIcon = $ci->getBlockTypeIconURL($bt); $pcID=$obj->getPileContentID(); ?> <div class="ccm-scrapbook-list-item" id="ccm-pc-<?=$pcID ?>"> <div class="ccm-block-type"> <div class="options"> <a title="<?php echo t('Remove from Scrapbook')?>" href="<?php echo $this->action('deleteBlock', urlencode($scrapbookName), $pcID, 0, $valt->generate('delete_scrapbook_block')) ?>" id="sb<?=$pcID ?>">
function get($pcID) { $db = Loader::db(); $v = array($pcID); $q = "select pID, pcID, itemID, itemType, displayOrder, quantity, timestamp from PileContents where pcID = ?"; $r = $db->query($q, $v); $row = $r->fetchRow(); $pc = new PileContent(); if (is_array($row)) { foreach ($row as $k => $v) { $pc->{$k} = $v; } } $p = Pile::get($pc->pID); $pc->p = $p; // pc-p . get it ? return $pc; }
function getMyPiles() { $db = Loader::db(); $u = new User(); if ($u->isRegistered()) { $v = array($u->getUserID()); $q = "select pID from Piles where uID = ? order by name asc"; } $piles = array(); $r = $db->query($q, $v); if ($r) { while ($row = $r->fetchRow()) { $piles[] = Pile::get($row['pID']); } } return $piles; }
/** * Crée et ajoute un argument à une balise * * @uses Pile::creer_argument_balise() * @uses Pile::ajouter_argument_balise() * * @param Champ $p * @param string $nom * Nom de l'argument * @param string|object $valeur * Valeur de l'argument. Peut être une chaîne de caractère ou un autre élément d'AST * @return Champ **/ static function creer_et_ajouter_argument_balise($p, $nom, $valeur = null) { $new = Pile::creer_argument_balise($nom, $valeur); return Pile::ajouter_argument_balise($new, $p); }