* Copyright (C) 2003 Jean-Louis Bergamo * Copyright (C) 2004-2011 Laurent Destailleur * Copyright (C) 2004 Sebastien Di Cintio * Copyright (C) 2004 Benoit Mortier * Copyright (C) 2005-2011 Regis Houssin * Copyright (C) 2011-2013 Juanjo Menent * * 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 3 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, see . */ /** * \file htdocs/admin/mailman.php * \ingroup mailmanspip * \brief Page to setup the module MailmanSpip (Mailman) */ // Load Dolibarr environment require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/mailmanspip.lib.php'; require_once DOL_DOCUMENT_ROOT.'/categories/class/categorie.class.php'; // Load translation files required by the page $langs->loadLangs(array("admin", "members", "mailmanspip")); if (!$user->admin) { accessforbidden(); } $type = array('yesno', 'texte', 'chaine'); $action = GETPOST('action', 'aZ09'); $testsubscribeemail = GETPOST("testsubscribeemail"); $testunsubscribeemail = GETPOST("testunsubscribeemail"); $error = 0; /* * Actions */ // Action updated or added a constant if ($action == 'update' || $action == 'add') { $tmparray = GETPOST('constname', 'array'); if (is_array($tmparray)) { foreach ($tmparray as $key => $val) { $constname = $tmparray[$key]; $constvalue = $tmparray[$key]; $consttype = $tmparray[$key]; $constnote = $tmparray[$key]; $res = dolibarr_set_const($db, $constname, $constvalue, $type[$consttype], 0, $constnote, $conf->entity); if (!($res > 0)) { $error++; } } } if (!$error) { setEventMessages($langs->trans("SetupSaved"), null, 'mesgs'); } else { setEventMessages($langs->trans("Error"), null, 'errors'); } } // Action to activate a submodule of the 'adherent' module if ($action == 'set') { $result = dolibarr_set_const($db, GETPOST("name", 'aZ09'), GETPOST("value"), '', 0, '', $conf->entity); if ($result < 0) { dol_print_error($db); } } // Action to deactivate a submodule of the 'adherent' module if ($action == 'unset') { $result = dolibarr_del_const($db, GETPOST("name", 'aZ09'), $conf->entity); if ($result < 0) { dol_print_error($db); } } if (($action == 'testsubscribe' || $action == 'testunsubscribe') && getDolGlobalString('ADHERENT_USE_MAILMAN')) { $email = GETPOST($action.'email'); if (!isValidEmail($email)) { $langs->load("errors"); setEventMessages($langs->trans("ErrorBadEMail", $email), null, 'errors'); } else { include_once DOL_DOCUMENT_ROOT.'/mailmanspip/class/mailmanspip.class.php'; $mailmanspip = new MailmanSpip($db); $object = new stdClass(); $object->email = $email; $object->pass = $email; /*$object->element='member'; $object->type='Preferred Partners'; */ if ($action == 'testsubscribe') { $result = $mailmanspip->add_to_mailman($object); if ($result < 0) { $error++; setEventMessages($mailmanspip->error, $mailmanspip->errors, 'errors'); } else { setEventMessages($langs->trans("MailmanCreationSuccess"), null); } } if ($action == 'testunsubscribe') { $result = $mailmanspip->del_to_mailman($object); if ($result < 0) { $error++; setEventMessages($mailmanspip->error, $mailmanspip->errors, 'errors'); } else { setEventMessages($langs->trans("MailmanDeletionSuccess"), null); } } } } /* * View */ $help_url = ''; llxHeader('', $langs->trans("MailmanSpipSetup"), $help_url, '', 0, 0, '', '', '', 'mod-admin page-mailman'); $linkback = ''.$langs->trans("BackToModuleList").''; print load_fiche_titre($langs->trans("MailmanSpipSetup"), $linkback, 'title_setup'); $head = mailmanspip_admin_prepare_head(); if (getDolGlobalString('ADHERENT_USE_MAILMAN')) { print '
'; print ''; print ''; print dol_get_fiche_head($head, 'mailman', $langs->trans("Setup"), -1, 'user'); //$link=img_picto($langs->trans("Active"),'tick').' '; $link = ''; //$link.=$langs->trans("Disable"); $link .= img_picto($langs->trans("Activated"), 'switch_on'); $link .= ''; // Edit the global variables $constantes = array( 'ADHERENT_MAILMAN_ADMIN_PASSWORD', 'ADHERENT_MAILMAN_URL', 'ADHERENT_MAILMAN_UNSUB_URL', 'ADHERENT_MAILMAN_LISTS' ); print load_fiche_titre($langs->trans('MailmanTitle'), $link, ''); print '
'; // JQuery activity print ''; form_constantes($constantes, 2); print '*'.$langs->trans("FollowingConstantsWillBeSubstituted").'
'; print '%LISTE%, %MAILMAN_ADMINPW%, %EMAIL%
'; print dol_get_fiche_end(); print '
'; print '
'; } else { print dol_get_fiche_head($head, 'mailman', $langs->trans("Setup"), 0, 'user'); $link = ''; //$link.=img_$langs->trans("Activate") $link .= img_picto($langs->trans("Disabled"), 'switch_off'); $link .= ''; print load_fiche_titre($langs->trans('MailmanTitle'), $link, ''); print dol_get_fiche_end(); } if (getDolGlobalString('ADHERENT_USE_MAILMAN')) { print '
'; print ''; print ''; print $langs->trans("TestSubscribe").'
'; print $langs->trans("EMail").'
'; print '
'; print '
'; print ''; print ''; print $langs->trans("TestUnSubscribe").'
'; print $langs->trans("EMail").'
'; print '
'; } // End of page llxFooter(); $db->close();