load->model('wallet_model'); $this->load->model('nano_credit_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!"; redirect('index.php', $data); } else { $count_g = $this->User_model->geolocatedCountByParrain($this->session->userdata('member_code')); $count_d = $this->User_model->getCountDemande($this->session->userdata('member_code')); $count_d_traite = $this->User_model->getCountDemandeByStatut($this->session->userdata('member_code'),1); $count_d_no_traite = $this->User_model->getCountDemandeByStatut($this->session->userdata('member_code'),0); $data['list_geolocated_users'] = $this->user_model->getUsersGeolocatedForSup($this->session->userdata('member_code')); $data['active'] = "dash"; $data['token'] = $this->session->userdata('token'); $data['email'] = $this->session->userdata('email'); $data['firstname'] = $this->session->userdata('firstname'); $data['lastname'] = $this->session->userdata('lastname'); $data['member_code'] = $this->session->userdata('member_code'); $data['phone'] = $this->session->userdata('phone'); $data['adresse'] = $this->session->userdata('adresse'); $data['category'] = $this->session->userdata('category'); $data['network'] = $this->session->userdata('network'); $data['code_parrain'] = $this->session->userdata('parrain'); $data['listdem'] = $this->user_model->getAllDemandesForSuper($this->session->userdata('member_code')); $data['geolocated_user'] = $this->user_model->getSuperNameAndCodeForSup($this->session->userdata('member_code')); $data['count_g_users'] = $count_g; $data['count_d_users'] = $count_d; $data['count_d_traite'] = $count_d_traite; $data['count_d_no_traite'] = $count_d_no_traite; $data['hasWallet'] = $this->wallet_model->getConfigWallet($this->session->userdata('network_id')); $this->load->view('header_sup', $data); $this->load->view('superviseur_dash'); $this->load->view('footer'); } } /** * Affiche la table des points agents du superviseur */ public function getAllUser_g(){ 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 { $position = $this->user_model->getAllpositions($this->session->userdata('network'),'geolocated',$this->session->userdata('member_code')); $data['active'] = "geolocated"; $data['positions']= $position; $numberGeo = $this->user_model->getNumberGeoBySuper($this->session->userdata('member_code')); if($numberGeo!=false){ $data['numberGeo'] = $numberGeo; }else{ $data['numberGeo'] = ""; } $data['map_title'] = $this->lang->line('Utilisateurs géolocalisés'); $data['total_points'] = $this->user_model->getCoutGeolocatedUsersForSuper($this->session->userdata('member_code')); $data['tab'] = $this->user_model->getUsersGeolocatedForSup($this->session->userdata('member_code')); $data['latitude'] = $this->session->userdata('latitude'); $data['longitude'] = $this->session->userdata('longitude'); $data['token'] = $this->session->userdata('token'); $data['email'] = $this->session->userdata('email'); $data['firstname'] = $this->session->userdata('firstname'); $data['lastname'] = $this->session->userdata('lastname'); $data['code_parrain'] = $this->session->userdata('code_parrain'); $data['phone'] = $this->session->userdata('phone'); $data['adresse'] = $this->session->userdata('adresse'); $data['category'] = $this->session->userdata('category'); $data['network'] = $this->session->userdata('network'); $data['geolocated_user'] = $this->user_model->getSuperNameAndCodeForSup($this->session->userdata('member_code')); $data['alert'] = ""; $data['hasWallet'] = $this->wallet_model->getConfigWallet($this->session->userdata('network_id')); $this->load->view('header_sup', $data); $this->load->view('listeadmin'); $this->load->view('footer'); } } /** * Affiche les demandes de credits */ public function getDemandes(){ 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 { $type = $this->input->get("type"); $data['type'] = $type; $debut = $this->input->get("d"); $fin = $this->input->get("f"); $format = $this->session->userdata('site_lang') === 'french' ? 'd-m-Y' : 'Y-m-d'; $data['debut'] = $debut ? date($format, strtotime($debut)) : null; $data['fin'] = $fin ? date($format, strtotime($fin)) : null; $fin = Date('Y-m-d', strtotime($fin . "+1 day")); // Increment date because SQL BETWEEN $network = $this->session->userdata('network'); // $data['type'] = $this->lang->line('crédits'); $data['demand_type'] = 'credit'; $data['alert'] = ""; $data['token'] = $this->session->userdata('token'); $data['email'] = $this->session->userdata('email'); $data['firstname'] = $this->session->userdata('firstname'); $data['lastname'] = $this->session->userdata('lastname'); $data['code_parrain'] = $this->session->userdata('code_parrain'); $data['phone'] = $this->session->userdata('phone'); $data['adresse'] = $this->session->userdata('adresse'); $data['category'] = $this->session->userdata('category'); $data['network'] = $this->session->userdata('network'); if ($type == 'incoming') { $data['active'] = "demandes_credits_entrantes"; $data['tab_fastDemande'] = $this->user_model->getRangeASCDemandes($debut, $fin, $this->session->userdata('member_code')); $data['tab_slowDemande'] = $this->user_model->getRangeDESCDemandes($debut, $fin, $this->session->userdata('member_code')); $data['temp_moyen'] = $this->user_model->getTempsMoyen($debut, $fin, $this->session->userdata('member_code')); $data['list'] = $this->user_model->getDemandesForSuper($debut, $fin, $this->session->userdata('member_code')); } else if ($type = 'outgoing') { $data['active'] = "demandes_credits_sortantes"; $data['tab_fastDemande_s'] = $this->user_model->getRangeASCDemandesOut($debut, $fin, $this->session->userdata('member_code')); $data['tab_slowDemande_s'] = $this->user_model->getRangeDESCDemandesOut($debut, $fin, $this->session->userdata('member_code')); $data['mydem'] = $this->user_model->getDemandesHyperForSuper($debut, $fin, $this->session->userdata('member_code')); $data['temp_moyen_mine'] = $this->user_model->getTempsMoyenDemandeSup($this->session->userdata('member_code')); } $data['geolocated_user'] = $this->user_model->getSuperNameAndCodeForSup($this->session->userdata('member_code')); $data['hasWallet'] = $this->wallet_model->getConfigWallet($this->session->userdata('network_id')); $this->load->view('header_sup', $data); $this->load->view('demande_credit'); $this->load->view('footer'); } } /** * Afficher les demandes d'adhesion */ public function getDemandesAd(){ 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 { $network = $this->session->userdata('network'); $debut = $this->input->get("d"); $fin = $this->input->get("f"); $format = $this->session->userdata('site_lang') === 'french' ? 'd-m-Y' : 'Y-m-d' ; $data['debut'] = $debut ? date($format, strtotime($debut)) : null ; $data['fin'] = $fin ?date($format, strtotime($fin)): null ; $data['active'] = "demandesAd"; $data['alert'] = ""; $data['demand_type'] = 'adhesion'; $data['token'] = $this->session->userdata('token'); $data['email'] = $this->session->userdata('email'); $data['firstname'] = $this->session->userdata('firstname'); $data['lastname'] = $this->session->userdata('lastname'); $data['code_parrain'] = $this->session->userdata('code_parrain'); $data['phone'] = $this->session->userdata('phone'); $data['adresse'] = $this->session->userdata('adresse'); $data['category'] = $this->session->userdata('category'); $data['network'] = $this->session->userdata('network'); $data['tab_fastDemande'] = $this->user_model->getRangeASCDemandesAd($debut, $fin ,$this->session->userdata('member_code')); $data['tab_slowDemande'] = $this->user_model->getRangeDESCDemandesAd($debut, $fin ,$this->session->userdata('member_code')); $data['mydem'] = $this->user_model->getDemandesHyperForSuper($this->session->userdata('member_code')); $data['temp_moyen'] = $this->user_model->getTempsMoyenAd($debut, $fin ,$this->session->userdata('member_code')); $data['list'] = $this->user_model->getDemandesAdForSuper($debut, $fin ,$this->session->userdata('member_code')); $data['type'] = $this->lang->line('Adhésion'); $data['hasWallet'] = $this->wallet_model->getConfigWallet($this->session->userdata('network_id')); $data['geolocated_user'] = $this->user_model->getSuperNameAndCodeForSup($this->session->userdata('member_code')); $this->load->view('header_sup', $data); $this->load->view('demande_adhesion'); $this->load->view('footer'); } } // 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 { $id_network = $this->session->userdata('network_id'); $data["commission"] = ""; $data["principal"] = ""; $data["transactions"] = ""; $agent_id = $this->session->userdata('agent_id'); $data['hasWallet'] = $this->wallet_model->getConfigWallet($this->session->userdata('network_id')); if ($this->input->get('history')) { $this->historique($id_network, $this->input->get('d'), $this->input->get('f'), $this->session->userdata('member_code'), $this->input->get('history')); } else { $context = new AutoContext(); //Create wallet if it not exist $res = $this->user_model->getWallet($agent_id ); if($res == false){ if($data['hasWallet']){ $this->user_model->addWallet($agent_id ); } } $res = $this->user_model->getWallet($agent_id); if ($res!=null){ $row = $res->first_row(); $data["commission"] = Money::of(round($row->balance_com,2), $this->session->userdata('currency_code'),$context)->formatTo('fr_FR'); $data["principal"] = Money::of(round($row->balance_princ,2), $this->session->userdata('currency_code'),$context)->formatTo('fr_FR'); $agents_g = $this->user_model->getUsersGeolocatedForSup($this->session->userdata('member_code')); $data['agents_g'] = $agents_g; //Fetch all transactions of any geolocated agent of the network $data["transactions"] = array(); if($agents_g){ foreach($agents_g->result() AS $row){ $wallet = $this->user_model->getWallet($row->agent_id); if($wallet){ if ($data['hasWallet']->first_row()->type == 'visa') { $transactions = $this->user_model->getAgentTransactions($wallet->first_row()->wallet_id); } elseif ($data['hasWallet']->first_row()->type == 'ilink') { $transactions = $this->user_model->getAgentiLinkTransactions($wallet->first_row()->wallet_id); } if($transactions){ foreach($transactions->result() AS $trans){ $trans->agent_id = $row->agent_id ; // Add agent id to transaction array_push( $data['transactions'], $trans); } } } } } }else{ $data["commission"] = "N/A"; $data["principal"] = "N/A"; $data["totalCommissionBanque"] = "N/A"; $data["transactions"] = false; } $data['currency_code'] = $this->session->userdata('currency_code'); $data['alert'] = ""; $data['active'] = "wallet"; $data['token'] = $this->session->userdata('token'); $data['email'] = $this->session->userdata('email'); $data['firstname'] = $this->session->userdata('firstname'); $data['lastname'] = $this->session->userdata('lastname'); $data['code_parrain'] = $this->session->userdata('code_parrain'); $data['phone'] = $this->session->userdata('phone'); $data['adresse'] = $this->session->userdata('adresse'); $data['category'] = $this->session->userdata('category'); $data['network'] = $this->session->userdata('network'); $data['network_id'] = $id_network; $data['villes'] = $this->user_model->getVilleByUserGeo($data['network'],$this->session->userdata('current_pays')); $data['pays'] = $this->user_model->getAllGameCountries(); $data['networks'] = $this->user_model->getActiveNetwork(); $data['agentWalletInfos'] = $this->user_model->getInfosWalletAgentForHyper($id_network); $data['geolocated_user'] = $this->user_model->getSuperNameAndCodeForSup($this->session->userdata('member_code')); $this->load->view('header_sup',$data); if ($data['hasWallet']->first_row()->type == 'visa') $this->load->view('gestion_wallet_sup'); elseif ($data['hasWallet']->first_row()->type == 'ilink') $this->load->view('gestion_wallet_sup_ilink'); $this->load->view('footer'); } } } private function historique($network_id, $startDate, $endDate, $codeMembre, $type) { $data['configWallet'] = $this->wallet_model->getConfigWallet($network_id); $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->getTransactionsSup($startDate, $endDate, $codeMembre); else if ($type == 'transaction_ilink') $data['transactions'] = $this->user_model->getIlinkTransactionsSup($startDate, $endDate, $codeMembre); else if ($type == 'commission_transfer') $data['transactions'] = $this->user_model->getCommissionTransfers($startDate, $endDate, $this->session->userdata('member_code')); else if ($type == 'balance_statement') $data['wallets'] = $this->user_model->getInfosWalletAgentForSuper($codeMembre); $data['active'] = "wallet"; $data['alert'] = ""; $data['firstname'] = $this->session->userdata('firstname'); $data['lastname'] = $this->session->userdata('lastname'); $data['email'] = $this->session->userdata('email'); $data['network'] = $this->session->userdata('network'); $data['villes'] = $this->user_model->getVilleByUserGeo($data['network'], $this->session->userdata('current_pays')); $data['networks'] = $this->user_model->getActiveNetwork(); $data['superviseurs'] = $this->user_model->getSuperNameAndCodeForHyp($this->session->userdata('member_code')); $data['hasWallet'] = $this->wallet_model->getConfigWallet($this->session->userdata('network_id')); $data['country'] = $this->session->userdata('current_pays'); $data['category'] = $this->session->userdata('category'); $data['geolocated_user'] = $this->user_model->getSuperNameAndCodeForSup($this->session->userdata('member_code')); $this->load->view('header_sup', $data); if ($type == 'transaction') $this->load->view('historique_transactions'); else if ($type == 'transaction_ilink') $this->load->view('historique_transactions_ilink'); else if ($type == 'commission_transfer') $this->load->view('historique_transferts_commission'); else if ($type == 'balance_statement') $this->load->view('config_wallet_ilink_hyp/etat_soldes'); $this->load->view('footer'); } }