diff --git a/ChangeLog b/ChangeLog
index 808cd473548..f3353fedce9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,7 @@ English Dolibarr changelog
***** Changelog for 2.4 compared to 2.2 *****
For users:
+- Add a calendar module (module agenda)
- Removed useless code:
Replaced phplot and phplot5 librairies by artichow.
Removed cryptograph library replaced by artichow.
@@ -29,6 +30,7 @@ For users:
- Changes in wizard installer to allow building autoexe installer for
Windows with Apache and Mysql included.
- Add new predefined exports wizards (stocks, suppliers, taxes...).
+- Add feature to log security events (logon, change of users, passwords).
For developers:
- Update code skeletons examples.
diff --git a/htdocs/admin/agenda_xcal.php b/htdocs/admin/agenda_xcal.php
new file mode 100644
index 00000000000..1c8df56b702
--- /dev/null
+++ b/htdocs/admin/agenda_xcal.php
@@ -0,0 +1,126 @@
+
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ */
+
+/**
+ \file htdocs/admin/agenda.php
+ \ingroup agenda
+ \brief Page de configuration du module agenda
+ \version $Id$
+*/
+
+require("./pre.inc.php");
+require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
+require_once(DOL_DOCUMENT_ROOT.'/lib/agenda.lib.php');
+
+
+if (!$user->admin)
+ accessforbidden();
+
+$langs->load("admin");
+$langs->load("other");
+$langs->load("agenda");
+
+$def = array();
+$actionsave=$_POST["save"];
+
+// Sauvegardes parametres
+if ($actionsave)
+{
+ $i=0;
+
+ $db->begin();
+
+ $i+=dolibarr_set_const($db,'MAIN_PASSWORD_VCALEXPORT',trim($_POST["MAIN_PASSWORD_VCALEXPORT"]),'chaine',0);
+
+ if ($i > 0)
+ {
+ $db->commit();
+ $mesg = "".$langs->trans("SetupSaved")."";
+ }
+ else
+ {
+ $db->rollback();
+ $mesg = "".$langs->trans("SaveFailed")."";
+ }
+}
+
+
+
+/**
+ * Vies
+ */
+
+llxHeader();
+
+$linkback=''.$langs->trans("BackToModuleList").'';
+print_fiche_titre($langs->trans("AgendaSetup"),$linkback,'setup');
+print '
';
+
+print $langs->trans("AgendaSetupOtherDesc")."
\n";
+print "
\n";
+
+$head=agenda_prepare_head();
+
+dolibarr_fiche_head($head, 'xcal', $langs->trans("Agenda"));
+
+
+print '