本文整理汇总了PHP中Kernel::getKernelLimits方法的典型用法代码示例。如果您正苦于以下问题:PHP Kernel::getKernelLimits方法的具体用法?PHP Kernel::getKernelLimits怎么用?PHP Kernel::getKernelLimits使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Kernel
的用法示例。
在下文中一共展示了Kernel::getKernelLimits方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: processDefault
public function processDefault()
{
$tpl = new CopixTpl();
$tplModule = new CopixTpl();
//if user is not connected :
if (1) {
// S'il y a un blog prevu a l'accueil
$dispBlog = false;
$getKernelLimitsIdBlog = Kernel::getKernelLimits('id_blog');
if ($getKernelLimitsIdBlog) {
_classInclude('blog|kernelblog');
if ($blog = _ioDao('blog|blog')->getBlogById($getKernelLimitsIdBlog)) {
// On v�rifie qu'il y a au moins un article
$stats = KernelBlog::getStats($blog->id_blog);
if ($stats['nbArticles']['value'] > 0) {
$dispBlog = true;
}
}
}
if ($dispBlog) {
//return CopixActionGroup::process ('blog|frontblog::getListArticle', array ('blog'=>$blog->url_blog));
return new CopixActionReturn(COPIX_AR_REDIRECT, CopixUrl::get('blog||', array('blog' => $blog->url_blog)));
}
if (!CopixConfig::exists('|can_public_rssfeed') || CopixConfig::get('|can_public_rssfeed')) {
CopixHtmlHeader::addOthers('<link rel="alternate" href="' . CopixUrl::get('public||rss', array()) . '" type="application/rss+xml" title="' . htmlentities(CopixI18N::get('public|public.rss.flux.title')) . '" />');
}
CopixHTMLHeader::addCSSLink(_resource("styles/module_fichesecoles.css"));
$tplModule->assign('user', _currentUser());
$result = $tplModule->fetch('welcome|welcome_' . CopixI18N::getLang() . '.tpl');
$tpl->assign('TITLE_PAGE', '' . CopixI18N::get('public|public.welcome.title'));
$tpl->assign('MAIN', $result);
return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl);
}
}
示例2: getParentsInGrville
/**
* Renvoie la liste des parents ayant un compte utilisateur et un enfant rattaché à une école d'une ville d'un groupe de villes
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2006/01/20
* @param integer $grville Id du groupe de villes
* @return mixed Objet DAO
*/
public function getParentsInGrville($grville)
{
$sqlPlus = '';
if (Kernel::getKernelLimits('ville')) {
$sqlPlus .= ' AND V.id_vi IN (' . Kernel::getKernelLimits('ville') . ')';
}
$query = "SELECT DISTINCT(R.numero) AS id, R.nom, R.prenom1 AS prenom, U.login_dbuser AS login, LI.bu_type, LI.bu_id FROM kernel_bu_responsable R, kernel_bu_sexe S, kernel_bu_responsables RE, kernel_bu_eleve_admission EA, kernel_bu_ecole E, kernel_bu_ville V, kernel_link_bu2user LI, dbuser U WHERE R.id_sexe=S.id_s AND R.numero=RE.id_responsable AND RE.type='responsable' AND RE.id_beneficiaire=EA.eleve AND RE.type_beneficiaire='eleve' AND EA.etablissement=E.numero AND E.id_ville=V.id_vi AND LI.user_id=U.id_dbuser AND LI.bu_type='USER_RES' AND LI.bu_id=R.numero AND V.id_grville=" . $grville . $sqlPlus . " ORDER BY R.nom, R.prenom1";
return _doQuery($query);
}
示例3: getPersonnelExtInVille
/**
* Renvoie la liste des personnes extérieures rattachées à une ville et ayant un compte utilisateur
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2006/05/15
* @param integer $ville Id de la ville
* @return mixed Objet DAO
*/
public function getPersonnelExtInVille($ville)
{
$sqlPlus = '';
if (Kernel::getKernelLimits('ville')) {
$sqlPlus .= ' AND VI.id_vi IN (' . Kernel::getKernelLimits('ville') . ')';
}
$query = "SELECT E.id, E.nom, E.prenom, VI.nom AS nom_ville, U.login_dbuser AS login, LI.bu_type, LI.bu_id FROM kernel_ext_user E, kernel_bu_ville VI, kernel_link_bu2user LI, kernel_link_user2node NO, dbuser U WHERE LI.user_id=U.id_dbuser AND NO.user_type=LI.bu_type AND NO.user_id=LI.bu_id AND NO.node_type='BU_VILLE' AND NO.node_id=VI.id_vi AND LI.bu_type='USER_EXT' AND LI.bu_id=E.id AND VI.id_vi=" . $ville . $sqlPlus . " ORDER BY nom, prenom";
//print_r($query);
return _doQuery($query);
}
示例4: getElevesInGrville
/**
* Renvoie la liste des élèves rattachés à un groupe de villes et ayant un compte utilisateur
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2006/01/20
* @param integer $grville Id du groupe de villes
* @return mixed Objet DAO
*/
public function getElevesInGrville($grville)
{
$sqlPlus = '';
if (Kernel::getKernelLimits('ville')) {
$sqlPlus .= ' AND VIL.id_vi IN (' . Kernel::getKernelLimits('ville') . ')';
}
$query = "SELECT E.idEleve AS id, E.nom, E.prenom1 as prenom, S.sexe, E.date_nais AS date_naissance, EC.nom AS nom_classe, U.login_dbuser AS login, LI.bu_type, LI.bu_id, CN.niveau_court FROM kernel_bu_eleve_affectation EA, kernel_bu_eleve E, kernel_bu_sexe S, kernel_bu_ecole_classe EC, kernel_bu_classe_niveau CN, kernel_bu_ecole ECO, kernel_bu_ville VIL, kernel_link_bu2user LI, dbuser U, kernel_bu_annee_scolaire AN WHERE EC.id=EA.classe AND EA.eleve=E.idEleve AND EA.niveau=CN.id_n AND E.id_sexe=S.id_s AND EC.ecole=ECO.numero AND ECO.id_ville=VIL.id_vi AND LI.user_id=U.id_dbuser AND LI.bu_type='USER_ELE' AND LI.bu_id=E.idEleve AND EA.current=1 AND VIL.id_grville=" . $grville . $sqlPlus . " AND EC.annee_scol=AN.id_as AND AN.current=1 ORDER BY nom, prenom1";
//print_r($query);
return _doQuery($query);
}
示例5: processGetListBlogs
/**
* Affiche la liste des blogs
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2006/03/09
* @todo Positionner $grville
*/
public function processGetListBlogs()
{
if (!CopixConfig::exists('|can_public_rssfeed') || CopixConfig::get('|can_public_rssfeed')) {
CopixHtmlHeader::addOthers('<link rel="alternate" href="' . CopixUrl::get('public||rss', array()) . '" type="application/rss+xml" title="' . htmlentities(CopixI18N::get('public|public.rss.flux.title')) . '" />');
}
CopixHtmlHeader::addJSLink(CopixUrl::get() . 'js/iconito/module_annuaire.js');
$tpl = new CopixTpl();
$tpl->assign('TITLE_PAGE', CopixI18N::get('public|public.blog.annuaire'));
$kw = $this->getRequest('kw', null);
$grville = 1;
$tplListe = new CopixTpl();
if ($ville_as_array = Kernel::getKernelLimits('ville_as_array')) {
$tplListe->assign('list', CopixZone::process('GetListBlogs2', array('kw' => $kw, 'ville' => $ville_as_array)));
} else {
$tplListe->assign('list', CopixZone::process('GetListBlogs2', array('kw' => $kw, 'grville' => $grville)));
}
$tplListe->assign('kw', $kw);
$result = $tplListe->fetch("getlistblogs.tpl");
$tpl->assign("MAIN", $result);
return new CopixActionReturn(COPIX_AR_DISPLAY, $tpl);
}
示例6: _createContent
/**
* Affiche la liste déroulante avec toutes les villes d'un groupe de ville
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2006/01/17
* @param integer $grville Id du groupe de 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...)
* @param array $linesSup Lignes supplémentaires à ajouter en haut de la liste au-dessus des dossiers (ex: "Choisissez la ville"). Chaque ligne est un tableau, de type array ("value"=>"", "libelle"=>"Choisissez")
* @param string $droit Si on ne veut afficher que les villes sur lesquelles l'usager a un certain droit (VOIR / COMM, ou voir / communiquer)
*/
public function _createContent(&$toReturn)
{
$annuaireService =& CopixClassesFactory::Create('annuaire|AnnuaireService');
$grville = $this->getParam('grville') ? $this->getParam('grville') : 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;
$linesSup = $this->getParam('linesSup') ? $this->getParam('linesSup') : NULL;
$pDroit = $this->getParam('droit');
if ($ville_as_array = Kernel::getKernelLimits('ville_as_array')) {
$villes = $annuaireService->getVilles($ville_as_array, array('droit' => $pDroit));
} else {
$villes = $annuaireService->getVillesInGrville($grville, array('droit' => $pDroit));
}
$tpl = new CopixTpl();
$tpl->assign('items', $villes);
$tpl->assign('value', $value);
$tpl->assign('fieldName', $fieldName);
$tpl->assign('attribs', $attribs);
$tpl->assign('linesSup', $linesSup);
$toReturn = $tpl->fetch('combovilles.tpl');
return true;
}
示例7: getPopup
//.........这里部分代码省略.........
if ($ville == $ALL && $comboEcoles) {
$tplListe->assign('comboecoles', CopixZone::process('annuaire|comboecolesingrville', array('droit' => $right, 'grville' => $grville, 'value' => $ecole, 'fieldName' => 'ecole', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_ecole(this,this.form);"', 'linesSup' => array(0 => array('value' => $ALL, 'libelle' => CopixI18N::get('annuaire|annuaire.comboAllEcoles'))))));
if ($debug) {
echo "comboecolesingrville " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
}
} elseif ($comboEcoles) {
$tplListe->assign('comboecoles', CopixZone::process('annuaire|comboecolesinville', array('droit' => $right, 'ville' => $ville, 'value' => $ecole, 'fieldName' => 'ecole', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_ecole(this,this.form);"', 'linesSup' => array(0 => array('value' => $ALL, 'libelle' => CopixI18N::get('annuaire|annuaire.comboAllEcoles'))))));
if ($debug) {
echo "comboecolesinville " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
}
}
$start = microtime(true);
if ($ville == $ALL && $ecole == $ALL && $comboClasses) {
$tplListe->assign('comboclasses', CopixZone::process('annuaire|comboclassesingrville', array('droit' => $right, 'grville' => $grville, 'value' => $classe, 'fieldName' => 'classe', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_classe(this,this.form);"', 'linesSup' => array(0 => array('value' => $ALL, 'libelle' => CopixI18N::get('annuaire|annuaire.comboAllClasses'))))));
if ($debug) {
echo "comboclassesingrville " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
}
} elseif ($ecole == $ALL && $comboClasses) {
$tplListe->assign('comboclasses', CopixZone::process('annuaire|comboclassesinville', array('droit' => $right, 'ville' => $ville, 'value' => $classe, 'fieldName' => 'classe', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_classe(this,this.form);"', 'linesSup' => array(0 => array('value' => $ALL, 'libelle' => CopixI18N::get('annuaire|annuaire.comboAllClasses'))))));
if ($debug) {
echo "comboclassesinville " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
}
} elseif ($ecole && $comboClasses) {
$tplListe->assign('comboclasses', CopixZone::process('annuaire|comboclassesinecole', array('droit' => $right, 'ecole' => $ecole, 'value' => $classe, 'fieldName' => 'classe', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_classe(this,this.form);"', 'linesSup' => array(0 => array('value' => $ALL, 'libelle' => CopixI18N::get('annuaire|annuaire.comboAllClasses'))))));
if ($debug) {
echo "comboclassesinecole " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
}
} elseif ($comboClasses) {
$tplListe->assign('comboclasses', CopixZone::process('annuaire|comboempty', array('fieldName' => 'classe', 'attribs' => 'class="annu_combo_popup" ONCHANGE="change_classe(this,this.form);"')));
if ($debug) {
echo "comboempty " . date("H:i:s") . " " . (microtime(true) - $start) . "<br />";
}
}
if ($ville_as_array = Kernel::getKernelLimits('ville_as_array')) {
// Limitation par URL, on verifie les parametres
if ($ville && $ville != $ALL && !in_array($ville, $ville_as_array)) {
$ville = 0;
}
if ($ecole && $ecole != $ALL && ($rEcole = Kernel::getNodeInfo('BU_ECOLE', $ecole, false)) && !in_array($rEcole['ALL']->vil_id_grville, $ville_as_array)) {
$ecole = 0;
}
if ($classe && $classe != $ALL && ($rClasse = Kernel::getNodeInfo('BU_CLASSE', $classe, false)) && !in_array($rClasse['ALL']->eco_id_ville, $ville_as_array)) {
$classe = 0;
}
}
//kernel::myDebug ("grville=$grville / ville=$ville / ecole=$ecole / classe=$classe");
//kernel::myDebug ($profils);
if ($classe && $classe !== $ALL) {
// Une classe précise
$visib['USER_ELE'] = $matrix->classe($classe)->_right->USER_ELE->{$right};
$visib['USER_ENS'] = $matrix->classe($classe)->_right->USER_ENS->{$right} || $matrix->classe($classe)->_right->USER_DIR->{$right};
$visib['USER_RES'] = $matrix->classe($classe)->_right->USER_RES->{$right};
$visib['USER_ADM'] = $matrix->classe($classe)->_right->USER_ADM->{$right};
$visib['USER_EXT'] = $matrix->classe($classe)->_right->USER_EXT->{$right};
$visib['USER_VIL'] = $matrix->classe($classe)->_right->USER_VIL->{$right};
} elseif ($ecole && $classe == $ALL && $ecole !== $ALL) {
// Une école
$visib['USER_ELE'] = $matrix->ecole($ecole)->_right->USER_ELE->{$right};
$visib['USER_ENS'] = $matrix->ecole($ecole)->_right->USER_ENS->{$right} || $matrix->ecole($ecole)->_right->USER_DIR->{$right};
$visib['USER_RES'] = $matrix->ecole($ecole)->_right->USER_RES->{$right};
$visib['USER_ADM'] = $matrix->ecole($ecole)->_right->USER_ADM->{$right};
$visib['USER_EXT'] = $matrix->ecole($ecole)->_right->USER_EXT->{$right};
$visib['USER_VIL'] = $matrix->ecole($ecole)->_right->USER_VIL->{$right};
} elseif ($ville && $classe == $ALL && $ecole == $ALL && $ville !== $ALL) {
// Une ville
$visib['USER_ELE'] = $matrix->ville($ville)->_right->USER_ELE->{$right};
示例8: 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;
}
示例9: getPersonnelVilInGrville
/**
* Renvoie la liste des agents de ville rattachés aux villes d'un groupe de villes et ayant un compte utilisateur
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2007/11/06
* @param integer $grville Id du groupe de villes
* @return mixed Objet DAO
*/
public function getPersonnelVilInGrville($grville)
{
$sqlPlus = '';
if (Kernel::getKernelLimits('ville')) {
$sqlPlus .= ' AND VIL.id_vi IN (' . Kernel::getKernelLimits('ville') . ')';
}
$query = "SELECT P.numero AS id, P.nom, P.prenom1 as prenom, P.mel AS email, S.sexe, U.id_dbuser AS id_copix, U.login_dbuser AS login, LI.bu_type, LI.bu_id, PE.role, PR.nom_role, PR.nom_role_pluriel FROM kernel_bu_personnel P, kernel_bu_personnel_entite PE, kernel_bu_personnel_role PR, kernel_bu_sexe S, kernel_bu_ville VIL, kernel_link_bu2user LI, dbuser U WHERE P.numero=PE.id_per AND PE.role=PR.id_role AND P.id_sexe=S.id_s AND LI.user_id=U.id_dbuser AND LI.bu_type='USER_VIL' AND LI.bu_id=P.numero AND PE.reference=VIL.id_vi AND PE.type_ref='VILLE' AND VIL.id_grville=" . $grville . $sqlPlus . " ORDER BY PR.priorite, P.nom, P.prenom1";
//print_r($query);
return _doQuery($query);
}
示例10: 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;
}
示例11: _createContent
/**
* Affiche la liste des blogs ayant au moins un article, pour un groupe de ville, ou une ou plusieurs villes
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @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 {
//.........这里部分代码省略.........
示例12: _createContent
/**
* Affiche la liste des ecoles
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2008/11/10
* @param string $titre Titre a donner a la zone
* @param integer $ajaxpopup 1 si on veut afficher le lien vers la fiche en Ajax, 0 pour afficher le lien Href classique. Par defaut : 0
* @param integer $colonnes Nb de colonnes. Par defaut : 1
* @param integer $grville Id du groupe de villes dans lequel on pioche les ecoles. Par defaut : 1
* @param integer $ville Id de la ville dans laquelle on pioche les ecoles. Par defaut : null (prend le groupe de ville). Si on passe un grville et une ville, on prend la ville
* @param string $groupBy Si regroupement. Peut valoir "type"
* @param integer $dispType 1 pour afficher le type des ecoles, 0 pour n'afficher que leur nom. Par defaut : 1
*/
public function _createContent(&$toReturn)
{
//params exclusion list
$IdExclusionList = array();
CopixHtmlHeader::addJSLink(CopixUrl::get() . 'js/iconito/module_fichesecoles.js');
$annuaireService =& CopixClassesFactory::Create('annuaire|AnnuaireService');
$titre = $this->getParam('titre');
$ajaxpopup = $this->getParam('ajaxpopup', false);
$colonnes = $this->getParam('colonnes');
$colonnes = intval($colonnes);
if (!$colonnes) {
$colonnes = 1;
}
$grville = $this->getParam('grville', null);
$ville = $this->getParam('ville', null);
$search = $this->getParam('search', null);
$pGroupBy = $this->getParam('groupBy');
$pDispType = $this->getParam('dispType');
$pDispFilter = $this->getParam('dispFilter') === '' ? true : $this->getParam('dispFilter') ? true : false;
$pDispHeader = $this->getParam('dispHeader', 1);
if ($ville <= 0 && ($ville_as_array = Kernel::getKernelLimits('ville_as_array'))) {
$list = array();
if (!empty($search)) {
$list = $annuaireService->searchEcolesByVilles($search, $ville_as_array);
} else {
foreach ($ville_as_array as $ville_item) {
$list_tmp = $annuaireService->getEcolesInVille($ville_item);
$list = array_merge($list, $list_tmp);
}
}
} else {
//add default city :
$ville = empty($ville) ? empty($this->defaultVille) ? null : $this->defaultVille : $ville;
if (!empty($search)) {
$list = $annuaireService->searchEcoles($search);
} elseif (!empty($ville) && $ville > 0) {
$list = $annuaireService->getEcolesInVille($ville);
} elseif (!empty($grville)) {
$list = $annuaireService->getEcolesInGrville($grville);
} else {
$list = $annuaireService->getAllEcoles();
}
}
if ($pGroupBy == 'type') {
usort($list, array($this, "usort_ecoles_type"));
} elseif ($pGroupBy == 'ville') {
usort($list, array($this, "usort_ecoles_ville"));
} elseif ($pGroupBy == 'villeType') {
$listByCityAndType = array();
foreach ($list as $item) {
if (!array_key_exists('ville', $item)) {
continue;
}
if (in_array($item['id'], $IdExclusionList)) {
continue;
}
$listByCityAndType[$item['ville_nom']][$item['type']][] = $item;
}
$listByCityAndTypeFinal = array();
//order type
foreach ($listByCityAndType as $k => $typeCollection) {
if (array_key_exists('Elémentaire', $typeCollection)) {
$listByCityAndTypeFinal[$k]['Elémentaire'] = $typeCollection['Elémentaire'];
}
if (array_key_exists('Primaire', $typeCollection)) {
$listByCityAndTypeFinal[$k]['Primaire'] = $typeCollection['Primaire'];
}
if (array_key_exists('Maternelle', $typeCollection)) {
$listByCityAndTypeFinal[$k]['Maternelle'] = $typeCollection['Maternelle'];
}
if (array_key_exists('Privée', $typeCollection)) {
$listByCityAndTypeFinal[$k]['Privée'] = $typeCollection['Privée'];
}
}
$list = $listByCityAndTypeFinal;
}
//kernel::myDebug($list);
$nbEcoles = 0;
foreach ($list as $k => $ecole) {
if ($ecole['id'] > 0) {
$nbEcoles++;
}
}
//kernel::myDebug($list);
// Nb elements par colonnes
$parCols = ceil($nbEcoles / $colonnes);
if (($ville_as_array = Kernel::getKernelLimits('ville_as_array')) && is_array($ville_as_array) && count($ville_as_array) > 0) {
//.........这里部分代码省略.........
示例13: getListPublic
/**
* Liste de groupes
*
* @author Christophe Beyer <cbeyer@cap-tic.fr>
* @since 2005/11/08
* @param integer $forum Id du forum
* @return array Tableau avec les groupes
*/
public function getListPublic($offset, $count, $kw = null)
{
$criteres = _daoSp();
$criteres->addCondition('is_open', '=', 1);
if (CopixConfig::exists('kernel|groupeAssistance') && ($groupeAssistance = CopixConfig::get('kernel|groupeAssistance'))) {
$criteres->addCondition('id', '!=', $groupeAssistance);
}
// D�coupage du pattern
if ($kw) {
$testpattern = str_replace(array(" ", "%20"), "%20", $kw);
$temp = split("%20", $testpattern);
$criteres->startGroup();
foreach ($temp as $word) {
if ($word != "") {
$criteres->addCondition('titre', 'LIKE', "%{$word}%", 'or');
$criteres->addCondition('description', 'LIKE', "%{$word}%", 'or');
}
}
$criteres->endGroup();
}
if ($offset) {
$criteres->setOffset($offset);
}
if ($count) {
$criteres->setCount($count);
}
$criteres->orderBy(array('date_creation', 'desc'));
$list = _ioDao('groupe|groupe')->findBy($criteres);
//search tags by Id or Name
$listTag = new CopixDAORecordIterator(_doQuery('SELECT g.id AS id, g.titre AS titre, g.description AS description, g.is_open AS is_open, g.createur AS createur, g.date_creation AS date_creation FROM module_groupe_groupe AS g JOIN module_tags_groups AS tg ON tg.id_group = g.id JOIN module_tags AS t ON tg.id_tag = t.id WHERE g.is_open=1 AND t.name LIKE "%' . $kw . '%" OR t.id = ' . (int) $kw), $this->getDAOId());
//merge records
$listGroupFinal = array();
foreach ($list as $l) {
$listGroupFinal[] = $l;
}
foreach ($listTag as $l) {
$listGroupFinal[] = $l;
}
$list = $listGroupFinal;
$arGroupes = array();
$groupListId = array();
foreach ($list as $groupe) {
if (in_array($groupe->id, $groupListId)) {
continue;
}
$groupListId[] = $groupe->id;
$parent = Kernel::getNodeParents("CLUB", $groupe->id);
$ok = true;
if (Kernel::getKernelLimits('ville')) {
if ($parent) {
$ville = GroupeService::getGroupeVille($groupe->id, $parent);
if (!in_array($ville, Kernel::getKernelLimits('ville_as_array'))) {
$ok = false;
}
} else {
$ok = false;
}
}
if ($ok) {
$groupe->parent = $parent;
$arGroupes[] = $groupe;
}
}
$results = $arGroupes;
return $results;
}