Browse Source

on avance...

master
chankalan 10 months ago
parent
commit
a7b6a292aa
  1. 13
      lang/spip_fr.php
  2. 2
      librealire_autorisations.php
  3. 3
      paquet.xml
  4. 2
      squelettes/body.html
  5. 72
      squelettes/content/article-transcriptions.html
  6. 58
      squelettes/content/article.html
  7. 7
      squelettes/content/sommaire.html
  8. 16
      squelettes/inclure/resume/article.html
  9. 11
      squelettes/javascript/perso.js
  10. 4
      squelettes/modeles/citation.html
  11. 12
      squelettes/modeles/sommaire.html
  12. 251
      squelettes/scss/styles/_perso.scss
  13. 3
      squelettes/scss/utils/_variables-perso.scss

13
lang/spip_fr.php

@ -0,0 +1,13 @@
<?php
// This is a SPIP language file -- Ceci est un fichier langue de SPIP
if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
$GLOBALS[ $GLOBALS['idx_lang'] ] = array(
//
'info_rechercher' => 'Rechercher dans les transcriptions',
);

2
librealire_autorisations.php

@ -13,7 +13,7 @@ function librealire_autoriser() {
include_spip('inc/cextras_autoriser');
// restreindre le champ 'loisirs' sur les articles qui portent la composition 'cv'
// restreindre le champ fieldset 'transcriptions' sur les articles qui portent la composition 'transcriptions'
restreindre_extras('article', array('transcriptions'), 'transcriptions', 'composition');

3
paquet.xml

@ -1,7 +1,7 @@
<paquet
prefix="librealire"
categorie="squelette"
version="0.2.0"
version="0.3.0"
schema="0.3.2"
etat="dev"
compatibilite="[3.2.7;3.3.*]"
@ -14,6 +14,7 @@
<necessite nom="baz_april" />
<necessite nom="cextras" />
<necessite nom="sommaire" />
<chemin path="squelettes" />
<chemin path="squelettes/scss" />

2
squelettes/body.html

@ -17,7 +17,7 @@
<div class="page_extra">
<INCLURE{fond=extra/#ENV{type-page},env}>
</div>
</div>[(#COMPOSITION|=={transcriptions}|non)
</div>[(#COMPOSITION|=={transcriptions}|ou{#ENV{type-page}|=={mot}}|non)
<aside class="page_aside">
<INCLURE{fond=aside/#ENV{type-page},env} />
</aside><!--.aside-->]

72
squelettes/content/article-transcriptions.html

@ -1,14 +1,14 @@
<BOUCLE_principale(ARTICLES){id_article}>
<article>
<article[(#ID_ARTICLE|<{758}|oui) class="import"]>
<header class="cartouche">
[(#ID_ARTICLE|<{758}|oui)
[(#LOGO_ARTICLE|image_reduire{200,200})]
]
[<p class="#EDIT{surtitre} surtitre">(#SURTITRE)</p>]
<h1><span class="#EDIT{titre} article__titre">#TITRE</span>[
<small class="#EDIT{soustitre} soustitre">(#SOUSTITRE)</small>
<small class="#EDIT{soustitre} article__soustitre">(#SOUSTITRE)</small>
]</h1>
<p class="article__infos">
@ -28,56 +28,60 @@
</B_tags>
</BOUCLE_groupes>
</div>
[(#SOMMAIRE{[#CHAPO (#TEXTE) #PS],1})]
</header>
<div class="main">
[<div class="#EDIT{chapo} article__chapo">(#CHAPO)</div>]
[<div class="#EDIT{chapo} article__chapo">(#CHAPO|image_reduire{#CONST{_CONTENT_WIDTH},0})</div>]
[<div class="#EDIT{texte} article__texte">(#TEXTE|image_reduire{#CONST{_CONTENT_WIDTH},0})</div>]
</div>
[<aside>
(#INCLURE{fond=inclure/documents,id_article})
</aside>]
<footer>
[<p class="#EDIT{hyperlien} article__hyperlien"><:voir_en_ligne:/> : <a href="(#URL_SITE)" class="spip_out">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></p>]
[<div class="ps">
<div class="#EDIT{ps} article__ps">(#PS|image_reduire{#CONST{_CONTENT_WIDTH},0})</div>
</div>]
[(#INCLURE{fond=inclure/documents,id_article})]
[<p class="#EDIT{hyperlien} article__hyperlien"><:voir_en_ligne:/> : <a href="(#URL_SITE)" class="spip_out">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></p>]
[<div class="article__notes">(#NOTES)</div>]
[(#TITRE_T|ou{#SOURCE}|ou{#LIEU}|ou{#DATE_T}|ou{#DUREE}|ou{#LIENS}|ou{#EVENEMENT}|ou{#LICENCE}|ou{#CREDITSVISUELS}|oui)
<div class="article__transcription_origine">
<h2><:librealire:media_d_origine:></h2>
<dl>
[<dt>Titre :</dt>
<dd class="article__titre_t #EDIT{titre_t}">(#TITRE_T|propre)</dd>]
[<dt>Source :</dt>
<dd class="article__source #EDIT{source}">(#SOURCE|propre)</dd>]
[<dt>Lieu :</dt>
<dd class="article__lieu #EDIT{lieu}">(#LIEU|propre)</dd>]
[<dt>Date :</dt>
<dd class="article__date_t #EDIT{date_t}">(#DATE_T|propre)</dd>]
[<dt>Durée :</dt>
<dd class="article__duree #EDIT{duree}">(#DUREE|propre)</dd>]
[<dt>Autres liens :</dt>
<dd class="article__liens #EDIT{liens}">(#LIENS|propre)</dd>]
[<dt>Évènement :</dt>
<dd class="article__evenement #EDIT{evenement}">(#EVENEMENT|propre)</dd>]
[<dt>License :</dt>
<dd class="article__licence">(#LICENCE|=={verbatim}|oui)<a href="http://www.gnu.org/licenses/licenses.html#VerbatimCopying" class="spip_out">Verbatim</a></dd>]
[<dt>License :</dt>
<dd class="article__licence">(#LICENCE|=={autrelicence}|oui)<a href="autrelicence" class="spip_out">Autre licence</a></dd>]
[<dt>Crédits des visuels :</dt>
<dd class="article__creditsvisuels #EDIT{creditsvisuels}">(#CREDITSVISUELS|propre)</dd>]
</dl>]
<h2><:librealire:media_d_origine:></h2>
<dl>
[<dt>Titre :</dt>
<dd class="article__titre_t #EDIT{titre_t}">(#TITRE_T|propre)</dd>]
[<dt>Source :</dt>
<dd class="article__source #EDIT{source}">(#SOURCE|propre)</dd>]
[<dt>Lieu :</dt>
<dd class="article__lieu #EDIT{lieu}">(#LIEU|propre)</dd>]
[<dt>Date :</dt>
<dd class="article__date_t #EDIT{date_t}">(#DATE_T|propre)</dd>]
[<dt>Durée :</dt>
<dd class="article__duree #EDIT{duree}">(#DUREE|propre)</dd>]
[<dt>Autres liens :</dt>
<dd class="article__liens #EDIT{liens}">(#LIENS|propre)</dd>]
[<dt>Évènement :</dt>
<dd class="article__evenement #EDIT{evenement}">(#EVENEMENT|propre)</dd>]
[<dt>License :</dt>
<dd class="article__licence">(#LICENCE|=={verbatim}|oui)<a href="http://www.gnu.org/licenses/licenses.html#VerbatimCopying" class="spip_out">Verbatim</a></dd>]
[<dt>License :</dt>
<dd class="article__licence">(#LICENCE|=={autrelicence}|oui)<a href="autrelicence" class="spip_out">Autre licence</a></dd>]
[<dt>Crédits des visuels :</dt>
<dd class="article__creditsvisuels #EDIT{creditsvisuels}">(#CREDITSVISUELS|propre)</dd>]
</dl>
</div>]
[<div class="avertissement"><strong><:librealire:avertissement:> : </strong>(#CONFIG{librealire/avertissement})</div>]
</footer>

58
squelettes/content/article.html

@ -0,0 +1,58 @@
<BOUCLE_principale(ARTICLES){id_article}>
<article>
<header class="cartouche">
[<p class="#EDIT{surtitre} surtitre">(#SURTITRE)</p>]
<h1><span class="#EDIT{titre} article__titre">#TITRE</span>[
<small class="#EDIT{soustitre} soustitre">(#SOUSTITRE)</small>
]</h1>
<p class="article__infos">
[<span class="article__date">Publié le (#DATE|nom_jour) [(#DATE|affdate)] #SET{heure,#DATE|heures_minutes} [à (#GET{heure}|=={00h00min}|non)#GET{heure}]</span>]
[(#CONFIG{baz_april/afficherauteurs}|=={on}|oui)[<span class="article__auteurs"><:par_auteur:> (#LESAUTEURS)</span>]]
</p>
<div class="postmeta">
#MODELE{article_traductions}
<BOUCLE_groupes(GROUPES_MOTS){par titre}>
<B_tags>
<p class="mots">
<strong>#TITRE : </strong><BOUCLE_tags(MOTS){id_article}{id_groupe}{', '}>
<a href="#URL_MOT">#TITRE</a>
</BOUCLE_tags>
</p>
</B_tags>
</BOUCLE_groupes>
</div>
</header>
<div class="main">
[<div class="#EDIT{chapo} article__chapo">(#CHAPO)</div>]
[<div class="#EDIT{texte} article__texte">(#TEXTE|image_reduire{#CONST{_CONTENT_WIDTH},0})</div>]
</div>
[<aside>
<div class="ps">
<div class="#EDIT{ps} article__ps">(#PS|image_reduire{#CONST{_CONTENT_WIDTH},0})</div>
</div>
</aside>]
<footer>
[(#INCLURE{fond=inclure/documents,id_article})]
[<p class="#EDIT{hyperlien} article__hyperlien"><:voir_en_ligne:/> : <a href="(#URL_SITE)" class="spip_out">[(#NOM_SITE|sinon{[(#URL_SITE|couper{80})]})]</a></p>]
[<div class="article__notes">(#NOTES)</div>]
</footer>
</article>
</BOUCLE_principale>

7
squelettes/content/sommaire.html

@ -5,8 +5,10 @@
[<div class="#EDIT{chapo} chapo surlignable">(#CHAPO|image_reduire{700,*})</div>]
[<div class="#EDIT{texte} texte surlignable">(#TEXTE|image_reduire{700,*})</div>]
</div>
<aside>
[<div class="#EDIT{ps} ps surlignable">(#PS|image_reduire{700,*})</div>]
</aside>
<footer>
[<div class="#EDIT{ps} ps surlignable"><h2><:info_ps:></h2>(#PS|image_reduire{700,*})</div>]
[<div class="notes"><h2><:info_notes:></h2>(#NOTES)</div>]
</footer>
</BOUCLE_accueil>
@ -15,4 +17,5 @@
[<div id="descriptif_site_spip" class="#EDIT{meta-descriptif_site} texte_accueil">(#DESCRIPTIF_SITE_SPIP)</div>]
<//B_accueil>
<INCLURE{fond=inclure/liste/articles-resume,env,ajax,parpage=10,id_rubrique=1} />
<INCLURE{fond=inclure/liste/articles-resume,env,ajax,parpage=10,id_rubrique=1,hero=oui} />

16
squelettes/inclure/resume/article.html

@ -1,16 +1,18 @@
<BOUCLE_articles(ARTICLES) {id_article}>
<article class="article-resume[ article-resume--(#ENV{class})] block-link-parent">
<div class="article-resume__logo">
[(#LOGO_ARTICLE_NORMAL|sinon{#CHEMIN{images/nologo.png}}|image_reduire{#CONST{_CONTENT_WIDTH}|div{2}} )]
</div>
[<div class="article-resume__logo">
(#LOGO_ARTICLE_NORMAL|sinon{#CHEMIN{images/nologo.png}}|image_reduire{#CONST{_CONTENT_WIDTH}|div{4}} )
</div>]
<div class="article-resume__texte">
<h2 class="article-resume__titre"><a href="#URL_ARTICLE" class="block-link[ (#ENV{class_link})]">#TITRE</a></h2>
<h2 class="article-resume__titre">#TITRE</h2>
<p class="article-resume__soustitre">#SOUSTITRE</p>[(#ENV{hero}|=={oui}|oui)[(#ENV{compteur}|=={1}|oui)
<a href="#URL_ARTICLE" class="block-link[ (#ENV{class_link})]"><span class="btn plein"><:librealire:lire:></span></a>]]
<div class="article-resume__infos">
[<span class="article-resume__date">(#DATE|nom_jour|ucfirst) [(#DATE|affdate)]</span>]
<BOUCLE_auteurs(MOTS){type=personne·s}{id_article}{', '}>[<span class="article-auteurs">(#TITRE)</span>]</BOUCLE_auteurs>
</div>
<div class="article-resume__intro">
</div>
</div>[(#ENV{hero}|=={oui}|oui)[(#ENV{compteur}|=={1}|non)
<a href="#URL_ARTICLE" class="block-link[ (#ENV{class_link})]"><span class="btn"><:librealire:lire:></span></a>]][(#ENV{hero}|=={oui}|non)
<a href="#URL_ARTICLE" class="block-link[ (#ENV{class_link})]"><span class="btn"><:librealire:lire:></span></a>]
</div>
</article>
</BOUCLE_articles>

11
squelettes/javascript/perso.js

@ -0,0 +1,11 @@
$(function() {
// un sommaire masque
$('.sommaire_titre').siblings('ul').toggle();
$('.sommaire_titre').on('click', function(){
$(this).siblings('ul').toggle().toggleClass('ouvert');
});
$('.sommaire-back').on('click', function(){
$('.sommaire_titre').siblings('ul:not(.ouvert)').toggle();
});
});

4
squelettes/modeles/citation.html

@ -0,0 +1,4 @@
<div class="modele_citation">
[<div class="citation_texte">(#ENV{texte}|propre)</div>]
<B_image><div class="citation_image"><BOUCLE_image(DOCUMENTS){id_document=#ENV{image}}>[(#FICHIER|image_reduire{150,150})]</BOUCLE_image></div></B_image>
</div>

12
squelettes/modeles/sommaire.html

@ -0,0 +1,12 @@
#SET{liste, '*'}
[(#CONFIG{sommaire_automatique_numerote}|=={on}|oui)
#SET{liste, '#'}
]
<B_somm>
<div class="nav-sommaire nav-sommaire-[(#ENV{sommaire}|count)]">
<span class="plein sommaire_titre"><:sommaire:titre_cadre_sommaire:><i class="fas fa-caret-right"></i></span>
<BOUCLE_somm(POUR){tableau #ENV{sommaire}}>
-[(#GET{liste}|str_pad{#VALEUR{niveau},#GET{liste}})] [#VALEUR{id}<-][#VALEUR{titre}->#VALEUR{href}]</BOUCLE_somm>
</div>
</B_somm>
#FILTRE{propre}

251
squelettes/scss/styles/_perso.scss

@ -9,6 +9,98 @@
}
@mixin bouton($clair:#fff, $sombre:$couleurPrincipale) {
$couleurSaturate : saturate($clair, 45%);
$couleurSaturateLight : lighten($couleurSaturate, 10%);
display: inline-block;
line-height: 1.2;
background-color: $clair;
border: none;
border-radius: 0;
box-shadow: none;
text-align: center;
color: $sombre;
transition: background 0.3s;
cursor: pointer;
font-family:$typo-Merriweather;
padding:0;
&.plein {
border-radius:($spacer/4);
background:$sombre;
color:$clair;
font-weight:700;
padding: ($spacer/2) $spacer;
.fas {
&:before {
color:$clair;
}
}
}
&:before {
content:'...';
display:inline-block;
margin: 0 -1em 0 0;
font-size: 1.2rem;
float: left;
line-height: 1.6;
color: red;
}
&.plein:before {
display:none;
}
&:hover {
background-color: darken($clair,15%);
text-decoration: none;
color: $sombre;
}
&:focus {
background-color: $couleurSaturateLight !important;
text-decoration: none;
color: $sombre;
}
&[disabled=disabled] {
background: desaturate($clair, 45%);
color: darken($sombre, 10%) !important;
}
.fas {
padding-left:em(12px);
float:right;
&:before {
font-size:em(22px);
line-height:1;
font-weight:700;
color: $sombre;
}
}
&:hover .fas:before {
color: $sombre;
}
&:focus .fas:before {
color: $sombre;
}
}
//
// modele bouton
//
.btn {
@include bouton(transparent,$couleurPrincipale);
&.plein {
@include bouton(#fff,$couleurPrincipale);
}
&.right {
float:right;
margin-left:$spacer;
}
&.left {
float:left;
margin-right:$spacer;
}
}
/* blocs */
.page_connex {
@ -48,29 +140,48 @@
padding-top:0;
.formulaire_spip.formulaire_recherche {
display:none;
display:none;// pour ne pas surcharger tout le footer
}
}
// layout
.page_content {
margin-bottom:$spacer*2;
}
// page sommaire
.texte_accueil {
max-width: 70%;
font-size: 1.6rem;
line-height: 1.5;
line-height: 1.6;
margin-bottom:$spacer;
margin-left:$spacer;
font-family:$typo-Merriweather;
font-weight:200;
color:$couleurPrincipale;
@include clearfix();
.main {
max-width: 65%;
font-size: 1.6rem;
float:left;
padding:$spacer $spacer*1.5;
}
aside {
width:35%;
float:right;
}
}
.formulaire_spip.formulaire_recherche {
font-size:1rem;
}
// resume
.article-resume {
display:block;
border-left:solid $couleurConnexplus ($spacer/3);
background-color:$couleurBkgT;
padding:($spacer*3) $spacer $spacer ($spacer*1.5);
padding:($spacer*2.5) $spacer $spacer ($spacer*3.2);
&, a {
color:#0a4756;
}
@ -79,10 +190,17 @@
display:block;
clear:both;
}
.article-resume__titre {
font-size: 2rem;
line-height: 1.6;
}
.article-resume__soustitre {
font-weight:700;
margin:0;
}
.article-resume__logo {
float:right;
margin:-($spacer*2) 0 0 ($spacer * 1.5);
margin:-($spacer*1.5) 0 0 ($spacer * 1.5);
max-width:30%;
width:auto;
}
@ -90,6 +208,9 @@
position:absolute;
top:$spacer;
left:($spacer*2);
@include media($bp-medium-up) {
left:($spacer*4);
}
&:before {
display:none;
}
@ -105,22 +226,55 @@
.page_content {
margin-right:0;
article {
padding:($spacer*2);
padding:($spacer*2.5) ($spacer*2) $spacer;
background-color:$couleurBkgT;
border-radius:0 0 6px 6px;
@include media($bp-medium-up) {
padding:($spacer*2.5) ($spacer*4) $spacer;
}
.avertissement {
background:$couleurBkgAvertissement;
margin-bottom:-$spacer;
margin-top:0;
border-radius:0 0 6px 6px;
}
&.import {
.main {
.strong_to_dl {
@include clearfix;
&:first-of-type:before {
content:'Média d’origine';
display:block;
@extend .h2;
}
dt {
clear:both;
float:left;
margin-right:$spacer/2;
}
dd {
margin:0;
}
}
}
}
}
.liste_articles article {
padding:($spacer*2.5) $spacer $spacer ($spacer*2);
@include media($bp-medium-up) {
padding:$spacer ($spacer*4);
padding:($spacer*2.5) $spacer $spacer ($spacer*4);
}
}
}
}
.article__transcription_origine {
.article__transcription_origine, .avertissement, .strong_to_dl {
/* width:100%; */
margin:$spacer -($spacer*2);
margin:($spacer*2) -($spacer*2) 0;
padding:$spacer ($spacer*2);
background:$couleurBkgTOrigine;
color:$couleurTDetails;
@include media($bp-medium-up) {
margin:$spacer -($spacer*4);
margin:($spacer*2) -($spacer*4) 0;
padding:$spacer ($spacer*4);
}
dt {
@ -143,4 +297,75 @@
}
}
// article
.article__soustitre {
display:block;
font-size:1rem;
}
.nav-sommaire {
border:0;
margin:($spacer*2) 0;
.sommaire_titre {
font-size:0.8rem;
@include bouton(#9dccd1,$couleurPrincipale);
&.plein {
border-radius:0;
}
&:hover, &:hover .fas {
color:darken($couleurPrincipale,10%);
}
}
> ul {
}
}
// page_mot
.page_mot {
.page_content {
margin-right:0;
}
}
/* modeles */
/* citation */
.modele_citation {
@include clearfix();
.citation_texte {
background:$couleurBkgCitation;
border-radius:$spacer/2;
padding:$spacer;
font-size:1.4rem;
color:$couleurPrincipale;
}
.citation_image {
float:right;
position:relative;
margin-top:10px;
padding-left:46px;
&:after {
display:block; content:''; width:0; height:0;
position:absolute; left:0; top:-32px;
border-top: 60px solid $couleurBkgCitation;
border-left: 20px solid transparent;
border-right: 10px solid transparent;
border-bottom: 0;
@include rotate(-50deg);
z-index:0;
}
}
}

3
squelettes/scss/utils/_variables-perso.scss

@ -12,3 +12,6 @@ $couleurConnexplus: #62c0c9;
$couleurBkgT: #fdf7f2;
$couleurBkgTOrigine: #b8d9dd;
$couleurTDetails: #1f6b7c;
$couleurBkgCitation: #e1f7f9;
$couleurBkgAvertissement: #ebf6f7;
Loading…
Cancel
Save