From 993644e5274602302ff8dffe0b6c8db395a39ce3 Mon Sep 17 00:00:00 2001 From: Pierre Date: Tue, 11 Feb 2020 03:09:19 +0100 Subject: [PATCH] Mise en place du forum --- content/article-forum.html | 88 +++++++++++++++++++ content/article-forum.xml | 4 + content/editer_sujet.html | 40 +++++++++ content/forum.html | 48 +++++++++++ content/modifier_auteur.html | 2 + content/rubrique-forum.html | 12 +++ content/rubrique-forum.xml | 5 ++ css/_sq_balint.scss | 41 ++++++++- css/mon_site.css | 44 ++++++++-- formulaires/configurer_balint.html | 6 ++ formulaires/editer_auteur.html | 2 +- formulaires/editer_sujet.html | 54 ++++++++++++ formulaires/editer_sujet.php | 134 +++++++++++++++++++++++++++++ formulaires/login.html | 1 - img/image.png | Bin 0 -> 3742 bytes img/profile.png | Bin 0 -> 19258 bytes inclure/avatar_auteur.html | 21 +++-- inclure/menu_principal.html | 4 + inclure/sujets-forum.html | 23 +++++ lang/balint_fr.php | 18 ++-- paquet.xml | 7 +- 21 files changed, 526 insertions(+), 28 deletions(-) create mode 100644 content/article-forum.html create mode 100644 content/article-forum.xml create mode 100644 content/editer_sujet.html create mode 100644 content/forum.html create mode 100644 content/rubrique-forum.html create mode 100644 content/rubrique-forum.xml create mode 100644 formulaires/editer_sujet.html create mode 100644 formulaires/editer_sujet.php create mode 100644 img/image.png create mode 100644 img/profile.png create mode 100644 inclure/sujets-forum.html diff --git a/content/article-forum.html b/content/article-forum.html new file mode 100644 index 0000000..21fa7f7 --- /dev/null +++ b/content/article-forum.html @@ -0,0 +1,88 @@ +
+ + + + + +
+
Répondre
+ #FORMULAIRE_FORUM +
+ + + +
+
+ [(#FORMULAIRE_LOGIN{#SELF})] +
+

ou

+
+ [(#FORMULAIRE_INSCRIPTION)] +
+
+ + + +
\ No newline at end of file diff --git a/content/article-forum.xml b/content/article-forum.xml new file mode 100644 index 0000000..9048e2b --- /dev/null +++ b/content/article-forum.xml @@ -0,0 +1,4 @@ + + Article-Sujet du forum + Affichage des sujets du forum + \ No newline at end of file diff --git a/content/editer_sujet.html b/content/editer_sujet.html new file mode 100644 index 0000000..acc7215 --- /dev/null +++ b/content/editer_sujet.html @@ -0,0 +1,40 @@ +
+ +
+ + [(#ENV{id_article}|?{ +

Éditer un sujet

+ , +

Rédiger un sujet

+ })] + + [(#SESSION{id_auteur}|oui) + [(#ENV{id_article}|oui) + [(#AUTORISER{modifier, article, #ENV{id_article}}|?{ +
+ [(#FORMULAIRE_EDITER_SUJET{#ENV{id_article},#URL_PAGE{forum}})]
+
+ , +
Votre compte ne fait pas partie des auteurs autorisés à modifier cet article.
+ })] + ] + [(#ENV{id_article}|non) +
+ [(#FORMULAIRE_EDITER_SUJET{0,#URL_PAGE{forum}})] +
+ ] + ] + [(#SESSION{id_auteur}|non) +
+
+ [(#FORMULAIRE_LOGIN{#SELF})] +
+

ou

+
+ [(#FORMULAIRE_INSCRIPTION)] +
+
+ ] +
+ +
diff --git a/content/forum.html b/content/forum.html new file mode 100644 index 0000000..720e448 --- /dev/null +++ b/content/forum.html @@ -0,0 +1,48 @@ +
+ +
+ +

Forum

+ + + + +
+ [(#TEXTE|textebrut)] +
+ + + + + + + + +
+
+ [(#FORMULAIRE_LOGIN{#SELF})] +
+

ou

+
+ [(#FORMULAIRE_INSCRIPTION)] +
+
+ + + +
+ +
+ + + + \ No newline at end of file diff --git a/content/modifier_auteur.html b/content/modifier_auteur.html index 82afb0f..ff57888 100644 --- a/content/modifier_auteur.html +++ b/content/modifier_auteur.html @@ -1,3 +1,4 @@ +

Modifier mon profil

@@ -16,3 +17,4 @@
Vous devez être connecté pour accéder à cette page.
+
diff --git a/content/rubrique-forum.html b/content/rubrique-forum.html new file mode 100644 index 0000000..7db8f7f --- /dev/null +++ b/content/rubrique-forum.html @@ -0,0 +1,12 @@ + +
+ [[(#TITRE|attribut_html)]] +
+

#TITRE

+ #TEXTE +
+
+ + +

Liste des articles

+ diff --git a/content/rubrique-forum.xml b/content/rubrique-forum.xml new file mode 100644 index 0000000..2865956 --- /dev/null +++ b/content/rubrique-forum.xml @@ -0,0 +1,5 @@ + + Article-Sujet du forum + Affichage des sujets du forum + + \ No newline at end of file diff --git a/css/_sq_balint.scss b/css/_sq_balint.scss index 7d38584..6fcf63b 100644 --- a/css/_sq_balint.scss +++ b/css/_sq_balint.scss @@ -84,13 +84,25 @@ body{ } .section-top{ - padding-top: 10rem; + padding-top: 8rem; } .section-bottom{ padding-bottom: 3rem; } +.colonne-blanche{ + padding: 1.5rem; + background: white; + border-radius: 0.5rem; +} + +.cadre-gris{ + padding: 1.5rem; + background: $gris-clair; + border-radius: 0.5rem; +} + /**********************************************************************/ /************************* HEADER ******************************/ @@ -529,20 +541,21 @@ body{ background: rgb(214, 72, 72) } } - .submit { + .submit, .btn_editer { background-color: #4f56cd; color: $light; &:hover{ background-color: #7276ee; cursor: pointer; } + } + .btn_editer{ + margin-left: 0; } } .formulaire_spip{ - background: $fond-formulaires; - border-radius: 0.5rem; fieldset legend{ background: none; } @@ -633,6 +646,7 @@ body{ border: solid 1px #BBB; padding: 1.5rem; background-color:#FCFCFC; + border-radius: 0.5rem; &> div{ margin-bottom: 1.2rem; } @@ -670,6 +684,25 @@ body{ align-items: center; } +/**********************************************************************/ +/****************************** FORUM *********************************/ +/**********************************************************************/ + +.sujet-forum{ + padding: 1rem 0; + background: $fond-transparent; + &:not(:last-of-type){ + border-bottom: solid 3px $gris-clair; + } + .spip_logo{ + border-radius: 100%; + } +} + +#formulaire_forum .saisie_texte_info{ + display: none; +} + /**********************************************************************/ /****************************** spip_admin ****************************/ /**********************************************************************/ diff --git a/css/mon_site.css b/css/mon_site.css index 1b2a14a..e294ed6 100644 --- a/css/mon_site.css +++ b/css/mon_site.css @@ -11960,13 +11960,25 @@ body { } .section-top { - padding-top: 10rem; + padding-top: 8rem; } .section-bottom { padding-bottom: 3rem; } +.colonne-blanche { + padding: 1.5rem; + background: white; + border-radius: 0.5rem; +} + +.cadre-gris { + padding: 1.5rem; + background: #f2f2f2; + border-radius: 0.5rem; +} + /**********************************************************************/ /************************* HEADER ******************************/ /**********************************************************************/ @@ -12481,19 +12493,18 @@ body { background: #d64848; } -.formulaire_spip .boutons .submit, .boutons .submit { +.formulaire_spip .boutons .submit, .formulaire_spip .boutons .btn_editer, .boutons .submit, .boutons .btn_editer { background-color: #4f56cd; color: #f8f9fa; } -.formulaire_spip .boutons .submit:hover, .boutons .submit:hover { +.formulaire_spip .boutons .submit:hover, .formulaire_spip .boutons .btn_editer:hover, .boutons .submit:hover, .boutons .btn_editer:hover { background-color: #7276ee; cursor: pointer; } -.formulaire_spip { - background: rgba(255, 255, 255, 0.8); - border-radius: 0.5rem; +.formulaire_spip .boutons .btn_editer, .boutons .btn_editer { + margin-left: 0; } .formulaire_spip fieldset legend { @@ -12618,6 +12629,7 @@ body { border: solid 1px #BBB; padding: 1.5rem; background-color: #FCFCFC; + border-radius: 0.5rem; } .container fieldset > div { @@ -12657,6 +12669,26 @@ body { align-items: center; } +/**********************************************************************/ +/****************************** FORUM *********************************/ +/**********************************************************************/ +.sujet-forum { + padding: 1rem 0; + background: rgba(255, 255, 255, 0.92); +} + +.sujet-forum:not(:last-of-type) { + border-bottom: solid 3px #f2f2f2; +} + +.sujet-forum .spip_logo { + border-radius: 100%; +} + +#formulaire_forum .saisie_texte_info { + display: none; +} + /**********************************************************************/ /****************************** spip_admin ****************************/ /**********************************************************************/ diff --git a/formulaires/configurer_balint.html b/formulaires/configurer_balint.html index a3c7035..9dd76b8 100644 --- a/formulaires/configurer_balint.html +++ b/formulaires/configurer_balint.html @@ -42,6 +42,7 @@
#SET{name1,id_rub_articles} #SET{name2,id_rub_groupes} + #SET{name3,id_rub_forum} #SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name1}}|table_valeur{#GET{name2}}} #SET{obli,"obligatoire"} Configuration de l'arborescence @@ -55,6 +56,11 @@ [(#GET{erreurs})] +
+ + [(#GET{erreurs})] + +
diff --git a/formulaires/editer_auteur.html b/formulaires/editer_auteur.html index d8b2486..55ec677 100644 --- a/formulaires/editer_auteur.html +++ b/formulaires/editer_auteur.html @@ -30,7 +30,7 @@
Avatar - +
diff --git a/formulaires/editer_sujet.html b/formulaires/editer_sujet.html new file mode 100644 index 0000000..c9d14c4 --- /dev/null +++ b/formulaires/editer_sujet.html @@ -0,0 +1,54 @@ + +
+ +
+ + #ACTION_FORMULAIRE{#ENV{action}} + + [

(#ENV*{message_erreur})

] + [

(#ENV*{message_ok})

] + +
+
+
+ Texte +
+ + +
+ +
+ + +
+ +
+ +
+ Pièces jointes +
+ +
+ +
+
+ +
+ +
+ +
+ [(#ENV{id_article}|>{0}|oui) + [(#INCLURE{fond=inclure/bouton_supprimer,id_article=#ENV{id_article}})] + ] +
+ +
+
+ +
+ + + \ No newline at end of file diff --git a/formulaires/editer_sujet.php b/formulaires/editer_sujet.php new file mode 100644 index 0000000..f4d2b51 --- /dev/null +++ b/formulaires/editer_sujet.php @@ -0,0 +1,134 @@ + 'tout_mime','taille_max'=>'5000','largeur_max'=>'2048','hauteur_max'=>'2048']; + $bigform($options,$erreurs); + + return $erreurs; +} + +function formulaires_editer_sujet_traiter_dist($id_article = 0, $redirect = ''){ + $new = $id_article; + + $id_rubrique = lire_config('balint/id_rub_forum'); + + if (!intval($id_article)) { + + include_spip('action/editer_article'); + $set = array( + 'statut' => 'publie' + ); + $id_article = article_inserer($id_rubrique,$set); + } + + // enregistrement de l'image + if (!intval($new)) { + $where = array( + 'objet="article"', + 'id_objet='.intval(session_get('id_auteur')) * -1 + ); + sql_updateq('spip_documents_liens',array('id_objet' => intval($id_article)), $where); + } + + // maj de l'article + $set = array( + 'titre' => _request('titre'), + 'texte' => _request('texte') + ); + sql_updateq('spip_articles',$set,'id_article='.intval($id_article)); + + // maj association article -> auteurs + include_spip('action/editer_liens'); + $where = array( + 'id_objet='.intval($id_article), + 'objet="article"', + ); + $ids_auteurs = sql_allfetsel('id_auteur', 'spip_auteurs_liens', $where); + $ids_auteurs = array_column($ids_auteurs, 'id_auteur'); + $Tauteurs = _request('Tauteurs'); + if (count($Tauteurs)) { + $associer = array_diff($Tauteurs, $ids_auteurs); + $dissocier = array_diff($ids_auteurs, $Tauteurs); + + objet_associer( array('auteur' => $associer),array('article' => intval($id_article) )); + objet_dissocier( array('auteur' => $dissocier) , array('article' =>intval($id_article) )); + } + + include_spip('inc/invalideur'); + suivre_invalideur("id='id_article/1'"); + + $retour = array(); + $retour['message_ok'] = "Le sujet a bien été créé."; + + + $retour['redirect'] = $redirect; + + $bigform = charger_fonction('bigform_traiter','inc'); + $bigform($id_article, 'article'); + + return $retour; +} diff --git a/formulaires/login.html b/formulaires/login.html index 8ce328b..e85d260 100644 --- a/formulaires/login.html +++ b/formulaires/login.html @@ -18,7 +18,6 @@ #ACTION_FORMULAIRE{#ENV{action}}
Se connecter - [(#ENV*{_logo,''})]
\ No newline at end of file diff --git a/inclure/sujets-forum.html b/inclure/sujets-forum.html new file mode 100644 index 0000000..1c82d2f --- /dev/null +++ b/inclure/sujets-forum.html @@ -0,0 +1,23 @@ + + #ANCRE_PAGINATION + +
+
+ + + +
+
+ #TITRE + [
(#TEXTE|couper{150, '...'})
] +
Démarré par #LESAUTEURS [(#DATE|date_relative)]
+ +
[(#TOTAL_BOUCLE|singulier_ou_pluriel{balint:1_reponse, balint:n_reponses})] | Dernier message de #AUTEUR [(#DATE_HEURE|date_relative)]
+ + Participer à la discussion + +
+
+ + [] +
\ No newline at end of file diff --git a/lang/balint_fr.php b/lang/balint_fr.php index 45e7f4c..1006041 100644 --- a/lang/balint_fr.php +++ b/lang/balint_fr.php @@ -11,18 +11,22 @@ $GLOBALS[$GLOBALS['idx_lang']] = array( '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', 'cfg_titre_parametrages' => 'Paramétrages', + // F + 'champslibres_titre' => 'squelette champslibres', + 'forum_texte|typo' => 'rien', + //G + '1_groupe' => '1 groupe', + 'n_groupes' => '@nb@ groupes', + + // R + '1_reponse' => '1 réponse', + 'n_reponses' => '@nb@ réponses', + // T 'titre_page_configurer_champslibres' => 'Champs Libres', ); diff --git a/paquet.xml b/paquet.xml index ff70015..1d16134 100644 --- a/paquet.xml +++ b/paquet.xml @@ -21,12 +21,11 @@ - - - - + + +