EVOLUTION-NINJA
Edit File: Feedback_Model.php
<?php namespace App\Models\Admin; use CodeIgniter\Model; class Feedback_Model extends Model { protected $table = 'feedback'; protected $primaryKey = 'feedback_id'; protected $allowedFields = [ 'feedback_id', 'feedback', 'username', 'course_title', 'created_at', 'display_status', ]; //view public function getWhereFeedback($feedback_id) { $builder = $this->db->table('feedback A') ->select('*') ->join('login B', 'B.login_id = A.faculty_id') ->join('courses C', 'C.course_id = A.course_id') ->where('A.feedback_id', $feedback_id) ->where('B.delete_status', 'ACTIVE') ->where('C.delete_status', 'ACTIVE') ->where('A.delete_status', 'ACTIVE'); $query = $builder->get(); return $query->getRow(); } public function checkFeedbackCourseType($feedback_id) { $builder = $this->db->table('feedback A') ->join('user_course_mapping B', 'B.course_id = A.course_id AND B.user_id = A.created_by') ->where('A.feedback_id', $feedback_id) ->where('B.delete_status', 'ACTIVE') ->where('A.delete_status', 'ACTIVE') ->get(); return $builder->getRow(); } public function getWhereRow($table, $where) { $builder = $this->db->table($table); $builder->select('*'); $builder->where($where); $query = $builder->get(); return $query->getRow(); } public function getWhereRow1($login_table, $where) { $builder = $this->db->table($login_table); $builder->select('*'); $builder->where($where); $query = $builder->get(); return $query->getRow(); } public function update($where = NULL, $data = NULL): bool { $builder = $this->db->table('feedback'); $builder->where($where); return $builder->update($data); } public function updateData($where, $table, $data) { $builder = $this->db->table($table); $builder->where($where); return $builder->update($data); } public function updateData1($where, $login_table, $comment_data) { $builder = $this->db->table($login_table); $builder->where($where); return $builder->update($comment_data); } public function updateData2($where_mapping, $mapping_table, $mapping_data) { $builder = $this->db->table($mapping_table); $builder->where($where_mapping); return $builder->update($mapping_data); } public function insertData($table, $data, $returnID = false) { $builder = $this->db->table($table); $builder->insertBatch($data); if ($returnID) { return $this->db->insertID(); } return true; // Successfully inserted } public function insertData1($comment_table, $comment_data) { $db = db_connect(); $db->table($comment_table)->insert($comment_data); return $db->insertID(); } public function get($id) { return $this->find($id); // Use the built-in find method to retrieve a single result row by primary key. } public function getFeedbackList() { $builder = $this->db->table('feedback as A'); $builder->select('A.*, B.course_title, C.username'); $builder->join('courses as B', 'B.course_id = A.course_id', 'left'); $builder->join('login as C', 'C.login_id = A.faculty_id', 'left'); $builder->where('A.delete_status', 'ACTIVE'); $builder->where('B.delete_status', 'ACTIVE'); $builder->where('C.delete_status', 'ACTIVE'); $builder->where('A.institution_id', 0); $query = $builder->get(); $data = []; foreach ($query->getResult() as $val) { $displayStatus = $val->display_status == 'DISPLAY' ? 'DISPLAYED' : 'NOT DISPLAYED'; $displayButton = '<input type="button" value="' . $displayStatus . '" id="display' . $val->feedback_id . '" onclick="fun_toggleDisplay(' . $val->feedback_id . ')" />'; $data[] = [ 'feedback_id' => $val->feedback_id, 'feedback' => $val->feedback, 'username' => $val->username, 'course_title' => $val->course_title, 'created_at' => date('d-m-Y', strtotime($val->created_at)), 'display_status' => $displayButton, ]; } return $data; } public function getFeedbackDetails($feedback_id) { $builder = $this->db->table('feedback A'); $builder->select('A.*, B.*, C.*'); $builder->join('login B', 'B.login_id = A.faculty_id'); $builder->join('courses C', 'C.course_id = A.course_id'); $builder->where('A.feedback_id', $feedback_id); $builder->where('B.delete_status', 'ACTIVE'); $builder->where('C.delete_status', 'ACTIVE'); $builder->where('A.delete_status', 'ACTIVE'); return $builder->get()->getRow(); } }