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

#FORMULAIRE_CONFIGURER_REDUCTEUR remplace configurer/reducteur

a verifier dans IE7 qui gere mal les <button>
parent 2ca66836
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -76,7 +76,6 @@ ecrire/configuration/avertisseur.php -text
ecrire/configuration/index.php -text
ecrire/configuration/moderniseur_html.php -text
ecrire/configuration/previsualiseur.php -text
ecrire/configuration/reducteur.php -text
ecrire/configuration/relayeur.php -text
ecrire/core.xml -text
ecrire/exec/403.php -text
......@@ -373,6 +372,8 @@ prive/formulaires/configurer_preferences.html -text
prive/formulaires/configurer_preferences.php -text
prive/formulaires/configurer_redacteurs.html -text
prive/formulaires/configurer_redacteurs.php -text
prive/formulaires/configurer_reducteur.html -text
prive/formulaires/configurer_reducteur.php -text
prive/formulaires/configurer_rubriques.html -text
prive/formulaires/configurer_rubriques.php -text
prive/formulaires/configurer_transcodeur.html -text
......
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2010 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation');
include_spip('inc/config');
function configuration_reducteur_dist()
{
global $spip_lang_left, $spip_lang_right;
$image_process = _request('image_process');
// application du choix de vignette
if ($image_process) {
// mettre a jour les formats graphiques lisibles
switch ($image_process) {
case 'gd1':
case 'gd2':
$formats_graphiques = $GLOBALS['meta']['gd_formats_read'];
break;
case 'netpbm':
$formats_graphiques = $GLOBALS['meta']['netpbm_formats'];
break;
case 'convert':
case 'imagick':
$formats_graphiques = 'gif,jpg,png';
break;
default: #debug
$formats_graphiques = '';
$image_process = 'non';
break;
}
ecrire_meta('formats_graphiques', $formats_graphiques,'non');
ecrire_meta('image_process', $image_process,'non');
} else $formats_graphiques = $GLOBALS['meta']["formats_graphiques"];
$nb_process = 0;
$res = '';
// Tester les formats
if ( /* GD disponible ? */
function_exists('ImageGif')
OR function_exists('ImageJpeg')
OR function_exists('ImagePng')
) {
$res .= afficher_choix_vignette($p = 'gd1');
if (function_exists("ImageCreateTrueColor")) {
$res .= afficher_choix_vignette($p = 'gd2');
}
}
if (_PNMSCALE_COMMAND!='') {
$res .= afficher_choix_vignette($p = 'netpbm');
}
if (function_exists('imagick_readimage')) {
$res .=afficher_choix_vignette('imagick');
}
if (_CONVERT_COMMAND!='') {
$res .= afficher_choix_vignette($p = 'convert');
}
$test_out = "";
if ($GLOBALS['meta']['image_process']=='gd1' OR $GLOBALS['meta']['image_process']=='gd2') {
effacer_meta('max_taille_vignettes');
$test_out .= "<p>"._T('info_taille_maximale_images')."</p>";
$time = time();
$url = generer_url_action("tester_taille", "arg=3000&time=$time");
$test_out .= "<iframe style='border:0;height:3em;overflow:hidden;' src='$url'></iframe>";
$test_out .= "<br style='clear:both;' />";
}
else {
effacer_meta('max_taille_vignettes');
}
return ajax_action_greffe("configurer-reducteur", '',
debut_cadre_trait_couleur("image-24.gif", true, "", _T("info_image_process_titre"))
. "<p class='verdana2'>"
. _T('info_image_process')
. "</p>"
. $res
. "<br class='nettoyeur' />"
. _T('info_image_process2')
. $test_out
. (!$formats_graphiques ? '' : format_choisi())
. fin_cadre_trait_couleur(true));
}
function format_choisi()
{
global $spip_lang_left, $spip_lang_right;
$creer_preview = $GLOBALS['meta']["creer_preview"];
$taille_preview = $GLOBALS['meta']["taille_preview"];
if ($taille_preview < 10) $taille_preview = 120;
$res .= "<p class='verdana2'>";
$res .= _T('info_ajout_image');
$res .= "</p>\n";
$res .= "<div class='verdana2'>";
$res .= bouton_radio("creer_preview", "oui", _T('item_choix_generation_miniature'), $creer_preview == "oui", "changeVisible(this.checked, 'config-preview', 'block', 'none');");
$res .= '</div>';
if ($creer_preview == "oui") $style = "block;"; else $style = "none;";
$res .= "<div id='config-preview' class='verdana2' style='display: $style margin-$spip_lang_left: 40px;'>"
. "<label for='taille_preview'>"
._T('info_taille_maximale_vignette')
. "</label>"
. "<br /><input type='text' name='taille_preview' id='taille_preview' value='$taille_preview' class='fondl' size='5' />";
$res .= " "._T('info_pixels');
$res .= '<br /><br />';
$res .= "</div>";
$res .= bouton_radio("creer_preview", "non", _T('item_choix_non_generation_miniature'), $creer_preview != "oui", "changeVisible(this.checked, 'config-preview', 'none', 'block');");
return
debut_cadre_relief("", true, "", _T('info_generation_miniatures_images'))
. ajax_action_post('configuration', 'reducteur', 'config_fonctions', '#configurer-reducteur', $res)
. fin_cadre_relief(true);
}
// http://doc.spip.org/@afficher_choix_vignette
function afficher_choix_vignette($process) {
//global $taille_preview;
$taille_preview = 120;
// Ici on va tester les capacites de GD independamment des tests realises
// dans les images spip_image -- qui servent neanmoins pour la qualite
/* if (function_exists('imageformats')) {
} */
$class = '';
if ($process == $GLOBALS['meta']['image_process']) {
$class = " selected";
}
return "\n<div class='vignette_reducteur$class'"
. "><a href='"
. generer_url_ecrire("config_fonctions", "image_process=$process")
. "'><img src='"
. generer_url_action("tester", "arg=$process&time=".time())
. "' alt='$process' /></a><span>$process</span></div>\n";
}
?>
<div class="formulaire_spip formulaire_configurer formulaire_#FORM formulaire_#FORM-#ENV{id,nouveau}">
<h3 class='titrem'><img src="#CHEMIN_IMAGE{image-24.png}" class="cadre-icone" /><:info_generation_miniatures_images:></h3>
[<p class="reponse_formulaire reponse_formulaire_ok">(#ENV*{message_ok})</p>]
[<p class="reponse_formulaire reponse_formulaire_erreur">(#ENV*{message_erreur})</p>]
[(#ENV{editable})
<form method='post' action='#ENV{action}' enctype='multipart/form-data'><div>
[(#REM) declarer les hidden qui declencheront le service du formulaire
parametre : url d'action ]
#ACTION_FORMULAIRE{#ENV{action}}
<input type='submit' class='submit' value='<:bouton_enregistrer:>' style="display:none;"/>
<ul>
#SET{name,image_process}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="haut editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label for="#GET{name}"><:info_image_process:>#AIDER{logoart}</label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]
#SET{process,gd1}
[<button
type="submit"
class="vignette_reducteur[(#ENV{image_process}|=={#GET{process}}|oui)selected]"
style="background-image:url((#GET{process}|url_vignette_choix));"
name="image_process_#EVAL{chr(91)}[(#GET{process})]#EVAL{chr(93)}">
[(#GET{process}|strtoupper)]
</button>]
#SET{process,gd2}
[<button
type="submit"
class="vignette_reducteur[(#ENV{image_process}|=={#GET{process}}|oui)selected]"
style="background-image:url((#GET{process}|url_vignette_choix));"
name="image_process_#EVAL{chr(91)}[(#GET{process})]#EVAL{chr(93)}">
[(#GET{process}|strtoupper)]
</button>]
#SET{process,netpbm}
[<button
type="submit"
class="vignette_reducteur[(#ENV{image_process}|=={#GET{process}}|oui)selected]"
style="background-image:url((#GET{process}|url_vignette_choix));"
name="image_process_#EVAL{chr(91)}[(#GET{process})]#EVAL{chr(93)}">
[(#GET{process}|strtoupper)]
</button>]
#SET{process,imagick}
[<button
type="submit"
class="vignette_reducteur[(#ENV{image_process}|=={#GET{process}}|oui)selected]"
style="background-image:url((#GET{process}|url_vignette_choix));"
name="image_process_#EVAL{chr(91)}[(#GET{process})]#EVAL{chr(93)}">
[(#GET{process}|strtoupper)]
</button>]
#SET{process,convert}
[<button
type="submit"
class="vignette_reducteur[(#ENV{image_process}|=={#GET{process}}|oui)selected]"
style="background-image:url((#GET{process}|url_vignette_choix));"
name="image_process_#EVAL{chr(91)}[(#GET{process})]#EVAL{chr(93)}">
[(#GET{process}|strtoupper)]
</button>]
<p class="explication"><:info_image_process2:></p>
</li>
[(#ENV{image_process}|match{^(gd1|gd2)$}|oui)
#SET{name,max_taille_vignettes}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="long_label editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
<label for="#GET{name}"><:info_taille_maximale_images:></label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]<iframe style='border:0;height:3em;overflow:hidden;' src='[(#SELF|parametre_url{action,tester_taille}|parametre_url{arg,3000}||parametre_url{time,#EVAL{time()}})]'></iframe>
</li>
][(#ENV{formats_graphiques}|oui)
<li class="fieldset">
<fieldset><legend><:info_generation_miniatures_images:></legend>
<p><:info_ajout_image:></p>
<ul>
#SET{name,creer_preview}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]">
[
<span class='erreur_message'>(#GET{erreurs})</span>
]<div class="choix">
<input type="radio" name="#GET{name}" id="#GET{name}_non" value="non"
onchange="if ($(this).attr('checked')) $('.editer_taille_preview').hide('fast');"
[(#ENV{#GET{name}}|=={oui}|non)checked="checked"] /><label for="#GET{name}_non"><:item_choix_non_generation_miniature:></label>
</div>
<div class="choix">
<input type="radio" name="#GET{name}" id="#GET{name}_oui" value="oui"
onchange="if ($(this).attr('checked')) $('.editer_taille_preview').show('fast');"
[(#ENV{#GET{name}}|=={oui}|oui)checked="checked"] /><label for="#GET{name}_oui"><:item_choix_generation_miniature:></label>
</div>
</li>
#SET{name,taille_preview}#SET{erreurs,#ENV**{erreurs}|table_valeur{#GET{name}}}
<li class="editer_[(#GET{name})][ (#GET{obli})][ (#GET{erreurs}|oui)erreur]"[(#ENV{creer_preview}|=={oui}|non)style='display:none;']>
<label for="#GET{name}"><:info_taille_maximale_vignette:></label>[
<span class='erreur_message'>(#GET{erreurs})</span>
]<input type='text' name='#GET{name}' id='#GET{name}' value='#ENV{#GET{name}}' />
</li>
</ul>
</fieldset>
</li>
]
</ul>
[(#REM) ajouter les saisies supplementaires : extra et autre, a cet endroit ]
<!--extra-->
<p class='boutons'><span class='image_loading'>&nbsp;</span><input type='submit' class='submit' value='<:bouton_enregistrer:>' /></p>
</div></form>
]
</div>
\ No newline at end of file
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2010 *
* Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
* *
* Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
* Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
\***************************************************************************/
if (!defined("_ECRIRE_INC_VERSION")) return;
function formulaires_configurer_reducteur_charger_dist(){
foreach(array(
"image_process",
"formats_graphiques",
"creer_preview",
"taille_preview",
) as $m)
$valeurs[$m] = $GLOBALS['meta'][$m];
$valeurs['taille_preview'] = intval($valeurs['taille_preview']);
if ($valeurs['taille_preview']<10)
$valeurs['taille_preview'] = 120;
return $valeurs;
}
function formulaires_configurer_reducteur_traiter_dist(){
$res = array('editable'=>true);
if (is_array($image_process = _request('image_process_'))) {
$image_process = array_keys($image_process);
$image_process = reset($image_process);
// application du choix de vignette
if ($image_process) {
// mettre a jour les formats graphiques lisibles
switch ($image_process) {
case 'gd1':
case 'gd2':
$formats_graphiques = $GLOBALS['meta']['gd_formats_read'];
break;
case 'netpbm':
$formats_graphiques = $GLOBALS['meta']['netpbm_formats'];
break;
case 'convert':
case 'imagick':
$formats_graphiques = 'gif,jpg,png';
break;
default: #debug
$formats_graphiques = '';
$image_process = 'non';
break;
}
ecrire_meta('formats_graphiques', $formats_graphiques,'non');
ecrire_meta('image_process', $image_process,'non');
}
}
foreach(array(
"creer_preview",
"taille_preview",
) as $m)
if (!is_null($v=_request($m)))
ecrire_meta($m, $v=='oui'?'oui':'non');
$res['message_ok'] = _T('config_info_enregistree');
return $res;
}
function url_vignette_choix($process){
switch ($process){
case 'gd2':
if (!function_exists("ImageCreateTrueColor"))
return '';
case 'gd1':
if (!function_exists('ImageGif')
AND !function_exists('ImageJpeg')
AND !function_exists('ImagePng'))
return '';
break;
case 'netpbm':
if (_PNMSCALE_COMMAND=='')
return '';
break;
case 'imagick':
if (!function_exists('imagick_readimage'))
return '';
break;
case 'convert':
if (_CONVERT_COMMAND=='')
return '';
break;
}
return generer_url_action("tester", "arg=$process&time=".time());
}
[(#AUTORISER{configurer,interactions}|interdire_acces)]
<h1><:onglet_fonctions_avances:></h1>
<div class="ajax">
#FORMULAIRE_CONFIGURER_REDUCTEUR
</div>
<?php
include_spip('inc/presentation');
$reducteur = charger_fonction('reducteur', 'configuration');
$avertisseur = charger_fonction('avertisseur', 'configuration');
$previsualiseur = charger_fonction('previsualiseur', 'configuration');
$relayeur = charger_fonction('relayeur', 'configuration');
......@@ -12,8 +15,6 @@
echo
$reducteur(), // Creation automatique de vignettes
$avertisseur(), // Notification de modification des articles
$previsualiseur(), // Previsualisation sur le site public
......
......@@ -693,10 +693,10 @@ td.vu { background: #ccc; }
.upload_message ol li {padding: 2px;}
/* config/reducteur */
.vignette_reducteur { text-align: center; vertical-align: middle; float: #GET{left}; padding:2px; border:2px solid #fff; width:150px; height:170px; }
.vignette_reducteur.selected { font-weight: bold; border:2px dotted #GET{claire}; }
.vignette_reducteur span { display: block; }
.formulaire_configurer_reducteur .vignette_reducteur {text-align: center; float: #GET{left};padding:2px; border:2px solid #ddd; width:154px;padding-top:150px;margin:2px;background-position: top center;background-repeat: no-repeat;}
.formulaire_configurer_reducteur .vignette_reducteur:hover {border-color:#bbb;}
.formulaire_configurer_reducteur .vignette_reducteur.selected { font-weight: bold; border:2px dotted #GET{claire}; }
.formulaire_configurer_reducteur .vignette_reducteur.selected:hover {border-color:#GET{foncee};}
/* pour les puces de changement rapide de statut ; NB: ca buggue car ca s'affiche en-dessous du cadre */
li .puce_statut { float: #GET{left}; padding-top: 5px; }
......
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