Пример #1
0
function spiplistes_dater_envoi (
	$type_objet, $id_objet, $statut_objet
	, $flag_autorise
	, $titre_boite
	, $date_debut_envoi
	, $btn_nom_valider, $enveloppe_formulaire = true
) {
	global $spip_lang_left, $spip_lang_right;
	
	if($statut_objet=='vide') {
		return(false);
	}
	
	$date_valide = spiplistes_date_heure_valide($date_debut_envoi);

	$courrier_editable = 
		($type_objet == 'courrier')
		&&	(
			($statut_objet == _SPIPLISTES_COURRIER_STATUT_REDAC) 
			|| ($statut_objet == _SPIPLISTES_COURRIER_STATUT_ENCOURS)
		)
		;
	$liste_editable = 
		($type_objet == 'liste')
		&& in_array($statut_objet, explode(";", _SPIPLISTES_LISTES_STATUTS_OK))
		;
		
	if($flag_autorise && ($courrier_editable || $liste_editable)) {

		if(!$date_valide) {
			// propose date maintenant par défaut
			$date_debut_envoi = normaliser_date(time());
			$date_valide = spiplistes_date_heure_valide($date_debut_envoi);
		}

		list($annee, $mois, $jour, $heure, $minute, $seconde) = $date_valide;
		
		$js = "size='1' class='fondl'";
		
		if($enveloppe_formulaire)
			$js .= "onchange=\"findObj_forcer('valider_date').style.visibility='visible';\"";
		
		$invite = ""
			. "<span class='verdana1 titre-boite-date'>"
			. "<span class='titre'>" . $titre_boite . "</span>"
			. ": "
			.	(
				(!$date_valide)
				? "<span class='gray'>" . _T('spiplistes:date_non_precisee') . "</span>" 
				: "<span class='date'>" . affdate_heure($date_debut_envoi) . "</span>"
				)
			.  "</span>\n"
			;
		
		$masque = 
			afficher_jour($jour, "name='jour' $js", true)
			. afficher_mois($mois, "name='mois' $js", true)
			. afficher_annee($annee, "name='annee' $js")
			. " - "
			. afficher_heure($heure, "name='heure' $js")
			. afficher_minute($minute, "name='minute' $js")
			. "&nbsp;\n"
			;

		if($enveloppe_formulaire) {
			$masque = ""
				. "<!-- dater_envoi form -->\n"
				. "<form action='".generer_url_ecrire(_SPIPLISTES_EXEC_COURRIER_GERER,'id_$type_objet='.$id_objet)."' method='post' style='margin: 5px; margin-$spip_lang_left: 20px;'>\n"
				. $masque
				. "<input type='submit' name='$btn_nom_valider' id='valider_date' "
					.	(
						($date_valide)
						? "value=\""._T('bouton_changer')."\" class='fondo visible_au_chargement'"
						: "value=\""._T('bouton_valider')."\" class='fondo'"
						)
				. "/>"
				. "</form>\n"
				;
		}

		$result = block_parfois_visible('daterblock', $invite, $masque, 'text-align: left');
	} 
	else {
		$result = ""
			. "<div style='text-align:center;'>"
			. "<span class='verdana1 titre-boite-date'><span class='titre'>"
			.	(
				($statut_objet == 'encour')
				? _T('spiplistes:courrier_en_cours_')
				: _T('spiplistes:date_expedition_')
				)
			. "</span>: <span class='date'>"
			.	(
				($date_valide)
				? affdate_heure($date_debut_envoi)
				: _T('spiplistes:attente_validation')
				)
			. "</span></span>"
			. "</div>\n"
			;
	}
	if(!empty($result)) {
		$result = ""
			. "<div style='margin-top:1ex;clear:right;'>" 
			. debut_cadre_couleur('',true) 
			. $result 
			. fin_cadre_couleur(true) 
			. "</div>\n"
			;
	}
	return ($result);
}
Пример #2
0
function date_formulaire_legender($date, $id_document) {

	if (preg_match(",([0-9]{4})-([0-9]{2})-([0-9]{2}) ([0-9]{2}):([0-9]{2}),", $date, $regs)){
		$mois = $regs[2];
		$jour = $regs[3];
		$annee = $regs[1];
		$heure = $regs[4];
		$minute = $regs[5];
	}

	return  "<div>"._T('info_mise_en_ligne')."<br />\n" .
		afficher_jour($jour, "name='jour_doc' id='jour_doc$id_document' size='1' class='spip_xx-small'\n\tonchange=\"changeVisible(true, 'valider_doc$id_document', 'block', 'block');\"") .
		afficher_mois($mois, "name='mois_doc' id='mois_doc$id_document' size='1' class='spip_xx-small'\n\tonchange=\"changeVisible(true, 'valider_doc$id_document', 'block', 'block');\"") .
		afficher_annee($annee, "name='annee_doc' id='annee_doc$id_document' size='1' class='spip_xx-small'\n\tonchange=\"changeVisible(true, 'valider_doc$id_document', 'block', 'block')\"") .
		"<br />".
		afficher_heure($heure, "name='heure_doc' size='1' class='spip_xx-small'\n\tonchange=\"changeVisible(true, 'valider_doc$id_document', 'block', 'block')\"") . 
			" : ".
		afficher_minute($minute, "name='minute_doc' size='1' class='spip_xx-small'\n\tonchange=\"changeVisible(true, 'valider_doc$id_document', 'block', 'block')\"") . 
		"<br /><br /></div>\n";

}
Пример #3
0
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);
}