252 lines
13 KiB
PHP
252 lines
13 KiB
PHP
<?php
|
|
|
|
defined('BASEPATH') OR exit('No direct script access allowed');
|
|
|
|
class Bko_Controller extends WRB_Controller {
|
|
|
|
var $template = array(
|
|
'table_open' => "<table class='table table-striped table-hover table-bordered table-condensed'>",
|
|
'thead_open' => '<thead class=\'bg-indigo\'>',
|
|
'thead_close' => '</thead>',
|
|
'heading_row_start' => '<tr>',
|
|
'heading_row_end' => '</tr>',
|
|
'heading_cell_start' => '<th>',
|
|
'heading_cell_end' => '</th>',
|
|
'tbody_open' => '<tbody>',
|
|
'tbody_close' => '</tbody>',
|
|
'row_start' => '<tr>',
|
|
'row_end' => '</tr>',
|
|
'cell_start' => '<td>',
|
|
'cell_end' => '</td>',
|
|
'row_alt_start' => '<tr>',
|
|
'row_alt_end' => '</tr>',
|
|
'cell_alt_start' => '<td>',
|
|
'cell_alt_end' => '</td>',
|
|
'table_close' => '</table>'
|
|
);
|
|
|
|
public function PrepPagination($perpage, $urlSegment, $pagePath) {
|
|
//echo base_url();
|
|
$actual_link = (empty($_SERVER['HTTPS']) ? 'http' : 'https') . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
|
|
$base_url = (base_url() != '') ? base_url().$pagePath : $actual_link;
|
|
$config = array();
|
|
$config["base_url"] = $base_url; //base_url().$pagePath;
|
|
$config["per_page"] = $perpage;
|
|
$config["uri_segment"] = $urlSegment;
|
|
$config["num_links"] = 5;
|
|
$config['full_tag_open'] = "<ul class='pagination'>";
|
|
$config['full_tag_close'] = "</ul>";
|
|
$config['num_tag_open'] = '<li>';
|
|
$config['num_tag_close'] = '</li>';
|
|
$config['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>";
|
|
$config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";
|
|
$config['next_tag_open'] = "<li>";
|
|
$config['next_tagl_close'] = "</li>";
|
|
$config['prev_tag_open'] = "<li>";
|
|
$config['prev_tagl_close'] = "</li>";
|
|
$config['first_tag_open'] = "<li>";
|
|
$config['first_tagl_close'] = "</li>";
|
|
$config['last_tag_open'] = "<li>";
|
|
$config['last_tagl_close'] = "</li>";
|
|
|
|
return $config;
|
|
}
|
|
public $data = array();
|
|
|
|
function __construct() {
|
|
parent::__construct();
|
|
if (!isset($_SESSION['bko_username']) or $_SESSION['bko_username'] == '') {
|
|
redirect(home);
|
|
}
|
|
|
|
//print_r($_SESSION);
|
|
}
|
|
|
|
protected function secureBkoPage($pageName,$data){
|
|
|
|
$this->load->view('bko/view_bko_header', $data);
|
|
$this->load->view('bko/'.$pageName, $data);
|
|
$this->load->view('bko/view_bko_footer', $data);
|
|
}
|
|
// protected
|
|
|
|
// marketing_list
|
|
protected function bkoMarketingList()
|
|
{
|
|
$this->load->model('backend_model');
|
|
$is_live = $this->backend_model->cfgReadChar("system.live");
|
|
$data = array();
|
|
$this->load->library('table');
|
|
$this->table->set_template($this->template);
|
|
|
|
$this->table->set_template($this->template);
|
|
//$mysql = "SElECT added::date||'<br>'||loc AS dates,email||'<br>'||firstname||' '||lastname AS Name FROM members ORDER BY id DESC LIMIT 7";
|
|
|
|
$mysql = "SELECT email, lastname, firstname, phone, status, added::date,
|
|
'<div id=\"btu'||id||'\"><button id=\"acc'||uid||'\" class=\"btn btn-info btn-xs\" onclick=\"return resendLink('''||uid||''');\" >Resend</button></div>' AS SendInfo
|
|
FROM market_import ORDER BY status ASC";
|
|
$query = $this->db->query($mysql);
|
|
// $this->table->set_heading('Account', 'Created', 'Action');
|
|
// $this->table->set_heading(array('data' => 'Date/LOC', 'style' => 'width:140px'), 'Email/Name');
|
|
|
|
$data['marketing_list_table'] = $this->table->generate($query);
|
|
|
|
return $data;
|
|
}
|
|
protected function bkoDashData() {
|
|
|
|
$this->load->model('backend_model');
|
|
$is_live = $this->backend_model->cfgReadChar("system.live");
|
|
$data = array();
|
|
$this->load->library('table');
|
|
$this->table->set_template($this->template);
|
|
$mysql = "SELECT '<b>ADDED:</b>'||added::date||'<br><b>EXPIRE:</b>'||expire::date||'<br>'||username||'<br><b>Name:</b>'||firstname||' '||lastname AS signup, country,"
|
|
. " (CASE WHEN status=1 THEN '<div id=\"btu'||id||'\"><button id=\"acc'||id||'\" class=\"btn btn-info btn-xs\" onclick=\"return resendLink('''||id||''');\" >Resend</button></div>' ELSE ' ' END) AS action ,"
|
|
. " (CASE WHEN status=1 THEN '<div id=\"dtu'||id||'\"><button id=\"del'||id||'\" class=\"btn btn-warning btn-xs\" onclick=\"return deleteLink('''||id||''');\" >Del</button></div>' ELSE ' ' END) AS Del "
|
|
. " FROM members_pending WHERE expire> now() AND status = 1"
|
|
. " ORDER BY id desc limit 5";
|
|
$query = $this->db->query($mysql);
|
|
// $this->table->set_heading('Dates', 'Username', 'Name', 'Action');
|
|
$this->table->set_heading(array('data' => 'Date/Email/Name', 'style' => 'width:180px'),array('data' => 'Country', 'style' => 'width:20px; cellpadding:0px;'),
|
|
array('data' => 'RES', 'style' => 'width:20px; cellpadding:0px;'), array('data' => 'Del', 'style' => 'width:20px; cellpadding:0px;'));
|
|
|
|
$data['pending_dash_table'] = $this->table->generate($query);
|
|
|
|
$this->table->set_template($this->template);
|
|
$mysql = "SElECT added::date||'<br>'||loc AS dates,email||'<br>'||firstname||' '||lastname AS Name FROM members ORDER BY id DESC LIMIT 7";
|
|
$query = $this->db->query($mysql);
|
|
// $this->table->set_heading('Account', 'Created', 'Action');
|
|
$this->table->set_heading(array('data' => 'Date/LOC', 'style' => 'width:140px'), 'Email/Name');
|
|
|
|
$data['signup_dash_table'] = $this->table->generate($query);
|
|
|
|
|
|
// PUBIC active JOB table
|
|
$mysql = "SELECT jo.offer_code||'<br><b>Exp: </b>'||jo.expire::date||'<br><b>Country: </b>'||mj.country||'<br>Job Id'||jo.id AS \"Job\",
|
|
m.id||'<br>'||m.email||'<br>'||m.firstname||' '||m.lastname AS \"Job Owner\",
|
|
'<b>'||mj.title||'</b><br>'||mj.description AS \"Description\",
|
|
'<b>Timeline:</b>'||mj.timeline_days||'day(s)<br><b>Price:</b>'||mj.price*0.01||' #$?' AS \"Delivery\"
|
|
FROM members_jobs_offer jo "
|
|
. " LEFT JOIN members_jobs mj ON mj.id=jo.job_id "
|
|
. " LEFT JOIN members m ON mj.member_id = m.id "
|
|
. " WHERE mj.status=1 AND jo.status=1 "
|
|
. " AND jo.expire> now() AND jo.public_view > 0";
|
|
|
|
$query = $this->db->query($mysql);
|
|
// $this->table->set_heading(array('data' => 'Date/LOC', 'style' => 'width:140px'), 'Email/Name');
|
|
|
|
$data['active_publicjob_table'] = $this->table->generate($query);
|
|
|
|
|
|
|
|
// Active Jobs
|
|
$jbx = "";
|
|
|
|
$mysql = "SELECT '<b>Project ID:</b>'||mc.contract||'<br><b>Title:</b>'||mc.title AS Project,m.firstname||' '||m.lastname||'<br>'||m.email AS Client,"
|
|
. " '<b>Timeline:</b> '||mc.timeline_days||' day(s)<br><b>Price:</b>'||mc.price*0.01 AS terms ,mc.description||'<br><b>Delivery Date :</b>'||mc.delivery_date As Description,"
|
|
. " '<input type=submit onclick=\"return post_nav_find_action($jbx, '||mc.id||')\" name=\"manage\" class=\"btn btn-info btn-xs\" value=\"Manage\">' AS manage,mc.status "
|
|
. "FROM members_jobs_contract mc LEFT JOIN members m ON m.id=mc.client_id LIMIT 10"; // WHERE mc.member_id = " . $_SESSION['member_id']." OR mc.client_id =". $_SESSION['member_id'];
|
|
|
|
$mysql = "SELECT '<b>'||mj.contract||'</b><br>'||mo.title AS thejob,'<b>Owner: </b>'||m1.firstname||' '||m1.lastname||' <br>'|| m1.email||'<br><b>Client: </b>'||m2.firstname||' '||m2.lastname||' <br>'|| m2.email AS Team1 "
|
|
. "FROM members_jobs_contract mj "
|
|
. "LEFT JOIN members_jobs mo ON mo.id=mj.job_id "
|
|
. "LEFT JOIN members m1 ON m1.id=mj.member_id "
|
|
. "LEFT JOIN members m2 ON m2.id=mj.client_id "
|
|
. "WHERE mj.status IN (1,2) AND mj.delivery_date > now() ORDER by mj.id DESC LIMIT 5 ";
|
|
|
|
$query = $this->db->query($mysql);
|
|
|
|
//$this->table->set_heading('Job', 'Client', 'Terms', 'Description', 'Manage', 'Status');
|
|
$this->table->set_heading(array('data' => 'Task', 'style' => 'width:180px'), 'Members');
|
|
$data['job_active_dash_table'] = $this->table->generate($query);
|
|
|
|
$mysql = "SELECT '<b>'||mj.contract||'</b><br>'||mo.title AS thejob,'<b>Owner: </b>'||m1.firstname||' '||m1.lastname||' <br>'|| m1.email||'<br><b>Client: </b>'||m2.firstname||' '||m2.lastname||' <br>'|| m2.email AS Team1 "
|
|
. "FROM members_jobs_contract mj "
|
|
. "LEFT JOIN members_jobs mo ON mo.id=mj.job_id "
|
|
. "LEFT JOIN members m1 ON m1.id=mj.member_id "
|
|
. "LEFT JOIN members m2 ON m2.id=mj.client_id "
|
|
. "WHERE mj.status IN (1,2) AND mj.delivery_date < now() ORDER by mj.id DESC LIMIT 5 ";
|
|
|
|
$query = $this->db->query($mysql);
|
|
$this->table->set_heading(array('data' => 'Task', 'style' => 'width:180px'), 'Members');
|
|
$data['job_pastdue_dash_table'] = $this->table->generate($query);
|
|
|
|
|
|
$mysql = "SELECT '<b>Added: </b>'||m.added::date ||'<br><b>Amount: </b>'||m.terminatingamount*0.01||'<br><b>Fee: </b>'|| m.fee*0.01 as trans, "
|
|
. "r.firstname||' '||r.lastname||'<br><b>Acc:</b>'||r.account_no||'-'||b.name||'<br><b>Confirm: </b>'||mp.confirmation AS Recitient,"
|
|
. "CASE WHEN m.status=1 THEN 'Pending' WHEN m.status=3 THEN 'Cancelled' WHEN m.status=5 THEN 'Completed' ELSE '' END AS Status "
|
|
. "FROM money_transfer m "
|
|
. "LEFT JOIN sendmoney_recipient r ON r.id = m.recipientid "
|
|
. "LEFT JOIN bank_entity_codes b ON b.code = r.bank_code "
|
|
. "LEFT JOIN members_payments mp ON mp.what_sendmoney = m.id "
|
|
. "WHERE mp.confirmation IS NOT NULL ORDER BY m.id DESC LIMIT 4";
|
|
|
|
|
|
$query = $this->db->query($mysql);
|
|
$this->table->set_heading('Trans', 'Target', 'Status');
|
|
$data['sendmoney_dash_table'] = $this->table->generate($query);
|
|
|
|
|
|
|
|
$mysql = "SELECT created,'From: <b>'||email||'</b><br>'|| ( CASE WHEN status=1 THEn '<input type=submit id=\"dacc'||id||'\" onclick=\"return replyMessage('||id||')\" name=\"reply\" class=\"btn btn-info btn-xs\" value=\"Reply\">' ELSE '' END )||'<br>'||your_message AS your_message "
|
|
. " FROM contacts order by id desc lIMIT 6";
|
|
$query = $this->db->query($mysql);
|
|
$this->table->set_heading(array('data' => 'Added', 'style' => 'width:110px'), 'Message');
|
|
$data['contact_dash_table'] = $this->table->generate($query);
|
|
|
|
$data['members_dash_online'] = 0;
|
|
|
|
// Jobs Messages
|
|
$sqlMsg = "SELECT created, (CASE WHEN msg_type='FILE' THEN '<a target=\"_blank\" href=\"/smedia/" . ($is_live ? "LIVE" : "TEST") . "/contract/'||contract||'/'||message||'\">'||message||'</a>' "
|
|
. "ELSE '<b>'||created||'</b><br>'||message END) as msg FROM jobs_contract_message ORDER BY id DESC LIMIT 10"; // WHERE contract='".$data['contract_id']."'";
|
|
// Jobs Messages
|
|
$sqlMsg = "SELECT j.created, (CASE WHEN j.msg_type='FILE' THEN '<a target=\"_blank\" href=\"/smedia/" . ($is_live ? "LIVE" : "TEST") . "/contract/'||j.contract||'/'||j.message||'\">'||j.message||'</a>' "
|
|
. "ELSE '<b>['||m.firstname||'-'||m.username||']->'||j.created||'</b><br>'||j.message END) as msg FROM jobs_contract_message j LEFT JOIN members m ON m.id=j.member_id ORDER BY j.id DESC LIMIT 10"; // WHERE contract='".$data['contract_id']."'";
|
|
$query_message = $this->db->query($sqlMsg);
|
|
//$this->table->set_heading('');
|
|
$this->table->set_heading(array('data' => 'Added', 'style' => 'width:110px'), 'Activity Message');
|
|
$data['message_dash_table'] = $this->table->generate($query_message);
|
|
|
|
|
|
$mysql = "SELECT sum(w.amount*0.01),c.code,c.symbol FROM members_wallet w LEFT JOIN currency c ON c.code=w.currency GROUP BY c.code , c.symbol, c.lorder ORDER BY c.lorder DESC";
|
|
$query = $this->db->query($mysql);
|
|
$data['wallet_summary_table'] = $this->table->generate($query);
|
|
|
|
|
|
$data['total_members'] = 0;
|
|
$data['total_balance'] = 0;
|
|
$data['total_active_jobs'] = 0;
|
|
$data['mobile_login'] = 0;
|
|
|
|
$mysql = "SELECT count(id) AS total_members FROM members WHERE status =1";
|
|
$query = $this->db->query($mysql);
|
|
$row = $query->row_array();
|
|
$data['total_members'] = $row['total_members'];
|
|
|
|
$mysql = "SELECT count(id) AS mobile_login FROM mobile_login"; //" WHERE added::date = now()::date";
|
|
$query = $this->db->query($mysql);
|
|
$row = $query->row_array();
|
|
$data['mobile_login'] = $row['mobile_login'];
|
|
|
|
$mysql = "SELECT sum(amount) AS total_balance FROM members_wallet WHERE currency = 'NAIRA'";
|
|
$query = $this->db->query($mysql);
|
|
$row = $query->row_array();
|
|
$data['total_balance'] = $row['total_balance'];
|
|
|
|
$mysql = "SELECT sum(amount) AS total_balance FROM members_wallet WHERE currency = 'USD'";
|
|
$query = $this->db->query($mysql);
|
|
$row = $query->row_array();
|
|
$data['total_balance_usd'] = $row['total_balance'];
|
|
|
|
|
|
$mysql = "SELECT count(id) AS total_active_jobs FROM members_jobs_contract WHERE status IN (1,2) AND delivery_date > now()";
|
|
$query = $this->db->query($mysql);
|
|
$row = $query->row_array();
|
|
$data['total_active_jobs'] = $row['total_active_jobs'];
|
|
|
|
|
|
return $data;
|
|
}
|
|
|
|
}
|