+ Add Provider Class id in payload to register agent of ilink sante
This commit is contained in:
parent
2f61d6e063
commit
ecdd34b1de
|
@ -4,7 +4,8 @@
|
|||
"phpmailer/phpmailer": "^6.1",
|
||||
"twilio/sdk": "^6.4",
|
||||
"guzzlehttp/guzzle": "^7.1",
|
||||
"ext-json": "*"
|
||||
"ext-json": "*",
|
||||
"ext-mysqli": "*"
|
||||
},
|
||||
"description": "iLink World Mobile Backend"
|
||||
}
|
||||
|
|
|
@ -1,897 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 05/08/18
|
||||
* Time: 00:02
|
||||
*/
|
||||
include '../interacted/Messenger.php';
|
||||
define("DB_HOST", "localhost");
|
||||
define("DB_USER", "root");
|
||||
define("DB_PASSWORD", "vps@2017GA");
|
||||
define("DB_DATABASE", "iLink_cannary");
|
||||
define("DB_DATABASE_TEST","iLink_test");
|
||||
class DataBaseConnector
|
||||
{
|
||||
var $messenger;
|
||||
var $con;
|
||||
public function __construct($isTest=false)
|
||||
{
|
||||
|
||||
try {
|
||||
$this->con = mysqli_connect(DB_HOST, DB_USER
|
||||
, DB_PASSWORD,DB_DATABASE);
|
||||
}catch (Exception $e){
|
||||
echo 'error';
|
||||
echo $e->getMessage();
|
||||
}
|
||||
$this->messenger = new Messenger();
|
||||
|
||||
}
|
||||
public function __destruct()
|
||||
{
|
||||
mysqli_close($this->con);
|
||||
}
|
||||
public function isPhoneExistedSimple($phone) {
|
||||
// connecting to mysql
|
||||
|
||||
$result = mysqli_query($this->con,"SELECT phone from users WHERE phone = '$phone'");
|
||||
$no_of_rows = mysqli_num_rows($result);
|
||||
if ($no_of_rows > 0) {
|
||||
// user existed
|
||||
return true;
|
||||
} else {
|
||||
// user not existed
|
||||
return false;
|
||||
}
|
||||
}
|
||||
public function getNetwork(){
|
||||
$r=mysqli_query($this->con,"select * from networks");
|
||||
|
||||
while($row=mysqli_fetch_array($r, MYSQLI_ASSOC )) {
|
||||
|
||||
$rows[] = $row;
|
||||
|
||||
}
|
||||
if(count($rows)){
|
||||
return $rows;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
public function isPhoneExisted($phone) {
|
||||
$result = mysqli_query($this->con,"SELECT phone from users WHERE phone = '$phone'");
|
||||
$no_of_rows = mysqli_num_rows($result);
|
||||
if ($no_of_rows > 0) {
|
||||
// user existed
|
||||
return true;
|
||||
} else {
|
||||
// user not existed
|
||||
return false;
|
||||
}
|
||||
}
|
||||
public function isPhoneExistedInCategory($phone,$category=null,$phoneTransaction=null){
|
||||
|
||||
$result = mysqli_query($this->con,"SELECT na.phone from networks_agents na INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE na.transactionNumber ='$phoneTransaction'");
|
||||
if($result) {
|
||||
$no_of_rows = mysqli_num_rows($result);
|
||||
if ($no_of_rows > 0) {
|
||||
return true;
|
||||
}
|
||||
}else echo json_encode(mysqli_error($this->con));
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
public function checknumberValidity($phone){
|
||||
try {
|
||||
return true;//$this->messenger->checkPhoneExist($phone);
|
||||
} catch(Exception $ex){
|
||||
return false;
|
||||
}
|
||||
}
|
||||
public function isMemberCodeExisted($codemembre)
|
||||
{
|
||||
$result = mysqli_query($this->con, "SELECT * from codeGenerer WHERE code_membre = '$codemembre' ");
|
||||
if ($result) {
|
||||
$no_of_rows = mysqli_num_rows($result);
|
||||
if ($no_of_rows > 0)
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
public function getAgentByCodeMembre($code)
|
||||
{
|
||||
|
||||
$listIdmemberParrain= mysqli_query($this->con, "SELECT ag.id as id,ag.uid as uid,ag.firstname AS firstname,
|
||||
ag.lastname AS lastname,
|
||||
ag.email AS email,ag.longitude as longitude,ag.latitude AS latitude,ag.active as active,
|
||||
na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.etat AS etat
|
||||
,cg.code_parrain AS code_parrain,cg.code_membre AS code_membre,na.phone as phone,na.transactionNumber as phoneTransaction,
|
||||
ag.date_created as date_created,cg.category as category,ag.salt as salt,ag.encrypted_password as encrypted_password,
|
||||
ne.name as network,ct.name as country,ag.number_super as nbre_reseau,ag.number_geoBysuper as nbre_sous_reseau
|
||||
FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id
|
||||
INNER JOIN networks as ne ON na.network_id=ne.id INNER JOIN countries ct ON ct.id=ne.country_id WHERE
|
||||
cg.code_membre='$code'");
|
||||
if($listIdmemberParrain){
|
||||
$membre=mysqli_fetch_array($listIdmemberParrain,MYSQLI_ASSOC);
|
||||
if($membre['category']=='super'){
|
||||
$phone=$membre["phone"];
|
||||
$demandere=mysqli_query($this->con,"SELECT etat FROM demandeAdhesion WHERE phone='$phone'");
|
||||
if($demandere){
|
||||
$membre['etat_demande']=mysqli_fetch_array($demandere,MYSQLI_ASSOC)['etat'];
|
||||
}
|
||||
}
|
||||
return $membre;
|
||||
}else {
|
||||
echo mysqli_error($this->con);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
public function getAgentWithCodeMembre($code){
|
||||
$listIdmemberParrain=mysqli_query($this->con,
|
||||
"SELECT na.id as agentId,ag.email as email,ag.number_super as nbre_reseau,ag.number_geoBySuper as nbre_sous_reseau,cg.category as category, cg.code_parrain as code_parrain,cg.code_membre as code_membre , ne.name as reseau from agents ag RIGHT JOIN networks_agents na on ag.id=na.agent_id RIGHT JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id = na.network_id WHERE cg.code_membre='$code'");
|
||||
if($listIdmemberParrain){
|
||||
$membre=mysqli_fetch_array($listIdmemberParrain,MYSQLI_ASSOC);
|
||||
return $membre;
|
||||
}else return false;
|
||||
}
|
||||
public function getAgentNetworkByCode($code){
|
||||
$listIdmemberParrain=mysqli_query($this->con,
|
||||
"SELECT ne.id, ne.name,ne.status from networks ne INNER JOIN networks_agents na ON na.network_id=ne.id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id WHERE cg.code_membre='$code'");
|
||||
if($listIdmemberParrain){
|
||||
$membre=mysqli_fetch_array($listIdmemberParrain,MYSQLI_ASSOC);
|
||||
return $membre;
|
||||
}else return ['error'=>mysqli_error($this->con)];
|
||||
}
|
||||
public function getAgentById($id){
|
||||
$listIdmemberParrain=mysqli_query($this->con, "SELECT ag.uid as uid,ag.firstname AS firstname,ag.lastname AS lastname,
|
||||
ag.email AS email,ag.longitude as longitude,ag.latitude AS latitude,ag.active as active,
|
||||
na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.etat AS etat
|
||||
,cg.code_parrain AS code_parrain,cg.code_membre AS code_membre,na.phone as phone,ne.id as network_id,
|
||||
ag.date_created as date_created,cg.category as category,ag.salt as salt,ag.encrypted_password asencrypted_password,
|
||||
ne.name as network,ct.name as country, ct.code_dial as indicatif,ag.number_super as nbre_reseau,ag.number_geoBysuper as nbre_sous_reseau
|
||||
FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id
|
||||
INNER JOIN networks as ne ON na.network_id=ne.id INNER JOIN countries ct ON ct.id=ne.country_id WHERE
|
||||
ag.id='$id'");
|
||||
if($listIdmemberParrain){
|
||||
$membre=mysqli_fetch_array($listIdmemberParrain,MYSQLI_ASSOC);
|
||||
if($membre['category']=='super'){
|
||||
$phone=$membre["phone"];
|
||||
$demandere=mysqli_query($this->con,"SELECT etat FROM demandeAdhesion WHERE phone='$phone'");
|
||||
if($demandere){
|
||||
$membre['etat_demande']=mysqli_fetch_array($demandere,MYSQLI_ASSOC)['etat'];
|
||||
}
|
||||
}
|
||||
if($membre['category']!='geolocated'){
|
||||
$membre['nbre_membre']=$this->getNbMemberOf($membre['code_membre']);
|
||||
}
|
||||
return $membre;
|
||||
}else {
|
||||
echo mysqli_error($this->con);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function storeUser($fname, $lname, $email, $phone, $password, $network, $member,$latitude, $longitude,$town,$phoneTransaction)
|
||||
{
|
||||
//on verifie si y a un agent qui utilise ce code
|
||||
if(isset($town->id)){
|
||||
$membre = $this->getAgentWithCodeMembre($member);
|
||||
if ($membre) {
|
||||
if (isset($membre['agentId'])) {
|
||||
//s'il y a un agent qui a ce code on cree un membre de son reseau
|
||||
if (($membre['category'] == 'hyper' && $membre['nbre_reseau'] > 0) ||
|
||||
($membre['category'] == 'super' && $membre['nbre_sous_reseau'] > 0)) {
|
||||
//si il s'agit d'un hyperviseur ou superviseur et qu'il peut encore créer des membres alors
|
||||
if ($membre['category'] == 'super') {
|
||||
$codeGenerer = $this->generateValideCode($membre['code_membre'], 'geolocated');
|
||||
if ($codeGenerer != null)
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $codeGenerer, $latitude,
|
||||
$longitude, $town,$phoneTransaction);
|
||||
} else {
|
||||
//on verifie s'il existe des codes superviseur disponible pour cette hyperviseur
|
||||
$listIdmemberParrain = mysqli_query($this->con, "SELECT na.codeGenerer_id as id,cg.code_membre as code_membre from networks_agents na RIGHT JOIN codeGenerer cg ON cg.id=na.codeGenerer_id WHERE cg.code_parrain='$member' AND na.id is null");
|
||||
if ($listIdmemberParrain) {
|
||||
if(mysqli_num_rows($listIdmemberParrain) > 0) {
|
||||
$me = mysqli_fetch_array($listIdmemberParrain, MYSQLI_ASSOC)['code_membre'];
|
||||
}
|
||||
else{
|
||||
$me=$this->generateValideCode($member,'super');
|
||||
}
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $me, $latitude, $longitude, $town,$phoneTransaction);
|
||||
} else {
|
||||
return ["error" => -5, 'error_msg' => 'le code parrain que vous avez entrée n\'a pas de membre disponible','sql'=>mysqli_error($this->con)];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return ["error" => -6, 'error_msg' => 'le code parrain que vous avez entrée n\'a pas de membre disponible'];
|
||||
}
|
||||
} else {
|
||||
//si aucun membre n'a ce code on verifie s'il sagit d'un hyperviseur
|
||||
if ($membre['category'] == 'hyper') {
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $member, $latitude,
|
||||
$longitude, $town,$phoneTransaction);
|
||||
} else {
|
||||
return ["error" => -1, "error_msg" => "impossible de verifier le membre"];
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return ["error" => -2, "error_msg" => "impossible de verifier le membre", 'sql' => mysqli_error($this->con)];
|
||||
}
|
||||
}else{
|
||||
return ["error" => -10, "error_msg" => "La ville dans laquelle vous vous trouvez n'est pas encore pris en charge", 'sql' => mysqli_error($this->con)];
|
||||
}
|
||||
}
|
||||
|
||||
public function random_string()
|
||||
{
|
||||
$character_set_array = array();
|
||||
$character_set_array[] = array('count' => 7, 'characters' => 'abcdefghjkmnpqrstuvwxyz');
|
||||
$character_set_array[] = array('count' => 1, 'characters' => '23456789');
|
||||
$temp_array = array();
|
||||
foreach ($character_set_array as $character_set) {
|
||||
for ($i = 0; $i < $character_set['count']; $i++) {
|
||||
$temp_array[] = $character_set['characters'][rand(0, strlen($character_set['characters']) - 1)];
|
||||
}
|
||||
}
|
||||
shuffle($temp_array);
|
||||
return implode('', $temp_array);
|
||||
}
|
||||
|
||||
public function getAllPointInCountry($country){
|
||||
$etat=1;
|
||||
$si=1;
|
||||
$category="geolocated";
|
||||
if($result= mysqli_prepare($this->con,"SELECT * FROM agent_plus WHERE code_dial=? AND etat=? AND category=? AND longitude!=0 AND latitude!=0")) {
|
||||
mysqli_stmt_bind_param($result, 'sis', $country, $etat, $category);
|
||||
mysqli_stmt_execute($result);
|
||||
$r = mysqli_stmt_get_result($result);
|
||||
$rows=[];
|
||||
while ($row = mysqli_fetch_array($r, MYSQLI_BOTH)) {
|
||||
$grow = [];
|
||||
foreach ($row as $key => $value) {
|
||||
if (!is_integer($key)) {
|
||||
if (!isset($grow[$key])) $grow[$key] = $value;
|
||||
} else if ($key == 5) {
|
||||
$grow["longitude"] = $value;
|
||||
} else if ($key == 6) {
|
||||
$grow["latitude"] = $value;
|
||||
}
|
||||
}
|
||||
$rows[]=$grow;
|
||||
}
|
||||
|
||||
mysqli_stmt_close($result);
|
||||
return $rows;
|
||||
if($result) {
|
||||
$rows=[];
|
||||
while ($row = mysqli_fetch_assoc($result)) {
|
||||
$rows[] = $row;
|
||||
}
|
||||
// $rows;
|
||||
}else{
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
}else{
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public function getUserCountryPoint($user_id){
|
||||
$result = mysqli_query($this->con,"SELECT * FROM agents ag inner JOIN networks_agents na ON na.agent_id=ag.id INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE cg.category='geolocated' AND na.etat=1") or die(mysqli_error($this->con));
|
||||
if($result) {
|
||||
$rows=[];
|
||||
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
||||
$rows[] = $row;
|
||||
}
|
||||
return $rows;
|
||||
}else return false;
|
||||
|
||||
}
|
||||
|
||||
public function getCategoryAgent($codeparrain){
|
||||
$result=mysqli_query($this->con,"SELECT category,etat FROM codeGenerer where code_membre = '$codeparrain'");
|
||||
if($result) {
|
||||
$rows=[];
|
||||
$row = mysqli_fetch_array($result, MYSQLI_ASSOC);
|
||||
|
||||
return $row;
|
||||
}else return ["erro"=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
public function updateWrongPoints()
|
||||
{
|
||||
$result=[];
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
public function getSuperviseurNetwork($codeparrain,$user_id){
|
||||
$self=$this->getAgentByCodeMembre($codeparrain);
|
||||
$catparrain=$self['category'];
|
||||
$catchild=($catparrain=='hyper')?'super':($catparrain=='super'?'geolocated':null);
|
||||
if($catchild) {
|
||||
$result = mysqli_query($this->con, "select ag.longitude as longitude,
|
||||
ag.adresse,
|
||||
ag.latitude as latitude,na.transactionNumber as phoneTransaction,
|
||||
ag.firstname as firstname,ag.lastname as lastname, ag.email as email,na.phone as phone,cg.code_membre as code_membre,
|
||||
nt.name as network,ct.name as country, na.etat as etat FROM networks_agents na INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id
|
||||
INNER JOIN networks nt ON na.network_id=nt.id INNER JOIN agents ag ON ag.id=na.agent_id INNER JOIN countries ct
|
||||
ON nt.country_id=ct.id WHERE cg.code_parrain='$codeparrain' AND cg.code_membre!='$codeparrain' AND na.etat='1' AND cg.category='$catchild'");
|
||||
|
||||
$rows = [];
|
||||
$re = [];
|
||||
if ($result) {
|
||||
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
||||
$rows[] = $row;
|
||||
}
|
||||
$re['val'] = $rows;
|
||||
$re['success'] = 1;
|
||||
$re['catchild']=$catchild;
|
||||
$re['catparrain']=$catparrain;
|
||||
} else {
|
||||
$re['error'] = mysqli_error($this->con);
|
||||
}
|
||||
}else{
|
||||
$re['error']='cat child not found';
|
||||
}
|
||||
return $re;
|
||||
}
|
||||
|
||||
public function getPointsNetwork($network,$user_id){
|
||||
$result=mysqli_query($this->con,"SELECT ag.firstname,cg.code_membre,cg.code_parrain,ag.adresse,
|
||||
ag.lastname,na.phone,ag.email,na.solde,cg.category,ne.name as network,ct.id as country,ag.longitude,ag.latitude,ag.id as AgentId,ne.id as network_id,ct.id as country_id
|
||||
FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN
|
||||
codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id INNER JOIN countries ct ON ct.id=ne.country_id WHERE cg.category='geolocated' AND na.etat='1' AND na.network_id='$network' AND ag.longitude>0 AND ag.latitude>0 LIMIT 100");
|
||||
if($result) {
|
||||
$rows=[];
|
||||
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
||||
$rows[] = $row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
{
|
||||
return ["error"=>mysqli_error($this->con)];
|
||||
}
|
||||
}
|
||||
|
||||
private function getUserByPhoneAndPassword($phone, $password,$table) {
|
||||
$result = mysqli_query($this->con,"SELECT usr.active,usr.salt,usr.encrypted_password,usr.firstname,usr.lastname,usr.id,usr.phone,usr.email,usr.solde,usr.validation_code,usr.active,usr.network_id,ne.name as network,ne.country_id,ct.name as country,ct.code_dial,ct.code_country FROM $table usr INNER JOIN networks ne ON usr.network_id=ne.id INNER JOIN countries ct ON ct.id=ne.country_id WHERE phone = '$phone'") or die(mysqli_error($this->con));
|
||||
// check for result
|
||||
$no_of_rows = mysqli_num_rows($result);
|
||||
if ($no_of_rows > 0) {
|
||||
$result = mysqli_fetch_array($result,MYSQLI_ASSOC);
|
||||
$salt = $result['salt'];
|
||||
$encrypted_password = $result['encrypted_password'];
|
||||
$hash = $this->checkhashSSHA($salt, $password);
|
||||
// check for password equality
|
||||
if ($encrypted_password == $hash) {
|
||||
// user authentication details are correct
|
||||
return $result;
|
||||
}else{
|
||||
return ['error'=>-3];
|
||||
}
|
||||
} else {
|
||||
// user not found
|
||||
return ['error'=>-2];
|
||||
}
|
||||
}
|
||||
|
||||
public function hashSSHA($password) {
|
||||
|
||||
$salt = sha1(rand());
|
||||
$salt = substr($salt, 0, 10);
|
||||
$encrypted = base64_encode(sha1($password . $salt, true) . $salt);
|
||||
$hash = array("salt" => $salt, "encrypted" => $encrypted);
|
||||
return $hash;
|
||||
}
|
||||
|
||||
public function forgotPasswordSimple($phone, $encrypted_password, $salt)
|
||||
{
|
||||
$result = mysqli_query($this->con, "UPDATE `users` SET `encrypted_password` = '$encrypted_password',`salt` = '$salt' WHERE `phone` = '$phone'");
|
||||
|
||||
if ($result) {
|
||||
|
||||
return true;
|
||||
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public function getEmailSimple($phone){
|
||||
$result = mysqli_query($this->con,"SELECT email FROM users WHERE phone = '$phone'");
|
||||
|
||||
if ($result) {
|
||||
return mysqli_fetch_array($result);
|
||||
//return true;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function listNetwork(){
|
||||
echo "request";
|
||||
$res=mysqli_query($this->con,"SELECT * FROM network");
|
||||
if($res){
|
||||
return mysqli_fetch_array($res);
|
||||
|
||||
}else return ['error'=>'unable to make request','error_'=>mysqli_error($this->con)];
|
||||
}
|
||||
|
||||
private function checkhashSSHA($salt, $password) {
|
||||
|
||||
$hash = base64_encode(sha1($password . $salt, true) . $salt);
|
||||
|
||||
return $hash;
|
||||
}
|
||||
/**
|
||||
* Verifies user by phone and password
|
||||
*/
|
||||
public function getUserByPhoneAndPasswordSimple($phone, $password) {
|
||||
return $this->getUserByPhoneAndPassword($phone,$password,'users');
|
||||
}
|
||||
/**
|
||||
* Verifies user by phone and password
|
||||
*/
|
||||
public function generateRandomString($length = 10) {
|
||||
$characters = '23456789abcdefghjkmnopqrstuvwxyzABCDEFGHJKLMNOPQRSTUVWXYZ';
|
||||
$charactersLength = strlen($characters);
|
||||
$randomString = '';
|
||||
for ($i = 0; $i < $length; $i++) {
|
||||
$randomString .= $characters[rand(0, $charactersLength - 1)];
|
||||
}
|
||||
return $randomString;
|
||||
}
|
||||
|
||||
public function getUserByPhoneAndPasswordGeolocated($phone, $password) {
|
||||
// connecting to mysql
|
||||
$result = mysqli_query($this->con, "SELECT ag.uid as uid,ag.firstname AS firstname,ag.lastname AS lastname,
|
||||
ag.email AS email,ag.longitude as longitude,ag.latitude AS latitude,ag.active as active,
|
||||
na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.etat AS etat
|
||||
,cg.code_parrain AS code_parrain,cg.code_membre AS code_membre,na.phone as phone,na.transactionNumber as phoneTransaction,
|
||||
ne.id as network_id,ag.date_created as date_created,cg.category as category,
|
||||
ag.salt as salt,ag.encrypted_password as encrypted_password,ne.name as network,ct.name as country
|
||||
,ag.number_super as nbre_reseau,ag.number_geoBysuper as nbre_sous_reseau
|
||||
FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id
|
||||
INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks as ne ON na.network_id=ne.id INNER JOIN countries ct ON ct.id=ne.country_id WHERE na.phone='$phone' or na.transactionNumber='$phone'");
|
||||
if($result){
|
||||
if(mysqli_num_rows($result)>0) {
|
||||
$mr=[];
|
||||
while ($row = mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
||||
$salt = $row['salt'];
|
||||
$encrypted_password = $row['encrypted_password'];
|
||||
$hash = $this->checkhashSSHA($salt, $password);
|
||||
$mr["hash"]=$hash;
|
||||
$mr["encrypted_password"]=$encrypted_password;
|
||||
if ($encrypted_password == $hash) {
|
||||
if ($row['category'] == 'super') {
|
||||
$phone = $row["phone"];
|
||||
$demandere = mysqli_query($this->con, "SELECT etat FROM demandeAdhesion WHERE phone='$phone'");
|
||||
if ($demandere)
|
||||
$row['etat_demande'] = mysqli_fetch_array($demandere, MYSQLI_ASSOC)['etat'];
|
||||
else
|
||||
echo mysqli_error($this->con);
|
||||
}
|
||||
if($row['category']!='geolocated'){
|
||||
$row['nbre_membre']=$this->getNbMemberOf($row['code_membre']);
|
||||
|
||||
|
||||
}
|
||||
|
||||
return $row;
|
||||
}
|
||||
|
||||
return ['error'=>-3,"error_msg"=>"Mot de passe incorrect","last"=>$row];
|
||||
}
|
||||
}else
|
||||
return ['error'=>-1,"error_msg"=>"Numéro incorrect",];
|
||||
}
|
||||
|
||||
else
|
||||
return ['error'=>-2,"error_msg"=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
public function getAgentNetworkByPhone($phone){
|
||||
$listIdmemberParrain=mysqli_query($this->con, "SELECT ag.uid as uid,ag.firstname AS firstname,
|
||||
ag.lastname AS lastname,
|
||||
ag.email AS email,ag.longitude as longitude,ag.latitude AS latitude,ag.active as active,
|
||||
na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.etat AS etat
|
||||
,cg.code_parrain AS code_parrain,cg.code_membre AS code_membre,na.phone as phone,
|
||||
ne.id as network_id,
|
||||
na.id as networkAgentId,
|
||||
ag.date_created as date_created,cg.category as category,ag.salt as salt,ag.encrypted_password as encrypted_password,
|
||||
ne.name as network,ct.name as country,ag.number_super as nbre_reseau,ag.number_geoBysuper as nbre_sous_reseau
|
||||
FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id
|
||||
INNER JOIN networks as ne ON na.network_id=ne.id INNER JOIN countries ct ON ct.id=ne.country_id WHERE
|
||||
na.phone='$phone'");
|
||||
if($listIdmemberParrain){
|
||||
$membre=mysqli_fetch_array($listIdmemberParrain,MYSQLI_ASSOC);
|
||||
if($membre['category']=='super'){
|
||||
$phone=$membre["phone"];
|
||||
$demandere=mysqli_query($this->con,"SELECT etat FROM demandeAdhesion WHERE phone='$phone'");
|
||||
if($demandere){
|
||||
$membre['etat_demande']=mysqli_fetch_array($demandere,MYSQLI_ASSOC)['etat'];
|
||||
}
|
||||
}
|
||||
return $membre;
|
||||
}else {
|
||||
echo mysqli_error($this->con);
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function storeDemandeCredit($phone,$montant,$code){
|
||||
$agent=$this->getAgentWithCodeMembre($code);
|
||||
if($agent) {
|
||||
$idag=$agent['agentId'];
|
||||
$q = mysqli_query($this->con, "INSERT INTO demandeCredits(network_agent_id,montant,status) VALUES('$idag','$montant','0')");
|
||||
if ($q) {
|
||||
return ['success' => 1, "agent" => $agent];
|
||||
}
|
||||
}
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
private function createAgent($fname, $lname, $email, $phone, $password, $network, $member, $latitude, $longitude, $town,$phoneTransaction)
|
||||
{
|
||||
|
||||
$resultFreeCode = mysqli_query($this->con, "SELECT id,code_membre,category,code_parrain from codeGenerer cg WHERE code_membre='$member' ");
|
||||
if($resultFreeCode){
|
||||
$freecodenum=mysqli_num_rows($resultFreeCode);
|
||||
if($freecodenum>0) {
|
||||
$codes = mysqli_fetch_array($resultFreeCode, MYSQLI_ASSOC);
|
||||
$freecode = $codes;
|
||||
$code_id = $freecode['id'];
|
||||
$category=$freecode["category"];
|
||||
$uuid = uniqid('', true);
|
||||
$balance = 0;
|
||||
$etat=0;
|
||||
if($category=="geolocated"){
|
||||
$etat=1;
|
||||
}
|
||||
|
||||
$hash = $this->hashSSHA($password);
|
||||
$encrypted_password = $hash["encrypted"];
|
||||
$salt = $hash["salt"];
|
||||
$validation_code = $this->random_string();
|
||||
|
||||
if(isset($town->id)) {
|
||||
$townid = $town->id;
|
||||
|
||||
$agentCreateResult = mysqli_query($this->con, "INSERT INTO agents(uid,adresse,
|
||||
lastname,email,longitude,latitude
|
||||
,balance,encrypted_password,salt,active,date_created,town_id) VALUES ('$uuid',
|
||||
'$fname','$lname','$email','$longitude','$latitude','$balance','$encrypted_password','$salt','$etat',NOW(),'$townid')");
|
||||
if ($agentCreateResult) {
|
||||
$agent_id = mysqli_insert_id($this->con);
|
||||
if ($agent_id) {
|
||||
|
||||
|
||||
|
||||
$result = mysqli_query($this->con, "INSERT INTO networks_agents(network_id,agent_id,
|
||||
solde,etat,codeGenerer_id,phone,validation_code,transactionNumber)
|
||||
VALUES('$network->id','$agent_id','$balance','$etat','$code_id','$phone','$validation_code','$phoneTransaction')");
|
||||
if ($result) {
|
||||
// get user details
|
||||
|
||||
$agent= $this->getAgentById($agent_id);
|
||||
$resque=mysqli_query($this->con,"UPDATE codeGenerer SET etat='1' WHERE code_membre='$member'");
|
||||
if($resque){
|
||||
if($agent['category']=='super'){
|
||||
$re=$this->adddemandeAdhesionAgent($agent);
|
||||
if(!isset($re['success']))return $re;
|
||||
}
|
||||
}else{
|
||||
return [
|
||||
'error' => 'impossible de de mettre à jour',
|
||||
'sql_error' => mysqli_error($this->con),
|
||||
];
|
||||
}
|
||||
return $agent;
|
||||
} else {
|
||||
return [
|
||||
'error' => 'impossible de créer un network_agent',
|
||||
'sql_error' => mysqli_error($this->con),
|
||||
'code_generer' => $freecode
|
||||
];
|
||||
}
|
||||
|
||||
} else {
|
||||
return [
|
||||
'error' => 'impossible recuperer l agent',
|
||||
'sql_error' => mysqli_error($this->con),
|
||||
'code_generer' => $freecode
|
||||
];
|
||||
}
|
||||
|
||||
} else {
|
||||
return [
|
||||
'error' => 'impossible de créer un agent',
|
||||
'sql_error' => mysqli_error($this->con)
|
||||
];
|
||||
}
|
||||
}else{
|
||||
return ['error'=>-4,'error_msg'=>'la ville que vous aviez entrée n\'est pas encore pris en compte ','ville'=>$town];
|
||||
}
|
||||
|
||||
}else return ['error'=>"ce parrain à atteint son quota de membre"];
|
||||
}else{
|
||||
return ["error"=>"impossible de recuperer verifier la disponibilité ","error_msg"=>mysqli_error($this->con)];
|
||||
}
|
||||
}
|
||||
|
||||
public function generateValideCode($membre, $category)
|
||||
{
|
||||
$code=null;
|
||||
$valide=false;
|
||||
do{
|
||||
$code=$this->generateRandomString();
|
||||
$q = mysqli_query($this->con, "SELECT * from codeGenerer WHERE code_membre='$code'");
|
||||
if ($q) {
|
||||
$valide = mysqli_num_rows($q) == 0;
|
||||
$qe=mysqli_query($this->con, "INSERT INTO codeGenerer(code_parrain,code_membre,category,etat) VALUES ('$membre','$code','$category',0)");
|
||||
if(!$qe){
|
||||
echo mysqli_error($this->con);
|
||||
return null;
|
||||
}
|
||||
}else{
|
||||
echo mysqli_error($this->con);
|
||||
return null;
|
||||
}
|
||||
}while(!$valide);
|
||||
return $code;
|
||||
}
|
||||
|
||||
private function adddemandeAdhesionAgent($agent)
|
||||
{
|
||||
$codeparrain=$agent['code_parrain'];
|
||||
$resParrain=mysqli_query($this->con,"SELECT na.id as agentId FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id WHERE cg.code_membre='$codeparrain'");
|
||||
if($resParrain){
|
||||
$parrain=mysqli_fetch_array($resParrain,MYSQLI_ASSOC);
|
||||
$agentId=$parrain['agentId'];
|
||||
if($agentId){
|
||||
$phone=$agent['phone'];
|
||||
$resDemande=mysqli_query($this->con,"INSERT INTO demandeAdhesion(phone,networks_agent_id) VALUES ('$phone','$agentId')");
|
||||
if($resDemande){
|
||||
return ['success'=>1];
|
||||
}else{
|
||||
return ["error"=>1,"sql"=>mysqli_error($this->con),'agent'=>$agent];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
return ['error'=>'error','ssql'=>mysqli_error($this->con),'agent'=>$agent];
|
||||
}
|
||||
}
|
||||
|
||||
public function storeUserSimple($firstname, $lastname, $email, $phone, $password, $network)
|
||||
{
|
||||
$uuid = uniqid('', true);
|
||||
$balance =0;
|
||||
$hash = $this->hashSSHA($password);
|
||||
$encrypted_password = $hash["encrypted"]; // encrypted password
|
||||
$salt = $hash["salt"]; // salt
|
||||
//$validation_code = generateRandomString();
|
||||
$validation_code = $this->random_string();
|
||||
$networkid=$network->id;
|
||||
$result = mysqli_query($this->con,
|
||||
"INSERT INTO users(uid, adresse,lastname, phone, email, solde, encrypted_password,
|
||||
salt,validation_code, active,network_id) VALUES
|
||||
('$uuid', '$firstname', '$lastname', '$phone','$email','$balance','$encrypted_password', '$salt',
|
||||
'$validation_code','0','$networkid')");
|
||||
// check for successful store
|
||||
if ($result) {
|
||||
// get user details
|
||||
$uid = mysqli_insert_id($this->con); // last inserted id
|
||||
$result = mysqli_query($this->con,"SELECT ne.name as reseau,ct.name as country,usr.firstname as firstname
|
||||
,usr.lastname as lastname,usr.phone as phone,usr.email as email,usr.validation_code as validation_code FROM users usr INNER JOIN networks ne ON ne.id=usr.network_id INNER JOIN countries ct ON ct.id=ne.country_id WHERE usr.id = '$uid'");
|
||||
// return user details
|
||||
if($result){
|
||||
return mysqli_fetch_array($result);
|
||||
|
||||
}else return ['error'=>'error geting information','sql'=>mysqli_error($this->con)];
|
||||
} else {
|
||||
return ['error'=>'error saving information','sql'=>mysqli_error($this->con)];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function generateNetworkAgent($phone, $code_parrain)
|
||||
{
|
||||
$code=$this->generateValideCode($code_parrain,"geolocated");
|
||||
$resParrain=mysqli_query($this->con,"SELECT * FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN towns tw ON ag.town_id=tw.id INNER JOIN countries ct ON tw.country_id=ct.id WHERE cg.code_membre='$code_parrain'");
|
||||
|
||||
if($resParrain) {
|
||||
$parrain = mysqli_fetch_array($resParrain, MYSQLI_ASSOC);
|
||||
$networkId = $parrain['network_id'];
|
||||
|
||||
$phone = $parrain['code_dial'] . $phone;
|
||||
if (true) {
|
||||
$resgg = mysqli_query($this->con, "SELECT * FROM codeGenerer cg WHERE cg.code_membre='$code'");
|
||||
if ($resgg) {
|
||||
$membre = mysqli_fetch_array($resgg, MYSQLI_ASSOC);
|
||||
$codeGenererId = $membre['id'];
|
||||
$validation_code = $this->random_string();
|
||||
|
||||
$result = mysqli_query($this->con, "INSERT INTO networks_agents(network_id,solde,etat,codeGenerer_id,transactionNumber,validation_code)VALUES('$networkId','0','0','$codeGenererId','$phone','$validation_code')");
|
||||
if ($result) {
|
||||
$geoId=mysqli_insert_id($this->con);
|
||||
if (mysqli_query($this->con, "UPDATE codeGenerer SET etat='1' WHERE code_membre='$code'"))
|
||||
return ['success' => 1,'phone'=>$phone,'code_membre' => $membre['code_membre'], 'validation_code' => $validation_code,"id"=>$geoId];
|
||||
else {
|
||||
$da = ['error' => -7, 'error_msg' => 'impossible de mettre à jour les informations du code membre', 'sql' => mysqli_error($this->con)];
|
||||
mysqli_query($this->con, "DELETE FROM codeGenerer WHERE code_membre='$code'");
|
||||
return $da;
|
||||
}
|
||||
} else {
|
||||
$da = ['error' => -5, 'error_msg' => 'impossible de recuperer les informations du de code generer', 'sql' => mysqli_error($this->con)];
|
||||
mysqli_query($this->con, "DELETE FROM codeGenerer WHERE code_membre='$code'");
|
||||
|
||||
return $da;
|
||||
|
||||
}
|
||||
|
||||
} else {
|
||||
return ['error' => -4, 'error_msg' => 'impossible de recuperer les informations du de code generer', 'sql' => mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
}
|
||||
else {
|
||||
return ['error' => -7, 'error_msg' => 'le numéro de téléphone est invalide', 'phone' =>$phone,"parrain"=>$parrain];
|
||||
}
|
||||
} else {
|
||||
return ['error' => -3, 'error_msg' => 'impossible de recuperer les information du parrain', 'sql' => mysqli_error($this->con)];
|
||||
}
|
||||
}
|
||||
|
||||
public function getGeoLocatedFreeWithValidationCode($validation_code)
|
||||
{
|
||||
$qu=mysqli_query($this->con,"SELECT na.id as id,na.validation_code as validation_code,na.etat as etat, na.agent_id as agent_id,cg.code_membre as code_membre,cg.code_parrain as code_parrain, cg.category as category FROM networks_agents na INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id WHERE na.validation_code='$validation_code' AND cg.category='geolocated' AND na.agent_id is null");
|
||||
if($qu){
|
||||
$num_row=mysqli_num_rows($qu);
|
||||
if($num_row>0) {
|
||||
$geo = mysqli_fetch_array($qu, MYSQLI_ASSOC);
|
||||
return $geo;
|
||||
}else {
|
||||
return ['error'=>'Ce code n\'est disponible'];
|
||||
}
|
||||
}else{
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
public function assignNetworkAgent($idAgent, $idNetworkAgent)
|
||||
{
|
||||
$re=mysqli_query($this->con,"UPDATE networks_agents SET agent_id='$idAgent',etat='1' WHERE id='$idNetworkAgent'");
|
||||
if($re){
|
||||
return ['success'=>1];
|
||||
}else return ['error'=>mysqli_error($this->con)];
|
||||
}
|
||||
|
||||
public function getListNetworkOfGeoPoint($user_id)
|
||||
{
|
||||
$q=mysqli_query($this->con,"SELECT na.id as id,na.network_id as network_id,na.solde as solde,na.phone as phone,cg.code_membre as code_membre, cg.code_parrain as code_parrain,cg.category as category,ne.name as name from agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id WHERE ag.id='$user_id'");
|
||||
if($q){
|
||||
|
||||
while($row=mysqli_fetch_array($q,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
public function getListFreeNetworkOfGeoPoint($code_parrain)
|
||||
{
|
||||
$q=mysqli_query($this->con,"SELECT na.id as id,na.network_id as network_id,na.solde as solde,na.phone as phone,cg.code_membre as code_membre, cg.code_parrain as code_parrain,cg.category as category,ne.name as name,na.validation_code as validation_code from networks_agents na INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id WHERE cg.code_parrain='$code_parrain' AND cg.code_membre!='$code_parrain' AND na.agent_id IS NULL");
|
||||
if($q){
|
||||
$rows=[];
|
||||
while($row=mysqli_fetch_array($q,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
public function getListDemandeReceiveAgent($codeparrain)
|
||||
{
|
||||
|
||||
$q=mysqli_query($this->con,"SELECT dc.id as id,dc.montant as montant,dc.date_creation,dc.date_modification,dc.status as status,na.phone as phone,cg.code_membre as code_membre, cg.code_parrain as code_parrain,cg.category as category,ne.name as name,ne.name as reseau from demandeCredits dc INNER JOIN networks_agents na ON na.id=dc.network_agent_id INNER JOIN agents ag ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id WHERE cg.code_parrain='$codeparrain'");
|
||||
if($q){
|
||||
$rows=[];
|
||||
while($row=mysqli_fetch_array($q,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
public function getListDemandeSendAgent($user_id)
|
||||
{
|
||||
$q=mysqli_query($this->con,"SELECT ne.name as reseau, dc.id as id,dc.montant as montant,dc.date_creation,dc.date_modification,dc.status as status,na.phone as phone,cg.code_membre as code_membre, cg.code_parrain as code_parrain,cg.category as category,ne.name as name from demandeCredits dc INNER JOIN networks_agents na ON na.id=dc.network_agent_id INNER JOIN agents ag ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON cg.id=na.codeGenerer_id INNER JOIN networks ne ON ne.id=na.network_id WHERE ag.id='$user_id'");
|
||||
if($q){
|
||||
$rows=[];
|
||||
while($row=mysqli_fetch_array($q,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
}
|
||||
|
||||
public function treatDemand($user_id)
|
||||
{
|
||||
$dat=date ("Y-m-d H:i:s");
|
||||
$q=mysqli_query($this->con,"UPDATE demandeCredits SET status='1',date_modification='$dat' WHERE id='$user_id'");
|
||||
if($q){
|
||||
$qdemande=mysqli_query($this->con,"SELECT * from demandeCredits dc WHERE dc.id='$user_id'");
|
||||
if($qdemande) {
|
||||
$demande = mysqli_fetch_array($qdemande, MYSQLI_ASSOC);
|
||||
$montant = (int)$demande["montant"];
|
||||
$id = $demande['network_agent_id'];
|
||||
return ['success' => 1,"montant"=>$montant];
|
||||
|
||||
}
|
||||
}
|
||||
return ['error'=>mysqli_error($this->con)];
|
||||
|
||||
|
||||
}
|
||||
|
||||
private function getNbMemberOf($code_membre)
|
||||
{
|
||||
$q=mysqli_query($this->con,"SELECT DISTINCT COUNT(*) AS nbr_membre FROM agents ag INNER JOIN networks_agents na ON na.agent_id=ag.id INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE cg.code_parrain='$code_membre' AND cg.code_membre!='$code_membre' AND na.etat='1'");
|
||||
if($q){
|
||||
return mysqli_fetch_array($q,MYSQLI_ASSOC)['nbr_membre'];
|
||||
}else{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public function getPointInDistance($reseau,$position, $distance,$page)
|
||||
{
|
||||
$mlat=$position->latitude;
|
||||
$mlong=$position->longitude;
|
||||
$re=$reseau->id;
|
||||
$offset=$page*50;
|
||||
$res= mysqli_query($this->con,"SELECT ag.id as agentId,na.id as id,ag.longitude as longitude,
|
||||
ag.adresse,
|
||||
ag.latitude as latitude,na.transactionNumber as phoneTransaction,
|
||||
ag.firstname as firstname,ag.lastname as lastname, ag.email as email,na.phone as phone,cg.code_membre as code_membre,
|
||||
nt.name as network,ct.name as country, na.etat as etat
|
||||
FROM agents ag INNER JOIN networks_agents na ON na.agent_id=ag.id INNER JOIN networks nt ON na.network_id=nt.id INNER JOIN countries ct ON ct.id=nt.country_id INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE cg.category='geolocated' AND na.etat=1 AND getDistanceMetre($mlat,ag.latitude,$mlong,ag.longitude)<=$distance AND nt.id=$re ORDER BY agentId LIMIT 51 OFFSET $offset");
|
||||
if($res){
|
||||
$li=["page"=>$page,"offset"=>$offset,"total"=>$offset,"count"=>0];
|
||||
while ($r=mysqli_fetch_array($res,MYSQLI_ASSOC)){
|
||||
$li["items"][]=$r;
|
||||
$li["count"]=$li["count"]+1;
|
||||
$li["total"]=$li["total"]+1;
|
||||
}
|
||||
return $li;
|
||||
}else return mysqli_error($this->con);
|
||||
}
|
||||
}
|
|
@ -1,912 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 04/08/18
|
||||
* Time: 22:36
|
||||
*/
|
||||
|
||||
|
||||
include 'DataBaseConnector.php';
|
||||
class Requester
|
||||
{
|
||||
|
||||
//TODO ajouter la comparaison partiel de la ville query with la ville
|
||||
// Step 3: instantiate a new Twilio Rest Client
|
||||
var $messenger;
|
||||
var $db;
|
||||
var $user_id;
|
||||
var $messageText;
|
||||
var $enLangs=["en","en-US","en_US","ca","in","gb","GB","us"];
|
||||
/**
|
||||
* Requester constructor.
|
||||
*/
|
||||
public function __construct($user_id,$lang="en")
|
||||
{
|
||||
|
||||
$this->db = new DataBaseConnector();
|
||||
$this->user_id = $user_id;
|
||||
$this->messenger=new Messenger();
|
||||
$la=$lang;
|
||||
if(in_array($lang,$this->enLangs))$la='en';
|
||||
if(file_exists("./../static/$la/message.json"))
|
||||
$this->messageText=file_get_contents("./../static/$la/message.json");
|
||||
else
|
||||
$this->messageText=file_get_contents("./../static/en/message.json");
|
||||
|
||||
$this->messageText=json_decode($this->messageText,true);
|
||||
}
|
||||
|
||||
public function loginPhonePassword($phone, $password)
|
||||
{
|
||||
// check for user
|
||||
$user = $this->loginUser($phone, $password);
|
||||
if (!$user) {
|
||||
$user = $this->loginAgent($phone, $password);
|
||||
if (!$user) {
|
||||
$response["error"] = 1;
|
||||
$response["error_msg"] =$this->messageText["PHONE_OR_NUMBER_INCORRECT"] ;
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
return $user;
|
||||
}
|
||||
public function getAgentInfoByCode($code){
|
||||
$codes=$this->getChildCode($code);
|
||||
if(isset($codes["child"])){
|
||||
$codes['network']=$this->db->getAgentNetworkByCode($code);
|
||||
}
|
||||
return json_encode($codes);
|
||||
}
|
||||
public function getSuperviseurNetwork($codesuperviseur)
|
||||
{
|
||||
$point = $this->db->getSuperviseurNetwork($codesuperviseur, $this->user_id);
|
||||
if (isset($point['success'])) {
|
||||
$response['success'] = 1;
|
||||
$response['datas'] = $point['val'];
|
||||
$response['catchild']=$point['catchild'];
|
||||
$response['catparent']=$point['catparrain'];
|
||||
return $response;
|
||||
} else {
|
||||
$response = ['error' => 1,
|
||||
'error_msg' => $this->messageText['UNABLE_TO_GET_GEOLOCATED_POINT'], 'sql_error' => $point["error"]];
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
|
||||
public function getAllCountryPoint($country)
|
||||
{
|
||||
$point = $this->db->getAllPointInCountry($country);
|
||||
if ($point) {
|
||||
$response['success'] = 1;
|
||||
$response['datas'] = $point;
|
||||
return $response;
|
||||
} else {
|
||||
$response = ['error' => 1, 'error_msg' => "impossible de recupere les points de cette ville"];
|
||||
return $response;
|
||||
}
|
||||
}
|
||||
|
||||
public function recoverPasswordAgent($number)
|
||||
{
|
||||
if ($this->db->isPhoneExistedSimple($number)) {
|
||||
$randomcode = $this->db->random_string();
|
||||
$hash = $this->db->hashSSHA($randomcode);
|
||||
$encrypted_password = $hash["encrypted"]; // encrypted password
|
||||
$salt = $hash["salt"];
|
||||
$user = $this->db->forgotPasswordSimple($number, $encrypted_password, $salt);
|
||||
if ($user) {
|
||||
$mail = $this->db->getEmailSimple($number);
|
||||
if ($mail) {
|
||||
$subject = "Password Recovery";
|
||||
$message = sprintf($this->messageText['TEXT_RECOVERY_PASSWORD'],$randomcode);
|
||||
$from = "noreply@ilink-app.com";
|
||||
$headers = "From:" . $from;
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->setHeader($headers);
|
||||
$this->messenger->setMessage($message);
|
||||
$this->messenger->setContact($number);
|
||||
$this->messenger->setMail($mail['email']);
|
||||
$this->messenger->sendMail();
|
||||
$this->messenger->sendSms();
|
||||
|
||||
// Stop Sending SMS
|
||||
$response["success"] = 1;
|
||||
|
||||
$response["message"] = "Le mot de passe a été modifié et un message vous a été envoyé à " . $mail["email"];
|
||||
return $response;
|
||||
} else {
|
||||
$response["error"] = -6;
|
||||
$response["message"] = "impossible d'envoyer le mail";
|
||||
$response["last_error"] = mysqli_error($this->db->con);
|
||||
return $response;
|
||||
}
|
||||
} else {
|
||||
$response["error"] = -7;
|
||||
$response["message"] = "impossible de changer le mots de passe";
|
||||
$response["last_error"] = mysqli_error($this->db->con);
|
||||
return $response;
|
||||
|
||||
}
|
||||
}else
|
||||
return ['error' => -5, 'message' => "Ce numéro n'existe pas",'phone'=>$number];
|
||||
}
|
||||
|
||||
public function recoverUserPassword($number)
|
||||
{
|
||||
if ($this->db->isPhoneExistedSimple($number)) {
|
||||
$randomcode = $this->db->random_string();
|
||||
$hash = $this->db->hashSSHA($randomcode);
|
||||
$encrypted_password = $hash["encrypted"]; // encrypted password
|
||||
$salt = $hash["salt"];
|
||||
$user = $this->db->forgotPasswordSimple($number, $encrypted_password, $salt);
|
||||
if ($user) {
|
||||
$mail = $this->db->getEmailSimple($number);
|
||||
if ($mail) {
|
||||
$subject = "Password Recovery";
|
||||
$message = sprintf($this->messageText['TEXT_RECOVERY_PASSWORD'],$randomcode);
|
||||
$from = "noreply@ilink-app.com";
|
||||
$headers = "From:" . $from;
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->setHeader($headers);
|
||||
$this->messenger->setMessage($message);
|
||||
$this->messenger->setContact($number);
|
||||
$this->messenger->setMail( $mail["email"]);
|
||||
$this->messenger->sendMail();
|
||||
//$this->messenger->sendSms();
|
||||
|
||||
// Stop Sending SMS
|
||||
$response["success"] = 1;
|
||||
$response["message"] = "Le mot de passe a été modifié et un message vous a été envoyé à " . $mail["email"];
|
||||
return $response;
|
||||
} else {
|
||||
$response["error"] = -6;
|
||||
$response["message"] = "impossible d'envoyer le mail";
|
||||
$response["last_error"] = mysqli_error($this->db->con);
|
||||
return $response;
|
||||
}
|
||||
} else {
|
||||
$response["error"] = -7;
|
||||
$response["message"] = "impossible de changer le mots de passe";
|
||||
$response["last_error"] = mysqli_error($this->db->con);
|
||||
return $response;
|
||||
|
||||
}
|
||||
}else
|
||||
return ['error' => -5, 'message' => 'Ce numéro n\'existe pas',"phone"=>"$number"];
|
||||
|
||||
}
|
||||
|
||||
private function sendMail($email, $subject, $message, $headers)
|
||||
{
|
||||
mail($email, $subject, $message, $headers);
|
||||
}
|
||||
|
||||
private function sendMessage($message, $number)
|
||||
{
|
||||
$sms = $this->client->account->messages->create(
|
||||
$number,
|
||||
array(
|
||||
// Step 6: Change the 'From' number below to be a valid Twilio number
|
||||
// that you've purchased
|
||||
'from' => sender_number,
|
||||
|
||||
|
||||
// the sms body
|
||||
'body' => $message
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
public function getPointAroundKm($reseau,$position, $distance,$page)
|
||||
{
|
||||
$list=$this->db->getPointInDistance($reseau,$position,$distance,$page);
|
||||
return json_encode($list);
|
||||
}
|
||||
|
||||
public function getNetworkPoint($network)
|
||||
{
|
||||
$points = $this->db->getPointsNetwork($network, $this->user_id);
|
||||
if (!isset($points['error'])) {
|
||||
$pts=['success'=>1,'datas'=>$points];
|
||||
return json_encode($pts);
|
||||
} else
|
||||
return json_encode(['error' => -4, 'error_msg' => 'error query','mysql'=> mysqli_error($this->db->con),"data"=>$points,"network"=>$network,"user"=>$this->user_id]);
|
||||
|
||||
}
|
||||
|
||||
function distance($lat1, $lon1, $lat2, $lon2)
|
||||
{
|
||||
|
||||
$theta = $lon1 - $lon2;
|
||||
|
||||
$dist = sin(deg2rad($lat1)) * sin(deg2rad($lat2)) +
|
||||
cos(deg2rad($lat1)) * cos(deg2rad($lat2)) * cos(deg2rad($theta));
|
||||
$dist = acos($dist);
|
||||
$dist = rad2deg($dist);
|
||||
$miles = $dist * 60 * 1.1515;
|
||||
$unit = "K";
|
||||
|
||||
if ($unit == "K") {
|
||||
return ($miles * 1.609344);
|
||||
} else if ($unit == "N") {
|
||||
return ($miles * 0.8684);
|
||||
} else {
|
||||
return $miles;
|
||||
}
|
||||
}
|
||||
|
||||
public function registerGeolocated($request)
|
||||
{
|
||||
if ($this->db->isPhoneExistedInCategory($request->phone, $request->category,$request->phone_transaction)) {
|
||||
// user is already existed - error response
|
||||
$response["error"] = 1;
|
||||
$response["error_msg"] = $this->messageText['ALREADY_PHONE_NUMBER'];
|
||||
echo json_encode($response);
|
||||
} else {
|
||||
if ($checkValidity = $this->db->checknumberValidity($request->phone)) {
|
||||
$membercodetest = $this->db->isMemberCodeExisted($request->member);
|
||||
if ($membercodetest) {
|
||||
$user = $this->db->storeUser($request->address, $request->lastname, $request->email, $request->phone,
|
||||
$request->password, $request->network, $request->member, $request->latitude, $request->longitude, $request->town,$request->phone_transaction);
|
||||
if ($user != null && !isset($user['error'])) {
|
||||
//if ($user) {
|
||||
// user stored successfully
|
||||
$user["success"] = 1;
|
||||
$validation = $user["validation_code"];
|
||||
$username = $user["lastname"];
|
||||
$subject = "Bienvenue sur Ilink";
|
||||
$phone = $user['phone'];
|
||||
$ct=($user['category']=='geolocated'?'Agent Géolocalisé':($user['category']=='super'?'Administrateur':'Super Administrateur'));
|
||||
$message1 =sprintf($this->messageText['MESSAGE_1'],$username,$ct,$phone,$request->password,$validation);
|
||||
$message2 = sprintf($this->messageText['MESSAGE_2'],$username,$ct,$phone,$request->password);
|
||||
$from = "noreply@ilink-app.com";
|
||||
$headers = "From:" . $from;
|
||||
$name = "ilink";
|
||||
|
||||
$this->messenger->setReceiverMail($user['email']);
|
||||
$this->messenger->setContact($user['phone']);
|
||||
$this->messenger->setMessage($user['category']=='super'?$message2:$message1);
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->setHeader($headers);
|
||||
if (!$this->messenger->sendMail()) {
|
||||
return json_encode(error_get_last());
|
||||
};
|
||||
$sms = $this->messenger->sendSms();
|
||||
|
||||
|
||||
}
|
||||
return json_encode($user);
|
||||
|
||||
/* echo "Réseau : ".strtoupper($user["network"])."<br />";
|
||||
echo "<br />";
|
||||
echo "Nom(s) :".$user["lastname"]."<br />";
|
||||
echo "Email par défaut du réseau : ".$user["email"]."<br />";
|
||||
echo "Telephone :".$user["phone"]."<br />";
|
||||
echo "Code membre pour le réseau : ".$user["code_membre"]."<br />";
|
||||
echo "<br />";*/
|
||||
} else {
|
||||
return json_encode(['error' => 'unable to get membrre', 'error_msg' => $this->messageText['NO_CODE_MEMBER']]);
|
||||
|
||||
}
|
||||
}else{
|
||||
return json_encode(['error' => 'unable to get membrre',"msg"=>$this->messageText, 'error_msg' => $this->messageText['INVALID_PHONE']]);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public function getNetwork()
|
||||
{
|
||||
return json_encode($this->db->getNetwork());
|
||||
}
|
||||
|
||||
public function loginUser($phone, $password)
|
||||
{
|
||||
$user = $this->db->getUserByPhoneAndPasswordSimple($phone, $password);
|
||||
if (!isset($user['error'])) {
|
||||
// user found
|
||||
// echo json with success = 1
|
||||
$user["success"] = 1;
|
||||
if(isset($user['active']))
|
||||
$user['etat']=$user['active'];
|
||||
|
||||
} else {
|
||||
switch ($user['error']){
|
||||
case -2:$user['error_msg']=$this->messageText['WRONG_PHONE_NUMBER'];
|
||||
break;
|
||||
case -3:
|
||||
$user['error_msg']=$this->messageText['WRONG_PASSWORD'];break;
|
||||
}
|
||||
}
|
||||
return $user;
|
||||
}
|
||||
|
||||
public function loginAgent($phone, $password)
|
||||
{
|
||||
$user = $this->db->getUserByPhoneAndPasswordGeolocated($phone, $password);
|
||||
if (!isset($user['error'])) {
|
||||
// user found
|
||||
// echo json with success = 1
|
||||
$user["success"] = 1;
|
||||
return $user;
|
||||
|
||||
} else
|
||||
|
||||
return $user;
|
||||
|
||||
}
|
||||
|
||||
public function getSupervisorAdhesionList($codeparrain)
|
||||
{
|
||||
$resparrain=mysqli_query($this->db->con,"SELECT na.id as id FROM networks_agents na INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE cg.code_membre='$codeparrain'");
|
||||
if($resparrain){
|
||||
$parrain=mysqli_fetch_array($resparrain,MYSQLI_ASSOC)['id'];
|
||||
|
||||
$r=mysqli_query($this->db->con,"select ag.firstname as firstname,ag.lastname as lastname, ag.email as email,na.phone as phone ,ne.name as network,cg.code_membre as code_membre,cg.code_parrain as code_parrain,ds.etat as etat
|
||||
from agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id INNER JOIN networks ne ON na.network_id=ne.id INNER JOIN demandeAdhesion ds ON 1=1 WHERE ds.networks_agent_id='$parrain' AND cg.code_membre!='$codeparrain' AND na.etat='0' AND ds.etat='0' AND cg.code_parrain='$codeparrain'");
|
||||
$rows=[];
|
||||
if($r) {
|
||||
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
|
||||
|
||||
$rows[] = $row;
|
||||
}
|
||||
if (count($rows) > 0) {
|
||||
return $rows;
|
||||
} else {
|
||||
echo mysqli_error($this->db->con);
|
||||
return $rows;
|
||||
}
|
||||
}else{
|
||||
|
||||
return ['error'=>mysqli_error($this->db->con)];
|
||||
}
|
||||
}else{
|
||||
return mysqli_error($this->db->con);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public function getChildCode($codeparrain)
|
||||
{
|
||||
$r=$this->db->getCategoryAgent($codeparrain);
|
||||
if($r['etat']==1){
|
||||
switch ($r['category']){
|
||||
case 'hyper':
|
||||
$r['child']='super';
|
||||
break;
|
||||
case 'super':
|
||||
$r["child"]="geolocated";
|
||||
break;
|
||||
}
|
||||
}
|
||||
return $r;
|
||||
}
|
||||
|
||||
public function updateWrongPoint()
|
||||
{
|
||||
$result=[];
|
||||
try{
|
||||
$result = mysqli_query($this->db->con, "UPDATE users_simple SET firstname = REPLACE(firstname, 'é', 'é') WHERE firstname LIKE '%é%'");
|
||||
}catch (Exception $e) {
|
||||
var_dump(mysqli_error($this->db->con));
|
||||
}
|
||||
$da="freud junior";
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
public function storeCreditAsk($phone,$montant,$code)
|
||||
{
|
||||
$result=$this->db->storeDemandeCredit($phone,$montant,$code);
|
||||
if ($result) {
|
||||
$usr=$result['agent'];
|
||||
$subject = $this->messageText['NEW_DEMAND_TITLE'];
|
||||
$email = $usr['email'];
|
||||
$message = $this->messageText['SEND_CREDIT_DEMAND_TEXT_SUCCESS'];
|
||||
$from = "noreply@ilink.com";
|
||||
$headers = "From:" . $from;
|
||||
$name = "ilink";
|
||||
|
||||
$this->messenger->setHeader($headers);
|
||||
$this->messenger->setContact($phone);
|
||||
$this->messenger->setMessage($message);
|
||||
$this->messenger->setReceiverMail($email);
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->sendMail();
|
||||
try {
|
||||
$this->messenger->sendSms();
|
||||
}catch (Exception $e){
|
||||
|
||||
}
|
||||
} else {
|
||||
// user failed to store
|
||||
$response["error"] = 1;
|
||||
$response["result"]=$result;
|
||||
$response["error_msg"] = $this->messageText['UNABLE_TO_SEND_DEMAND'];
|
||||
$response["sql"]=mysqli_error($this->db->con);
|
||||
$response["last"]=error_get_last();
|
||||
$response["montant"]=$montant;
|
||||
$response["phone"]=$phone;
|
||||
echo json_encode($response);
|
||||
|
||||
}
|
||||
return json_encode($result);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
public function getCountryNetWork($indicatif)
|
||||
|
||||
{
|
||||
$res=mysqli_query($this->db->con,
|
||||
"SELECT nt.id AS id, nt.name AS name,nt.country_id AS countryId FROM networks nt INNER JOIN countries ct
|
||||
ON nt.country_id=ct.id WHERE ct.code_dial='$indicatif' AND nt.name!=''AND nt.status=1");
|
||||
if($res){
|
||||
$rows=[];
|
||||
while($row=mysqli_fetch_array($res,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>'unable to query list networks','error_sql'=>mysqli_error($this->db->con)];
|
||||
|
||||
}
|
||||
|
||||
public function getTownInfoByName($name)
|
||||
{
|
||||
|
||||
$res=mysqli_query($this->db->con,"SELECT nt.name as name,nt.id as id ,ct.code_dial as indicatif FROM towns nt INNER JOIN countries ct ON nt.country_id=ct.id WHERE UPPER(nt.name)=UPPER('$name')");
|
||||
if($res){
|
||||
while($row=mysqli_fetch_array($res,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
if($rows==null){
|
||||
return ['error'=>'unable to query town information','ville'=>$name,'error_sql'=>mysqli_error($this->db->con)];
|
||||
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>'unable to query town information','ville'=>$name,'error_sql'=>mysqli_error($this->db->con)];
|
||||
|
||||
}
|
||||
|
||||
public function getListTownsCountry($indicatif)
|
||||
{
|
||||
|
||||
$res=mysqli_query($this->db->con,"SELECT nt.name as name,nt.id as id ,ct.code_dial as indicatif FROM towns nt INNER JOIN countries ct ON nt.country_id=ct.id WHERE ct.code_dial='$indicatif'");
|
||||
if($res){
|
||||
$rows=[];
|
||||
while($row=mysqli_fetch_array($res,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}else
|
||||
return ['error'=>'unable to query list towns','indicatif'=>$indicatif,'error_sql'=>mysqli_error($this->db->con)];
|
||||
|
||||
}
|
||||
|
||||
public function validateAgent($phone, $code_validation,$mbre_reseau=null,$mr_sous_reseau=null)
|
||||
{
|
||||
if(isset($phone) && isset($code_validation)){
|
||||
$res=mysqli_query($this->db->con,"SELECT na.id as agentId,ag.id as agId,cg.category as category,cg.code_membre as code_membre,cg.code_parrain AS code_parrain FROM agents ag INNER JOIN networks_agents na on ag.id=na.agent_id inner JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE na.phone='$phone' OR na.transactionNumber='$phone' AND na.validation_code='$code_validation'");
|
||||
if($res){
|
||||
if(mysqli_num_rows($res)>0){
|
||||
$net=mysqli_fetch_array($res,MYSQLI_ASSOC);
|
||||
$agentId=$net['agentId'];
|
||||
$agId=$net['agId'];
|
||||
$codeparrain = $net['code_parrain'];
|
||||
$codeMembre=$net['code_membre'];
|
||||
$re = mysqli_query($this->db->con, "SELECT ag.id as parrainId, ag.number_super as nbre_reseau,ag.number_geoBysuper as nbre_sous_reseau FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id inner JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE cg.code_membre='$codeparrain'");
|
||||
if($re) {
|
||||
$parrain = mysqli_fetch_array($re, MYSQLI_ASSOC);
|
||||
$nbre_sup = $parrain['nbre_sous_reseau'];
|
||||
$nbre = $parrain['nbre_reseau'];
|
||||
$parrainId=$parrain['parrainId'];
|
||||
switch ($net['category']) {
|
||||
case 'hyper':
|
||||
if (isset($mbre_reseau) && isset($mr_sous_reseau)) {
|
||||
$r = mysqli_query($this->db->con, "UPDATE `networks_agents` SET etat = '1' WHERE `id` = $agentId ");
|
||||
$var3["message_erreur_1"] = mysqli_error($this->db->con);
|
||||
$rs = mysqli_query($this->db->con, "UPDATE agents SET number_super='$mbre_reseau',number_geoBysuper='$mr_sous_reseau' WHERE id='$agId'");
|
||||
if ($r && $rs) {
|
||||
|
||||
$var3["success"] = 1;
|
||||
$var3["message"] = "User has been validated successfully !";
|
||||
return $var3;
|
||||
} else {
|
||||
$var3["error"] = 1;
|
||||
$var3["message"] = mysqli_error($this->db->con);
|
||||
return $var3;
|
||||
}
|
||||
} else {
|
||||
|
||||
$var3["error"] = -2;
|
||||
$var3["message"] = "no nbre reseau et sous reseau";
|
||||
return $var3;
|
||||
|
||||
}
|
||||
break;
|
||||
case 'geolocated':
|
||||
$r = mysqli_query($this->db->con, "UPDATE networks_agents SET etat = '1' WHERE id = '$agentId' ");
|
||||
if ($r) {
|
||||
$nbre -= $nbre > 0 ? 1 : 0;
|
||||
mysqli_query($this->db->con, "UPDATE agents SET number_geoBysuper = '$nbre' WHERE `id` = '$parrainId' ");
|
||||
$var3["success"] = 1;
|
||||
$var3["message"] = "User has been validated successfully !";
|
||||
return $var3;
|
||||
} else {
|
||||
$var3["error"] = 1;
|
||||
$var3["message"] = mysqli_error($this->db->con);
|
||||
return $var3;
|
||||
}
|
||||
break;
|
||||
case 'super':
|
||||
$rs = mysqli_query($this->db->con, "UPDATE agents SET number_geoBysuper='$nbre_sup',number_super='$nbre_sup' WHERE id='$agId'");
|
||||
if ($rs) {
|
||||
if (mysqli_num_rows($re) > 0) {
|
||||
$r = mysqli_query($this->db->con, "UPDATE `networks_agents` SET etat = '1' WHERE id ='$agentId'");
|
||||
if ($r) {
|
||||
$nbre -= $nbre > 0 ? 1 : 0;
|
||||
if(mysqli_query($this->db->con, "UPDATE `agents` SET number_super = '$nbre' WHERE id='$parrainId'")){
|
||||
$var3["success"] = 1;
|
||||
$var3['nbre_sup']=$nbre;
|
||||
$var3["message"] = "User has been validated successfully !";
|
||||
return $var3;
|
||||
|
||||
}else {
|
||||
$var3["error"] = 1;
|
||||
$var3["message"] = mysqli_error($this->db->con);
|
||||
return $var3;
|
||||
}
|
||||
|
||||
} else {
|
||||
$var3["error"] = 1;
|
||||
$var3["message"] = mysqli_error($this->db->con);
|
||||
return $var3;
|
||||
}
|
||||
|
||||
} else {
|
||||
$var3["error"] = -4;
|
||||
$var3["message"] = "impossible de trouve le parrain";
|
||||
return $var3;
|
||||
|
||||
}
|
||||
} else {
|
||||
$var3["error"] = -3;
|
||||
$var3["message"] = mysqli_error($this->db->con);
|
||||
return $var3;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}else{
|
||||
return ['error'=>'impossible de recuperer le parrain','error_msg'=>mysqli_error($this->db->con)];
|
||||
|
||||
}
|
||||
}else{
|
||||
return ['error'=>'invalide code','error_msg'=>"code de validation incorrect"];
|
||||
}
|
||||
}else{
|
||||
return ['error'=>'unable to query info network agent','error_msg'=>mysqli_error($this->db->con)];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function activeSupervisorAdhesion($code,$phone)
|
||||
{
|
||||
$idsUser=mysqli_query($this->db->con,"SELECT ag.email as email,ag.firstname as firstname,ag.lastname as lastname,na.validation_code as validation_code,na.phone as phone,
|
||||
na.id as agent_id,ds.id as demande_id FROM agents ag INNER JOIN networks_agents na ON ag.id=na.agent_id INNER JOIN demandeAdhesion ds ON 1=1 INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id WHERE ds.phone='$phone' AND cg.code_membre='$code'");
|
||||
if($idsUser){
|
||||
$idsusr=mysqli_fetch_array($idsUser,MYSQLI_ASSOC);
|
||||
$idAgent=$idsusr['agent_id'];
|
||||
$demandeId=$idsusr['demande_id'];
|
||||
$udateDemande=mysqli_query($this->db->con,"UPDATE demandeAdhesion SET etat='1' WHERE id='$demandeId'");
|
||||
if($udateDemande){
|
||||
$user=$idsusr;
|
||||
$validation = $user["validation_code"];
|
||||
$username = $user["lastname"];
|
||||
$subject = "Bienvenue sur Ilink";
|
||||
$phone = $user['phone'];
|
||||
$ct='Administrateur';
|
||||
$message1 =sprintf($this->messageText['MESSAGE_3'],$ct,$phone,$validation);
|
||||
|
||||
$from = "noreply@ilink-app.com";
|
||||
$headers = "From:" . $from;
|
||||
$name = "ilink";
|
||||
|
||||
$this->messenger->setReceiverMail($user['email']);
|
||||
$this->messenger->setContact($user['phone']);
|
||||
$this->messenger->setMessage($message1);
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->setHeader($headers);
|
||||
if (!$this->messenger->sendMail()) {
|
||||
return json_encode(error_get_last());
|
||||
};
|
||||
|
||||
$sms = $this->messenger->sendSms();
|
||||
|
||||
|
||||
}else{
|
||||
echo mysqli_error($this->db->con);
|
||||
}
|
||||
echo json_encode($idsusr);
|
||||
}else{
|
||||
echo mysqli_error($this->db->con);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
public function registerUser($request)
|
||||
{
|
||||
if ($this->db->isPhoneExistedSimple($request->phone)) {
|
||||
// user is already existed - error response
|
||||
$response["error"] = 1;
|
||||
$response["error_msg"] = "numero existe deja";
|
||||
echo json_encode($response);
|
||||
} else {
|
||||
if ($checkValidity = $this->db->checknumberValidity($request->phone)) {
|
||||
$user = $this->db->storeUserSimple($request->address, $request->lastname, $request->email,
|
||||
$request->phone,
|
||||
$request->password, $request->network);
|
||||
if ($user != null && !isset($user['error'])) {
|
||||
$user["success"] = 1;
|
||||
$username = $user["lastname"];
|
||||
$subject = "Bienvenue sur Ilink";
|
||||
$phone = $user['phone'];
|
||||
$validation_code=$user['validation_code'];
|
||||
$ct="Utilisateur";
|
||||
$message1 =sprintf($this->messageText['MESSAGE_1'],$username,$ct,$phone,$request->password,$validation_code);
|
||||
$message2 = sprintf($this->messageText['MESSAGE_2'],$username,$ct,$phone,$request->password,"");
|
||||
|
||||
$from = "noreply@ilink-app.com";
|
||||
$headers = "From:" . $from;
|
||||
$name = "ilink";
|
||||
|
||||
$this->messenger->setReceiverMail($user['email']);
|
||||
$this->messenger->setContact($user['phone']);
|
||||
$this->messenger->setMessage($message1);
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->setHeader($headers);
|
||||
if (!$this->messenger->sendMail()) {
|
||||
return json_encode(error_get_last());
|
||||
};
|
||||
|
||||
$sms = $this->messenger->sendSms();
|
||||
|
||||
} else {
|
||||
$user = ['error' => 'impossible de créer l\'utilisateur', 'error_sql' => mysqli_error($this->db->con)];
|
||||
}
|
||||
return json_encode($user);
|
||||
} else {
|
||||
return json_encode(['error' => 'unable to get membrre', 'error_msg' =>$this->messageText['INVALID_PHONE']]);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public function generateEmptyAgentNetworkForAgent($phone, $code_parrain)
|
||||
{
|
||||
if ($this->db->isPhoneExistedInCategory($phone)) {
|
||||
// user is al5eady existed - error response
|
||||
$response["error"] = 1;
|
||||
$response["error_msg"] =$this->messageText['ALREADY_PHONE_NUMBER'];
|
||||
return json_encode($response);
|
||||
}else{
|
||||
$user=$this->db->generateNetworkAgent($phone,$code_parrain);
|
||||
if(isset($user['success'])) {
|
||||
$validation = $user["validation_code"];
|
||||
$subject = "Bienvenue sur Ilink";
|
||||
$phone1 = $user['phone'];
|
||||
$ct='Agent Géolocalisé';
|
||||
$message1 =sprintf($this->messageText['MESSAGE_3'],$ct,$phone,$validation);
|
||||
|
||||
|
||||
$this->messenger->setContact($phone1);
|
||||
$this->messenger->setMessage($message1);
|
||||
$this->messenger->setSubject($subject);
|
||||
|
||||
if ($sms = $this->messenger->sendSms()) {
|
||||
|
||||
$user['message'] = $sms;
|
||||
} else {
|
||||
return json_encode(['error' => 'imossible d\'envoyer le message']);
|
||||
};
|
||||
}
|
||||
return json_encode($user);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function assignNetworkToAgent($agentId, $code_parrain,$phone)
|
||||
{
|
||||
$agent = $this->db->getAgentById($agentId);
|
||||
if ($agent) {
|
||||
$indicatif=$agent["indicatif"];
|
||||
if ($this->db->isPhoneExistedInCategory(null,null,$indicatif.$phone)) {
|
||||
$response["error"] = 1;
|
||||
$response["error_msg"] =$this->messageText['ALREADY_PHONE_NUMBER'];
|
||||
return json_encode($response);
|
||||
} else {
|
||||
$user = $this->db->generateNetworkAgent($phone, $code_parrain);
|
||||
if (isset($user['success'])) {
|
||||
$result = $this->db->assignNetworkAgent($agentId, $user['id']);
|
||||
if (isset($result['success'])) {
|
||||
$geoLocated['success'] = 1;
|
||||
$geoLocated['agent_id'] = $agentId;
|
||||
$validation = $user["validation_code"];
|
||||
$subject = "Bienvenue sur Ilink";
|
||||
$phone1 = $user['phone'];
|
||||
$message1 = sprintf($this->messageText['MESSAGE_ATTRIBUTE'],$phone1,$validation);
|
||||
|
||||
$this->messenger->setContact($phone1);
|
||||
$this->messenger->setMessage($message1);
|
||||
$this->messenger->setSubject($subject);
|
||||
$this->messenger->setReceiverMail($agent['email']);
|
||||
if ($sms = $this->messenger->sendSms()) {
|
||||
|
||||
$user['message'] = $sms;
|
||||
} else {
|
||||
return json_encode(['error' => 'imossible d\'envoyer le message']);
|
||||
};
|
||||
|
||||
return json_encode($geoLocated);
|
||||
} else {
|
||||
return json_encode($result);
|
||||
}
|
||||
} else {
|
||||
return json_encode($user);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
} else {
|
||||
return json_encode(['error' => mysqli_error($this->db->con)]);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function listNetworksGeo()
|
||||
{
|
||||
if($this->user_id){
|
||||
$result= $this->db->getListNetworkOfGeoPoint($this->user_id);
|
||||
if(!isset($result['error'])){
|
||||
$networks=['success'=>1,'networks'=>$result];
|
||||
return $networks;
|
||||
|
||||
}else
|
||||
return $result;
|
||||
}else{
|
||||
return ['error'=>'unable to find user_id'];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function listFreeNetworksForSuper()
|
||||
{
|
||||
if($this->user_id){
|
||||
$result= $this->db->getListFreeNetworkOfGeoPoint($this->user_id);
|
||||
if(!isset($result['error'])){
|
||||
$networks=['success'=>1,'networks'=>$result];
|
||||
return $networks;
|
||||
|
||||
}else
|
||||
return $result;
|
||||
}else{
|
||||
return ['error'=>'unable to find user_id'];
|
||||
}
|
||||
}
|
||||
|
||||
public function getAgentReceiveDemande()
|
||||
{
|
||||
if($this->user_id){
|
||||
$result= $this->db->getListDemandeReceiveAgent($this->user_id);
|
||||
if(!isset($result['error'])){
|
||||
$networks=['success'=>1,'demands'=>$result];
|
||||
return json_encode($networks);
|
||||
|
||||
}else
|
||||
return json_encode($result);
|
||||
}else{
|
||||
return json_encode(['error'=>'unable to find user_id']);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function getAgentSendDemande()
|
||||
{
|
||||
if($this->user_id){
|
||||
$result= $this->db->getListDemandeSendAgent($this->user_id);
|
||||
if(!isset($result['error'])){
|
||||
$networks=['success'=>1,'demands'=>$result];
|
||||
return json_encode($networks);
|
||||
|
||||
}else
|
||||
return json_encode($result);
|
||||
}else{
|
||||
return json_encode(['error'=>'unable to find user_id']);
|
||||
} }
|
||||
|
||||
public function treatDemand($phone)
|
||||
{
|
||||
if($this->user_id){
|
||||
$result= $this->db->treatDemand($this->user_id);
|
||||
if(isset($result['success'])){
|
||||
$this->messenger->setContact($phone);
|
||||
$this->messenger->setMessage($this->messageText['MESSAGE_TREAT']);
|
||||
$this->messenger->sendSms();
|
||||
}
|
||||
return json_encode($result);
|
||||
}else{
|
||||
return json_encode(['error'=>'unable to find user_id']);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public function getActiveCountries()
|
||||
{
|
||||
$mq=mysqli_query($this->db->con,"SELECT DISTINCT ct.id,ct.code_dial,ct.name,ct.code_country FROM countries ct INNER JOIN networks ne ON ne.country_id=ct.id");
|
||||
if($mq){
|
||||
while($row=mysqli_fetch_array($mq,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return json_encode($rows);
|
||||
}else{
|
||||
return ['error'=>mysqli_error($this->db->con)];
|
||||
}
|
||||
}
|
||||
|
||||
public function getAgentById()
|
||||
{
|
||||
return$this->db->getAgentById($this->user_id);
|
||||
}
|
||||
|
||||
public function updatePosition($agentId, $longitude, $latitude)
|
||||
{
|
||||
$result=[];
|
||||
$q = mysqli_query($this->db->con, "UPDATE agents SET longitude='$longitude',latitude='$latitude' WHERE id='$agentId'");
|
||||
if($q){
|
||||
return json_encode(['success'=>1]);
|
||||
}else return json_encode(['error'=>0,'sql'=>mysqli_error($this->db->con)]);
|
||||
|
||||
}
|
||||
|
||||
public function validateUser($phone)
|
||||
{
|
||||
|
||||
if(isset($phone)){
|
||||
$res=mysqli_query($this->db->con,"SELECT * from users_simple WHERE phone='$phone'");
|
||||
if($res){
|
||||
if(mysqli_num_rows($res)>0){
|
||||
$user=mysqli_fetch_array($res,MYSQLI_ASSOC);
|
||||
$userId=$user['id'];
|
||||
$r = mysqli_query($this->db->con, "UPDATE users SET active = '1' WHERE id = '$userId' ");
|
||||
if($r) {
|
||||
$var3["success"] = 1;
|
||||
$var3["message"] = "User has been validated successfully !";
|
||||
$res=mysqli_query($this->db->con,"SELECT * from users_simple WHERE phone='$phone'");
|
||||
$user=mysqli_fetch_array($res,MYSQLI_ASSOC);
|
||||
$var3['user']=$user;
|
||||
return $var3;
|
||||
|
||||
}else{
|
||||
return ['error'=>'impossible de recuperer le parrain','error_msg'=>mysqli_error($this->db->con)];
|
||||
|
||||
}
|
||||
}else{
|
||||
return ['error'=>'invalide code','error_msg'=>"code de validation incorrect"];
|
||||
}
|
||||
}else{
|
||||
return ['error'=>'unable to query info network agent','error_msg'=>mysqli_error($this->db->con)];
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Courier';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
for($i=0;$i<=255;$i++)
|
||||
$cw[chr($i)] = 600;
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Courier-Bold';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
for($i=0;$i<=255;$i++)
|
||||
$cw[chr($i)] = 600;
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Courier-BoldOblique';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
for($i=0;$i<=255;$i++)
|
||||
$cw[chr($i)] = 600;
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,10 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Courier-Oblique';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
for($i=0;$i<=255;$i++)
|
||||
$cw[chr($i)] = 600;
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Helvetica';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
|
||||
chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>278,'"'=>355,'#'=>556,'$'=>556,'%'=>889,'&'=>667,'\''=>191,'('=>333,')'=>333,'*'=>389,'+'=>584,
|
||||
','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>278,';'=>278,'<'=>584,'='=>584,'>'=>584,'?'=>556,'@'=>1015,'A'=>667,
|
||||
'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>500,'K'=>667,'L'=>556,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
|
||||
'X'=>667,'Y'=>667,'Z'=>611,'['=>278,'\\'=>278,']'=>278,'^'=>469,'_'=>556,'`'=>333,'a'=>556,'b'=>556,'c'=>500,'d'=>556,'e'=>556,'f'=>278,'g'=>556,'h'=>556,'i'=>222,'j'=>222,'k'=>500,'l'=>222,'m'=>833,
|
||||
'n'=>556,'o'=>556,'p'=>556,'q'=>556,'r'=>333,'s'=>500,'t'=>278,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>500,'{'=>334,'|'=>260,'}'=>334,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>222,chr(131)=>556,
|
||||
chr(132)=>333,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>222,chr(146)=>222,chr(147)=>333,chr(148)=>333,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
|
||||
chr(154)=>500,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>260,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>556,chr(182)=>537,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
|
||||
chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>500,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>556,chr(241)=>556,
|
||||
chr(242)=>556,chr(243)=>556,chr(244)=>556,chr(245)=>556,chr(246)=>556,chr(247)=>584,chr(248)=>611,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Helvetica-Bold';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
|
||||
chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>333,'"'=>474,'#'=>556,'$'=>556,'%'=>889,'&'=>722,'\''=>238,'('=>333,')'=>333,'*'=>389,'+'=>584,
|
||||
','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>333,';'=>333,'<'=>584,'='=>584,'>'=>584,'?'=>611,'@'=>975,'A'=>722,
|
||||
'B'=>722,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>556,'K'=>722,'L'=>611,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
|
||||
'X'=>667,'Y'=>667,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>584,'_'=>556,'`'=>333,'a'=>556,'b'=>611,'c'=>556,'d'=>611,'e'=>556,'f'=>333,'g'=>611,'h'=>611,'i'=>278,'j'=>278,'k'=>556,'l'=>278,'m'=>889,
|
||||
'n'=>611,'o'=>611,'p'=>611,'q'=>611,'r'=>389,'s'=>556,'t'=>333,'u'=>611,'v'=>556,'w'=>778,'x'=>556,'y'=>556,'z'=>500,'{'=>389,'|'=>280,'}'=>389,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>278,chr(131)=>556,
|
||||
chr(132)=>500,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>278,chr(146)=>278,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
|
||||
chr(154)=>556,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>280,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>611,chr(182)=>556,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
|
||||
chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>556,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>611,chr(241)=>611,
|
||||
chr(242)=>611,chr(243)=>611,chr(244)=>611,chr(245)=>611,chr(246)=>611,chr(247)=>584,chr(248)=>611,chr(249)=>611,chr(250)=>611,chr(251)=>611,chr(252)=>611,chr(253)=>556,chr(254)=>611,chr(255)=>556);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Helvetica-BoldOblique';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
|
||||
chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>333,'"'=>474,'#'=>556,'$'=>556,'%'=>889,'&'=>722,'\''=>238,'('=>333,')'=>333,'*'=>389,'+'=>584,
|
||||
','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>333,';'=>333,'<'=>584,'='=>584,'>'=>584,'?'=>611,'@'=>975,'A'=>722,
|
||||
'B'=>722,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>556,'K'=>722,'L'=>611,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
|
||||
'X'=>667,'Y'=>667,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>584,'_'=>556,'`'=>333,'a'=>556,'b'=>611,'c'=>556,'d'=>611,'e'=>556,'f'=>333,'g'=>611,'h'=>611,'i'=>278,'j'=>278,'k'=>556,'l'=>278,'m'=>889,
|
||||
'n'=>611,'o'=>611,'p'=>611,'q'=>611,'r'=>389,'s'=>556,'t'=>333,'u'=>611,'v'=>556,'w'=>778,'x'=>556,'y'=>556,'z'=>500,'{'=>389,'|'=>280,'}'=>389,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>278,chr(131)=>556,
|
||||
chr(132)=>500,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>278,chr(146)=>278,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
|
||||
chr(154)=>556,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>280,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>611,chr(182)=>556,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
|
||||
chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>556,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>611,chr(241)=>611,
|
||||
chr(242)=>611,chr(243)=>611,chr(244)=>611,chr(245)=>611,chr(246)=>611,chr(247)=>584,chr(248)=>611,chr(249)=>611,chr(250)=>611,chr(251)=>611,chr(252)=>611,chr(253)=>556,chr(254)=>611,chr(255)=>556);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Helvetica-Oblique';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>278,chr(1)=>278,chr(2)=>278,chr(3)=>278,chr(4)=>278,chr(5)=>278,chr(6)=>278,chr(7)=>278,chr(8)=>278,chr(9)=>278,chr(10)=>278,chr(11)=>278,chr(12)=>278,chr(13)=>278,chr(14)=>278,chr(15)=>278,chr(16)=>278,chr(17)=>278,chr(18)=>278,chr(19)=>278,chr(20)=>278,chr(21)=>278,
|
||||
chr(22)=>278,chr(23)=>278,chr(24)=>278,chr(25)=>278,chr(26)=>278,chr(27)=>278,chr(28)=>278,chr(29)=>278,chr(30)=>278,chr(31)=>278,' '=>278,'!'=>278,'"'=>355,'#'=>556,'$'=>556,'%'=>889,'&'=>667,'\''=>191,'('=>333,')'=>333,'*'=>389,'+'=>584,
|
||||
','=>278,'-'=>333,'.'=>278,'/'=>278,'0'=>556,'1'=>556,'2'=>556,'3'=>556,'4'=>556,'5'=>556,'6'=>556,'7'=>556,'8'=>556,'9'=>556,':'=>278,';'=>278,'<'=>584,'='=>584,'>'=>584,'?'=>556,'@'=>1015,'A'=>667,
|
||||
'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>722,'I'=>278,'J'=>500,'K'=>667,'L'=>556,'M'=>833,'N'=>722,'O'=>778,'P'=>667,'Q'=>778,'R'=>722,'S'=>667,'T'=>611,'U'=>722,'V'=>667,'W'=>944,
|
||||
'X'=>667,'Y'=>667,'Z'=>611,'['=>278,'\\'=>278,']'=>278,'^'=>469,'_'=>556,'`'=>333,'a'=>556,'b'=>556,'c'=>500,'d'=>556,'e'=>556,'f'=>278,'g'=>556,'h'=>556,'i'=>222,'j'=>222,'k'=>500,'l'=>222,'m'=>833,
|
||||
'n'=>556,'o'=>556,'p'=>556,'q'=>556,'r'=>333,'s'=>500,'t'=>278,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>500,'{'=>334,'|'=>260,'}'=>334,'~'=>584,chr(127)=>350,chr(128)=>556,chr(129)=>350,chr(130)=>222,chr(131)=>556,
|
||||
chr(132)=>333,chr(133)=>1000,chr(134)=>556,chr(135)=>556,chr(136)=>333,chr(137)=>1000,chr(138)=>667,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>222,chr(146)=>222,chr(147)=>333,chr(148)=>333,chr(149)=>350,chr(150)=>556,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
|
||||
chr(154)=>500,chr(155)=>333,chr(156)=>944,chr(157)=>350,chr(158)=>500,chr(159)=>667,chr(160)=>278,chr(161)=>333,chr(162)=>556,chr(163)=>556,chr(164)=>556,chr(165)=>556,chr(166)=>260,chr(167)=>556,chr(168)=>333,chr(169)=>737,chr(170)=>370,chr(171)=>556,chr(172)=>584,chr(173)=>333,chr(174)=>737,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>584,chr(178)=>333,chr(179)=>333,chr(180)=>333,chr(181)=>556,chr(182)=>537,chr(183)=>278,chr(184)=>333,chr(185)=>333,chr(186)=>365,chr(187)=>556,chr(188)=>834,chr(189)=>834,chr(190)=>834,chr(191)=>611,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
|
||||
chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>278,chr(205)=>278,chr(206)=>278,chr(207)=>278,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>584,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>667,chr(222)=>667,chr(223)=>611,chr(224)=>556,chr(225)=>556,chr(226)=>556,chr(227)=>556,chr(228)=>556,chr(229)=>556,chr(230)=>889,chr(231)=>500,chr(232)=>556,chr(233)=>556,chr(234)=>556,chr(235)=>556,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>556,chr(241)=>556,
|
||||
chr(242)=>556,chr(243)=>556,chr(244)=>556,chr(245)=>556,chr(246)=>556,chr(247)=>584,chr(248)=>611,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,20 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Symbol';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
|
||||
chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>713,'#'=>500,'$'=>549,'%'=>833,'&'=>778,'\''=>439,'('=>333,')'=>333,'*'=>500,'+'=>549,
|
||||
','=>250,'-'=>549,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>278,';'=>278,'<'=>549,'='=>549,'>'=>549,'?'=>444,'@'=>549,'A'=>722,
|
||||
'B'=>667,'C'=>722,'D'=>612,'E'=>611,'F'=>763,'G'=>603,'H'=>722,'I'=>333,'J'=>631,'K'=>722,'L'=>686,'M'=>889,'N'=>722,'O'=>722,'P'=>768,'Q'=>741,'R'=>556,'S'=>592,'T'=>611,'U'=>690,'V'=>439,'W'=>768,
|
||||
'X'=>645,'Y'=>795,'Z'=>611,'['=>333,'\\'=>863,']'=>333,'^'=>658,'_'=>500,'`'=>500,'a'=>631,'b'=>549,'c'=>549,'d'=>494,'e'=>439,'f'=>521,'g'=>411,'h'=>603,'i'=>329,'j'=>603,'k'=>549,'l'=>549,'m'=>576,
|
||||
'n'=>521,'o'=>549,'p'=>549,'q'=>521,'r'=>549,'s'=>603,'t'=>439,'u'=>576,'v'=>713,'w'=>686,'x'=>493,'y'=>686,'z'=>494,'{'=>480,'|'=>200,'}'=>480,'~'=>549,chr(127)=>0,chr(128)=>0,chr(129)=>0,chr(130)=>0,chr(131)=>0,
|
||||
chr(132)=>0,chr(133)=>0,chr(134)=>0,chr(135)=>0,chr(136)=>0,chr(137)=>0,chr(138)=>0,chr(139)=>0,chr(140)=>0,chr(141)=>0,chr(142)=>0,chr(143)=>0,chr(144)=>0,chr(145)=>0,chr(146)=>0,chr(147)=>0,chr(148)=>0,chr(149)=>0,chr(150)=>0,chr(151)=>0,chr(152)=>0,chr(153)=>0,
|
||||
chr(154)=>0,chr(155)=>0,chr(156)=>0,chr(157)=>0,chr(158)=>0,chr(159)=>0,chr(160)=>750,chr(161)=>620,chr(162)=>247,chr(163)=>549,chr(164)=>167,chr(165)=>713,chr(166)=>500,chr(167)=>753,chr(168)=>753,chr(169)=>753,chr(170)=>753,chr(171)=>1042,chr(172)=>987,chr(173)=>603,chr(174)=>987,chr(175)=>603,
|
||||
chr(176)=>400,chr(177)=>549,chr(178)=>411,chr(179)=>549,chr(180)=>549,chr(181)=>713,chr(182)=>494,chr(183)=>460,chr(184)=>549,chr(185)=>549,chr(186)=>549,chr(187)=>549,chr(188)=>1000,chr(189)=>603,chr(190)=>1000,chr(191)=>658,chr(192)=>823,chr(193)=>686,chr(194)=>795,chr(195)=>987,chr(196)=>768,chr(197)=>768,
|
||||
chr(198)=>823,chr(199)=>768,chr(200)=>768,chr(201)=>713,chr(202)=>713,chr(203)=>713,chr(204)=>713,chr(205)=>713,chr(206)=>713,chr(207)=>713,chr(208)=>768,chr(209)=>713,chr(210)=>790,chr(211)=>790,chr(212)=>890,chr(213)=>823,chr(214)=>549,chr(215)=>250,chr(216)=>713,chr(217)=>603,chr(218)=>603,chr(219)=>1042,
|
||||
chr(220)=>987,chr(221)=>603,chr(222)=>987,chr(223)=>603,chr(224)=>494,chr(225)=>329,chr(226)=>790,chr(227)=>790,chr(228)=>786,chr(229)=>713,chr(230)=>384,chr(231)=>384,chr(232)=>384,chr(233)=>384,chr(234)=>384,chr(235)=>384,chr(236)=>494,chr(237)=>494,chr(238)=>494,chr(239)=>494,chr(240)=>0,chr(241)=>329,
|
||||
chr(242)=>274,chr(243)=>686,chr(244)=>686,chr(245)=>686,chr(246)=>384,chr(247)=>384,chr(248)=>384,chr(249)=>384,chr(250)=>384,chr(251)=>384,chr(252)=>494,chr(253)=>494,chr(254)=>494,chr(255)=>0);
|
||||
$uv = array(32=>160,33=>33,34=>8704,35=>35,36=>8707,37=>array(37,2),39=>8715,40=>array(40,2),42=>8727,43=>array(43,2),45=>8722,46=>array(46,18),64=>8773,65=>array(913,2),67=>935,68=>array(916,2),70=>934,71=>915,72=>919,73=>921,74=>977,75=>array(922,4),79=>array(927,2),81=>920,82=>929,83=>array(931,3),86=>962,87=>937,88=>926,89=>936,90=>918,91=>91,92=>8756,93=>93,94=>8869,95=>95,96=>63717,97=>array(945,2),99=>967,100=>array(948,2),102=>966,103=>947,104=>951,105=>953,106=>981,107=>array(954,4),111=>array(959,2),113=>952,114=>961,115=>array(963,3),118=>982,119=>969,120=>958,121=>968,122=>950,123=>array(123,3),126=>8764,160=>8364,161=>978,162=>8242,163=>8804,164=>8725,165=>8734,166=>402,167=>9827,168=>9830,169=>9829,170=>9824,171=>8596,172=>array(8592,4),176=>array(176,2),178=>8243,179=>8805,180=>215,181=>8733,182=>8706,183=>8226,184=>247,185=>array(8800,2),187=>8776,188=>8230,189=>array(63718,2),191=>8629,192=>8501,193=>8465,194=>8476,195=>8472,196=>8855,197=>8853,198=>8709,199=>array(8745,2),201=>8835,202=>8839,203=>8836,204=>8834,205=>8838,206=>array(8712,2),208=>8736,209=>8711,210=>63194,211=>63193,212=>63195,213=>8719,214=>8730,215=>8901,216=>172,217=>array(8743,2),219=>8660,220=>array(8656,4),224=>9674,225=>9001,226=>array(63720,3),229=>8721,230=>array(63723,10),241=>9002,242=>8747,243=>8992,244=>63733,245=>8993,246=>array(63734,9));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Times-Roman';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
|
||||
chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>408,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>180,'('=>333,')'=>333,'*'=>500,'+'=>564,
|
||||
','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>278,';'=>278,'<'=>564,'='=>564,'>'=>564,'?'=>444,'@'=>921,'A'=>722,
|
||||
'B'=>667,'C'=>667,'D'=>722,'E'=>611,'F'=>556,'G'=>722,'H'=>722,'I'=>333,'J'=>389,'K'=>722,'L'=>611,'M'=>889,'N'=>722,'O'=>722,'P'=>556,'Q'=>722,'R'=>667,'S'=>556,'T'=>611,'U'=>722,'V'=>722,'W'=>944,
|
||||
'X'=>722,'Y'=>722,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>469,'_'=>500,'`'=>333,'a'=>444,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>333,'g'=>500,'h'=>500,'i'=>278,'j'=>278,'k'=>500,'l'=>278,'m'=>778,
|
||||
'n'=>500,'o'=>500,'p'=>500,'q'=>500,'r'=>333,'s'=>389,'t'=>278,'u'=>500,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>444,'{'=>480,'|'=>200,'}'=>480,'~'=>541,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
|
||||
chr(132)=>444,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>889,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>444,chr(148)=>444,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>980,
|
||||
chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>444,chr(159)=>722,chr(160)=>250,chr(161)=>333,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>200,chr(167)=>500,chr(168)=>333,chr(169)=>760,chr(170)=>276,chr(171)=>500,chr(172)=>564,chr(173)=>333,chr(174)=>760,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>564,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>500,chr(182)=>453,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>310,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>444,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
|
||||
chr(198)=>889,chr(199)=>667,chr(200)=>611,chr(201)=>611,chr(202)=>611,chr(203)=>611,chr(204)=>333,chr(205)=>333,chr(206)=>333,chr(207)=>333,chr(208)=>722,chr(209)=>722,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>564,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>722,chr(222)=>556,chr(223)=>500,chr(224)=>444,chr(225)=>444,chr(226)=>444,chr(227)=>444,chr(228)=>444,chr(229)=>444,chr(230)=>667,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>500,
|
||||
chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>564,chr(248)=>500,chr(249)=>500,chr(250)=>500,chr(251)=>500,chr(252)=>500,chr(253)=>500,chr(254)=>500,chr(255)=>500);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Times-Bold';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
|
||||
chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>555,'#'=>500,'$'=>500,'%'=>1000,'&'=>833,'\''=>278,'('=>333,')'=>333,'*'=>500,'+'=>570,
|
||||
','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>570,'='=>570,'>'=>570,'?'=>500,'@'=>930,'A'=>722,
|
||||
'B'=>667,'C'=>722,'D'=>722,'E'=>667,'F'=>611,'G'=>778,'H'=>778,'I'=>389,'J'=>500,'K'=>778,'L'=>667,'M'=>944,'N'=>722,'O'=>778,'P'=>611,'Q'=>778,'R'=>722,'S'=>556,'T'=>667,'U'=>722,'V'=>722,'W'=>1000,
|
||||
'X'=>722,'Y'=>722,'Z'=>667,'['=>333,'\\'=>278,']'=>333,'^'=>581,'_'=>500,'`'=>333,'a'=>500,'b'=>556,'c'=>444,'d'=>556,'e'=>444,'f'=>333,'g'=>500,'h'=>556,'i'=>278,'j'=>333,'k'=>556,'l'=>278,'m'=>833,
|
||||
'n'=>556,'o'=>500,'p'=>556,'q'=>556,'r'=>444,'s'=>389,'t'=>333,'u'=>556,'v'=>500,'w'=>722,'x'=>500,'y'=>500,'z'=>444,'{'=>394,'|'=>220,'}'=>394,'~'=>520,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
|
||||
chr(132)=>500,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>1000,chr(141)=>350,chr(142)=>667,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
|
||||
chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>444,chr(159)=>722,chr(160)=>250,chr(161)=>333,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>220,chr(167)=>500,chr(168)=>333,chr(169)=>747,chr(170)=>300,chr(171)=>500,chr(172)=>570,chr(173)=>333,chr(174)=>747,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>570,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>556,chr(182)=>540,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>330,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>722,chr(193)=>722,chr(194)=>722,chr(195)=>722,chr(196)=>722,chr(197)=>722,
|
||||
chr(198)=>1000,chr(199)=>722,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>389,chr(205)=>389,chr(206)=>389,chr(207)=>389,chr(208)=>722,chr(209)=>722,chr(210)=>778,chr(211)=>778,chr(212)=>778,chr(213)=>778,chr(214)=>778,chr(215)=>570,chr(216)=>778,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>722,chr(222)=>611,chr(223)=>556,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>722,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>556,
|
||||
chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>570,chr(248)=>500,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>500,chr(254)=>556,chr(255)=>500);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Times-BoldItalic';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
|
||||
chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>389,'"'=>555,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>278,'('=>333,')'=>333,'*'=>500,'+'=>570,
|
||||
','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>570,'='=>570,'>'=>570,'?'=>500,'@'=>832,'A'=>667,
|
||||
'B'=>667,'C'=>667,'D'=>722,'E'=>667,'F'=>667,'G'=>722,'H'=>778,'I'=>389,'J'=>500,'K'=>667,'L'=>611,'M'=>889,'N'=>722,'O'=>722,'P'=>611,'Q'=>722,'R'=>667,'S'=>556,'T'=>611,'U'=>722,'V'=>667,'W'=>889,
|
||||
'X'=>667,'Y'=>611,'Z'=>611,'['=>333,'\\'=>278,']'=>333,'^'=>570,'_'=>500,'`'=>333,'a'=>500,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>333,'g'=>500,'h'=>556,'i'=>278,'j'=>278,'k'=>500,'l'=>278,'m'=>778,
|
||||
'n'=>556,'o'=>500,'p'=>500,'q'=>500,'r'=>389,'s'=>389,'t'=>278,'u'=>556,'v'=>444,'w'=>667,'x'=>500,'y'=>444,'z'=>389,'{'=>348,'|'=>220,'}'=>348,'~'=>570,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
|
||||
chr(132)=>500,chr(133)=>1000,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>556,chr(139)=>333,chr(140)=>944,chr(141)=>350,chr(142)=>611,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>500,chr(148)=>500,chr(149)=>350,chr(150)=>500,chr(151)=>1000,chr(152)=>333,chr(153)=>1000,
|
||||
chr(154)=>389,chr(155)=>333,chr(156)=>722,chr(157)=>350,chr(158)=>389,chr(159)=>611,chr(160)=>250,chr(161)=>389,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>220,chr(167)=>500,chr(168)=>333,chr(169)=>747,chr(170)=>266,chr(171)=>500,chr(172)=>606,chr(173)=>333,chr(174)=>747,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>570,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>576,chr(182)=>500,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>300,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>667,chr(193)=>667,chr(194)=>667,chr(195)=>667,chr(196)=>667,chr(197)=>667,
|
||||
chr(198)=>944,chr(199)=>667,chr(200)=>667,chr(201)=>667,chr(202)=>667,chr(203)=>667,chr(204)=>389,chr(205)=>389,chr(206)=>389,chr(207)=>389,chr(208)=>722,chr(209)=>722,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>570,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>611,chr(222)=>611,chr(223)=>500,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>722,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>556,
|
||||
chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>570,chr(248)=>500,chr(249)=>556,chr(250)=>556,chr(251)=>556,chr(252)=>556,chr(253)=>444,chr(254)=>500,chr(255)=>444);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,21 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'Times-Italic';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>250,chr(1)=>250,chr(2)=>250,chr(3)=>250,chr(4)=>250,chr(5)=>250,chr(6)=>250,chr(7)=>250,chr(8)=>250,chr(9)=>250,chr(10)=>250,chr(11)=>250,chr(12)=>250,chr(13)=>250,chr(14)=>250,chr(15)=>250,chr(16)=>250,chr(17)=>250,chr(18)=>250,chr(19)=>250,chr(20)=>250,chr(21)=>250,
|
||||
chr(22)=>250,chr(23)=>250,chr(24)=>250,chr(25)=>250,chr(26)=>250,chr(27)=>250,chr(28)=>250,chr(29)=>250,chr(30)=>250,chr(31)=>250,' '=>250,'!'=>333,'"'=>420,'#'=>500,'$'=>500,'%'=>833,'&'=>778,'\''=>214,'('=>333,')'=>333,'*'=>500,'+'=>675,
|
||||
','=>250,'-'=>333,'.'=>250,'/'=>278,'0'=>500,'1'=>500,'2'=>500,'3'=>500,'4'=>500,'5'=>500,'6'=>500,'7'=>500,'8'=>500,'9'=>500,':'=>333,';'=>333,'<'=>675,'='=>675,'>'=>675,'?'=>500,'@'=>920,'A'=>611,
|
||||
'B'=>611,'C'=>667,'D'=>722,'E'=>611,'F'=>611,'G'=>722,'H'=>722,'I'=>333,'J'=>444,'K'=>667,'L'=>556,'M'=>833,'N'=>667,'O'=>722,'P'=>611,'Q'=>722,'R'=>611,'S'=>500,'T'=>556,'U'=>722,'V'=>611,'W'=>833,
|
||||
'X'=>611,'Y'=>556,'Z'=>556,'['=>389,'\\'=>278,']'=>389,'^'=>422,'_'=>500,'`'=>333,'a'=>500,'b'=>500,'c'=>444,'d'=>500,'e'=>444,'f'=>278,'g'=>500,'h'=>500,'i'=>278,'j'=>278,'k'=>444,'l'=>278,'m'=>722,
|
||||
'n'=>500,'o'=>500,'p'=>500,'q'=>500,'r'=>389,'s'=>389,'t'=>278,'u'=>500,'v'=>444,'w'=>667,'x'=>444,'y'=>444,'z'=>389,'{'=>400,'|'=>275,'}'=>400,'~'=>541,chr(127)=>350,chr(128)=>500,chr(129)=>350,chr(130)=>333,chr(131)=>500,
|
||||
chr(132)=>556,chr(133)=>889,chr(134)=>500,chr(135)=>500,chr(136)=>333,chr(137)=>1000,chr(138)=>500,chr(139)=>333,chr(140)=>944,chr(141)=>350,chr(142)=>556,chr(143)=>350,chr(144)=>350,chr(145)=>333,chr(146)=>333,chr(147)=>556,chr(148)=>556,chr(149)=>350,chr(150)=>500,chr(151)=>889,chr(152)=>333,chr(153)=>980,
|
||||
chr(154)=>389,chr(155)=>333,chr(156)=>667,chr(157)=>350,chr(158)=>389,chr(159)=>556,chr(160)=>250,chr(161)=>389,chr(162)=>500,chr(163)=>500,chr(164)=>500,chr(165)=>500,chr(166)=>275,chr(167)=>500,chr(168)=>333,chr(169)=>760,chr(170)=>276,chr(171)=>500,chr(172)=>675,chr(173)=>333,chr(174)=>760,chr(175)=>333,
|
||||
chr(176)=>400,chr(177)=>675,chr(178)=>300,chr(179)=>300,chr(180)=>333,chr(181)=>500,chr(182)=>523,chr(183)=>250,chr(184)=>333,chr(185)=>300,chr(186)=>310,chr(187)=>500,chr(188)=>750,chr(189)=>750,chr(190)=>750,chr(191)=>500,chr(192)=>611,chr(193)=>611,chr(194)=>611,chr(195)=>611,chr(196)=>611,chr(197)=>611,
|
||||
chr(198)=>889,chr(199)=>667,chr(200)=>611,chr(201)=>611,chr(202)=>611,chr(203)=>611,chr(204)=>333,chr(205)=>333,chr(206)=>333,chr(207)=>333,chr(208)=>722,chr(209)=>667,chr(210)=>722,chr(211)=>722,chr(212)=>722,chr(213)=>722,chr(214)=>722,chr(215)=>675,chr(216)=>722,chr(217)=>722,chr(218)=>722,chr(219)=>722,
|
||||
chr(220)=>722,chr(221)=>556,chr(222)=>611,chr(223)=>500,chr(224)=>500,chr(225)=>500,chr(226)=>500,chr(227)=>500,chr(228)=>500,chr(229)=>500,chr(230)=>667,chr(231)=>444,chr(232)=>444,chr(233)=>444,chr(234)=>444,chr(235)=>444,chr(236)=>278,chr(237)=>278,chr(238)=>278,chr(239)=>278,chr(240)=>500,chr(241)=>500,
|
||||
chr(242)=>500,chr(243)=>500,chr(244)=>500,chr(245)=>500,chr(246)=>500,chr(247)=>675,chr(248)=>500,chr(249)=>500,chr(250)=>500,chr(251)=>500,chr(252)=>500,chr(253)=>444,chr(254)=>500,chr(255)=>444);
|
||||
$enc = 'cp1252';
|
||||
$uv = array(0=>array(0,128),128=>8364,130=>8218,131=>402,132=>8222,133=>8230,134=>array(8224,2),136=>710,137=>8240,138=>352,139=>8249,140=>338,142=>381,145=>array(8216,2),147=>array(8220,2),149=>8226,150=>array(8211,2),152=>732,153=>8482,154=>353,155=>8250,156=>339,158=>382,159=>376,160=>array(160,96));
|
||||
?>
|
|
@ -1,20 +0,0 @@
|
|||
<?php
|
||||
$type = 'Core';
|
||||
$name = 'ZapfDingbats';
|
||||
$up = -100;
|
||||
$ut = 50;
|
||||
$cw = array(
|
||||
chr(0)=>0,chr(1)=>0,chr(2)=>0,chr(3)=>0,chr(4)=>0,chr(5)=>0,chr(6)=>0,chr(7)=>0,chr(8)=>0,chr(9)=>0,chr(10)=>0,chr(11)=>0,chr(12)=>0,chr(13)=>0,chr(14)=>0,chr(15)=>0,chr(16)=>0,chr(17)=>0,chr(18)=>0,chr(19)=>0,chr(20)=>0,chr(21)=>0,
|
||||
chr(22)=>0,chr(23)=>0,chr(24)=>0,chr(25)=>0,chr(26)=>0,chr(27)=>0,chr(28)=>0,chr(29)=>0,chr(30)=>0,chr(31)=>0,' '=>278,'!'=>974,'"'=>961,'#'=>974,'$'=>980,'%'=>719,'&'=>789,'\''=>790,'('=>791,')'=>690,'*'=>960,'+'=>939,
|
||||
','=>549,'-'=>855,'.'=>911,'/'=>933,'0'=>911,'1'=>945,'2'=>974,'3'=>755,'4'=>846,'5'=>762,'6'=>761,'7'=>571,'8'=>677,'9'=>763,':'=>760,';'=>759,'<'=>754,'='=>494,'>'=>552,'?'=>537,'@'=>577,'A'=>692,
|
||||
'B'=>786,'C'=>788,'D'=>788,'E'=>790,'F'=>793,'G'=>794,'H'=>816,'I'=>823,'J'=>789,'K'=>841,'L'=>823,'M'=>833,'N'=>816,'O'=>831,'P'=>923,'Q'=>744,'R'=>723,'S'=>749,'T'=>790,'U'=>792,'V'=>695,'W'=>776,
|
||||
'X'=>768,'Y'=>792,'Z'=>759,'['=>707,'\\'=>708,']'=>682,'^'=>701,'_'=>826,'`'=>815,'a'=>789,'b'=>789,'c'=>707,'d'=>687,'e'=>696,'f'=>689,'g'=>786,'h'=>787,'i'=>713,'j'=>791,'k'=>785,'l'=>791,'m'=>873,
|
||||
'n'=>761,'o'=>762,'p'=>762,'q'=>759,'r'=>759,'s'=>892,'t'=>892,'u'=>788,'v'=>784,'w'=>438,'x'=>138,'y'=>277,'z'=>415,'{'=>392,'|'=>392,'}'=>668,'~'=>668,chr(127)=>0,chr(128)=>390,chr(129)=>390,chr(130)=>317,chr(131)=>317,
|
||||
chr(132)=>276,chr(133)=>276,chr(134)=>509,chr(135)=>509,chr(136)=>410,chr(137)=>410,chr(138)=>234,chr(139)=>234,chr(140)=>334,chr(141)=>334,chr(142)=>0,chr(143)=>0,chr(144)=>0,chr(145)=>0,chr(146)=>0,chr(147)=>0,chr(148)=>0,chr(149)=>0,chr(150)=>0,chr(151)=>0,chr(152)=>0,chr(153)=>0,
|
||||
chr(154)=>0,chr(155)=>0,chr(156)=>0,chr(157)=>0,chr(158)=>0,chr(159)=>0,chr(160)=>0,chr(161)=>732,chr(162)=>544,chr(163)=>544,chr(164)=>910,chr(165)=>667,chr(166)=>760,chr(167)=>760,chr(168)=>776,chr(169)=>595,chr(170)=>694,chr(171)=>626,chr(172)=>788,chr(173)=>788,chr(174)=>788,chr(175)=>788,
|
||||
chr(176)=>788,chr(177)=>788,chr(178)=>788,chr(179)=>788,chr(180)=>788,chr(181)=>788,chr(182)=>788,chr(183)=>788,chr(184)=>788,chr(185)=>788,chr(186)=>788,chr(187)=>788,chr(188)=>788,chr(189)=>788,chr(190)=>788,chr(191)=>788,chr(192)=>788,chr(193)=>788,chr(194)=>788,chr(195)=>788,chr(196)=>788,chr(197)=>788,
|
||||
chr(198)=>788,chr(199)=>788,chr(200)=>788,chr(201)=>788,chr(202)=>788,chr(203)=>788,chr(204)=>788,chr(205)=>788,chr(206)=>788,chr(207)=>788,chr(208)=>788,chr(209)=>788,chr(210)=>788,chr(211)=>788,chr(212)=>894,chr(213)=>838,chr(214)=>1016,chr(215)=>458,chr(216)=>748,chr(217)=>924,chr(218)=>748,chr(219)=>918,
|
||||
chr(220)=>927,chr(221)=>928,chr(222)=>928,chr(223)=>834,chr(224)=>873,chr(225)=>828,chr(226)=>924,chr(227)=>924,chr(228)=>917,chr(229)=>930,chr(230)=>931,chr(231)=>463,chr(232)=>883,chr(233)=>836,chr(234)=>836,chr(235)=>867,chr(236)=>867,chr(237)=>696,chr(238)=>696,chr(239)=>874,chr(240)=>0,chr(241)=>874,
|
||||
chr(242)=>760,chr(243)=>946,chr(244)=>771,chr(245)=>865,chr(246)=>771,chr(247)=>888,chr(248)=>967,chr(249)=>888,chr(250)=>831,chr(251)=>873,chr(252)=>927,chr(253)=>970,chr(254)=>918,chr(255)=>0);
|
||||
$uv = array(32=>32,33=>array(9985,4),37=>9742,38=>array(9990,4),42=>9755,43=>9758,44=>array(9996,28),72=>9733,73=>array(10025,35),108=>9679,109=>10061,110=>9632,111=>array(10063,4),115=>9650,116=>9660,117=>9670,118=>10070,119=>9687,120=>array(10072,7),128=>array(10088,14),161=>array(10081,7),168=>9827,169=>9830,170=>9829,171=>9824,172=>array(9312,10),182=>array(10102,31),213=>8594,214=>array(8596,2),216=>array(10136,24),241=>array(10161,14));
|
||||
?>
|
|
@ -1,915 +0,0 @@
|
|||
<?php
|
||||
/*******************************************************************************
|
||||
* FPDF *
|
||||
* *
|
||||
* Version: 1.81 *
|
||||
* Date: 2015-12-20 *
|
||||
* Author: Olivier PLATHEY *
|
||||
*******************************************************************************/
|
||||
|
||||
define('FPDF_VERSION','1.81');
|
||||
|
||||
class FPDF
|
||||
{
|
||||
protected $page; // current page number
|
||||
protected $n; // current object number
|
||||
protected $offsets; // array of object offsets
|
||||
protected $buffer; // buffer holding in-memory PDF
|
||||
protected $pages; // array containing pages
|
||||
protected $state; // current document state
|
||||
protected $compress; // compression flag
|
||||
protected $k; // scale factor (number of points in user unit)
|
||||
protected $DefOrientation; // default orientation
|
||||
protected $CurOrientation; // current orientation
|
||||
protected $StdPageSizes; // standard page sizes
|
||||
protected $DefPageSize; // default page size
|
||||
protected $CurPageSize; // current page size
|
||||
protected $CurRotation; // current page rotation
|
||||
protected $PageInfo; // page-related data
|
||||
protected $wPt, $hPt; // dimensions of current page in points
|
||||
protected $w, $h; // dimensions of current page in user unit
|
||||
protected $lMargin; // left margin
|
||||
protected $tMargin; // top margin
|
||||
protected $rMargin; // right margin
|
||||
protected $bMargin; // page break margin
|
||||
protected $cMargin; // cell margin
|
||||
protected $x, $y; // current position in user unit
|
||||
protected $lasth; // height of last printed cell
|
||||
protected $LineWidth; // line width in user unit
|
||||
protected $fontpath; // path containing fonts
|
||||
protected $CoreFonts; // array of core font names
|
||||
protected $fonts; // array of used fonts
|
||||
protected $FontFiles; // array of font files
|
||||
protected $encodings; // array of encodings
|
||||
protected $cmaps; // array of ToUnicode CMaps
|
||||
protected $FontFamily; // current font family
|
||||
protected $FontStyle; // current font style
|
||||
protected $underline; // underlining flag
|
||||
protected $CurrentFont; // current font info
|
||||
protected $FontSizePt; // current font size in points
|
||||
protected $FontSize; // current font size in user unit
|
||||
protected $DrawColor; // commands for drawing color
|
||||
protected $FillColor; // commands for filling color
|
||||
protected $TextColor; // commands for text color
|
||||
protected $ColorFlag; // indicates whether fill and text colors are different
|
||||
protected $WithAlpha; // indicates whether alpha channel is used
|
||||
protected $ws; // word spacing
|
||||
protected $images; // array of used images
|
||||
protected $PageLinks; // array of links in pages
|
||||
protected $links; // array of internal links
|
||||
protected $AutoPageBreak; // automatic page breaking
|
||||
protected $PageBreakTrigger; // threshold used to trigger page breaks
|
||||
protected $InHeader; // flag set when processing header
|
||||
protected $InFooter; // flag set when processing footer
|
||||
protected $AliasNbPages; // alias for total number of pages
|
||||
protected $ZoomMode; // zoom display mode
|
||||
protected $LayoutMode; // layout display mode
|
||||
protected $metadata; // document properties
|
||||
protected $PDFVersion; // PDF version number
|
||||
|
||||
/*******************************************************************************
|
||||
* Public methods *
|
||||
*******************************************************************************/
|
||||
|
||||
function __construct($orientation='P', $unit='mm', $size='A4')
|
||||
{
|
||||
// Some checks
|
||||
$this->_dochecks();
|
||||
// Initialization of properties
|
||||
$this->state = 0;
|
||||
$this->page = 0;
|
||||
$this->n = 2;
|
||||
$this->buffer = '';
|
||||
$this->pages = array();
|
||||
$this->PageInfo = array();
|
||||
$this->fonts = array();
|
||||
$this->FontFiles = array();
|
||||
$this->encodings = array();
|
||||
$this->cmaps = array();
|
||||
$this->images = array();
|
||||
$this->links = array();
|
||||
$this->InHeader = false;
|
||||
$this->InFooter = false;
|
||||
$this->lasth = 0;
|
||||
$this->FontFamily = '';
|
||||
$this->FontStyle = '';
|
||||
$this->FontSizePt = 12;
|
||||
$this->underline = false;
|
||||
$this->DrawColor = '0 G';
|
||||
$this->FillColor = '0 g';
|
||||
$this->TextColor = '0 g';
|
||||
$this->ColorFlag = false;
|
||||
$this->WithAlpha = false;
|
||||
$this->ws = 0;
|
||||
// Font path
|
||||
if(defined('FPDF_FONTPATH'))
|
||||
{
|
||||
$this->fontpath = FPDF_FONTPATH;
|
||||
if(substr($this->fontpath,-1)!='/' && substr($this->fontpath,-1)!='\\')
|
||||
$this->fontpath .= '/';
|
||||
}
|
||||
elseif(is_dir(dirname(__FILE__).'/font'))
|
||||
$this->fontpath = dirname(__FILE__).'/font/';
|
||||
else
|
||||
$this->fontpath = '';
|
||||
// Core fonts
|
||||
$this->CoreFonts = array('courier', 'helvetica', 'times', 'symbol', 'zapfdingbats');
|
||||
// Scale factor
|
||||
if($unit=='pt')
|
||||
$this->k = 1;
|
||||
elseif($unit=='mm')
|
||||
$this->k = 72/25.4;
|
||||
elseif($unit=='cm')
|
||||
$this->k = 72/2.54;
|
||||
elseif($unit=='in')
|
||||
$this->k = 72;
|
||||
else
|
||||
$this->Error('Incorrect unit: '.$unit);
|
||||
// Page sizes
|
||||
$this->StdPageSizes = array('a3'=>array(841.89,1190.55), 'a4'=>array(595.28,841.89), 'a5'=>array(420.94,595.28),
|
||||
'letter'=>array(612,792), 'legal'=>array(612,1008));
|
||||
$size = $this->_getpagesize($size);
|
||||
$this->DefPageSize = $size;
|
||||
$this->CurPageSize = $size;
|
||||
// Page orientation
|
||||
$orientation = strtolower($orientation);
|
||||
if($orientation=='p' || $orientation=='portrait')
|
||||
{
|
||||
$this->DefOrientation = 'P';
|
||||
$this->w = $size[0];
|
||||
$this->h = $size[1];
|
||||
}
|
||||
elseif($orientation=='l' || $orientation=='landscape')
|
||||
{
|
||||
$this->DefOrientation = 'L';
|
||||
$this->w = $size[1];
|
||||
$this->h = $size[0];
|
||||
}
|
||||
else
|
||||
$this->Error('Incorrect orientation: '.$orientation);
|
||||
$this->CurOrientation = $this->DefOrientation;
|
||||
$this->wPt = $this->w*$this->k;
|
||||
$this->hPt = $this->h*$this->k;
|
||||
// Page rotation
|
||||
$this->CurRotation = 0;
|
||||
// Page margins (1 cm)
|
||||
$margin = 28.35/$this->k;
|
||||
$this->SetMargins($margin,$margin);
|
||||
// Interior cell margin (1 mm)
|
||||
$this->cMargin = $margin/10;
|
||||
// Line width (0.2 mm)
|
||||
$this->LineWidth = .567/$this->k;
|
||||
// Automatic page break
|
||||
$this->SetAutoPageBreak(true,2*$margin);
|
||||
// Default display mode
|
||||
$this->SetDisplayMode('default');
|
||||
// Enable compression
|
||||
$this->SetCompression(true);
|
||||
// Set default PDF version number
|
||||
$this->PDFVersion = '1.3';
|
||||
}
|
||||
|
||||
function SetMargins($left, $top, $right=null)
|
||||
{
|
||||
// Set left, top and right margins
|
||||
$this->lMargin = $left;
|
||||
$this->tMargin = $top;
|
||||
if($right===null)
|
||||
$right = $left;
|
||||
$this->rMargin = $right;
|
||||
}
|
||||
|
||||
function SetLeftMargin($margin)
|
||||
{
|
||||
// Set left margin
|
||||
$this->lMargin = $margin;
|
||||
if($this->page>0 && $this->x<$margin)
|
||||
$this->x = $margin;
|
||||
}
|
||||
|
||||
function SetTopMargin($margin)
|
||||
{
|
||||
// Set top margin
|
||||
$this->tMargin = $margin;
|
||||
}
|
||||
|
||||
function SetRightMargin($margin)
|
||||
{
|
||||
// Set right margin
|
||||
$this->rMargin = $margin;
|
||||
}
|
||||
|
||||
function SetAutoPageBreak($auto, $margin=0)
|
||||
{
|
||||
// Set auto page break mode and triggering margin
|
||||
$this->AutoPageBreak = $auto;
|
||||
$this->bMargin = $margin;
|
||||
$this->PageBreakTrigger = $this->h-$margin;
|
||||
}
|
||||
|
||||
function SetDisplayMode($zoom, $layout='default')
|
||||
{
|
||||
// Set display mode in viewer
|
||||
if($zoom=='fullpage' || $zoom=='fullwidth' || $zoom=='real' || $zoom=='default' || !is_string($zoom))
|
||||
$this->ZoomMode = $zoom;
|
||||
else
|
||||
$this->Error('Incorrect zoom display mode: '.$zoom);
|
||||
if($layout=='single' || $layout=='continuous' || $layout=='two' || $layout=='default')
|
||||
$this->LayoutMode = $layout;
|
||||
else
|
||||
$this->Error('Incorrect layout display mode: '.$layout);
|
||||
}
|
||||
|
||||
function SetCompression($compress)
|
||||
{
|
||||
// Set page compression
|
||||
if(function_exists('gzcompress'))
|
||||
$this->compress = $compress;
|
||||
else
|
||||
$this->compress = false;
|
||||
}
|
||||
|
||||
function SetTitle($title, $isUTF8=false)
|
||||
{
|
||||
// Title of document
|
||||
$this->metadata['Title'] = $isUTF8 ? $title : utf8_encode($title);
|
||||
}
|
||||
|
||||
function SetAuthor($author, $isUTF8=false)
|
||||
{
|
||||
// Author of document
|
||||
$this->metadata['Author'] = $isUTF8 ? $author : utf8_encode($author);
|
||||
}
|
||||
|
||||
function SetSubject($subject, $isUTF8=false)
|
||||
{
|
||||
// Subject of document
|
||||
$this->metadata['Subject'] = $isUTF8 ? $subject : utf8_encode($subject);
|
||||
}
|
||||
|
||||
function SetKeywords($keywords, $isUTF8=false)
|
||||
{
|
||||
// Keywords of document
|
||||
$this->metadata['Keywords'] = $isUTF8 ? $keywords : utf8_encode($keywords);
|
||||
}
|
||||
|
||||
function SetCreator($creator, $isUTF8=false)
|
||||
{
|
||||
// Creator of document
|
||||
$this->metadata['Creator'] = $isUTF8 ? $creator : utf8_encode($creator);
|
||||
}
|
||||
|
||||
function AliasNbPages($alias='{nb}')
|
||||
{
|
||||
// Define an alias for total number of pages
|
||||
$this->AliasNbPages = $alias;
|
||||
}
|
||||
|
||||
function Error($msg)
|
||||
{
|
||||
// Fatal error
|
||||
throw new Exception('FPDF error: '.$msg);
|
||||
}
|
||||
|
||||
function Close()
|
||||
{
|
||||
// Terminate document
|
||||
if($this->state==3)
|
||||
return;
|
||||
if($this->page==0)
|
||||
$this->AddPage();
|
||||
// Page footer
|
||||
$this->InFooter = true;
|
||||
$this->Footer();
|
||||
$this->InFooter = false;
|
||||
// Close page
|
||||
$this->_endpage();
|
||||
// Close document
|
||||
$this->_enddoc();
|
||||
}
|
||||
|
||||
function AddPage($orientation='', $size='', $rotation=0)
|
||||
{
|
||||
// Start a new page
|
||||
if($this->state==3)
|
||||
$this->Error('The document is closed');
|
||||
$family = $this->FontFamily;
|
||||
$style = $this->FontStyle.($this->underline ? 'U' : '');
|
||||
$fontsize = $this->FontSizePt;
|
||||
$lw = $this->LineWidth;
|
||||
$dc = $this->DrawColor;
|
||||
$fc = $this->FillColor;
|
||||
$tc = $this->TextColor;
|
||||
$cf = $this->ColorFlag;
|
||||
if($this->page>0)
|
||||
{
|
||||
// Page footer
|
||||
$this->InFooter = true;
|
||||
$this->Footer();
|
||||
$this->InFooter = false;
|
||||
// Close page
|
||||
$this->_endpage();
|
||||
}
|
||||
// Start new page
|
||||
$this->_beginpage($orientation,$size,$rotation);
|
||||
// Set line cap style to square
|
||||
$this->_out('2 J');
|
||||
// Set line width
|
||||
$this->LineWidth = $lw;
|
||||
$this->_out(sprintf('%.2F w',$lw*$this->k));
|
||||
// Set font
|
||||
if($family)
|
||||
$this->SetFont($family,$style,$fontsize);
|
||||
// Set colors
|
||||
$this->DrawColor = $dc;
|
||||
if($dc!='0 G')
|
||||
$this->_out($dc);
|
||||
$this->FillColor = $fc;
|
||||
if($fc!='0 g')
|
||||
$this->_out($fc);
|
||||
$this->TextColor = $tc;
|
||||
$this->ColorFlag = $cf;
|
||||
// Page header
|
||||
$this->InHeader = true;
|
||||
$this->Header();
|
||||
$this->InHeader = false;
|
||||
// Restore line width
|
||||
if($this->LineWidth!=$lw)
|
||||
{
|
||||
$this->LineWidth = $lw;
|
||||
$this->_out(sprintf('%.2F w',$lw*$this->k));
|
||||
}
|
||||
// Restore font
|
||||
if($family)
|
||||
$this->SetFont($family,$style,$fontsize);
|
||||
// Restore colors
|
||||
if($this->DrawColor!=$dc)
|
||||
{
|
||||
$this->DrawColor = $dc;
|
||||
$this->_out($dc);
|
||||
}
|
||||
if($this->FillColor!=$fc)
|
||||
{
|
||||
$this->FillColor = $fc;
|
||||
$this->_out($fc);
|
||||
}
|
||||
$this->TextColor = $tc;
|
||||
$this->ColorFlag = $cf;
|
||||
}
|
||||
|
||||
function Header()
|
||||
{
|
||||
// To be implemented in your own inherited class
|
||||
}
|
||||
|
||||
function Footer()
|
||||
{
|
||||
// To be implemented in your own inherited class
|
||||
}
|
||||
|
||||
function PageNo()
|
||||
{
|
||||
// Get current page number
|
||||
return $this->page;
|
||||
}
|
||||
|
||||
function SetDrawColor($r, $g=null, $b=null)
|
||||
{
|
||||
// Set color for all stroking operations
|
||||
if(($r==0 && $g==0 && $b==0) || $g===null)
|
||||
$this->DrawColor = sprintf('%.3F G',$r/255);
|
||||
else
|
||||
$this->DrawColor = sprintf('%.3F %.3F %.3F RG',$r/255,$g/255,$b/255);
|
||||
if($this->page>0)
|
||||
$this->_out($this->DrawColor);
|
||||
}
|
||||
|
||||
function SetFillColor($r, $g=null, $b=null)
|
||||
{
|
||||
// Set color for all filling operations
|
||||
if(($r==0 && $g==0 && $b==0) || $g===null)
|
||||
$this->FillColor = sprintf('%.3F g',$r/255);
|
||||
else
|
||||
$this->FillColor = sprintf('%.3F %.3F %.3F rg',$r/255,$g/255,$b/255);
|
||||
$this->ColorFlag = ($this->FillColor!=$this->TextColor);
|
||||
if($this->page>0)
|
||||
$this->_out($this->FillColor);
|
||||
}
|
||||
|
||||
function SetTextColor($r, $g=null, $b=null)
|
||||
{
|
||||
// Set color for text
|
||||
if(($r==0 && $g==0 && $b==0) || $g===null)
|
||||
$this->TextColor = sprintf('%.3F g',$r/255);
|
||||
else
|
||||
$this->TextColor = sprintf('%.3F %.3F %.3F rg',$r/255,$g/255,$b/255);
|
||||
$this->ColorFlag = ($this->FillColor!=$this->TextColor);
|
||||
}
|
||||
|
||||
function GetStringWidth($s)
|
||||
{
|
||||
// Get width of a string in the current font
|
||||
$s = (string)$s;
|
||||
$cw = &$this->CurrentFont['cw'];
|
||||
$w = 0;
|
||||
$l = strlen($s);
|
||||
for($i=0;$i<$l;$i++)
|
||||
$w += $cw[$s[$i]];
|
||||
return $w*$this->FontSize/1000;
|
||||
}
|
||||
|
||||
function SetLineWidth($width)
|
||||
{
|
||||
// Set line width
|
||||
$this->LineWidth = $width;
|
||||
if($this->page>0)
|
||||
$this->_out(sprintf('%.2F w',$width*$this->k));
|
||||
}
|
||||
|
||||
function Line($x1, $y1, $x2, $y2)
|
||||
{
|
||||
// Draw a line
|
||||
$this->_out(sprintf('%.2F %.2F m %.2F %.2F l S',$x1*$this->k,($this->h-$y1)*$this->k,$x2*$this->k,($this->h-$y2)*$this->k));
|
||||
}
|
||||
|
||||
function Rect($x, $y, $w, $h, $style='')
|
||||
{
|
||||
// Draw a rectangle
|
||||
if($style=='F')
|
||||
$op = 'f';
|
||||
elseif($style=='FD' || $style=='DF')
|
||||
$op = 'B';
|
||||
else
|
||||
$op = 'S';
|
||||
$this->_out(sprintf('%.2F %.2F %.2F %.2F re %s',$x*$this->k,($this->h-$y)*$this->k,$w*$this->k,-$h*$this->k,$op));
|
||||
}
|
||||
|
||||
function AddFont($family, $style='', $file='')
|
||||
{
|
||||
// Add a TrueType, OpenType or Type1 font
|
||||
$family = strtolower($family);
|
||||
if($file=='')
|
||||
$file = str_replace(' ','',$family).strtolower($style).'.php';
|
||||
$style = strtoupper($style);
|
||||
if($style=='IB')
|
||||
$style = 'BI';
|
||||
$fontkey = $family.$style;
|
||||
if(isset($this->fonts[$fontkey]))
|
||||
return;
|
||||
$info = $this->_loadfont($file);
|
||||
$info['i'] = count($this->fonts)+1;
|
||||
if(!empty($info['file']))
|
||||
{
|
||||
// Embedded font
|
||||
if($info['type']=='TrueType')
|
||||
$this->FontFiles[$info['file']] = array('length1'=>$info['originalsize']);
|
||||
else
|
||||
$this->FontFiles[$info['file']] = array('length1'=>$info['size1'], 'length2'=>$info['size2']);
|
||||
}
|
||||
$this->fonts[$fontkey] = $info;
|
||||
}
|
||||
|
||||
function SetFont($family, $style='', $size=0)
|
||||
{
|
||||
// Select a font; size given in points
|
||||
if($family=='')
|
||||
$family = $this->FontFamily;
|
||||
else
|
||||
$family = strtolower($family);
|
||||
$style = strtoupper($style);
|
||||
if(strpos($style,'U')!==false)
|
||||
{
|
||||
$this->underline = true;
|
||||
$style = str_replace('U','',$style);
|
||||
}
|
||||
else
|
||||
$this->underline = false;
|
||||
if($style=='IB')
|
||||
$style = 'BI';
|
||||
if($size==0)
|
||||
$size = $this->FontSizePt;
|
||||
// Test if font is already selected
|
||||
if($this->FontFamily==$family && $this->FontStyle==$style && $this->FontSizePt==$size)
|
||||
return;
|
||||
// Test if font is already loaded
|
||||
$fontkey = $family.$style;
|
||||
if(!isset($this->fonts[$fontkey]))
|
||||
{
|
||||
// Test if one of the core fonts
|
||||
if($family=='arial')
|
||||
$family = 'helvetica';
|
||||
if(in_array($family,$this->CoreFonts))
|
||||
{
|
||||
if($family=='symbol' || $family=='zapfdingbats')
|
||||
$style = '';
|
||||
$fontkey = $family.$style;
|
||||
if(!isset($this->fonts[$fontkey]))
|
||||
$this->AddFont($family,$style);
|
||||
}
|
||||
else
|
||||
$this->Error('Undefined font: '.$family.' '.$style);
|
||||
}
|
||||
// Select it
|
||||
$this->FontFamily = $family;
|
||||
$this->FontStyle = $style;
|
||||
$this->FontSizePt = $size;
|
||||
$this->FontSize = $size/$this->k;
|
||||
$this->CurrentFont = &$this->fonts[$fontkey];
|
||||
if($this->page>0)
|
||||
$this->_out(sprintf('BT /F%d %.2F Tf ET',$this->CurrentFont['i'],$this->FontSizePt));
|
||||
}
|
||||
|
||||
function SetFontSize($size)
|
||||
{
|
||||
// Set font size in points
|
||||
if($this->FontSizePt==$size)
|
||||
return;
|
||||
$this->FontSizePt = $size;
|
||||
$this->FontSize = $size/$this->k;
|
||||
if($this->page>0)
|
||||
$this->_out(sprintf('BT /F%d %.2F Tf ET',$this->CurrentFont['i'],$this->FontSizePt));
|
||||
}
|
||||
|
||||
function AddLink()
|
||||
{
|
||||
// Create a new internal link
|
||||
$n = count($this->links)+1;
|
||||
$this->links[$n] = array(0, 0);
|
||||
return $n;
|
||||
}
|
||||
|
||||
function SetLink($link, $y=0, $page=-1)
|
||||
{
|
||||
// Set destination of internal link
|
||||
if($y==-1)
|
||||
$y = $this->y;
|
||||
if($page==-1)
|
||||
$page = $this->page;
|
||||
$this->links[$link] = array($page, $y);
|
||||
}
|
||||
|
||||
function Link($x, $y, $w, $h, $link)
|
||||
{
|
||||
// Put a link on the page
|
||||
$this->PageLinks[$this->page][] = array($x*$this->k, $this->hPt-$y*$this->k, $w*$this->k, $h*$this->k, $link);
|
||||
}
|
||||
|
||||
function Text($x, $y, $txt)
|
||||
{
|
||||
// Output a string
|
||||
if(!isset($this->CurrentFont))
|
||||
$this->Error('No font has been set');
|
||||
$s = sprintf('BT %.2F %.2F Td (%s) Tj ET',$x*$this->k,($this->h-$y)*$this->k,$this->_escape($txt));
|
||||
if($this->underline && $txt!='')
|
||||
$s .= ' '.$this->_dounderline($x,$y,$txt);
|
||||
if($this->ColorFlag)
|
||||
$s = 'q '.$this->TextColor.' '.$s.' Q';
|
||||
$this->_out($s);
|
||||
}
|
||||
|
||||
function AcceptPageBreak()
|
||||
{
|
||||
// Accept automatic page break or not
|
||||
return $this->AutoPageBreak;
|
||||
}
|
||||
|
||||
function Cell($w, $h=0, $txt='', $border=0, $ln=0, $align='', $fill=false, $link='')
|
||||
{
|
||||
// Output a cell
|
||||
$k = $this->k;
|
||||
if($this->y+$h>$this->PageBreakTrigger && !$this->InHeader && !$this->InFooter && $this->AcceptPageBreak())
|
||||
{
|
||||
// Automatic page break
|
||||
$x = $this->x;
|
||||
$ws = $this->ws;
|
||||
if($ws>0)
|
||||
{
|
||||
$this->ws = 0;
|
||||
$this->_out('0 Tw');
|
||||
}
|
||||
$this->AddPage($this->CurOrientation,$this->CurPageSize,$this->CurRotation);
|
||||
$this->x = $x;
|
||||
if($ws>0)
|
||||
{
|
||||
$this->ws = $ws;
|
||||
$this->_out(sprintf('%.3F Tw',$ws*$k));
|
||||
}
|
||||
}
|
||||
if($w==0)
|
||||
$w = $this->w-$this->rMargin-$this->x;
|
||||
$s = '';
|
||||
if($fill || $border==1)
|
||||
{
|
||||
if($fill)
|
||||
$op = ($border==1) ? 'B' : 'f';
|
||||
else
|
||||
$op = 'S';
|
||||
$s = sprintf('%.2F %.2F %.2F %.2F re %s ',$this->x*$k,($this->h-$this->y)*$k,$w*$k,-$h*$k,$op);
|
||||
}
|
||||
if(is_string($border))
|
||||
{
|
||||
$x = $this->x;
|
||||
$y = $this->y;
|
||||
if(strpos($border,'L')!==false)
|
||||
$s .= sprintf('%.2F %.2F m %.2F %.2F l S ',$x*$k,($this->h-$y)*$k,$x*$k,($this->h-($y+$h))*$k);
|
||||
if(strpos($border,'T')!==false)
|
||||
$s .= sprintf('%.2F %.2F m %.2F %.2F l S ',$x*$k,($this->h-$y)*$k,($x+$w)*$k,($this->h-$y)*$k);
|
||||
if(strpos($border,'R')!==false)
|
||||
$s .= sprintf('%.2F %.2F m %.2F %.2F l S ',($x+$w)*$k,($this->h-$y)*$k,($x+$w)*$k,($this->h-($y+$h))*$k);
|
||||
if(strpos($border,'B')!==false)
|
||||
$s .= sprintf('%.2F %.2F m %.2F %.2F l S ',$x*$k,($this->h-($y+$h))*$k,($x+$w)*$k,($this->h-($y+$h))*$k);
|
||||
}
|
||||
if($txt!=='')
|
||||
{
|
||||
if(!isset($this->CurrentFont))
|
||||
$this->Error('No font has been set');
|
||||
if($align=='R')
|
||||
$dx = $w-$this->cMargin-$this->GetStringWidth($txt);
|
||||
elseif($align=='C')
|
||||
$dx = ($w-$this->GetStringWidth($txt))/2;
|
||||
else
|
||||
$dx = $this->cMargin;
|
||||
if($this->ColorFlag)
|
||||
$s .= 'q '.$this->TextColor.' ';
|
||||
$s .= sprintf('BT %.2F %.2F Td (%s) Tj ET',($this->x+$dx)*$k,($this->h-($this->y+.5*$h+.3*$this->FontSize))*$k,$this->_escape($txt));
|
||||
if($this->underline)
|
||||
$s .= ' '.$this->_dounderline($this->x+$dx,$this->y+.5*$h+.3*$this->FontSize,$txt);
|
||||
if($this->ColorFlag)
|
||||
$s .= ' Q';
|
||||
if($link)
|
||||
$this->Link($this->x+$dx,$this->y+.5*$h-.5*$this->FontSize,$this->GetStringWidth($txt),$this->FontSize,$link);
|
||||
}
|
||||
if($s)
|
||||
$this->_out($s);
|
||||
$this->lasth = $h;
|
||||
if($ln>0)
|
||||
{
|
||||
// Go to next line
|
||||
$this->y += $h;
|
||||
if($ln==1)
|
||||
$this->x = $this->lMargin;
|
||||
}
|
||||
else
|
||||
$this->x += $w;
|
||||
}
|
||||
|
||||
function MultiCell($w, $h, $txt, $border=0, $align='J', $fill=false)
|
||||
{
|
||||
// Output text with automatic or explicit line breaks
|
||||
if(!isset($this->CurrentFont))
|
||||
$this->Error('No font has been set');
|
||||
$cw = &$this->CurrentFont['cw'];
|
||||
if($w==0)
|
||||
$w = $this->w-$this->rMargin-$this->x;
|
||||
$wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
|
||||
$s = str_replace("\r",'',$txt);
|
||||
$nb = strlen($s);
|
||||
if($nb>0 && $s[$nb-1]=="\n")
|
||||
$nb--;
|
||||
$b = 0;
|
||||
if($border)
|
||||
{
|
||||
if($border==1)
|
||||
{
|
||||
$border = 'LTRB';
|
||||
$b = 'LRT';
|
||||
$b2 = 'LR';
|
||||
}
|
||||
else
|
||||
{
|
||||
$b2 = '';
|
||||
if(strpos($border,'L')!==false)
|
||||
$b2 .= 'L';
|
||||
if(strpos($border,'R')!==false)
|
||||
$b2 .= 'R';
|
||||
$b = (strpos($border,'T')!==false) ? $b2.'T' : $b2;
|
||||
}
|
||||
}
|
||||
$sep = -1;
|
||||
$i = 0;
|
||||
$j = 0;
|
||||
$l = 0;
|
||||
$ns = 0;
|
||||
$nl = 1;
|
||||
while($i<$nb)
|
||||
{
|
||||
// Get next character
|
||||
$c = $s[$i];
|
||||
if($c=="\n")
|
||||
{
|
||||
// Explicit line break
|
||||
if($this->ws>0)
|
||||
{
|
||||
$this->ws = 0;
|
||||
$this->_out('0 Tw');
|
||||
}
|
||||
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
|
||||
$i++;
|
||||
$sep = -1;
|
||||
$j = $i;
|
||||
$l = 0;
|
||||
$ns = 0;
|
||||
$nl++;
|
||||
if($border && $nl==2)
|
||||
$b = $b2;
|
||||
continue;
|
||||
}
|
||||
if($c==' ')
|
||||
{
|
||||
$sep = $i;
|
||||
$ls = $l;
|
||||
$ns++;
|
||||
}
|
||||
$l += $cw[$c];
|
||||
if($l>$wmax)
|
||||
{
|
||||
// Automatic line break
|
||||
if($sep==-1)
|
||||
{
|
||||
if($i==$j)
|
||||
$i++;
|
||||
if($this->ws>0)
|
||||
{
|
||||
$this->ws = 0;
|
||||
$this->_out('0 Tw');
|
||||
}
|
||||
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
|
||||
}
|
||||
else
|
||||
{
|
||||
if($align=='J')
|
||||
{
|
||||
$this->ws = ($ns>1) ? ($wmax-$ls)/1000*$this->FontSize/($ns-1) : 0;
|
||||
$this->_out(sprintf('%.3F Tw',$this->ws*$this->k));
|
||||
}
|
||||
$this->Cell($w,$h,substr($s,$j,$sep-$j),$b,2,$align,$fill);
|
||||
$i = $sep+1;
|
||||
}
|
||||
$sep = -1;
|
||||
$j = $i;
|
||||
$l = 0;
|
||||
$ns = 0;
|
||||
$nl++;
|
||||
if($border && $nl==2)
|
||||
$b = $b2;
|
||||
}
|
||||
else
|
||||
$i++;
|
||||
}
|
||||
// Last chunk
|
||||
if($this->ws>0)
|
||||
{
|
||||
$this->ws = 0;
|
||||
$this->_out('0 Tw');
|
||||
}
|
||||
if($border && strpos($border,'B')!==false)
|
||||
$b .= 'B';
|
||||
$this->Cell($w,$h,substr($s,$j,$i-$j),$b,2,$align,$fill);
|
||||
$this->x = $this->lMargin;
|
||||
}
|
||||
|
||||
function Write($h, $txt, $link='')
|
||||
{
|
||||
// Output text in flowing mode
|
||||
if(!isset($this->CurrentFont))
|
||||
$this->Error('No font has been set');
|
||||
$cw = &$this->CurrentFont['cw'];
|
||||
$w = $this->w-$this->rMargin-$this->x;
|
||||
$wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
|
||||
$s = str_replace("\r",'',$txt);
|
||||
$nb = strlen($s);
|
||||
$sep = -1;
|
||||
$i = 0;
|
||||
$j = 0;
|
||||
$l = 0;
|
||||
$nl = 1;
|
||||
while($i<$nb)
|
||||
{
|
||||
// Get next character
|
||||
$c = $s[$i];
|
||||
if($c=="\n")
|
||||
{
|
||||
// Explicit line break
|
||||
$this->Cell($w,$h,substr($s,$j,$i-$j),0,2,'',false,$link);
|
||||
$i++;
|
||||
$sep = -1;
|
||||
$j = $i;
|
||||
$l = 0;
|
||||
if($nl==1)
|
||||
{
|
||||
$this->x = $this->lMargin;
|
||||
$w = $this->w-$this->rMargin-$this->x;
|
||||
$wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
|
||||
}
|
||||
$nl++;
|
||||
continue;
|
||||
}
|
||||
if($c==' ')
|
||||
$sep = $i;
|
||||
$l += $cw[$c];
|
||||
if($l>$wmax)
|
||||
{
|
||||
// Automatic line break
|
||||
if($sep==-1)
|
||||
{
|
||||
if($this->x>$this->lMargin)
|
||||
{
|
||||
// Move to next line
|
||||
$this->x = $this->lMargin;
|
||||
$this->y += $h;
|
||||
$w = $this->w-$this->rMargin-$this->x;
|
||||
$wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
|
||||
$i++;
|
||||
$nl++;
|
||||
continue;
|
||||
}
|
||||
if($i==$j)
|
||||
$i++;
|
||||
$this->Cell($w,$h,substr($s,$j,$i-$j),0,2,'',false,$link);
|
||||
}
|
||||
else
|
||||
{
|
||||
$this->Cell($w,$h,substr($s,$j,$sep-$j),0,2,'',false,$link);
|
||||
$i = $sep+1;
|
||||
}
|
||||
$sep = -1;
|
||||
$j = $i;
|
||||
$l = 0;
|
||||
if($nl==1)
|
||||
{
|
||||
$this->x = $this->lMargin;
|
||||
$w = $this->w-$this->rMargin-$this->x;
|
||||
$wmax = ($w-2*$this->cMargin)*1000/$this->FontSize;
|
||||
}
|
||||
$nl++;
|
||||
}
|
||||
else
|
||||
$i++;
|
||||
}
|
||||
// Last chunk
|
||||
if($i!=$j)
|
||||
$this->Cell($l/1000*$this->FontSize,$h,substr($s,$j),0,0,'',false,$link);
|
||||
}
|
||||
|
||||
function Ln($h=null)
|
||||
{
|
||||
// Line feed; default value is the last cell height
|
||||
$this->x = $this->lMargin;
|
||||
if($h===null)
|
||||
$this->y += $this->lasth;
|
||||
else
|
||||
$this->y += $h;
|
||||
}
|
||||
|
||||
function Image($file, $x=null, $y=null, $w=0, $h=0, $type='', $link='')
|
||||
{
|
||||
// Put an image on the page
|
||||
if($file=='')
|
||||
$this->Error('Image file name is empty');
|
||||
if(!isset($this->images[$file]))
|
||||
{
|
||||
// First use of this image, get info
|
||||
if($type=='')
|
||||
{
|
||||
$pos = strrpos($file,'.');
|
||||
if(!$pos)
|
||||
$this->Error('Image file has no extension and no type was specified: '.$file);
|
||||
$type = substr($file,$pos+1);
|
||||
}
|
||||
$type = strtolower($type);
|
||||
if($type=='jpeg')
|
||||
$type = 'jpg';
|
||||
$mtd = '_parse'.$type;
|
||||
if(!method_exists($this,$mtd))
|
||||
$this->Error('Unsupported image type: '.$type);
|
||||
$info = $this->$mtd($file);
|
||||
$info['i'] = count($this->images)+1;
|
||||
$this->images[$file] = $info;
|
||||
}
|
||||
else
|
||||
$info = $this->images[$file];
|
||||
|
||||
// Automatic width and height calculation if needed
|
||||
if($w==0 && $h==0)
|
||||
{
|
||||
// Put image at 96 dpi
|
||||
$w = -96;
|
||||
$h = -96;
|
||||
}
|
||||
if($w<0)
|
||||
$w = -$info['w']*72/$w/$this->k;
|
||||
if($h<0)
|
||||
$h = -$info['h']*72/$h/$this->k;
|
||||
if($w==0)
|
||||
$w = $h*$info['w']/$info['h'];
|
||||
if($h==0)
|
||||
$h = $w*$info['h']/$info['w'];
|
||||
|
||||
// Flowing mode
|
||||
if($y===null)
|
||||
{
|
||||
if($this->y+$h>$this->PageBreakTrigger && !$this->InHeader && !$this->InFooter && $this->AcceptPageBreak())
|
||||
{
|
||||
// Automatic page break
|
||||
$x2 = $this->x;
|
||||
$this->AddPage($this->CurOrientation,$this->CurPageSize,$this->CurRotation)
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,7 +0,0 @@
|
|||
<?php
|
||||
// fichier de configuration en production
|
||||
define("DB_HOST", "localhost");
|
||||
define("DB_USER", "root");
|
||||
define("DB_PASSWORD", "vps@2017GA");
|
||||
define("DB_DATABASE", "iLink_cannary");
|
||||
?>
|
|
@ -313,7 +313,8 @@ na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.et
|
|||
* @param $phoneTransaction
|
||||
* @return array|bool|null
|
||||
*/
|
||||
public function storeUser($fname, $lname, $email, $phone, $password, $network, $member, $latitude, $longitude, $town, $phoneTransaction)
|
||||
public function storeUser($fname, $lname, $email, $phone, $password, $network, $member, $latitude, $longitude, $town, $phoneTransaction
|
||||
,$providerClassId = null)
|
||||
{
|
||||
//on verifie si y a un agent qui utilise ce code
|
||||
if(isset($town->id)){
|
||||
|
@ -328,7 +329,7 @@ na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.et
|
|||
$codeGenerer = $this->generateValideCode($membre['code_membre'], 'geolocated');
|
||||
if ($codeGenerer != null)
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $codeGenerer, $latitude,
|
||||
$longitude, $town,$phoneTransaction);
|
||||
$longitude, $town,$phoneTransaction ,$providerClassId);
|
||||
} else {
|
||||
//on verifie s'il existe des codes superviseur disponible pour cette hyperviseur
|
||||
$listIdmemberParrain = mysqli_query($this->con, "SELECT na.codeGenerer_id as id,cg.code_membre as code_membre from networks_agents na RIGHT JOIN codeGenerer cg ON cg.id=na.codeGenerer_id WHERE cg.code_parrain='$member' AND na.id is null");
|
||||
|
@ -339,7 +340,7 @@ na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.et
|
|||
else{
|
||||
$me=$this->generateValideCode($membre['code_membre'],'super');
|
||||
}
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $me, $latitude, $longitude, $town,$phoneTransaction);
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $me, $latitude, $longitude, $town,$phoneTransaction,$providerClassId);
|
||||
} else {
|
||||
return ["error" => -5, 'error_msg' => 'le code parrain que vous avez entrée n\'a pas de membre disponible','sql'=>mysqli_error($this->con)];
|
||||
}
|
||||
|
@ -351,7 +352,7 @@ na.validation_code as validation_code,ag.id as agentId,na.solde AS balance,na.et
|
|||
//si aucun membre n'a ce code on verifie s'il sagit d'un hyperviseur
|
||||
if ($membre['category'] == 'hyper') {
|
||||
return $this->createAgent($fname, $lname, $email, $phone, $password, $network, $membre['code_membre'], $latitude,
|
||||
$longitude, $town,$phoneTransaction);
|
||||
$longitude, $town,$phoneTransaction,$providerClassId);
|
||||
} else {
|
||||
return ["error" => -1, "error_msg" => "impossible de verifier le membre"];
|
||||
}
|
||||
|
@ -797,7 +798,7 @@ na.id as networkAgentId,
|
|||
* @param $phoneTransaction
|
||||
* @return array|bool|null
|
||||
*/
|
||||
private function createAgent($fname, $lname, $email, $phone, $password, $network, $member, $latitude, $longitude, $town, $phoneTransaction)
|
||||
private function createAgent($fname, $lname, $email, $phone, $password, $network, $member, $latitude, $longitude, $town, $phoneTransaction,$providerClassId = null)
|
||||
{
|
||||
|
||||
$resultFreeCode = mysqli_query($this->con, "SELECT id,code_membre,category,code_parrain from codeGenerer cg WHERE code_membre='$member' ");
|
||||
|
@ -824,9 +825,8 @@ na.id as networkAgentId,
|
|||
$townid = $town->id;
|
||||
$datetime = $this->getCurrentTimeByNetworkID($network->id);
|
||||
$agentCreateResult = mysqli_prepare($this->con, "INSERT INTO agents(uid,adresse,
|
||||
lastname,email,longitude,latitude
|
||||
,balance,encrypted_password,salt,active,date_created,town_id) VALUES (?,?,?,?,?,?,?,?,?,?,'$datetime',?)");
|
||||
mysqli_stmt_bind_param($agentCreateResult,'ssssddissii' ,$uuid , $fname,$lname,$email,$longitude,$latitude,$balance,$encrypted_password,$salt,$etat, $townid);
|
||||
lastname,email,longitude,latitude,balance,encrypted_password,salt,active,date_created,town_id,nh_provider_class_id) VALUES (?,?,?,?,?,?,?,?,?,?,'$datetime',?,?)");
|
||||
mysqli_stmt_bind_param($agentCreateResult,'ssssddissiii' ,$uuid , $fname,$lname,$email,$longitude,$latitude,$balance,$encrypted_password,$salt,$etat, $townid ,$providerClassId);
|
||||
$agentCreateResult = mysqli_stmt_execute($agentCreateResult);
|
||||
// mysqli_stmt_get_result($agentCreateResult);
|
||||
|
||||
|
@ -1323,4 +1323,18 @@ ag.adresse,
|
|||
|
||||
}
|
||||
}
|
||||
|
||||
// Nano Santé
|
||||
public function getProviderClasses($networkId){
|
||||
$result = mysqli_query($this->con,"SELECT pc.id , pc.name FROM nh_provider_classes pc INNER JOIN nh_networks_configs nc ON nc.id = pc.nh_network_config_id
|
||||
WHERE nc.network_id = $networkId ");
|
||||
|
||||
if(isset($result)){
|
||||
while ($row=mysqli_fetch_array($result,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
return $rows;
|
||||
}
|
||||
return [];
|
||||
}
|
||||
}
|
|
@ -143,7 +143,10 @@ class Requester
|
|||
public function getAgentInfoByCode($code){
|
||||
$codes=$this->getChildCode($code);
|
||||
if(isset($codes["child"])){
|
||||
$codes['network']=$this->db->getAgentNetworkByCode($code);
|
||||
$codes['network']= $this->db->getAgentNetworkByCode($code);
|
||||
if($codes['child'] == 'geolocated'){
|
||||
$codes['provider_classes'] = $this->db->getProviderClasses($codes['network']['id']);
|
||||
}
|
||||
}
|
||||
return json_encode($codes);
|
||||
}
|
||||
|
@ -419,8 +422,8 @@ class Requester
|
|||
|
||||
$membercodetest = $this->db->isMemberCodeExisted($request->member);
|
||||
if ($membercodetest) {
|
||||
$user = $this->db->storeUser($request->address, $request->lastname, $request->email, $request->phone,
|
||||
$request->password, $request->network, $request->member, $request->latitude, $request->longitude, $request->town,$request->phone_transaction);
|
||||
$user = $this->db->storeUser($request->address, $request->lastname, $request->email, $request->phone,$request->password, $request->network,
|
||||
$request->member, $request->latitude, $request->longitude, $request->town,$request->phone_transaction,$request->provider_class_id ?? null);
|
||||
if ($user != null && !isset($user['error'])) {
|
||||
//if ($user) {
|
||||
// user stored successfully
|
||||
|
|
|
@ -1,69 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 08/10/18
|
||||
* Time: 11:56
|
||||
*/
|
||||
|
||||
require_once ('../database/Requester.php');
|
||||
|
||||
$tag="";
|
||||
|
||||
$postdata = file_get_contents("php://input");
|
||||
$request=null;
|
||||
|
||||
if(isset($postdata)) {
|
||||
$request = json_decode($postdata);
|
||||
}
|
||||
|
||||
if(isset($request)){
|
||||
|
||||
}
|
||||
public function askCredit($request){
|
||||
$requester=new Requester(null);
|
||||
$demand = $requester->storeCreditAsk($codeMembre, $codeParrain,$montant);
|
||||
$usr= $requester->getUser($phone)[0];
|
||||
|
||||
if ($demand) {
|
||||
|
||||
|
||||
$subject = "Nouvelle demande de crédit";
|
||||
|
||||
$email = $usr['email'];
|
||||
$message = "Bonjour,\n\nVotre demande de crédit a été envoyée.\nNumero de telephone :
|
||||
$phone \n\n\nCordialement,\nL'équipe Ilink.";
|
||||
$from = "noreply@ilink.com";
|
||||
$headers = "From:" . $from;
|
||||
$name = "ilink";
|
||||
mail($email, $subject, $message, $headers);
|
||||
// Start Sending SMS
|
||||
$sms = $client->account->messages->create(
|
||||
|
||||
// the number we are sending to - Any phone number
|
||||
$phone,
|
||||
|
||||
array(
|
||||
// Step 6: Change the 'From' number below to be a valid Twilio number
|
||||
// that you've purchased
|
||||
'from' => $sender_number,
|
||||
|
||||
|
||||
// the sms body
|
||||
'body' => $message
|
||||
)
|
||||
);
|
||||
// Stop Sending SMS
|
||||
|
||||
|
||||
//smtpmailer($email,$from,$name,$subject,$message);
|
||||
$response["success"] = 1;
|
||||
echo json_encode($response);
|
||||
} else {
|
||||
// user failed to store
|
||||
$response["error"] = 1;
|
||||
$response["error_msg"] = "La demande n'a pas pu être envoyée!";
|
||||
echo json_encode($response);
|
||||
|
||||
}
|
||||
}
|
|
@ -1,79 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 16/10/18
|
||||
* Time: 18:34
|
||||
*/
|
||||
|
||||
require_once ('../database/Requester.php');
|
||||
|
||||
$tag="";
|
||||
|
||||
$postdata = file_get_contents("php://input");
|
||||
$request=null;
|
||||
if(isset($postdata)) {
|
||||
$request = json_decode($postdata);
|
||||
|
||||
}
|
||||
|
||||
if($postdata!=null && isset($request->tag)) {
|
||||
|
||||
switch ($request->tag){
|
||||
case "credit_demands":
|
||||
getCreditDemand($request);
|
||||
break;
|
||||
case "ask_credit":
|
||||
askCreditToParrain($request);
|
||||
break;
|
||||
case 'credit_demands_of_agent':
|
||||
getCreditDemandeAgent($request);
|
||||
break;
|
||||
case 'update_ask_credit':
|
||||
treatDemand($request);
|
||||
break;
|
||||
default:
|
||||
echo json_encode($request);
|
||||
}
|
||||
}
|
||||
function treatDemand($request)
|
||||
{
|
||||
if(isset($request->phone)){
|
||||
if (isset($request->id)) {
|
||||
$q = new Requester($request->id,$request->lang);
|
||||
echo $q->treatDemand($request->phone);
|
||||
} else {
|
||||
echo json_encode(['error' => 'id missing']);
|
||||
}
|
||||
}else{
|
||||
echo json_encode(['error' => 'phone missing']);
|
||||
}
|
||||
}
|
||||
function getCreditDemandeAgent($request){
|
||||
if(isset($request->id)){
|
||||
$q=new Requester($request->id,$request->lang);
|
||||
echo $q->getAgentSendDemande();
|
||||
}else{
|
||||
echo json_encode(['error'=>'id missing']);
|
||||
}
|
||||
}
|
||||
|
||||
function saveCreditDemande($request){
|
||||
|
||||
}
|
||||
function askCreditToParrain($request){
|
||||
$montant = $request->montant;
|
||||
$phone=$request->phone;
|
||||
$code=$request->code;
|
||||
$requester=new Requester($phone,$request->lang);
|
||||
echo $requester->storeCreditAsk($phone,$montant,$code);
|
||||
}
|
||||
function getCreditDemand($request){
|
||||
if(isset($request->id)){
|
||||
$q=new Requester($request->id);
|
||||
echo $q->getAgentReceiveDemande();
|
||||
}else{
|
||||
echo json_encode(['error'=>'id missing']);
|
||||
}
|
||||
|
||||
}
|
|
@ -1,124 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 05/08/18
|
||||
* Time: 06:28
|
||||
*/
|
||||
require_once ('../database/Requester.php');
|
||||
|
||||
$tag="";
|
||||
|
||||
$postdata = file_get_contents("php://input");
|
||||
$request=null;
|
||||
if(isset($postdata)) {
|
||||
$request = json_decode($postdata);
|
||||
}
|
||||
|
||||
if($postdata!=null && isset($request->tag)){
|
||||
$tag=$request->tag;
|
||||
switch ($tag){
|
||||
case 'location':
|
||||
$type=$request->type;
|
||||
switch ($type){
|
||||
case 'all':
|
||||
getAllpoint($request);
|
||||
break;
|
||||
case 'all_network':
|
||||
getSuperviseurNetwork($request);
|
||||
break;
|
||||
case 'around':
|
||||
getPointAround($request);
|
||||
break;
|
||||
case 'all_network_point':
|
||||
getPointNetwork($request);
|
||||
break;
|
||||
default:
|
||||
echo json_encode(['error'=>3,'error_msg'=>'type manquant']);
|
||||
break;
|
||||
}
|
||||
case 'all_towns_by_indicatif':
|
||||
getListTownsCountry($request);
|
||||
break;
|
||||
case 'town_information_name':
|
||||
getTownInfoByName($request);
|
||||
break;
|
||||
default:
|
||||
echo json_encode(['error'=>4,'error_msg'=>'tag manquant']);
|
||||
|
||||
}
|
||||
}else{
|
||||
$res=[];
|
||||
$res['error']=-4;
|
||||
$res['msg']='aucun tag n a ete defini';
|
||||
$res['data']=$request;
|
||||
echo json_encode($res);
|
||||
|
||||
}
|
||||
function getTownInfoByName($request){
|
||||
if(isset($request->name)){
|
||||
$req=new Requester(null);
|
||||
echo json_encode($req->getTownInfoByName($request->name));
|
||||
}
|
||||
}
|
||||
function getListTownsCountry($request){
|
||||
if(isset($request->indicatif)){
|
||||
$req=new Requester(null);
|
||||
echo json_encode($req->getListTownsCountry($request->indicatif));
|
||||
}
|
||||
}
|
||||
|
||||
function getAllPoint($request){
|
||||
$result=[];
|
||||
$requester=new Requester(null);
|
||||
if(isset($request->country)) {
|
||||
$country = $request->country;
|
||||
echo json_encode($requester->getAllCountryPoint($country));
|
||||
}else{
|
||||
echo json_encode(['error'=>2,'error_msg'=>' code pays manquant']);
|
||||
}
|
||||
}
|
||||
function getSuperviseurNetwork($request)
|
||||
{
|
||||
$result = [];
|
||||
$requester = new Requester(null);
|
||||
if (isset($request->codeparrain)) {
|
||||
$codeparrain = $request->codeparrain;
|
||||
echo json_encode($requester->getSuperviseurNetwork($codeparrain));
|
||||
} else {
|
||||
echo json_encode(['error' => 2, 'error_msg' => ' code parrain manquant']);
|
||||
}
|
||||
}
|
||||
function getPointAround($request){
|
||||
if(isset($request->id)){
|
||||
$requester=new Requester($request->id);
|
||||
if(isset($request->distance)) {
|
||||
$distance =$request->distance;
|
||||
if(isset($request->network)) {
|
||||
$reseau=$request->network;
|
||||
if (isset($request->position)) {
|
||||
$position = $request->position;
|
||||
$page=isset($request->page)?$request->page:0;
|
||||
echo $requester->getPointAroundKm($reseau,$position, $distance,$page);
|
||||
} else
|
||||
echo json_encode(['error' => -3, 'error_msg' => 'position user missing',
|
||||
"position" => isset($request->position)]);
|
||||
}else echo json_encode(['error' => -7, 'error_msg' => 'reseau user missing',
|
||||
"position" => isset($request->reseau)]);
|
||||
}else echo json_encode(['error'=>-2,'error_msg'=>'distance manquante']);
|
||||
}else echo json_encode(['error'=>-1,'error_msg'=>'user id manquant']);
|
||||
|
||||
}
|
||||
|
||||
|
||||
function getPointNetwork($request)
|
||||
{
|
||||
if (isset($request->id)) {
|
||||
$requester = new Requester($request->id);
|
||||
$network=$request->network;
|
||||
if(isset($network)){
|
||||
echo $requester->getNetworkPoint($network);
|
||||
}else echo json_encode(['error'=>-1,'error_msg'=>'missing network']);
|
||||
} else echo json_encode(['error' => -1, 'error_msg' => 'user id manquant']);
|
||||
}
|
||||
|
|
@ -1,111 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 04/08/18
|
||||
* Time: 22:51
|
||||
*/
|
||||
require_once ('../database/Requester.php');
|
||||
|
||||
$tag="";
|
||||
|
||||
$postdata = file_get_contents("php://input");
|
||||
$request=null;
|
||||
if(isset($postdata)) {
|
||||
$request = json_decode($postdata);
|
||||
}else{
|
||||
$request=$_POST;
|
||||
}
|
||||
|
||||
if($postdata!=null && isset($request->tag)){
|
||||
$tag=$request->tag;
|
||||
switch ($tag){
|
||||
case 'login_user':
|
||||
tryToLogin($request,0);
|
||||
break;
|
||||
case 'login_agent':
|
||||
tryToLogin($request,1);
|
||||
break;
|
||||
case 'login':
|
||||
tryToLogin($request);
|
||||
break;
|
||||
case "agent_by_id":
|
||||
tryGetAgentById($request);
|
||||
break;
|
||||
case 'forgot_pass':
|
||||
recoverPassword($request);
|
||||
break;
|
||||
|
||||
}
|
||||
}else{
|
||||
$res=[];
|
||||
$res['error']=-4;
|
||||
$res['msg']='aucun tag n a ete defini';
|
||||
$res['data']=$request;
|
||||
$res['resty']=$postdata;
|
||||
echo json_encode($res);
|
||||
|
||||
}
|
||||
function tryGetAgentById($request){
|
||||
if(isset($request->user_id)) {
|
||||
$req = new Requester($request->user_id, $request->lang);
|
||||
echo json_encode($req->getAgentById());
|
||||
}else
|
||||
echo json_encode(['error'=>"no_user_id"]);
|
||||
}
|
||||
|
||||
function recoverPassword($request){
|
||||
|
||||
$res=[];
|
||||
$res['request']=$request;
|
||||
if(isset($request->number)){
|
||||
$number=$request->number;
|
||||
|
||||
if(isset($request->typeaccount)){
|
||||
$type=$request->typeaccount;
|
||||
$request=new Requester(null,$request->lang);
|
||||
$res=$type==='agent'?$request->recoverPasswordAgent($number):$request->recoverUserPassword($number);
|
||||
}else{
|
||||
$res['error']=-3;
|
||||
$res['msg']='aucun type de compte n a été defini';
|
||||
$res['data']=$request;
|
||||
}
|
||||
}else{
|
||||
$res['error']=-2;
|
||||
$res['msg']='aucun numero n a été defini';
|
||||
$res['data']=$request;
|
||||
}
|
||||
echo json_encode($res);
|
||||
|
||||
}
|
||||
|
||||
function tryToLogin($request,$type=-1){
|
||||
$result=[];
|
||||
$requester=new Requester(null,$request->lang);
|
||||
|
||||
if(isset($request->phone)){
|
||||
$phone=$request->phone;
|
||||
if(isset($request->password)){
|
||||
|
||||
$password=$request->password;
|
||||
|
||||
switch ($type){
|
||||
case 0:$user=$requester->loginUser($phone,$password);
|
||||
break;
|
||||
case 1:$user=$requester->loginAgent($phone,$password);
|
||||
break;
|
||||
default: $user=$requester->loginPhonePassword($phone,$password);
|
||||
|
||||
}
|
||||
$result=$user;
|
||||
}else{
|
||||
$result['error']=-2;
|
||||
$result['error_msg']='le mot de passe defini';
|
||||
}
|
||||
}else {
|
||||
$result['error']=-1;
|
||||
$result['error_msg']='le numero n est pas defini';
|
||||
}
|
||||
echo json_encode($result);
|
||||
}
|
||||
?>
|
|
@ -1,304 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 08/08/18
|
||||
* Time: 16:40
|
||||
*/
|
||||
include '../database/Requester.php';
|
||||
|
||||
$tag="";
|
||||
|
||||
$postdata = file_get_contents("php://input");
|
||||
$request=null;
|
||||
if(isset($postdata)) {
|
||||
$request = json_decode($postdata);
|
||||
}
|
||||
|
||||
if($postdata!=null && isset($request->tag)){
|
||||
$tag=$request->tag;
|
||||
switch ($tag){
|
||||
case 'member':
|
||||
$type=$request->type;
|
||||
switch ($type){
|
||||
case 'all_geolocated':
|
||||
getAllMembersGeolocated($request);
|
||||
break;
|
||||
case 'all_supervisor':
|
||||
getSuperviseurNetwork($request);
|
||||
break;
|
||||
case 'create_user':
|
||||
createSimpleUser($request);
|
||||
break;
|
||||
case 'get_category_child':
|
||||
getCagetoryChild($request);
|
||||
break;
|
||||
case 'credit_demand':
|
||||
makeCreditRequest($request);
|
||||
break;
|
||||
case 'validate_agent':
|
||||
validate_agentAccount($request);
|
||||
break;
|
||||
case "valider_simple":
|
||||
validateUserSimple($request);
|
||||
case 'create_supervisor':
|
||||
case 'create_geolocated_user':
|
||||
createAgent($request);
|
||||
break;
|
||||
case 'list_demande_adhesion':
|
||||
listDemandAdhesion($request);
|
||||
break;
|
||||
case 'activeSupervisor':
|
||||
activeSupervisor($request);
|
||||
break;
|
||||
case 'generateNetworkAgentForGeo':
|
||||
generateNetworkForGeo($request);
|
||||
break;
|
||||
case 'assignNetworkAgentToGeo':
|
||||
assignNetworkAgentToGeo($request);
|
||||
break;
|
||||
case 'update_position':
|
||||
updatePosition($request);
|
||||
break;
|
||||
case 'agent_info_code':
|
||||
getAgentInfoByCode($request);
|
||||
break;
|
||||
default:
|
||||
echo json_encode(['error'=>3,'error_msg'=>'type manquant']);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
echo json_encode(['error'=>4,'error_msg'=>'tag manquant']);
|
||||
|
||||
}
|
||||
}else{
|
||||
$res=[];
|
||||
$res['error']=-4;
|
||||
$res['msg']='aucun tag n a ete defini';
|
||||
$res['data']=$request;
|
||||
echo json_encode($res);
|
||||
}
|
||||
function getAgentInfoByCode($request){
|
||||
if(isset($request->code)){
|
||||
$requester=new Requester(null,$request->lang);
|
||||
$code=$request->code;
|
||||
echo $requester->getAgentInfoByCode($code);
|
||||
}
|
||||
else echo json_encode(['error'=>-3,'data'=>$request]);
|
||||
|
||||
}
|
||||
function updatePosition($request){
|
||||
if(isset($request->agentId)){
|
||||
$requester=new Requester(null,"fr");
|
||||
$code=$request->agentId;
|
||||
$long=$request->longitude;
|
||||
$lat=$request->latitude;
|
||||
echo $requester->updatePosition($code,$long,$lat);
|
||||
}else echo json_encode(['error'=>-3,'data'=>$request]);
|
||||
}
|
||||
function assignNetworkAgentToGeo($request){
|
||||
if(isset($request->agentId)){
|
||||
if(isset($request->code_parrain)){
|
||||
$requester=new Requester(null,$request->lang);
|
||||
echo $requester->assignNetworkToAgent($request->agentId,$request->code_parrain,$request->phone);
|
||||
|
||||
}else{
|
||||
echo json_encode(['error'=>-2,'error_message'=>'validation code manquant']);
|
||||
}
|
||||
|
||||
}else{
|
||||
echo json_encode(['error'=>-1,'error_message'=>'code_membre manquant']);
|
||||
}
|
||||
}
|
||||
function generateNetworkForGeo($request){
|
||||
if(isset($request->phone)){
|
||||
if(isset($request->code_parrain)){
|
||||
$requester=new Requester(null,$request->lang);
|
||||
echo $requester->generateEmptyAgentNetworkForAgent($request->phone,$request->code_parrain);
|
||||
|
||||
}else{
|
||||
echo json_encode(['error'=>-1,'error_message'=>'parrain manquant']);
|
||||
}
|
||||
}else{
|
||||
echo json_encode(['error'=>-1,'error_message'=>'phone manquant']);
|
||||
}
|
||||
}
|
||||
function activeSupervisor($request){
|
||||
$requester=new Requester(0,$request->lang);
|
||||
if(isset($request->code)){
|
||||
echo $requester->activeSupervisorAdhesion($request->code,$request->phone);
|
||||
}else{
|
||||
echo json_encode(['error'=>'code membre manquant']);
|
||||
}
|
||||
}
|
||||
function validateUserSimple($request){
|
||||
$requester=new Requester(0,$request->lang);
|
||||
if(isset($request->phone)){
|
||||
echo json_encode($requester->validateUser($request->phone));
|
||||
}
|
||||
}
|
||||
|
||||
function validate_agentAccount($request){
|
||||
$requester=new Requester(0,$request->lang);
|
||||
if(isset($request->code_validation)){
|
||||
if(isset($request->phone)){
|
||||
echo json_encode($requester->validateAgent($request->phone,$request->code_validation,$request->nbre_code,$request->nbre_code_superviseur));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
function getCagetoryChild($request){
|
||||
$codeparrain=$request->codeparrain;
|
||||
$requester=new Requester(0);
|
||||
if(isset($request->codeparrain)){
|
||||
echo json_encode($requester->getChildCode($codeparrain));
|
||||
}
|
||||
else{
|
||||
echo json_encode(['error'=>2,'error_msg'=>' code parrain manquant']);
|
||||
}
|
||||
}
|
||||
function listDemandAdhesion($request){
|
||||
$result=[];
|
||||
$requester=new Requester(null);
|
||||
if(isset($request->codeparrain)) {
|
||||
$codeparrain = $request->codeparrain;
|
||||
echo json_encode($requester->getSupervisorAdhesionList($codeparrain));
|
||||
}
|
||||
else{
|
||||
echo json_encode(['error'=>2,'error_msg'=>' code parrain manquant']);
|
||||
}
|
||||
}
|
||||
|
||||
function getAllMembersGeolocated($request){
|
||||
$result=[];
|
||||
$requester=new Requester(null);
|
||||
if(isset($request->codeparrain)) {
|
||||
$codeparrain = $request->codeparrain;
|
||||
echo json_encode($requester->getSuperviseurNetwork($codeparrain));
|
||||
}else{
|
||||
echo json_encode(['error'=>2,'error_msg'=>' code parrain manquant']);
|
||||
}
|
||||
|
||||
}
|
||||
function network(){
|
||||
$r=new Requester(null);
|
||||
echo $r->getNetwork();
|
||||
}
|
||||
function makeCreditRequest($request){
|
||||
|
||||
}
|
||||
|
||||
function createAgent($request){
|
||||
// Register Geolocated
|
||||
// Request type is Register new user
|
||||
$requester=new Requester(null,$request->lang);
|
||||
$req=[];
|
||||
if(isset($request->address)) {
|
||||
if(isset( $request->lastname)){
|
||||
if(isset( $request->email)){
|
||||
if(isset($request->phone)){
|
||||
if(isset($request->password)){
|
||||
if(isset( $request->town)){
|
||||
if(isset($request->network)){
|
||||
if(isset($request->latitude) && isset($request->longitude)){
|
||||
if(isset($request->member)){
|
||||
if(isset($request->category)){
|
||||
echo $requester->registerGeolocated($request);
|
||||
}else{
|
||||
$req['error']=-10;
|
||||
$req['msg']='missing categorie';
|
||||
}
|
||||
}else {
|
||||
$req['error']=-9;
|
||||
$req['msg']='missing member';
|
||||
}
|
||||
} else{
|
||||
$req['error']=-8;
|
||||
$req['msg']='missing position';
|
||||
}
|
||||
}else{
|
||||
$req['error']=-7;
|
||||
$req['msg']='missing network';
|
||||
|
||||
}
|
||||
}else{
|
||||
$req['error']=-6;
|
||||
$req['msg']='missing country';
|
||||
|
||||
}
|
||||
} else{
|
||||
$req['error']=-5;
|
||||
$req['msg']='missing password';
|
||||
}
|
||||
} else{
|
||||
|
||||
$req['error']=-4;
|
||||
$req['msg']='missing phone';
|
||||
|
||||
}
|
||||
}else {
|
||||
|
||||
$req['error']=-3;
|
||||
$req['msg']='missing email';
|
||||
|
||||
}
|
||||
}else {
|
||||
$req['error']=-2;
|
||||
$req['msg']='missing last name';
|
||||
|
||||
}
|
||||
}else {
|
||||
$req['error']=-1;
|
||||
$req['msg']='missing first name';
|
||||
}
|
||||
}
|
||||
function createSimpleUser($request)
|
||||
{
|
||||
$requester=new Requester(null);
|
||||
$req=[];
|
||||
if(isset($request->address)) {
|
||||
if(isset( $request->lastname)){
|
||||
if(isset( $request->email)){
|
||||
if(isset($request->phone)){
|
||||
if(isset($request->password)){
|
||||
if(isset( $request->town)) {
|
||||
if (isset($request->network)) {
|
||||
$usr=$requester->registerUser($request);
|
||||
echo $usr;
|
||||
} else {
|
||||
$req['error'] = -7;
|
||||
$req['msg'] = 'missing network';
|
||||
|
||||
}
|
||||
}else{
|
||||
$req['error']=-6;
|
||||
$req['msg']='missing country';
|
||||
|
||||
}
|
||||
} else{
|
||||
$req['error']=-5;
|
||||
$req['msg']='missing password';
|
||||
}
|
||||
} else{
|
||||
|
||||
$req['error']=-4;
|
||||
$req['msg']='missing phone';
|
||||
|
||||
}
|
||||
}else {
|
||||
|
||||
$req['error']=-3;
|
||||
$req['msg']='missing email';
|
||||
|
||||
}
|
||||
}else {
|
||||
$req['error']=-2;
|
||||
$req['msg']='missing last name';
|
||||
|
||||
}
|
||||
}else {
|
||||
$req['error']=-1;
|
||||
$req['msg']='missing first name';
|
||||
}
|
||||
|
||||
}
|
|
@ -1,166 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 08/10/18
|
||||
* Time: 12:26
|
||||
*/
|
||||
|
||||
error_reporting(E_ALL);
|
||||
ini_set('display_errors', 1);
|
||||
include "../../vendor/autoload.php";
|
||||
use Twilio\Rest\Client;
|
||||
|
||||
|
||||
class Messenger
|
||||
|
||||
{
|
||||
private $contact;
|
||||
private $message;
|
||||
private $mail;
|
||||
private $subject;
|
||||
private $client;
|
||||
private $header;
|
||||
const AccountSid = "ACacdb9c9601741af001ebbc7eca4969cd";
|
||||
const AuthToken = "e0e2f1176c09b3980c9ecf967187191b";
|
||||
const sender_name = "iLink World";
|
||||
const sender_number = "+447400348273";
|
||||
/**
|
||||
* Messenger constructor.
|
||||
* @param $contact
|
||||
* @param $message
|
||||
* @param $mail
|
||||
* @param $subject
|
||||
*/
|
||||
public function __construct($contact=null, $message=null, $mail=null, $subject=null)
|
||||
{
|
||||
$this->contact = $contact;
|
||||
$this->message = $message;
|
||||
$this->mail = $mail;
|
||||
$this->subject = $subject;
|
||||
try {
|
||||
$this->client = new Client(Messenger::AccountSid,Messenger::AuthToken);
|
||||
}catch (Exception $e){
|
||||
echo $e->getMessage();
|
||||
}
|
||||
}
|
||||
public function sendSms()
|
||||
{
|
||||
|
||||
try {
|
||||
/* $sms = $this->client->account->messages->create(
|
||||
// the number we are sending to - Any phone number
|
||||
$this->getContact(),
|
||||
array(
|
||||
// Step 6: Change the 'From' number below to be a valid Twilio number
|
||||
// that you've purchased
|
||||
'from' => Messenger::sender_number,
|
||||
|
||||
'body' => $this->getMessage()
|
||||
)
|
||||
);*/
|
||||
return true;
|
||||
}catch(Exception $e){
|
||||
// echo json_encode(["message"=>$e->getMessage(),"line"=>$e->getLine(),"trace"=>$e->getTrace()]);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
public function sendMail(){
|
||||
return mail($this->getMail(),$this->getSubject(),$this->getMessage(),$this->getHeader());
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getHeader()
|
||||
{
|
||||
return $this->header;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $header
|
||||
*/
|
||||
public function setHeader($header)
|
||||
{
|
||||
$this->header = $header;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return null
|
||||
*/
|
||||
public function getContact()
|
||||
{
|
||||
return $this->contact;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $contact
|
||||
*/
|
||||
public function setContact($contact)
|
||||
{
|
||||
$this->contact = $contact;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return null
|
||||
*/
|
||||
public function getMessage()
|
||||
{
|
||||
return $this->message;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $message
|
||||
*/
|
||||
public function setMessage($message)
|
||||
{
|
||||
$this->message = $message;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return null
|
||||
*/
|
||||
public function getMail()
|
||||
{
|
||||
return $this->mail;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $mail
|
||||
*/
|
||||
public function setMail($mail)
|
||||
{
|
||||
$this->mail = $mail;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return null
|
||||
*/
|
||||
public function getSubject()
|
||||
{
|
||||
return $this->subject;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param null $subject
|
||||
*/
|
||||
public function setSubject($subject)
|
||||
{
|
||||
$this->subject = $subject;
|
||||
}
|
||||
|
||||
public function checkPhoneExist($phone)
|
||||
{
|
||||
try {
|
||||
$phone_number = $this->client->lookups->v1->phoneNumbers($phone)
|
||||
->fetch();
|
||||
|
||||
return isset($phone_number);
|
||||
} catch(Exception $ex){
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
|
@ -1,90 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 15/10/18
|
||||
* Time: 13:39
|
||||
*/
|
||||
|
||||
|
||||
include '../database/Requester.php';
|
||||
|
||||
$tag="";
|
||||
|
||||
$postdata = file_get_contents("php://input");
|
||||
$request=null;
|
||||
if(isset($postdata)) {
|
||||
$request = json_decode($postdata);
|
||||
}
|
||||
|
||||
if($postdata!=null && isset($request->tag)){
|
||||
$tag=$request->tag;
|
||||
switch ($tag) {
|
||||
case 'avail_countries':
|
||||
getAvailCountries();
|
||||
break;
|
||||
case 'listnetworkscountryindicatif':
|
||||
getAllCountryNetwork($request);
|
||||
break;
|
||||
case 'geolocated':
|
||||
|
||||
if(isset($request->type)) {
|
||||
$type = $request->type;
|
||||
switch ($type) {
|
||||
case 'listNetwork':
|
||||
getAllNetworkGeo($request);
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 'supervisor':
|
||||
if(isset($request->type)) {
|
||||
$type = $request->type;
|
||||
switch ($type) {
|
||||
case 'listFreeNetwork':
|
||||
getAllFreeNetworkForSupervisor($request);
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
echo json_encode(['error'=>4,'error_msg'=>'tag manquant']);
|
||||
|
||||
}
|
||||
}else{
|
||||
$res=[];
|
||||
$res['error']=-4;
|
||||
$res['msg']='aucun tag n a ete defini';
|
||||
$res['data']=$request;
|
||||
echo json_encode($res);
|
||||
}
|
||||
function getAvailCountries(){
|
||||
$req=new Requester(null);
|
||||
|
||||
echo $req->getActiveCountries();
|
||||
}
|
||||
|
||||
function getAllFreeNetworkForSupervisor($request){
|
||||
if(isset($request->code_parrain)){
|
||||
$req=new Requester($request->code_parrain);
|
||||
echo json_encode($req->listFreeNetworksForSuper());
|
||||
}else
|
||||
echo json_encode(['error'=>'code parrain est absent']);
|
||||
|
||||
}
|
||||
function getAllNetworkGeo($request){
|
||||
if(isset($request->id)){
|
||||
$req=new Requester($request->id );
|
||||
echo json_encode($req->listNetworksGeo());
|
||||
|
||||
}else
|
||||
echo json_encode(['error'=>'l\'id est absent']);
|
||||
|
||||
|
||||
}
|
||||
function getAllCountryNetwork($request){
|
||||
if(isset($request->indicatif)){
|
||||
$req=new Requester(null);
|
||||
echo json_encode($req->getCountryNetWork($request->indicatif));
|
||||
}
|
||||
}
|
|
@ -1,66 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 08/10/18
|
||||
* Time: 11:47
|
||||
*/
|
||||
header('Content-type: application/json');
|
||||
|
||||
// Program SMSM Sending
|
||||
/* Send an SMS using Twilio. You can run this file 3 different ways:
|
||||
*
|
||||
* 1. Save it as sendnotifications.php and at the command line, run
|
||||
* php sendnotifications.php
|
||||
*
|
||||
* 2. Upload it to a web host and load mywebhost.com/sendnotifications.php
|
||||
* in a web browser.
|
||||
*
|
||||
* 3. Download a local server like WAMP, MAMP or XAMPP. Point the web root
|
||||
* directory to the folder containing this file, and load
|
||||
* localhost:8888/sendnotifications.php in a web browser.
|
||||
*/
|
||||
|
||||
// Step 1: Get the Twilio-PHP library from twilio.com/docs/libraries/php,
|
||||
// following the instructions to install it with Composer.
|
||||
error_reporting(E_ALL);
|
||||
ini_set('display_errors', 1);
|
||||
require_once "../../vendor/autoload.php";
|
||||
use Twilio\Rest\Client;
|
||||
|
||||
// Step 2: set our AccountSid and AuthToken from https://twilio.com/console
|
||||
$AccountSid = "ACacdb9c9601741af001ebbc7eca4969cd";
|
||||
|
||||
|
||||
$AuthToken = "0aa2ed8f08775286180f8b40baaf57fb";
|
||||
|
||||
|
||||
// Step 3: instantiate a new Twilio Rest Client
|
||||
$client = new Client($AccountSid, $AuthToken);
|
||||
|
||||
$sender_name = "iLink World";
|
||||
$sender_number = "+447400348273";
|
||||
$phone="+24107300823";
|
||||
|
||||
$subject = "Nouvelle demande superviseur";
|
||||
$email = "andymigoumbi@gmail.com";
|
||||
$message = "Bonjour,\n\nUne nouvelle demande de superviseur a été enregistrée.
|
||||
\nNumero de telephone : $phone \n\n\nCordialement,\nL'équipe Ilink.";
|
||||
$from = "noreply@ilink.com";
|
||||
$headers = "From:" . $from;
|
||||
$name = "ilink";
|
||||
mail($email, $subject, $message, $headers);
|
||||
// Start Sending SMS
|
||||
$sms = $client->account->messages->create(
|
||||
// the number we are sending to - Any phone number
|
||||
"+24107300823",
|
||||
array(
|
||||
// Step 6: Change the 'From' number below to be a valid Twilio number
|
||||
// that you've purchased
|
||||
'from' => $sender_number,
|
||||
|
||||
|
||||
// the sms body
|
||||
'body' => $message
|
||||
)
|
||||
);
|
|
@ -168,9 +168,7 @@ function listagentNetwork(){
|
|||
if($con){
|
||||
$net=mysqli_query($con,"select * from networks_agents na INNER JOIN codeGenerer cg ON na.codeGenerer_id=cg.id");
|
||||
if($net){
|
||||
while ($row=mysqli_fetch_array($net,MYSQLI_ASSOC)){
|
||||
$rows[]=$row;
|
||||
}
|
||||
|
||||
|
||||
echo json_encode($rows);
|
||||
}else{
|
||||
|
|
|
@ -1,51 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 08/10/18
|
||||
* Time: 12:03
|
||||
*/
|
||||
|
||||
class Balance
|
||||
{
|
||||
private $montant;
|
||||
private $phone;
|
||||
public function __construct($montant,$phone)
|
||||
{
|
||||
$this->montant=$montant;
|
||||
$this->phone=$phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getMontant()
|
||||
{
|
||||
return $this->montant;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return mixed
|
||||
*/
|
||||
public function getPhone()
|
||||
{
|
||||
return $this->phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $phone
|
||||
*/
|
||||
public function setPhone($phone)
|
||||
{
|
||||
$this->phone = $phone;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param mixed $montant
|
||||
*/
|
||||
public function setMontant($montant)
|
||||
{
|
||||
$this->montant = $montant;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
<?php
|
||||
/**
|
||||
* Created by PhpStorm.
|
||||
* User: freuddebian
|
||||
* Date: 08/10/18
|
||||
* Time: 12:47
|
||||
*/
|
||||
|
||||
class User
|
||||
{
|
||||
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,27 +0,0 @@
|
|||
{
|
||||
"SALUTATION":"Hello ",
|
||||
"CREATION_ACCOUNT_SUCCESSFULL":"Your account has just been created",
|
||||
"AS":"As",
|
||||
"ID_TEXT": "Your login:",
|
||||
"VALIDATION_CODE_TEXT":"Your validation code",
|
||||
"END_MESSAGE":"Sincerely, \nIink Team.",
|
||||
"NEW_DEMAND_TITLE":"New credit request",
|
||||
"SEND_CREDIT_DEMAND_TEXT_SUCCESS":"Hello, \n\nYour credit request has been sent. \n\nThe Ilink team.",
|
||||
"HYPERVISOR_VALIDATTION_TEXT":"Your verification code will be sent to you once your Hypervisor has validated it",
|
||||
"UNABLE_TO_SEND_MESSAGE":"The request could not be sent!",
|
||||
"PHONE_OR_NUMBER_INCORRECT":"phone number or password incorrect",
|
||||
"UNABLE_TO_GET_GEOLOCATED_POINT":"unable to get geolocated point of this supervisor",
|
||||
"TEXT_RECOVERY_PASSWORD":"Hi dear member, \n\nYour password has been changed successfully. Your new password is %s. Log in with your new password. \n\nKindly, \nThe Ilink Team.",
|
||||
"MESSAGE_1":"Hi %s, \n \nYour %s account has just been created. \nYour ID:%s \nYour Passwords:%s \n\nYour verification code:%s \n \nService, \nIink Team.",
|
||||
"MESSAGE_2":"Hi %s, \n \nYour %s account has just been created. \nYour ID:%s \n \nYour password:%s Your verification code will be sent to you once your Hypervisor validates it \n\nKindly, \nIink team.",
|
||||
"ALREADY_PHONE_NUMBER":"The phone number is already created",
|
||||
"NO_CODE_MEMBER":"no member has this code",
|
||||
"INVALID_PHONE":"Invalide phone number",
|
||||
"WRONG_PASSWORD":"Wrong password",
|
||||
"WRONG_PHONE_NUMBER":"Wrong phone number",
|
||||
"MESSAGE_3":"Hi, \n \nYour %s account has just been created. \nYour ID:%s \n \nYour verification code:%s \n \nService, \nIink Team.",
|
||||
"MESSAGE_ATTRIBUTE":"Hi, \n \nYour number has just been assigned. \nYour ID:%s\n\nYour validation code:%s \n \nService, \nIink team.",
|
||||
"MESSAGE_TREAT":"Your credit application has been processed,please check in the application \n \n Sincerely, The Ilink Team",
|
||||
"MESSAGE_ACTIVE_ACCOUNT":"Hi %s, \n \nYour %s account has just been created. \nYour ID:%s \n\nYour verification code:%s \n \nService, \nIink Team."
|
||||
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,27 +0,0 @@
|
|||
{
|
||||
"SALUTATION":"Salut ",
|
||||
"CREATION_ACCOUNT_SUCCESSFULL":"Votre compte vient d'etre crée",
|
||||
"AS":"En tant que",
|
||||
"ID_TEXT": "Votre identifiant :",
|
||||
"VALIDATION_CODE_TEXT":"Votre code de validation",
|
||||
"END_MESSAGE":"Cordialement,\nEquipe Ilink.",
|
||||
"NEW_DEMAND_TITLE":"Nouvelle demande de crédit",
|
||||
"SEND_CREDIT_DEMAND_TEXT_SUCCESS":"Bonjour,\n\nVotre demande de crédit a été envoyée.\n\nL'équipe Ilink.",
|
||||
"HYPERVISOR_VALIDATTION_TEXT":"Votre code de validation vous sera envoyé une fois que votre Hyperviseur l'aura validé",
|
||||
"UNABLE_TO_SEND_MESSAGE":"La demande n'a pas pu être envoyée!",
|
||||
"PHONE_OR_NUMBER_INCORRECT":"Téléphone ou mot de passe incorrect!",
|
||||
"WRONG_PASSWORD":"Mot de passe incorrect",
|
||||
"WRONG_PHONE_NUMBER":"Numéro incorrect",
|
||||
"UNABLE_TO_GET_GEOLOCATED_POINT":"impossible de recupere les points de ce suprviseur",
|
||||
"TEXT_RECOVERY_PASSWORD":"Salut cher membre,\n\nVotre mot de passe a été changé avec succès. Votre nouveau mot de passe est %s . Connectez vous avec votre nouveau mot de passe.\n\nCordialement,\nL'équipe Ilink'.",
|
||||
"MESSAGE_1":"Salut %s,\n\nVotre compte %s vient d'etre crée.\nVotre identifiant : %s \nVotre mot de passe : %s\n\nVotre code de validation : %s\n\nCordialement,\nEquipe Ilink.",
|
||||
"MESSAGE_2":"Salut %s,\n\nVotre compte %s vient d'etre crée.\nVotre identifiant : %s \n\nVotre mot de passe : %s\n Votre code de validation vous sera envoye une fois que votre Hyperviseur l'aura validé\n\nCordialement,\nEquipe Ilink.",
|
||||
"ALREADY_PHONE_NUMBER":"le numero de telephone existe deja",
|
||||
"NO_CODE_MEMBER":"aucun membre ne possede ce code",
|
||||
"INVALID_PHONE":"le numero est invalide",
|
||||
"MESSAGE_3":"Salut,\n\nVotre compte %s vient d'etre crée.\nVotre identifiant : %s \n\nVotre code de validation : %s\n\nCordialement,\nEquipe Ilink.",
|
||||
"MESSAGE_ATTRIBUTE":"Salut ,\n\nVotre numero vient d'etre attribue.\nVotre identifiant : %s\n\nVotre code de validation : %s\n\nCordialement,\nEquipe Ilink.",
|
||||
"MESSAGE_TREAT":"Votre demande de crédit vient d'être traité,veuillez consulter dans l'application \n\n Cordialement,L'equipe Ilink",
|
||||
"MESSAGE_ACTIVE_ACCOUNT":"Salut %s, \n \nvotre compte %s a été activé. \nvotre ID:%s \n\nvotre code de activation:%s \n \nCordialement, \nEquipe Iink ."
|
||||
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>403 Forbidden</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<p>Directory access is forbidden.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue