Browse Source

vieilleries

svn/root/tags/plugins/organiseur/0.8.0
cedric@yterium.com 11 years ago
parent
commit
23df4edd8b
  1. 2
      .gitattributes
  2. 399
      exec/message.php
  3. 179
      exec/message_edit.php

2
.gitattributes vendored

@ -9,8 +9,6 @@ base/organiseur.php -text
/calendrier_quete.json.html -text
/calendrier_quete.json_fonctions.php -text
contenu/calendrier.html -text
exec/message.php -text
exec/message_edit.php -text
formulaires/configurer_messagerie_agenda.html -text
formulaires/configurer_messagerie_agenda.php -text
formulaires/editer_message.html -text

399
exec/message.php

@ -1,399 +0,0 @@
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2011 *
* 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/ressembler'); // mots_ressemblants()
include_spip('inc/agenda');
// http://doc.spip.org/@exec_message_dist
function exec_message_dist()
{
exec_message_args(intval(_request('id_message')),_request('forcer_dest'), _request('cherche_auteur'));
}
// http://doc.spip.org/@exec_message_args
function exec_message_args($id_message, $forcer_dest, $cherche_auteur)
{
global $connect_id_auteur;
$res = sql_fetsel("type,id_auteur", "spip_messages", "id_message=$id_message");
if ($res AND $res['type'] != "affich"){
$r2 = sql_fetsel("vu", "spip_auteurs_liens", "id_auteur=$connect_id_auteur AND objet='message' AND id_objet=$id_message");
if (!$r2 AND $res['id_auteur']==$connect_id_auteur){
include_spip('action/editer_auteur');
auteur_associer($connect_id_auteur, array('message'=>$id_message),array('vu'=>'non'));
$r2 = sql_fetsel("*", "spip_auteurs_liens", "id_auteur=$connect_id_auteur AND objet='message' AND id_objet=$id_message");
$res = $r2;
}
}
if (!$res) {
include_spip('inc/minipres');
echo minipres();
} else {
// Marquer le message vu pour le visiteur
if (isset($res['vu']) AND $res['vu'] != 'oui') {
include_spip('inc/headers');
redirige_par_entete(redirige_action_auteur("editer_message","$id_message/:$connect_id_auteur", 'message', "id_message=$id_message", true));
}
exec_affiche_message_dist($id_message, $cherche_auteur, $forcer_dest);
}
}
// http://doc.spip.org/@http_afficher_rendez_vous
function http_afficher_rendez_vous($date_heure, $date_fin)
{
global $spip_lang_rtl;
$dirpuce = _DIR_RACINE . 'dist';
if (jour($date_heure) == jour($date_fin) AND mois($date_heure) == mois($date_fin) AND annee($date_heure) == annee($date_fin)) {
echo "<p class='verdana2' style='text-align: center'>"._T('titre_rendez_vous')." ".majuscules(nom_jour($date_heure))." <b>".majuscules(affdate($date_heure))."</b><br />\n<b>".heures($date_heure)." "._T('date_mot_heures')." ".minutes($date_heure)."</b>";
echo " &nbsp; <img src='$dirpuce/puce$spip_lang_rtl.gif' alt=' ' style='border: 0px;' /> &nbsp; ".heures($date_fin)." "._T('date_mot_heures')." ".minutes($date_fin)."</p>";
} else {
echo "<p class='verdana2' style='text-align: center'>"._T('titre_rendez_vous')."<br />\n".majuscules(nom_jour($date_heure))." <b>".majuscules(affdate($date_heure))."</b>, <b>".heures($date_heure)." "._T('date_mot_heures')." ".minutes($date_heure)."</b>";
echo "<br />\n<img src='$dirpuce/puce$spip_lang_rtl.gif' alt=' ' style='border: 0px;' /> ".majuscules(nom_jour($date_fin))." ".majuscules(affdate($date_fin)).", <b>".heures($date_fin)." "._T('date_mot_heures')." ".minutes($date_fin)."</b></p>";
}
}
// http://doc.spip.org/@http_auteurs_ressemblants
function http_auteurs_ressemblants($cherche_auteur, $id_message)
{
$cherche_auteur = htmlspecialchars($cherche_auteur);
global $connect_id_auteur;
$query = sql_select("id_auteur, nom", "spip_auteurs", "messagerie<>'non' AND id_auteur<>'$connect_id_auteur' AND pass<>'' AND login<>''");
$table_auteurs = array();
$table_ids = array();
while ($row = sql_fetch($query)) {
$table_auteurs[] = $row['nom'];
$table_ids[] = $row['id_auteur'];
}
$resultat = mots_ressemblants($cherche_auteur, $table_auteurs, $table_ids);
if (!$resultat) {
return '<b>' . _T('info_recherche_auteur_zero', array('cherche_auteur' => $cherche_auteur))."</b><br />";
}
else if (count($resultat) == 1) {
// action/editer_message a du prendre en compte ce cas
list(, $nouv_auteur) = each($resultat);
$nom_auteur = sql_getfetsel("nom", "spip_auteurs", "id_auteur=$nouv_auteur");
return "<b>"._T('info_ajout_participant')."</b><br />" .
"<ul><li><span class='verdana1 spip_small'><b><span class='spip_medium'>$nom_auteur</span></b></span></li>\n</ul>";
}
else if (count($resultat) < 16) {
$res = '';
$query = sql_select("*", "spip_auteurs", "id_auteur IN (" . join(',', $resultat) . ")", "", "nom");
while ($row = sql_fetch($query)) {
$id_auteur = $row['id_auteur'];
$nom_auteur = $row['nom'];
$email_auteur = $row['email'];
$bio_auteur = $row['bio'];
$res .= "\n<li><span class='spip_medium verdana1'><b>$nom_auteur</b></span>" .
($email_auteur ? " ($email_auteur)" : '') .
"\n <a href='" . redirige_action_auteur("editer_message","$id_message/@$id_auteur", 'message', "id_message=$id_message")
. "'>"
. _T('lien_ajout_destinataire').
"</a>" .
(!trim($bio_auteur) ? '' :
("<br />\n<span class='spip_x-small'>".propre(couper($bio_auteur, 100))."</span>\n")) .
"</li>\n";
}
return "<b>"._T('info_recherche_auteur_ok', array('cherche_auteur' => $cherche_auteur))."</b><br />" .($res ? "<ul>$res</ul>" : '');
}
else {
return "<b>"._T('info_recherche_auteur_a_affiner', array('cherche_auteur' => $cherche_auteur))."</b><br />";
}
}
/**
* Lister les auteurs autorises a on ne sait quoi ...
* Plus rien a faire ici
*
* // http://doc.spip.org/@auteurs_autorises
*
* @param string $in
* @param string $cond
* @return string
*/
function auteurs_autorises($in, $cond='')
{
return sql_in("statut", array('0minirezo','1comite'))
. (!$cond ? '' : " AND $cond")
. (!$in ? '' : (" AND ". sql_in("id_auteur", $in, 'NOT')));
}
// http://doc.spip.org/@http_ajouter_participants
function http_ajouter_participants($ze_auteurs, $id_message)
{
include_spip('inc/editer_auteurs');
$cond = auteurs_autorises($ze_auteurs, "messagerie<>'non'");
$all = objet_auteur_select($cond);
if (!$all) return '';
$res = "<span class='verdana1 spip_small'><b><label for='id_message'>" .
_T('bouton_ajouter_participant') ."</label> &nbsp; </b></span>\n" .
"<input type='hidden' name='id_message' id='id_message' value=\"$id_message\" />";
if (is_numeric($all)) {
$res .= "\n<input type='text' name='cherche_auteur' id='cherche_auteur' class='fondl' value='' size='20' />";
$res .= "\n<input type='submit' value='"._T('bouton_chercher')."' class='fondo' />";
} else {
$res .= "<select name='nouv_auteur' id='nouv_auteur' size='1' style='width: 150px' class='fondl'>"
. $all
. "</select>"
. "<input type='submit' value='"._T('bouton_ajouter')."' class='fondo' />";
}
return redirige_action_post('editer_message', "$id_message,", 'message', "id_message=$id_message", "<div style='text-align: left'>\n$res</div>\n");
}
// http://doc.spip.org/@http_message_avec_participants
function http_message_avec_participants($id_message, $statut, $forcer_dest, $cherche_auteur, $expediteur='')
{
global $connect_id_auteur ;
if ($cherche_auteur) {
echo "\n<div style='text-align: left' class='cadre-info'>"
. http_auteurs_ressemblants($cherche_auteur , $id_message)
. "\n</div>";
}
$bouton = bouton_block_depliable(_T('info_nombre_partcipants'),true,"auteurs,ajouter_auteur");
echo debut_cadre_enfonce("auteur-24.png", true, '', $bouton, 'participants');
//
// Liste des participants
//
$result = sql_allfetsel("A.*", "spip_auteurs AS A, spip_auteurs_liens AS L", "L.objet='message' AND L.id_objet=$id_message AND L.id_auteur=A.id_auteur");
$total_dest = count($result);
if ($total_dest > 0) {
$ifond = 0;
$res = '';
$formater_auteur = charger_fonction('formater_auteur', 'inc');
$t = _T('lien_retrait_particpant');
foreach($result as $k => $row) {
$id_auteur = $row["id_auteur"];
list($status, $mail, $nom, $site,) = $formater_auteur($id_auteur, $row);
if ($id_auteur == $expediteur) {
$nom = "<span class='arial0' style='margin-left: 10px'>"
. _T('info_auteur_message')
. "</span> $nom";
}
$class = alterner (++$ifond,'row_even','row_odd');
$res .= "<tr class='$class'>\n<td class='nom'>$status $mail $nom $site$exp</td>"
. "\n<td align='right' class='lien'>"
. (($id_auteur == $connect_id_auteur) ? "&nbsp;" : ("[<a href='" . redirige_action_auteur("editer_message","$id_message/-$id_auteur", 'message', "id_message=$id_message") . "'>$t</a>]")) . "</td></tr>\n";
$result[$k] = $id_auteur;
}
echo
debut_block_depliable(true,"auteurs"),
"\n<table class='spip' width='100%'>",
$res,
"</table>\n",
fin_block();
}
if ($statut == 'redac' OR $forcer_dest)
echo http_ajouter_participants($result, $id_message);
else {
echo
debut_block_depliable(true,"ajouter_auteur"),
"<br />\n<div style='text-align: right' class='verdana1 spip_small'><a href='" . generer_url_ecrire("message","id_message=$id_message&forcer_dest=oui") . "'>"._T('lien_ajouter_participant')."</a></div>",
fin_block();
}
echo fin_cadre_enfonce(true);
return $total_dest;
}
// http://doc.spip.org/@http_affiche_message
function http_affiche_message($id_message, $expediteur, $statut, $type, $texte, $titre, $rv, $date_heure, $date_fin, $cherche_auteur, $forcer_dest)
{
global $connect_id_auteur,$connect_statut, $les_notes;
if ($type == 'normal') {
$le_type = _T('info_message_2').aide ("messut");
$la_couleur = "#02531b";
$fond = "#cffede";
}
else if ($type == 'pb') {
$le_type = _T('info_pense_bete').aide ("messpense");
$la_couleur = "#3874b0";
$fond = "#edf3fe";
}
else if ($type == 'affich') {
$le_type = _T('info_annonce');
$la_couleur = "#ccaa00";
$fond = "#ffffee";
}
// affichage des caracteristiques du message
echo "<div style='border: 1px solid $la_couleur; background-color: $fond; padding: 5px;'>"; // debut cadre de couleur
//echo debut_cadre_relief("messagerie-24.png", true);
echo "\n<table width='100%' border='0'>";
echo "<tr><td>"; # uniques
echo "<span style='color: $la_couleur' class='verdana1 spip_small'><b>$le_type</b></span><br />";
echo "<span class='verdana1 spip_large'><b>$titre</b></span>";
if ($statut == 'redac') {
echo "<br /><span style='color: red;' class='verdana1 spip_small'><b>"._T('info_redaction_en_cours')."</b></span>";
}
else if ($rv == 'non') {
echo "<br /><span style='color: #666666;' class='verdana1 spip_small'><b>".nom_jour($date_heure).' '.affdate_heure($date_heure)."</b></span>";
}
//////////////////////////////////////////////////////
// Message avec participants
//
if ($type == 'normal')
$total_dest = http_message_avec_participants($id_message, $statut, $forcer_dest, $cherche_auteur, $expediteur);
if ($rv != "non") http_afficher_rendez_vous($date_heure, $date_fin);
//////////////////////////////////////////////////////
// Le message lui-meme
//
echo "\n<br />"
. "<div class='serif'>$texte</div>";
if ($les_notes) {
echo debut_cadre_relief('', true);
echo "<div dir=" . lang_dir() ."' class='arial11'>";
echo justifier("<b>"._T('info_notes')."&nbsp;:</b> ".$les_notes);
echo "</div>";
echo fin_cadre_relief(true);
}
if ($expediteur == $connect_id_auteur AND $statut == 'redac') {
if ($type == 'normal' AND $total_dest < 2) {
echo "<p style='color: #666666; text-align: right;' class='verdana1 spip_small'><b>"._T('avis_destinataire_obligatoire')."</b></p>";
} else {
echo "\n<div class='centered'>";
echo icone_verticale(_T('icone_envoyer_message'), redirige_action_auteur('editer_message', "$id_message/publie", "message","id_message=$id_message"), "messagerie-24.png", "new");
echo "</div>";
}
}
echo "</td></tr></table>\n";
// echo "</td></tr></table>\n"; //echo fin_cadre_relief(true);
echo "</div>"; // fin du cadre de couleur
// Les boutons
$aut = ($expediteur == $connect_id_auteur);
$aff = ($type == 'affich' AND $connect_statut == '0minirezo');
echo "\n<table width='100%'><tr><td>";
// bouton de suppression
if ($aut AND ($statut == 'redac' OR $type == 'pb') OR $aff) {
echo icone_verticale(_T('icone_supprimer_message'), redirige_action_auteur("editer_message","-$id_message", 'messagerie'), "messagerie-24.png", "del", 'left');
}
// bouton retrait de la discussion
if ($statut == 'publie' AND $type == 'normal') {
echo icone_verticale(_T('icone_arret_discussion'), redirige_action_auteur("editer_message","$id_message/-$connect_id_auteur", 'messagerie', "id_message=$id_message"), "messagerie-24.png", "del", 'left');
}
// bouton modifier ce message
if ($aut OR $aff) {
echo icone_verticale(_T('icone_modifier_message'), (generer_url_ecrire("message_edit","id_message=$id_message")), "messagerie-24.png", "edit", 'right');
}
echo "</td></tr></table>";
}
// http://doc.spip.org/@exec_affiche_message_dist
function exec_affiche_message_dist($id_message, $cherche_auteur, $forcer_dest)
{
$row = sql_fetsel("*", "spip_messages", "id_message=$id_message");
if ($row) {
$id_message = $row['id_message'];
$date_heure = $row["date_heure"];
$date_fin = $row["date_fin"];
$titre = typo($row["titre"]);
$texte = propre($row["texte"]);
$type = $row["type"];
$statut = $row["statut"];
$rv = $row["rv"];
$expediteur = $row['id_auteur'];
$lejour=journum($row['date_heure']);
$lemois = mois($row['date_heure']);
$lannee = annee($row['date_heure']);
$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page($titre, "accueil", "messagerie");
echo debut_gauche('', true);
/* if ($rv != 'non')
echo http_calendrier_agenda ($lannee, $lemois, $lejour, $lemois, $lannee,false, generer_url_ecrire('calendrier'));
echo recuperer_fond(
'prive/squelettes/inclure/organiseur-rappels',
array(
'id_auteur'=>$GLOBALS['visiteur_session']['id_auteur'],
'last' => $GLOBALS['visiteur_session']['quand'],
)
);*/
if ($rv != "non") {
list ($sh, $ah) = quete_calendrier_interval(quete_calendrier_jour($lannee,$lemois, $lejour));
foreach ($ah as $k => $v)
{
foreach ($v as $l => $e)
{
if (preg_match(",=$id_message$,", $e['URL']))
{
$ah[$k][$l]['CATEGORIES'] = "calendrier-nb";
break;
}
}
}
echo creer_colonne_droite('', true);
/*
echo http_calendrier_ics_titre($lannee,$lemois,$lejour,generer_url_ecrire('calendrier'));
echo http_calendrier_ics($lannee,$lemois, $lejour, '', '', 90, array($sh, $ah));
*/
}
echo debut_droite('', true);
http_affiche_message($id_message, $expediteur, $statut, $type, $texte, $titre, $rv, $date_heure, $date_fin, $cherche_auteur, $forcer_dest);
// reponses et bouton poster message
// appel de la fonction discuter() de l'extension forum, si presente uniquement
// a revoir au profit d'un pipeline
// ou a evacuer completement, meme (formu sur messages = messages de reponse)
$discuter = charger_fonction('discuter', 'inc', true);
if ($discuter) echo $discuter($id_message, 'message', 'id_message', "perso");
}
echo fin_gauche(), fin_page();
}
?>

179
exec/message_edit.php

@ -1,179 +0,0 @@
<?php
/***************************************************************************\
* SPIP, Systeme de publication pour l'internet *
* *
* Copyright (c) 2001-2011 *
* 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/date');
include_spip('inc/agenda');
// http://doc.spip.org/@exec_message_edit_dist
function exec_message_edit_dist()
{
exec_message_edit_args(intval(_request('id_message')),
_request('new'),
intval(_request('dest')));
}
// http://doc.spip.org/@exec_message_edit_args
function exec_message_edit_args($id_message, $new, $dest)
{
global $connect_id_auteur, $connect_statut;
if ($new == 'oui') {
$onfocus = "\nonfocus=\"if(!antifocus){this.value='';antifocus=true;}\"";
} else $onfocus = '';
$row = sql_fetsel("*", "spip_messages", "id_message=$id_message");
$id_message = $row['id_message'];
$date_heure = $row["date_heure"];
$date_fin = $row["date_fin"];
$titre = entites_html($row["titre"]);
$texte = entites_html($row["texte"]);
$type = $row["type"];
$statut = $row["statut"];
$rv = $row["rv"];
$expediteur = $row["id_auteur"];
if (!($expediteur == $connect_id_auteur OR ($type == 'affich' AND $connect_statut == '0minirezo'))) {
include_spip('inc/minipres');
echo minipres();
} else {
$commencer_page = charger_fonction('commencer_page', 'inc');
echo $commencer_page(_T('titre_page_message_edit'), "accueil", "messagerie");
if ($type == 'normal') {
$le_type = _T('bouton_envoi_message_02');
$logo = "message";
}
if ($type == 'pb') {
$le_type = _T('bouton_pense_bete');
$logo = "pensebete";
}
if ($type == 'affich') {
$le_type = _T('bouton_annonce');
$logo = "annonce";
}
echo debut_gauche('', true);
if($type == 'normal' AND $dest) {
$email = sql_getfetsel("email", "spip_auteurs", "id_auteur=$dest");
if (strlen($email) > 3) {
echo icone_verticale(_T('info_envoyer_message_prive'), "mailto:".$email, "envoi-message-24.gif");
}
}
echo debut_droite('', true);
$res = "<div class='arial2'>"
. "<span style='color:green' class='verdana1 spip_small'><b>$le_type</b></span>";
if ($type == "affich")
$res .="<p style='color:red;' class='verdana1 spip_x-small'>" . _T('texte_message_edit')."</p>";
$res .= '<br /><br />'."<label for='titre'>" . _T('texte_titre_obligatoire')."</label><br />\n";
$res .="<input type='text' class='formo' name='titre' id='titre' value=\"$titre\" size='40' $onfocus />";
if (!$dest) {
if ($type == 'normal') {
$res .="<br /><label for='cherche_auteur'><b>"._T('info_nom_destinataire')."</b></label><br />\n";
$res .="<input type='text' class='formo' name='cherche_auteur' id='cherche_auteur' value='' size='40'/>";
}
} else {
$nom = sql_getfetsel("nom", "spip_auteurs", "id_auteur=$dest");
$res .= "<br /><b>" .
_T('info_nom_destinataire') .
"</b>&nbsp;:&nbsp;&nbsp; " .
$nom .
"<br /><br />\n";
}
$res .= '<br />';
//////////////////////////////////////////////////////
// Fixer rendez-vous?
//
if ($rv == "oui") $fonction = "rv.gif"; else $fonction = "";
$res .= debut_cadre_trait_couleur($logo.".gif", true, $fonction, _T('titre_rendez_vous'))
. afficher_si_rdv($date_heure, $date_fin, ($rv == "oui"))
. fin_cadre_trait_couleur(true)
. "\n<p><label for='texte'><b>"
. _T('info_texte_message_02')
. "</b></label><br />"
. "<textarea name='texte' id='texte' rows='20' class='formo' cols='40'>"
. $texte
. "</textarea></p><br />\n"
. "\n<div style='text-align: right'><input type='submit' value='"
. _T('bouton_valider')
. "' class='fondo'/></div>"
. "\n</div>";
echo redirige_action_post('editer_message', $id_message, 'message',"id_message=$id_message", $res);
echo fin_gauche(), fin_page();
}
}
// http://doc.spip.org/@afficher_si_rdv
function afficher_si_rdv($date_heure, $date_fin, $choix)
{
$heures_debut = heures($date_heure);
$minutes_debut = minutes($date_heure);
$heures_fin = heures($date_fin);
$minutes_fin = minutes($date_fin);
if ($date_fin == "0000-00-00 00:00:00") {
$date_fin = $date_heure;
$heures_fin = $heures_debut + 1;
}
if ($heures_fin >=24){
$heures_fin = 23;
$minutes_fin = 59;
}
$lib = _T('item_non_afficher_calendrier');
if (!$choix) $lib = "<b>$lib</b>";
$res = "\n<div><input type='radio' name='rv' value='non' id='rv_off'" .
(!$choix ? " checked='checked' " : '')
. "\nonclick=\"if (this.checked) jQuery('#heure-rv').hide(); else jQuery('#heure-rv').show();\"/>"
. "<label for='rv_off'>"
. $lib
. "</label>"
. "</div>";
$lib = _T('item_afficher_calendrier');
if ($choix) $lib = "<b>$lib</b>";
$res .= "\n<div><input type='radio' name='rv' value='oui' id='rv_on' " .
($choix ? " checked='checked' " : '') .
"\nonclick=\"if (this.checked) jQuery('#heure-rv').show(); else jQuery('#heure-rv').hide();\"/>" .
"<label for='rv_on'>"
. $lib
. "</label>"
. '</div>';
$display = ($choix ? "block" : "none");
return $res .
"\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) .
"<br />".
afficher_jour_mois_annee_h_m($date_fin, $heures_fin, $minutes_fin, '_fin') .
"</div>";
}
?>
Loading…
Cancel
Save