Skip to content
Extraits de code Groupes Projets
Valider ea2e1575 rédigé par marcimat@rezo.net's avatar marcimat@rezo.net
Parcourir les fichiers

Intégration du plugin "Minidoc" dans le plugin Médias.

Il permet d'avoir plusieurs types d'affichage différents pour les listes de documents attachés à des objets éditoriaux.
parent 712fb2b9
Aucune branche associée trouvée
Étiquettes v2.15.0
Aucune requête de fusion associée trouvée
......@@ -316,6 +316,9 @@ prive/themes/spip/images/document-new-16.png -text
prive/themes/spip/images/document-new-24.png -text
prive/themes/spip/images/document-new-32.png -text
prive/themes/spip/images/document-vu-24.png -text
prive/themes/spip/images/documents-cases-16.png -text
prive/themes/spip/images/documents-liste-16.png -text
prive/themes/spip/images/documents-liste-courte-16.png -text
prive/themes/spip/images/image-16.png -text
prive/themes/spip/images/image-24.png -text
prive/themes/spip/images/image-32.png -text
......
......@@ -8,6 +8,9 @@ if (!defined('_ECRIRE_INC_VERSION')) {
$GLOBALS[$GLOBALS['idx_lang']] = array(
// A
'affichage_documents_en_grand' => 'Affichage en grand',
'affichage_documents_en_cases' => 'Affichage en cases',
'affichage_documents_en_liste_compacte' => 'Affichage en liste compacte',
'aucun_audio' => 'Aucune bande-son',
'aucun_document' => 'Aucun document',
'aucun_file' => 'Aucun document',
......
<paquet
prefix="medias"
categorie="multimedia"
version="2.14.4"
version="2.15.0"
etat="stable"
compatibilite="[3.2.0-dev;]"
logo="prive/themes/spip/images/portfolio-32.png"
......
......@@ -56,6 +56,7 @@ var multifile='[(#CHEMIN{javascript/jquery.multifile.js}|texte_script)]';
[(#INCLURE{javascript/medias_edit.js}|compacte{js})]
[(#OBJET|=={rubrique}|et{#EVAL{_AJAX}}|et{#GET{nbdocs}|=={1}}|oui)
if (window.jQuery) jQuery('#navigation .box.info').ajaxReload();]
function check_reload_page(){
var reload = false;
if($('#illustrations[(#ENV{id_unique})]').length && !$('#illustrations[(#ENV{id_unique})] .item').length){
......@@ -72,6 +73,72 @@ function check_reload_page(){
jQuery('#navigation .box.info').ajaxReload();
}
}
if (window.jQuery) jQuery(function(){onAjaxLoad(check_reload_page);});
if (window.jQuery) {
jQuery(function(){onAjaxLoad(check_reload_page);});
jQuery(function($) {
/** Choix des différents affichages des documents (grand, en case, en liste courte) */
var affichages = function () {
$('#portfolios h3:not(:has(.affichages))').each(function () {
var titre = $(this);
var liste = titre.next('.liste_items.documents');
var identifiant = liste.attr('id');
if ($.inArray(identifiant, ['illustrations', 'portfolio', 'documents']) < 0) {
identifiant = null;
}
titre.append(
"<div class='affichages'>"
+ "<span class='icone grand on' title='<:medias:affichage_documents_en_grand|attribut_html:>'></span>"
+ "<span class='icone cases' title='<:medias:affichage_documents_en_cases|attribut_html:>'></span>"
+ "<span class='icone liste' title='<:medias:affichage_documents_en_liste_compacte|attribut_html:>'></span>"
+ "</div>"
);
var changer_affichage_documents = function (me, bouton, classe) {
$(me).parent().find('.icone').removeClass('on').end().end().addClass('on');
var liste = $(me).parents('h3').next('.liste_items.documents');
liste.removeClass('documents_cases').removeClass('documents_liste');
if (classe) {
liste.addClass(classe);
}
if (identifiant) {
Cookies.set('affichage-' + identifiant, bouton);
}
liste.trigger('affichage.documents.change', {
'liste': liste,
'icone': me,
'bouton': bouton,
'classe': classe
});
};
titre.find('.affichages > .grand').click(function () {
changer_affichage_documents(this, 'grand', null);
});
titre.find('.affichages > .cases').click(function () {
changer_affichage_documents(this, 'cases', 'documents_cases');
});
titre.find('.affichages > .liste').click(function () {
changer_affichage_documents(this, 'liste', 'documents_liste');
});
if (identifiant) {
var defaut = Cookies.get('affichage-' + identifiant);
if (defaut) {
titre.find('.affichages > .' + defaut).trigger('click');
}
}
});
}
affichages();
onAjaxLoad(affichages);
});
}
/*]]>*/</script>
</div>
......@@ -183,3 +183,148 @@ p.actions {clear:both;}
.portfolios .tout_supprimer span {display:block;text-align:#GET{right};}
.item.vu_oui {background:#f9f9f9;}
/* Types d'affichages des listes de douments */
h3 .affichages {
float:#GET{right};
}
.affichages .icone {
width:16px;
height:16px;
margin:0;
padding:2px;
display:inline-block;
background:rgba(255, 255, 255, 0.5) center center no-repeat;
border-radius:3px;
cursor:pointer;
}
.affichages .icone + .icone {
margin-#GET{left}:5px;
}
.affichages .icone.grand {
background-image: url([(#CHEMIN_IMAGE{documents-liste-16.png})]);
}
.affichages .icone.liste {
background-image: url([(#CHEMIN_IMAGE{documents-liste-courte-16.png})]);
}
.affichages .icone.cases {
background-image: url([(#CHEMIN_IMAGE{documents-cases-16.png})]);
}
.affichages .icone.on {
background-color:rgba(255, 255, 255, 0.9);
}
.affichages .icone.on:hover,
.affichages .icone:hover {
background-color:rgba(255, 255, 255, 1);
}
/* Liste courte de documents */
.portfolios .documents_liste .tout_supprimer {
clear:both;
margin-top:.5em;
display:block;
}
.portfolios .documents_liste .item {
padding: 7px;
padding-#GET{right}: 100px;
padding-#GET{left}: 75px;
position:relative;
}
.portfolios .documents_liste .item .vignette {
width:65px;
margin-#GET{left}: -75px;
}
.portfolios .documents_liste .item .vignette img {
max-height: 36px;
max-width:65px;
height:auto;
width:auto;
}
.portfolios .documents_liste .item .tourner,
.portfolios .documents_liste .item .infos,
.portfolios .documents_liste .item .mode,
.portfolios .documents_liste .item .actions > * {
display:none;
}
.portfolios .documents_liste .item .titrem {
margin-bottom:0;
}
.portfolios .documents_liste .item .titrem .fichier,
.portfolios .documents_liste .item .titrem .titre {
max-height:1.2em;
line-height:1.2em;
overflow:hidden;
white-space: nowrap;
display:block;
text-overflow:ellipsis;
}
.portfolios .documents_liste .item .titrem .titre {
max-height:1.5em;
line-height:1.5em;
}
.portfolios .documents_liste .item .actions {
position:absolute;
#GET{right}:0;
top:1.2em;
}
.portfolios .documents_liste .item .actions .editbox,
.portfolios .documents_liste .item .actions .ordoc-deplacer {
display:inline-block;
}
/* Grille en cases des documents. */
.portfolios .documents_cases {
display:flex;
flex-wrap: wrap;
}
.portfolios .documents_cases .item {
padding: 2px;
margin: 2px;
border:1px solid #eee;
border-radius:5px;
width:113px;
height:130px;
display:flex;
flex-direction:column;
}
.portfolios .documents_cases .item .tourner,
.portfolios .documents_cases .item .infos,
.portfolios .documents_cases .item .mode,
.portfolios .documents_cases .item .titrem,
.portfolios .documents_cases .item .actions > * {
display:none;
}
.portfolios .documents_cases .item .actions .editbox {
display:inline-block;
float:#GET{right};
}
.portfolios .documents_cases .item .actions .ordoc-deplacer {
display:inline-block;
float:#GET{left};
}
.portfolios .documents_cases .item .vignette {
float: none;
margin-#GET{left}: 0;
width:auto;
height:auto;
flex-grow:1;
}
.portfolios .documents_cases .item .vignette img {
max-height:110px;
max-width:110px;
width: auto;
height: auto;
}
.portfolios .documents_cases .item .actions {
display:block;
width:100%;
}
.portfolios .documents_cases .tout_supprimer {
flex-basis: 100%;
}
\ No newline at end of file
prive/themes/spip/images/documents-cases-16.png

186 octets

prive/themes/spip/images/documents-liste-16.png

183 octets

prive/themes/spip/images/documents-liste-courte-16.png

159 octets

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