* Copyright (C) 2004-2015 Laurent Destailleur * Copyright (C) 2005-2012 Regis Houssin * Copyright (C) 2015 Jean-François Ferry * * 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 settlements/settlementsindex.php * \ingroup settlements * \brief Home page of settlements top menu */ // Load Dolibarr environment $res = 0; // Try main.inc.php into web root known defined into CONTEXT_DOCUMENT_ROOT (not always defined) if (!$res && !empty($_SERVER["CONTEXT_DOCUMENT_ROOT"])) { $res = @include $_SERVER["CONTEXT_DOCUMENT_ROOT"] . "/main.inc.php"; } // Try main.inc.php into web root detected using web root calculated from SCRIPT_FILENAME $tmp = empty($_SERVER['SCRIPT_FILENAME']) ? '' : $_SERVER['SCRIPT_FILENAME']; $tmp2 = realpath(__FILE__); $i = strlen($tmp) - 1; $j = strlen($tmp2) - 1; while ($i > 0 && $j > 0 && isset($tmp[$i]) && isset($tmp2[$j]) && $tmp[$i] == $tmp2[$j]) { $i--; $j--; } if (!$res && $i > 0 && file_exists(substr($tmp, 0, ($i + 1)) . "/main.inc.php")) { $res = @include substr($tmp, 0, ($i + 1)) . "/main.inc.php"; } if (!$res && $i > 0 && file_exists(dirname(substr($tmp, 0, ($i + 1))) . "/main.inc.php")) { $res = @include dirname(substr($tmp, 0, ($i + 1))) . "/main.inc.php"; } // Try main.inc.php using relative path if (!$res && file_exists("../main.inc.php")) { $res = @include "../main.inc.php"; } if (!$res && file_exists("../../main.inc.php")) { $res = @include "../../main.inc.php"; } if (!$res && file_exists("../../../main.inc.php")) { $res = @include "../../../main.inc.php"; } if (!$res) { die("Include of main fails"); } use Luracast\Restler\RestException; require_once DOL_DOCUMENT_ROOT . '/core/class/html.formfile.class.php'; require_once DOL_DOCUMENT_ROOT . '/user/class/usergroup.class.php'; require_once DOL_DOCUMENT_ROOT . '/custom/settlements/class/groupusers.class.php'; require_once DOL_DOCUMENT_ROOT . '/custom/settlements/class/usernaplo.class.php'; require_once DOL_DOCUMENT_ROOT . '/custom/settlements/class/helper.class.php'; require_once DOL_DOCUMENT_ROOT . '/custom/financialreport/class/helper.class.php'; $helper = new Helper($db); $userInvoiceHelper = new HelperUserInvoice($db); // Load translation files required by the page $langs->loadLangs(array("settlements@settlements")); $massaction = GETPOST('massaction', 'alpha'); // The bulk action (combo box choice into lists) $massactionadd = GETPOST('massactionadd', 'alpha'); // The bulk action (combo box choice into lists) $action = GETPOST('action', 'aZ09'); $id = GETPOST('id', 'int'); $idmenu = GETPOST('idmenu', 'int'); $toselect = GETPOST('toselect', 'array'); // Array of ids of elements selected into a list $toselectnewuser = GETPOST('toselectnewuser', 'array'); // Array of ids of elements selected into a list $search_title = GETPOST('search_title', 'alpha'); $confirmbutton = GETPOST('confirmbutton', 'int'); // Security check // if (! $user->rights->settlements->myobject->read) { // accessforbidden(); // } $socid = GETPOST('socid', 'int'); if (isset($user->socid) && $user->socid > 0) { $action = ''; $socid = $user->socid; } $max = 5; $now = dol_now(); $form = new Form($db); $formfile = new FormFile($db); $userNaplo = new UserNaplo($db); $groups = $helper->getSingleUserGroupsFromGroupClass($db); if (empty($id)) { $keys = array_keys($groups); $id = $keys[0]; } if ($confirmbutton) { foreach ($toselect as $selected) { $moredata = explode('_', $selected); $data = $helper->createDataArray($id, 'add', $moredata[1]); $userNaplo->createUserNaplo($user, $data); } setEventMessage($langs->trans("usersconfirmed")); } $usersOfGroups = $helper->getUsersById($db, $id); $allUsers = $helper->getAllUsers($db); $confirmButtonDisplay = empty($helper->getUsersOfGroupsFromNaploToday($db, $id)) && !empty($usersOfGroups) ? "display:block;" : "display:none;"; $entities = $helper->getAllEntities(); llxHeader('', $title, $help_url, '', 0, 0, $morejs, $morecss, '', 'classforhorizontalscrolloftabs'); //print_r($_REQUEST); $url = $_SERVER["PHP_SELF"] . '?idmenu=' . $idmenu . '&mainmenu=settlements&leftmenu='; if (isset($massaction) || isset($massactionadd)) { $url .= "&id={$id}"; } print '
' . "\n"; print ''; print ''; print ''; /*print ''; print ''; print ''; print '';*/ print load_fiche_titre($langs->trans("SettlementsSingleUser"), '', 'settlements.png@settlements'); //include DOL_DOCUMENT_ROOT . '/custom/settlements/core/tpl/usercheckboxes.tpl.php'; //--------------------------------------------- # 1 //--------------------------------------------- print '
'; print ''; print ''; foreach ($groups as $key => $val) { $coloredLine = $id == $key ? ' background-color: #b0c4de' : ''; print ''; } print '
' . $langs->trans("groupname") . '
' . $entities[$userInvoiceHelper->getGroupEntityId($key)] . '
'; print '
'; //--------------------------------------------- # 2 //--------------------------------------------- print '
'; print ''; print ''; print ''; if (!empty($usersOfGroups)) { foreach ($usersOfGroups as $user) { print ''; } } else { print ''; } print '
' . $langs->trans("usersofgroup", $groups[$id]) . '
' . $user['lastname'] . ' ' . $user['firstname'] . ' (' . $user['login'] . ')
' . $langs->trans('nouser') . '
'; print '
'; print '' . "\n"; // End of page llxFooter(); $db->close(); ?>