提交 56922c77 authored 作者: Meftah Tayeb's avatar Meftah Tayeb

some change to my directory layout

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk/contrib@14657 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 cc9d22bf
</div>
<div id="pied_de_page">
<div class="flot_gauche">
<br /> <br />
<?php
echo ('copyright (C) 2009 Freeswitch.org');
echo ('<p></p>');
$temps_fin = microtime(true);
$temps_execution = round($temps_fin - $temps_debut,4);
$temps_execution = "Version 0.1 |randred in : ".($temps_execution * 1000).' ms ';
echo $temps_execution;
?>
</div>
</body>
</html>
<?php
define('MODE_DEBUG', true);
define('SQL_DSN', 'localhost');
define('SQL_USERNAME', 'root' );
define('SQL_PASSWORD', 'root' );
define('SQL_BDD', 'fs2bill' );
// Chemins à utiliser pour accéder aux vues/modeles/librairies
$module = empty($module) ? !empty($_GET['module']) ? $_GET['module'] : 'accueil' : $module;
// -- Chemins
define('CHEMIN_VUE' , 'modules/'.$module.'/vues/');
define('CHEMIN_VUE_GLOBALE' , 'vues_globales/' );
define('CHEMIN_MODELE' , 'modeles/' );
define('CHEMIN_LIB' , 'libs/' );
define('GATEWAYS_PAR_PAGE' , 15);
define('NUMBERS_PAR_PAGE' , 15);
?>
\ No newline at end of file
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
<head>
<?php
$titre = empty($head['titre']) ? 'easyroute' : $head['titre'];
?>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Language" content="fr" />
<title> <?php echo $titre ?> </title>
</head>
<body>
<div id="en_tete">
<ul>
<li><a href="./index.php">Home</a></li>
<li><a href="http://www.freeswitch.org">Freeswitch Home Page</a></li>
<li><a href="http://wiki.Freeswitch.org">Freeswitch WIKI</a></li>
</ul>
</div>
<div id="corps">
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
eduDz
Derniere mise a jour : Juin 09
Auteur : InSiDe
Dev 1.7 MVC Phoenix Rising (Commencée le 28 Mai 2009)
------------------------------------------------------------------------------*/
require_once 'global/config.php';
// Utilisation et démarrage des sessions
session_start();
// On se connecte à la BDD
mysql_connect(SQL_DSN, SQL_USERNAME, SQL_PASSWORD)
or trigger_error('Impossible de se connecter à la base de donnée', E_USER_ERROR);
mysql_select_db(SQL_BDD);
mysql_query ('SET NAMES utf8');
// Pour que la date soit en francais ^^ setLocale(LC_TIME, 'fr_FR', 'fra');
setLocale(LC_TIME, 'fr_FR.utf8', 'fra.utf-8');
?>
\ No newline at end of file
<?php
$temps_debut = microtime(true);
// Initialisation
include 'global/init.php';
// Début de la tamporisation de sortie
ob_start();
$page = !empty($_GET['page']) ? (int) $_GET['page'] : 1 ;
// Si un module est specifié, on regarde s'il existe
if (!empty($_GET['module']))
{
$module = dirname(__FILE__).'/modules/'.$_GET['module'].'/';
// Si l'action est specifiée, on l'utilise, sinon, on tente une action par défaut
$action = (!empty($_GET['action'])) ? $_GET['action'].'.php' : 'index.php';
// Si l'action existe, on l'exécute
if (is_file($module.$action))
include $module.$action;
// Sinon, on affiche la page d'accueil !
else
include 'global/module_introuvable.php';
}
// Module non specifié ou invalide ? On affiche la page d'accueil !
else
include 'modules/accueil/accueil.php';
// Fin de la tamporisation de sortie
$contenu = ob_get_clean();
// Début du code HTML
include 'global/haut.php';
echo $contenu;
// Fin du code HTML
include 'global/bas.php';
?>
\ No newline at end of file
<?php
function paigner($n_messages, $n_par_page, $page, $lien)
{
$adj = 3;
$n_messages = (int) $n_messages;
$n_par_page = (int) $n_par_page;
$page = (int) $page;
$pagination = null;
// S'il y a une ou aucune page
if($n_messages == 0 OR $n_messages < $n_par_page)
return null;
$total = ceil($n_messages / $n_par_page);
if ($total < 7 + ($adj * 2))
{
/* Pour les pages restantes on utilise une boucle for */
for ($i = 1; $i <= $total; $i++)
{
if ($i == $page) // Le numéro de la page courante est mis en évidence (cf fichier CSS)
$pagination .= $i;
else // Les autres sont affichés normalement
$pagination .= sprintf($lien, $i);
}
}
/* CAS 2 : au moins 13 pages, troncature */
else
{
/*
Troncature 1 : on se situe dans la partie proche des premières pages, on tronque donc la fin de la pagination.
l'affichage sera de neuf numéros de pages à gauche ... deux à droite (cf figure 1)
*/
if ($page < 2 + ($adj * 2))
{
// Affichage du numéro de page 1
// puis des huit autres suivants */
for ($i = 1; $i < (4 + ($adj * 2)); $i++)
{
if ($i == $page)
$pagination .= $i;
else
$pagination .= sprintf($lien, $i);
}
/* ... pour marquer la troncature */
$pagination .= ' ... ';
/* et enfin les deux derniers numéros */
$pagination .= sprintf($lien, ($total -1) );
$pagination .= sprintf($lien, $total );
}
/*
Troncature 2 : on se situe dans la partie centrale de notre pagination, on tronque donc le début et la fin
de la pagination.
l'affichage sera deux numéros de pages à gauche ... sept au centre ... deux à droite (cf figure 2)
*/
elseif ( (($adj * 2) + 1 < $page) && ($page < $total - ($adj * 2)) )
{
/* Affichage des numéros 1 et 2 */
$pagination .= sprintf($lien, 1);
$pagination .= sprintf($lien, 2);
$pagination .= ' ... ';
/* les septs du milieu : les trois précédents la page courante, la page courante, puis les trois
lui succédant */
for ($i = $page - $adj; $i <= $page + $adj; $i++)
{
if ($i == $page)
$pagination .= $i;
else
$pagination .= sprintf($lien, $i);
}
$pagination .= ' ... ';
/* et enfin les deux derniers numéros */
$pagination .= sprintf($lien, ($total -1) );
$pagination .= sprintf($lien, $total );
}
/*
Troncature 3 : on se situe dans la partie de droite, on tronque donc le début de la pagination.
l'affichage sera deux numéros de pages à gauche ... neuf à droite (cf figure 3)
*/
else
{
/* Affichage des numéros 1 et 2 */
$pagination .= sprintf($lien, 1);
$pagination .= sprintf($lien, 2);
$pagination .= ' ... ';
/* puis des neufs dernières */
for ($i = $total - (2 + ($adj * 2)); $i <= $total; $i++)
{
if ($i == $page)
$pagination .= $i;
else
$pagination .= sprintf($lien, $i);
}
}
}
return '<br /> <div class="paignation"> Page : '.$pagination.' </div> <br />';
}
?>
\ No newline at end of file
<?php
class Gateway
{
public function __construct()
{
}
public function countGateways()
{
// Compte le nombre de news valide
$sql = "SELECT COUNT(*) FROM gateways";
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
$data = mysql_fetch_row($requete);
return (int) $data[0];
}
public function deleteGateway($id)
{
// Compte le nombre de news valide
$sql = "DELETE FROM gateways WHERE gateway_id = ".(int) $id;
$sql2 = "DELETE FROM numbers WHERE gateway_id = ".(int) $id;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
$requete2 = mysql_query($sql2) or trigger_error( mysql_error(), E_USER_ERROR);
return true;
}
public function getAllGateways($debut, $limite)
{
$debut = (int) $debut ;
$limite = (int) $limite ;
$sql = "SELECT gateway_id , gateway_ip , `group` , `limit` , techprofile FROM gateways
ORDER by gateway_id DESC LIMIT ".$debut.", ".$limite;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return $requete;
}
public function getAGateway($id_gatway)
{
$sql = "SELECT gateway_id, gateway_ip, `group` , `limit` , techprofile
FROM gateways
WHERE gateway_id = ".(int) $id_gatway;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
$data = mysql_fetch_assoc($requete);
return $data;
}
public function addGateway($gateway_ip, $group, $limit, $techprofile)
{
$limit = (int) $limit;
$sql = 'INSERT INTO gateways SET
gateway_id = "" ,
gateway_ip = "'. $gateway_ip .'" ,
`group` = "'. $group.'" ,
`limit` = '. $limit .' ,
techprofile = "'. $techprofile .'" ';
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return (int) mysql_insert_id();
}
public function updateGateway($id_gatway, $gateway_ip, $group, $limit, $techprofile)
{
$limit = (int) $limit;
$sql = 'UPDATE gateways SET
gateway_ip = "'. $gateway_ip .'" ,
`group` = "'. $group.'" ,
`limit` = '. $limit .' ,
techprofile = "'. $techprofile .'"
WHERE gateway_id = '.(int) $id_gatway;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return true;
}
}
\ No newline at end of file
<?php
class Number
{
public function __construct()
{
}
public function countNumbers()
{
// Compte le nombre de news valide
$sql = "SELECT COUNT(*) FROM numbers";
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
$data = mysql_fetch_row($requete);
return (int) $data[0];
}
public function deleteNumber($id)
{
// Compte le nombre de news valide
$sql = "DELETE FROM numbers WHERE number_id = ".(int) $id;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return true;
}
public function getAllNumbers($debut, $limite)
{
$debut = (int) $debut ;
$limite = (int) $limite ;
$sql = "SELECT number_id , gateway_id , number , acctcode , translated FROM numbers
ORDER by number_id DESC LIMIT ".$debut.", ".$limite;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return $requete;
}
public function getNumber($id_number)
{
$sql = "SELECT number_id , gateway_id , number , acctcode , translated FROM numbers
WHERE number_id = ".(int) $id_number;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
$data = mysql_fetch_assoc($requete);
return $data;
}
public function addNumber($gateway_id, $number, $acctcode, $translated)
{
$gateway_id = (int) $gateway_id;
$sql = 'INSERT INTO numbers SET
number_id = "" ,
gateway_id = '. $gateway_id .' ,
number = "'. $number.'" ,
acctcode = "'. $acctcode .'" ,
translated = "'. $translated .'" ';
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return (int) mysql_insert_id();
}
public function updateGateway($id_number, $gateway_id, $number, $acctcode, $translated)
{
$gateway_id = (int) $gateway_id;
$sql = 'UPDATE numbers SET
gateway_id = "'. $gateway_id .'" ,
number = "'. $number.'" ,
acctcode = "'. $acctcode .'" ,
translated = "'. $translated .'"
WHERE number_id = '.(int) $id_number;
$requete = mysql_query($sql) or trigger_error( mysql_error(), E_USER_ERROR);
return true;
}
}
\ No newline at end of file
<?php
include CHEMIN_VUE. 'bienvenue.tpl.php';
\ No newline at end of file
<h1>Welcome to Easy Route Manager</h1>
<p>
<ul>
<li> <a href="./index.php?module=gateway&action=liste_gateways">Gateways</a> <br /></li>
<li> <a href="./index.php?module=numbers&action=liste_numbers">Numbers</a></li>
</ul>
<h2>Welcome</h2>
<p>Easy route is a module that route inbound/ outbound calls to a specific number troug gateways
<p>this is a web management interface, to manage your Easyroute Database, including dids and gateways</p>
</p>
</p>
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
include CHEMIN_MODELE. 'gateway.class.php';
if (!empty($_POST['uniqid']))
{
if(empty($_POST['gateway_ip']) )
$erreurs[] = "gateway_ip est vide.";
if(empty($_POST['group']) )
$erreurs[] = "group est vide.";
if(empty($_POST['limit']) )
$erreurs[] = "limit est vide.";
if(empty($_POST['techprofile']) )
$erreurs[] = "Techprofile est vide.";
if(empty($erreurs))
{
$ip = htmlspecialchars($_POST['gateway_ip'], ENT_COMPAT, 'UTF-8');
$ip = mysql_real_escape_string($ip);
$group = htmlspecialchars($_POST['group'], ENT_COMPAT, 'UTF-8');
$group = mysql_real_escape_string($group);
$limit = htmlspecialchars($_POST['limit'], ENT_COMPAT, 'UTF-8');
$limit = mysql_real_escape_string($limit);
$techprofile = htmlspecialchars($_POST['techprofile'], ENT_COMPAT, 'UTF-8');
$techprofile = mysql_real_escape_string($techprofile);
// Instanciation de la classe Commentaires
$gateway = new Gateway();
if($gateway->addGateway($ip, $group, $limit, $techprofile))
header('location:./index.php?module=gateway&action=liste_gateways');
else
trigger_error("Erreur SQL impossible d'ajouter un nouv. gateway", E_USER_ERROR);
}
}
// Affichage
include CHEMIN_VUE. 'formulalre_ajouter_gateway.tpl.php';
?>
\ No newline at end of file
<?php
require CHEMIN_LIB. 'fonction.paigner.php';
include CHEMIN_MODELE. 'gateway.class.php';
$head['titre'] = 'Manage Gateways.';
// Instanciation de la classe Commentaires
$gateway = new Gateway();
// Récupération du nombre de commentaires
$nombre_gateways = $gateway->countGateways();
// Préparation de la paignation
$lien_paignation = ' <a href="./index.php?module=gateway&action=liste_gateways&page=%d"> %1$d </a> ';
$paignation = paigner($nombre_gateways, GATEWAYS_PAR_PAGE, $page, $lien_paignation);
// Récupération des commentaires
$premiereGatway = ($page -1) * GATEWAYS_PAR_PAGE;
$requete = $gateway->getAllGateways($premiereGatway, GATEWAYS_PAR_PAGE);
// Affichage
include CHEMIN_VUE. 'en-tete_liste_gateways.tpl.php';
while($data = mysql_fetch_assoc($requete))
include CHEMIN_VUE. 'colonne_gateway.tpl.php';
include CHEMIN_VUE. 'bas_liste_gateways.tpl.php';
if (!$gateway->countGateways()){
echo ('<ul><li>no gateway to display</li></ul>');
};
?>
\ No newline at end of file
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
include CHEMIN_MODELE. 'gateway.class.php';
if(empty($_GET['id']))
trigger_error("ID du number gateway.", E_USER_ERROR);
$id_gateway = (int) $_GET['id'];
if (!empty($_POST['uniqid']))
{
if(!isset($_POST['gateway_ip']) )
$erreurs[] = "gateway_ip est inexistant.";
if(!isset($_POST['group']) )
$erreurs[] = "group est inexistant.";
if(!isset($_POST['limit']) )
$erreurs[] = "limit est inexistant.";
if(!isset($_POST['techprofile']) )
$erreurs[] = "limit est inexistant.";
if(empty($erreurs))
{
$ip = htmlspecialchars($_POST['gateway_ip'], ENT_COMPAT, 'UTF-8');
$ip = mysql_real_escape_string($ip);
$group = htmlspecialchars($_POST['group'], ENT_COMPAT, 'UTF-8');
$group = mysql_real_escape_string($group);
$limit = htmlspecialchars($_POST['limit'], ENT_COMPAT, 'UTF-8');
$limit = mysql_real_escape_string($limit);
$techprofile = htmlspecialchars($_POST['techprofile'], ENT_COMPAT, 'UTF-8');
$translated = mysql_real_escape_string($translated);
// Instanciation Number
$getway = new Gateway();
if($getway->updateGateway($id_gateway, $ip, $group, $limit, $techprofile))
header('location:./index.php?module=getway&action=liste_getways');
else
trigger_error("Erreur SQL impossible de modifier le getway", E_USER_ERROR);
}
}
$getway = new Gateway();
$data = $getway->getAGateway($id_gateway);
// Affichage
include CHEMIN_VUE. 'formulalre_modifier_gateway.tpl.php';
?>
\ No newline at end of file
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
include CHEMIN_MODELE. 'gateway.class.php';
if (empty($_GET['id']))
trigger_error("ID du gateway introuvable.", E_USER_ERROR);
$id = (int) $_GET['id'];
// Instanciation de la classe Commentaires
$gateway = new Gateway();
if($gateway->deleteGateway($id))
header('location:./index.php?module=gateway&action=liste_gateways');
else
trigger_error("Erreur SQL impossible de supprimer le gateway", E_USER_ERROR);
?>
\ No newline at end of file
<tr>
<td> <?php echo $data['gateway_id'] ?> </td>
<td> <?php echo $data['gateway_ip'] ?> </td>
<td> <?php echo $data['group'] ?> </td>
<td> <?php echo $data['limit'] ?> </td>
<td> <?php echo $data['techprofile'] ?> </td>
<td>
<a href="./index.php?module=gateway&action=modifier&id=<?php echo $data['gateway_id']?>">Modifier</a>
</td>
<td>
<a href="./index.php?module=gateway&action=supprimer&id=<?php echo $data['gateway_id']?>">Supprimer</a>
</td>
<td>
<a href="./index.php?module=numbers&action=ajouter&id=<?php echo $data['gateway_id']?>">Number</a>
</td>
</tr>
\ No newline at end of file
<h1>Manage Gateway</h1>
<a href="./index.php?module=gateway&action=ajouter">Add a new gateway</a>
<br /> <br />
<?php echo $paignation; ?>
<br /> <br />
<table>
<th> ID </th>
<th> IP </th>
<th> Group </th>
<th> Limit </th>
<th> Techprofile </th>
<th> edit </th>
<th> delete </th>
\ No newline at end of file
<h2> add a new gateway </h2>
<a href="./index.php?module=gateway&action=liste_gateways">Gateways List</a>
<br /> <br />
<p>&nbsp;</p>
<?php
if (!empty($erreurs))
{
echo ' <ul>'."\n";
foreach($erreurs as $e)
echo '<li>'. $e .'</li>'."\n";
echo '</ul>';
}
?>
<form method="post" name="formulaire">
<p>
<label for="gateway_ip">IP :</label> <br />
<input type="text" size="80" id="gateway_ip" name="gateway_ip" maxlength="255"/>
</p>
<p>
<label for="group">Groupe :</label> <br />
<input type="text" size="80" id="group" name="group" maxlength="255"/>
</p>
<p>
<label for="limit">Limite :</label> <br />
<input type="text" size="80" id="limit" name="limit" maxlength="255"/>
</p>
<p>
<label for="techprofile">Techprofile :</label> <br />
<textarea name="techprofile" id="techprofile" cols="50" rows="16"></textarea>
</p>
<input type="hidden" name="uniqid" value="02A4B"/>
<p>
<input type="submit" value="save" />
</p>
</div>
</form>
\ No newline at end of file
<h2> Edit Gateway </h2>
<a href="./index.php?module=gateway&action=liste_gateways">Gateways List</a>
<br /> <br />
<p>&nbsp;</p>
<?php
if (!empty($erreurs))
{
echo ' <ul>'."\n";
foreach($erreurs as $e)
echo '<li>'. $e .'</li>'."\n";
echo '</ul>';
}
?>
<form method="post" name="formulaire">
<p>
<label for="gateway_ip">IP :</label> <br />
<input type="text" size="80" id="gateway_ip" name="gateway_ip" value="<?php echo $data['gateway_ip'] ?>" />
</p>
<p>
<label for="group">Groupe :</label> <br />
<input type="text" size="80" id="group" name="group" maxlength="255" value="<?php echo $data['group'] ?>"/>
</p>
<p>
<label for="limit">Limite : </label> <br />
<input type="text" size="80" id="limit" name="limit" maxlength="255" value="<?php echo $data['limit'] ?>"/>
</p>
<p>
<label for="techprofile">Techprofile : </label> <br />
<textarea name="techprofile" id="techprofile" cols="50" rows="16"><?php echo $data['techprofile'] ?>"</textarea>
</p>
<input type="hidden" name="uniqid" value="02XA4B"/>
<p>
<input type="submit" value="Envoyer" />
</p>
</div>
</form>
\ No newline at end of file
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
include CHEMIN_MODELE. 'number.class.php';
if(isset($_GET['id']))
$id_gate = (int) $_GET['id'];
else
$id_gate = null;
if (!empty($_POST['uniqid']))
{
if(empty($_POST['gateway_id']) )
$erreurs[] = "gateway_id est vide.";
if(empty($_POST['number']) )
$erreurs[] = "number est vide.";
if(empty($_POST['acctcode']) )
$erreurs[] = "acctcode est vide.";
if(empty($_POST['translated']) )
$erreurs[] = "translated est vide.";
if(empty($erreurs))
{
$gateway = htmlspecialchars($_POST['gateway_id'], ENT_COMPAT, 'UTF-8');
$gateway = mysql_real_escape_string($gateway);
$number = htmlspecialchars($_POST['number'], ENT_COMPAT, 'UTF-8');
$number = mysql_real_escape_string($number);
$acctcode = htmlspecialchars($_POST['acctcode'], ENT_COMPAT, 'UTF-8');
$acctcode = mysql_real_escape_string($limit);
$translated = htmlspecialchars($_POST['translated'], ENT_COMPAT, 'UTF-8');
$translated = mysql_real_escape_string($techprofile);
$gateway = new Number();
if($gateway->addNumber($gateway, $number, $acctcode, $translated))
header('location:./index.php?module=numbers&action=liste_numbers');
else
trigger_error("Erreur SQL impossible d'ajouter un nouv. Number", E_USER_ERROR);
}
}
// Affichage
include CHEMIN_VUE. 'formulalre_ajouter_number.tpl.php';
?>
\ No newline at end of file
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
require CHEMIN_LIB. 'fonction.paigner.php';
include CHEMIN_MODELE. 'number.class.php';
$head['titre'] = 'Manage Numbers';
// Instanciation de la classe Commentaires
$number = new Number();
// Récupération du nombre de commentaires
$nombre_numbers = $number->countNumbers();
// Préparation de la paignation
$lien_paignation = ' <a href="./index.php?module=numbers&action=liste_numbers&page=%d"> %1$d </a> ';
$paignation = paigner($nombre_numbers, NUMBERS_PAR_PAGE, $page, $lien_paignation);
// Récupération des commentaires
$premiereNumber = ($page -1) * NUMBERS_PAR_PAGE;
$requete = $number->getAllNumbers($premiereNumber, NUMBERS_PAR_PAGE);
// Affichage
include CHEMIN_VUE. 'en-tete_liste_numbers.tpl.php';
while($data = mysql_fetch_assoc($requete))
include CHEMIN_VUE. 'colonne_number.tpl.php';
include CHEMIN_VUE. 'bas_liste_numbers.tpl.php';
if (!$number->countNumbers()){
echo ('<ul><li>no number to display</li></ul>');
};
?>
\ No newline at end of file
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
include CHEMIN_MODELE. 'number.class.php';
if(empty($_GET['id']))
trigger_error("ID du number introuvable.", E_USER_ERROR);
$id_number = (int) $_GET['id'];
if (!empty($_POST['uniqid']))
{
if(!isset($_POST['gateway_id']) )
$erreurs[] = "gateway_ip est inexistant.";
if(!isset($_POST['number']) )
$erreurs[] = "number est inexistant.";
if(!isset($_POST['acctcode']) )
$erreurs[] = "acctcode est inexistant.";
if(!isset($_POST['translated']) )
$erreurs[] = "translated est inexistant.";
if(empty($erreurs))
{
$gateway = htmlspecialchars($_POST['gateway_id'], ENT_COMPAT, 'UTF-8');
$gateway = mysql_real_escape_string($gateway);
$number = htmlspecialchars($_POST['number'], ENT_COMPAT, 'UTF-8');
$number = mysql_real_escape_string($number);
$acctcode = htmlspecialchars($_POST['acctcode'], ENT_COMPAT, 'UTF-8');
$acctcode = mysql_real_escape_string($acctcode);
$translated = htmlspecialchars($_POST['translated'], ENT_COMPAT, 'UTF-8');
$translated = mysql_real_escape_string($translated);
// Instanciation Number
$numer = new Number();
if($numer->updateNumber($id_number, $gateway, $number, $acctcode, $translated))
header('location:./index.php?module=numbers&action=liste_numbers');
else
trigger_error("Erreur SQL impossible de modifier le number", E_USER_ERROR);
}
}
$numer = new Number();
$data = $numer->getNumber($id_number);
// Affichage
include CHEMIN_VUE. 'formulalre_modifier_number.tpl.php';
?>
\ No newline at end of file
<?php
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
easyroute
Derniere mise a jour : 22 aout 09
Auteur : InSiDe
Dev 0.1
------------------------------------------------------------------------------*/
include CHEMIN_MODELE. 'number.class.php';
if (empty($_GET['id']))
trigger_error("ID du number introuvable.", E_USER_ERROR);
$id = (int) $_GET['id'];
// Instanciation de la classe Commentaires
$numer = new Number();
if($numer->deleteNumber($id))
header('location:./index.php?module=numbers&action=liste_numbers');
else
trigger_error("Erreur SQL impossible de supprimer le number", E_USER_ERROR);
?>
\ No newline at end of file
<tr>
<td> <?php echo $data['number_id'] ?> </td>
<td> <?php echo $data['gateway_id'] ?> </td>
<td> <?php echo $data['number'] ?> </td>
<td> <?php echo $data['acctcode'] ?> </td>
<td> <?php echo $data['translated'] ?> </td>
<td>
<a href="./index.php?module=numbers&action=modifier&id=<?php echo $data['number_id']?>">edit</a>
</td>
<td>
<a href="./index.php?module=numbers&action=supprimer&id=<?php echo $data['number_id']?>">Delete</a>
</td>
</tr>
\ No newline at end of file
<h1> Manage Numbers</h1>
<a href="./index.php?module=numbers&action=ajouter"> add a new number</a>
<br /> <br />
<?php echo $paignation; ?>
<br /> <br />
<table>
<th> number_id </th>
<th> gateway_id </th>
<th> number </th>
<th> acctcode </th>
<th> translated </th>
<th> Modifier </th>
<th> Supprimer </th>
<h2> add a new number</h2>
<a href="./index.php?module=numbers&action=liste_numbers">Manage Numbers</a>
<br /> <br />
<p>&nbsp;</p>
<?php
if (!empty($erreurs))
{
echo ' <ul>'."\n";
foreach($erreurs as $e)
echo '<li>'. $e .'</li>'."\n";
echo '</ul>';
}
?>
<form method="post" name="formulaire">
<p>
<label for="gateway_id">gateway ID:</label> <br />
<input type="text" size="80" id="gateway_id" name="gateway_id" value="<?php echo $id_gate?>" maxlength="255"/>
</p>
<p>
<label for="number">Number : </label><br />
<input type="text" size="80" id="number" name="number" maxlength="255"/>
</p>
<p>
<label for="acctcode">Acctcode :</label> <br />
<input type="text" size="80" id="acctcode" name="acctcode" maxlength="255"/>
</p>
<p>
<label for="translated">Translated :</label> <br />
<input type="text" size="80" id="translated" name="translated" maxlength="255"/>
</p>
<input type="hidden" name="uniqid" value="02AXDZ4B"/>
<p>
<input type="submit" value="save" />
</p>
</div>
</form>
\ No newline at end of file
<h2> edit number</h2>
<a href="./index.php?module=numbers&action=liste_numbers">Manage numbers</a>
<br /> <br />
<p>&nbsp;</p>
<?php
if (!empty($erreurs))
{
echo ' <ul>'."\n";
foreach($erreurs as $e)
echo '<li>'. $e .'</li>'."\n";
echo '</ul>';
}
?>
<form method="post" name="formulaire">
<p>
<label for="gateway_id">gateway ID :</label> <br />
<input type="text" size="80" id="gateway_id" name="gateway_id" value="<?php echo $data['gateway_id']?>" />
</p>
<p>
<label for="number">Number : </label><br />
<input type="text" size="80" id="number" name="number" value="<?php echo $data['number']?>"/>
</p>
<p>
<label for="acctcode">Acctcode :</label> <br />
<input type="text" size="80" id="acctcode" name="acctcode" value="<?php echo $data['acctcode']?>" />
</p>
<p>
<label for="translated">Translated :</label> <br />
<input type="text" size="80" id="translated" name="translated" value="<?php echo $data['translated']?>"/>
</p>
<input type="hidden" name="uniqid" value="02AXDZ4B"/>
<p>
<input type="submit" value="Envoyer" />
</p>
</div>
</form>
\ No newline at end of file
<!-- skype_iax originator -->
<!-- this extention will request a skype speed dial number and bridge it unstid of adding some extentions to your dialplan -->
<!-- just place it in /prefix/conf/dialplan/default and call 2020 -->
<include>
<extension name="skypiax_originator">
<condition field="destination_number" expression="^(2020)$">
<action application="play_and_get_digits" data="2 5 3 7000 # conference/8000/conf-pin.wav /invalid.wav dest"/>
<action application="sleep" data="3000"/>
<action application="set" data="ringback=$${us-ring}"/>
<action application="bridge" data="{absolute_codec_string=g722}skypiax/skypiax1/${dest}"/>
</condition>
</extension>
</include>
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论