Changeset 61588 in spip-zone


Ignore:
Timestamp:
May 23, 2012, 2:04:08 PM (7 years ago)
Author:
kent1@…
Message:

On peut réaliser 3 actions à la validation :
-* remplacer l'image définitivement
-* remplacer l'image en gardant des versions
-* créer un nouveau document à partir de l'image

Pas mal d'améliorations diverses

Location:
_plugins_/photospip/trunk
Files:
2 added
8 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/photospip/trunk/formulaires/configurer_photospip.html

    r61553 r61588  
    22
    33<div class="formulaire_spip formulaire_editer formulaire_cfg">
    4         [<p class='formulaire_erreur'>(#ENV*{message_erreur})</li>]
    5         [<p class="formulaire_message">(#ENV*{message_ok})</li>]
    6        
     4        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
     5        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
    76        <form method="post" action="#ENV{action}"><div>
    87                #ACTION_FORMULAIRE{SELF}
     
    1716                                </ul>
    1817                        </li>
    19        
    2018                        <li class="fieldset">
    2119                                <h3 class="legend"><:photospip:legend_filtres_a_disposition:></h3>
     
    2523                                                <div class="choix">
    2624                                                        <input type="checkbox" name="tourner" id="tourner"[(#ENV{tourner}|=={on}|oui) checked="checked"] />
    27                                                         <label for="tourner"><:photospip:tourner:></label>
     25                                                        <label for="tourner"><:photospip:label_tourner:></label>
     26                                                </div>
     27                                                <div class="choix">
     28                                                        <input type="checkbox" name="image_rotation" id="image_rotation"[(#ENV{image_rotation}|=={on}|oui) checked="checked"] />
     29                                                        <label for="image_rotation"><:photospip:label_image_rotation:></label>
    2830                                                </div>
    2931                                                <div class="choix">
    3032                                                        <input type="checkbox" name="image_flip_vertical" id="image_flip_vertical"[(#ENV{image_flip_vertical}|=={on}|oui) checked="checked"] />
    31                                                         <label for="image_flip_vertical"><:photospip:image_flip_vertical:></label>
     33                                                        <label for="image_flip_vertical"><:photospip:label_image_flip_vertical:></label>
    3234                                                </div>
    3335                                                <div class="choix">
    3436                                                        <input type="checkbox" name="image_flip_horizontal" id="image_flip_horizontal"[(#ENV{image_flip_horizontal}|=={on}|oui) checked="checked"] />
    35                                                         <label for="image_flip_horizontal"><:photospip:image_flip_horizontal:></label>
     37                                                        <label for="image_flip_horizontal"><:photospip:label_image_flip_horizontal:></label>
    3638                                                </div>
    3739                                                <div class="choix">
    38                                                         <input type="checkbox" name="image_rotation" id="image_rotation"[(#ENV{image_rotation}|=={on}|oui) checked="checked"] />
    39                                                         <label for="image_rotation"><:photospip:image_rotation:></label>
     40                                                        <input type="checkbox" name="image_reduire" id="image_reduire"[(#ENV{image_reduire}|=={on}|oui) checked="checked"] />
     41                                                        <label for="image_recadre"><:photospip:label_image_reduire:></label>
    4042                                                </div>
    4143                                                <div class="choix">
    42                                                         <input type="checkbox" name="image_recadre" id="image_recadre"[(#ENV{image_recadre,on}|=={on}|oui) checked="checked"] />
    43                                                         <label for="image_recadre"><:photospip:image_recadre:></label>
     44                                                        <input type="checkbox" name="image_passe_partout" id="image_passe_partout"[(#ENV{image_passe_partout}|=={on}|oui) checked="checked"] />
     45                                                        <label for="image_passe_partout"><:photospip:label_image_passe_partout:></label>
     46                                                </div>
     47                                                <div class="choix">
     48                                                        <input type="checkbox" name="image_recadre" id="image_recadre"[(#ENV{image_recadre}|=={on}|oui) checked="checked"] />
     49                                                        <label for="image_recadre"><:photospip:label_image_recadre:></label>
     50                                                </div>
     51                                                <div class="choix">
     52                                                        <input type="checkbox" name="image_aplatir" id="image_aplatir"[(#ENV{image_aplatir}|=={on}|oui) checked="checked"] />
     53                                                        <label for="image_aplatir"><:photospip:label_image_aplatir:></label>
    4454                                                </div>
    4555                                                <div class="choix">
    4656                                                        <input type="checkbox" name="image_sepia" id="image_sepia"[(#ENV{image_sepia}|=={on}|oui) checked="checked"] />
    47                                                         <label for="image_sepia"><:photospip:image_sepia:></label>
     57                                                        <label for="image_sepia"><:photospip:label_image_sepia:></label>
    4858                                                </div>
    4959                                                <div class="choix">
    5060                                                        <input type="checkbox" name="image_nb" id="image_nb"[(#ENV{image_nb}|=={on}|oui) checked="checked"] />
    51                                                         <label for="image_nb"><:photospip:image_nb:></label>
     61                                                        <label for="image_nb"><:photospip:label_image_nb:></label>
    5262                                                </div>
    5363                                                <div class="choix">
    5464                                                        <input type="checkbox" name="image_gamma" id="image_gamma"[(#ENV{image_gamma}|=={on}|oui) checked="checked"] />
    55                                                         <label for="image_gamma"><:photospip:image_gamma:></label>
     65                                                        <label for="image_gamma"><:photospip:label_image_gamma:></label>
    5666                                                </div>
    5767                                                <div class="choix">
    5868                                                        <input type="checkbox" name="image_flou" id="image_flou"[(#ENV{image_flou}|=={on}|oui) checked="checked"] />
    59                                                         <label for="image_flou"><:photospip:image_flou:></label>
     69                                                        <label for="image_flou"><:photospip:label_image_flou:></label>
    6070                                                </div>
    6171                                                [(#PLUGIN{Fonctions_images}|oui)
    6272                                                <div class="choix">
    6373                                                        <input type="checkbox" name="image_sincity" id="image_sincity"[(#ENV{image_sincity}|=={on}|oui) checked="checked"] />
    64                                                         <label for="image_sincity"><:photospip:image_sincity:></label>
     74                                                        <label for="image_sincity"><:photospip:label_image_sincity:></label>
    6575                                                </div>
    6676                                                <div class="choix">
    6777                                                        <input type="checkbox" name="image_saturer" id="image_saturer"[(#ENV{image_saturer}|=={on}|oui) checked="checked"] />
    68                                                         <label for="image_saturer"><:photospip:image_saturation_desaturation:></label>
     78                                                        <label for="image_saturer"><:photospip:label_image_saturation_desaturation:></label>
    6979                                                </div>
    7080                                                <div class="choix">
    7181                                                        <input type="checkbox" name="image_niveau_de_gris_auto" id="image_niveau_de_gris_auto"[(#ENV{image_niveau_de_gris_auto}|=={on}|oui) checked="checked"] />
    72                                                         <label for="image_niveau_de_gris_auto"><:photospip:image_niveau_de_gris_auto:></label>
     82                                                        <label for="image_niveau_de_gris_auto"><:photospip:label_image_niveau_de_gris_auto:></label>
    7383                                                </div>]
    7484                                        </li>
    7585                                </ul>
    7686                        </li>
     87                        <li class="fieldset">
     88                                <h3 class="legend"><:photospip:legend_configuration_resultats:></h3>
     89                                <ul>
     90                                        <li class="editer editer_resultats[ (#ENV**{erreurs}|table_valeur{resultats}|oui)erreur]">
     91                                                <label><:photospip:label_resultats:></label>
     92                                                [<span class='erreur_message'>(#ENV**{erreurs}|table_valeur{resultats})</span>]
     93                                                <p class="explication"><:photospip:explication_resultats:></p>
     94                                                <div class="choix">
     95                                                        <input type="checkbox" name="resultats[]" id="remplacer_image" value="remplacer_image"[(#VAL{remplacer_image}|in_array{#ENV{resultats,#ARRAY{0,remplacer_image,1,creer_nouvelle_image,2,creer_version_image}}}|oui) checked="checked"] />
     96                                                        <label for="remplacer_image"><:photospip:label_modif_remplacer_image:></label>
     97                                                </div>
     98                                                <div class="choix">
     99                                                        <input type="checkbox" name="resultats[]" id="creer_nouvelle_image" value="creer_nouvelle_image"[(#VAL{creer_nouvelle_image}|in_array{#ENV{resultats,#ARRAY{0,remplacer_image,1,creer_nouvelle_image,2,creer_version_image}}}|oui) checked="checked"] />
     100                                                        <label for="creer_nouvelle_image"><:photospip:label_modif_creer_nouvelle_image:></label>
     101                                                </div>
     102                                                <div class="choix">
     103                                                        <input type="checkbox" name="resultats[]" id="creer_version_image" value="creer_version_image"[(#VAL{creer_version_image}|in_array{#ENV{resultats,#ARRAY{0,remplacer_image,1,creer_nouvelle_image,2,creer_version_image}}}|oui) checked="checked"] />
     104                                                        <label for="creer_version_image"><:photospip:label_modif_creer_version_image:></label>
     105                                                </div>
     106                                        </li>
     107                                        <li class="editer editer_resultats_defaut">
     108                                                <label for="resultats_defaut"><:photospip:label_resultats_defaut:></label>
     109                                                <p class="explication"><:photospip:explication_resultats_defaut:></p>
     110                                                <select name="resultats_defaut" id="resultats_defaut">
     111                                                        <BOUCLE_resultats_autorises(POUR){tableau #ENV{resultats,#ARRAY{0,remplacer_image,1,creer_nouvelle_image,2,creer_version_image}}}>
     112                                                        <option value="#VALEUR"[(#ENV{resultats_defaut,creer_version_image}|=={#VALEUR}|oui)selected="selected"]>[(#VAL{photospip:label_modif_}|concat{#VALEUR}|_T)]</option>
     113                                                        </BOUCLE_resultats_autorises>
     114                                                </select>
     115                                        </li>
     116                                </ul>
     117                        </li>
     118                        [(#REM)
    77119                        <li class="fieldset">
    78120                                <h3 class="legend"><:photospip:legend_configuration_publique:></h3>
     
    88130                                        </li>
    89131                                </ul>
    90                         </li>
     132                        </li>]
    91133                </ul>
    92134                <p class="boutons">
  • _plugins_/photospip/trunk/formulaires/editer_image.html

    r61553 r61588  
    22        [<p class="reponse_formulaire reponse_formulaire_ok">(#ENV**{message_ok})</p>]
    33        [<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
     4        [(#ENV{erreurs}|table_valeur{message}|oui)
     5                                <div class="notice">
     6                                                [(#ENV{erreurs}|table_valeur{message}|=={previsu}|oui)
     7                                                <span><:previsualisation:></span><br />
     8                                                <:photospip:previsu:>]
     9                                                [(#ENV{erreurs}|table_valeur{message}|=={sanstest}|oui)
     10                                                <:photospip:sanstest:>]
     11                                                [(#ENV{erreurs}|table_valeur{message}|=={sansfiltre}|oui)
     12                                                <:photospip:sansfiltre:>]
     13                                                [(#ENV{erreurs}|table_valeur{message}|=={sansconf}|oui)
     14                                                <:photospip:sansconf:>]
     15                                        </div>
     16                                ]
    417        <BOUCLE_editable(CONDITION){si #ENV{editable}|oui}>
    518        [(#PLUGIN{fonctions_images}|oui)
     
    2740                        <div id="image-container">
    2841                                <div id="image_modifier" style="[width:(#GET{largeur_max})px;]">
    29                                 [(#ENV{erreurs}|table_valeur{message}|oui)
    30                                 <div class="photospip_previsu">
    31                                         <div class="previsu_texte" style="[width:(#GET{largeur_max})px;]">
    32                                                 [(#ENV{erreurs}|table_valeur{message}|=={previsu}|oui)
    33                                                 <span><:previsualisation:></span>
    34                                                 <:photospip:previsu:>]
    35                                                 [(#ENV{erreurs}|table_valeur{message}|=={sanstest}|oui)
    36                                                 <:photospip:sanstest:>]
    37                                                 [(#ENV{erreurs}|table_valeur{message}|=={sansfiltre}|oui)
    38                                                 <:photospip:sansfiltre:>]
    39                                                 [(#ENV{erreurs}|table_valeur{message}|=={sansconf}|oui)
    40                                                 <:photospip:sansconf:>]
    41                                         </div>
    42                                 </div>
    43                                 ]
     42                               
    4443                                [(#ENV{erreurs}|table_valeur{filtre}|oui)
    45                                 [(#_document:FICHIER|image_reduire{#GET{largeur_max,450},#GET{hauteur_max,450}}|photospip_appliquer_filtre{#ENV{erreurs}|table_valeur{filtre},[(#ENV{erreurs}|table_valeur{param})]}|image_reduire{[(#ENV{largeur_max}|sinon{450})],[(#ENV{hauteur_max}|sinon{450})]}|inserer_attribut{alt,' '})]]
     44                                [(#_document:FICHIER|image_reduire{[(#GET{largeur_max,450})],[(#GET{hauteur_max,450})]}|photospip_appliquer_filtre{[(#ENV{erreurs}|table_valeur{filtre})],[(#ENV{erreurs}|table_valeur{param1})],[(#ENV{erreurs}|table_valeur{param2})],[(#ENV{erreurs}|table_valeur{param3})],[(#ENV{erreurs}|table_valeur{param})]}|image_reduire{[(#ENV{largeur_max}|sinon{450})],[(#ENV{hauteur_max}|sinon{450})]}|inserer_attribut{alt,' '})]]
    4645                                [(#ENV{erreurs}|table_valeur{filtre}|non)
    4746                                [(#_document:FICHIER|image_reduire{#GET{largeur_max,450},#GET{hauteur_max,450}}|inserer_attribut{alt,' '})]]
    4847                        </div>
    49                         </div>
    50                                 [(#SET{photospip,pasok})]
    51                                 <BOUCLE_interd(DOCUMENTS_INTERS){id_document}> </BOUCLE_interd>
    52                                 [(#TOTAL_BOUCLE|>={#CONFIG{photospip/limite_version}}|?{#SET{photospip,ok},#SET{photospip,pasok}})]
    53                                 <//B_interd>
    54                         <div>
     48                </div>
     49                <div>
    5550                        <BOUCLE_modifiable(CONDITION){si #ENV{modifiable,oui}|oui}>
    5651                        <ul>
    57                                 <li class="fieldset" id="fragment-format">
     52                                #CHEMIN{formulaires/editer_image_format}
     53                                [<li class="fieldset" id="fragment-format">
    5854                                        <h3 class="legend"><:photospip:legende_filtres_format:></h3>
    5955                                        <ul>
    60                                                 [(#CONFIG{photospip/image_recadre,on}|=={on}|oui)
    61                                                 <li class="editer editer_recadre">
    62                                                         <input type="radio" name="filtre" id="image_recadre" value="image_recadre"[(#ENV{filtre}|=={image_recadre}|oui)checked="checked"] />
    63                                                         <label for="image_recadre">[<img src="(#CHEMIN{images/photospip-ico/ico_rotation.png})" alt="<:photospip:image_recadre:>" /> ]<:photospip:label_image_recadre:></label>
    64                                                         <div class="cache params_filtre image_recadre">
    65                                                                 <p class="explication">
    66                                                                         <:photospip:explication_image_recadre:>
    67                                                                         <:photospip:image_taille_actuelle:> #LARGEUR x #HAUTEUR px
    68                                                                 </p>
    69                                                                 <ul>
    70                                                                 <li>
    71                                                                         <label><:photospip:label_ratio:></label>
    72                                                                         <div class="choix">
    73                                                                                 <input type="radio" id="ratio" name="ratio" value=""[(#ENV{ratio}|non)checked="checked"] />
    74                                                                                 <label for="ratio"><:photospip:label_ratio_libre:></label>
    75                                                                         </div>
    76                                                                         <div class="choix">
    77                                                                                 <input type="radio" id="ratio1" name="ratio" value="1:1"[(#ENV{ratio}|=={'1:1'}|oui)checked="checked"] />
    78                                                                                 <label for="ratio1">1:1</label>
    79                                                                         </div>
    80                                                                         <div class="choix">
    81                                                                                 <input type="radio" id="ratio2" name="ratio" value="4:3"[(#ENV{ratio}|=={'4:3'}|oui)checked="checked"] />
    82                                                                                 <label for="ratio2">4:3</label>
    83                                                                         </div>
    84                                                                 </li>
    85                                                                 <li>
    86                                                                         <label for="recadre_width"><:photospip:label_recadre_width:></label>
    87                                                                         <input type="text" class="text" id="recadre_width" maxlength="5" style="width:5em" name="recadre_width" value="#ENV{recadre_width}" />
    88                                                                 </li>
    89                                                                 <li>
    90                                                                         <label for="recadre_height"><:photospip:label_recadre_height:></label>
    91                                                                         <input type="text" class="text" id="recadre_height" maxlength="5" style="width:5em" name="recadre_height" value="#ENV{recadre_height}" />
    92                                                                 </li>
    93                                                                 <li>
    94                                                                         <label><:photospip:label_recadre_x1_y1:></label>
    95                                                                         <div class="choix" style="display:inline">
    96                                                                                 <label for="recadre_x1">x</label>
    97                                                                                 <input type="text" class="text" id="recadre_x1" name="recadre_x1" maxlength="5" style="width:5em" value="#ENV{recadre_x1}" />
    98                                                                         </div>
    99                                                                         <div class="choix" style="display:inline">
    100                                                                                 <label for="recadre_y1">y</label>
    101                                                                                 <input type="text" class="text" id="recadre_y1" name="recadre_y1" maxlength="5" style="width:5em" value="#ENV{recadre_y1}" />
    102                                                                         </div>
    103                                                                 </li>
    104                                                                 <li>
    105                                                                         <label><:photospip:label_recadre_x2_y2:></label>
    106                                                                         <div class="choix" style="display:inline">
    107                                                                                 <label for="recadre_x2">x</label>
    108                                                                                 <input type="text" class="text" id="recadre_x2" name="recadre_x2" maxlength="5" style="width:5em" value="#ENV{recadre_x2}" />
    109                                                                         </div>
    110                                                                         <div class="choix" style="display:inline">
    111                                                                                 <label for="recadre_y2">y</label>
    112                                                                                 <input type="text" class="text" id="recadre_y2" name="recadre_y2" maxlength="5" style="width:5em" value="#ENV{recadre_y2}" />
    113                                                                         </div>
    114                                                                 </li>
    115                                                         </ul>
    116                                                         </div>
    117                                                 </li>]
    118                                                 [(#CONFIG{photospip/tourner,oui}|=={on}|oui)
    119                                                 <li class="editer editer_tourner">
    120                                                         <input type="radio" name="filtre" id="tourner" value="tourner"[(#ENV{filtre}|=={tourner}|oui)checked="checked"] />
    121                                                         <label for="tourner">[<img src="(#CHEMIN{images/photospip-ico/ico_rotation.png})" alt="<:photospip:label_tourner:>" /> ]<:photospip:label_tourner:></label>
    122                                                         <div class="cache params_filtre">
    123                                                                 <p class="explication"><:photospip:explication_tourner:></p>
    124                                                                 <ul>
    125                                                                         <li>
    126                                                                                 <label><:photospip:label_angle_rotation:></label>
    127                                                                                 <div class="choix">
    128                                                                                         <input type="radio" name="params_tourner" value="90" id="param_tourner_90"[(#ENV{params_tourner}|=={90}|oui)checked="checked"] />
    129                                                                                         <label for="param_tourner_90"><:photospip:label_tourner_90:></label>
    130                                                                                 </div>
    131                                                                                 <div class="choix">
    132                                                                                         <input type="radio" name="params_tourner" value="180" id="param_tourner_180"[(#ENV{params_tourner}|=={180}|oui)checked="checked"] />
    133                                                                                         <label for="param_tourner_180"><:photospip:label_tourner_180:></label>
    134                                                                                 </div>
    135                                                                                 <div class="choix">
    136                                                                                         <input type="radio" name="params_tourner" value="270" id="param_tourner_270"[(#ENV{params_tourner}|=={270}|oui)checked="checked"] />
    137                                                                                         <label for="param_tourner_270"><:photospip:label_tourner_270:></label>
    138                                                                                 </div>
    139                                                                         </li>
    140                                                                 </ul>
    141                                                         </div>
    142                                                 </li>]
    143                                                 [(#CONFIG{photospip/image_rotation}|=={on}|oui)
    144                                                 <li class="editer editer_rotation">
    145                                                         <input type="radio" name="filtre" id="image_rotation" value="image_rotation"[(#ENV{filtre}|=={image_rotation}|oui)checked="checked"] />
    146                                                         <label for="image_rotation">[<img src="(#CHEMIN{images/photospip-ico/ico_rotation.png})" alt="<:photospip:label_image_rotation:>" /> ]<:photospip:label_image_rotation:></label>`
    147                                                         <div class="cache params_filtre">
    148                                                                 <p class="explication"><:photospip:explication_image_rotation:></p>
    149                                                                 <div id='sliderrotation'>
    150                                                                         <div></div>     
    151                                                                 </div>
    152                                                                 <ul>
    153                                                                         <li class="editer editer_param_image_rotation">
    154                                                                                 <label for="param_image_rotation"><:photospip:label_angle_rotation:></label>
    155                                                                                 <input type="text" class="text" name="params_image_rotation" id="param_image_rotation" value="#ENV{params_image_rotation,45}" maxlength="4" />
    156                                                                         </li>
    157                                                                 </ul>
    158                                                         </div>
    159                                                 </li>]
    160                                                 [(#CONFIG{photospip/image_flip_vertical}|=={on}|oui)
    161                                                 <li class="editer editer_flip_vertical">
    162                                                         <input type="radio" name="filtre" id="image_flip_vertical" value="image_flip_vertical"[(#ENV{filtre}|=={image_flip_vertical}|oui)checked="checked"] />
    163                                                         <label for="image_flip_vertical">[<img src="(#CHEMIN{images/photospip-ico/ico_flip_vertical.png})" alt="<:photospip:image_flip_vertical:>" /> ]<:photospip:label_image_flip_vertical:></label>
    164                                                         <div class="cache params_filtre">
    165                                                                 <p class="explication"><:photospip:explication_image_flip_vertical:></p>
    166                                                         </div>
    167                                                 </li>]
    168                                                 [(#CONFIG{photospip/image_flip_horizontal}|=={on}|oui)
    169                                                 <li class="editer editer_flip_horizontal">
    170                                                         <input type="radio" name="filtre" id="image_flip_horizontal" value="image_flip_horizontal"[(#ENV{filtre}|=={image_flip_horizontal}|oui)checked="checked"] />
    171                                                         <label for="image_flip_horizontal">[<img src="(#CHEMIN{images/photospip-ico/ico_flip_horizontal.png})" alt="<:photospip:image_flip_horizontal:>" /> ]<:photospip:label_image_flip_horizontal:></label>
    172                                                         <div class="cache params_filtre">
    173                                                                 <p class="explication"><:photospip:explication_image_flip_horizontal:></p>
    174                                                         </div>
    175                                                 </li>]
     56                                        (#INCLURE{fond=formulaires/editer_image_format,env}|trim)
    17657                                        </ul>
    177                                 </li>
    178                                
    179                                 <li class="fieldset" id="fragment-couleurs">
     58                                </li>]
     59                               
     60                                [<li class="fieldset" id="fragment-couleurs">
    18061                                        <h3 class="legend"><:photospip:legende_filtres_de_couleur:></h3>
    18162                                        <ul>
    182                                                 [(#CONFIG{photospip/image_nb}|=={on}|oui)
    183                                                 <li class="editer editer_nb">
    184                                                         <input type="radio" name="filtre" id="filtre_nb" value="image_nb"[(#ENV{filtre}|=={image_nb}|oui)checked="checked"] />
    185                                                         <label for="filtre_nb">[<img src="(#CHEMIN{images/photospip-ico/ico_nb.png})" alt="<:photospip:label_image_nb:>" /> ]<:photospip:label_image_nb:></label>
    186                                                         <div class="cache params_filtre">
    187                                                                 <p class="explication"><:photospip:explication_image_nb:></p>
    188                                                         </div>
    189                                                 </li>]
    190                                                 [(#CONFIG{photospip/image_gamma}|=={on}|oui)
    191                                                 <li class="editer editer_gamma">
    192                                                         <input type="radio" name="filtre" id="filtre_gamma" value="image_gamma"[(#ENV{filtre}|=={image_gamma}|oui)checked="checked"] />
    193                                                         <label for="filtre_gamma"><:photospip:label_image_gamma:></label>
    194                                                         <div class="cache params_filtre">
    195                                                                 <p class="explication"><:photospip:explication_image_gamma:></p>
    196                                                                 <div id='slidergamma'> </div>
    197                                                                 <ul>
    198                                                                         <li class="editer_params_image_gamma">
    199                                                                                 <label for="param_image_gamma"><:photospip:label_niveau_gamma:></label>
    200                                                                                 <input type="text" class="text" name="params_image_gamma" id="param_image_gamma" value="#ENV{params_image_gamma,10}" maxlength="4" />
    201                                                                         </li>
    202                                                                 </ul>
    203                                                         </div>
    204                                                 </li>]
    205                                                 [(#CONFIG{photospip/image_flou}|=={on}|oui)
    206                                                 <li class="editer editer_flou">
    207                                                         <input type="radio" name="filtre" id="filtre_flou" value="image_flou"[(#ENV{filtre}|=={image_flou}|oui)checked="checked"] />
    208                                                         <label for="filtre_flou"><:photospip:label_image_flou:></label>
    209                                                         <div class="cache params_filtre">
    210                                                                 <p class="explication"><:photospip:explication_image_flou:></p>
    211                                                                 <div id='sliderflou'> </div>
    212                                                                 <ul>
    213                                                                         <li class="editer_param_image_flou">
    214                                                                                 <label for="param_image_flou"><:photospip:label_niveau_flou:></label>
    215                                                                                 <input type="text" class="text" name="params_image_flou" id="param_image_flou" value="#ENV{params_image_flou,3}" maxlength="2" />
    216                                                                         </li>
    217                                                                 </ul>
    218                                                         </div>
    219                                                 </li>]
    220                                                 [(#CONFIG{photospip/image_sepia}|=={on}|oui)
    221                                                 <li class="editer editer_image_sepia">
    222                                                         <input type="radio" name="filtre" id="filtre_sepia" value="image_sepia"[(#ENV{filtre}|=={image_sepia}|oui)checked="checked"] />
    223                                                         <label for="filtre_sepia">[<img src="(#CHEMIN{images/photospip-ico/ico_sepia.png})" alt="<:photospip:image_sepia:>" /> ]<:photospip:label_image_sepia:></label>
    224                                                         <div class="cache params_filtre">
    225                                                                 <ul>
    226                                                                         <li class="editer_param_image_sepia">
    227                                                                                 <label for="param_image_sepia"><:photospip:label_couleur_sepia:></label>
    228                                                                                 <input type="text" name="params_image_sepia" class="text palette couleur" id="param_image_sepia" value="#ENV{params_image_sepia,#896f5e}" maxlength="7" />
    229                                                                         </li>
    230                                                                 </ul>
    231                                                         </div>
    232                                                 </li>]
    233                                                 [(#CONFIG{photospip/image_niveau_de_gris_auto}|=={on}|oui)
    234                                                 <li class="editer editer_niveaux_auto">
    235                                                         <input type="radio" name="filtre" id="filtre_niveaux_auto" value="image_niveaux_gris_auto"[(#ENV{filtre}|=={image_niveaux_gris_auto}|oui)checked="checked"] />
    236                                                         <label for="filtre_niveaux_auto"><:photospip:label_image_niveau_de_gris_auto:></label>
    237                                                         <div class="cache params_filtre explications">
    238                                                                 <p class="explication"><:photospip:explication_image_niveau_de_gris_auto:></p>
    239                                                         </div>
    240                                                 </li>]
    241                                                 [(#GET{fonctions_images}|=={on}|oui)
    242                                                 [(#CONFIG{photospip/image_sincity}|=={on}|oui)
    243                                                 <li class="editer editer_sincity">
    244                                                         <input type="radio" name="filtre" id="filtre_sincity" value="image_sincity"[(#ENV{filtre}|=={image_sincity}|oui)checked="checked"] />
    245                                                         <label for="filtre_sincity"><:photospip:label_image_sincity:></label>
    246                                                         <div class="cache params_filtre explications">
    247                                                                 <p class="explication"><:photospip:explication_image_sincity:></p>
    248                                                         </div>
    249                                                 </li>]
    250                                                 [(#CONFIG{photospip/image_contour_alpha}|=={on}|oui)
    251                                                 <li class="editer editer_contour_alpha">
    252                                                         <input type="radio" name="filtre" id="filtre_contour_alpha" value="image_contour_alpha"[(#ENV{filtre}|=={image_contour_alpha}|oui)checked="checked"] />
    253                                                         <label for="filtre_contour_alpha"><:photospip:label_image_contour_alpha:></label>
    254                                                         <div class="cache params_filtre explications">
    255                                                                 <p class="explication"><:photospip:explication_image_contour_alpha:></p>
    256                                                         </div>
    257                                                 </li>]
    258                                                 [(#CONFIG{photospip/image_saturer}|=={on}|oui)
    259                                                 <li class="editer editer_saturer">
    260                                                         <input type="radio" name="filtre" id="filtre_saturer" value="image_saturer"[(#ENV{filtre}|=={image_saturer}|oui)checked="checked"] />
    261                                                         <label for="filtre_saturer"><:photospip:label_image_saturation_desaturation:></label>
    262                                                         <div class="cache params_filtre explications">
    263                                                                 <p class="explication"><:photospip:explication_image_saturation_desaturation:></p>
    264                                                                 <div id='slidersaturer'> </div>
    265                                                                 <ul>
    266                                                                         <li class="editer editer_param_image_saturer">
    267                                                                                 <label for="param_image_saturer"><:photospip:label_niveau_saturation_desaturation:></label>
    268                                                                                 <input type="text" class="text" name="params_image_saturer" id="param_image_saturer" value="#ENV{params_image_saturer,1}" maxlength="3" />
    269                                                                         </li>
    270                                                                 </ul>
    271                                                         </div>
    272                                                 </li>]]
     63                                                (#INCLURE{fond=formulaires/editer_image_couleurs,env}|trim)
    27364                                        </ul>
     65                                </li>]
     66                                <BOUCLE_resultats_sup_un(CONDITION){si #CONFIG{photospip/resultats,#ARRAY{0,remplacer_image,1,creer_nouvelle_image,2,creer_version_image}}|count|>{1}|oui}>
     67                                <li>
     68                                        <label><:photospip:label_type_modification:></label>
     69                                        <BOUCLE_resultats(POUR){tableau #CONFIG{photospip/resultats,#ARRAY{0,remplacer_image,1,creer_nouvelle_image,2,creer_version_image}}}>
     70                                        <div class="choix">
     71                                                <input type="radio" id="#VALEUR" name="type_modification" value="#VALEUR"[(#ENV{type_modification,#CONFIG{photospip/resultats_defaut,creer_version_image}}|=={#VALEUR}|oui)checked="checked"] />
     72                                                <label for=#VALEUR">[(#VAL{photospip:label_modif_}|concat{#VALEUR}|_T)]</label>
     73                                        </div>
     74                                        </BOUCLE_resultats>
    27475                                </li>
    275                 </ul>
     76                                </BOUCLE_resultats_sup_un>
     77                        </ul>
    27678          [(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
    27779          <!--extra-->
  • _plugins_/photospip/trunk/formulaires/editer_image.php

    r61553 r61588  
    66include_spip('inc/autoriser');
    77include_spip('inc/documents');
     8include_spip('inc/filtres_images');
    89include_spip('photospip_fonctions');
    910
     
    1213        $id_document = sql_getfetsel('id_document','spip_documents','id_document='.intval($id_document));
    1314        $valeurs['id_document'] = $id_document;
    14        
     15
    1516        if(!$id_document){
    1617                $valeurs['editable'] = false;
     
    3839                'recadre_y1',
    3940                'recadre_y2',
     41                'reduire_width',
     42                'reduire_height',
     43                'passe_partout_width',
     44                'passe_partout_height',
    4045                'params_tourner',
    4146                'params_image_sepia',
     
    4449                'params_image_saturer',
    4550                'params_image_rotation',
    46                 'params_image_niveaux_gris_auto') as $input){
     51                'params_image_niveaux_gris_auto',
     52                'type_modification') as $input){
    4753                if(_request($input))
    4854                        $valeurs[$input] = _request($input);   
     
    5056       
    5157        $valeurs['largeur_previsu'] = test_espace_prive()? 548 : lire_config('photospip/largeur_previsu','450');
     58       
     59        $resultats = lire_config('photospip/resultats',array('remplacer_image','creer_nouvelle_image','creer_version_image'));
     60        if(count($resultats) == 1){
     61                $valeurs['_hidden'] .= '<input type="hidden" name="type_modification" value="'.$resultats[0].'" />';
     62        }
    5263       
    5364        if(!autoriser('modifier','document',$id_document)){
     
    6374
    6475function formulaires_editer_image_verifier_dist($id_document='new', $retour=''){
    65         if(!$var_filtre = _request('filtre')){
     76        if(!$var_filtre = _request('filtre'))
    6677                $erreurs['message_erreur'] = _T('photospip:erreur_form_filtre');
    67         }
     78       
     79        elseif(!$type_resultat = _request('type_modification'))
     80                $erreurs['message_erreur'] = _T('photospip:erreur_form_type_resultat');
    6881        /**
    6982         * On test uniquement
     
    7891                        $erreurs['filtre'] = $var_filtre;
    7992                        $erreurs['param'] = $params;
     93                        $erreurs['param1'] = $param1;
    8094                        if($param2){
    8195                                $erreurs['param2'] = $param2;
     
    93107       
    94108        $var_filtre = _request('filtre');
     109        $type_modif = _request('type_modification');
    95110        $params = photospip_recuperer_params_form($var_filtre);
     111       
    96112        $row = sql_fetsel('*','spip_documents','id_document='.intval($id_document));
    97113        $src = get_spip_doc($row['fichier']);
    98114       
    99         if (preg_match(',^(.*)-photospip(\d+).([^.]+)$,', $src, $match)) {
    100                 $version = $match[2];
    101                 $orig_src = $match[1].'.'.$match[3];
    102                 $newversion = ++$version;
    103                 spip_log("La nouvelle version sera $newversion","photospip");
    104         }
    105         if($version){
    106                 // $dest = preg_replace(',\.[^.]+$,', '-r'.$var_rot.'$0', $src); //original
    107                 $dest = preg_replace(",\.[^.]+$,", "-photospip".($newversion)."$0", $orig_src);
    108                 spip_log("la destination sera $dest","photospip");
    109                 spip_log("application du filtre $var_filtre $src : $dest","photospip");
    110         }
    111         else{
    112                 $dest = preg_replace(',\.[^.]+$,', '-photospip1.png', $src);
    113                 // on transforme l'image en png non destructif
    114                 include_spip('inc/filtres_images');
    115                 spip_log("On transforme l'image source en PNG non destructif","photospip");
    116                 $src = extraire_attribut(image_alpha($src,0),'src');
    117                 spip_log("application du filtre $var_filtre $src : $dest","photospip");
    118         }
     115        $version = sql_countsel('spip_documents_inters','id_document='.intval($row['id_document']))+1;
     116        spip_log($version,"photospip");
     117        /**
     118         * L'image temporaire est crée dans tmp/
     119         * Elle a pour nom : tmp/image_orig-xxxx.ext où xxxx est le md5 de la date
     120         */
     121        $src_tmp = preg_replace(",\-photospip\w+([^\-]),","$1", $src);
     122        spip_log("src_tmp = $src_tmp",'photospip');
     123        $tmp_img = _DIR_TMP.preg_replace(",\.[^.]+$,","-photospip".md5(date('Y-m-d H:i:s'))."$0", basename($src_tmp));
     124        $dest = preg_replace(",\.[^.]+$,","-photospip".md5(date('Y-m-d H:i:s'))."$0", $src_tmp);
     125        spip_log("la destination sera $dest","photospip");
     126       
     127        // on transforme l'image en png non destructif
     128        //$src = extraire_attribut(image_alpha($src,0),'src');
     129        //spip_log("On transforme l'image source en PNG non destructif","photospip");
     130        spip_log("application du filtre $var_filtre $src : $tmp_img","photospip");
    119131       
    120132        if($var_filtre == "tourner"){
    121133                include_spip('inc/filtres');
    122134                include_spip('public/parametrer'); // charger les fichiers fonctions #bugfix spip 2.1.0
    123                 $dst_img = filtrer('image_rotation',$src,$params[3]);
    124                 $dst_img = filtrer('image_format',$dst_img,$row['extension']);
    125                 $dst_img = extraire_attribut($dst_img,'src');
    126                 include_spip('inc/getdocument');
    127                 deplacer_fichier_upload($dst_img,$dest);
     135                $tmp_img = filtrer('image_rotation',$src,$params[3]);
     136                $tmp_img = filtrer('image_format',$tmp_img,$row['extension']);
     137                $tmp_img = extraire_attribut($tmp_img,'src');
    128138        }
    129139       
    130140        else{
    131                 $sortie = photospipfiltre($src, $dest, $var_filtre,$params);
     141                $sortie = photospipfiltre($src, $tmp_img, $var_filtre,$params);
    132142                if(!$sortie){
    133143                        $res['message_erreur'] = 'photospip n a pas pu appliquer le filtre '.$var_filtre;
     
    136146        }
    137147
    138         $size_image = getimagesize($dest);
    139         spip_log("taille de l'image $size_image[0] x $size_image[1]","photospip");
    140         $largeur = $size_image[0];
    141         $hauteur = $size_image[1];
    142         $ext = substr(basename($dest), strpos(basename($dest), ".")+1, strlen(basename($dest)));
    143         $poids = filesize($dest);
    144        
    145         // succes !
    146         if ($largeur>0 AND $hauteur>0) {
     148        if($type_modif == 'creer_version_image'){
     149                $size_image = getimagesize($tmp_img);
     150                spip_log("taille de l'image $size_image[0] x $size_image[1]","photospip");
     151                $largeur = $size_image[0];
     152                $hauteur = $size_image[1];
     153                $ext = substr(basename($tmp_img), strpos(basename($tmp_img), ".")+1, strlen(basename($tmp_img)));
     154                $poids = filesize($tmp_img);
     155                /**
     156                 * Crée une version de l'image
     157                 */
    147158                if(is_array($params))
    148159                        $params = serialize($params);
     160                include_spip('inc/getdocument');
    149161                sql_insertq("spip_documents_inters",array("id_document" => $row['id_document'],"id_auteur" => $id_auteur,"extension" => $row['extension'], "fichier" => $row['fichier'], "taille" => $row['taille'],"hauteur" => $row['hauteur'], "largeur" => $row['largeur'],"mode" => $row['mode'], "version" => ($version? $version:1), "filtre" => $var_filtre, "param" => $params));
     162                deplacer_fichier_upload($tmp_img,$dest,true);
     163                spip_log("move $tmp_img => $dest",'photospip');
    150164                sql_updateq('spip_documents', array('fichier' => set_spip_doc($dest), 'taille' => $poids, 'largeur'=>$largeur, 'hauteur'=>$hauteur, 'extension' => $ext), "id_document=".intval($row['id_document']));
    151165                spip_log("Update de l'image dans la base poid= $poids, extension = $ext, hauteur= $hauteur, largeur = $largeur, fichier = $dest","photospip");
    152         }
    153 
     166        }else {
     167                $files[0]['tmp_name'] = $tmp_img;
     168                $files[0]['name'] = basename($dest);
     169                if($type_modif == 'remplacer_image'){
     170                        /**
     171                         * Remplace l'image actuelle par une nouvelle
     172                         */
     173                         spip_log('on remplace','photospip');
     174                         $ajouter_document = charger_fonction('ajouter_documents','action');
     175                         $id_document = $ajouter_document($row['id_document'], $files, $objet, $id_objet, $row['mode']);
     176                         include_spip('inc/flock');
     177                         spip_unlink($tmp_img);
     178                }
     179                if($type_modif == 'creer_nouvelle_image'){
     180                        /**
     181                         * Crée un nouveau document
     182                         */
     183                         spip_log('on crée un nouveau doc','photospip');
     184                         $ajouter_document = charger_fonction('ajouter_documents','action');
     185                         $objet_lie = sql_fetsel('*','spip_documents_liens','id_document='.intval($row['id_document']));
     186                         $id_document = $ajouter_document('new', $files, $objet_lie['objet'], $objet_lie['id_objet'], $row['mode']);
     187                         spip_log($id_document,'photospip');
     188                         $res['redirect'] = parametre_url(parametre_url(self(),'redirect',''),'id_document',$id_document[0]);
     189                         include_spip('inc/flock');
     190                         spip_unlink($tmp_img);
     191                }
     192        }
     193       
     194        include_spip('inc/invalideur');
     195        suivre_invalideur("id='id_document/$id_document'");
     196               
    154197        if (!isset($res['redirect']))
    155                 $res['editable'] = true;
     198                $res['redirect'] = parametre_url(self(),'redirect','');
    156199        if (!isset($res['message_erreur']))
    157200                $res['message_ok'] = _L('Votre modification a &eacute;t&eacute; enregistr&eacute;e');
    158 
    159201        return $res;
    160202}
     
    164206        if ($var_filtre == "tourner"){
    165207                $params = _request('params_tourner');
     208        }
     209        else if($var_filtre == "image_reduire"){
     210                $param1 = _request('reduire_width');
     211                $param2 = _request('reduire_height');
     212                $params = array($param1,$param2);
     213        }
     214        else if($var_filtre == "image_passe_partout"){
     215                $param1 = _request('passe_partout_width');
     216                $param2 = _request('passe_partout_height');
     217                $params = array($param1,$param2);
    166218        }
    167219        else if ($var_filtre == "image_recadre"){
     
    175227        else if ($var_filtre == 'image_sepia'){
    176228                $params = _request('params_image_sepia');
    177                 $params = str_replace('#','',$params);
     229                $param1 = str_replace('#','',$params);
    178230        }
    179231        else if($var_filtre == 'image_gamma'){
    180                 $params = _request('params_image_gamma');
     232                $param1 = _request('params_image_gamma');
    181233        }
    182234        else if($var_filtre == 'image_flou'){
    183                 $params = _request('params_image_flou');
     235                $param1 = _request('params_image_flou');
    184236        }
    185237        else if($var_filtre == 'image_saturer'){
    186                 $params = _request('params_image_saturer');
     238                $param1 = _request('params_image_saturer');
    187239        }
    188240        else if($var_filtre == 'image_rotation'){
    189                 $params = _request('params_image_rotation');
     241                $param1 = _request('params_image_rotation');
    190242        }
    191243        else if($var_filtre == 'image_niveaux_gris_auto'){
    192                 $params = '';
     244                $param1 = '';
    193245        }
    194246        return array($param1,$param2,$param3,$params);
  • _plugins_/photospip/trunk/lang/photospip_fr.php

    r61521 r61588  
    2626        'erreur_image_process' => 'Le site n\'utilise pas GD2 pour gérer les images, veuillez l\'utiliser pour leur traitement.',
    2727        'erreur_nb_versions_atteint' => 'Le nombre de versions différentes de l\'image a été atteint (@nb@). Vous ne pouvez que tester et non appliquer les modifications.',
     28        'erreur_selectionner_au_moins_une_valeur' => 'Vous devez sélectionner au moins une valeur',
     29        'explication_image_flip_horizontal' => 'Appliquer un effet de « miroir » selon un axe horizontal (Aucun réglage nécessaire).',
     30        'explication_image_flip_vertical' => 'Appliquer un effet de « miroir » selon un axe vertical (Aucun réglage nécessaire).',     
     31        'explication_image_flou' => 'Le filtre image_flou rend l\'image... floue. On peut lui passer en paramètre un nombre compris entre 1 et 11, définissant l’intensité du flou (de 1 à 11 pixels de flou).',
     32        'explication_image_gamma' => 'Le filtre Gamma change la luminosité d\'une image.<br />Il rend une image plus claire ou plus foncée.<br />Son paramètre est compris entre -254 et 254. Les valeurs supérieures à zéro rendent l\'image plus claire (254 rend toute l\'image entièrement blanche); les valeurs négatives rendent l\'image plus foncée (-254 rend l\'image complètement noire).',
     33        'explication_image_nb' => 'Transforme l\'image en noir et blanc',
     34        'explication_image_niveau_de_gris_auto' => 'Correction automatique des niveaux de l\'image.<br />(Ne nécessite pas de paramètres).',
     35        'explication_image_passe_partout' => 'Ce filtre réduira la taille de l\'image au minimum la faisant entrer dans un cadre des largeurs et hauteurs fournies.',
     36        'explication_image_recadre' => 'Recadre l\'image en fonction de la sélection de l\'utilisateur.',
     37        'explication_image_reduire' => 'Ce filtre réduira la taille de l\'image au maximum en fonction de la hauteur et de la largeur fournie.',
     38        'explication_image_saturation_desaturation' => 'Ce filtre va saturer ou désaturer les couleurs d’une image.<br />La luminosité de l’image et le contraste sont inchangés<br />Dans le premier cas, la couleur est « affadie » ; l’effet, utilisé subtilement, donnera des tonalités de photographie vieillie...<br />Dans l’autre cas, à l’inverse, le même filtre pourra «doper» les couleurs.',
     39        'explication_image_sincity' => 'Ce filtre donne un aspect "Sin City" (Ne nécessite aucun réglage).<br />Il exécute une désaturation contrastée et une accentuation du rouge.',
     40        'explication_image_rotation' => 'Fait tourner l’image d’un angle égal au paramètre passé. Les valeurs positives sont dans le sens des aiguilles d’une montre et inversement.<br />Attention : ce filtre modifie les dimensions de l’image.',
     41        'explication_resultats' => 'Lors de la validation de la modification d\'images, trois types de résultats sont possibles.',
     42        'explication_resultats_defaut' => 'Valeur par défaut sélectionnée lors du chargement du formulaire.',
     43        'explication_tourner' => 'Appliquer une rotation de 90, 180 ou 270 degrés à l\'image<br />Ce filtre ne peut &ecirc;tre testé, il ne peut &ecirc;tre qu\'appliqué.',
    2844
    2945        // I
     
    3147       
    3248        // L
     49        'label_angle_rotation' => 'Angle de rotation&nbsp:',
    3350        'label_choisir_filtres' => 'Choisissez les filtres à activer',
    3451        'label_compression_rendu' => 'Qualité de compression du rendu (en %, 85 par défaut) :',
     52        'label_couleur_sepia' => 'Couleur&nbsp;:',
    3553        'label_hauteur_previsu' => 'Hauteur maximale de la prévisualisation en px (450 par défaut) : ',
     54        'label_image_aplatir' => 'Aplatir l\'image',
     55        'label_image_flip_vertical' => 'Flip Vertical de l\'image',
     56        'label_image_flip_horizontal' => 'Flip Horizontal de l\'image',
     57        'label_image_flou' => 'Filtre Flou',
     58        'label_image_gamma' => 'Filtre Gamma',
     59        'label_image_nb' => 'Filtre Noir et Blanc',
     60        'label_image_niveau_de_gris_auto' => 'Niveaux automatiques',
     61        'label_image_passe_partout' => 'Réduire l\'image (passe-partout)',
     62        'label_image_recadre' => 'Recadrer l\'image',
     63        'label_image_reduire' => 'Réduire l\'image',
     64        'label_image_rotation' => 'Rotation manuelle de l\'image',
     65        'label_image_saturation_desaturation' => 'Filtre [Dé-]saturation',
     66        'label_image_sepia' => 'Filtre Sepia',
     67        'label_image_sincity' => 'Filtre Sin City',
    3668        'label_largeur_previsu' => 'Largeur maximale de la prévisualisation en px (450 par défaut) : ',
    3769        'label_limiter_version' => 'Limiter le nombre de versions possibles à :',
     70        'label_modif_remplacer_image' => 'L\'image originale sera simplement remplacée',
     71        'label_modif_creer_nouvelle_image' => 'Un nouveau document sera créé à partir de l\'image originale',
     72        'label_modif_creer_version_image' => 'L\'image originale sera enregistrée en tant que version du nouveau document qui la remplacera dans le site',
     73        'label_niveau_flou' => 'Niveau de flou&nbsp;:',
     74        'label_niveau_gamma' => 'Niveau Gamma&nbsp;:',
     75        'label_niveau_saturation_desaturation' => 'Niveau de saturation&nbsp;:',
     76        'label_ratio' => 'Ratio de la sélection&nbsp;:',
     77        'label_ratio_libre' => 'Libre',
     78        'label_reduire_height' => 'Hauteur (en px)&nbsp;:',
     79        'label_reduire_width' => 'Largeur (en px)&nbsp;:',
     80        'label_recadre_height' => 'Hauteur de la sélection (en px)&nbsp;:',
     81        'label_recadre_width' => 'Largeur de la sélection (en px)&nbsp;:',     
     82        'label_recadre_x1_y1' => 'Position (coin supérieur gauche)',   
     83        'label_recadre_x2_y2' => 'Position (coin inférieur droit)',
     84        'label_resultats' => 'Choix des résultats possibles par l\'utilisateur',
     85        'label_resultats_defaut' => 'Valeur par défaut présélectionnée',
     86        'label_tourner' => 'Rotation paramètrée',
     87        'label_tourner_90' => 'Tourner de 90 degrés (dans le sens des aiguilles d\'une montre)',
     88        'label_tourner_180' => 'Tourner de 180 degrés (dans le sens des aiguilles d\'une montre)',
     89        'label_tourner_270' => 'Tourner de 270 degrés (dans le sens des aiguilles d\'une montre)',
     90        'label_type_modification' => 'Quel sera le résultat?',
    3891        'label_vider_version' => 'Intervale entre les vidages des versions intermédiaires (en nombre de jours, 0 = jamais) :',
    3992        'legend_configuration' => 'Configuration du plugin',
     93        'legend_configuration_resultats' => 'Configuration des résultats',
    4094        'legend_configuration_publique' => 'Configuration de la partie publique',
    4195        'legend_filtres_a_disposition' => 'Filtres à disposition',
     96        'legende_filtres_de_couleur' => 'Filtres de coloration',
     97        'legende_filtres_format' => 'Modifier le format',
     98        'legende_filtres_supplementaires' => 'Filtres supplémentaires',
    4299        'lien_editer_image' => 'Éditer cette image',
    43100       
     101        // M
     102        'message_image_taille_actuelle' => 'Taille actuelle de l\'image&nbsp;: @largeur@x@hauteur@px.',
     103        'message_limite_versions' => 'Le nombre de versions précédentes sont limitées à @limite@.',
     104        'message_pas_de_versions' => 'Il n\'y a pas encore de versions disponibles de cette image.',
     105
    44106        // P
    45107        'photospip' => 'PhotoSPIP',
    46108       
    47        
    48109        // T
     110        'titre_informations_images' => 'Informations du document',
    49111        'titre_page_image_edit' => 'Édition de l\'image',
     112        'titre_versions_precedentes' => 'Précédentes versions',
    50113       
    51114        // PUBLIC
    52115       
    53116        // Versions
    54         'versions_precedentes' => 'Précédentes versions',
    55         'pas_de_versions' => 'Il n\'y a pas encore de versions diponibles de cette image.',
    56         'informations_images' => 'Informations du document',
     117       
    57118        'id_document' => 'ID du document dans le site : ',
    58119        'type_original' => 'Type du document : ',
     
    62123        'fichier_original' => 'Fichier original : ',
    63124        'donnees_exif' => 'Données EXIF',
    64        
    65125        'tester' => 'Tester',
    66126        'valider' => 'Appliquer',
    67        
    68         'limite_versions_public' => 'Les versions précédentes sont limitées à @limite@',
    69127        'revenir_version' => 'Revenir à la version&nbsp;:',
    70128        'supprimer_version' => 'Supprimer la version&nbsp;:',
    71        
    72        
    73129        'image_taille_actuelle' => 'Taille actuelle de l\'image&nbsp;:',
    74        
    75 
    76         'explication_image_flip_horizontal' => 'Appliquer un effet de « miroir » selon un axe horizontal (Aucun réglage nécessaire).',
    77         'explication_image_flip_vertical' => 'Appliquer un effet de « miroir » selon un axe vertical (Aucun réglage nécessaire).',     
    78         'explication_image_flou' => 'Le filtre image_flou rend l\'image... floue. On peut lui passer en paramètre un nombre compris entre 1 et 11, définissant l’intensité du flou (de 1 à 11 pixels de flou).',
    79         'explication_image_gamma' => 'Le filtre Gamma change la luminosité d\'une image.<br />Il rend une image plus claire ou plus foncée.<br />Son paramètre est compris entre -254 et 254. Les valeurs supérieures à zéro rendent l\'image plus claire (254 rend toute l\'image entièrement blanche); les valeurs négatives rendent l\'image plus foncée (-254 rend l\'image complètement noire).',
    80         'explication_image_nb' => 'Transforme l\'image en noir et blanc',
    81         'explication_image_niveau_de_gris_auto' => 'Correction automatique des niveaux de l\'image.<br />(Ne nécessite pas de paramètres).',
    82         'explication_image_recadre' => 'Recadre l\'image en fonction de la sélection de l\'utilisateur.',
    83         'explication_image_saturation_desaturation' => 'Ce filtre va saturer ou désaturer les couleurs d’une image.<br />La luminosité de l’image et le contraste sont inchangés<br />Dans le premier cas, la couleur est « affadie » ; l’effet, utilisé subtilement, donnera des tonalités de photographie vieillie...<br />Dans l’autre cas, à l’inverse, le même filtre pourra «doper» les couleurs.',
    84         'explication_image_sincity' => 'Ce filtre donne un aspect "Sin City" (Ne nécessite aucun réglage).<br />Il exécute une désaturation contrastée et une accentuation du rouge.',
    85         'explication_image_rotation' => 'Fait tourner l’image d’un angle égal au paramètre passé. Les valeurs positives sont dans le sens des aiguilles d’une montre et inversement.<br />Attention : ce filtre modifie les dimensions de l’image.',
    86         'explication_tourner' => 'Appliquer une rotation de 90, 180 ou 270 degrés à l\'image<br />Ce filtre ne peut &ecirc;tre testé, il ne peut &ecirc;tre qu\'appliqué.',
    87        
    88         'label_angle_rotation' => 'Angle de rotation&nbsp:',
    89         'label_couleur_sepia' => 'Couleur&nbsp;:',
    90         'label_image_flip_vertical' => 'Flip Vertical de l\'image',
    91         'label_image_flip_horizontal' => 'Flip Horizontal de l\'image',
    92         'label_image_flou' => 'Filtre Flou',
    93         'label_image_gamma' => 'Filtre Gamma',
    94         'label_image_nb' => 'Filtre Noir et Blanc',
    95         'label_image_niveau_de_gris_auto' => 'Niveaux automatiques',
    96         'label_image_recadre' => 'Recadrer l\'image',
    97         'label_image_rotation' => 'Rotation manuelle de l\'image',
    98         'label_image_saturation_desaturation' => 'Filtre [Dé-]saturation',
    99         'label_image_sepia' => 'Filtre Sepia',
    100         'label_image_sincity' => 'Filtre Sin City',
    101         'label_niveau_flou' => 'Niveau de flou&nbsp;:',
    102         'label_niveau_gamma' => 'Niveau Gamma&nbsp;:',
    103         'label_niveau_saturation_desaturation' => 'Niveau de saturation&nbsp;:',
    104         'label_ratio' => 'Ratio de la sélection&nbsp;:',
    105         'label_ratio_libre' => 'Libre',
    106         'label_recadre_height' => 'Hauteur de la sélection (en px)&nbsp;:',
    107         'label_recadre_width' => 'Largeur de la sélection (en px)&nbsp;:',     
    108         'label_recadre_x1_y1' => 'Position (coin supérieur gauche)',   
    109         'label_recadre_x2_y2' => 'Position (coin inférieur droit)',
    110         'label_tourner' => 'Rotation paramètrée',
    111         'label_tourner_90' => 'Tourner de 90 degrés (dans le sens des aiguilles d\'une montre)',
    112         'label_tourner_180' => 'Tourner de 180 degrés (dans le sens des aiguilles d\'une montre)',
    113         'label_tourner_270' => 'Tourner de 270 degrés (dans le sens des aiguilles d\'une montre)',
    114         'legende_filtres_de_couleur' => 'Filtres de coloration',
    115         'legende_filtres_format' => 'Modifier le format',
    116         'legende_filtres_supplementaires' => 'Filtres supplémentaires',
    117        
    118130       
    119131        //aide
  • _plugins_/photospip/trunk/photospip_fonctions.php

    r61553 r61588  
    6464                                $dst_img = $filtre($src,$params[0],$params[1],$params[2]);
    6565                                spip_log("$filtre($src,$params[0],$params[1],$params[2]);","photospip");
     66                        }else if(in_array($filtre, array('image_passe_partout','image_reduire'))){
     67                                $dst_img = $filtre($src,$params[0],$params[1]);
     68                                spip_log("$filtre($src,$params[0],$params[1]);","photospip");
    6669                        }
    6770                        else{
     
    7982                return false;
    8083        }
    81 
     84        spip_log($dst_img,'photospip');
     85        if (preg_match(',^(.*)\?date=(\d+).([^.]+)$,', $dst_img, $match)) {
     86                $dst_img = $match[1];
     87        }
     88        //$dst_img = preg_replace(',\?date=\d+$,','', $dst_img);
    8289        if(preg_match("/\.(png|gif|jpe?g|bmp)$/i", $src, $regs)) {
    8390                switch($regs[1]) {
     
    112119        }
    113120
    114         if (!$src_img) {
    115                 spip_log("photospipfiltre : image non lue, $src","photospip");
    116                 return false;
    117         }
    118 
    119         $size=getimagesize($src);
    120         if (!($size[0] * $size[1])) return false;
     121        //if (!$src_img) {
     122        //      spip_log("photospipfiltre : image non lue, $src","photospip");
     123        //      return false;
     124        //}
     125        //spip_log($src_img,'photospip');
    121126
    122127        ImageInterlace($src_img,0);
    123128
    124129        $save($src_img,$dest);
     130        $size=getimagesize($dest);
     131        spip_log($size,'photospip');
     132        if (!($size[0] * $size[1])) return false;
     133       
    125134        spip_log("dest $dest","photospip");
    126135        return true;
  • _plugins_/photospip/trunk/photospip_pipelines.php

    r61553 r61588  
    5656 * Ajouter le lien vers l'édition de l'image
    5757 *
    58  * @param string $flux
    59  * @return string
     58 * @param array $flux
     59 * @return array $flux
    6060 */
    61 function photospip_document_desc_actions($flux = '') {
     61function photospip_document_desc_actions($flux) {
    6262        $id_document = $flux['args']['id_document'];
    6363        $infos = sql_fetsel('distant,extension', 'spip_documents', 'id_document=' . intval($id_document));
     
    7474        return $flux;
    7575}
     76
     77/**
     78 * Insertion dans le pipeline formulaire_verifier (SPIP)
     79 * On vérifie le contenu du formulaire de configuration
     80 *
     81 * @param array $flux
     82 * @return array $flux
     83 */
     84function photospip_formulaire_verifier($flux){
     85        if ($flux['args']['form']=='configurer_photospip'){
     86                if(count(_request('resultats')) == 0){
     87                        $flux['data']['resultats'] = _T('photospip:erreur_selectionner_au_moins_une_valeur');
     88                }
     89        }       
     90        return $flux;
     91}
    7692?>
  • _plugins_/photospip/trunk/plugin.xml

    r61553 r61588  
    3838                <inclure>base/photospip.php</inclure>
    3939        </pipeline>
    40        
    41         <necessite id='cfg' version='[1.10.1;]' />
     40        <pipeline>
     41                <nom>formulaire_verifier</nom>
     42                <inclure>photospip_pipelines.php</inclure>
     43        </pipeline>
     44        <utilise id='cfg' version='[1.10.1;]' />
    4245        <necessite id="palette" version='[1.3.4;]' />
    4346        <necessite id="medias" version='[1.6.12;]' />
    4447        <necessite id="jqueryui" version='[1.8.19;]' />
     48        <necessite id="spip_bonux" version='[2.3.0;]' />
    4549        <necessite id="SPIP" version='[2.1.13;2.1.99]' />
    4650        <necessite id="lib:jquery.imgareaselect-0.9.8" src="http://odyniec.net/projects/imgareaselect/jquery.imgareaselect-0.9.8.zip" />
  • _plugins_/photospip/trunk/prive/navigation/image_edit.html

    r61508 r61588  
    11<BOUCLE_doc(DOCUMENTS){id_document}{tout}>
    22<div id="versions">
    3         <h4><:photospip:versions_precedentes:></h4>
     3        <h3><:photospip:titre_versions_precedentes:></h3>
    44                <B_interd>
    55                <div class="infos">
    66                        #ANCRE_PAGINATION
    7                         <p><:photospip:limite_versions_public{limite=#CONFIG{photospip/limite_version}}:></p>
     7                        <p><:photospip:message_limite_versions{limite=#CONFIG{photospip/limite_version}}:></p>
    88                        <BOUCLE_interd(DOCUMENTS_INTERS){id_document}{par maj}{inverse}{pagination 10}>
    99                                <div class="version">
     
    1818                                                        </label>
    1919                                                        <input type="hidden" name="redirect" value="[(#SELF)]" />
    20                                                         [(#VERSION|=={1}|non)<button type="submit" name="action_faire" class="delete_version"  value="supprimer" onclick="AjaxNamedSubmit(this)" title="<:photospip:supprimer_version:> #VERSION">
     20                                                        [(#VERSION|=={1}|non)<button type="submit" name="action_faire" class="delete_version"  value="supprimer" title="<:photospip:supprimer_version:> #VERSION">
    2121                                                                <img src="[(#CHEMIN{images/delete_version.png}|image_sepia{86B900}|extraire_attribut{src})]" alt="<:photospip:supprimer_version:> #VERSION" />
    2222                                                        </button>]
    23                                                         <button type="submit" name="action_faire" value="revenir" class="revenir_version" onclick="AjaxNamedSubmit(this)" title="<:photospip:revenir_version:> #VERSION">
     23                                                        <button type="submit" name="action_faire" value="revenir" class="revenir_version" title="<:photospip:revenir_version:> #VERSION">
    2424                                                                <img src="[(#CHEMIN{images/revenir_version.png}|image_sepia{86B900}|extraire_attribut{src})]" alt="<:photospip:revenir_version:> #VERSION" />
    2525                                                        </button>
     
    3131                </div>
    3232                </B_interd>
    33                 <:photospip:pas_de_versions:>
     33                <:photospip:message_pas_de_versions:>
    3434                <//B_interd>
    35                 <h4><:photospip:informations_images:></h4>
     35                <h3><:photospip:titre_informations_images:></h3>
     36                <h4 class="#_doc:EDIT{titre}">[(#TITRE|sinon{[(#FICHIER|basename)]})]</h4>
    3637                <div class="infos">
    37                         <h5 class="#_doc:EDIT{titre}">[(#TITRE|sinon{[(#FICHIER|basename)]})]</h5>
    3838                        <div id="infos_doc_sup">
    3939                                <p><:photospip:id_document:>#ID_DOCUMENT</p>
Note: See TracChangeset for help on using the changeset viewer.