Fix: Ajout test sur définition du login webcalendar

This commit is contained in:
Laurent Destailleur 2004-11-03 22:02:33 +00:00
parent 7625a10a95
commit b6898e3e78
6 changed files with 31 additions and 12 deletions

View File

@ -47,6 +47,7 @@ class ActionComm
var $contact; var $contact;
var $note; var $note;
var $percent; var $percent;
var $error;
/** /**
* \brief Constructeur * \brief Constructeur
@ -104,7 +105,7 @@ class ActionComm
// Ajoute entrée dans webcal // Ajoute entrée dans webcal
$result=$webcal->add($author,$webcal->date,$webcal->texte,$webcal->desc); $result=$webcal->add($author,$webcal->date,$webcal->texte,$webcal->desc);
if ($result < 0) { if ($result < 0) {
$this->error="Echec insertion dans webcal ".$webcal->error; $this->error="Echec insertion dans webcal: ".$webcal->error;
} }
} }
else if ($webcal == 1) else if ($webcal == 1)

View File

@ -132,13 +132,14 @@ if ($_POST["action"] == 'add_action')
$idaction=$actioncomm->add($user, $webcal); $idaction=$actioncomm->add($user, $webcal);
if ($idaction > 0) { if ($idaction > 0) {
if ($webcal >= 0) { if (! $actioncomm->error) {
// Si pas de module webcal ou si pas d'erreur avec // Si pas d'erreur
Header("Location: ".$_POST["from"]); Header("Location: ".$_POST["from"]);
} }
else { else {
// Si erreur dans module webcal // Si erreur
$_GET["id"]=$idaction; $_GET["id"]=$idaction;
$error=$actioncomm->error;
} }
} else { } else {
dolibarr_print_error($db); dolibarr_print_error($db);
@ -259,7 +260,16 @@ if ($_GET["action"] == 'create')
if ($conf->webcal->enabled) if ($conf->webcal->enabled)
{ {
$langs->load("other"); $langs->load("other");
print '<tr><td width="10%">'.$langs->trans("AddCalendarEntry").'</td><td><input type="checkbox" name="todo_webcal"></td></tr>'; print '<tr><td width="10%">'.$langs->trans("AddCalendarEntry").'</td>';
if (! $user->webcal_login) {
print '<td><input type="checkbox" disabled name="todo_webcal">';
print ' '.$langs->trans("ErrorWebcalLoginNotDefined","<a href=\"/user/fiche.php?id=".$user->id."\">".$user->login."</a>");
print '</td>';
} else {
print '<td><input type="checkbox" name="todo_webcal"></td>';
}
print '</tr>';
} }
print '<tr><td valign="top">'.$langs->trans("Comment").'</td><td>'; print '<tr><td valign="top">'.$langs->trans("Comment").'</td><td>';

View File

@ -1,6 +1,7 @@
# Dolibarr language file - en_US - other # Dolibarr language file - en_US - other
Calendar=Calendar Calendar=Calendar
LoginWebcal=Login for Webcalendar LoginWebcal=Login for Webcalendar
ErrorWebcalLoginNotDefined=The Webcalendar login associated to your Dolibarr login <b>%s</b> is not defined.
AddCalendarEntry=Add entry in calendar AddCalendarEntry=Add entry in calendar
Mailing=Mailing Mailing=Mailing
MailingDesc=This page allows you to send mailings to a group of people. MailingDesc=This page allows you to send mailings to a group of people.

View File

@ -2,6 +2,7 @@
Calendar=Calendrier Calendar=Calendrier
LoginWebcal=Login Webcalendar LoginWebcal=Login Webcalendar
AddCalendarEntry=Ajouter entrée dans le calendrier AddCalendarEntry=Ajouter entrée dans le calendrier
ErrorWebcalLoginNotDefined=Le login Webcalendar associé à votre login Dolibarr <b>%s</b> n'est pas défini.
Mailing=Mailing Mailing=Mailing
MailingDesc=Cet écran vous permet d'envoyer des mailing à un groupe de personne. MailingDesc=Cet écran vous permet d'envoyer des mailing à un groupe de personne.
MailingResult=Résultat de l'envoi du mailing MailingResult=Résultat de l'envoi du mailing

View File

@ -43,6 +43,7 @@ class Webcal {
var $date; var $date;
var $texte; var $texte;
var $desc; var $desc;
var $error;
/*! /*!
\brief Constructeur de la classe d'interface à Webcalendar \brief Constructeur de la classe d'interface à Webcalendar
@ -68,12 +69,17 @@ class Webcal {
\param[in] date la date de l'evenement dans le calendrier \param[in] date la date de l'evenement dans le calendrier
\param[in] texte le titre a indiquer dans l'evenement \param[in] texte le titre a indiquer dans l'evenement
\param[in] desc la description a indiquer dans l'evenement \param[in] desc la description a indiquer dans l'evenement
\return int 1 en cas de succès, -1,-2, -3 en cas d'erreur \return int 1 en cas de succès, -1,-2,-3 en cas d'erreur, -4 si login webcal non défini
*/ */
function add($user, $date, $texte, $desc) function add($user, $date, $texte, $desc)
{ {
// Test si login webcal défini pour le user
if (! $user->webcal_login) {
$this->error=$langs->trans("ErrorWebcalLoginNotDefined","<a href=\"/user/fiche.php?id=".$user->id."\">".$user->login."</a>");
return -4;
}
// Recupère l'id max+1 dans la base webcalendar // Recupère l'id max+1 dans la base webcalendar
$id = $this->get_next_id(); $id = $this->get_next_id();
@ -110,18 +116,18 @@ class Webcal {
} }
else else
{ {
$error = $this->localdb->error() . '<br>' .$sql; $this->error = $this->localdb->error() . '<br>' .$sql;
return -1; return -1;
} }
} }
else else
{ {
$error = $this->localdb->error() . '<br>' .$sql; $this->error = $this->localdb->error() . '<br>' .$sql;
return -2; return -2;
} }
} }
else { else {
$error = $this->localdb->error() . '<br>' .$sql; $this->error = $this->localdb->error() . '<br>' .$sql;
return -3; return -3;
} }
} }
@ -129,7 +135,7 @@ class Webcal {
/*! /*!
\brief Obtient l'id suivant dans le webcalendar \brief Obtient l'id suivant dans le webcalendar
\return id retourne l'id suivant dans le webcalendar \return int retourne l'id suivant dans le webcalendar ou -1 si erreur
*/ */
function get_next_id() function get_next_id()

View File

@ -55,7 +55,7 @@ $search_ville=isset($_GET["search_ville"])?$_GET["search_ville"]:$_POST["search_
$socname=isset($_GET["socname"])?$_GET["socname"]:$_POST["socname"]; $socname=isset($_GET["socname"])?$_GET["socname"]:$_POST["socname"];
$sortfield = isset($_GET["sortfield"])?$_GET["sortfield"]:$_POST["sortfield"]; $sortfield = isset($_GET["sortfield"])?$_GET["sortfield"]:$_POST["sortfield"];
$sortorder = isset($_GET["sortorder"])?$_GET["sortorder"]:$_POST["sortorder"]; $sortorder = isset($_GET["sortorder"])?$_GET["sortorder"]:$_POST["sortorder"];
$page=$_GET["page"]; $page=isset($_GET["page"])?$_GET["page"]:$_POST["page"];
if ($sortorder == "") { if ($sortorder == "") {
$sortorder="ASC"; $sortorder="ASC";