/** * Detail d'une procedure * * @author Christophe Beyer <*****@*****.**> * @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; }
/** * Detail d'une ecole * * @author Christophe Beyer <*****@*****.**> * @since 2008/09/03 * @param object $rEcole Recordset de l'ecole * @param object $rFiche Recordset de la fiche ecole */ public function _createContent(&$toReturn) { $tpl = new CopixTpl(); $rEcole = $this->getParam('rEcole'); $rFiche = $this->getParam('rFiche'); $arClasses = AnnuaireService::getClassesInEcole($rEcole->numero, array('forceCanViewEns' => true, 'withNiveaux' => true)); usort($arClasses, array("ZoneFiche", "_usortClasses")); //var_dump($arClasses); $canModify = FichesEcolesService::canMakeInFicheEcole($rEcole->numero, 'MODIFY'); $blog = getNodeBlog('BU_ECOLE', $rEcole->numero, array('is_public' => 1)); //var_dump($blog); $arClassesBlogs = false; if ($blog) { $rEcole->blog = $blog; } else { // Si pas de blog, on regarde s'il y a des blogs publics de classes $arClassesBlogs = AnnuaireService::getClassesInEcole($rEcole->numero, array('onlyWithBlog' => true, 'onlyWithBlogIsPublic' => 1, 'enseignant' => false)); } //Kernel::deb($arClassesBlogs); $rEcole->directeur = AnnuaireService::getDirecteurInEcole($rEcole->numero); //var_dump($rEcole); $matrix =& enic::get('matrixCache'); $nodeVocabularyCatalogDAO = _ioDAO('kernel|kernel_i18n_node_vocabularycatalog'); $vocabularyCatalog = $nodeVocabularyCatalogDAO->getCatalogForNode('BU_ECOLE', $rEcole->numero); $tpl->assign('rEcole', $rEcole); $tpl->assign('rFiche', $rFiche); $tpl->assign('arClasses', $arClasses); $tpl->assign('arClassesBlogs', $arClassesBlogs); $tpl->assign('canModify', $canModify); $_right = $matrix->ecole($rEcole->numero)->_right; $tpl->assign('canViewDir', $_right->USER_DIR->voir); $tpl->assign('canWriteDir', $_right->USER_DIR->communiquer); $tpl->assign('canViewEns', $_right->USER_ENS->voir); $tpl->assign('canWriteEns', $_right->USER_ENS->communiquer); $tpl->assign('id_vc', $vocabularyCatalog->id_vc); $toReturn = $tpl->fetch('fiche.tpl'); return true; }
/** * Affichage de la fiche d'une ecole * * @author Christophe Beyer <*****@*****.**> * @since 2008/09/03 * @param integer $id Id de l'ecole */ public function blogs() { $id = $this->getRequest('id', null); $pAnnee = $this->getRequest('annee', null); // $ecoleDAO = CopixDAOFactory::create('kernel|kernel_bu_ecole'); $ficheDAO = CopixDAOFactory::create("fiches_ecoles"); $criticErrors = array(); if (!($rEcole = $ecoleDAO->get($id))) { $criticErrors[] = CopixI18N::get('fichesecoles.error.param'); } elseif (!FichesEcolesService::canMakeInFicheEcole($id, 'VIEW')) { $criticErrors[] = CopixI18N::get('kernel|kernel.error.noRights'); } if ($criticErrors) { return CopixActionGroup::process('genericTools|Messages::getError', array('message' => implode('<br/>', $criticErrors), 'back' => CopixUrl::get('annuaire||'))); } $arClasses = AnnuaireService::getClassesInEcole($rEcole->numero, array('forceCanViewEns' => true, 'onlyWithBlog' => true, 'onlyWithBlogIsPublic' => 1, 'enseignant' => false, 'annee' => $pAnnee)); $rEcole->blog = getNodeBlog('BU_ECOLE', $rEcole->numero, array('is_public' => 1)); // Get vocabulary catalog to use $nodeVocabularyCatalogDAO = _ioDAO('kernel|kernel_i18n_node_vocabularycatalog'); $vocabularyCatalog = $nodeVocabularyCatalogDAO->getCatalogForNode('BU_ECOLE', $id); $tpl = new CopixTpl(); $tpl->assign('rEcole', $rEcole); $tpl->assign('arClasses', $arClasses); $tpl->assign('catalog', $vocabularyCatalog->id_vc); if ($anneeDebutBlogs = CopixConfig::get('fichesecoles|anneeDebutBlogs')) { $anneeFinBlogs = Kernel::getAnneeScolaireCourante()->id_as; //Kernel::deb("anneeDebutBlogs=$anneeDebutBlogs / anneeFinBlogs=$anneeFinBlogs"); if (!$pAnnee) { $pAnnee = $anneeFinBlogs; } if ($anneeFinBlogs > $anneeDebutBlogs) { $comboAnnees = CopixZone::process('kernel|combo_annees', array('name' => 'annee', 'selected' => $pAnnee, 'debut' => $anneeDebutBlogs, 'fin' => $anneeFinBlogs, 'extra2' => 'onChange="ficheViewBlogs(' . $id . ',this.options[this.selectedIndex].value);"')); $tpl->assign('comboAnnees', $comboAnnees); } } $result = $tpl->fetch('blogs.tpl'); header('Content-type: text/html; charset=utf-8'); //echo utf8_encode($result); echo $result; return new CopixActionReturn(COPIX_AR_NONE, 0); }
/** * L'adresse de l'ecole en une ligne * * @author Christophe Beyer <*****@*****.**> * @since 2011/11/02 * @return string L'adresse */ public function getFullAddress() { $address = AnnuaireService::googleMapsFormatAdresse('ecole', $this); return $address; }
/** * Retourne les classes d'un groupe de villes, avec les infos des enseignants affect�s * * @author Christophe Beyer <*****@*****.**> * @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; }
/** * Affiche la liste des blogs ayant au moins un article, pour un groupe de ville, ou une ou plusieurs villes * * @author Christophe Beyer <*****@*****.**> * @since 2006/03/23 * @param string $kw Mot-cl� pour la recherche (option) * @param integer grville Id de groupe de ville * @param array ville Tableau avec les ID des villes */ public function _createContent(&$toReturn) { CopixHtmlHeader::addJSLink(CopixUrl::get() . 'js/iconito/module_fichesecoles.js'); $kw = $this->getParam('kw', null); $pGrVille = $this->getParam('grville', null); $pVille = $this->getParam('ville', null); // Tableau $tpl = new CopixTpl(); if ($pVille) { $villes = AnnuaireService::getVilles($pVille); } else { $villes = AnnuaireService::getVillesInGrville($pGrVille); } //print_r($villes); $tpl->assign('villes', $villes); $ecoles = array(); foreach ($villes as $ville) { //$ecoles $ec = AnnuaireService::getEcolesInVille($ville['id'], array('directeur' => false)); foreach ($ec as $k => $e) { $blog = getNodeBlog('BU_ECOLE', $e['id']); //print_r($blog); if ($blog && $blog->is_public == 1) { $ec[$k]['blog']['url_blog'] = $blog->url_blog; } } $ecoles[$ville['id']] = $ec; } //print_r($ecoles); $tpl->assign('ecoles', $ecoles); if ($kw) { $critere = " SELECT * FROM module_blog WHERE is_public=1 AND name_blog LIKE '%" . addslashes($kw) . "%' ORDER BY name_blog"; } else { $critere = " SELECT * FROM module_blog WHERE is_public=1 AND 1 ORDER BY name_blog"; } $sql = _doQuery($critere); $list = array(); $arTypes = array(); if (CopixConfig::exists('public|blogs.types') && CopixConfig::get('public|blogs.types')) { $arTypes = explode(",", CopixConfig::get('public|blogs.types')); } $arTypes[] = 'CLUB'; //print_r($sql); foreach ($sql as $blog) { $parent = Kernel::getModParentInfo("MOD_BLOG", $blog->id_blog); if ($parent) { if ($arTypes && !in_array($parent['type'], $arTypes)) { continue; } //var_dump($parent); $blog->parent = $parent['nom']; switch ($parent['type']) { case 'CLUB': if (Kernel::getKernelLimits('ville')) { $ville = GroupeService::getGroupeVille($parent['id']); if (!in_array($ville, Kernel::getKernelLimits('ville_as_array'))) { continue; } } $blog->type = CopixI18N::get('public.blog.typeClub'); break; /* case 'BU_CLASSE' : $blog->type = CopixI18N::get ('public.blog.typeClasse'); $blog->parent .= ' - '.$parent['ALL']->eco_nom; if ($parent['ALL']->eco_type) $blog->parent .= ' - '.$parent['ALL']->eco_type.''; break; */ //case 'BU_ECOLE' : $blog->type = CopixI18N::get ('public.blog.typeEcole'); break; //case 'BU_VILLE' : $blog->type = CopixI18N::get ('public.blog.typeVille'); break; //case 'BU_GRVILLE' : $blog->type = CopixI18N::get ('public.blog.typeGrville'); break; //default : $blog->type = $parent['type']; break; } if (!isset($blog->type)) { continue; } $blog->stats = KernelBlog::getStats($blog->id_blog); //print_r($blog); /* Activer pour cacher les blogs non lisibles */ // if( !blogauth::canMakeInBlog('READ', $blog) ) continue; if ($blog->stats['nbArticles']['value'] > 0) { $list[] = $blog; } } } usort($list, "order_tab_blogs"); $tpl->assign('list', $list); if (!CopixConfig::exists('|can_public_rssfeed') || CopixConfig::get('|can_public_rssfeed')) { $tpl->assign('can_public_rssfeed', 1); } else { $tpl->assign('can_public_rssfeed', 0); } $toReturn = $tpl->fetch('getlistblogszone2.tpl'); return true; }