Files
WrenchBoradWeb/www/application/libraries/Bkomember_Controller.php
T
2019-05-31 11:26:35 -04:00

190 lines
8.9 KiB
PHP

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Bkomember_Controller extends Bko_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 $data = array();
function __construct() {
parent::__construct();
if (!isset($_SESSION['bko_selected_id']) or $_SESSION['bko_selected_id'] == '' or $_SESSION['bko_selected_id'] <= 0 ) {
redirect('/bkouser/locate');
}
}
// protected
protected function bkoUserDashData($member_id) {
$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);
$short_limit = 10;
// MY JOBS
$mysql = "SELECT created,title FROM members_jobs WHERE member_id = $member_id ORDER BY id DESC limit $short_limit";
$query = $this->db->query($mysql);
$this->table->set_heading(array('data' => 'Date', 'style' => 'width:110px'), 'Title');
$data['member_job_table'] = $this->table->generate($query);
// MY CONTRACTS
$mysql = "SELECT created,title,status,client_id FROM members_jobs_contract WHERE member_id = $member_id ORDER BY id DESC LIMIT $short_limit";
$query = $this->db->query($mysql);
$this->table->set_heading(array('data' => 'Date', 'style' => 'width:110px'), 'Title', array('data' => 'ST', 'style' => 'width:40px'), 'client');
$data['member_contract_table'] = $this->table->generate($query);
// 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 "
. " WHERE j.member_id = $member_id ORDER BY j.id DESC LIMIT $short_limit";
$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);
// Active Jobs
$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() AND mj.member_id = $member_id ORDER by mj.id DESC LIMIT $short_limit ";
$query = $this->db->query($mysql);
$this->table->set_heading('Task', array('data' => 'Members', 'style' => 'width:150px'));
$data['job_active_dash_table'] = $this->table->generate($query);
// PAST DUE JOBS
$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() AND mj.member_id = $member_id ORDER by mj.id DESC LIMIT $short_limit ";
$query = $this->db->query($mysql);
$this->table->set_heading('Task', array('data' => 'Members', 'style' => 'width:150px'));
$data['job_pastdue_dash_table'] = $this->table->generate($query);
$jbx = "";
$mysql = "SELECT '<b>ADDED:</b>'||added::date||'<br><b>EXPIRE:</b>'||expire::date As Dates,username||'<br><b>Name:</b>'||firstname||' '||lastname AS signup,"
. " (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', 'style' => 'width:180px'), 'Email/Name', array('data' => 'RES', 'style' => 'width:40px; cellpadding:0px;'), array('data' => 'Del', 'style' => 'width:40px; 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);
$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;
$data['total_members'] = 0;
$data['total_balance'] = 0;
$data['total_active_jobs'] = 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 sum(balance)AS total_balance FROM members WHERE status =1";
$query = $this->db->query($mysql);
$row = $query->row_array();
$data['total_balance'] = $row['total_balance'];
$mysql = "SELECT count(id) AS total_active_jobs FROM members_jobs_contract WHERE status IN (1,2)";
$query = $this->db->query($mysql);
$row = $query->row_array();
$data['total_active_jobs'] = $row['total_active_jobs'];
return $data;
}
}