File "dater.php"
Full path: /home/meharicl/www/ecrire/inc/dater.php
File
size: 5.97 B
MIME-type: text/x-php
Charset: utf-8
Download Open Edit Advanced Editor Back
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2016 *
* 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/texte');
include_spip('inc/actions');
include_spip('inc/date');
// http://doc.spip.org/@inc_dater_dist
function inc_dater_dist($id, $flag, $statut, $type, $script, $date, $date_redac='', $fct_ajax='')
{
$possedeDateRedac = !preg_match("/([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]{2}):([0-9]{2}))?/", $date_redac, $regs) ? false : (($regs[1] + $regs[2] + $regs[3]) ? $regs : false);
if ($flag) {
$res = dater_ecriture($id, $possedeDateRedac, $statut, $type, $script, $date, $date_redac, $fct_ajax);
} else {
$res = dater_lecture($date, $date_redac, $possedeDateRedac,
(($statut == 'publie' OR $type != 'article')
? _T('texte_date_publication_article')
: _T('texte_date_creation_article')));
}
return ajax_action_greffe("dater", $id, $res);
}
function dater_lecture($date, $date_redac, $possedeDateRedac, $label)
{
$res = "<div style='text-align:center;'><b> <span class='verdana1'>"
. $label
. "</span> "
. majuscules(affdate($date))."</b>".aide('artdate')."</div>";
if ($possedeDateRedac) {
$res .= "<div style='text-align:center;'><b><span class='verdana1'>"
. _T('texte_date_publication_anterieure')
. "</span> "
. ' : '
. majuscules(affdate($date_redac))
. "</b>"
. aide('artdate_redac')
. "</div>";
}
return $res;
}
function dater_ecriture($id, $possedeDateRedac, $statut, $type, $script, $date, $date_redac, $fct_ajax) {
global $spip_lang_left, $spip_lang_right, $debut_date_publication;
if ($possedeDateRedac) {
$annee_redac = $possedeDateRedac[1];
$mois_redac = $possedeDateRedac[2];
$jour_redac = $possedeDateRedac[3];
$heure_redac = $possedeDateRedac[5];
$minute_redac = $possedeDateRedac[6];
if ($annee_redac > 4000) $annee_redac -= 9000;
} else $annee_redac = $mois_redac = $jour_redac = 0;
include_spip('inc/autoriser');
if (autoriser('dater',$type,$id,null,array('statut'=>$statut))) {
$res = dater_ajax($id, $type, $script, $date, $fct_ajax, $debut_date_publication);
if ($res) {
$invite = "<b><span class='verdana1'>"
. _T('texte_date_publication_article')
. '</span> '
. majuscules(affdate($date))
. "</b>"
. aide('artdate');
$res = block_parfois_visible("datepub-$id", $invite, $res, 'text-align: left');
}
} else {
if ($type == 'article')
$res = "\n<div style='padding-$spip_lang_left:7px;'><b> <span class='verdana1'>"
. _T('texte_date_creation_article')
. "</span>\n"
. majuscules(affdate($date))."</b>".aide('artdate')."</div>";
else
$res = "\n<div style='text-align:center;'><b>"
. majuscules(affdate($date))."</b></div>";
}
if (!(($type == 'article')
AND ($GLOBALS['meta']["articles_redac"] != 'non' OR $possedeDateRedac)))
return $res;
return $res . dater_redac($id, $type, $script, $possedeDateRedac, $date_redac, $fct_ajax);
}
function dater_redac($id, $type, $script, $possedeDateRedac, $date_redac, $fct_ajax)
{
if ($possedeDateRedac)
$date_affichee = majuscules(affdate($date_redac));
else
$date_affichee = majuscules(_T('jour_non_connu_nc'));
$invite = "<b>"
. "<span class='verdana1'>"
. majuscules(_T('texte_date_publication_anterieure'))
. '</span> '
. $date_affichee
. " "
. aide('artdate_redac')
. "</b>";
$js = "\"findObj_forcer('valider_date_redac-$id').style.visibility='visible';\"";
$label =
"<input type='radio' name='avec_redac' value='non' id='avec_redac_on$id'" .
($possedeDateRedac ? '' : " checked='checked'") .
" onclick=$js" .
" /> <label for='avec_redac_on$id'>" .
_T('texte_date_publication_anterieure_nonaffichee').
'</label>' .
"<br /><input type='radio' name='avec_redac' value='oui' id='avec_redac_off$id'" .
(!$possedeDateRedac ? '' : " checked='checked'") .
" onclick=$js /> <label for='avec_redac_off$id'>" .
_T('bouton_radio_afficher').
' :</label> ';
$masque = dater_ajax($id, $type, $script, $date_redac, $fct_ajax, 0, '_redac', $label, true);
return block_parfois_visible("dateredac-$id", $invite, $masque, 'text-align: left');
}
function dater_ajax($id, $type, $script, $date, $fct_ajax, $start=0, $suffixe='', $label='', $autre=false)
{
global $spip_lang_left, $spip_lang_right, $debut_date_publication;
if (!is_string($date)) return '';
preg_match("/([0-9]{4})-([0-9]{2})-([0-9]{2})( ([0-9]{2}):([0-9]{2}))?/", $date, $regs);
$annee = $regs[1];
if ($annee > 4000) $annee -= 9000;
$mois = $regs[2];
$jour = $regs[3];
$heure = $regs[5];
$minute = $regs[6];
$idom = "valider_date$suffixe-$id";
$js = " onchange=\"findObj_forcer('$idom').style.visibility='visible';\"";
$res = $label
. afficher_jour($jour, "name='jour$suffixe' $js", $autre)
. afficher_mois($mois, "name='mois$suffixe' $js", $autre)
. afficher_annee($annee, "name='annee$suffixe' $js", $start)
. (($type != 'article')
? ''
: (' - '
. afficher_heure($heure, "name='heure$suffixe' $js")
. afficher_minute($minute, "name='minute$suffixe' $js")))
. "<div class='nettoyeur'></div>";
$res = "<div style='margin-bottom: 5px; margin-$spip_lang_left: 20px;'>$res</div>";
return ajax_action_post("dater",
"$id/$type",
$script,
"id_$type=$id",
$res,
_T('bouton_changer'),
" style=' float:$spip_lang_right;position:relative;' class='visible_au_chargement' id='$idom'",
"",
"&id=$id&type=$type",
$fct_ajax);
}
?>