当前位置: 首页>>代码示例>>PHP>>正文


PHP Kernel::getNodeInfo方法代码示例

本文整理汇总了PHP中Kernel::getNodeInfo方法的典型用法代码示例。如果您正苦于以下问题:PHP Kernel::getNodeInfo方法的具体用法?PHP Kernel::getNodeInfo怎么用?PHP Kernel::getNodeInfo使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Kernel的用法示例。


在下文中一共展示了Kernel::getNodeInfo方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: canMakeInFicheEcole

 /**
  * Determine si l'usager peut afficher ou modifier la fiche d'une ecole
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2008/08/04
  * @param integer $pId Id de l'ecole
  * @param string $pAction Indication eventuelle sur une action precise.
  * @return boolean True s'il a le droit, false sinon
  */
 public function canMakeInFicheEcole($pId, $pAction)
 {
     $can = false;
     //echo "canMakeInFicheEcole ($pId, $pAction)";
     $session = Kernel::getSessionBU();
     $myNodes = Kernel::getMyNodes();
     if ($pAction == "VIEW") {
         return true;
     }
     //var_dump($myNodes);
     //var_dump($session);
     switch ($session['type']) {
         case 'USER_ENS':
             foreach ($myNodes as $node) {
                 if ($node->type == 'BU_ECOLE' && $node->id == $pId && $node->droit >= 70) {
                     if ($pAction == 'MODIFY') {
                         $can = true;
                     }
                 }
             }
             break;
         case 'USER_VIL':
             if ($pAction == 'MODIFY_VILLE') {
                 // Court-circuite du reste, canMakeInFicheEcole(MODIFY) ayant forcement ete fait avant
                 return true;
             }
             foreach ($myNodes as $node) {
                 if ($node->type == 'BU_ECOLE' && $node->id == $pId && $node->droit >= 70) {
                     $can = true;
                 }
             }
             if (!$can) {
                 // On verifie si l'ecole est dans sa ville
                 $rEcole = Kernel::getNodeInfo('BU_ECOLE', $pId, false);
                 reset($myNodes);
                 //var_dump($myNodes);
                 //var_dump($rEcole['ALL']);
                 foreach ($myNodes as $node) {
                     if ($node->type == 'BU_VILLE' && $node->id == $rEcole['ALL']->vil_id_vi && $node->droit >= 70) {
                         $can = true;
                     }
                 }
             }
             break;
     }
     return $can;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:56,代码来源:fichesecolesservice.class.php

示例2: _createContent

 /**
  * Detail d'une procedure
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2008/01/30
  * @param object $rFiche Recordset de la procedure
  */
 public function _createContent(&$toReturn)
 {
     $tpl = new CopixTpl();
     $rFiche = $this->getParam('rFiche');
     $errors = $this->getParam('errors');
     $ok = $this->getParam('ok');
     $print = $this->getParam('print');
     //var_dump($rFiche);
     //$daoType = & _dao ('type');
     //$tpl->assign ('arTypes', $daoType->findAll ());
     $arResponsables = preg_split('/[\\s,]+/', $rFiche->responsables);
     $rFiche->tabResponsables = $arResponsables;
     $mondroit = $this->getParam('mondroit');
     $rEcole = Kernel::getNodeInfo('BU_ECOLE', $rFiche->idetabliss, false);
     //var_dump($rEcole);
     $rFiche->ecole_nom = $rEcole['ALL']->eco_nom;
     $rFiche->ecole_type = $rEcole['ALL']->eco_type;
     $rFiche->ecole_tel = $rEcole['ALL']->eco_tel;
     $rFiche->ecole_dir = AnnuaireService::getDirecteurInEcole($rFiche->idetabliss);
     $daoType =& _dao('teleprocedures|type');
     if ($tmp = $daoType->get($rFiche->idtype)) {
         $rFiche->idtype_nom = $tmp->nom;
     }
     $daoStatu =& _dao('teleprocedures|statu');
     if ($tmp = $daoStatu->get($rFiche->idstatu)) {
         $rFiche->idstatu_nom = $tmp->nom;
     }
     $canDelegue = TeleproceduresService::canMakeInTelep('DELEGUE', $mondroit, array('idinter' => $rFiche->idinter));
     $tpl->assign('canDelegue', $canDelegue);
     $tpl->assign('canViewDelai', TeleproceduresService::canMakeInTelep('VIEW_DELAI', $mondroit));
     $tpl->assign('rFiche', $rFiche);
     $tpl->assign('errors', $errors);
     $tpl->assign('ok', $ok);
     $tpl->assign('print', $print);
     $tplFiche = $tpl->fetch('fiche-zone.tpl');
     $toReturn = $tplFiche;
     return true;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:45,代码来源:fiche.zone.php

示例3: _createContent

 /**
  * Affiche la liste déroulante avec toutes les écoles d'une ville
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2006/01/06
  * @param integer $ville Id de la ville
  * @param integer $value Valeur actuelle de la combo
  * @param string $fieldName Nom du champ de type SELECT qui en résulte
  * @param string $attribs Attributs HTML de la liste (STYLE, ONCHANGE...)
  */
 public function _createContent(&$toReturn)
 {
     $tpl = new CopixTpl();
     $ville = $this->getParam('ville') ? $this->getParam('ville') : NULL;
     $value = $this->getParam('value') ? $this->getParam('value') : 0;
     $fieldName = $this->getParam('fieldName') ? $this->getParam('fieldName') : NULL;
     $attribs = $this->getParam('attribs') ? $this->getParam('attribs') : NULL;
     $ecoles = array();
     $childs = Kernel::getNodeChilds('BU_VILLE', $ville);
     foreach ($childs as $child) {
         if ($child['type'] == 'BU_ECOLE') {
             $node = Kernel::getNodeInfo($child['type'], $child['id'], false);
             //print_r($node);
             $ecoles[] = array('id' => $child['id'], 'nom' => $node['nom']);
         }
     }
     $tpl->assign('items', $ecoles);
     $tpl->assign('value', $value);
     $tpl->assign('fieldName', $fieldName);
     $tpl->assign('attribs', $attribs);
     $toReturn = $tpl->fetch('comboecoles.tpl');
     return true;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:33,代码来源:comboecoles.zone.php

示例4: loadXml

 public function loadXml()
 {
     if (!is_null($myNode = _sessionGet('myNode'))) {
         $ppo = new CopixPPO();
         $ppo->targetId = $myNode['id'];
         $ppo->targetType = $myNode['type'];
         $ppo->myNodeInfos = Kernel::getNodeInfo($myNode['type'], $myNode['id']);
         if ($ppo->targetType == "BU_CLASSE") {
             $ppo->url_classe = urlencode($ppo->myNodeInfos['nom']);
             $ppo->siret_ecole = $ppo->myNodeInfos['ALL']->eco_siret;
         }
     }
     $this->rssUrl = $this->helpers->config('rssetagere|rss_url');
     // $this->rssUrl = $this->rssUrl.'?classe='.$ppo->url_classe.'&siren='.$ppo->url_ecole.($ppo->targetType=="BU_CLASSE"?'&classeId='.$ppo->targetId:'');
     $this->rssUrl = $this->rssUrl . '?siren=' . $ppo->siret_ecole . ($ppo->targetType == "BU_CLASSE" ? '&classe=' . $ppo->targetId : '');
     if (CopixConfig::exists('default|rssEtagereEnt') && ($ent = CopixConfig::get('default|rssEtagereEnt'))) {
         $this->rssUrl .= '&ent=' . urlencode($ent);
     }
     $this->xml = @simplexml_load_file($this->rssUrl);
     if ($this->xml == false) {
         return false;
     }
     return true;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:24,代码来源:rssetagereservice.class.php

示例5: whereAmI

 public function whereAmI($node_type = false, $node_id = false)
 {
     // Patch EN2010
     return array();
     $where = array();
     if ($node_type == 'BU_CLASSE') {
         $where['BU_CLASSE']['type'] = $node_type;
         $where['BU_CLASSE']['id'] = $node_id;
         $infos = Kernel::getNodeInfo($node_type, $node_id);
         $where['BU_CLASSE']['nom'] = $infos['nom'];
         $parents = Kernel::getNodeParents($node_type, $node_id);
         $parent = Kernel::filterNodeList($parents, 'BU_ECOLE');
         $node_type = $parent[0]["type"];
         $node_id = $parent[0]["id"];
     }
     if ($node_type == 'BU_ECOLE') {
         $where['BU_ECOLE']['type'] = $node_type;
         $where['BU_ECOLE']['id'] = $node_id;
         $infos = Kernel::getNodeInfo($node_type, $node_id);
         $where['BU_ECOLE']['nom'] = $infos['nom'];
         $parents = Kernel::getNodeParents($node_type, $node_id);
         $parent = Kernel::filterNodeList($parents, 'BU_VILLE');
         $node_type = $parent[0]["type"];
         $node_id = $parent[0]["id"];
     }
     if ($node_type == 'BU_VILLE') {
         $where['BU_VILLE']['type'] = $node_type;
         $where['BU_VILLE']['id'] = $node_id;
         $infos = Kernel::getNodeInfo($node_type, $node_id);
         $where['BU_VILLE']['nom'] = $infos['nom'];
         $parents = Kernel::getNodeParents($node_type, $node_id);
         $parent = Kernel::filterNodeList($parents, 'BU_GRVILLE');
         $node_type = $parent[0]["type"];
         $node_id = $parent[0]["id"];
     }
     if ($node_type == 'BU_GRVILLE') {
         $where['BU_GRVILLE']['type'] = $node_type;
         $where['BU_GRVILLE']['id'] = $node_id;
         $infos = Kernel::getNodeInfo($node_type, $node_id);
         $where['BU_GRVILLE']['nom'] = $infos['nom'];
     }
     return $where;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:43,代码来源:kernel.class.php

示例6: getPopup

 /**
  * Affichage de l'annuaire en version popup
  *
  * Affiche les discussions d'un forum et les informations sur les discussions (titre, dernier message...), avec un lien pour lire chaque discussion.
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2006/01/18
  */
 public function getPopup()
 {
     if (!Kernel::is_connected()) {
         return CopixActionGroup::process('genericTools|Messages::getError', array('message' => CopixI18N::get('annuaire|annuaire.error.noLogged'), 'back' => CopixUrl::get('||')));
     }
     CopixHTMLHeader::addJSLink(_resource("js/iconito/module_annuaire_popup.js"));
     CopixHTMLHeader::addJSLink(_resource("js/jquery/jquery.tablesorter.min.js"));
     CopixHTMLHeader::addJSLink(_resource("js/jquery/jquery.metadata.js"));
     CopixHTMLHeader::addCSSLink(_resource("js/jquery/css/jquery.tablesorter.css"));
     $grville = _request('grville') ? _request('grville') : NULL;
     $ville = _request('ville') ? _request('ville') : NULL;
     $ecole = _request('ecole') ? _request('ecole') : NULL;
     $classe = _request('classe') ? _request('classe') : NULL;
     $field = _request('field') ? _request('field') : '';
     $profils = _request('profils') ? _request('profils') : array();
     $profil = $this->getRequest('profil');
     // Si on force sur un profil unique a afficher
     $ALL = CopixConfig::get('annuaire|annu_combo_all');
     $annuaireService =& CopixClassesFactory::Create('annuaire|AnnuaireService');
     // Annuaire par défaut, on regarde sa session
     if (!$classe && !$ecole && !$ville) {
         $home = $annuaireService->getAnnuaireHome();
         //print_r($home);
         switch ($home['type']) {
             case 'BU_GRVILLE':
                 $grville = $home['id'];
                 $ville = $ALL;
                 $ecole = $ALL;
                 $classe = $ALL;
                 break;
             case 'BU_VILLE':
                 $info = Kernel::getNodeInfo($home['type'], $home['id']);
                 if ($info) {
                     $grville = $info['ALL']->vil_id_grville;
                 }
                 $ville = $home['id'];
                 $ecole = $ALL;
                 $classe = $ALL;
                 break;
             case 'BU_ECOLE':
                 $info = Kernel::getNodeInfo($home['type'], $home['id']);
                 if ($info) {
                     $grville = $info['ALL']->vil_id_grville;
                     $ville = $info['ALL']->eco_id_ville;
                 }
                 $ecole = $home['id'];
                 $classe = $ALL;
                 break;
             case 'BU_CLASSE':
                 $info = Kernel::getNodeInfo($home['type'], $home['id']);
                 //_dump($info);
                 if ($info) {
                     $grville = $info['parent']['ALL']->vil_id_grville;
                     $ville = $info['parent']['ALL']->eco_id_ville;
                     $ecole = $info['parent']['id'];
                 }
                 $classe = $home['id'];
                 //echo "grville=$grville / ville=$ville / ecole=$ecole / classe=$classe";
                 break;
         }
     }
     $comboEcoles = $comboClasses = true;
     // On force les valeurs des combos
     if ($profil) {
         switch ($profil) {
             case 'USER_VIL':
                 $comboEcoles = $comboClasses = false;
                 $ecole = $classe = $ALL;
                 break;
         }
     }
     $matrix =& enic::get('matrixCache');
     $helper =& enic::get('matrixHelpers');
     $right = _request('right', 'voir');
     // voir ou communiquer
     $iCan = 'communiquer' == $right ? 'iCanTalkToThisType' : 'iCanSeeThisType';
     $tplListe = new CopixTpl();
     $visib = array('USER_ELE' => $helper->{$iCan}('USER_ELE'), 'USER_ENS' => $helper->{$iCan}('USER_ENS') || $helper->{$iCan}('USER_DIR'), 'USER_RES' => $helper->{$iCan}('USER_RES'), 'USER_EXT' => $helper->{$iCan}('USER_EXT'), 'USER_ADM' => $helper->{$iCan}('USER_ADM'), 'USER_VIL' => $helper->{$iCan}('USER_VIL'));
     //_dump($visib);
     $debug = false;
     $start = microtime(true);
     $tplListe->assign('combogrvilles', CopixZone::process('annuaire|combogrvilles', array('droit' => $right, 'value' => $grville, 'fieldName' => 'grville', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_grville(this,this.form);"', 'linesSup' => array())));
     if ($debug) {
         echo "combogrvilles " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
     }
     $start = microtime(true);
     $tplListe->assign('combovilles', CopixZone::process('annuaire|combovilles', array('droit' => $right, 'grville' => $grville, 'value' => $ville, 'fieldName' => 'ville', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_ville(this,this.form);"', 'linesSup' => array(0 => array('value' => $ALL, 'libelle' => CopixI18N::get('annuaire|annuaire.comboAllVilles'))))));
     if ($debug) {
         echo "combovilles " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
     }
     $start = microtime(true);
     if ($ville == $ALL && $comboEcoles) {
//.........这里部分代码省略.........
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:101,代码来源:annuaire.actiongroup.php

示例7: sendMails

 /**
  * Envoi d'une intervention a des mails exterieurs
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2009/01/22
  * @param integer $id Id de la procedure
  * @param string $mail_from Expediteur
  * @param string $mail_to Destinataire
  * @param string $mail_cc Copie a
  * @param string $mail_message Message d'accompagnement optionnel
  */
 public function sendMails()
 {
     $id = $this->getRequest('id', null);
     $mail_from = $this->getRequest('mail_from', null);
     $mail_to = $this->getRequest('mail_to', null);
     $mail_cc = $this->getRequest('mail_cc', null);
     $mail_message = $this->getRequest('mail_message', null);
     $daoIntervention = CopixDAOFactory::create("intervention");
     $criticErrors = $errors = array();
     if ($id && ($rFiche = $daoIntervention->get($id))) {
         $title = $rFiche->objet;
         $mondroit = Kernel::getLevel("MOD_TELEPROCEDURES", $rFiche->type_teleprocedure);
         if (!TeleproceduresService::canMakeInTelep('SEND_MAILS', $mondroit, array('idinter' => $rFiche->idinter))) {
             $criticErrors[] = CopixI18N::get('kernel|kernel.error.noRights');
         }
     } else {
         $criticErrors[] = CopixI18N::get('teleprocedures|teleprocedures.error.prob.telep');
     }
     if (!CopixConfig::get('|mailEnabled')) {
         $criticErrors[] = CopixI18N::get('teleprocedures|teleprocedures.error.noMailEnabled');
     }
     if ($criticErrors) {
         return CopixActionGroup::process('genericTools|Messages::getError', array('message' => implode('<br/>', $criticErrors), 'back' => CopixUrl::get('teleprocedures||')));
     }
     $fiche = CopixZone::process('fiche', array('rFiche' => $rFiche, 'print' => 1));
     $ecoleInfos = Kernel::getNodeInfo('BU_ECOLE', $rFiche->idetabliss, false);
     $errors = $ok = null;
     require_once COPIX_UTILS_PATH . 'CopixUtils.lib.php';
     if (!$mail_from) {
         $errors = CopixI18N::get('teleprocedures|teleprocedures.error.mail_from', '');
     } else {
         $list = preg_split("/[\\s,]+/", $mail_from);
         foreach ($list as $email) {
             if (!validateEMail($email)) {
                 $errors .= CopixI18N::get('teleprocedures|teleprocedures.error.incorrectMail', $email) . "\n";
             }
         }
     }
     if (!$mail_to) {
         $errors = CopixI18N::get('teleprocedures|teleprocedures.error.mail_to', '');
     } else {
         $list = preg_split("/[\\s,]+/", $mail_to);
         foreach ($list as $email) {
             if (!validateEMail($email)) {
                 $errors .= CopixI18N::get('teleprocedures|teleprocedures.error.incorrectMail', $email) . "\n";
             }
         }
     }
     if ($mail_cc) {
         $list = preg_split("/[\\s,]+/", $mail_cc);
         foreach ($list as $email) {
             if (!validateEMail($email)) {
                 $errors .= CopixI18N::get('teleprocedures|teleprocedures.error.incorrectMail', $email) . "\n";
             }
         }
     }
     if ($errors) {
         return CopixActionGroup::process('teleprocedures|default::fiche', array('id' => $id, 'errors' => $errors, 'rFiche' => array('mail_from' => $mail_from, 'mail_to' => $mail_to, 'mail_cc' => $mail_cc, 'mail_message' => $mail_message)));
     }
     if (!$errors) {
         require_once COPIX_UTILS_PATH . 'CopixEMailer.class.php';
         $from = $fromName = $mail_from;
         $to = $mail_to;
         $cc = $cci = null;
         if ($mail_cc) {
             $cc = $mail_cc;
         }
         $subject = $rFiche->objet . ' / ' . $rFiche->type_nom . ' / ' . $rFiche->ecole_nom;
         if ($rFiche->ecole_type) {
             $subject .= ' (' . $rFiche->ecole_type . ')';
         }
         $de = _currentUser()->getExtra('prenom') . ' ' . _currentUser()->getExtra('nom');
         $message = '';
         $message .= "<p>L'intervention suivante vous est transmise par " . $de . ".</p>";
         if ($mail_message) {
             $message .= '<p>' . nl2br($mail_message) . '</p><hr/>';
         }
         $message .= $fiche;
         //$from = CopixConfig::get('|mailFrom');
         //$fromName = CopixConfig::get('|mailFromName');
         $mail = new CopixHtmlEMail($to, $cc, $cci, utf8_decode($subject), utf8_decode($message));
         $send = $mail->send($from, $fromName);
         if (!$send) {
             $errors = CopixI18N::get('teleprocedures|teleprocedures.error.sendMail');
         } else {
             $ok = CopixI18N::get('teleprocedures|teleprocedures.ok.sendMail', $mail_to);
             $info_commentaire = "Mail envoy&eacute; de {$from} &agrave; {$to}";
             if ($cc) {
                 $info_commentaire .= " (copie &agrave; {$cc})";
//.........这里部分代码省略.........
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:101,代码来源:default.actiongroup.php

示例8: view

 /**
  * L'annuaire (TODO temporaire)
  */
 public function view()
 {
     $annuaireService =& CopixClassesFactory::Create('annuaire|AnnuaireService');
     $classe = _request("classe");
     $id = 1;
     $type = "BU_ECOLE";
     $ecole = Kernel::getNodeInfo($type, $id, false);
     //print_r($ecole);
     $classes = $enseignants = $directeur = array();
     $result = Kernel::getNodeChilds($type, $id);
     foreach ($result as $key => $value) {
         //print_r($value);
         if ($value["type"] == "BU_CLASSE") {
             $nodeInfo = Kernel::getNodeInfo($value["type"], $value["id"], false);
             $result[$key]["info"] = $nodeInfo;
             // Enseignants
             $childs = Kernel::getNodeChilds($value["type"], $value["id"]);
             //print_r($childs);
             $enseignants = array();
             foreach ($childs as $child) {
                 if ($child["type"] == "USER_ENS") {
                     $userInfo = Kernel::getUserInfo($child["type"], $child["id"]);
                     // print_r($userInfo);
                     $enseignants[] = $userInfo;
                 }
             }
             $result[$key]["enseignants"] = $enseignants;
             $classes[] = $result[$key];
         } elseif ($value["type"] == "USER_ENS") {
             $droit = Kernel::getLevel($type, $id, $value["type"], $value["id"]);
             if ($droit >= PROFILE_CCV_ADMIN) {
                 $nodeInfo = Kernel::getUserInfo($value["type"], $value["id"]);
                 //print_r($nodeInfo);
                 $result[$key]["info"] = $nodeInfo;
                 //$enseignants[] = $result[$key];
                 $directeur = $result[$key];
             }
         }
     }
     //print_r($directeur);
     $ecole["directeur"] = $directeur;
     //print_r($ecole);
     $id = $classe;
     $type = "BU_CLASSE";
     $classe = Kernel::getNodeInfo($type, $id, false);
     $eleves = $enseignants = array();
     $result = Kernel::getNodeChilds($type, $id);
     foreach ($result as $key => $value) {
         if ($value["type"] == "USER_ELE") {
             $nodeInfo = Kernel::getUserInfo($value["type"], $value["id"]);
             $result[$key]["info"] = $nodeInfo;
             //print_r($result[$key]);
             $eleves[] = $result[$key];
         } elseif ($value["type"] == "USER_ENS") {
             $userInfo = Kernel::getUserInfo($value["type"], $value["id"]);
             //print_r($userInfo);
             $enseignants[] = $userInfo;
         }
     }
     //print_r($eleves);
     $classe["eleves"] = $annuaireService->order_tab_eleves($eleves);
     $classe["enseignants"] = $annuaireService->order_tab_enseignants($enseignants);
     //$classe["enseignants"]=($enseignants);
     //print_r($classe);
     $tplListe = new CopixTpl();
     $tplListe->assign('ecole', $ecole);
     $tplListe->assign('classes', $classes);
     $tplListe->assign('classe', $classe);
     $tplListe->assign('annu', "<pre>" . $return_str . "</pre>");
     $result = $tplListe->fetch("view.tpl");
     $tpl = new CopixTpl();
     $tpl->assign('TITLE_PAGE', $ecole["nom"] . " (" . $ecole["desc"] . ")");
     $tpl->assign("MAIN", $result);
     $tpl->assign('MENU', $this->menu);
     return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl);
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:79,代码来源:comptes.actiongroup.php

示例9: getClassesInGrville

 /**
  * Retourne les classes d'un groupe de villes, avec les infos des enseignants affect�s
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2006/01/19
  * @param integer $grville Id du groupe de villes
  * @param array $options Tableau d'options. [droit] pour n'avoir que les classes sur lesquelles on a ce droit
  * @return array Tableau avec les classes
  */
 public function getClassesInGrville($grville, $options = array())
 {
     $classes = array();
     if (isset($options['getNodeInfo_light']) && $options['getNodeInfo_light']) {
         $getNodeInfo_full = false;
     } else {
         $getNodeInfo_full = true;
     }
     $matrix =& enic::get('matrixCache');
     $childs = Kernel::getNodeChilds('BU_GRVILLE', $grville);
     foreach ($childs as $child) {
         if ($child['type'] == 'BU_VILLE') {
             if (($ville_as_array = Kernel::getKernelLimits('ville_as_array')) && !in_array($child['id'], $ville_as_array)) {
                 continue;
             }
             if (isset($options['droit'])) {
                 $tmp = AnnuaireService::getClassesInVille($child['id'], array('droit' => $options['droit']));
             } else {
                 $tmp = AnnuaireService::getClassesInVille($child['id']);
             }
             if (count($tmp) > 0) {
                 $node = Kernel::getNodeInfo($child['type'], $child['id'], $getNodeInfo_full);
                 $classes[] = array('id' => '0', 'nom' => "----- " . $node['nom'] . " -----");
                 $classes = array_merge($classes, $tmp);
             }
         }
     }
     return $classes;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:38,代码来源:annuaireservice.class.php

示例10: _createContent

 public function _createContent(&$toReturn)
 {
     $ppo = new CopixPPO();
     // Récupération des paramètres
     $id = $this->getParam('node_id');
     $ppo->type = $this->getParam('node_type');
     $ppo->tab = $this->getParam('tab') ? $this->getParam('tab') : 0;
     // Récupération de l'utilisateur connecté
     $ppo->user = _currentUser();
     if (!is_null($ppo->type) && !is_null($id)) {
         $ppo->parent = Kernel::getNodeInfo($ppo->type, $id);
         $personnelDAO = _ioDAO('kernel|kernel_bu_personnel');
         switch ($ppo->type) {
             case 'BU_GRVILLE':
                 $ppo->persons = $personnelDAO->findCitiesAgentsByCitiesGroupId($id);
                 break;
             case 'BU_VILLE':
                 $ppo->persons = $personnelDAO->findCityAgentsByCityId($id);
                 break;
             case 'BU_ECOLE':
                 $personEntityDAO = _ioDAO('kernel|kernel_bu_personnel_entite');
                 $classroomDAO = _ioDAO('kernel|kernel_bu_ecole_classe');
                 $classnames = array();
                 $ppo->persons = $personnelDAO->findAdministrationStaffAndPrincipalBySchoolId($id);
                 foreach ($ppo->persons as $person) {
                     // Pour les enseignants, on récupère leurs affectations pour déterminer s'il est possible de les désaffecter de l'école
                     if ($person->role == DAOKernel_bu_personnel_entite::ROLE_TEACHER && $personEntityDAO->hasTeacherRoleInSchool($person->numero, $id, true)) {
                         $person->hasTeacherRoleInSchool = true;
                         // Récupération du nom des classes ou il est affecté
                         $classnames = array();
                         $personEntities = $personEntityDAO->getTeacherRoleInSchool($person->numero, $id, true);
                         foreach ($personEntities as $personEntity) {
                             $class = $classroomDAO->get($personEntity->pers_entite_reference);
                             $classnames[] = $class->nom;
                         }
                         $person->classrooms = implode(', ', $classnames);
                     } else {
                         $person->hasTeacherRoleInSchool = false;
                     }
                 }
                 break;
             case 'BU_CLASSE':
                 // Récupération des enseignants
                 $ppo->persons = $personnelDAO->findTeachersByClassroomId($id);
                 // Récupération des élèves
                 $studentDAO = _ioDAO('kernel|kernel_bu_ele');
                 $ppo->students = $studentDAO->getStudentsByClass($id);
                 // Récupération des parents
                 $responsableDAO = _ioDAO('kernel|kernel_bu_res');
                 $ppo->responsables = $responsableDAO->getParentsInClasse($id);
                 _classInclude('gestionautonome|GestionAutonomeService');
                 $ppo->isTeachersLimitByClassroomReached = false;
                 if (GestionAutonomeService::hasTeachersLimitByClassroom()) {
                     $ppo->isTeachersLimitByClassroomReached = count($ppo->persons) >= CopixConfig::get('gestionautonome|teachersLimitByClassroom');
                 }
                 $ppo->isStudentsLimitByClassroomReached = false;
                 if (GestionAutonomeService::hasStudentsLimitByClassroom()) {
                     $ppo->isStudentsLimitByClassroomReached = count($ppo->students) >= CopixConfig::get('gestionautonome|studentsLimitByClassroom');
                 }
                 break;
         }
     }
     // Récupération du catalogue de vocabulaire à utiliser
     $nodeVocabularyCatalogDAO = _ioDAO('kernel|kernel_i18n_node_vocabularycatalog');
     $ppo->vocabularyCatalog = $nodeVocabularyCatalogDAO->getCatalogForNode($ppo->type, $id);
     // Récupération de l'année scolaire suivante
     $ppo->nextGrade = _ioDAO('kernel|kernel_bu_annee_scolaire')->getNextGrade(_sessionGet('grade'));
     $toReturn = $this->_usePPO($ppo, '_persons_data.tpl');
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:69,代码来源:personsdata.zone.php

示例11: findPublic

 /**
  * Récupère la liste des derniers articles publiés dans des blogs publics. A utiliser pour des flux RSS ou des zones de la Une
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2012/02/21
  * @param array $options
  *      [nb] Nombre d'éléments à afficher
  *      [categories] Pour ajouter les catégories de chaque article
  *      [parent] Pour récupérer les infos sur le parent du blog
  *      [blogId] Pour limiter à un blog précis
  *      [future] Pour afficher ou non les articles post-datés (true par défaut)
  *
  */
 public function findPublic($options = array())
 {
     $limit = isset($options['nb']) && $options['nb'] ? $options['nb'] : 10;
     $arTypes = array();
     if (CopixConfig::exists('public|blogs.types') && CopixConfig::get('public|blogs.types')) {
         $arTypes = explode(",", CopixConfig::get('public|blogs.types'));
     }
     $arTypes[] = 'CLUB';
     $params = array();
     $critere = 'SELECT ART.id_bact, ART.name_bact, ART.url_bact, ART.date_bact, ART.time_bact, ART.sumary_bact, ART.sumary_html_bact, BLOG.url_blog, KME.node_type AS parent_type, KME.node_id AS parent_id FROM module_blog BLOG, module_blog_article ART, kernel_mod_enabled KME WHERE ART.id_blog=BLOG.id_blog AND KME.module_id=BLOG.id_blog AND KME.module_type=\'MOD_BLOG\' AND BLOG.is_public=1 AND ART.is_online=1';
     $blogId = isset($options['blogId']) && $options['blogId'] ? (int) $options['blogId'] : 0;
     $future = isset($options['future']) ? $options['future'] : true;
     if ($blogId) {
         $critere .= ' AND ART.id_blog = :blogId';
         $params['blogId'] = $blogId;
     } else {
         $critere .= ' AND KME.node_type IN (\'' . implode('\',\'', $arTypes) . '\')';
     }
     if (!$future) {
         $critere .= ' AND (ART.date_bact < :today1 OR (ART.date_bact = :today2 AND ART.time_bact <= :now))';
         $params['today1'] = $params['today2'] = date('Ymd');
         $params['now'] = date('Hi');
     }
     $critere .= ' ORDER BY ART.date_bact DESC, ART.time_bact DESC, ART.id_bact ASC';
     if (!$blogId && Kernel::getKernelLimits('ville')) {
         $critere .= ' LIMIT ' . $limit * 10;
     } else {
         $critere .= ' LIMIT ' . $limit;
     }
     $list = _doQuery($critere, $params);
     $arArticle = array();
     foreach ($list as $article) {
         $add = true;
         if (!$blogId) {
             switch ($article->parent_type) {
                 case 'CLUB':
                     if (Kernel::getKernelLimits('ville')) {
                         $ville = GroupeService::getGroupeVille($article->parent_id);
                         if (!in_array($ville, Kernel::getKernelLimits('ville_as_array'))) {
                             $add = false;
                         }
                     }
                     break;
             }
         }
         if (isset($options['categories']) && $options['categories']) {
             $sp = _daoSp();
             $sp->addCondition('id_bact', '=', $article->id_bact);
             $article->categories = array();
             foreach (_ioDAO('blog|blogarticle_blogarticlecategory')->findBy($sp) as $object) {
                 $article->categories[] = _ioDAO('blog|blogarticlecategory')->get($object->id_bacg);
             }
         }
         $date = array();
         $date['Y'] = substr($article->date_bact, 0, 4);
         $date['m'] = substr($article->date_bact, 4, 2);
         $date['d'] = substr($article->date_bact, 6, 2);
         $date['H'] = substr($article->time_bact, 0, 2);
         $date['i'] = substr($article->time_bact, 2, 2);
         $article->dateRFC822 = gmdate('D, d M Y H:i:s', mktime($date['H'], $date['i'], 0, $date['m'], $date['d'], $date['Y'])) . ' GMT';
         if ($add) {
             if (!isset($options['parent']) || $options['parent']) {
                 $article->parent = Kernel::getNodeInfo($article->parent_type, $article->parent_id);
             }
             $arArticle[] = $article;
         }
     }
     if (!$blogId && Kernel::getKernelLimits('ville')) {
         $arArticle = array_slice($arArticle, 0, $limit);
     }
     return $arArticle;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:85,代码来源:blogarticle.dao.php

示例12: alertChangeResponsables

 /**
  * Envoi de messages prives aux responsables d'une intervention lorsqu'on les change. Envoie un message aux nouveaux responsables
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2009/01/22
  * @param object $rIntervention Recordset de l'intervention
  * @param string $responsables Liste des nouveaux responsables (logins separes par virgules)
  * @return null
  */
 public function alertChangeResponsables($rIntervention, $responsables)
 {
     //print_r($rIntervention);
     //print_r($responsables);
     $minimailService =& CopixClassesFactory::Create('minimail|minimailService');
     $titre = $rIntervention->objet;
     $auteur = $rIntervention->iduser;
     $ecoleInfos = Kernel::getNodeInfo('BU_ECOLE', $rIntervention->idetabliss, false);
     $arOld = $rIntervention->responsables;
     $arOld = str_replace(array(" "), "", $arOld);
     $arOld = str_replace(array(",", ";"), ",", $arOld);
     $arOld = preg_split('/[\\s,]+/', $arOld);
     $arNew = $responsables;
     $arNew = str_replace(array(" "), "", $arNew);
     $arNew = str_replace(array(",", ";"), ",", $arNew);
     $arNew = preg_split('/[\\s,]+/', $arNew);
     //print_r($arOld);
     //print_r($arNew);
     foreach ($arNew as $login) {
         if (!in_array($login, $arOld)) {
             $userInfo = Kernel::getUserInfo('LOGIN', $login);
             if ($userInfo && $userInfo["user_id"]) {
                 $dest = array($userInfo["user_id"] => 1);
                 $ecole = $ecoleInfos['nom'];
                 $url = CopixUrl::get('teleprocedures||fiche', array("id" => $rIntervention->idinter));
                 $message = CopixI18N::get('teleprocedures|teleprocedures.message.alertChangeResp', array(1 => $ecole, 2 => $url, 3 => $url));
                 $message = str_replace("\\n", "\n", $message);
                 $minimailService->sendMinimail($titre, $message, $auteur, $dest, 'dokuwiki');
             }
         }
     }
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:41,代码来源:teleproceduresservice.class.php

示例13: _prepareAssignmentsManagement

 /**
  * Prépare les actions de gestion des affectations :
  * - Récupération des paramètres
  * - Contrôle des droits
  * - Création du PPO contenant les variables communes
  *
  * @return PPO
  */
 protected function _prepareAssignmentsManagement()
 {
     $ppo = new CopixPPO();
     $nodeId = _request('nodeId', null);
     $nodeType = _request('nodeType', null);
     if (is_null($nodeId) || is_null($nodeType)) {
         return CopixActionGroup::process('generictools|Messages::getError', array('message' => "Une erreur est survenue.", 'back' => CopixUrl::get('gestionautonome||showTree')));
     }
     // Définition des filtres par défaut
     $ppo->filters = _sessionGet('gestionautonome|assignments_management_filters');
     if (null === $ppo->filters) {
         $ppo->filters = array();
     }
     // Mode de recherche : par structure ou par nom
     $searchMode = _request('searchMode', 'byStructure');
     if (CopixConfig::exists('|can_search_by_name') && CopixConfig::get('|can_search_by_name') && in_array($searchMode, array('byStructure', 'byName'))) {
         $ppo->filters['searchMode'] = $searchMode;
     }
     // Contrôle des droits
     if ($nodeType == 'BU_CLASSE') {
         _currentUser()->assertCredential('module:classroom|' . $nodeId . '|student|update@gestionautonome');
         // Récupération de la classe
         $classroomDAO = _ioDAO('kernel|kernel_bu_ecole_classe');
         if (!($ppo->classroom = $classroomDAO->get($nodeId))) {
             return CopixActionGroup::process('generictools|Messages::getError', array('message' => 'La classe d\'origine que vous avez défini n\'existe pas.', 'back' => CopixUrl::get('gestionautonome||showTree')));
         }
         $classroomDatas = Kernel::getNodeInfo('BU_CLASSE', $ppo->classroom->id, true);
         $cityDAO = _ioDAO('kernel|kernel_bu_ville');
         $originCity = $cityDAO->get($classroomDatas['ALL']->eco_id_ville);
         $ppo->filters['schoolName'] = $classroomDatas['ALL']->eco_nom;
         $ppo->filters['originGrade'] = $ppo->classroom->annee_scol;
         $ppo->filters['originCityGroup'] = $originCity->id_grville;
         $ppo->filters['originCity'] = $classroomDatas['ALL']->eco_id_ville;
         $ppo->filters['originSchool'] = $classroomDatas['ALL']->eco_numero;
         $ppo->filters['originClassroom'] = $ppo->classroom->id;
         $ppo->filters['originUserType'] = 'USER_ELE';
         $ppo->filters['destinationCityGroup'] = $originCity->id_grville;
         $ppo->filters['destinationCity'] = $classroomDatas['ALL']->eco_id_ville;
         $ppo->filters['destinationSchool'] = $classroomDatas['ALL']->eco_numero;
     } else {
         _currentUser()->assertCredential('module:school|' . $nodeId . '|student|update@gestionautonome');
         $schoolDatas = Kernel::getNodeInfo('BU_ECOLE', $nodeId, true);
         $ppo->filters['schoolName'] = $schoolDatas['ALL']->eco_nom;
         $ppo->filters['originGrade'] = is_null(_sessionGet('grade')) ? Kernel::getAnneeScolaireCourante()->id_as : _sessionGet('grade');
         $ppo->filters['originCityGroup'] = $schoolDatas['ALL']->vil_id_grville;
         $ppo->filters['originCity'] = $schoolDatas['ALL']->vil_id_vi;
         $ppo->filters['originSchool'] = $schoolDatas['ALL']->eco_numero;
         $ppo->filters['originClassroom'] = null;
         $ppo->filters['originUserType'] = 'USER_ELE';
         $ppo->filters['destinationCityGroup'] = $schoolDatas['ALL']->vil_id_grville;
         $ppo->filters['destinationCity'] = $schoolDatas['ALL']->vil_id_vi;
         $ppo->filters['destinationSchool'] = $schoolDatas['ALL']->eco_numero;
     }
     $ppo->filters['originLevel'] = null;
     $ppo->filters['originLastname'] = null;
     $ppo->filters['originFirstname'] = null;
     $ppo->filters['destinationClassroom'] = null;
     $ppo->filters['destinationLevel'] = null;
     $ppo->filters['originLastnameSearch'] = null;
     $ppo->filters['originFirstnameSearch'] = null;
     $ppo->filters['originUserTypeSearch'] = 'USER_ELE';
     // Récupération de l'utilisateur
     $ppo->user = _currentUser();
     $ppo->user->isDirector = $this->user->director !== false ? true : false;
     $ppo->user->isAnimator = $this->user->animator;
     // Récupération du catalogue de vocab. à utiliser
     $nodeVocabularyCatalogDAO = _ioDAO('kernel|kernel_i18n_node_vocabularycatalog');
     $ppo->vocabularyCatalog = $nodeVocabularyCatalogDAO->getCatalogForNode('BU_CLASSE', $nodeId);
     return $ppo;
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:78,代码来源:default.actiongroup.php

示例14: processWalk

 /**
  * walk
  *
  * DEBUG: Affichage des parents et enfants d'un noeud, pour valider le
  * fonctionnement des fonctions getNodeParents et getNodeChilds.
  * @author	Frédéric Mossmann <fmossmann@cap-tic.fr>
  * @see getNodeParents( $type, $id )
  * @see getNodeChilds( $type, $id )
  */
 public function processWalk()
 {
     $tpl = new CopixTpl();
     $tpl->assign('TITLE_PAGE', "Walk");
     $return_left = "";
     $return_center = "";
     $return_right = "";
     if (_request("type")) {
         $type = _request("type");
         $id = _request("id");
     } else {
         if (_currentUser()->getExtra('type') && _currentUser()->getExtra('id')) {
             $type = _currentUser()->getExtra('type');
             $id = _currentUser()->getExtra('id');
         } else {
             $type = "USER_ELE";
             $id = 3777;
         }
     }
     $result = Kernel::getNodeParents($type, $id);
     foreach ($result as $key => $value) {
         $return_left .= '<a href="' . CopixUrl::get('kernel||walk', array("type" => $value["type"], "id" => $value["id"])) . '">';
         $return_left .= $value["type"] . "/" . $value["id"];
         if (isset($value["droit"]) && $value["droit"]) {
             $return_left .= ' (' . $value["droit"] . ')';
         }
         $return_left .= '</a>';
         // $tmp = Kernel::getNodeChilds( $value["type"], $value["id"] );
         // if( sizeof($tmp) ) $return_left .= " (".sizeof($tmp).")";
         $return_left .= '<br />';
     }
     $result = Kernel::getNodeChilds($type, $id);
     foreach ($result as $key => $value) {
         // $tmp = Kernel::getNodeChilds( $value["type"], $value["id"] );
         // if( sizeof($tmp) ) $return_right .= "(".sizeof($tmp).") ";
         $return_right .= '<a href="' . CopixUrl::get('kernel||walk', array("type" => $value["type"], "id" => $value["id"])) . '">';
         $return_right .= $value["type"] . "/" . $value["id"];
         if (isset($value["droit"]) && $value["droit"]) {
             $return_right .= ' (' . $value["droit"] . ')';
         }
         $return_right .= '</a>';
         $return_right .= '<br />';
     }
     $return_center .= $type . "/" . $id;
     if (ereg("^USER_", $type)) {
         $user_infos = Kernel::getUserInfo($type, $id);
         if (isset($user_infos["login"])) {
             $return_center .= "<br />Login: " . $user_infos["login"];
         }
         if (isset($user_infos["nom"]) && isset($user_infos["prenom"])) {
             $return_center .= "<br />(";
             $return_center .= $user_infos["prenom"] . " " . $user_infos["nom"];
             $return_center .= ")";
         }
     } else {
         $node_infos = Kernel::getNodeInfo($type, $id, false);
         if (isset($node_infos["nom"])) {
             $return_center .= "<br />" . $node_infos["nom"];
         }
         if (isset($node_infos["desc"])) {
             $return_center .= "<br />(";
             if (strlen($node_infos["desc"]) > 45) {
                 $return_center .= substr($node_infos["desc"], 0, 40) . "...";
             } else {
                 $return_center .= $node_infos["desc"];
             }
             $return_center .= ")";
         }
     }
     $return_str = '<center><h3>' . $return_center . '</h3></center>';
     $return_str .= '<table width="100%"><tr><td valign="top" align="left"><strong>Parents</strong></td><td valign="top" align="right"><strong>Childs</strong></td></tr>';
     $return_str .= '<tr><td valign="top" align="left">' . $return_left . '</td><td valign="top" align="right">' . $return_right . '</td></tr></table>';
     $tpl->assign('MAIN', "<pre>" . $return_str . "</pre>");
     return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl);
 }
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:84,代码来源:default.actiongroup.php

示例15: _createContent

 /**
  * Affiche la série de boutons permettant à l'utilisateur de mettre en forme simplement le texte qu'il saisit dans une zone de texte libre.
  *
  * @author Christophe Beyer <cbeyer@cap-tic.fr>
  * @since 2005/12/28
  * @param string $field Nom du champ dans le formulaire. Correspond à l'attribut "name" et "id" dans le template (les deux doivent être positionnés)
  * @param string $format Format de la zone de saisie (wiki, html, fckeditor...)
  * @param array $objet (option) Module dans lequel se trouve la barre wiki, dans un tableau indexé avec TYPE et ID (exemple: type=>MOD_BLOG, ID=>4). Si positionné, on va vérifier si le parent de cet objet a un album photos, une malle et un classeur, et si oui on affiche les liens vers l'album photos, la malle et le classeur en mode popup
  */
 public function _createContent(&$toReturn)
 {
     $tpl = new CopixTpl();
     $field = $this->getParam('field', NULL);
     $format = $this->getParam('format', NULL);
     $object = $this->getParam('object', NULL);
     $withAlbum = $this->getParam('withAlbum', true);
     CopixHtmlHeader::addJSLink(CopixUrl::get() . 'js/iconito/wikibuttons.js');
     if ($field && $format) {
         $buttonAlbum = $buttonMalle = $buttonClasseur = array();
         // Bouton album photos et malle
         $buttons = array();
         // Tableau avec les boutons
         switch ($format) {
             case "wiki":
                 CopixHtmlHeader::addJSLink(CopixUrl::get() . 'js/iconito/format_' . $format . '.js');
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.bold'), 'accesskey' => 'g', 'tabindex' => 10, 'link' => "javascript:bbstyle('','{$field}',0);");
                 // Gras
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.italic'), 'accesskey' => 'i', 'tabindex' => 11, 'link' => "javascript:bbstyle('','{$field}',2);");
                 // Italique
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.image'), 'accesskey' => 'm', 'tabindex' => 12, 'link' => "javascript:bblink('','{$field}',12);");
                 // Image
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.link'), 'accesskey' => 'l', 'tabindex' => 13, 'link' => "javascript:bblink('','{$field}',8);");
                 // Lien
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.hr'), 'accesskey' => 'h', 'tabindex' => 14, 'link' => "javascript:bbcar('','{$field}',4);");
                 // HR
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.h1'), 'accesskey' => 'j', 'tabindex' => 15, 'link' => "javascript:bblink('','{$field}',20);");
                 // H1
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.h2'), 'accesskey' => 'v', 'tabindex' => 16, 'link' => "javascript:bblink('','{$field}',22);");
                 // H2
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.h3'), 'accesskey' => 'w', 'tabindex' => 17, 'link' => "javascript:bblink('','{$field}',24);");
                 // H3
                 break;
             case "dokuwiki":
                 CopixHtmlHeader::addJSLink(CopixUrl::get() . 'js/iconito/format_' . $format . '.js');
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.bold'), 'accesskey' => 'g', 'tabindex' => 10, 'link' => "javascript:bbstyle('','{$field}',0);", 'icon' => 'bold.png');
                 // Gras
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.italic'), 'accesskey' => 'i', 'tabindex' => 11, 'link' => "javascript:bbstyle('','{$field}',2);", 'icon' => 'italic.png');
                 // Italique
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.underline'), 'accesskey' => 's', 'tabindex' => 12, 'link' => "javascript:bbstyle('','{$field}',4);", 'icon' => 'underline.png');
                 // Souligne
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.image'), 'accesskey' => 'm', 'tabindex' => 12, 'link' => "javascript:bblink('','{$field}',12);", 'icon' => 'image.png');
                 // Image
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.link'), 'accesskey' => 'l', 'tabindex' => 13, 'link' => "javascript:bblink('','{$field}',8);", 'icon' => 'linkextern.png');
                 // Lien
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.email'), 'accesskey' => 'e', 'tabindex' => 13, 'link' => "javascript:bblink('','{$field}',10);", 'icon' => '../../tpl/default/images/mail_icon.gif');
                 // Email
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.hr'), 'accesskey' => 'h', 'tabindex' => 14, 'link' => "javascript:bbcar('','{$field}',4);", 'icon' => 'hr.png');
                 // HR
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.h1'), 'accesskey' => 'j', 'tabindex' => 15, 'link' => "javascript:bblink('','{$field}',20);", 'icon' => 'h1.png');
                 // H1
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.h2'), 'accesskey' => 'v', 'tabindex' => 16, 'link' => "javascript:bblink('','{$field}',22);", 'icon' => 'h2.png');
                 // H2
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.h3'), 'accesskey' => 'w', 'tabindex' => 17, 'link' => "javascript:bblink('','{$field}',24);", 'icon' => 'h3.png');
                 // H3
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.ul'), 'accesskey' => 'w', 'tabindex' => 17, 'link' => "javascript:bbcar('','{$field}',5);", 'icon' => 'ul.png');
                 // UL
                 $buttons[] = array('titre' => CopixI18N::get('wikibuttons.ol'), 'accesskey' => 'w', 'tabindex' => 17, 'link' => "javascript:bbcar('','{$field}',6);", 'icon' => 'ol.png');
                 // OL
                 break;
         }
         if ($object) {
             $user_type = _currentUser()->getExtra('type');
             $user_id = _currentUser()->getExtra('id');
             if ('USER' === $object) {
                 Kernel::createMissingModules($user_type, $user_id);
                 $parent = array('type' => $user_type, 'id' => $user_id);
             } elseif (preg_match('/^MOD_/', $object['type'])) {
                 $parent = Kernel::getModParentInfo($object['type'], $object['id']);
             } else {
                 $parent = Kernel::getNodeInfo($object['type'], $object['id']);
             }
             if ($parent) {
                 $mods = Kernel::getModEnabled($parent['type'], $parent['id']);
                 $alb = Kernel::filterModuleList($mods, 'MOD_ALBUM');
                 if ($alb && $withAlbum) {
                     $url = CopixUrl::get('album||getpopup', array('album_id' => $alb[0]->module_id, 'field' => $field, 'format' => $format));
                     $buttonAlbum = array('titre' => CopixI18N::get('wikibuttons.album'), 'accesskey' => 'a', 'tabindex' => 18, 'link' => $url);
                     // Album photos
                 }
                 $mal = Kernel::filterModuleList($mods, 'MOD_MALLE');
                 if ($mal) {
                     $url = CopixUrl::get('malle|malle|getMallePopup', array('id' => $mal[0]->module_id, 'field' => $field, 'format' => $format));
                     $buttonMalle = array('titre' => CopixI18N::get('wikibuttons.malleTxt'), 'accesskey' => 'd', 'tabindex' => 19, 'link' => $url);
                     // Malle
                 }
                 $cla = Kernel::filterModuleList($mods, 'MOD_CLASSEUR');
                 if ($cla) {
                     $url = CopixUrl::get('classeur||getClasseurPopup', array('classeurId' => $cla[0]->module_id, 'field' => $field, 'format' => $format, 'withPersonal' => 1, 'moduleType' => $object['type'], 'moduleId' => $object['id']));
                     $buttonClasseur = array('titre' => CopixI18N::get('wikibuttons.classeurTxt'), 'accesskey' => 'd', 'tabindex' => 20, 'link' => $url);
                     // Classeur
//.........这里部分代码省略.........
开发者ID:JVS-IS,项目名称:ICONITO-EcoleNumerique,代码行数:101,代码来源:wikibuttons.zone.php


注:本文中的Kernel::getNodeInfo方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。