Mise en place de l'affichage des groupes et petites corrections

This commit is contained in:
Pierre 2020-01-29 14:01:29 +01:00
parent 61406954ec
commit c1ab2ca2f4
12 changed files with 254 additions and 31 deletions

10
breadcrumb/groupe.html Normal file
View file

@ -0,0 +1,10 @@
<BOUCLE_pays(RUBRIQUES){id_rubrique=#INFO_ID_RUBRIQUE{article,#ENV{id_article}}}>
<ul class="breadcrumb">
<li><a href="#URL_SITE_SPIP"><:accueil_site:></a><span class="divider"> &gt; </span></li>
<li><a href="#URL_PAGE{groupes}"> Groupes</a><span class="divider"> &gt; </span></li>
<li><a href="[(#URL_PAGE{groupes}|parametre_url{id_rubrique,#ID_RUBRIQUE})]">[(#TITRE|couper{80})]</a><span class="divider"> &gt; </span></li>
<li class="active">#ENV{ville}</li>
</ul>
</BOUCLE_pays>

View file

@ -1,3 +1,4 @@
[(#REM) On affiche le premier article par défaut]
<BOUCLE_menu_association(ARTICLES){grigri=association}{0,1}>
[(#ID_ARTICLE|setenv{id_article})]
</BOUCLE_menu_association>
@ -6,6 +7,5 @@
<div class="container">
<h1>L'Association</h1>
<INCLURE{fond=inclure/association_contenu,env,ajax}>
</div>
</div>
</section>

51
content/groupe.html Normal file
View file

@ -0,0 +1,51 @@
[(#REM) On affiche tous les groupes appartenant à la même Ville]
#SET{ville,#INFO_SURTITRE{article,#ENV{id_article}}}
[(#REM) On récupère les id de tous les groupes de la ville pour les actualités]
[(#SET{groupes,#ARRAY})]
<section class="section-top section-bottom container">
<INCLURE{fond=breadcrumb/groupe,env,ville=#GET{ville}} />
<h1 class="h1-like #EDIT{titre}">Groupes de #GET{ville}</h1>
<div class="row">
<BOUCLE_groupe(ARTICLES){surtitre = #GET{ville}}{id_secteur=#CONFIG{balint/id_rub_groupes}}>
[(#SET{groupes,#GET{groupes}|push{#ID_ARTICLE}})]
<div class="col-md-6 col-lg-4 mt-4 mt-lg-0">
<div class="bloc-ville">
[(#AUTORISER{modifier, article, #ID_ARTICLE})
<a class="btn" href="#URL_PAGE{editer_article,id_article=#ID_ARTICLE }"><i class="fas fa-edit"></i> Mettre à jour le groupe</a>
]
[<h2 class="h3-like #EDIT{titre}">(#TITRE)</h2>]
<div class="texte #EDIT{soustitre}">#SOUSTITRE</div>
<div class="texte #EDIT{descriptif}">#DESCRIPTIF</div>
<div class="texte #EDIT{texte}">#TEXTE</div>
<BOUCLE_images(DOCUMENTS){id_article=#ID_ARTICLE}{extension==jpg|png|gif}{!par credits}{1,n}>
<a href="#FICHIER" class='mediabox' rel='galerie_#ID_ARTICLE'>
[(#FICHIER|image_recadre{350:200,-,focus}|image_reduire{350, 200})]
</a>
</BOUCLE_images>
</div>
</div>
</BOUCLE_groupe>
</div>
<h3 class="mt-4 mb-3">Dernières nouvelles</h3>
<div class="row liste-articles">
<BOUCLE_a_la_une(ARTICLES){id_rubrique=#CONFIG{balint/id_rub_articles}}{id_groupe IN #GET{groupes}}{0,6}{! par date}>
<div class="col-md-6 col-lg-4 mt-4 mt-lg-0">
<INCLURE{fond=inclure/bloc_article, env, id_article}/>
</div>
</BOUCLE_a_la_une>
<div class="container">Il n'y a pas encore d'article dans ce pays.</div>
<//B_a_la_une>
</div>
</section>

15
content/groupes.html Normal file
View file

@ -0,0 +1,15 @@
[(#REM) On affiche la France par défaut]
<BOUCLE_france(RUBRIQUES){id_parent = #CONFIG{balint/id_rub_groupes}}{titre=france}{tout}{0,1}{si #ENV{id_rubrique}|non}>
[(#ID_RUBRIQUE|setenv{id_rubrique})]
</BOUCLE_france>
[(#REM) On affiche tous les groupes appartenant à la même Ville]
<section id="groupes" class="section-top section-bottom container">
<div class="container">
<h1>Les groupes</h1>
<INCLURE{fond=inclure/groupes_contenu,env,ajax}>
</div>
</section>

View file

@ -368,14 +368,14 @@ body{
/************************ PAGE ASSOCIATION ****************************/
/**********************************************************************/
#menu-association{
#menu-association, #menu-groupes{
background: $bg-diapo-texte;
background-size: cover;
margin: 1rem 0;
border-radius: 0.2rem;
padding: 0;
.active a{
color: $couleur-liens;
color: $page-active;
font-weight: bold;
}
li{
padding: 0.5rem;
@ -399,6 +399,37 @@ body{
margin: 1.5rem 0;
}
/**********************************************************************/
/************************** PAGE GROUPES ******************************/
/**********************************************************************/
@include media-breakpoint-up(lg) {
#menu-groupes li:not(:last-of-type){
border: none;
}
}
.bloc-ville{
display: flex;
flex-direction: column;
justify-content: space-between;
width: 100%;
min-height: 100%;
border: solid 1px #ddd;
background: white;
border-radius: 0.2rem;
padding: 1.5rem;
text-align: center;
a div{
color: $dark;
}
a:hover div{
color: $couleur-liens;
}
}
/**********************************************************************/
/**************** TOUS LES FORMULAIRES DE CONNEXION *******************/
/**********************************************************************/

View file

@ -2,7 +2,8 @@ $couleur-texte : black;
$dark: #595959;
$fond-menu: #3b3f8a;
$couleur-liens : #dc7544;
$page-active: #ffe9aa;
//$page-active: #ffe9aa;
$page-active: #ffdb70;
$fond-footer: #464ba3;
$titres-footer: #64d4af;
$fond-formulaires: rgba(255,255,255,0.8);

View file

@ -11906,7 +11906,7 @@ body {
}
#menu-principal .active a {
color: #ffe9aa;
color: #ffdb70;
}
#menu-principal .navbar-toggler {
@ -12184,7 +12184,7 @@ body {
}
#footer-infos a {
color: #ffe9aa;
color: #ffdb70;
}
.footer {
@ -12260,34 +12260,78 @@ body {
/**********************************************************************/
/************************ PAGE ASSOCIATION ****************************/
/**********************************************************************/
#menu-association {
#menu-association, #menu-groupes {
background: rgba(0, 13, 158, 0.65);
background-size: cover;
margin: 1rem 0;
border-radius: 0.2rem;
padding: 0;
}
#menu-association .active a {
color: #dc7544;
#menu-association .active a, #menu-groupes .active a {
color: #ffdb70;
font-weight: bold;
}
#menu-association li {
#menu-association li, #menu-groupes li {
padding: 0.5rem;
}
#menu-association li a {
#menu-association li a, #menu-groupes li a {
color: #f8f9fa;
}
#menu-association li:not(:last-of-type) {
#menu-association li:not(:last-of-type), #menu-groupes li:not(:last-of-type) {
border-bottom: solid 1px #f8f9fa;
}
#menu-association .navbar-toggler, #menu-groupes .navbar-toggler {
border: none;
color: white;
width: 100%;
-webkit-box-align: center;
align-items: center;
-webkit-box-pack: justify;
justify-content: space-between;
}
.asso-image {
margin: 1.5rem 0;
}
/**********************************************************************/
/************************** PAGE GROUPES ******************************/
/**********************************************************************/
@media (min-width: 992px) {
#menu-groupes li:not(:last-of-type) {
border: none;
}
}
.bloc-ville {
display: -webkit-box;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
flex-direction: column;
-webkit-box-pack: justify;
justify-content: space-between;
width: 100%;
min-height: 100%;
border: solid 1px #ddd;
background: white;
border-radius: 0.2rem;
padding: 1.5rem;
text-align: center;
}
.bloc-ville a div {
color: #595959;
}
.bloc-ville a:hover div {
color: #dc7544;
}
/**********************************************************************/
/**************** TOUS LES FORMULAIRES DE CONNEXION *******************/
/**********************************************************************/

View file

@ -5,22 +5,22 @@
<form method="post" action="#ENV{action}#formulaire_nous_contacter#ENV{id}">
[(#REM) declarer les hidden qui declencheront le service du formulaire parametre : url d'action ]
#ACTION_FORMULAIRE
<fieldset>
<div class="editer-groupe">
<div class="editer saisie_nom_message_auteur obligatoire[ (#ENV*{erreurs}|table_valeur{nom_message_auteur}|oui)erreur]">
[<span class="erreur_message">(#ENV*{erreurs}|table_valeur{nom_message_auteur})</span>]
<input type="text" class="text" name="nom_message_auteur" id="nom_message_auteur#ENV{id}" size="30" placeholder="Prénom et Nom"[(#HTML5) required="required"] />
</div>
<div class="editer saisie_email_message_auteur obligatoire[ (#ENV*{erreurs}|table_valeur{email_message_auteur}|oui)erreur]">
[<span class="erreur_message">(#ENV*{erreurs}|table_valeur{email_message_auteur})</span>]
<input[ (#HTML5|?{required="required" type="email" class="text email",type="text" class="text"})] name="email_message_auteur" id="email_message_auteur#ENV{id}" size="30" placeholder="Adresse e-mail"/>
</div>
<div class="editer saisie_texte_message_auteur obligatoire[ (#ENV*{erreurs}|table_valeur{texte_message_auteur}|oui)erreur]">
[<span class="erreur_message">(#ENV*{erreurs}|table_valeur{texte_message_auteur})</span>]
<textarea name="texte_message_auteur" id="texte_message_auteur#ENV{id}" rows="10" cols="60" placeholder="Message"[(#HTML5) required="required"]></textarea>
</div>
<div class="editer-groupe">
<div class="editer saisie_nom_message_auteur obligatoire[ (#ENV*{erreurs}|table_valeur{nom_message_auteur}|oui)erreur]">
[<span class="erreur_message">(#ENV*{erreurs}|table_valeur{nom_message_auteur})</span>]
<input type="text" class="text" name="nom_message_auteur" id="nom_message_auteur#ENV{id}" size="30" placeholder="Prénom et Nom"[(#HTML5) required="required"] />
</div>
</fieldset>
<div class="editer saisie_email_message_auteur obligatoire[ (#ENV*{erreurs}|table_valeur{email_message_auteur}|oui)erreur]">
[<span class="erreur_message">(#ENV*{erreurs}|table_valeur{email_message_auteur})</span>]
<input[ (#HTML5|?{required="required" type="email" class="text email",type="text" class="text"})] name="email_message_auteur" id="email_message_auteur#ENV{id}" size="30" placeholder="Adresse e-mail"/>
</div>
<div class="editer saisie_texte_message_auteur obligatoire[ (#ENV*{erreurs}|table_valeur{texte_message_auteur}|oui)erreur]">
[<span class="erreur_message">(#ENV*{erreurs}|table_valeur{texte_message_auteur})</span>]
<textarea name="texte_message_auteur" id="texte_message_auteur#ENV{id}" rows="10" cols="60" placeholder="Message"[(#HTML5) required="required"]></textarea>
</div>
</div>
[(#REM) Piege a robots spammeurs ]
<p style="display: none;">
<label for="nobot"><:antispam_champ_vide:></label>

View file

@ -14,8 +14,8 @@
<div class="col-lg-8 asso-contenu">
<BOUCLE_contenu(ARTICLES){id_article=#ENV{id_article}}>
<h2>#TITRE</h2>
#TEXTE
<h2 class="#EDIT{titre}">#TITRE</h2>
<div class="#EDIT{texte}">#TEXTE</div>
</BOUCLE_contenu>
[(#REM) On affiche les images à la fin sur petits écrans]

View file

@ -0,0 +1,48 @@
<INCLURE{fond=inclure/menu-groupes,env}>
<h2>#INFO_TITRE{rubrique,#ENV{id_rubrique}}</h2>
<div class="row">
<BOUCLE_villes(ARTICLES){id_rubrique=#ENV{id_rubrique}}{fusion surtitre}>
<div class="col-md-6 col-lg-4 mt-4 mt-lg-0">
<div class="bloc-ville">
<a href=[(#URL_PAGE{groupe}|parametre_url{id_article,#ID_ARTICLE})]>
<h4>#SURTITRE <i class="fas fa-globe"></i></h4>
#SET{nb_articles,0}
<B_nb_gpes>
<div>[(#TOTAL_BOUCLE|singulier_ou_pluriel{balint:1_groupe, balint:n_groupes})]</div>
<BOUCLE_nb_gpes(ARTICLES){id_rubrique=#ENV{id_rubrique}}{surtitre}>
<BOUCLE_nb_articles(ARTICLES){id_rubrique=#CONFIG{balint/id_rub_articles}}{id_groupe=#ID_ARTICLE}>
[(#SET{nb_articles,#GET{nb_articles}|plus{1}})]
</BOUCLE_nb_articles>
</BOUCLE_nb_gpes>
<div>[(#GET{nb_articles}|singulier_ou_pluriel{blaint:1_article, balint:n_articles})]</div>
</B_nb_gpes>
</a>
</div>
</div>
</BOUCLE_villes>
<div class="container">Il n'y a pas encore de groupe dans ce pays.</div>
<//B_villes>
</div>
<h3 class="mt-4 mb-3">Dernières nouvelles</h3>
[(#REM) On récupère les id de tous les groupes du pays]
[(#SET{groupes,#ARRAY})]
<BOUCLE_villes2(ARTICLES){id_rubrique=#ENV{id_rubrique}}{tout}>
[(#SET{groupes,#GET{groupes}|push{#ID_ARTICLE}})]
</BOUCLE_villes2>
<div class="row liste-articles">
<BOUCLE_a_la_une(ARTICLES){id_rubrique=#CONFIG{balint/id_rub_articles}}{id_groupe IN #GET{groupes}}{0,6}{! par date}>
<div class="col-md-6 col-lg-4 mt-4 mt-lg-0">
<INCLURE{fond=inclure/bloc_article, env, id_article}/>
</div>
</BOUCLE_a_la_une>
<div class="container">Il n'y a pas encore d'article dans ce pays.</div>
<//B_a_la_une>
</div>

15
inclure/menu-groupes.html Normal file
View file

@ -0,0 +1,15 @@
<nav id="menu-groupes" class="navbar navbar-expand-lg navbar-dark">
<button class="navbar-toggler d-flex d-lg-none collapsed" type="button" data-toggle="collapse" data-target="#liste-groupes" aria-controls="liste-deroulante-association" aria-expanded="false" aria-label="Toggle navigation">
<i class="fa fa-angle-down" aria-hidden="true"></i>
<span class="navbar-brand d-lg-none">Pays</span>
</button>
<div class="collapse navbar-collapse" id="liste-groupes">
<ul class="navbar-nav">
<BOUCLE_menu_groupes(RUBRIQUES){id_parent = #CONFIG{balint/id_rub_groupes}}{tout}>
<li class="nav-item [(#ENV{id_rubrique}|=={#ID_RUBRIQUE}|oui) active]">
<a class="nav-link ajax" href="[(#URL_PAGE{groupes}|parametre_url{id_rubrique,#ID_RUBRIQUE})]">#TITRE</a>
</li>
</BOUCLE_menu_groupes>
</ul>
</div>
</nav>

View file

@ -7,9 +7,17 @@ if (!defined('_ECRIRE_INC_VERSION')) {
$GLOBALS[$GLOBALS['idx_lang']] = array(
// A
'1_article' => '1 article',
'n_articles' => '@nb@ articles',
// F
'champslibres_titre' => 'squelette champslibres',
//G
'1_groupe' => '1 groupe',
'n_groupes' => '@nb@ groupes',
// C
'cfg_exemple' => 'Exemple',
'cfg_exemple_explication' => 'Explication de cet exemple',