diff --git a/htdocs/telephonie/tarifs/config/grilles.php b/htdocs/telephonie/tarifs/config/grilles.php new file mode 100644 index 00000000000..ff56f33e37f --- /dev/null +++ b/htdocs/telephonie/tarifs/config/grilles.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. + * + * $Id$ + * $Source$ + * + */ +require("./pre.inc.php"); + +if ($_POST["action"] == 'add' && $user->rights->telephonie->tarif->permission) +{ + + require_once DOL_DOCUMENT_ROOT."/telephonie/telephonie.tarif.grille.class.php"; + + $obgrille = new TelephonieTarifGrille($db); + + $obgrille->CreateGrille($user, $_POST["nom"], $_POST["type"]); + + Header("Location: grilles.php"); + +} + + +llxHeader("","Configuration des grilles tarifs"); + +/* + * Sécurité accés client + */ +if ($user->societe_id > 0) +{ + $action = ''; + $socid = $user->societe_id; +} + +/* + * Mode Liste + * + * + * + */ +print ''; +print '
'; + +$sql = "SELECT d.libelle as tarif_desc, d.rowid, d.type_tarif"; + +$sql .= " FROM ".MAIN_DB_PREFIX."telephonie_tarif_grille as d"; +$sql .= "," . MAIN_DB_PREFIX."telephonie_tarif_grille_rights as r"; +$sql .= " WHERE d.rowid = r.fk_grille"; +$sql .= " AND r.fk_user =".$user->id; +$sql .= " AND r.pread = 1"; +$sql .= " ORDER BY d.libelle"; + +$result = $db->query($sql); +if ($result) +{ + $num = $db->num_rows(); + $i = 0; + + print ''; + print ''; + print ""; + print "\n"; + + $var=True; + + while ($i < $num) + { + $obj = $db->fetch_object($i); + $var=!$var; + + print ""; + print '\n"; + print '\n"; + print "\n"; + $i++; + } + print "
GrilleType
'.$obj->tarif_desc."'.$obj->type_tarif."
"; + $db->free(); +} +else +{ + print $db->error() . ' ' . $sql; +} + +print '
'; + + + +print '

'; +print ''; + +print ''; + +// Nom +print "".''; +print ''; +print "".''; +print "".''; + +print '
'.$langs->trans("Lastname").'*'; + +print ''; + +print '
Type de grille
'; + + +//print '
Tableur des tarifs d\'achats comparés'; + +$db->close(); + +llxFooter("Dernière modification $Date$ révision $Revision$"); +?> diff --git a/htdocs/telephonie/tarifs/config/index.php b/htdocs/telephonie/tarifs/config/index.php new file mode 100644 index 00000000000..0345b28a055 --- /dev/null +++ b/htdocs/telephonie/tarifs/config/index.php @@ -0,0 +1,173 @@ + + * + * 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. + * + * $Id$ + * $Source$ + * + */ +require("./pre.inc.php"); + +llxHeader(); + +/* + * Sécurité accés client + */ +if ($user->societe_id > 0) +{ + $action = ''; + $socid = $user->societe_id; +} + + + +/* + * Recherche + * + * + */ +if ($mode == 'search') { + if ($mode-search == 'soc') { + $sql = "SELECT s.idp FROM ".MAIN_DB_PREFIX."societe as s "; + $sql .= " WHERE lower(s.nom) like '%".strtolower($socname)."%'"; + } + + if ( $db->query($sql) ) { + if ( $db->num_rows() == 1) { + $obj = $db->fetch_object(0); + $socid = $obj->idp; + } + $db->free(); + } +} + +$page = $_GET["page"]; +$sortorder = $_GET["sortorder"]; +$sortfield = $_GET["sortfield"]; + +if ($sortorder == "") $sortorder="ASC"; +if ($sortfield == "") $sortfield="t.libelle ASC, d.rowid "; + +$offset = $conf->liste_limit * $page ; + +/* + * Mode Liste + * + * + * + */ + +$sql = "SELECT d.rowid as grille, d.libelle as tarif_desc, d.type_tarif"; +$sql .= " , t.libelle as tarif, t.rowid as tarif_id"; +$sql .= " , m.temporel, m.fixe"; +$sql .= " , u.login"; +$sql .= " FROM ".MAIN_DB_PREFIX."telephonie_tarif_grille as d"; +$sql .= "," . MAIN_DB_PREFIX."telephonie_tarif_grille_rights as r"; +$sql .= "," . MAIN_DB_PREFIX."telephonie_tarif_montant as m"; +$sql .= "," . MAIN_DB_PREFIX."telephonie_tarif as t"; +$sql .= "," . MAIN_DB_PREFIX."user as u"; + +$sqlc .= " WHERE d.rowid = m.fk_tarif_desc"; +$sqlc .= " AND m.fk_tarif = t.rowid"; +$sqlc .= " AND m.fk_user = u.rowid"; + +$sqlc .= " AND d.rowid = r.fk_grille"; +$sqlc .= " AND r.fk_user =".$user->id; +$sqlc .= " AND r.pread = 1"; + +if ($_GET["search_libelle"]) +{ + $sqlc .=" AND t.libelle LIKE '%".$_GET["search_libelle"]."%'"; +} + +if ($_GET["search_grille"]) +{ + $sqlc .=" AND d.libelle LIKE '%".$_GET["search_grille"]."%'"; +} + +if ($_GET["type"]) +{ + $sqlc .= " AND d.type_tarif = '".$_GET["type"]."'"; +} + +$sql = $sql . $sqlc . " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit+1, $offset); + + +$resql = $db->query($sql); +if ($resql) +{ + $num = $db->num_rows($resql); + $i = 0; + + print_barre_liste("Tarifs", $page, "index.php", "&type=".$_GET["type"], $sortfield, $sortorder, '', $num); + + print ''; + print ''; + + print_liste_field_titre("Tarif","index.php","d.libelle"); + + print_liste_field_titre("Destination","index.php","t.libelle", "&type=".$_GET["type"]); + + print_liste_field_titre("Cout / min","index.php","temporel", "&type=".$_GET["type"]); + print ""; + print ""; + print ''; + print "\n"; + + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + + $var=True; + + while ($i < min($num,$conf->liste_limit)) + { + $obj = $db->fetch_object($resql); + $var=!$var; + + print ""; + + print '\n"; + print '\n"; + print "\n"; + print "\n"; + print '\n"; + print '\n"; + print "\n"; + $i++; + } + print "
Cout fixeTypeUser
   
'; + print $obj->tarif_desc."'; + print $obj->tarif."".sprintf("%01.4f",$obj->temporel)."".sprintf("%01.4f",$obj->fixe)."'.$obj->type_tarif."'.$obj->login."
"; + $db->free(); +} +else +{ + print $db->error() . ' ' . $sql; +} + +$db->close(); + +llxFooter("Dernière modification $Date$ révision $Revision$"); +?> diff --git a/htdocs/telephonie/tarifs/config/pre.inc.php b/htdocs/telephonie/tarifs/config/pre.inc.php new file mode 100644 index 00000000000..5aa4c8fab9f --- /dev/null +++ b/htdocs/telephonie/tarifs/config/pre.inc.php @@ -0,0 +1,83 @@ + + * + * 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. + * + * $Id$ + * $Source$ + * + */ +require("../../../main.inc.php"); + +$user->getrights('telephonie'); + +function llxHeader($head = "", $title="") { + global $user; + + /* + * + * + */ + top_menu($head, $title); + + $menu = new Menu(); + + $menu->add(DOL_URL_ROOT."/telephonie/index.php", "Telephonie"); + + if (TELEPHONIE_MODULE_SIMULATION == 1) + { + + $menu->add(DOL_URL_ROOT."/telephonie/simulation/fiche.php", "Simulation"); + $menu->add_submenu(DOL_URL_ROOT."/telephonie/simulation/fiche.php?action=create", "Nouvelle"); + } + + + $menu->add(DOL_URL_ROOT."/telephonie/client/index.php", "Clients"); + + $menu->add(DOL_URL_ROOT."/telephonie/contrat/", "Contrats"); + + $menu->add(DOL_URL_ROOT."/telephonie/ligne/index.php", "Lignes"); + + if ($user->rights->telephonie->ligne_commander) + $menu->add(DOL_URL_ROOT."/telephonie/ligne/commande/", "Commandes"); + + if ($user->rights->telephonie->stats->lire) + $menu->add(DOL_URL_ROOT."/telephonie/stats/", "Statistiques"); + + if ($user->rights->telephonie->facture->lire) + $menu->add(DOL_URL_ROOT."/telephonie/facture/", "Factures"); + + $menu->add(DOL_URL_ROOT."/telephonie/tarifs/", "Tarifs"); + $menu->add(DOL_URL_ROOT."/telephonie/tarifs/config/", "Tarifs (Configuration)"); + + $menu->add_submenu(DOL_URL_ROOT."/telephonie/tarifs/config/grilles.php", "Grilles"); + + $menu->add_submenu(DOL_URL_ROOT."/telephonie/tarifs/config/tarifs.php", "Tarifs"); + $menu->add_submenu(DOL_URL_ROOT."/telephonie/tarifs/config/prefixs.php", "Prefixs"); + + if ($user->rights->telephonie->tarif->permission) + $menu->add_submenu(DOL_URL_ROOT."/telephonie/tarifs/permissions.php", "Permissions"); + + if ($user->rights->telephonie->tarif->permission) + $menu->add_submenu(DOL_URL_ROOT."/telephonie/tarifs/config/", "Configuration"); + + if ($user->rights->telephonie->fournisseur->lire) + $menu->add(DOL_URL_ROOT."/telephonie/fournisseurs.php", "Fournisseurs"); + + + left_menu($menu->liste); +} + +?> diff --git a/htdocs/telephonie/tarifs/config/prefixs.php b/htdocs/telephonie/tarifs/config/prefixs.php new file mode 100644 index 00000000000..9560f84dd8d --- /dev/null +++ b/htdocs/telephonie/tarifs/config/prefixs.php @@ -0,0 +1,151 @@ + + * + * 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. + * + * $Id$ + * $Source$ + * + */ +require("./pre.inc.php"); + +llxHeader(); + +/* + * Sécurité accés client + */ +if ($user->societe_id > 0) +{ + $action = ''; + $socid = $user->societe_id; +} + + + +/* + * Recherche + * + * + */ +if ($mode == 'search') { + if ($mode-search == 'soc') { + $sql = "SELECT s.idp FROM ".MAIN_DB_PREFIX."societe as s "; + $sql .= " WHERE lower(s.nom) like '%".strtolower($socname)."%'"; + } + + if ( $db->query($sql) ) { + if ( $db->num_rows() == 1) { + $obj = $db->fetch_object(0); + $socid = $obj->idp; + } + $db->free(); + } +} + +$page = $_GET["page"]; +$sortorder = $_GET["sortorder"]; +$sortfield = $_GET["sortfield"]; + +if ($sortorder == "") $sortorder="ASC"; +if ($sortfield == "") $sortfield="p.prefix "; + +$offset = $conf->liste_limit * $page ; + +/* + * Mode Liste + * + * + * + */ + +$sql = "SELECT t.libelle as tarif, t.rowid as tarif_id"; +$sql .= " , p.prefix"; + +$sql .= " FROM ".MAIN_DB_PREFIX."telephonie_prefix as p"; +$sql .= "," . MAIN_DB_PREFIX."telephonie_tarif as t"; + +$sqlc .= " WHERE p.fk_tarif = t.rowid"; + + +if ($_GET["search_libelle"]) +{ + $sqlc .=" AND t.libelle LIKE '%".$_GET["search_libelle"]."%'"; +} + +if ($_GET["search_prefix"]) +{ + $sqlc .=" AND p.prefix LIKE '%".$_GET["search_prefix"]."%'"; +} + +if ($_GET["type"]) +{ + $sqlc .= " AND d.type_tarif = '".$_GET["type"]."'"; +} + +$sql = $sql . $sqlc . " ORDER BY $sortfield $sortorder " . $db->plimit($conf->liste_limit+1, $offset); + + +$resql = $db->query($sql); +if ($resql) +{ + $num = $db->num_rows($resql); + $i = 0; + + print_barre_liste("Prefixs", $page, "prefixs.php", "&type=".$_GET["type"], $sortfield, $sortorder, '', $num); + + print ''; + print ''; + + print_liste_field_titre("Prefix","prefixs.php","p.prefix"); + print_liste_field_titre("Tarif","prefixs.php","t.libelle"); + + print "\n"; + + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + print ''; + + $var=True; + + while ($i < min($num,$conf->liste_limit)) + { + $obj = $db->fetch_object($resql); + $var=!$var; + + print ""; + print "\n"; + print '\n"; + print "\n"; + + $i++; + } + print "
 
".$obj->prefix."'; + print $obj->tarif." 
"; + $db->free(); +} +else +{ + print $db->error() . ' ' . $sql; +} + +$db->close(); + +llxFooter("Dernière modification $Date$ révision $Revision$"); +?> diff --git a/htdocs/telephonie/tarifs/config/tarifs.php b/htdocs/telephonie/tarifs/config/tarifs.php new file mode 100644 index 00000000000..f76991dc73d --- /dev/null +++ b/htdocs/telephonie/tarifs/config/tarifs.php @@ -0,0 +1,120 @@ + + * + * 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. + * + * $Id$ + * $Source$ + * + */ +require("./pre.inc.php"); + +$page = $_GET["page"]; +$sortorder = $_GET["sortorder"]; +$sortfield = $_GET["sortfield"]; + +/* + * + * + */ +if ($_POST["action"] == 'add') +{ + + require_once DOL_DOCUMENT_ROOT."/telephonie/telephonie.tarif.class.php"; + + $ob = new TelephonieTarif($db,1,0); + + $ob->CreateTarif($_POST["nom"], $_POST["type"]); + + Header("Location: tarifs.php"); + +} + +llxHeader(); + +/* + * Sécurité accés client + */ +if ($user->societe_id > 0) +{ + $action = ''; + $socid = $user->societe_id; +} + + +print '
'; +print ''; + +print ''; + +// Nom +print "".''; +print ''; +print "".''; +print "".''; + +print '
'.$langs->trans("Lastname").'*'; +print ''; + +print '
Type de grille
'; + + +print '
'; +print '
'; + +$sql = "SELECT tt.libelle as tarif_desc, tt.rowid"; +$sql .= " FROM ".MAIN_DB_PREFIX."telephonie_tarif as tt"; +$sql .= " ORDER BY tt.libelle;"; + +$result = $db->query($sql); +if ($result) +{ + $num = $db->num_rows(); + $i = 0; + + print ''; + print ''; + print ""; + print "\n"; + + $var=True; + + while ($i < $num) + { + $obj = $db->fetch_object($i); + $var=!$var; + + print ""; + print '\n"; + + print "\n"; + $i++; + } + print "
Tarifs
'.$obj->tarif_desc."
"; + $db->free(); +} +else +{ + print $db->error() . ' ' . $sql; +} + +print '
'; + + + +$db->close(); + +llxFooter("Dernière modification $Date$ révision $Revision$"); +?>