Merge branch 'selection'

This commit is contained in:
chankalan 2023-02-02 14:16:41 +01:00
commit a6400b3b2d
8 changed files with 232 additions and 29 deletions

View File

@ -1,21 +1,38 @@
<div class="formulaire_spip formulaire_configurer formulaire_#FORM"> <div class="formulaire_spip formulaire_configurer formulaire_#FORM">
<h3 class="titrem"><:libreavous:titre_page_configurer_libreavous:/></h3>
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>] [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>] [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
<form method="post" action="#ENV{action}"> <form method="post" action="#ENV{action}">
<div> <div>
#ACTION_FORMULAIRE{#ENV{action}} #ACTION_FORMULAIRE{#ENV{action}}
<ul class="editer-groupe"> <fieldset>
<h3 class="titrem"><:libreavous:page_accueil:/></h3>
<div class="editer-groupe">
[(#SAISIE{textarea,licence, [(#SAISIE{selecteur_article, selectionaccueil,
label=<:libreavous:licence_label:>, label=<:libreavous:selectionaccueil:>,
explication=<:libreavous:licence_explications:>, multiple=oui,
inserer_barre=edition})] explication=<:libreavous:selectionaccueil_explications:>})]
</ul> [(#SAISIE{input,selectionaccueiltitre,
label=<:libreavous:selectionaccueiltitre_label:>,
explication=<:libreavous:selectionaccueiltitre_explications:>,
placeholder='Sélection'})]
</div>
</fieldset>
<fieldset>
<h3 class="titrem"><:libreavous:les_emissions:/></h3>
<div class="editer-groupe">
[(#SAISIE{textarea,licence,
label=<:libreavous:licence_label:>,
explication=<:libreavous:licence_explications:>,
inserer_barre=edition})]
</div>
</fieldset>
</div>
<p class="boutons"><span class="image_loading">&nbsp;</span><input type="submit" class="submit" value="<:bouton_enregistrer:/>" /></p> <p class="boutons"><span class="image_loading">&nbsp;</span><input type="submit" class="submit" value="<:bouton_enregistrer:/>" /></p>
</div> </div>
</form> </form>

View File

@ -27,6 +27,7 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'derniere_emission' => 'Dernière émission', 'derniere_emission' => 'Dernière émission',
'toutes_les_emissions' => 'Toutes les émissions', 'toutes_les_emissions' => 'Toutes les émissions',
'emissions_precedentes' => 'Émissions précédentes', 'emissions_precedentes' => 'Émissions précédentes',
'emissions_diffusees' => 'Émissions diffusées',
'dernieres_chroniques' => 'Dernières chroniques', 'dernieres_chroniques' => 'Dernières chroniques',
'au_programme' => 'Au programme', 'au_programme' => 'Au programme',
@ -39,6 +40,19 @@ $GLOBALS[$GLOBALS['idx_lang']] = array(
'musiques' => 'Musiques', 'musiques' => 'Musiques',
'licence' => 'Licence', 'licence' => 'Licence',
// page configuration
'titre_page_configurer' => 'Configuration particulière pour <strong>Libre à vous !</strong>',
'options_libreavous' => 'Options <strong>Libre à vous !</strong>',
'page_accueil' => 'Page Accueil',
'les_emissions' => 'Les émissions',
'licence_label' => 'Licence',
'licence_explications' => 'Le texte est présent sur chaque page démission, tout en bas.',
'selectionaccueil' => 'Sélection démissions en page accueil',
'selectionaccueil_explications' => 'Sous le bloc de la prochaine émission, la sélection met en avant quelques émissions pour orienter les premières visites...',
'selection_d_emissions' => 'Sélection',
'selectionaccueiltitre_label' => 'Le titre de cette sélection.',
'selectionaccueiltitre_explications' => 'Par défaut <strong>Sélection</strong>',
'diffusee_le' => 'Diffusée le', 'diffusee_le' => 'Diffusée le',
'diffusee_en_direct_le' => 'Diffusée en direct ', 'diffusee_en_direct_le' => 'Diffusée en direct ',
'toutes_les_emissions' => 'Toutes les émissions', 'toutes_les_emissions' => 'Toutes les émissions',

View File

@ -1,7 +1,7 @@
<paquet <paquet
prefix="libreavous" prefix="libreavous"
categorie="squelette" categorie="squelette"
version="1.3.4" version="1.3.6"
schema="0.1.11" schema="0.1.11"
etat="stable" etat="stable"
compatibilite="[3.2.8;4.1.*]" compatibilite="[3.2.8;4.1.*]"
@ -30,6 +30,6 @@
<pipeline nom="objet_compte_enfants" inclure="libreavous_pipelines.php" /> <pipeline nom="objet_compte_enfants" inclure="libreavous_pipelines.php" />
<pipeline nom="affiche_milieu" inclure="libreavous_pipelines.php" /> <pipeline nom="affiche_milieu" inclure="libreavous_pipelines.php" />
<!-- <menu nom="configurer_librealire" titre="librealire:options_lal" parent="menu_squelette" icone="images/baz_april-16.png" /> --> <menu nom="configurer_libreavous" titre="libreavous:options_libreavous" parent="menu_squelette" icone="images/baz_april-16.png" />
</paquet> </paquet>

View File

@ -73,6 +73,75 @@ ensuite inclusion en statique pour la gestion du cache indépendante - à vérif
</div> </div>
] ]
<B_selection>
<div class="liste articles emissions emissions_selectionaccueil">
<h2>[(#CONFIG{libreavous/selectionaccueiltitre}|sinon{<:libreavous:selection_d_emissions:>}) ]<span class="controlcarousel"><span class="avant disabled"></span><span class="ensuite"></span></span></h2>
<div class="owl-theme owl-carousel [ (#TOTAL_BOUCLE|>={3}|oui)owlselectionaccueil]">
<BOUCLE_selection(ARTICLES){id_article IN #CONFIG{libreavous/selectionaccueil}|picker_selected{article}}>
<div data-item="#COMPTEUR_BOUCLE"><INCLURE{fond=inclure/resume/emission,id_article} /></div>
</BOUCLE_selection>
</div>
[(#TOTAL_BOUCLE|>={3}|oui)
<script>
jQuery(function($){
var owl = $('.owl-carousel');
owl.owlCarousel({
loop:false,
margin:30,
items: 3,
slideBy: 3,
dots: false,
nav: false,
onTranslated: callback,
responsive : {
// breakpoint from 0 up
0 : {
items: 1,
},
// breakpoint from 480 up
560 : {
items: 2,
},
// breakpoint from 768 up
768 : {
items: 3,
}
}
});
// Go to the next item
$('.ensuite').click(function() {
owl.trigger('next.owl.carousel');
})
// Go to the previous item
$('.avant').click(function() {
owl.trigger('prev.owl.carousel');
// owl.trigger('prev.owl.carousel', [100]);
})
function callback(event) {
var totalItems = $('.owl-item').length;
var firstitemactive = $('.owl-item.active').first().find('div').attr('data-item');
var lastitemactive = $('.owl-item.active').last().find('div').attr('data-item');
if (lastitemactive == totalItems) {
$('.ensuite').addClass('disabled');
}
if (lastitemactive < totalItems) {
$('.ensuite').removeClass('disabled');
}
if (firstitemactive == 1) {
$('.avant').addClass('disabled');
}
if (firstitemactive > 1) {
$('.avant').removeClass('disabled');
}
}
});
</script>
]
</div>
</B_selection>
<INCLURE{fond=inclure/liste/emissions-precedentes,ajax,env,nb=6,prochaine=#GET{prochaine}} /> <INCLURE{fond=inclure/liste/emissions-precedentes,ajax,env,nb=6,prochaine=#GET{prochaine}} />
[(#MODELE{bouton,lienobjet=rubrique,lienidobjet=1,class=center taille130,texte=Toutes les émissions})] [(#MODELE{bouton,lienobjet=rubrique,lienidobjet=1,class=center taille130,texte=Toutes les émissions})]

View File

@ -1,6 +1,6 @@
#CACHE{0} #CACHE{0}
<BOUCLE_emissions(RUBRIQUES){composition=emissions}><B_e><div class="liste articles emissions emissions_precedentes">#ANCRE_PAGINATION <BOUCLE_emissions(RUBRIQUES){composition=emissions}><B_e><div class="liste articles emissions emissions_precedentes">#ANCRE_PAGINATION
<h2><:libreavous:emissions_precedentes:></h2> <h2><:libreavous:emissions_diffusees:></h2>
<ul> <ul>
<BOUCLE_e(ARTICLES){id_rubrique}{id_article!=#ENV{prochaine}}{!par date}{date < #ENV{date}}{1,#ENV{nb,10000}}{pagination #ENV{parpage,10}}> <BOUCLE_e(ARTICLES){id_rubrique}{id_article!=#ENV{prochaine}}{!par date}{date < #ENV{date}}{1,#ENV{nb,10000}}{pagination #ENV{parpage,10}}>
<li><INCLURE{fond=inclure/resume/emission,id_article} /></li> <li><INCLURE{fond=inclure/resume/emission,id_article} /></li>

View File

@ -1,6 +1,6 @@
<BOUCLE_chronique(CHAPITRES){id_chapitre}> <BOUCLE_chronique(CHAPITRES){id_chapitre}>
<BOUCLE_article(ARTICLES){id_article}> <BOUCLE_article(ARTICLES){id_article}>
<article class="emission-resume article-resume"> <article class="emission-resume article-resume" id="chronique#_chronique:ID_CHAPITRE">
<div class="texte_content"> <div class="texte_content">
<div class="cartouche"> <div class="cartouche">
@ -11,8 +11,9 @@
<a href="#URL_ARTICLE" class="btn taille80 blanc"><:libreavous:page_de_l_emission:></a> <a href="#URL_ARTICLE" class="btn taille80 blanc"><:libreavous:page_de_l_emission:></a>
</p> </p>
<h1 class="#EDIT{titre} h2">[(#_chronique:TITRE)]</h1> [(#SESSION{id_auteur}|oui)[<small style="float: right;"><a href="(#URL_ECRIRE{chapitre}|parametre_url{id_chapitre,#ID_CHAPITRE})">modifier</a></small>]]
<BOUCLE_postmeta(ARTICLES){id_article}> <h1 class="h2">[(#_chronique:TITRE)[ <a href="(#SELF|ancre_url{chronique#_chronique:ID_CHAPITRE})]"><i class="fas fa-link"></i></a>]</h1>
<div class="postmeta"> <div class="postmeta">
#MODELE{article_traductions} #MODELE{article_traductions}
<BOUCLE_groupes(GROUPES_MOTS){par titre}> <BOUCLE_groupes(GROUPES_MOTS){par titre}>
@ -25,7 +26,7 @@
</B_tags> </B_tags>
</BOUCLE_groupes> </BOUCLE_groupes>
</div> </div>
</BOUCLE_postmeta>
</div> </div>
[<div class="references_sujet #EDIT{references_sujet}"> [<div class="references_sujet #EDIT{references_sujet}">
(#REFERENCES_SUJET|propre) (#REFERENCES_SUJET|propre)

View File

@ -264,7 +264,8 @@ html .formulaire_spip input[type="text"] {
.texte_accueil { .texte_accueil {
.page_content > article&:not(.annonce) { .page_content > article&:not(.annonce) {
margin-bottom:0; margin-bottom:0;
padding-right:2rem; margin-top: 4rem;
padding-right:2rem;
} }
background-color: white; background-color: white;
.main { .main {
@ -881,6 +882,13 @@ a:hover .fab, a:hover .fas {
small { small {
display: inline-block; display: inline-block;
} }
a:hover .fa-link {
opacity: 1;
}
}
.fa-link {
font-size: 0.7em;
opacity: 0.2;
} }
} }
@ -974,6 +982,10 @@ a:hover .fab, a:hover .fas {
} }
> h2 { > h2 {
margin-bottom: 0.6rem; margin-bottom: 0.6rem;
@media (max-width:460px) {
margin-left: -2rem;
margin-right: -2rem;
}
} }
> ul { > ul {
list-style: none; list-style: none;
@ -1013,6 +1025,96 @@ a:hover .fab, a:hover .fas {
padding: 1rem; padding: 1rem;
width: auto; width: auto;
} }
&.emissions_selectionaccueil {
position: relative;
.controlcarousel {
display: inline-block;
}
.avant {
@include triangle(left, white, 0.4em);
}
.ensuite {
@include triangle(right, white, 0.4em);
}
.avant, .ensuite {
display: inline-block;
margin: 0 0.2em;
cursor: pointer;
&.disabled {
opacity: 0.5;
cursor: default;
}
}
.owl-carousel {
margin: 0 -4rem;
width: auto;
@media (max-width:768px) {
margin: 0 -2rem;
}
article {
padding: 0 1rem;
h1 small, .texte_aside, .podcast, .sujets {
display: none;
opacity: 0;
}
&:hover {
.sujets, .btn.blanc {
/* display: block; */
/* opacity: 1; */
/*
position: absolute;
top: 100%;
background: white;*/
}
}
.article__infos {
margin: 0 0 1rem -1rem;
position: static;
.btn.blanc {
position: absolute;
bottom: 1rem;
right: 0;
}
}
.texte_content {
position: relative;
min-height: 320px;
}
}
.owl-nav {
font-size: 6rem;
button.owl-prev, button.owl-next {
color: white;
position: absolute;
top: -2rem;
right: -4rem;
line-height: 1;
background: none !important;
@media(max-width:768px) {
right: -2.5rem;
}
span {
display: block;
}
}
button.owl-prev {
left: -4rem;
@media(max-width:768px) {
left: -2.5rem;
}
}
}
}
}
.emission-resume.article-resume h1 {
margin-top: 0.8em;
margin-bottom: 1.5em;
small {
display: block;
}
}
} }
.liste.emissions.chroniques { .liste.emissions.chroniques {
> ul > li { > ul > li {
@ -1025,7 +1127,7 @@ a:hover .fab, a:hover .fas {
} }
.emission_heroine.emission-resume.article-resume { .emission_heroine.emission-resume.article-resume {
margin-bottom:4rem; /* margin-bottom:4rem; */
padding-bottom: 2rem; padding-bottom: 2rem;
.article__infos { .article__infos {
margin: 0 0 0 -4rem; margin: 0 0 0 -4rem;