50 lines
2.1 KiB
PHP
50 lines
2.1 KiB
PHP
<?php
|
|
defined('BASEPATH') OR exit('No direct script access allowed');
|
|
|
|
class Chat_model extends CI_Model {
|
|
|
|
public function get_chat_by_admin($id_admin) {
|
|
$this->db->select('*');
|
|
$this->db->from('chat');
|
|
$this->db->join('pembeli', 'pembeli.id_pembeli = chat.id_pembeli');
|
|
$this->db->join('pengguna', 'pengguna.id_pengguna = pembeli.id_pengguna');
|
|
$this->db->where('chat.id_admin', $id_admin);
|
|
$this->db->where('chat.timestamp = (SELECT MAX(timestamp) FROM chat WHERE chat.id_pembeli = pembeli.id_pembeli)');
|
|
$query = $this->db->get();
|
|
return $query->result_array();
|
|
}
|
|
|
|
public function get_chat_by_pembeli($id_pembeli) {
|
|
// Mengambil satu baris chat terbaru untuk pembeli tertentu
|
|
$this->db->select('*');
|
|
$this->db->from('chat');
|
|
$this->db->join('pembeli', 'pembeli.id_pembeli = chat.id_pembeli');
|
|
$this->db->join('pengguna as pembeli_pengguna', 'pembeli_pengguna.id_pengguna = pembeli.id_pengguna');
|
|
$this->db->join('pengguna as admin_pengguna', 'admin_pengguna.id_pengguna = chat.id_admin');
|
|
$this->db->where('chat.id_pembeli', $id_pembeli);
|
|
$this->db->order_by('chat.timestamp', 'DESC');
|
|
$this->db->limit(1);
|
|
$query = $this->db->get();
|
|
return $query->result_array();
|
|
}
|
|
|
|
public function get_all_chat_by_pembeli($id_pembeli) {
|
|
// Mengambil satu baris chat terbaru untuk pembeli tertentu
|
|
$this->db->select('*');
|
|
$this->db->from('chat');
|
|
$this->db->join('pembeli', 'pembeli.id_pembeli = chat.id_pembeli');
|
|
$this->db->join('pengguna as pembeli_pengguna', 'pembeli_pengguna.id_pengguna = pembeli.id_pengguna');
|
|
$this->db->join('pengguna as admin_pengguna', 'admin_pengguna.id_pengguna = chat.id_admin');
|
|
$this->db->where('chat.id_pembeli', $id_pembeli);
|
|
$this->db->order_by('chat.timestamp', 'DESC');
|
|
$query = $this->db->get();
|
|
return $query->result_array();
|
|
}
|
|
|
|
public function add_chat($data)
|
|
{
|
|
return $this->db->insert('chat', $data);
|
|
}
|
|
}
|
|
?>
|