Skip to content
Extraits de code Groupes Projets
Valider f570018a rédigé par nicod's avatar nicod
Parcourir les fichiers

Gestion de types d'acteurs, liés à des groupes de mots clés

parent 160b4457
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -19,6 +19,8 @@ ...@@ -19,6 +19,8 @@
[ ] Gérer des logos de blocs ou les désactiver ? [ ] Gérer des logos de blocs ou les désactiver ?
[ ] Charger un fichier .css.html depuis les pipelines insert_head, pour utiliser des paramètres du bloc dans une feuille de style ?
[ ] Gérer deux versions des valeurs : une publiée, une autre en cours de rédaction pour prévisu avant publication ? [ ] Gérer deux versions des valeurs : une publiée, une autre en cours de rédaction pour prévisu avant publication ?
## blocs_types ## blocs_types
......
...@@ -70,7 +70,7 @@ function blocks_installe_config() { ...@@ -70,7 +70,7 @@ function blocks_installe_config() {
], ],
); );
// un type de bloc de base : texte // un type de bloc de démo : titre + texte
sql_insertq( sql_insertq(
'spip_blocs_types', 'spip_blocs_types',
[ [
...@@ -104,4 +104,25 @@ function blocks_installe_config() { ...@@ -104,4 +104,25 @@ function blocks_installe_config() {
]), ]),
] ]
); );
// un type de bloc de démo : articles liés à un mot clé
sql_insertq(
'spip_blocs_types',
[
'titre' => 'Démo articles par mot clé',
'identifiant' => 'demo_article_motcle',
'saisies' => blocks_serialize([
[
'options' =>
[
'nom' => 'id_mot',
'label' => 'Mot clé',
'obligatoire' => 'oui',
],
'identifiant' => uniqid('@'),
'saisie' => 'mot',
],
]),
]
);
} }
...@@ -13,6 +13,11 @@ if (!defined('_ECRIRE_INC_VERSION')) { ...@@ -13,6 +13,11 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return; return;
} }
function blocks_header_prive($flux) {
$flux .= '<link rel="stylesheet" href="'.timestamp(find_in_path('css/blocks_prive.css')).'" type="text/css" />';
return $flux;
}
/** /**
* Afficher la gestion des blocs sur la vue des objets * Afficher la gestion des blocs sur la vue des objets
* *
......
.liste_items.blocs .item.bloc {
position: relative;
}
.liste_items.blocs .actions {
position: absolute;
top: calc(var(--spip-form-spacing-y) / 2);
right: var(--spip-form-spacing-x);
inset-inline-end: var(--spip-form-spacing-x);
display: flex;
justify-content: flex-end;
margin: 0;
z-index: 1;
}
.liste_items.blocs .actions button,
.liste_items.blocs .actions .btn {
cursor: pointer;
background-color: var(--spip-color-gray-lightest);
border: none;
margin: 0;
}
.liste_items.blocs .actions button:hover,
.liste_items.blocs .actions .btn:hover {
background-color: var(--spip-color-gray-lighter);
}
.liste_items.blocs .actions .move {
cursor:move;
}
...@@ -29,6 +29,7 @@ function ordonner_listes_blocs() { ...@@ -29,6 +29,7 @@ function ordonner_listes_blocs() {
} }
new Sortable(this, { new Sortable(this, {
direction: 'vertical', direction: 'vertical',
handle: '.deplacer_bloc',
swapThreshold: .8, swapThreshold: .8,
ghostClass: "deplacer-bloc-placeholder", ghostClass: "deplacer-bloc-placeholder",
onStart: function(event) { onStart: function(event) {
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
<pipeline nom="declarer_tables_interfaces" inclure="base/blocks.php"/> <pipeline nom="declarer_tables_interfaces" inclure="base/blocks.php"/>
<pipeline nom="declarer_tables_auxiliaires" inclure="base/blocks.php" /> <pipeline nom="declarer_tables_auxiliaires" inclure="base/blocks.php" />
<pipeline nom="header_prive" inclure="blocks_pipelines.php"/>
<pipeline nom="affiche_enfants" inclure="blocks_pipelines.php"/> <pipeline nom="affiche_enfants" inclure="blocks_pipelines.php"/>
<pipeline nom="afficher_contenu_objet" inclure="blocks_pipelines.php"/> <pipeline nom="afficher_contenu_objet" inclure="blocks_pipelines.php"/>
<pipeline nom="boite_infos" inclure="blocks_pipelines.php"/> <pipeline nom="boite_infos" inclure="blocks_pipelines.php"/>
......
...@@ -5,28 +5,40 @@ ...@@ -5,28 +5,40 @@
<div class="sortable"> <div class="sortable">
<BOUCLE(BLOCS) {objet}{id_objet} {statut?} {par rang_lien}> <BOUCLE(BLOCS) {objet}{id_objet} {statut?} {par rang_lien}>
<div class="item bloc statut_#STATUT" id="bloc#ID_BLOC" data-id="#ID_BLOC"> <div class="item bloc statut_#STATUT" id="bloc#ID_BLOC" data-id="#ID_BLOC">
<div class="actions groupe-btns">
[(#AUTORISER{modifier,bloc,#ID_BLOC})
<div class="btn move deplacer_bloc">
[(#CHEMIN_IMAGE{formulaire-action-deplacer-16.png}|balise_img{<:saisies:construire_action_deplacer:>})]
</div>
<a href="[(#URL_ECRIRE{bloc_edit,id_bloc=#ID_BLOC}|parametre_url{popin,1}|parametre_url{var_zajax,contenu}|parametre_url{id_bloc,#ID_BLOC}|parametre_url{id_objet,#ID_OBJET}|parametre_url{objet,#OBJET})]"
class="btn btn_mini popin">
[(#CHEMIN_IMAGE{formulaire-action-configurer-16.png}|balise_img{<:bloc:icone_modifier_bloc:>})]
</a>
]
<!--
[(#AUTORISER{creer,bloc,#ID_BLOC})
<button type="submit" class="submit noscroll dupliquer_saisie" name="dupliquer_bloc" value="#ID_BLOC">
[(#CHEMIN_IMAGE{formulaire-action-dupliquer-16.png}|balise_img{<:saisies:construire_action_dupliquer:>})]
</button>
]
-->
[(#AUTORISER{supprimer,bloc,#ID_BLOC})
<button type="submit" class="submit noscroll supprimer_saisie" name="supprimer_bloc" value="#ID_BLOC" onclick="javascript:return confirm('<:saisies:construire_confirmer_supprimer_champ:>');">
[(#CHEMIN_IMAGE{formulaire-action-supprimer-16.png}|balise_img{<:saisies:construire_action_supprimer:>})]
</button>
]
</div>
<h3 class="titrem bloc__type"> <h3 class="titrem bloc__type">
[(#STATUT|puce_statut{bloc,#ID_BLOC})] [(#STATUT|puce_statut{bloc,#ID_BLOC})]
[(#CHEMIN_IMAGE{bloc-16.png}|balise_img)] [(#CHEMIN_IMAGE{bloc-16.png}|balise_img)]
##RANG_LIEN ##RANG_LIEN
#INFO_TITRE{blocs_types,#ID_BLOCS_TYPE} #INFO_TITRE{blocs_types,#ID_BLOCS_TYPE}
[(#AUTORISER{modifier,bloc,#ID_BLOC})
<span class="deplacer-bloc" data-rang="#RANG_LIEN">
<img src='#CHEMIN_IMAGE{deplacer-16.png}' width='16' height='16' alt='<:medias:ordonner_ce_document|attribut_html:>' title='<:medias:ordonner_ce_document|attribut_html:>' />
</span>
]
</h3> </h3>
#GENERER_BLOCK #GENERER_BLOCK
[(#AUTORISER{modifier,bloc,#ID_BLOC})
<a href="[(#URL_ECRIRE{bloc_edit,id_bloc=#ID_BLOC}|parametre_url{popin,1}|parametre_url{var_zajax,contenu}|parametre_url{id_bloc,#ID_BLOC}|parametre_url{id_objet,#ID_OBJET}|parametre_url{objet,#OBJET})]"
class="btn btn_mini popin">
<span class="sp-icone sp-icone-bloc" aria-hidden="true">[(#CHEMIN_IMAGE{bloc-16.png}|balise_img)]</span>
<:bloc:icone_modifier_bloc:/>
</a>
]
</div> </div>
</BOUCLE> </BOUCLE>
</div> </div>
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter