customer inbox

This commit is contained in:
Ibnu Maksum
2024-08-02 17:22:42 +07:00
parent 1843ff222d
commit 587437c93c
6 changed files with 156 additions and 3 deletions

View File

@ -45,6 +45,18 @@ switch ($action) {
die('--');
}
break;
case 'inbox_unread':
$count = ORM::for_table('tbl_customers_inbox')->where('customer_id', $user['id'])->whereRaw('date_read is null')->count('id');
if($count>0){
echo $count;
}
die();
case 'inbox':
$inboxs = ORM::for_table('tbl_customers_inbox')->selects(['id', 'subject', 'date_created'])->where('customer_id', $user['id'])->whereRaw('date_read is null')->order_by_desc('date_created')->limit(10)->find_many();
foreach($inboxs as $inbox){
echo '<li><a href="'.U.'mail/view/'.$inbox['id'].'">'.$inbox['subject'].'<br><sub class="text-muted">'.Lang::dateTimeFormat($inbox['date_created']).'</sub></a></li>';
}
die();
default:
$ui->display('404.tpl');
}

View File

@ -0,0 +1,46 @@
<?php
/**
* PHP Mikrotik Billing (https://github.com/hotspotbilling/phpnuxbill/)
* by https://t.me/ibnux
**/
_auth();
$action = $routes['1'];
$user = User::_info();
$ui->assign('_user', $user);
switch ($action) {
case 'view':
$mail = ORM::for_table('tbl_customers_inbox')->where('customer_id', $user['id'])->find_one($routes['2']);
if(!$mail){
r2(U. 'mail', 'e', Lang::T('Message Not Found'));
}
if($mail['date_read'] == null){
$mail->date_read = date('Y-m-d H:i:s');
$mail->save();
}
$ui->assign('mail', $mail);
$ui->assign('tipe', 'view');
$ui->assign('_system_menu', 'inbox');
$ui->assign('_title', Lang::T('Inbox'));
$ui->display('user-inbox.tpl');
default:
$q = _req('q');
$limit = 40;
$p = (int) _req('p', 0);
$offset = $p * $limit;
$query = ORM::for_table('tbl_customers_inbox')->where('customer_id', $user['id'])->order_by_desc('date_created');
$query->limit($limit)->offset($offset);
if(!empty($q)){
$query->whereRaw("(subject like '%$q%' or body like '%$q%')");
}
$mails = $query->find_array();
$ui->assign('tipe', '');
$ui->assign('q', $q);
$ui->assign('p', $p);
$ui->assign('mails', $mails);
$ui->assign('_system_menu', 'inbox');
$ui->assign('_title', Lang::T('Inbox'));
$ui->display('user-inbox.tpl');
}