1739 lines
49 KiB
Plaintext
Executable File
1739 lines
49 KiB
Plaintext
Executable File
<?php
|
|
defined('BASEPATH') OR exit('No direct script access allowed');
|
|
use Spatie\Async\Pool;
|
|
|
|
class Gestion extends CI_Controller
|
|
{
|
|
|
|
public function _contruct()
|
|
{
|
|
parent::_contruct();
|
|
$this->load->model('user_model');
|
|
date_default_timezone_set ($this->session->userdata('timezone'));
|
|
}
|
|
|
|
public function index()
|
|
{
|
|
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
|
|
$data['list_villes'] = $this->user_model->getAllVilles();
|
|
$data['pays'] = $this->user_model->getAllPays();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['alert'] = "";
|
|
$data['active'] = "villes";
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_villes');
|
|
$this->load->view('footer');
|
|
}
|
|
|
|
}
|
|
|
|
public function activer()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$villes = $this->input->post('villes');
|
|
$max = sizeof($villes);
|
|
$number_success = 0;
|
|
for ($i = 0; $i < $max; $i++) {
|
|
$res = $this->user_model->changeVilleStatut($villes[$i], 1);
|
|
if ($res == true) {
|
|
$number_success++;
|
|
}
|
|
}
|
|
if ($number_success == $max) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function update()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$id_country = $this->input->post('id_country');
|
|
$id_town = $this->input->post('id_town');
|
|
$town = $this->input->post('town');
|
|
|
|
$res = $this->user_model->updateVille($id_country, $id_town, $town);
|
|
|
|
if ($res == true) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function activer_desactiver()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$aVilles = $this->input->post('aVilles');
|
|
$maxA = sizeof($aVilles);
|
|
$number_successA = 0;
|
|
|
|
$dVilles = $this->input->post('dVilles');
|
|
$maxD = sizeof($dVilles);
|
|
$number_successD = 0;
|
|
|
|
$this->db->trans_begin();
|
|
for ($i = 0; $i < $maxD; $i++) {
|
|
$res = $this->user_model->changeVilleStatut($dVilles[$i], 0);
|
|
if ($res == true) {
|
|
$number_successD++;
|
|
}
|
|
}
|
|
for ($i = 0; $i < $maxA; $i++) {
|
|
$res = $this->user_model->changeVilleStatut($aVilles[$i], 1);
|
|
if ($res == true) {
|
|
$number_successA++;
|
|
}
|
|
}
|
|
|
|
if ($this->db->trans_status() === FALSE) {
|
|
$this->db->trans_rollback();
|
|
echo json_encode("error");
|
|
} else {
|
|
$this->db->trans_commit();
|
|
echo json_encode("completed");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function desactiver()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$villes = $this->input->post('villes');
|
|
$max = sizeof($villes);
|
|
$number_success = 0;
|
|
for ($i = 0; $i < $max; $i++) {
|
|
$res = $this->user_model->changeVilleStatut($villes[$i], 0);
|
|
if ($res == true) {
|
|
$number_success++;
|
|
}
|
|
}
|
|
if ($number_success == $max) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function suppress()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$villes = $this->input->post('ville');
|
|
$res = $this->user_model->deleteVille($villes);
|
|
|
|
if ($res = true) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function ajout()
|
|
{
|
|
if ($this->input->post('pays') && $this->input->post('ville')) {
|
|
|
|
$ville = $this->input->post('ville');
|
|
$id_pays = $this->input->post('pays');
|
|
$stat = 0;
|
|
|
|
|
|
$data = array('name' => $ville, 'country_id' => $id_pays, 'status' => $stat);
|
|
|
|
$query = $this->db->insert('towns', $data);
|
|
|
|
if ($query) {
|
|
|
|
$data['alert'] = "ok";
|
|
$data['success'] = "ok";
|
|
$data['message'] = "La ville " . $ville . " a bien été ajouté!";
|
|
$data['active'] = "villes";
|
|
|
|
$data['list_villes'] = $this->user_model->getAllVilles();
|
|
$data['pays'] = $this->user_model->getAllPays();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_villes');
|
|
$this->load->view('footer');
|
|
} else {
|
|
|
|
$data['alert'] = "ok";
|
|
$data['success'] = "error";
|
|
$data['message'] = "Une erreur s'est produite";
|
|
$data['active'] = "villes";
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
|
|
$data['list_villes'] = $this->user_model->getAllVilles();
|
|
$data['pays'] = $this->user_model->getAllPays();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_villes');
|
|
$this->load->view('footer');
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
public function networks()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['list_villes'] = $this->user_model->getAllVilles();
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['alert'] = "";
|
|
$data['active'] = "networks";
|
|
$data['networks'] = $this->user_model->getAllNetworksNames();
|
|
$data['assigned_networks'] = $this->user_model->getAllAssignedNetworks();
|
|
//wallet
|
|
// $data['networks'] = $this->user_model->getActiveNetwork();
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_networks');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function creat_network()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$network = $this->input->post('new_network');
|
|
|
|
$data = array('name' => $network);
|
|
|
|
$query = $this->db->insert('networks', $data);
|
|
|
|
if ($query) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function assignation()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$network = $this->input->post('network');
|
|
$existe = 0;
|
|
$this->db->trans_begin();
|
|
foreach ($_POST['id_country'] AS $country) {
|
|
$res = $this->user_model->checkIfAssignationExiste($country, $network);
|
|
|
|
if ($res == false) {
|
|
$data = array('country_id' => $country, 'name' => $network);
|
|
$this->db->insert('networks', $data);
|
|
|
|
} else {
|
|
$existe = $existe + 1;
|
|
}
|
|
|
|
}
|
|
if ($this->db->trans_status() === FALSE) {
|
|
$this->db->trans_rollback();
|
|
echo json_encode("error");
|
|
} elseif ($existe > 0) {
|
|
$this->db->trans_commit();
|
|
echo json_encode("existe");
|
|
} else {
|
|
$this->db->trans_commit();
|
|
echo json_encode("completed");
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
public function update_network()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$old_network = $this->input->post('old_name');
|
|
$new_network = $this->input->post('new_network');
|
|
|
|
$res = $this->user_model->updateNetwork($old_network, $new_network);
|
|
|
|
if ($res == true) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function change_status_network()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$activations = $this->input->post('activations');
|
|
$desactivation = $this->input->post('desactivations');
|
|
|
|
$this->db->trans_begin();
|
|
if (!empty($_POST['activations'])) {
|
|
foreach ($_POST['activations'] AS $network) {
|
|
|
|
$data = array('status' => 1);
|
|
$this->db->where('id', $network);
|
|
$this->db->update('networks', $data);
|
|
|
|
}
|
|
}
|
|
if (!empty($_POST['desactivations'])) {
|
|
foreach ($_POST['desactivations'] AS $network) {
|
|
|
|
$data = array('status' => 0);
|
|
$this->db->where('id', $network);
|
|
$this->db->update('networks', $data);
|
|
|
|
}
|
|
}
|
|
if ($this->db->trans_status() === FALSE) {
|
|
$this->db->trans_rollback();
|
|
echo json_encode("error");
|
|
} else {
|
|
$this->db->trans_commit();
|
|
echo json_encode("completed");
|
|
}
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
public function admin()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['list_admin'] = $this->user_model->getAllAdmin();
|
|
$data['list_villes'] = $this->user_model->getAllVilles();
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['alert'] = "";
|
|
$data['active'] = "admin";
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_admin');
|
|
$this->load->view('footer');
|
|
}
|
|
|
|
}
|
|
|
|
public function create_admin()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$category = 1;
|
|
$firstname = $this->input->post('prenom');
|
|
$lastname = $this->input->post('nom');
|
|
$email = $this->input->post('email');
|
|
$emailExist = $this->user_model->isEmailExist($email);
|
|
if ($emailExist == false) {
|
|
$phone = $this->input->post('contact');
|
|
$phoneExist = $this->user_model->isPhoneExist($phone);
|
|
if ($phoneExist == false) {
|
|
$adresse = $this->input->post('adresse');
|
|
$country = $this->input->post('country');
|
|
$token = null;
|
|
do {
|
|
$token = bin2hex(openssl_random_pseudo_bytes(16));
|
|
$tokenExist = $this->user_model->getToken($token);
|
|
} while ($tokenExist == true);
|
|
|
|
$data = array('firstname' => $firstname, 'lastname' => $lastname, 'email' => $email, 'phone' => $phone, 'adresse' => $adresse, 'country' => $country, 'category' => $category, 'token' => $token);
|
|
|
|
$query = $this->db->insert('admin', $data);
|
|
|
|
if ($query) {
|
|
|
|
$link = "https://ilink-app.com/backofficebeta/index.php/Admin_password/?token=" . $token;
|
|
$this->load->library('email');
|
|
|
|
$this->email->from('noreply@ilink-app.com', 'iLink World');
|
|
$this->email->to($email);
|
|
|
|
$this->email->subject($this->lang->line("Confirmation de création d'un compte administrateur"));
|
|
$this->email->message($firstname . ' ' . $lastname . ' ' . $this->lang->line("votre compte administrateur a bien été créé. Veuillez suivre ce lien pour configurer votre mot de passe.") . ' ' . $link);
|
|
|
|
$this->email->send();
|
|
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode($this->lang->line("Une erreur s'est produite"));
|
|
}
|
|
} else {
|
|
echo json_encode($this->lang->line("Le numéro de téléphone entré est déjà utilisé"));
|
|
}
|
|
} else {
|
|
echo json_encode($this->lang->line("L'email entré est déjà utilisé"));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function modif_admin()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$id = $this->input->post('id');
|
|
$firstname = $this->input->post('prenom');
|
|
$lastname = $this->input->post('nom');
|
|
$email = $this->input->post('email');
|
|
$phone = $this->input->post('contact');
|
|
$adresse = $this->input->post('adresse');
|
|
$country = $this->input->post('country');
|
|
$category = $this->input->post('category');
|
|
|
|
$res = $this->user_model->updateAdmin($id, $firstname, $lastname, $email, $phone, $adresse, $country, $category);
|
|
|
|
if ($res) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode($this->lang->line("Une erreur s'est produite"));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function delete_admin()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$id = $this->input->post('id');
|
|
|
|
$res = $this->user_model->deleteAdmin($id);
|
|
|
|
if ($res) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode($this->lang->line("Une erreur s'est produite"));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function codes()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['list_villes'] = $this->user_model->getAllVilles();
|
|
$data['pays'] = $this->user_model->getAllPays();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['alert'] = "";
|
|
$data['active'] = "codes-hyper";
|
|
$data['list'] = $this->user_model->getGeneratedHyperCodes();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('codeg');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function generateCode()
|
|
{
|
|
|
|
if ($this->input->post('c') && $this->input->post('a')) {
|
|
|
|
$number = intval($this->input->post('c'));
|
|
$member_code = $this->input->post('a');
|
|
if ($number > 0) {
|
|
for ($i = 0; $i < $number; $i++) {
|
|
|
|
|
|
$code = $this->randomString();
|
|
|
|
// $data = array('code_parrain' => $member_code, 'code_membre' => $code, 'etat' => 0, 'category' => 'hyper');
|
|
$data = array('code_parrain' => $code, 'code_membre' => $code, 'etat' => 0, 'category' => 'hyper');
|
|
|
|
|
|
$query = $this->db->insert('codeGenerer', $data);
|
|
|
|
}
|
|
}
|
|
$data['alert'] = "ok";
|
|
$data['success'] = "ok";
|
|
$data['active'] = "members";
|
|
$data['message'] = "$number codes have been added!";
|
|
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['hyper'] = $this->user_model->getAllHyper($data['pays']->first_row()->id);
|
|
$data['ville'] = $this->user_model->getVilleNetworkByHyper($data['hyper']->first_row()->code_membre);
|
|
$data['list'] = $this->user_model->getGeneratedHyperCodes();
|
|
$data['active'] = "codes";
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['firstname'] = $this->session->userdata('firstname');
|
|
$data['lastname'] = $this->session->userdata('lastname');
|
|
$data['email'] = $this->session->userdata('email');
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('codeg');
|
|
$this->load->view('footer');
|
|
|
|
} else {
|
|
$data['alert'] = "ok";
|
|
$data['success'] = "";
|
|
$data['active'] = "members";
|
|
$data['message'] = "Can't add codes!";
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['hyper'] = $this->user_model->getAllHyper($data['pays']->first_row()->id);
|
|
$data['ville'] = $this->user_model->getVilleNetworkByHyper($data['hyper']->first_row()->code_membre);
|
|
$data['list'] = $this->user_model->getGeneratedHyperCodes();
|
|
$data['active'] = "codes";
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['firstname'] = $this->session->userdata('firstname');
|
|
$data['lastname'] = $this->session->userdata('lastname');
|
|
$data['email'] = $this->session->userdata('email');
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('codeg');
|
|
$this->load->view('footer');
|
|
}
|
|
|
|
}
|
|
|
|
private function randomString($length = 10)
|
|
{
|
|
$str = "";
|
|
$characters = array_merge(range('A', 'Z'), range('a', 'z'), range('0', '9'));
|
|
$max = count($characters) - 1;
|
|
for ($i = 0; $i < $length; $i++) {
|
|
$rand = mt_rand(0, $max);
|
|
$str .= $characters[$rand];
|
|
}
|
|
return $str;
|
|
|
|
}
|
|
|
|
public function geolocalisation()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['villes'] = $this->user_model->getVillesByPays($data['pays']->first_row()->id);
|
|
$data['active_ville_name'] = $data['villes']->first_row()->name;
|
|
$data['active_ville_id'] = $data['villes']->first_row()->id;
|
|
$data['agent'] = $this->user_model->getAgentsFromCountry($data['pays']->first_row()->id);
|
|
$data['networks'] = $this->user_model->getNetworks($data['pays']->first_row()->id);
|
|
$data['alert'] = "";
|
|
$data['active'] = "geoloc";
|
|
$number_geolocalisation = array();
|
|
$network_geolocalisation = array();
|
|
$count = 0;
|
|
|
|
foreach ($data['networks']->result() AS $row) {
|
|
$number_geolocalisation[$count] = $this->user_model->getPointGeolocalised($row->id, $data['agent']->first_row()->lastname);
|
|
$network_geolocalisation[$count] = $row->name;
|
|
$count++;
|
|
}
|
|
$data['current_agent'] = $data['agent']->first_row()->lastname;
|
|
$data["number_geolocalisation"] = $number_geolocalisation;
|
|
$data["network_geolocalisation"] = $network_geolocalisation;
|
|
$data["total"] = $count;
|
|
$data['assigned_networks'] = $this->user_model->getAllAssignedNetworks();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_geolocalisation');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function infos_geolocalisation()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$pays = $this->input->post('pays');
|
|
$ville = $this->input->post('ville');
|
|
$lastname = $this->input->post('agent');
|
|
|
|
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['villes'] = $this->user_model->getVillesByPays($data['pays']->first_row()->id);
|
|
$data['active_ville_name'] = $data['villes']->first_row()->name;
|
|
$data['active_ville_id'] = $data['villes']->first_row()->id;
|
|
$data['agent'] = $this->user_model->getAgentsFromCountry($data['pays']->first_row()->id);
|
|
$data['networks'] = $this->user_model->getNetworks($pays);
|
|
$data['alert'] = "";
|
|
$data['active'] = "geoloc";
|
|
$number_geolocalisation = array();
|
|
$network_geolocalisation = array();
|
|
$count = 0;
|
|
|
|
foreach ($data['networks']->result() AS $row) {
|
|
$number_geolocalisation[$count] = $this->user_model->getPointGeolocalised($row->id, $lastname);
|
|
$network_geolocalisation[$count] = $row->name;
|
|
$count++;
|
|
}
|
|
$data['current_agent'] = $lastname;
|
|
$data["number_geolocalisation"] = $number_geolocalisation;
|
|
$data["network_geolocalisation"] = $network_geolocalisation;
|
|
$data["total"] = $count;
|
|
$data['assigned_networks'] = $this->user_model->getAllAssignedNetworks();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_geolocalisation');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
}
|
|
|
|
public function getVilleByPays()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
|
|
redirect('index.php', $data);
|
|
} else {
|
|
|
|
if ($this->input->is_ajax_request()) {
|
|
$ajaxhyp = $this->user_model->getVillesByPays($this->input->post('pays'));
|
|
echo json_encode($ajaxhyp->result_array());
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
public function getAgentByVilles()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
|
|
redirect('index.php', $data);
|
|
} else {
|
|
|
|
if ($this->input->is_ajax_request()) {
|
|
$ajaxhyp = $this->user_model->getAgentsFromCountry($this->input->post('id_country'));
|
|
echo json_encode($ajaxhyp->result_array());
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
public function campagne()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$debut = date('Y-m-d H:i:s', strtotime($this->user_model->getMostOldDateCreationAgent()));
|
|
$fin = date("Y-m-d H:i:s");
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$pays = $data['pays']->first_row()->id;
|
|
if (!empty($_POST)) {
|
|
$debut = $this->input->post('date-debut');
|
|
$fin = $this->input->post('date-fin');
|
|
$pays = $this->input->post('pays');
|
|
}
|
|
|
|
$data['debut'] = $debut;
|
|
$data['fin'] = $fin;
|
|
$data['villes'] = $this->user_model->getVillesByPays($data['pays']->first_row()->id);
|
|
$data['active_ville_name'] = $data['villes']->first_row()->name;
|
|
$data['active_ville_id'] = $data['villes']->first_row()->id;
|
|
$data['agent'] = $this->user_model->getAgentsFromCountry($pays);
|
|
$data['networks'] = $this->user_model->getNetworks($pays);
|
|
$data['alert'] = "";
|
|
$data['active'] = "campagne";
|
|
$agent[][] = null;
|
|
$geo_correct[][] = null;
|
|
$number_geolocalisation [][] = null;
|
|
$network_geolocalisation [][] = null;
|
|
$number_correct [][] = null;
|
|
$count = 0;
|
|
$countA = 0;
|
|
$total = 0;
|
|
$network_count = 0;
|
|
$total_physique = 0;
|
|
$contact_correct = 0;
|
|
|
|
$networks_compte[] = null;
|
|
$networks_name[] = null;
|
|
|
|
if ($data['agent'] != false) {
|
|
foreach ($data['agent']->result() AS $row1) {
|
|
if (!strstr($row1->lastname, "Super -") and !strstr($row1->lastname, "Airtel")) {
|
|
$totalGeo = 0;
|
|
$totalGeoCorrect = 0;
|
|
$agent[$countA][0] = $row1->lastname;
|
|
foreach ($data['networks']->result() AS $row2) {
|
|
$number_geolocalisation [$countA][$count] = $this->user_model->getPointGeolocalisedByDate($row2->id, $row1->lastname, $debut, $fin);
|
|
$number_correct [$countA][$count] = $this->user_model->getCorrectPointGeolocalisedByDate($row2->id, $row1->lastname, $debut, $fin);
|
|
$network_geolocalisation [$countA][$count] = $row2->name;
|
|
$totalGeo = $totalGeo + $number_geolocalisation [$countA][$count];
|
|
$totalGeoCorrect = $totalGeoCorrect + $number_correct [$countA][$count];
|
|
$count++;
|
|
}
|
|
$agent[$countA][1] = $totalGeo;
|
|
$agent[$countA][2] = $this->user_model->getPhysicalPointBySupervisor($debut, $fin, $row1->lastname);
|
|
$total_physique = $total_physique + $agent[$countA][2];
|
|
$geo_correct [$countA][1] = $totalGeoCorrect;
|
|
$total = $total + $totalGeo;
|
|
$contact_correct = $contact_correct + $totalGeoCorrect;
|
|
$countA++;
|
|
}
|
|
}
|
|
}
|
|
|
|
foreach ($data['networks']->result() AS $row) {
|
|
$networks_compte[$network_count] = $this->user_model->getPointGeolocalisedByNetwork($row->id, $debut, $fin);
|
|
$networks_name[$network_count] = $row->name;
|
|
$network_count++;
|
|
}
|
|
$data["networks_compte"] = $networks_compte;
|
|
$data["networks_name"] = $networks_name;
|
|
$data["network_count"] = $network_count;
|
|
$data["total_physique"] = $total_physique;
|
|
$data['geo_correct'] = $geo_correct;
|
|
$data['contact_correct'] = $total;
|
|
if ($pays == 78) {
|
|
$data['contact_correct'] = $contact_correct;
|
|
}
|
|
$data["agents"] = $agent;
|
|
$data["total_points"] = $total;
|
|
$data["countA"] = $countA;
|
|
$data['current_agent'] = $data['agent']->first_row()->lastname;
|
|
$data["number_geolocalisation"] = $number_geolocalisation;
|
|
$data["network_geolocalisation"] = $network_geolocalisation;
|
|
$data["total"] = $count;
|
|
$data['assigned_networks'] = $this->user_model->getAllAssignedNetworks();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_campagne');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function redirect_info_agent()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_GET)) {
|
|
$lastname = $this->input->get('agent');
|
|
$debut = $this->input->get('debut');
|
|
$fin = $this->input->get('fin');
|
|
$id_country = $this->user_model->getAgentNetwork($lastname);
|
|
|
|
$data['pays'] = $this->user_model->getAllCountries();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['villes'] = $this->user_model->getVillesByPays($data['pays']->first_row()->id);
|
|
$data['active_ville_name'] = $data['villes']->first_row()->name;
|
|
$data['active_ville_id'] = $data['villes']->first_row()->id;
|
|
$data['agent'] = $this->user_model->getAgentsFromCountry($data['pays']->first_row()->id);
|
|
$data['networks'] = $this->user_model->getNetworks($id_country);
|
|
$data['alert'] = "";
|
|
$data['active'] = "geoloc";
|
|
$number_geolocalisation = array();
|
|
$network_geolocalisation = array();
|
|
$count = 0;
|
|
|
|
foreach ($data['networks']->result() AS $row) {
|
|
$number_geolocalisation[$count] = $this->user_model->getPointGeolocalisedByDate($row->id, $lastname, $debut, $fin);
|
|
$network_geolocalisation[$count] = $row->name;
|
|
$count++;
|
|
}
|
|
$data['current_agent'] = $lastname;
|
|
$data["number_geolocalisation"] = $number_geolocalisation;
|
|
$data["network_geolocalisation"] = $network_geolocalisation;
|
|
$data["total"] = $count;
|
|
$data['assigned_networks'] = $this->user_model->getAllAssignedNetworks();
|
|
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_geolocalisation');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
}
|
|
|
|
public function map()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
$data['positions'] = $this->user_model->getAllpositionsForWorld();
|
|
$data['latitude'] = 0;
|
|
$data['longitude'] = 0;
|
|
$data['lastname'] = $this->session->userdata('lastname');
|
|
$data['active'] = "map";
|
|
$data['code_parrain'] = $this->session->userdata('code_parrain');
|
|
$data['alert'] = "";
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_map');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function game()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
$pays = 1;
|
|
if (!empty($_POST)) {
|
|
$pays = $this->input->post('pays');
|
|
$pays_name = $this->user_model->getNameCountry($pays);
|
|
$this->session->set_userdata('current_game_country', $pays);
|
|
$this->session->set_userdata('current_game_country_name', $pays_name);
|
|
} elseif (!empty($this->session->userdata('current_game_country'))) {
|
|
$pays = $this->session->userdata('current_game_country');
|
|
$pays_name = $this->session->userdata('current_game_country_name');
|
|
}
|
|
$max = 999999;
|
|
$data['paliers'] = $this->user_model->getPaliers();
|
|
$data['pays'] = $this->user_model->getAllGameCountries();
|
|
$data['list'] = $this->user_model->getMembers($pays);
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['q1'] = $this->user_model->getQuota(1);
|
|
$data['q2'] = $this->user_model->getQuota(2);
|
|
$data['q3'] = $this->user_model->getQuota(3);
|
|
$data['q4'] = $this->user_model->getQuota(4);
|
|
$data['quota1'] = $this->user_model->getCoutForQuota($pays, $data['q1'], $data['q2']);
|
|
$data['quota2'] = $this->user_model->getCoutForQuota($pays, $data['q2'], $data['q3']);
|
|
$data['quota3'] = $this->user_model->getCoutForQuota($pays, $data['q3'], $data['q4']);
|
|
$data['quota4'] = $this->user_model->getCoutForQuota($pays, $data['q4'], $max);
|
|
$data['lastname'] = $this->session->userdata('lastname');
|
|
$data['active'] = "game";
|
|
$data['code_parrain'] = $this->session->userdata('code_parrain');
|
|
$data['alert'] = "";
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('game');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function activerGame()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$pays = $this->input->post('pays');
|
|
$max = sizeof($pays);
|
|
$number_success = 0;
|
|
for ($i = 0; $i < $max; $i++) {
|
|
$checkContryExist = $this->user_model->checkCountryGameExist($pays[$i]);
|
|
if ($checkContryExist == true) {
|
|
$res = $this->user_model->activeGameOnCountry($pays[$i], 1);
|
|
} else {
|
|
$add = $this->user_model->addContryToGame($pays[$i]);
|
|
if ($add == true) {
|
|
$res = $this->user_model->activeGameOnCountry($pays[$i], 1);
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
if ($res == true) {
|
|
$number_success++;
|
|
}
|
|
}
|
|
if ($number_success == $max) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function desactiverGame()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$pays = $this->input->post('pays');
|
|
$max = sizeof($pays);
|
|
$number_success = 0;
|
|
for ($i = 0; $i < $max; $i++) {
|
|
$res = $this->user_model->activeGameOnCountry($pays[$i], 0);
|
|
if ($res == true) {
|
|
$number_success++;
|
|
}
|
|
}
|
|
if ($number_success == $max) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function activer_desactiverGame()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first !";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$apays = $this->input->post('apays');
|
|
$maxA = sizeof($apays);
|
|
$number_successA = 0;
|
|
|
|
$dpays = $this->input->post('dpays');
|
|
$maxD = sizeof($dpays);
|
|
$number_successD = 0;
|
|
|
|
$this->db->trans_begin();
|
|
for ($i = 0; $i < $maxD; $i++) {
|
|
$res = $this->user_model->activeGameOnCountry($dpays[$i], 0);
|
|
if ($res == true) {
|
|
$number_successD++;
|
|
}
|
|
}
|
|
for ($i = 0; $i < $maxA; $i++) {
|
|
|
|
$checkContryExist = $this->user_model->checkCountryGameExist($apays[$i]);
|
|
if ($checkContryExist == true) {
|
|
$res = $this->user_model->activeGameOnCountry($apays[$i], 1);
|
|
} else {
|
|
$add = $this->user_model->addContryToGame($apays[$i]);
|
|
if ($add == true) {
|
|
$res = $this->user_model->activeGameOnCountry($apays[$i], 1);
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
if ($res == true) {
|
|
$number_successA++;
|
|
}
|
|
}
|
|
|
|
if ($this->db->trans_status() === FALSE) {
|
|
$this->db->trans_rollback();
|
|
echo json_encode("error");
|
|
} else {
|
|
$this->db->trans_commit();
|
|
echo json_encode("completed");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function modifierPalier()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$n1 = $this->input->post('n1');
|
|
$n2 = $this->input->post('n2');
|
|
$n3 = $this->input->post('n3');
|
|
$n4 = $this->input->post('n4');
|
|
$max = 4;
|
|
$number_success = 0;
|
|
|
|
$res1 = $this->user_model->modifPalier($n1, 1);
|
|
if ($res1 == true) {
|
|
$number_success++;
|
|
$res2 = $this->user_model->modifPalier($n2, 2);
|
|
if ($res2 == true) {
|
|
$number_success++;
|
|
$res3 = $this->user_model->modifPalier($n3, 3);
|
|
if ($res3) {
|
|
$number_success++;
|
|
$res4 = $this->user_model->modifPalier($n4, 4);
|
|
if ($res4 == true) {
|
|
$number_success++;
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
|
|
if ($number_success == $max) {
|
|
echo json_encode("completed");
|
|
} else {
|
|
echo json_encode("error");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function change_country()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first !";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$pays = $this->input->post('pays');
|
|
$pays_name = $this->user_model->getNameCountry($pays);
|
|
if ($pays_name != false) {
|
|
$this->session->set_userdata('current_game_country', $pays);
|
|
$this->session->set_userdata('current_game_country_name', $pays_name);
|
|
echo 1;
|
|
} else {
|
|
echo 0;
|
|
}
|
|
} else {
|
|
echo 0;
|
|
}
|
|
}
|
|
}
|
|
|
|
public function recherche()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['alert'] = "";
|
|
$data['active'] = "recherche";
|
|
$data['result_search'] = 0;
|
|
$data['default_phone'] = '';
|
|
$data['default_transac'] = '';
|
|
$data['default_code'] = '';
|
|
$data['default_nom'] = '';
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['networks'] = $this->user_model->getActiveNetwork();
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_recherche');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function get_user()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if (isset($_POST)) {
|
|
$nom = $this->input->post('nom');
|
|
|
|
$phone = $this->input->post('phone');
|
|
$simple_users = null;
|
|
if ($phone != '' && $nom != '') {
|
|
$phone_condition = "phone LIKE '" . $phone . "%'";
|
|
$nom_condition = "AND lastname LIKE '%" . $nom . "%'";
|
|
$simple_users = $this->user_model->get_simple_user($phone, $nom);
|
|
} elseif ($phone != '' && $nom == '') {
|
|
$phone_condition = "phone LIKE '" . $phone . "%'";
|
|
$nom_condition = 'AND lastname IS NOT NULL';
|
|
$simple_users = $this->user_model->get_simple_user($phone, '%');
|
|
} elseif ($phone == '' && $nom != '') {
|
|
$phone_condition = 'phone IS NOT NULL';
|
|
$nom_condition = "AND lastname LIKE '%" . $nom . "%'";
|
|
$simple_users = $this->user_model->get_simple_user('%', $nom);
|
|
} elseif ($phone == '' && $nom == '') {
|
|
$phone_condition = 'phone IS NOT NULL';
|
|
$nom_condition = 'AND lastname IS NOT NULL';
|
|
}
|
|
|
|
$transac = $this->input->post('transac');
|
|
if ($transac != '') {
|
|
$transac_condition = "AND transactionNumber LIKE'" . $transac . "%'";
|
|
} else {
|
|
$transac_condition = 'AND transactionNumber IS NOT NULL';
|
|
}
|
|
$code = $this->input->post('code');
|
|
if ($code != '') {
|
|
$code_condition = "AND code_membre = '" . $code . "'";
|
|
} else {
|
|
$code_condition = 'AND code_membre IS NOT NULL';
|
|
}
|
|
|
|
$where_clause = "WHERE " . $phone_condition . ' ' . $transac_condition . ' ' . $code_condition . ' ' . $nom_condition;
|
|
|
|
$res = $this->user_model->get_user($where_clause);
|
|
|
|
if ($res != false) {
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
$count_users = $res->num_rows();
|
|
if ($simple_users != null) {
|
|
$count_users = $res->num_rows() + $simple_users->num_rows();
|
|
}
|
|
|
|
$data['alert'] = "";
|
|
$data['active'] = "recherche";
|
|
$data['result_search'] = 1;
|
|
$data['res_users'] = $res;
|
|
$data['res_simple_users'] = $simple_users;
|
|
$data['num_res'] = $count_users;
|
|
$data['default_phone'] = $phone;
|
|
$data['default_nom'] = $nom;
|
|
$data['default_transac'] = $transac;
|
|
$data['default_code'] = $code;
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['networks'] = $this->user_model->getActiveNetwork();
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_recherche');
|
|
$this->load->view('footer');
|
|
} else {
|
|
$ville = $this->session->userdata('current_ville');
|
|
$hyper = $this->session->userdata('current_hyper');
|
|
$pays = $this->session->userdata('current_pays');
|
|
|
|
$data['alert'] = "";
|
|
$data['active'] = "recherche";
|
|
$data['result_search'] = 2;
|
|
$data['res_simple_users'] = $simple_users;
|
|
$data['default_phone'] = '';
|
|
$data['default_transac'] = '';
|
|
$data['default_code'] = '';
|
|
$data['default_nom'] = '';
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['networks'] = $this->user_model->getActiveNetwork();
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_recherche');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
public function update_info_user()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
if (isset($_POST)) {
|
|
$id = $_POST['user_id'];
|
|
$phone = $_POST['contact'];
|
|
$adresse = $_POST['adresse'];
|
|
$email = $_POST['email'];
|
|
$nom = $_POST['nom'];
|
|
$res = $this->user_model->update_user_infos($nom, $adresse, $email, $phone, $id);
|
|
if ($res != false) {
|
|
echo json_encode("200");
|
|
} else {
|
|
echo json_encode("500");
|
|
}
|
|
} else {
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
public function update_info_geolocated()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
if (isset($_POST)) {
|
|
$id_agent = $_POST['user_id'];
|
|
$id_netAg = $_POST['id_netAg'];
|
|
$phone = $_POST['contact'];
|
|
$transac = $_POST['transac'];
|
|
$adresse = $_POST['adresse'];
|
|
$email = $_POST['email'];
|
|
$nom = $_POST['nom'];
|
|
$res = $this->user_model->update_geolocated_infos($nom, $adresse, $email, $id_agent, $transac, $phone, $id_netAg);
|
|
if ($res != false) {
|
|
echo json_encode("200");
|
|
} else {
|
|
echo json_encode("500");
|
|
}
|
|
} else {
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
public function pub()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
$data['countries_list'] = $this->user_model->getPubCountries();
|
|
$data['active'] = "pub";
|
|
$data['alert'] = "";
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['networks'] = $this->user_model->getActiveNetwork();
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_publicite');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
|
|
public function changePubState()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
if (isset($_POST)) {
|
|
$id_pub = $_POST['pub_id'];
|
|
$etat = $_POST['etat'];
|
|
if ($etat == 0) {
|
|
$res = $this->user_model->updateStatePub($id_pub, 1);
|
|
} elseif ($etat == 1) {
|
|
$res = $this->user_model->updateStatePub($id_pub, 0);
|
|
}
|
|
if ($res != false) {
|
|
echo json_encode("200");
|
|
} else {
|
|
echo json_encode("500");
|
|
}
|
|
} else {
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
public function addPubRow()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
if (isset($_POST)) {
|
|
$id_country = $_POST['country_id'];
|
|
$res = $this->user_model->createPubRow($id_country);
|
|
if ($res != false) {
|
|
echo json_encode("200");
|
|
} else {
|
|
echo json_encode("500");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Wallet
|
|
|
|
public function wallet()
|
|
{
|
|
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
} else {
|
|
|
|
if ($this->input->get('id')) {
|
|
|
|
$network_id = $this->input->get('id');
|
|
if($this->input->get('history')){
|
|
$this->historique($network_id,$this->input->get('d'),$this->input->get('f'),$this->input->get('history'));
|
|
}else{
|
|
$taux = $this->user_model->getTaux($network_id);
|
|
if ($taux != null) {
|
|
$taux = $taux->first_row();
|
|
$data['taux_client_r'] = $taux->taux_com_client_retrait;
|
|
$data['taux_client_d'] = $taux->taux_com_client_depot;
|
|
$data['taux_ag_r'] = $taux->taux_com_ag_retrait;
|
|
$data['taux_ag_d'] = $taux->taux_com_ag_depot;
|
|
$data['taux_sup_r'] = $taux->taux_com_sup_retrait;
|
|
$data['taux_sup_d'] = $taux->taux_com_sup_depot;
|
|
$data['taux_bq_d'] = $taux->part_banque_depot;
|
|
$data['taux_bq_r'] = $taux->part_banque_retrait;
|
|
$data['frais_d'] = $taux->frais_min_banque_depot;
|
|
$data['transactions'] = $this->user_model->getTransactions(null,null,$network_id);
|
|
$totalCommissionBanque = 0;
|
|
if($data['transactions']){
|
|
foreach ($data['transactions']->result() as $row) {
|
|
$totalCommissionBanque += $row->commission_banque;
|
|
}
|
|
}
|
|
$data['totalCommissionBanque'] = $totalCommissionBanque ;
|
|
} else {
|
|
|
|
$data["taux_client_r"] = "N/A";
|
|
$data["taux_client_d"] = "N/A";
|
|
$data["taux_ag_r"] = "N/A";
|
|
$data["taux_ag_d"] = "N/A";
|
|
$data["taux_sup_r"] = "N/A";
|
|
$data["taux_sup_d"] = "N/A";
|
|
$data['taux_bq_d'] = "N/A";
|
|
$data['taux_bq_r'] = "N/A";
|
|
$data['frais_d'] = "N/A";
|
|
$data['totalCommissionBanque'] = "N/A";
|
|
$data["transactions"] = false;
|
|
}
|
|
|
|
$hyper = $this->user_model->getNetworkHyper($network_id)->first_row();
|
|
$data['walletHyper'] = $this->user_model->getWallet($hyper->agent_id);
|
|
$data['network_id'] = $network_id;
|
|
$networkDetails = $this->user_model->getNetworkDetails($network_id);
|
|
if($networkDetails){
|
|
$data['network'] = $networkDetails->first_row()->network;
|
|
$data['country'] = $networkDetails->first_row()->country;
|
|
}
|
|
// $data['agentWalletInfos'] = $this->user_model->getInfosWalletAgentForHyper($network_id);
|
|
$data['active'] = "wallet";
|
|
$data['alert'] = "";
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['networks'] = $this->user_model->getActiveNetwork();
|
|
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_wallet');
|
|
$this->load->view('footer');
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
$data['active'] = "wallet";
|
|
$data['alert'] = "";
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$data['networks'] = $this->user_model->getAllActivatedNetworks();
|
|
$this->load->view('header_gestion', $data);
|
|
$this->load->view('gestion_wallets');
|
|
$this->load->view('footer');
|
|
}
|
|
}
|
|
}
|
|
|
|
public function config_wallet($method = 'create')
|
|
{
|
|
if($this->isLogged()){
|
|
if (isset($_POST)) {
|
|
|
|
$network_id = $_POST['network_id'];
|
|
if($method == 'create')
|
|
{
|
|
$res = $this->user_model->addConfigWallet($network_id , 0 , 0, 0 ,0 , 0, 0, 0 , 0 , 0);
|
|
// if($res)
|
|
// $this->generateAllWallets($network_id);
|
|
|
|
}
|
|
else if($method = 'update'){
|
|
|
|
$taux_client_r = $_POST['taux_client_r'];
|
|
$taux_client_d = $_POST['taux_client_d'];
|
|
$taux_ag_d = $_POST['taux_ag_d'];
|
|
$taux_ag_r = $_POST['taux_ag_r'];
|
|
$taux_sup_d = $_POST['taux_sup_d'];
|
|
$taux_sup_r = $_POST['taux_sup_r'];
|
|
$taux_bq_d = $_POST['taux_bq_d'];
|
|
$taux_bq_r = $_POST['taux_bq_r'];
|
|
$frais_d = $_POST['frais_d'];
|
|
|
|
$res = $this->user_model->updateConfigWallet($network_id , $taux_client_r , $taux_client_d , $taux_ag_r ,$taux_ag_d , $taux_sup_r , $taux_sup_d, $taux_bq_r , $taux_bq_d , $frais_d);
|
|
|
|
}
|
|
if ($res != false) {
|
|
echo json_encode("200");
|
|
} else {
|
|
echo json_encode("500");
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
public function delete_config_wallet()
|
|
{
|
|
if($this->isLogged()){
|
|
if (isset($_POST)) {
|
|
$network_id = $_POST['network_id'];
|
|
$res = $this->user_model->deleteConfigWallet($network_id);
|
|
if ($res != false) {
|
|
echo json_encode("200");
|
|
} else {
|
|
echo json_encode("500");
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|
|
private function isLogged()
|
|
{
|
|
if (!$this->session->userdata('email')) {
|
|
$this->session->set_flashdata('error', 'log in first');
|
|
|
|
$data['alert'] = "ok";
|
|
$data['message'] = "Login first!";
|
|
$this->load->view('login', $data);
|
|
return false;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
public function generateAllWallets(){
|
|
// Asynchrous method
|
|
|
|
$network_id = $_POST['network_id'];
|
|
$pool = Pool::create();
|
|
$pool->add(function () use ($network_id) {
|
|
// Fetch all agents , hyperviseur , superviseur
|
|
$f_agents = $this->user_model->getAllAgentsForNetwork($network_id) ;
|
|
if ($f_agents){
|
|
foreach($f_agents->result() AS $row){
|
|
//Create wallet if it not exist
|
|
$res = $this->user_model->getWallet($row->agent_id);
|
|
if($res){
|
|
// Reinitialize the wallet
|
|
// $this->user_model->reinitializeWallet($res->first_row()->wallet_id);
|
|
}else{
|
|
$this->user_model->addWallet($row->agent_id);
|
|
}
|
|
}
|
|
}
|
|
})->then(function () {
|
|
|
|
});
|
|
await($pool);
|
|
}
|
|
|
|
private function historique($network_id ,$startDate ,$endDate, $type)
|
|
{
|
|
|
|
|
|
$format = $this->session->userdata('site_lang') === 'french' ? 'd-m-Y' : 'Y-m-d' ;
|
|
$data['startDate'] = $startDate ? date($format, strtotime($startDate)) : null ;
|
|
$data['endDate'] = $endDate ?date($format, strtotime($endDate)): null ;
|
|
$endDate = Date('Y-m-d', strtotime($endDate."+1 day"));
|
|
if($type == 'transaction')
|
|
$data['transactions'] = $this->user_model->getTransactions($startDate , $endDate ,$network_id);
|
|
else
|
|
$data['transactions'] = $this->user_model->getRecharges($startDate , $endDate ,$network_id);
|
|
|
|
$data['active'] = "wallet";
|
|
$data['alert'] = "";
|
|
$data['networks'] = $this->user_model->getAllActivatedNetworks();
|
|
$data['game_pays'] = $this->user_model->getGameCountry();
|
|
$networkDetails = $this->user_model->getNetworkDetails($network_id);
|
|
if($networkDetails){
|
|
$data['network'] = $networkDetails->first_row()->network;
|
|
$data['country'] = $networkDetails->first_row()->country;
|
|
}
|
|
$this->load->view('header_gestion', $data);
|
|
if($type == 'transaction')
|
|
$this->load->view('historique_transactions');
|
|
else
|
|
$this->load->view('historique_recharges');
|
|
$this->load->view('footer');
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|