diff --git a/composer.json b/composer.json
index 33eb21a..e2b0c99 100644
--- a/composer.json
+++ b/composer.json
@@ -3,6 +3,8 @@
"require": {
"phpmailer/phpmailer": "^6.1",
"twilio/sdk": "^6.4",
- "guzzlehttp/guzzle": "^7.1"
- }
+ "guzzlehttp/guzzle": "^7.1",
+ "ext-json": "*"
+ },
+ "description": "iLink World Mobile Backend"
}
diff --git a/database/Requester.php b/database/Requester.php
index 06c19c0..c9da238 100644
--- a/database/Requester.php
+++ b/database/Requester.php
@@ -395,67 +395,77 @@ class Requester
*/
public function registerGeolocated($request)
{
- if ($this->db->isPhoneExistedInCategory($request->phone, $request->category,$request->phone_transaction)) {
+ if($this->db->isPhoneExistedAgent($request->phone)) {
// user is already existed - error response
+ $response['agent']= $request->lastname;
$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
- //Create wallet if network has wallet
- if($this->db->getConfigWallet($request->network->id))
- $this->db->createWalletForAgent($request->phone_transaction);
- $user["success"] = 1;
- $validation = $user["validation_code"];
- $username = $user["lastname"];
- $subject = "Bienvenue sur Ilink";
- $code=$user["code_membre"];
- $phone = $user['phone'];
- $ct=($user['category']=='geolocated'?$this->messageText['AGENT_GEO']:($user['category']=='super'?$this->messageText['ADMIN']:$this->messageText['SUPER_ADMIN']));
- $message1 =sprintf($this->messageText['MESSAGE_1'],$username,$ct,$phone,$request->password,$code,$validation);
- $message2 = sprintf($this->messageText['MESSAGE_2'],$username,$ct,$phone,$request->password,$code);
- $from = "noreply@ilink-app.com";
- $headers = "From:" . $from;
- $name = "ilink";
+ $response["error_msg"] = sprintf($this->messageText['ALREADY_PHONE_NUMBER'],$request->phone);
+ return json_encode($response);
+ }
- $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);
- try{
- $this->messenger->sendMail();
- }catch (\Throwable $e){
- $this->write_log($e->getMessage().'\n'.$e->getTraceAsString());;
- }
- $sms = $this->messenger->sendSms();
+ if($this->db->isPhoneExistedAgent($request->phone_transaction)) {
+ // user is already existed - error response
+ $response['agent']= $request->lastname;
+ $response["error"] = 1;
+ $response["error_msg"] = sprintf($this->messageText['ALREADY_TRANSACTION_PHONE_NUMBER'],$request->phone_transaction);
+ return json_encode($response);
+ }
+ if ($this->db->checknumberValidity($request->phone))
+ return json_encode([ 'agent' => $request->lastname , 'error' => 'invalid phone number', 'error_msg' => $this->messageText['INVALID_PHONE']]);
- }
- return json_encode($user);
+ if ($this->db->checknumberValidity($request->phone_transaction))
+ return json_encode([ 'agent' => $request->lastname , 'error' => 'invalid transaction phone number', 'error_msg' => $this->messageText['INVALID_TRANSACTION_PHONE']]);
- /* echo "Réseau : ".strtoupper($user["network"])."
";
- echo "
";
- echo "Nom(s) :".$user["lastname"]."
";
- echo "Email par défaut du réseau : ".$user["email"]."
";
- echo "Telephone :".$user["phone"]."
";
- echo "Code membre pour le réseau : ".$user["code_membre"]."
";
- echo "
";*/
- } else {
- return json_encode(['error' => 'unable to get membrre', 'error_msg' => $this->messageText['NO_CODE_MEMBER']]);
+ $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
+ //Create wallet if network has wallet
+ if($this->db->getConfigWallet($request->network->id))
+ $this->db->createWalletForAgent($request->phone_transaction);
+ $user["success"] = 1;
+ $validation = $user["validation_code"];
+ $username = $user["lastname"];
+ $subject = "Bienvenue sur Ilink";
+ $code=$user["code_membre"];
+ $phone = $user['phone'];
+ $ct=($user['category']=='geolocated'?$this->messageText['AGENT_GEO']:($user['category']=='super'?$this->messageText['ADMIN']:$this->messageText['SUPER_ADMIN']));
+ $message1 =sprintf($this->messageText['MESSAGE_1'],$username,$ct,$phone,$request->password,$code,$validation);
+ $message2 = sprintf($this->messageText['MESSAGE_2'],$username,$ct,$phone,$request->password,$code);
+ $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);
+ try{
+ $this->messenger->sendMail();
+ }catch (\Throwable $e){
+ $this->write_log($e->getMessage().'\n'.$e->getTraceAsString());;
}
- }else{
- return json_encode(['error' => 'unable to get membrre',"msg"=>$this->messageText, 'error_msg' => $this->messageText['INVALID_PHONE']]);
+ $sms = $this->messenger->sendSms();
+
}
+ return json_encode($user);
+
+ /* echo "Réseau : ".strtoupper($user["network"])."
";
+ echo "
";
+ echo "Nom(s) :".$user["lastname"]."
";
+ echo "Email par défaut du réseau : ".$user["email"]."
";
+ echo "Telephone :".$user["phone"]."
";
+ echo "Code membre pour le réseau : ".$user["code_membre"]."
";
+ echo "
";*/
+ } else {
+ return json_encode([ 'agent' => $request->lastname , 'error' => 'unable to get member', 'error_msg' => $this->messageText['NO_CODE_MEMBER']]);
+
}
}
diff --git a/static/en/message.json b/static/en/message.json
index 4708da9..58f34f8 100644
--- a/static/en/message.json
+++ b/static/en/message.json
@@ -15,9 +15,11 @@
"MESSAGE_1":"Hi %s, \n \nYour %s account has just been created. \nYour ID:%s \nYour Passwords:%s \n\nYour member code : %s\n\nYour verification code:%s \n \nService, \niLinkWorld Team.",
"MESSAGE_1_USER":"Hi %s, \n \nYour %s account has just been created. \nYour ID:%s \nYour Passwords:%s \n\nYour verification code:%s \n \nService, \niLinkWorld Team.",
"MESSAGE_2":"Hi %s, \n \nYour %s account has just been created. \nYour ID:%s \n \nYour password:%s\n \nYour member code : %s\n Your verification code will be sent to you once your Hypervisor validates it \n\nKindly, \niLinkWorld team.",
- "ALREADY_PHONE_NUMBER":"The phone number is already created",
+ "ALREADY_PHONE_NUMBER":"The phone number %s is already created",
+ "ALREADY_TRANSACTION_PHONE_NUMBER":"The transaction phone number %s is already created",
"NO_CODE_MEMBER":"no member has this code",
"INVALID_PHONE":"Invalide phone number",
+ "INVALID_TRANSACTION_PHONE":"Invalid transaction phone number",
"WRONG_PASSWORD":"Wrong password",
"USER_":"User",
"AGENT_GEO":"GeolocatedAgent",
diff --git a/static/fr/message.json b/static/fr/message.json
index 7d71eef..8a76049 100644
--- a/static/fr/message.json
+++ b/static/fr/message.json
@@ -18,9 +18,11 @@
"MESSAGE_1":"Salut %s,\n\nVotre compte %s vient d'être crée.\nVotre identifiant : %s \nVotre mot de passe : %s\n\nVotre code membre : %s\nVotre code de validation : %s\n\nCordialement,\nEquipe iLinkWorld.",
"MESSAGE_1_USER":"Salut %s,\n\nVotre compte %s vient d'être crée.\nVotre identifiant : %s \nVotre mot de passe : %s\n\nVotre code de validation : %s\n\nCordialement,\nEquipe iLinkWorld.",
"MESSAGE_2":"Salut %s,\n\nVotre compte %s vient d'être crée.\nVotre identifiant : %s \n\nVotre mot de passe : %s\nVotre code membre : %s\n Votre code de validation vous sera envoye une fois que votre Hyperviseur l'aura validé\n\nCordialement,\nEquipe iLinkWorld.",
- "ALREADY_PHONE_NUMBER":"le numero de telephone existe deja",
+ "ALREADY_PHONE_NUMBER":"Le numero de téléphone %s existe déjà",
+ "ALREADY_TRANSACTION_PHONE_NUMBER":"Le numero de téléphone de transaction %s existe déjà",
"NO_CODE_MEMBER":"aucun membre ne possede ce code",
"INVALID_PHONE":"le numero est invalide",
+ "INVALID_TRANSACTION_PHONE":"Le numéro de transaction est invalide",
"WELCOME_ILINK":"Bienvenue dans iLinkWorld",
"AGENT_GEO":"Agent Géolocalisé",
"ADMIN":"Administrateur",