Advertisement
jamboljack

Close Ticket SIMPEL

Jan 26th, 2019
612
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 4.04 KB | None | 0 0
  1. // Close Ticket
  2.     public function closeticket_post()
  3.     {
  4.         $username  = trim($this->post('username'));
  5.         $nama      = trim($this->post('nama'));
  6.         $level     = trim($this->post('level'));
  7.         $ticket_id = trim($this->post('ticket_id'));
  8.  
  9.         if ($username == '') {
  10.             $response = [
  11.                 'resp_error' => true,
  12.                 'resp_msg'   => 'Username kosong.',
  13.             ];
  14.         } elseif ($ticket_id == '') {
  15.             $response = [
  16.                 'resp_error' => true,
  17.                 'resp_msg'   => 'ID Ticket kosong.',
  18.             ];
  19.         } else {
  20.             if (!empty($_FILES['attachment']['name'])) {
  21.                 $jam                     = time();
  22.                 $config['file_name']     = 'Ticket_' . $jam . '.jpg';
  23.                 $config['upload_path']   = './img/image_ticket/';
  24.                 $config['allowed_types'] = 'jpg|png|gif|jpeg';
  25.                 $config['overwrite']     = true;
  26.                 $this->load->library('upload', $config);
  27.                 $this->upload->do_upload('attachment');
  28.                 $config['image_library']  = 'gd2';
  29.                 $config['source_image']   = $this->upload->upload_path . $this->upload->file_name;
  30.                 $config['maintain_ratio'] = true;
  31.                 $this->load->library('image_lib', $config);
  32.                 $this->image_lib->resize();
  33.             } elseif (empty($_FILES['attachment']['name'])) {
  34.                 $config['file_name'] = '';
  35.             }
  36.  
  37.             if ($level == 'Member') {
  38.                 $message       = '';
  39.                 $ticket_status = 'Closed';
  40.                 $detail_level  = 'Member';
  41.             } else {
  42.                 $ticket_status = 'Closed';
  43.                 $detail_level  = 'Admin';
  44.                 // Insert ke Tabel Ticket
  45.                 $dataTicket = $this->db->get_where('v_ticket', array('ticket_id' => $ticket_id))->row();
  46.                 $footer     = $this->db->get_where('lemlit_content', array('content_id' => 3))->row();
  47.                 $dataFooter = $footer->content_desc;
  48.                 $closed     = $this->db->get_where('lemlit_content', array('content_id' => 4))->row();
  49.                 $dataclosed = $closed->content_desc;
  50.                 // Kirim Email
  51.                 $sender_email = 'no-reply.simpel@umk.ac.id';
  52.                 $sender_name  = 'no-reply';
  53.                 $subject      = '[Ticket ID : #' . $ticket_id . ' ] ' . $dataTicket->ticket_subject;
  54.                 $email        = $dataTicket->user_email;
  55.                 $message      = $dataclosed .
  56.                     "<p>
  57.                    Hormat Kami,<br>
  58.                    " . $namapetugas . "<br>
  59.                    " . $level . "<br>" . $dataFooter;
  60.  
  61.                 $this->load->library('email');
  62.                 $this->email->set_mailtype("html");
  63.                 $this->email->from($sender_email, $sender_name);
  64.                 $this->email->to($email);
  65.                 $this->email->subject($subject);
  66.                 $this->email->message($message);
  67.                 $this->email->send();
  68.  
  69.                 $dataDetail = array(
  70.                     'ticket_id'        => $ticket_id,
  71.                     'user_username'    => $username,
  72.                     'detail_level'     => $detail_level,
  73.                     'detail_message'   => $message,
  74.                     'detail_date_post' => date('Y-m-d'),
  75.                     'detail_time_post' => date('Y-m-d H:i:s'),
  76.                 );
  77.  
  78.                 $this->db->insert('lemlit_ticket_detail', $dataDetail);
  79.             }
  80.  
  81.             // Update Ticket
  82.             $dataUpdateTicket = array(
  83.                 'user_username' => $username,
  84.                 'ticket_status' => $ticket_status,
  85.                 'ticket_update' => date('Y-m-d H:i:s'),
  86.             );
  87.  
  88.             $this->db->where('ticket_id', $ticket_id);
  89.             $this->db->update('lemlit_ticket', $dataUpdateTicket);
  90.  
  91.             $resp = ['resp_error' => false, 'resp_msg' => "success"];
  92.         }
  93.  
  94.         $this->response($resp, 200);
  95.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement