* Copyright (C) 2005-2014 Laurent Destailleur * Copyright (C) 2005-2010 Regis Houssin * Copyright (C) 2010-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/prelevement.php * \ingroup prelevement * \brief Page configuration des prelevements */ require '../main.inc.php'; require_once DOL_DOCUMENT_ROOT.'/compta/prelevement/class/bonprelevement.class.php'; require_once DOL_DOCUMENT_ROOT.'/core/lib/admin.lib.php'; require_once DOL_DOCUMENT_ROOT.'/compta/bank/class/account.class.php'; $langs->load("admin"); $langs->load("withdrawals"); // Security check if (!$user->admin) accessforbidden(); $action = GETPOST('action','alpha'); /* * Actions */ if ($action == "set") { $db->begin(); for ($i = 0 ; $i < 2 ; $i++) { $res = dolibarr_set_const($db, GETPOST("nom$i",'alpha'), GETPOST("value$i",'alpha'),'chaine',0,'',$conf->entity); if (! $res > 0) $error++; } $res = dolibarr_set_const($db, "PRELEVEMENT_ICS", GETPOST("PRELEVEMENT_ICS"),'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $id=GETPOST('PRELEVEMENT_ID_BANKACCOUNT','int'); $account = new Account($db); if($account->fetch($id)>0) { $res = dolibarr_set_const($db, "PRELEVEMENT_ID_BANKACCOUNT", $id,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_CODE_BANQUE", $account->code_banque,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_CODE_GUICHET", $account->code_guichet,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_NUMERO_COMPTE", $account->number,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_NUMBER_KEY", $account->cle_rib,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_IBAN", $account->iban,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_BIC", $account->bic,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; $res = dolibarr_set_const($db, "PRELEVEMENT_RAISON_SOCIALE", $account->proprio,'chaine',0,'',$conf->entity); if (! $res > 0) $error++; } else $error++; if (! $error) { $db->commit(); setEventMessage($langs->trans("SetupSaved")); } else { $db->rollback(); setEventMessage($langs->trans("Error"),'errors'); } } if ($action == "addnotif") { $bon = new BonPrelevement($db); $bon->AddNotification($db,GETPOST('user','int'),$action); header("Location: prelevement.php"); exit; } if ($action == "deletenotif") { $bon = new BonPrelevement($db); $bon->DeleteNotificationById(GETPOST('notif','int')); header("Location: prelevement.php"); exit; } /* * View */ $form=new Form($db); llxHeader('',$langs->trans("WithdrawalsSetup")); $linkback=''.$langs->trans("BackToModuleList").''; print_fiche_titre($langs->trans("WithdrawalsSetup"),$linkback,'title_setup'); print '
'; print '
'; print ''; print ''; print ''; print ''; print ''; print ""; //User print ''; print ''; print ''; //Profid1 of Transmitter print ''; print ''; print ''; // Bank account (from Banks module) print ''; print ''; // ICS print ''; print ''; print ''; print '
'.$langs->trans("Parameter").''.$langs->trans("Value").'
'.$langs->trans("ResponsibleUser").''; print ''; print $form->select_dolusers($conf->global->PRELEVEMENT_USER,'value0',1); print '
'.$langs->trans("NumeroNationalEmetter").' - '.$langs->transcountry('ProfId1',$mysoc->country_code).''; print ''; print '
'.$langs->trans("BankToReceiveWithdraw").''; $form->select_comptes($conf->global->PRELEVEMENT_ID_BANKACCOUNT,'PRELEVEMENT_ID_BANKACCOUNT',0,"courant=1",1); print '
'.$langs->trans("ICS").''; print '
'; print '
'; print '
'; print '
'; dol_fiche_end(); print '
'; /* * Notifications */ /* Disable this, there is no trigger with elementtype 'withdraw' if (! empty($conf->global->MAIN_MODULE_NOTIFICATION)) { $langs->load("mails"); print_titre($langs->trans("Notifications")); $sql = "SELECT u.rowid, u.lastname, u.firstname, u.fk_soc, u.email"; $sql.= " FROM ".MAIN_DB_PREFIX."user as u"; $sql.= " WHERE entity IN (0,".$conf->entity.")"; $resql=$db->query($sql); if ($resql) { $num = $db->num_rows($resql); $var = true; $i = 0; while ($i < $num) { $obj = $db->fetch_object($resql); $var=!$var; if (!$obj->fk_soc) { $username=dolGetFirstLastname($obj->firstname,$obj->lastname); $internalusers[$obj->rowid] = $username; } $i++; } $db->free($resql); } // Get list of triggers for module withdraw $sql = "SELECT rowid, code, label"; $sql.= " FROM ".MAIN_DB_PREFIX."c_action_trigger"; $sql.= " WHERE elementtype = 'withdraw'"; $sql.= " ORDER BY rang ASC"; $resql = $db->query($sql); if ($resql) { $num = $db->num_rows($resql); $i = 0; $var = false; while ($i < $num) { $obj = $db->fetch_object($resql); $label=($langs->trans("Notify_".$obj->code)!="Notify_".$obj->code?$langs->trans("Notify_".$obj->code):$obj->label); $actions[$obj->rowid]=$label; $i++; } $db->free($resql); } print '
'; print ''; print ''; print ''; print ''; print ''; print ''; print "\n"; print ''; print ''; print ''; // List of current notifications for objet_type='withdraw' $sql = "SELECT u.lastname, u.firstname,"; $sql.= " nd.rowid, ad.code, ad.label"; $sql.= " FROM ".MAIN_DB_PREFIX."user as u,"; $sql.= " ".MAIN_DB_PREFIX."notify_def as nd,"; $sql.= " ".MAIN_DB_PREFIX."c_action_trigger as ad"; $sql.= " WHERE u.rowid = nd.fk_user"; $sql.= " AND nd.fk_action = ad.rowid"; $sql.= " AND u.entity IN (0,".$conf->entity.")"; $resql = $db->query($sql); if ($resql) { $num = $db->num_rows($resql); $i = 0; $var = false; while ($i < $num) { $obj = $db->fetch_object($resql); $var=!$var; print ""; print ''; $label=($langs->trans("Notify_".$obj->code)!="Notify_".$obj->code?$langs->trans("Notify_".$obj->code):$obj->label); print ''; print ''; print ''; $i++; } $db->free($resql); } print '
'.$langs->trans("User").''.$langs->trans("Value").''.$langs->trans("Action").'
'; print $form->selectarray('user',$internalusers);// select_users(0,'user',0); print ''; print $form->selectarray('action',$actions);// select_users(0,'user',0); print '
'.dolGetFirstLastname($obj->firstname,$obj->lastname).''.$label.'rowid.'">'.img_delete().'
'; print '
'; } */ $db->close(); llxFooter();