Nouvel Espace membre, incluant le forum.
Nécessite une petite réorganisation, en ajax
This commit is contained in:
parent
b7d1b415b6
commit
4d9e19d350
12 changed files with 225 additions and 25 deletions
|
@ -5,6 +5,9 @@
|
|||
?>
|
||||
|
||||
<div class="cadre-blanc">
|
||||
|
||||
<INCLURE{fond=inclure/menu-espace_membre,env}>
|
||||
|
||||
<h1>Forum</h1>
|
||||
|
||||
<a href="[(#URL_PAGE{forum_discussion})]"><i class="fas fa-arrow-circle-left"></i> Retour</a>
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
[(#ENV{id_article}|oui)
|
||||
[(#AUTORISER{modifier, article, #ENV{id_article}}|?{
|
||||
<div class="ajax">
|
||||
[(#FORMULAIRE_EDITER_SUJET{#ENV{id_article},#URL_PAGE{forum_discussion}})]<br>
|
||||
[(#FORMULAIRE_EDITER_SUJET{#ENV{id_article},#URL_PAGE{espace_membre}|parametre_url{forum,oui}})]<br>
|
||||
</div>
|
||||
,
|
||||
<div class="reponse_formulaire reponse_formulaire_erreur">Votre compte ne fait pas partie des auteurs autorisés à modifier cet article.</div>
|
||||
|
@ -20,7 +20,7 @@
|
|||
]
|
||||
[(#ENV{id_article}|non)
|
||||
<div class="ajax">
|
||||
[(#FORMULAIRE_EDITER_SUJET{0,#URL_PAGE{forum_discussion}})]
|
||||
[(#FORMULAIRE_EDITER_SUJET{0,#URL_PAGE{espace_membre}|parametre_url{forum,oui}})]
|
||||
</div>
|
||||
]
|
||||
]
|
||||
|
|
31
content/espace_membre.html
Normal file
31
content/espace_membre.html
Normal file
|
@ -0,0 +1,31 @@
|
|||
<?php
|
||||
if (isset($GLOBALS['visiteur_session']['id_auteur']) AND $GLOBALS['visiteur_session']['id_auteur']) {
|
||||
?>
|
||||
|
||||
[(#REM) On affiche la première rubrique par défaut]
|
||||
|
||||
<section id="espace_membre" class="section-top section-bottom container">
|
||||
<div class="cadre-blanc">
|
||||
<h1 class="mb-4">Espace membre</h1>
|
||||
<INCLURE{fond=inclure/espace_membre_contenu,env,ajax}>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<?php
|
||||
}
|
||||
else {
|
||||
?>
|
||||
|
||||
<div class="row mt-4">
|
||||
<div class="se_connecter bloc_connexion col-lg-5">
|
||||
[(#FORMULAIRE_LOGIN{#SELF})]
|
||||
</div>
|
||||
<div class="ou col-lg-2 text-center"><h2>ou</h2></div>
|
||||
<div class="creer_associer_compte bloc_connexion col-lg-5">
|
||||
[(#FORMULAIRE_INSCRIPTION)]
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
}
|
||||
?>
|
|
@ -135,13 +135,15 @@ body{
|
|||
.nav-item:hover{
|
||||
background: rgba(255,255,255,0.2);
|
||||
}
|
||||
.nav-link{
|
||||
padding: 0.3rem 0;
|
||||
}
|
||||
.nav-link, .dropdown-item{
|
||||
color: $light;
|
||||
font-weight: 500;
|
||||
font-family: 'Cabin', sans-serif;
|
||||
font-size: 1.2rem;
|
||||
text-align: center;
|
||||
padding: 0.3rem 0;
|
||||
transition: height 1s ease;
|
||||
}
|
||||
.navbar-brand{
|
||||
|
@ -585,7 +587,7 @@ body{
|
|||
/************************ PAGE ASSOCIATION ****************************/
|
||||
/**********************************************************************/
|
||||
|
||||
#menu-association, #menu-methode, #menu-groupes, #menu-medias{
|
||||
#menu-association, #menu-methode, #menu-groupes, #menu-medias, #menu-espace_membre{
|
||||
background: $couleur-liens;
|
||||
margin: 1rem 0;
|
||||
border-radius: 0.2rem;
|
||||
|
@ -624,12 +626,12 @@ body{
|
|||
/************************** PAGE GROUPES ******************************/
|
||||
/**********************************************************************/
|
||||
|
||||
#menu-groupes, #menu-medias{
|
||||
#menu-groupes, #menu-medias, #menu-espace_membre{
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
@include media-breakpoint-up(lg) {
|
||||
#menu-groupes, #menu-medias{
|
||||
#menu-groupes, #menu-medias, #menu-espace_membre{
|
||||
li:not(:last-of-type){
|
||||
border: none;
|
||||
}
|
||||
|
|
|
@ -12014,13 +12014,16 @@ body {
|
|||
background: rgba(255, 255, 255, 0.2);
|
||||
}
|
||||
|
||||
#menu-principal .nav-link {
|
||||
padding: 0.3rem 0;
|
||||
}
|
||||
|
||||
#menu-principal .nav-link, #menu-principal .dropdown-item {
|
||||
color: #f8f9fa;
|
||||
font-weight: 500;
|
||||
font-family: 'Cabin', sans-serif;
|
||||
font-size: 1.2rem;
|
||||
text-align: center;
|
||||
padding: 0.3rem 0;
|
||||
-webkit-transition: height 1s ease;
|
||||
transition: height 1s ease;
|
||||
}
|
||||
|
@ -12535,34 +12538,34 @@ body {
|
|||
/**********************************************************************/
|
||||
/************************ PAGE ASSOCIATION ****************************/
|
||||
/**********************************************************************/
|
||||
#menu-association, #menu-methode, #menu-groupes, #menu-medias {
|
||||
#menu-association, #menu-methode, #menu-groupes, #menu-medias, #menu-espace_membre {
|
||||
background: #dd7f51;
|
||||
margin: 1rem 0;
|
||||
border-radius: 0.2rem;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
#menu-association .active a, #menu-methode .active a, #menu-groupes .active a, #menu-medias .active a {
|
||||
#menu-association .active a, #menu-methode .active a, #menu-groupes .active a, #menu-medias .active a, #menu-espace_membre .active a {
|
||||
color: #fff99d;
|
||||
}
|
||||
|
||||
#menu-association ul, #menu-methode ul, #menu-groupes ul, #menu-medias ul {
|
||||
#menu-association ul, #menu-methode ul, #menu-groupes ul, #menu-medias ul, #menu-espace_membre ul {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
#menu-association li, #menu-methode li, #menu-groupes li, #menu-medias li {
|
||||
#menu-association li, #menu-methode li, #menu-groupes li, #menu-medias li, #menu-espace_membre li {
|
||||
padding: 0.5rem;
|
||||
}
|
||||
|
||||
#menu-association li a, #menu-methode li a, #menu-groupes li a, #menu-medias li a {
|
||||
#menu-association li a, #menu-methode li a, #menu-groupes li a, #menu-medias li a, #menu-espace_membre li a {
|
||||
color: white;
|
||||
}
|
||||
|
||||
#menu-association li:not(:last-of-type), #menu-methode li:not(:last-of-type), #menu-groupes li:not(:last-of-type), #menu-medias li:not(:last-of-type) {
|
||||
#menu-association li:not(:last-of-type), #menu-methode li:not(:last-of-type), #menu-groupes li:not(:last-of-type), #menu-medias li:not(:last-of-type), #menu-espace_membre li:not(:last-of-type) {
|
||||
border-bottom: solid 1px #f8f9fa;
|
||||
}
|
||||
|
||||
#menu-association .navbar-toggler, #menu-methode .navbar-toggler, #menu-groupes .navbar-toggler, #menu-medias .navbar-toggler {
|
||||
#menu-association .navbar-toggler, #menu-methode .navbar-toggler, #menu-groupes .navbar-toggler, #menu-medias .navbar-toggler, #menu-espace_membre .navbar-toggler {
|
||||
border: none;
|
||||
color: white;
|
||||
width: 100%;
|
||||
|
@ -12579,12 +12582,12 @@ body {
|
|||
/**********************************************************************/
|
||||
/************************** PAGE GROUPES ******************************/
|
||||
/**********************************************************************/
|
||||
#menu-groupes, #menu-medias {
|
||||
#menu-groupes, #menu-medias, #menu-espace_membre {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
@media (min-width: 992px) {
|
||||
#menu-groupes li:not(:last-of-type), #menu-medias li:not(:last-of-type) {
|
||||
#menu-groupes li:not(:last-of-type), #menu-medias li:not(:last-of-type), #menu-espace_membre li:not(:last-of-type) {
|
||||
border: none;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
#SET{name2,id_rub_groupes}
|
||||
#SET{name3,id_rub_forum}
|
||||
#SET{name4,id_mots_medias}
|
||||
#SET{name5,id_mots_espace_membre}
|
||||
#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name1}}|table_valeur{#GET{name2}}}
|
||||
#SET{obli,"obligatoire"}
|
||||
<legend>Configuration de l'arborescence</legend>
|
||||
|
@ -67,6 +68,11 @@
|
|||
[<span class="erreur_message">(#GET{erreurs})</span>]
|
||||
<input type="text" name="#GET{name4}" id="#GET{name4}" value="#ENV{#GET{name4}}">
|
||||
</div>
|
||||
<div class="editer_[(#GET{name5})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
|
||||
<label for="#GET{name5}">ID du groupe de mots de l'espace membre</label>
|
||||
[<span class="erreur_message">(#GET{erreurs})</span>]
|
||||
<input type="text" name="#GET{name5}" id="#GET{name5}" value="#ENV{#GET{name5}}">
|
||||
</div>
|
||||
</fieldset>
|
||||
|
||||
<fieldset>
|
||||
|
|
62
inclure/article-forum.html
Normal file
62
inclure/article-forum.html
Normal file
|
@ -0,0 +1,62 @@
|
|||
<a href="[(#URL_PAGE{espace_membre}|parametre_url{forum,oui})]"><i class="fas fa-arrow-circle-left"></i> Retour</a>
|
||||
|
||||
<BOUCLE_sujet(ARTICLES){id_article=#ENV{id_article}}>
|
||||
<div id="sujet-forum" class="sujet-forum">
|
||||
<h2>Forum - #TITRE</h2>
|
||||
<div>[(#TEXTE|textebrut)]</div>
|
||||
<B_docs>
|
||||
<div class="liste-documents row mt-3 mb-3">
|
||||
<BOUCLE_docs(DOCUMENTS){id_article}{extension==jpg|png|gif|pdf}>
|
||||
<div class="col-2 text-center">
|
||||
<a href="#FICHIER">
|
||||
[(#EXTENSION|=={pdf}|?{
|
||||
[(#CHEMIN{img/document.png}|balise_img{#TITRE}|image_reduire{0,75})],
|
||||
[(#FICHIER|balise_img{#TITRE}|image_reduire{0,75})]
|
||||
})]
|
||||
[<div class="titre_img #EDIT{titre}">(#TITRE)</div>]
|
||||
</a>
|
||||
</div>
|
||||
</BOUCLE_docs>
|
||||
</div>
|
||||
</B_docs>
|
||||
<div class="infos-sujet mt-2">Démarré par #LESAUTEURS [(#DATE|date_relative)]</div>
|
||||
</div>
|
||||
|
||||
<BOUCLE_reponses(FORUMS){id_article}>
|
||||
<div class="sujet-forum row">
|
||||
<div class="col-1">
|
||||
<INCLURE{fond=inclure/avatar_auteur,env,id_auteur=#ID_AUTEUR,taille=mini}>
|
||||
</div>
|
||||
<div class="col-11">
|
||||
<a class="titre-sujet" href="[(#URL_PAGE{auteur}|parametre_url{id_auteur,#ID_AUTEUR})]">#AUTEUR</a>
|
||||
<div class="texte-reponse">#TEXTE</div>
|
||||
<div class="infos-sujet">[(#DATE|date_relative)]</div>
|
||||
<B_docs2>
|
||||
<div class="row mt-2">
|
||||
<BOUCLE_docs2(DOCUMENTS){id_forum}{extension==jpg|png|gif|pdf}>
|
||||
<div class="col">
|
||||
<a href="#FICHIER">
|
||||
[(#EXTENSION|=={pdf}|?{
|
||||
[(#CHEMIN{img/document.png}|balise_img{#TITRE}|image_reduire{0,75})],
|
||||
[(#FICHIER|balise_img{#TITRE}|image_reduire{0,75})]
|
||||
})]
|
||||
[<div class="titre_img #EDIT{titre}">(#TITRE)</div>]
|
||||
</a>
|
||||
</div>
|
||||
</BOUCLE_docs2>
|
||||
</div>
|
||||
</B_docs2>
|
||||
</div>
|
||||
</div>
|
||||
</BOUCLE_reponses>
|
||||
<div class="boutons a-droite">
|
||||
<INCLURE{fond=inclure/bouton_supprimer_sujet, env, id_article=#ID_ARTICLE}/>
|
||||
</div>
|
||||
<//B_reponses>
|
||||
|
||||
</BOUCLE_sujet>
|
||||
|
||||
<div class="cadre-gris">
|
||||
<div class="h2">Répondre</div>
|
||||
#FORMULAIRE_FORUM
|
||||
</div>
|
50
inclure/espace_membre_contenu.html
Normal file
50
inclure/espace_membre_contenu.html
Normal file
|
@ -0,0 +1,50 @@
|
|||
[(#INFO_ORDRE{mots,#ENV{id_mot}}|set{ordre})]
|
||||
|
||||
[(#GET{ordre}|=={DESC}|?{
|
||||
#SET{tri,1},
|
||||
#SET{tri,0}
|
||||
})]
|
||||
|
||||
<div class="page-groupes">
|
||||
<div class="w-100">
|
||||
|
||||
<INCLURE{fond=inclure/menu-espace_membre,env}>
|
||||
|
||||
<?php if (isset($GLOBALS['visiteur_session']['statut']) AND $GLOBALS['visiteur_session']['statut'] == '0minirezo') { ?>
|
||||
[(#ENV{forum}|=={oui}|non)
|
||||
<INCLURE{fond=inclure/bouton_ordre,env,ordre=#GET{ordre,DESC},objet=mot}>
|
||||
]
|
||||
<?php } ?>
|
||||
[(#ENV{forum}|=={oui}|oui)
|
||||
[(#ENV{id_article}|oui)
|
||||
<INCLURE{fond=inclure/article-forum,env}/>
|
||||
]
|
||||
[(#ENV{id_article}|non)
|
||||
<INCLURE{fond=inclure/forum_discussion,env}/>
|
||||
]
|
||||
]
|
||||
|
||||
<B_articles>
|
||||
<div class="row liste-articles">
|
||||
#ANCRE_PAGINATION
|
||||
<BOUCLE_articles(ARTICLES){id_mot=#ENV{id_mot}}{par rang}{inverse #GET{tri}}{par date}{inverse #GET{tri}}{pagination 8}{si #ENV{forum}|!={oui}}>
|
||||
<div class="col-lg-3 mt-4 mt-lg-3">
|
||||
<INCLURE{fond=inclure/bloc_article, env, id_article}/>
|
||||
</div>
|
||||
</BOUCLE_articles>
|
||||
</div>
|
||||
[<div class="pagination">(#PAGINATION{page_precedent_suivant})</div>]
|
||||
</B_articles>
|
||||
<div>
|
||||
[(#ENV{forum}|=={oui}|non)
|
||||
Il n'y a aucun article à afficher dans cette section pour l'instant.
|
||||
]
|
||||
</div>
|
||||
<//B_articles>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
|
19
inclure/forum_discussion.html
Normal file
19
inclure/forum_discussion.html
Normal file
|
@ -0,0 +1,19 @@
|
|||
<h2>Forum</h2>
|
||||
|
||||
<BOUCLE_intro(ARTICLES){grigri=forum}{si #ENV{id_article}|non}>
|
||||
<div class="cadre-gris #EDIT{texte}">
|
||||
[(#TEXTE|textebrut)]
|
||||
</div>
|
||||
</BOUCLE_intro>
|
||||
|
||||
[(#ENV{id_article}|non)
|
||||
<div class="boutons">
|
||||
<a class="btn btn_editer" href="#URL_PAGE{editer_sujet}"><i class="fas fa-edit"></i> Démarrer une nouvelle discussion</a>
|
||||
</div>
|
||||
|
||||
<INCLURE{fond=inclure/sujets-forum, env}>
|
||||
]
|
||||
|
||||
[(#ENV{id_article}|oui)
|
||||
<INCLURE{page=article-forum, env}>
|
||||
]
|
18
inclure/menu-espace_membre.html
Normal file
18
inclure/menu-espace_membre.html
Normal file
|
@ -0,0 +1,18 @@
|
|||
<nav id="menu-espace_membre" 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">(#INFO_TITRE{mot,#ENV{id_mot}})</span>]
|
||||
</button>
|
||||
<div class="collapse navbar-collapse" id="liste-groupes">
|
||||
<ul class="navbar-nav">
|
||||
<li class="nav-item [(#ENV{forum}|=={oui}|oui) active]">
|
||||
<a class="nav-link ajax nocache" href="[(#URL_PAGE{espace_membre}|parametre_url{forum,oui})]">Forum</a>
|
||||
</li>
|
||||
<BOUCLE_menu_membre(MOTS){id_groupe = #CONFIG{balint/id_mots_espace_membre}}{par id_mot}{tout}>
|
||||
<li class="nav-item [(#ENV{id_mot}|=={#ID_MOT}|oui) active]">
|
||||
<a class="nav-link ajax nocache" href="[(#URL_PAGE{espace_membre}|parametre_url{id_mot,#ID_MOT})]">#TITRE</a>
|
||||
</li>
|
||||
</BOUCLE_menu_membre>
|
||||
</ul>
|
||||
</div>
|
||||
</nav>
|
|
@ -13,13 +13,13 @@
|
|||
<a class="nav-link" href="[(#URL_PAGE{association})]">L'association</a>
|
||||
</li>
|
||||
<li class="nav-item [(#SI_PAGE{methode}|oui) active]">
|
||||
<a class="nav-link" href="[(#URL_PAGE{methode})]">La méthode</a>
|
||||
<a class="nav-link" href="[(#URL_PAGE{methode})]">Méthode</a>
|
||||
</li>
|
||||
<li class="nav-item [(#SI_PAGE{seminaires}|oui) active]">
|
||||
<a class="nav-link" href="[(#URL_PAGE{seminaires})]">Les séminaires</a>
|
||||
<a class="nav-link" href="[(#URL_PAGE{seminaires})]">Séminaires</a>
|
||||
</li>
|
||||
<li class="nav-item dropdown [(#SI_PAGE{groupes}|oui) active]">
|
||||
<a class="nav-link dropdown-toggle" href="[(#URL_PAGE{groupes})]" id="groupesDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Les groupes</a>
|
||||
<a class="nav-link dropdown-toggle" href="[(#URL_PAGE{groupes})]" id="groupesDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Groupes</a>
|
||||
<div class="dropdown-menu" aria-labelledby="groupesDropdown">
|
||||
<BOUCLE_menu_groupes(RUBRIQUES){id_parent=#CONFIG{balint/id_rub_groupes}}{par num titre}{tout}>
|
||||
<a class="dropdown-item" href="[(#URL_PAGE{groupes}|parametre_url{id_rubrique,#ID_RUBRIQUE})]">#TITRE</a>
|
||||
|
@ -36,10 +36,16 @@
|
|||
</li>
|
||||
<?php
|
||||
if (isset($GLOBALS['visiteur_session']['id_auteur']) AND $GLOBALS['visiteur_session']['id_auteur']) {
|
||||
?>
|
||||
<li class="nav-item [(#SI_PAGE{forum}|oui) active]">
|
||||
<a class="nav-link" href="[(#URL_PAGE{forum_discussion})]">Forum</a>
|
||||
</li>
|
||||
?>
|
||||
<li class="nav-item dropdown [(#SI_PAGE{espace_membre}|oui) active]">
|
||||
<a class="nav-link dropdown-toggle" href="[(#URL_PAGE{espace_membre})]" id="membresDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">Espace membre</a>
|
||||
<div class="dropdown-menu" aria-labelledby="membresDropdown">
|
||||
<a class="dropdown-item" href="[(#URL_PAGE{espace_membre}|parametre_url{forum,oui})]">Forum</a>
|
||||
<BOUCLE_menu_prive(MOTS){id_groupe=#CONFIG{balint/id_mots_espace_membre}}{par id_mot}{tout}>
|
||||
<a class="dropdown-item" href="[(#URL_PAGE{espace_membre}|parametre_url{id_mot,#ID_MOT})]">#TITRE</a>
|
||||
</BOUCLE_menu_prive>
|
||||
</div>
|
||||
</li>
|
||||
<?php } ?>
|
||||
<li class="nav-item [(#SI_PAGE{nous-contacter}|oui) active]">
|
||||
<a class="nav-link" href="[(#URL_PAGE{nous-contacter})]">Contact</a>
|
||||
|
|
|
@ -8,13 +8,13 @@
|
|||
</BOUCLE_auteur>
|
||||
</div>
|
||||
<div class="col-11">
|
||||
<a class="titre-sujet" href="[(#URL_PAGE{article}|parametre_url{id_article,#ID_ARTICLE})]">#TITRE</a>
|
||||
<a class="titre-sujet ajax nocache" href="[(#URL_PAGE{espace_membre}|parametre_url{id_article,#ID_ARTICLE}|parametre_url{forum,oui}|ancre_url{sujet-forum})]">#TITRE</a>
|
||||
[<div class="resume-sujet">(#TEXTE|couper{150, '...'})</div>]
|
||||
<div class="infos-sujet mt-2">Démarré par #LESAUTEURS [(#DATE|date_relative)]</div>
|
||||
<BOUCLE_reponse(FORUMS){id_article}{! par date}{0,1}>
|
||||
<div class="infos-sujet font-italic">[(#TOTAL_BOUCLE|singulier_ou_pluriel{balint:1_reponse, balint:n_reponses})] | Dernier message de #AUTEUR [(#DATE_HEURE|date_relative)]</div>
|
||||
</BOUCLE_reponse>
|
||||
<a class="d-block mt-2" href="#URL_PAGE{article,id_article=#ID_ARTICLE}"><i class="fas fa-edit"></i> Participer à la discussion</a>
|
||||
<a class="d-block mt-2 ajax nocache" href="[(#URL_PAGE{espace_membre,id_article=#ID_ARTICLE}|parametre_url{forum,oui}|ancre_url{sujet-forum})]"><i class="fas fa-edit"></i> Participer à la discussion</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
|
Loading…
Add table
Reference in a new issue