Skip to content
Extraits de code Groupes Projets
Valider 707038ac rédigé par esj's avatar esj
Parcourir les fichiers

Tâche #605 sur message_edit (création uniquement) avec conformité XHTML.

parent 040fdc2e
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -322,6 +322,7 @@ ecrire/action/documenter.php -text ...@@ -322,6 +322,7 @@ ecrire/action/documenter.php -text
ecrire/action/editer_article.php -text ecrire/action/editer_article.php -text
ecrire/action/editer_auteurs.php -text ecrire/action/editer_auteurs.php -text
ecrire/action/editer_breve.php -text ecrire/action/editer_breve.php -text
ecrire/action/editer_message.php -text
ecrire/action/editer_mot.php -text ecrire/action/editer_mot.php -text
ecrire/action/editer_rubrique.php -text ecrire/action/editer_rubrique.php -text
ecrire/action/editer_signatures.php -text ecrire/action/editer_signatures.php -text
......
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2006 *
* 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/filtres');
include_spip('base/abstract_sql');
// http://doc.spip.org/@action_editer_breve_dist
function action_editer_message_dist() {
$securiser_action = charger_fonction('securiser_action', 'inc');
$arg = $securiser_action();
if (preg_match(',^(\d+)$,', $arg, $r))
action_editer_message_post_vieux($arg); // pas encore fait.
elseif (preg_match(',^(\w+)$,', $arg, $r))
action_editer_message_post_nouveau($arg);
elseif (preg_match(',^(\w+)\W(\d+)$,', $arg, $r))
action_editer_message_post_nouveau($r[1], $r[2]);
elseif (preg_match(',^(\w+)\W(\d+-\d+-\d+)$,', $arg, $r))
action_editer_message_post_nouveau($r[1], '', $r[2]);
else spip_log("action_editer_message_dist $arg pas compris");
}
function action_editer_message_post_nouveau($type, $dest='', $rv='')
{
$id_auteur = $GLOBALS['auteur_session']['id_auteur'];
$mydate = date("YmdHis", time() - 2 * 24 * 3600);
spip_query("DELETE FROM spip_messages WHERE (statut = 'redac') AND (date_heure < $mydate)");
if ($type == 'pb') $statut = 'publie';
else $statut = 'redac';
$titre = filtrer_entites(_T('texte_nouveau_message'));
$id_message = spip_abstract_insert("spip_messages", "(titre, date_heure, statut, type, id_auteur)", "(" . _q($titre) . ", NOW(), '$statut', '$type', $id_auteur)");
if ($rv) {
spip_query("UPDATE spip_messages SET rv='oui', date_heure=" . _q($rv . ' 12:00:00') . ", date_fin= " . _q($rv . ' 13:00:00') . " WHERE id_message = $id_message");
}
if ($type != "affich"){
spip_abstract_insert('spip_auteurs_messages',
"(id_auteur,id_message,vu)",
"('$id_auteur','$id_message','oui')");
if ($dest) {
spip_abstract_insert('spip_auteurs_messages',
"(id_auteur,id_message,vu)",
"('$dest','$id_message','non')");
}
}
redirige_par_entete(generer_url_ecrire('message_edit', "id_message=$id_message&new=oui&dest=$dest",true));
}
?>
...@@ -153,7 +153,7 @@ function auteurs_interventions($id_auteur, $statut) ...@@ -153,7 +153,7 @@ function auteurs_interventions($id_auteur, $statut)
echo afficher_messages('<b>' . _T('info_vos_rendez_vous') . '</b>', ", spip_auteurs_messages AS lien, spip_auteurs_messages AS lien2", "lien.id_auteur=$connect_id_auteur AND lien2.id_auteur = $id_auteur AND statut='publie' AND type='normal' AND rv='oui' AND date_fin > NOW() AND lien.id_message=messages.id_message AND lien2.id_message=messages.id_message", $vus, false, false); echo afficher_messages('<b>' . _T('info_vos_rendez_vous') . '</b>', ", spip_auteurs_messages AS lien, spip_auteurs_messages AS lien2", "lien.id_auteur=$connect_id_auteur AND lien2.id_auteur = $id_auteur AND statut='publie' AND type='normal' AND rv='oui' AND date_fin > NOW() AND lien.id_message=messages.id_message AND lien2.id_message=messages.id_message", $vus, false, false);
icone_horizontale(_T('info_envoyer_message_prive'), generer_url_ecrire("message_edit", "new=oui&type=normal&dest=$id_auteur"), icone_horizontale(_T('info_envoyer_message_prive'), generer_action_auteur("editer_message","normal/$id_auteur"),
"message.gif"); "message.gif");
fin_cadre_couleur(); fin_cadre_couleur();
} }
......
...@@ -61,20 +61,20 @@ function http_calendrier_ics_message($annee, $mois, $jour, $large) ...@@ -61,20 +61,20 @@ function http_calendrier_ics_message($annee, $mois, $jour, $large)
$j= _T("lien_nouvelle_annonce"); $j= _T("lien_nouvelle_annonce");
return return
http_href(generer_url_ecrire("message_edit","rv=$annee-$mois-$jour&new=oui&type=pb"), http_href(generer_action_auteur("editer_message","pb/$annee-$mois-$jour"),
$bleu . ($large ? $b : ''), $bleu . ($large ? $b : ''),
$b, $b,
'color: blue;', 'color: blue;',
'calendrier-arial10') . 'calendrier-arial10') .
"\n" . "\n" .
http_href(generer_url_ecrire("message_edit","rv=$annee-$mois-$jour&new=oui&type=normal"), http_href(generer_action_auteur("editer_message","normal/$annee-$mois-$jour"),
$vert . ($large ? $v : ''), $vert . ($large ? $v : ''),
$v, $v,
'color: green;', 'color: green;',
'calendrier-arial10') . 'calendrier-arial10') .
(($GLOBALS['connect_statut'] != "0minirezo") ? "" : (($GLOBALS['connect_statut'] != "0minirezo") ? "" :
("\n" . ("\n" .
http_href(generer_url_ecrire("message_edit","rv=$annee-$mois-$jour&new=oui&type=affich"), http_href(generer_action_auteur("editer_message","affich/$annee-$mois-$jour"),
$jaune . ($large ? $j : ''), $jaune . ($large ? $j : ''),
$j, $j,
'color: #ff9900;', 'color: #ff9900;',
......
...@@ -14,128 +14,77 @@ if (!defined("_ECRIRE_INC_VERSION")) return; ...@@ -14,128 +14,77 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
include_spip('inc/presentation'); include_spip('inc/presentation');
include_spip('inc/date'); include_spip('inc/date');
include_spip('base/abstract_sql');
// http://doc.spip.org/@exec_message_edit_dist // http://doc.spip.org/@exec_message_edit_dist
function exec_message_edit_dist() function exec_message_edit_dist()
{ {
global global $connect_id_auteur, $connect_statut, $spip_lang_rtl;
$connect_id_auteur,
$connect_statut,
$dest,
$id_message,
$new,
$rv,
$spip_lang_rtl,
$type;
$id_message = intval($id_message);
$dest = intval($dest);
// Droits
if ($new=='oui') {
switch ($type) {
case 'affich':
$ok = ($connect_statut == '0minirezo');
break;
case 'pb':
case 'rv':
case 'normal':
$ok = true;
break;
default:
$ok = false;
}
if (!$ok) {
$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page(_T('info_acces_refuse'));
debut_gauche();
debut_droite();
echo "<b>"._T('avis_non_acces_message')."</b><p>";
echo fin_page();
exit;
}
$mydate = date("YmdHis", time() - 2 * 24 * 3600); $id_message = intval(_request('id_message'));
spip_query("DELETE FROM spip_messages WHERE (statut = 'redac') AND (date_heure < $mydate)"); $dest = intval(_request('dest'));
if ($type == 'pb') $statut = 'publie'; if (_request('new')=='oui') {
else $statut = 'redac'; $onfocus = " onfocus=\"if(!antifocus){this.value='';antifocus=true;}\"";
$titre = filtrer_entites(_T('texte_nouveau_message')); } else $onfocus = '';
$id_message = spip_abstract_insert("spip_messages", "(titre, date_heure, statut, type, id_auteur)", "(" . _q($titre) . ", NOW(), '$statut', '$type', $connect_id_auteur)");
if ($rv) {
spip_query("UPDATE spip_messages SET rv='oui', date_heure=" . _q($rv . ' 12:00:00') . ", date_fin= " . _q($rv . ' 13:00:00') . " WHERE id_message = $id_message");
}
if ($type != "affich"){
spip_abstract_insert('spip_auteurs_messages',
"(id_auteur,id_message,vu)",
"('$connect_id_auteur','$id_message','oui')");
if ($dest) {
spip_abstract_insert('spip_auteurs_messages',
"(id_auteur,id_message,vu)",
"('$dest','$id_message','non')");
}
else if ($type == 'normal') $ajouter_auteur = true;
}
$onfocus = " onfocus=\"if(!antifocus){this.value='';antifocus=true;}\"";
} else $onfocus = $ajouter_auteur = '';
$row = spip_fetch_array(spip_query("SELECT * FROM spip_messages WHERE id_message=$id_message")); $row = spip_fetch_array(spip_query("SELECT * FROM spip_messages WHERE id_message=$id_message"));
$id_message = $row['id_message']; $id_message = $row['id_message'];
$date_heure = $row["date_heure"]; $date_heure = $row["date_heure"];
$date_fin = $row["date_fin"]; $date_fin = $row["date_fin"];
$titre = entites_html($row["titre"]); $titre = entites_html($row["titre"]);
$texte = entites_html($row["texte"]); $texte = entites_html($row["texte"]);
$type = $row["type"]; $type = $row["type"];
$statut = $row["statut"]; $statut = $row["statut"];
$rv = $row["rv"]; $rv = $row["rv"];
$expediteur = $row["id_auteur"]; $expediteur = $row["id_auteur"];
$commencer_page = charger_fonction('commencer_page', 'inc'); if (!($expediteur == $connect_id_auteur OR ($type == 'affich' AND $connect_statut == '0minirezo'))) {
echo $commencer_page(_T('titre_page_message_edit'), "accueil", "messagerie"); echo minipres(_T('avis_non_acces_message'));
exit;
}
if (!($expediteur = $connect_id_auteur OR ($type == 'affich' AND $connect_statut == '0minirezo'))) die(); $commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page(_T('titre_page_message_edit'), "accueil", "messagerie");
if ($type == 'normal') { if ($type == 'normal') {
$le_type = _T('bouton_envoi_message_02'); $le_type = _T('bouton_envoi_message_02');
$logo = "message"; $logo = "message";
} }
if ($type == 'pb') { if ($type == 'pb') {
$le_type = _T('bouton_pense_bete'); $le_type = _T('bouton_pense_bete');
$logo = "pense-bete"; $logo = "pense-bete";
} }
if ($type == 'affich') { if ($type == 'affich') {
$le_type = _T('bouton_annonce'); $le_type = _T('bouton_annonce');
$logo = "annonce"; $logo = "annonce";
} }
echo generer_url_post_ecrire('message',"id_message=$id_message");
debut_gauche(); debut_gauche();
debut_droite(); debut_droite();
echo "<div class='arial2'>"; echo "<div class='arial2'>";
echo "<font face='Verdana,Arial,Sans,sans-serif' size='2' color='green'><b>$le_type</b></font><p>"; echo "<font face='Verdana,Arial,Sans,sans-serif' size='2' color='green'><b>$le_type</b></font>";
echo generer_url_post_ecrire('message',"id_message=$id_message");
if ($type == "affich") if ($type == "affich")
echo "<font face='Verdana,Arial,Sans,sans-serif' size='1' color='red'>"._T('texte_message_edit')."</font></p><p>"; echo "<p><font face='Verdana,Arial,Sans,sans-serif' size='1' color='red'>"._T('texte_message_edit')."</font></p>";
echo "\n<p><input type='hidden' name='modifier_message' value='oui'/>";
echo "<input type='hidden' name='modifier_message' value='oui'/>"; echo "\n<input type='hidden' name='id_message' value='$id_message'/>";
echo "<input type='hidden' name='id_message' value='$id_message'/>"; echo "\n<input type='hidden' name='changer_rv' value='$id_message'/>";
echo "<input type='hidden' name='changer_rv' value='$id_message'/>"; echo _T('texte_titre_obligatoire')."<br />\n";
echo _T('texte_titre_obligatoire')."<br />";
echo "<input type='text' class='formo' name='titre' value=\"$titre\" size='40' $onfocus />"; echo "<input type='text' class='formo' name='titre' value=\"$titre\" size='40' $onfocus />";
if ($ajouter_auteur) { if (!$dest) {
echo "</p><p><b>"._T('info_nom_destinataire')."</b><br />"; if ($type == 'normal') {
echo "<input type='text' class='formo' name='cherche_auteur' value='' size='40'/>"; echo "</p><p><b>"._T('info_nom_destinataire')."</b><br />";
} else if ($dest) { echo "<input type='text' class='formo' name='cherche_auteur' value='' size='40'/>";
}
} else {
$nom = spip_fetch_array(spip_query("SELECT nom FROM spip_auteurs WHERE id_auteur=$dest")); $nom = spip_fetch_array(spip_query("SELECT nom FROM spip_auteurs WHERE id_auteur=$dest"));
echo "</p><p><b>", echo "</p><p><b>",
_T('info_nom_destinataire'), _T('info_nom_destinataire'),
...@@ -143,7 +92,7 @@ debut_droite(); ...@@ -143,7 +92,7 @@ debut_droite();
$nom['nom'], $nom['nom'],
"<br /><br />"; "<br /><br />";
} }
echo "<p />"; echo "</p>";
////////////////////////////////////////////////////// //////////////////////////////////////////////////////
...@@ -154,16 +103,15 @@ debut_droite(); ...@@ -154,16 +103,15 @@ debut_droite();
afficher_si_rdv($date_heure, $date_fin, ($rv == "oui")); afficher_si_rdv($date_heure, $date_fin, ($rv == "oui"));
fin_cadre_trait_couleur(); fin_cadre_trait_couleur();
echo "<p><b>"._T('info_texte_message_02')."</b><br />"; echo "\n<p><b>"._T('info_texte_message_02')."</b><br />";
echo "<textarea name='texte' rows='20' class='formo' cols='40'>"; echo "<textarea name='texte' rows='20' class='formo' cols='40'>";
echo $texte; echo $texte;
echo "</textarea></p><br />\n"; echo "</textarea></p><br />\n";
echo "<p align='right'><input type='submit' name='valider' value='"._T('bouton_valider')."' class='fondo'/></p>"; echo "\n<p align='right'><input type='submit' name='valider' value='"._T('bouton_valider')."' class='fondo'/></p>";
echo "</div>";
echo "</form>"; echo "</form>";
echo "\n</div>";
echo fin_page(); echo fin_page();
} }
// http://doc.spip.org/@afficher_si_rdv // http://doc.spip.org/@afficher_si_rdv
...@@ -186,27 +134,32 @@ function afficher_si_rdv($date_heure, $date_fin, $choix) ...@@ -186,27 +134,32 @@ function afficher_si_rdv($date_heure, $date_fin, $choix)
$minutes_fin = 59; $minutes_fin = 59;
} }
$res = "<div><input type='radio' name='rv' value='non' id='rv_off'" . $res = _T('item_non_afficher_calendrier');
(!$choix ? "checked='checked' " : '') . if (!$choix) $res = "<b>$res</b>";
" onclick=\"changeVisible(this.checked, 'heure-rv', 'none', 'block');\"/>" .
"<label for='rv_off'>". echo "\n<div><input type='radio' name='rv' value='non' id='rv_off'" .
_T('item_non_afficher_calendrier'). (!$choix ? " checked='checked' " : '') .
"</label>"; "\nonclick=\"changeVisible(this.checked, 'heure-rv', 'none', 'block');\"/>" .
echo ($choix ? $res : "<b>$res</b>") . "</div>"; "<label for='rv_off'>"
. $res
$res = "<input type='radio' name='rv' value='oui' id='rv_on' " . . "</label>"
($choix ? "checked='checked' " : '') . . "</div>";
"onclick=\"changeVisible(this.checked, 'heure-rv', 'block', 'none');\"/>" .
"<label for='rv_on'>". $res = _T('item_afficher_calendrier');
_T('item_afficher_calendrier'). if (!$choix) $res = "<b>$res</b>";
"</label>"; echo "\n<div><input type='radio' name='rv' value='oui' id='rv_on' " .
echo '<div>' . (!$choix ? $res : "<b>$res</b>") . '</div>'; ($choix ? " checked='checked' " : '') .
"\nonclick=\"changeVisible(this.checked, 'heure-rv', 'block', 'none');\"/>" .
"<label for='rv_on'>"
. $res
. "</label>"
. '</div>';
$display = ($choix ? "block" : "none"); $display = ($choix ? "block" : "none");
echo "<div id='heure-rv' style='display: $display; padding-top: 4px; padding-left: 24px;'>", echo "\n<div id='heure-rv' style='display: $display; padding-top: 4px; padding-left: 24px;'>",
afficher_jour_mois_annee_h_m($date_heure, $heures_debut, $minutes_debut), afficher_jour_mois_annee_h_m($date_heure, $heures_debut, $minutes_debut),
" <br /><img src='puce$spip_lang_rtl.gif' alt=' '/> &nbsp; ", "\n<br /><img src='puce$spip_lang_rtl.gif' alt=' '/> &nbsp; ",
afficher_jour_mois_annee_h_m($date_fin, $heures_fin, $minutes_fin, '_fin'), afficher_jour_mois_annee_h_m($date_fin, $heures_fin, $minutes_fin, '_fin'),
"</div>"; "</div>";
} }
......
...@@ -45,26 +45,26 @@ debut_boite_info(); ...@@ -45,26 +45,26 @@ debut_boite_info();
echo _T('info_gauche_messagerie'); echo _T('info_gauche_messagerie');
echo "<p>".http_img_pack("m_envoi$spip_lang_rtl.gif", 'V', "WIDTH='14' HEIGHT='7' BORDER='0'") .' ' . _T('info_symbole_vert'); echo "<p>".http_img_pack("m_envoi$spip_lang_rtl.gif", 'V', "width='14' height='7' border='0'") .' ' . _T('info_symbole_vert'), '</p>';
echo aide ("messut"); echo aide ("messut");
echo "<p>".http_img_pack("m_envoi_bleu$spip_lang_rtl.gif", 'B', "WIDTH='14' HEIGHT='7' BORDER='0'") .' ' . _T('info_symbole_bleu'); echo "<p>".http_img_pack("m_envoi_bleu$spip_lang_rtl.gif", 'B', "width='14' height='7' border='0'") .' ' . _T('info_symbole_bleu'), '</p>';
echo aide ("messpense"); echo aide ("messpense");
echo "<p>".http_img_pack("m_envoi_jaune$spip_lang_rtl.gif", 'J', "WIDTH='14' HEIGHT='7' BORDER='0'") .' ' . _T('info_symbole_jaune'); echo "<p>".http_img_pack("m_envoi_jaune$spip_lang_rtl.gif", 'J', "width='14' height='7' border='0'") .' ' . _T('info_symbole_jaune'), '</p>';
fin_boite_info(); fin_boite_info();
creer_colonne_droite(); creer_colonne_droite();
debut_cadre_relief("messagerie-24.gif"); debut_cadre_relief("messagerie-24.gif");
icone_horizontale(_T('lien_nouvea_pense_bete'),generer_url_ecrire("message_edit","new=oui&type=pb"), "pense-bete.gif"); icone_horizontale(_T('lien_nouvea_pense_bete'),generer_action_auteur("editer_message","pb"), "pense-bete.gif");
icone_horizontale(_T('lien_nouveau_message'),generer_url_ecrire("message_edit","new=oui&type=normal"), "message.gif"); icone_horizontale(_T('lien_nouveau_message'),generer_action_auteur("editer_message","normal"), "message.gif");
if ($connect_statut == "0minirezo") { if ($connect_statut == "0minirezo") {
icone_horizontale(_T('lien_nouvelle_annonce'),generer_url_ecrire("message_edit","new=oui&type=affich"), "annonce.gif"); icone_horizontale(_T('lien_nouvelle_annonce'),generer_action_auteur("editer_message","affich"), "annonce.gif");
} }
fin_cadre_relief(); fin_cadre_relief();
......
...@@ -71,7 +71,7 @@ function formater_auteur_mail($email, $id_auteur) ...@@ -71,7 +71,7 @@ function formater_auteur_mail($email, $id_auteur)
global $spip_lang_rtl; global $spip_lang_rtl;
if ($email) $href='mailto:' . $email; if ($email) $href='mailto:' . $email;
else $href = generer_url_ecrire("message_edit","new=oui&dest=$id_auteur&type=normal"); else $href = generer_action_auteur("editer_message","normal/$id_auteur");
return "<a href='$href' title=\"" return "<a href='$href' title=\""
. _T('email') . _T('email')
......
...@@ -468,13 +468,11 @@ function gadget_agenda() { ...@@ -468,13 +468,11 @@ function gadget_agenda() {
function gadget_messagerie() { function gadget_messagerie() {
global $connect_statut; global $connect_statut;
$gadget = "<div>&nbsp;</div>"; return "<div>&nbsp;</div>"
$gadget .= icone_horizontale(_T('lien_nouvea_pense_bete'),generer_url_ecrire("message_edit","new=oui&type=pb"), "pense-bete.gif", '', false); . icone_horizontale(_T('lien_nouvea_pense_bete'),generer_action_auteur("editer_message","pb"), "pense-bete.gif",'',false)
$gadget .= icone_horizontale(_T('lien_nouveau_message'),generer_url_ecrire("message_edit","new=oui&type=normal"), "message.gif", '', false); . icone_horizontale(_T('lien_nouveau_message'),generer_action_auteur("editer_message","normal"), "message.gif",'',false)
if ($connect_statut == "0minirezo") { . (($connect_statut != "0minirezo") ? '' :
$gadget .= icone_horizontale(_T('lien_nouvelle_annonce'),generer_url_ecrire("message_edit","new=oui&type=affich"), "annonce.gif", '', false); icone_horizontale(_T('lien_nouvelle_annonce'),generer_action_auteur("editer_message","affich"), "annonce.gif",'',false));
}
return $gadget;
} }
// http://doc.spip.org/@repercuter_gadgets // http://doc.spip.org/@repercuter_gadgets
......
...@@ -82,7 +82,7 @@ function afficher_message_boucles($row, &$messages_vus, $voir_logo, $afficher_au ...@@ -82,7 +82,7 @@ function afficher_message_boucles($row, &$messages_vus, $voir_logo, $afficher_au
} }
$s .= http_img_pack("$puce", "", "width='14' height='7'"); $s .= http_img_pack("$puce", "", "width='14' height='7'");
$s .= "&nbsp;&nbsp;".typo($titre)."</A>"; $s .= "&nbsp;&nbsp;".typo($titre)."</a>";
$vals[] = $s; $vals[] = $s;
// //
...@@ -98,9 +98,9 @@ function afficher_message_boucles($row, &$messages_vus, $voir_logo, $afficher_au ...@@ -98,9 +98,9 @@ function afficher_message_boucles($row, &$messages_vus, $voir_logo, $afficher_au
} }
if ($auteurs AND $type == 'normal') { if ($auteurs AND $type == 'normal') {
$s = "<FONT FACE='Arial,Sans,sans-serif' SIZE=1>"; $s = "<font face='Arial,Sans,sans-serif' size='1'>";
$s .= join(', ', $auteurs); $s .= join(', ', $auteurs);
$s .= "</FONT>"; $s .= "</font>";
} else $s = "&nbsp;"; } else $s = "&nbsp;";
$vals[] = $s; $vals[] = $s;
} }
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter