on crée une option "ponctuel" pour les groupes, qui s'affichent lorsqu'il n'y a pas de ville
This commit is contained in:
parent
ec86397359
commit
81d0faa632
7 changed files with 138 additions and 39 deletions
|
@ -748,6 +748,17 @@ body{
|
|||
border-radius: 0.2rem;
|
||||
border: solid 1px grey;
|
||||
}
|
||||
.choix{
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 3rem;
|
||||
label{
|
||||
margin: 0;
|
||||
}
|
||||
}
|
||||
.editer_ponctuel .ligne{
|
||||
display: flex;
|
||||
}
|
||||
}
|
||||
|
||||
/**********************************************************************/
|
||||
|
|
|
@ -12708,6 +12708,23 @@ body {
|
|||
border: solid 1px grey;
|
||||
}
|
||||
|
||||
.formulaire_spip .choix {
|
||||
display: -webkit-box;
|
||||
display: flex;
|
||||
-webkit-box-align: center;
|
||||
align-items: center;
|
||||
width: 3rem;
|
||||
}
|
||||
|
||||
.formulaire_spip .choix label {
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.formulaire_spip .editer_ponctuel .ligne {
|
||||
display: -webkit-box;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
/**********************************************************************/
|
||||
/*************** FORMULAIRE DE SAISIE D'ARTICLE ***********************/
|
||||
/**********************************************************************/
|
||||
|
|
|
@ -28,7 +28,23 @@
|
|||
</BOUCLE_pays>
|
||||
</select>
|
||||
</div>
|
||||
<div class="ville">
|
||||
|
||||
[(#REM) valeurs : oui=on, non=""]
|
||||
<div class="editer_ponctuel">
|
||||
<label>Groupe ponctuel (sans ville régulière)</label>
|
||||
<div class="ligne">
|
||||
<div class="choix">
|
||||
<input type='radio' class="radio" name='ponctuel' value='' id='ponctuel_non'[ (#ENV{ponctuel}|!={on}|?{'checked="checked"'})] />
|
||||
<label for='ponctuel_non'>Non</label>
|
||||
</div>
|
||||
<div class="choix">
|
||||
<input type='radio' class="radio" name='ponctuel' value='on' id='ponctuel_oui'[ (#ENV{ponctuel}|=={on}|?{'checked="checked"'})] />
|
||||
<label for='ponctuel_oui'>Oui</label>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="ville regulier [(#ENV{ponctuel}|=={on}) hide]">
|
||||
<label for="surtitre">Ville</label>
|
||||
<input class="text" type="text" name="surtitre" value="#ENV{surtitre}">
|
||||
</div>
|
||||
|
@ -36,15 +52,15 @@
|
|||
<label for="titre">Nom du groupe</label>
|
||||
<input class="text" type="text" name="titre" value="#ENV{titre}">
|
||||
</div>
|
||||
<div class="soustitre">
|
||||
<div class="soustitre regulier [(#ENV{ponctuel}|=={on}) hide]">
|
||||
<label for="soustitre">Adresse des réunions</label>
|
||||
<input class="text" type="text" name="soustitre" value="#ENV{soustitre}">
|
||||
</div>
|
||||
<div class="dates">
|
||||
<div class="dates regulier [(#ENV{ponctuel}|=={on}) hide]">
|
||||
<label for="descriptif">Dates et horaires</label>
|
||||
<textarea class="text" type="text" name="descriptif">#ENV{descriptif}</textarea>
|
||||
</div>
|
||||
<div class="texte">
|
||||
<div class="editer texte">
|
||||
<label for="texte">Informations complémentaires</label>
|
||||
<textarea class="text" type="text" name="texte">#ENV{texte}</textarea>
|
||||
</div>
|
||||
|
@ -83,7 +99,7 @@
|
|||
]
|
||||
</fieldset>
|
||||
|
||||
<fieldset class="upload_vignette">
|
||||
<fieldset class="upload_vignette regulier [(#ENV{ponctuel}|=={on}) hide]">
|
||||
<legend><i class="fas fa-image"></i> Photos</legend>
|
||||
<label for=""><small>largeur conseillée: entre 1024 et 2048 pixels</small></label>
|
||||
<div class="ajax">
|
||||
|
|
|
@ -42,7 +42,6 @@ function formulaires_editer_groupe_charger_dist($id_article=0, $redirect=''){
|
|||
$res = sql_allfetsel('id_auteur','spip_auteurs_liens',$where);
|
||||
|
||||
$valeurs['T_id_auteurs'] = array_column($res,'id_auteur');
|
||||
|
||||
$valeurs['rubrique_selected'] = sql_getfetsel('id_rubrique','spip_articles','id_article='. $id_article);
|
||||
}
|
||||
else {
|
||||
|
@ -50,28 +49,14 @@ function formulaires_editer_groupe_charger_dist($id_article=0, $redirect=''){
|
|||
$valeurs['id_article'] = -1 * intval(session_get('id_auteur'));
|
||||
}
|
||||
|
||||
if (intval($id_article)) {
|
||||
$from = array(
|
||||
'spip_gis as G',
|
||||
'spip_gis_liens as L',
|
||||
'spip_articles as A'
|
||||
);
|
||||
$where = array(
|
||||
'L.id_objet='.intval($id_article),
|
||||
'L.objet="article"',
|
||||
'L.id_gis=G.id_gis'
|
||||
);
|
||||
$res = sql_fetsel('G.lat, G.lon', $from, $where);
|
||||
if (count($res)) {
|
||||
$valeurs['lat'] = $res['lat'];
|
||||
$valeurs['lon'] = $res['lon'];
|
||||
// Sans ville (surtitre), le groupe est ponctuel
|
||||
if(empty($surtitre)){
|
||||
$valeurs['ponctuel'] = "on";
|
||||
}
|
||||
|
||||
else{
|
||||
$valeurs['ponctuel'] = "";
|
||||
}
|
||||
// recup gis
|
||||
|
||||
$valeurs['_bigup_rechercher_fichiers'] = true;
|
||||
|
||||
return $valeurs;
|
||||
}
|
||||
|
||||
|
@ -90,11 +75,22 @@ function formulaires_editer_groupe_verifier_dist($id_article=0, $redirect=''){
|
|||
}
|
||||
}
|
||||
|
||||
// il faut au minimum titre (nom), surtitre (ville) et id_rubrique (pays) pour créer un article
|
||||
|
||||
if (_request('ponctuel')!="on"){
|
||||
// il faut au minimum titre (nom), surtitre (ville) et id_rubrique (pays) pour créer un article pour les groupes réguliers
|
||||
if (_request('titre') == '' OR _request('surtitre') == '' OR _request('id_rubrique') == ''){
|
||||
$erreurs['message_erreur'] = "Il faut obligatoirement un pays, une ville et un nom pour créer un groupe.";
|
||||
$erreurs['message_erreur'] = "Il faut obligatoirement un pays, une ville et un nom pour créer un groupe régulier.";
|
||||
return $erreurs;
|
||||
}
|
||||
}
|
||||
else{
|
||||
// il faut au minimum titre (nom) et id_rubrique (pays) pour créer un article pour les groupes
|
||||
if (_request('titre') == '' OR _request('id_rubrique') == ''){
|
||||
$erreurs['message_erreur'] = "Il faut obligatoirement un pays et un nom pour créer un groupe.";
|
||||
return $erreurs;
|
||||
}
|
||||
}
|
||||
|
||||
// la rubrique choisie doit être une sous-rubrique du secteur défini en config
|
||||
$id_rubrique = intval(_request('id_rubrique'));
|
||||
$id_secteur = sql_getfetsel('id_secteur', 'spip_rubriques', 'id_rubrique='.$id_rubrique);
|
||||
|
@ -130,18 +126,30 @@ function formulaires_editer_groupe_traiter_dist($id_article=0, $redirect=''){
|
|||
);
|
||||
sql_updateq('spip_documents_liens',array('id_objet' => intval($id_article)), $where);
|
||||
}
|
||||
$surtitre=_request('surtitre');
|
||||
$titre=_request('titre');
|
||||
$soustitre=_request('soustitre');
|
||||
$texte=_request('texte');
|
||||
$descriptif=_request('descriptif');
|
||||
|
||||
if (_request('ponctuel')=="on"){
|
||||
$surtitre="";
|
||||
$soustitre="";
|
||||
$descriptif="";
|
||||
}
|
||||
|
||||
// maj de l'article
|
||||
$set = array(
|
||||
'titre' => _request('titre'),
|
||||
'texte' => _request('texte'),
|
||||
'soustitre' => _request('soustitre'),
|
||||
'titre' => $titre,
|
||||
'texte' => $texte,
|
||||
'soustitre' => $soustitre,
|
||||
// On affiche le plus récent en premier => on garde la date de mise à jour
|
||||
'date' => date("Y-m-d H:i:s"),
|
||||
'descriptif' => $descriptif,
|
||||
'surtitre' => $surtitre
|
||||
// 'champ_1' => _request('champ_1'),
|
||||
// 'champ_2' => _request('champ_2'),
|
||||
'descriptif' => _request('descriptif'),
|
||||
// 'chapo' => _request('chapo'),
|
||||
'surtitre' => _request('surtitre')
|
||||
);
|
||||
sql_updateq('spip_articles',$set,'id_article='.intval($id_article));
|
||||
|
||||
|
|
|
@ -1,11 +1,48 @@
|
|||
[(#REM) on affiche un groupe ponctuel pour les pays n'ayant pas de groupe régulier]
|
||||
<BOUCLE_ponctuel(ARTICLES){id_rubrique=#ENV{id_rubrique}}{surtitre=""}{0,1}>
|
||||
|
||||
<div class="banniere-ville mt-4 mb-4">
|
||||
<BOUCLE_banniere(DOCUMENTS){id_article}{extension==jpg|png|gif}{!par date}{0,1}>
|
||||
[(#FICHIER|image_recadre{1200:300,-,focus}|image_reduire{1200,300})]
|
||||
</BOUCLE_banniere>
|
||||
[(#CHEMIN{img/ville.png}|image_recadre{1200:300,-,focus}|image_reduire{1200,300})]
|
||||
<//B_banniere>
|
||||
<div class="ville-titre">
|
||||
<h2>#INFO_TITRE{rubrique, #ID_RUBRIQUE}</h2>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="bloc-groupe col mt-4 mt-lg-0">
|
||||
[<h3 class="h4 #EDIT{titre}">(#TITRE|sinon{"Groupes ponctuels"})</h3>]
|
||||
[(#AUTORISER{modifier, article, #ID_ARTICLE})
|
||||
<a class="btn" href="#URL_PAGE{editer_groupe,id_article=#ID_ARTICLE }"><i class="fas fa-edit"></i> Mettre à jour le groupe</a>
|
||||
]
|
||||
<div class="row">
|
||||
<div class="col-md-8">
|
||||
<div class="texte #EDIT{texte}">#TEXTE</div>
|
||||
</div>
|
||||
|
||||
<div class="col-md-4">
|
||||
<strong>Responsables</strong>
|
||||
<BOUCLE_auteurs(AUTEURS){id_article=#ID_ARTICLE}>
|
||||
<div>#NOM
|
||||
[(#EMAIL|ou{#TELEPHONE}|oui)
|
||||
<a href="[(#URL_PAGE{contacter_auteur}|parametre_url{id_auteur,#ID_AUTEUR})]" class="mediabox"> (contact)</a>
|
||||
]
|
||||
</div>
|
||||
</BOUCLE_auteurs>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</BOUCLE_ponctuel>
|
||||
|
||||
<div class="row liste-articles-encadres">
|
||||
<BOUCLE_villes(ARTICLES){id_rubrique=#ENV{id_rubrique}}{fusion surtitre}>
|
||||
[(#REM) On affiche ensuite les groupes réguliers, par ville]
|
||||
<BOUCLE_villes(ARTICLES){id_rubrique=#ENV{id_rubrique}}{fusion surtitre}{surtitre!=""}>
|
||||
<div class="col-sm-6 col-lg-3 mt-4 mt-lg-0">
|
||||
|
||||
<INCLURE{fond=inclure/bloc_groupe,env,id_article=#ID_ARTICLE}>
|
||||
|
||||
</div>
|
||||
</BOUCLE_villes>
|
||||
<div class="col">Il n'y a pas encore de groupe dans ce pays.</div>
|
||||
<//B_villes>
|
||||
</div>
|
||||
|
|
|
@ -35,6 +35,16 @@ jQuery(function($) {
|
|||
});
|
||||
}
|
||||
|
||||
// Afficher / masquer des champs dans le formulaire "Groupes" selon le champ "ponctuel"
|
||||
$('input[type=radio][name=ponctuel]').change(function() {
|
||||
if (this.value == 'on') {
|
||||
$('.regulier').hide();
|
||||
}
|
||||
else if (this.value == '') {
|
||||
$('.regulier').show();
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
// les modifs déclenchées au scroll:
|
||||
// afficher la flêche gotop
|
||||
|
|
2
js/mon_site.min.js
vendored
2
js/mon_site.min.js
vendored
|
@ -1,2 +1,2 @@
|
|||
"use strict";jQuery(function(t){t(".parent_prev_next").on("click","svg.cursor",function(){var e=t(this).data("id_article"),n=t(this).data("bloc_recharger");ajaxReload(n,{args:{id_article:e}})}),t("a.page-scroll").bind("click",function(e){t(this);t("html, body").animate({scrollTop:0},"slow"),e.preventDefault()});t(window).on("scroll",function(){0<t(window).scrollTop()?t("#menu-principal").addClass("reduit"):t("#menu-principal").removeClass("reduit")}),window.addEventListener("resize",function(){document.getElementById("result"),"matchMedia"in window&&(window.matchMedia("(min-width:768px)").matches?(t("#header").removeClass("navbar-fixed-top"),t("button.burgermenu, #barnav ul.js-sous-menu").removeClass("fixed-top")):(t("#header").addClass("navbar-fixed-top"),t("button.burgermenu, #barnav ul.js-sous-menu").addClass("fixed-top")))},!1)}),jQuery(function(t){var n,a;t(".js-sous-menu ul").addClass("js-hidden"),t(".js-sous-menu").on("click","a",function(e){e.stopPropagation();var n=t(this).next();if(n.length)return t(n).toggleClass("js-hidden"),!1}),"querySelector"in document&&"addEventListener"in window&&(window.document.documentElement.className+=" js-enabled",n=document.querySelector(".nav-button"),a=document.querySelector("#barnav"),n&&n.addEventListener("click",function(e){n.classList.toggle("is-active"),a.classList.toggle("is-opened"),e.preventDefault()},!1))});
|
||||
"use strict";jQuery(function(t){t(".parent_prev_next").on("click","svg.cursor",function(){var e=t(this).data("id_article"),n=t(this).data("bloc_recharger");ajaxReload(n,{args:{id_article:e}})}),t("a.page-scroll").bind("click",function(e){t(this);t("html, body").animate({scrollTop:0},"slow"),e.preventDefault()}),t("input[type=radio][name=ponctuel]").change(function(){"on"==this.value?t(".regulier").hide():""==this.value&&t(".regulier").show()});t(window).on("scroll",function(){0<t(window).scrollTop()?t("#menu-principal").addClass("reduit"):t("#menu-principal").removeClass("reduit")}),window.addEventListener("resize",function(){document.getElementById("result"),"matchMedia"in window&&(window.matchMedia("(min-width:768px)").matches?(t("#header").removeClass("navbar-fixed-top"),t("button.burgermenu, #barnav ul.js-sous-menu").removeClass("fixed-top")):(t("#header").addClass("navbar-fixed-top"),t("button.burgermenu, #barnav ul.js-sous-menu").addClass("fixed-top")))},!1)}),jQuery(function(t){var n,a;t(".js-sous-menu ul").addClass("js-hidden"),t(".js-sous-menu").on("click","a",function(e){e.stopPropagation();var n=t(this).next();if(n.length)return t(n).toggleClass("js-hidden"),!1}),"querySelector"in document&&"addEventListener"in window&&(window.document.documentElement.className+=" js-enabled",n=document.querySelector(".nav-button"),a=document.querySelector("#barnav"),n&&n.addEventListener("click",function(e){n.classList.toggle("is-active"),a.classList.toggle("is-opened"),e.preventDefault()},!1))});
|
||||
//# sourceMappingURL=mon_site.min.js.map
|
||||
|
|
Loading…
Add table
Reference in a new issue