Commit 6c36f219 authored by JM Oupah's avatar JM Oupah

V0.1.0 : ajouts de différents modèles à JWz

mais pourquoi le js blocs_depliables n'est pas chargé bordel ?
parent ac0fab6e
[(#EVAL{_ZCM_BLOCS_DEPLIABLES}|=={1}|oui)
/* *** modele deplier *** */
.blocdepliable {clear:both;margin-bottom:1.5em;}
.blocdepliable div {margin-bottom:0.5em;}
......@@ -10,7 +9,5 @@
.deplier-titre:hover span:before, .deplier-titre.deplie span:before, .deplier-titre:hover span:after {border-color:#000;}
.deplier-titre.deplie span:after {transform:rotate(0);}
.deplier-texte {overflow:hidden;margin:0 1.2em 2.5em 1.2em;padding:0.5em;background-color:#fcfcfc;border:1px solid #ccc;border-radius:0.2857rem;}
.deplier-texte p:last-child {margin-bottom:0;}]
.deplier-texte p:last-child {margin-bottom:0;}
/* *** modele vignette rwd *** */
.modele_vignette_rwd {max-width:100%;}
@media screen and (min-width:#EVAL{_ZCM_FOND_PERDU_LARGEUR,1000}){body{overflow-x:hidden}}
@media screen and (max-width:#EVAL{_ZCM_FOND_PERDU_LARGEUR,1000}) {.fond-perdu::before {content:none;display:none;}}
.fond-perdu {position:relative;}
.fond-perdu::before {position:absolute;z-index:-10;margin-left:-100%;margin-right:-100%;bottom:0;left:0;right:0;height:100%;content: " ";background:#000;}
\ No newline at end of file
......@@ -20,10 +20,6 @@ ul.menu-items li.item, ul.breadcrumb-items li.item {display:inline-block;}
.page_login main {margin:auto;max-width:25em;}
.page_login .formulaire_menu_lang {margin-bottom:1rem;}
/* *** FONDS PERDUS *** */
.fond-perdu {position:relative;}
.fond-perdu::before {position:absolute;z-index:-10;margin-left:-100%;margin-right:-100%;bottom:0;left:0;right:0;height:100%;content: " ";background:#000;}
/* *** LES FORMULAIRES *** */
.formulaire_spip legend {font-size:1.2em;}
.formulaire_recherche input.text {width: 170px;}
......@@ -34,8 +30,12 @@ ul.menu-items li.item {padding:0.2em;}
#nav ul.menu-items li.item {float:left;}
/* *** LE PIED DE PAGE *** */
#footer {text-align:center;}
#footer a.logo-site {display:block;max-width:150px;margin:auto;}
#footer {text-align:center;font-size:0.85em;color:#000;}
#footer a.logo-site {display:block;margin:0 auto 1em auto;max-width:150px;}
#footer nav a {text-decoration:none;color:#000;}
/* *** LES IMAGES *** */
.diaporama figure {margin:0;}
/* *** DIVERS *** */
picture {vertical-align:top;}
......@@ -53,6 +53,9 @@ body a.spip-admin-boutons:hover {background:#fff;color:#000;border-color:#999;}
.invisible {position:absolute;left:-999em;height:1%;}
/* *** modele vignette rwd *** */
.modele_vignette_rwd {max-width:100%;}
/* les formulaires */
#formulaire_contact {margin:auto;max-width:500px;}
#formulaire_contact ul {margin:0;list-style:none;}
......
[(#REM)
Exemple d'insertion :
[(#MODELE{dates-spectacle,id_article,affichage_long=oui,sep=-,microdatas=oui})]
Microdatas (microdatas=ouiitemscope)
le modèle doit être inclu dans un contenant ayant les paramètres suivants :
itemscope itemtype="http://schema.org/Event"
][(#SET{sep,#ENV{sep}})
][(#REM)
On rentre tous les évènements par date dans un tableau
][(#SET{dates_debuts,#ARRAY})][(#SET{dates_fins,#ARRAY})
]<BOUCLE_evenements(EVENEMENTS){id_article?}{id_evenement?}{par date_debut}>#SET{nb_ev,#TOTAL_BOUCLE}#SET{dates_debuts, #GET{dates_debuts}|push{#DATE_DEBUT}}#SET{dates_fins, #GET{dates_fins}|push{#DATE_FIN}}</BOUCLE_evenements>[
(#REM) Avec 3 boucles DATA, on sort :
- la date de debut du 1er evenement
- la date de fin du 1er evenement
- la date de debut du dernier evenement
]<BOUCLE_date_debut_premier(DATA){source tableau,#GET{dates_debuts}}{0,1}{par cle}>#SET{date_debut_premier,#VALEUR}</BOUCLE_date_debut_premier>
<BOUCLE_date_fin_premier(DATA){source tableau,#GET{dates_fins}}{0,1}{par cle}>#SET{date_fin_premier,#VALEUR}</BOUCLE_date_fin_premier>
<BOUCLE_date_debut_dernier(DATA){source tableau,#GET{dates_debuts}}{0,1}{!par cle}>#SET{date_debut_dernier,#VALEUR}</BOUCLE_date_debut_dernier>
[(#ENV{microdatas}|!={non}|oui)<meta itemprop="startDate" content="[(#GET{date_debut_premier}|affdate{Y-m-d})]T[(#GET{date_debut_premier}|affdate{H:i:sO})]" />
<meta itemprop="endDate" content="[(#GET{date_debut_dernier}|affdate{Y-m-d})]T[(#GET{date_debut_dernier}|affdate{H:i:sO})]" />]
<span>[(#GET{nb_ev}|=={1}|?{
[(#GET{date_debut_premier}|affdate{j/m/Y}|=={#GET{date_fin_premier}|affdate{j/m/Y}}|?{
[(#REM) cas 1 > 1 eve meme jour
][(#ENV{affichage_long}|=={oui}|?{[(#GET{date_debut_premier}|nom_jour)] [(#GET{date_debut_premier}|affdate)],[(#GET{date_debut_premier}|affdate{j/m/Y})]})]
,
[(#REM) cas 2 > 1 eve sur pls jours
][(#ENV{affichage_long}|=={oui}|?{
[(#GET{date_debut_premier}|nom_jour)] [(#GET{date_debut_premier}|affdate{j})] [(#GET{date_debut_premier}|nom_mois)] [(#GET{sep,>})] [(#GET{date_fin_premier}|nom_jour)] [(#GET{date_fin_premier}|affdate)]
,
[(#GET{date_debut_premier}|affdate{j/m})] [(#GET{sep,>})] [(#GET{date_fin_premier}|affdate{j/m/Y})]
})]
})]
,
[(#GET{date_debut_premier}|affdate{j/m/Y}|=={#GET{date_debut_dernier}|affdate{j/m/Y}}|?{
[(#REM) cas 3 > pls ev meme jours
][(#ENV{affichage_long}|=={oui}|?{
[(#GET{date_debut_premier}|nom_jour)] [(#GET{date_debut_premier}|affdate)]
,
[(#GET{date_debut_premier}|affdate{j/m/Y})]
})]
,
[(#REM) cas 4 > pls ev sur pls jours
][(#ENV{affichage_long}|=={oui}|?{
[(#GET{date_debut_premier}|nom_jour)] [(#GET{date_debut_premier}|affdate{j})] [(#GET{date_debut_premier}|nom_mois)] [(#GET{sep,>})] [(#GET{date_debut_dernier}|nom_jour)] [(#GET{date_debut_dernier}|affdate)]
,
[(#GET{date_debut_premier}|affdate{j/m})] [(#GET{sep,>})] [(#GET{date_debut_dernier}|affdate{j/m/Y})]
})]
})]
})]</span>
\ No newline at end of file
[(#SET{balise,#ENV{balise,#EVAL{_ZCM_BLOCS_DEPLIABLES_BALISE}}})]
[(#ENV{class}|=={debut}|oui)
<div class="blocdepliable modelajwz">
<div>
<[(#GET{balise}) ] class="deplier-titre"><span>&nbsp;</span>#ENV{titre, Plus d'infos...}</#GET{balise}>
[<p>(#ENV{soustitre})</p>]
</div>
<div class="deplier-texte">]
[(#ENV{class}|=={fin}|oui)
</div>
</div>]
<BOUCLE_document (DOCUMENTS) {id_document=#ENV{id_imgnewslt}} {mode?} {tout}>
[(#REM)
Modele pour <img>
Si on est en mode "image" ou "vignette", ou appele avec embed=oui,
on affiche l'image complete ; sinon le logo
Si un lien est passe #ENV{lien} on ajoute le a href
ou on truque le #URL_DOCUMENT
Si une code de langue est passe #ENV{langue} ex: <img12|langue=en>
on ajoute l'attribut lang la balise img et eventuellement sur la balise a
Dans le cas mode "image ou vignette", le contenu de l'attribut
alt et title se construit selon le schema suivant :
- prend la valeur de alt passe en environnement par le biais
d'un parametre sur la balise ex: <img12|alt=xxx>
- sinon on prend le titre
- sinon si #ENV{lien} est passe on prend #ENV{lien} ou Document si lien vers #URL_DOCUMENT
- sinon alt vide
Dans le cas mode "document", le contenu de l'attribut
alt et title se construit selon le même schema a ceci pres
qu'on ajoute #TYPE_DOCUMENT - #TAILLE
sauf si #ENV{lien} est passe
]
[(#SET{
image,
#ENV{mode_force,#MODE}|match{'image|vignette'}
|sinon{#ENV{embed}}
|oui
})][
(#REM) image complete ?
][(#GET{image})
<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'[
style='float:(#ENV{align}|match{left|right});']>
[<a href="(#ENV{lien})"[ class="(#ENV{lien_class})"]>]<img src='#URL_DOCUMENT'[ width="(#LARGEUR)"][ height="(#HAUTEUR)"] alt="[(#TITRE|texte_backend)]"[ title="(#TITRE|texte_backend)"] style='max-width:100%;height:auto;' />[(#ENV{lien}|?{</a>})]</span>
][
(#REM) sinon logo document + lien + alt + title etc
][(#GET{image}|non)
[(#SET{fichier,[(#LOGO_DOCUMENT|extraire_attribut{src})]})]
[(#SET{width,[(#LOGO_DOCUMENT|extraire_attribut{width})]})]
[(#SET{height,[(#LOGO_DOCUMENT|extraire_attribut{height})]})]
<span class='spip_document_#ID_DOCUMENT spip_documents[ spip_documents_(#ENV{align})][ (#ENV{class})] spip_lien_ok'
style='[float:(#ENV{align}|match{left|right});][ width:(#GET{width})px;]'><a href="[(#ENV{lien}|sinon{#URL_DOCUMENT})]"[
(#ENV{lien}|?{'',type="#MIME_TYPE"})][ title="(#TITRE|texte_backend)"]><img src='#GET{fichier}' width='#GET{width}' height='#GET{height}' alt='[(#TITRE|strlen|?{#TITRE {#TYPE_DOCUMENT},#TYPE_DOCUMENT}|attribut_html)]' style='max-width:100%;height:auto;' /></a></span>
]</BOUCLE_document>
[(#REM) on récupère la largeur passée en variable
][(#SET{largeur,[(#ENV{largeur})%]})]
[(#ENV{class}|=={ouvre}|oui)<table style="width:100%;[background-color:#(#ENV{couleur_fond});][color:#(#ENV{couleur_texte});]" cellpadding="10" cellspacing="0" class="spip trousseajwz">
<tr>
<td style="width:[(#GET{largeur,50%})];vertical-align:top;">
]
[(#ENV{class}|=={milieu}|oui)
</td>
<td style="vertical-align:top;">
]
[(#ENV{class}|=={ferme}|oui)
</td>
</tr>
</table>]
\ No newline at end of file
[(#REM)
Modèle logo_article joyeusement pompé du squelette chez nous, merci tetue, et amélioré
Si on définit une taille, c'est qu'on veut réduire la vignette à une certainne taille max (hauteur ou largeur).
Sinon, c'est qu'on veut la recadrer + réduire pour homogénéiser les apparences.
Pour l'inclure : [(#MODELE{vignette_article})]
Les paramètres :
- id_article (obligatoire)
- largeur_vignette (par défaut : *)
- hauteur_vignette (par défaut : *)
- classe_vignette (par défaut : modele_vignette)
- lien_vignette (par défaut : non)
- couleur_vignette (par défaut : 000000) (fond lors de recadrage)
Syntaxe :
[(#MODELE{vignette_article_rwd}{id_rubrique}{id_article=#ID_ARTICLE}{largeur_vignette=XXX}{hauteur_vignette=XXX}{lien_vignette=oui}{classe_vignette=XXX}{couleur_vignette=ffffff})]
][
(#SET{largeur_vignette, #ENV{largeur_vignette,'*'}})][
(#SET{hauteur_vignette, #ENV{hauteur_vignette,'*'}})][
(#SET{classe_vignette, #ENV{classe_vignette}})][
(#SET{couleur_vignette, #ENV{couleur_vignette,'000000'}})][
(#SET{alt_vignette, #ENV{alt_vignette,''}})
]<BOUCLE_doc(DOCUMENTS){id_article}{extension IN jpg,gif,png}{par date}{0,1}{si #LOGO_ARTICLE|non}>#SET{fichier,#FICHIER}</BOUCLE_doc>
<div class="modele_vignette_rwd[ (#GET{classe_vignette})]" style="width:#GET{largeur_vignette}px;">
[[(#ENV{lien_vignette}|=={oui}|oui) <a href="#URL_ARTICLE">]
(#LOGO_ARTICLE|sinon{[(#GET{fichier})]}
|sinon{[(#LOGO_RUBRIQUE)]}
|sinon{[(#LOGO_SITE_SPIP)]}
|image_recadre{[(#GET{largeur_vignette}|mult{2})]:[(#GET{hauteur_vignette}|mult{2})], -, focus}
|image_passe_partout{#GET{largeur_vignette}|mult{2},#GET{hauteur_vignette}|mult{2},center,[(#GET{couleur_vignette})]}
|image_responsive{#GET{largeur_vignette}}
|inserer_attribut{alt,#GET{alt_vignette}}
|liens_absolus)
[(#ENV{lien_vignette}|=={oui}|?{'</a>',''})]]</div>
<paquet
prefix="zcm"
categorie="squelette"
version="0.0.4"
version="0.1.0"
etat="dev"
compatibilite="[3.2.0;3.2.*]"
logo="prive/themes/spip/images/zcm-32.png"
......
......@@ -5,4 +5,6 @@ if (!defined('_ECRIRE_INC_VERSION')) {return;}
// H2 par défaut pour les intertitres
$GLOBALS['debut_intertitre'] = "\n<h2 class=\"spip\">\n";
$GLOBALS['fin_intertitre'] = "</h2>\n";
\ No newline at end of file
$GLOBALS['fin_intertitre'] = "</h2>\n";
define('_ZCM_BLOCS_DEPLIABLES_BALISE', 'p');
\ No newline at end of file
......@@ -4,6 +4,8 @@ if (!defined('_ECRIRE_INC_VERSION')) return;
function zcm_insert_head_css($flux) {
if (defined('_ZCM_GRILLADE')) {$flux .="\n".'<link rel="stylesheet" href="'.find_in_path('css/grillade.css').'" type="text/css" />';}
if (defined('_ZCM_FOND_PERDU')) {$flux .="\n".'<link rel="stylesheet" href="'.produire_fond_statique('css/fond_perdu.css').'" type="text/css" />';}
if (defined('_ZCM_BLOCS_DEPLIABLES')) {$flux .="\n".'<link rel="stylesheet" href="'.find_in_path('css/blocs_depliables.css').'" type="text/css" />';}
return $flux;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment