Advertisement
Guest User

Untitled

a guest
Jun 20th, 2019
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.59 KB | None | 0 0
  1. <?php
  2. defined('BASEPATH') or exit('No direct script access allowed');
  3.  
  4. class Admin extends CI_Controller
  5. {
  6. public function __construct()
  7. {
  8. parent::__construct();
  9. }
  10.  
  11. public function index()
  12. {
  13. $data['tittle'] = 'Admin Dashboard';
  14. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  15.  
  16. $this->load->view('templates/header', $data);
  17. $this->load->view('templates/sidebar', $data);
  18. $this->load->view('templates/topbar', $data);
  19. $this->load->view('admin/index', $data);
  20. $this->load->view('templates/footer');
  21. }
  22.  
  23. public function kategori()
  24. {
  25. $data['tittle'] = 'Kategori Produk';
  26. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  27. $data['kategori'] = $this->Admin_model->getAllData('kategori')->result_array();
  28.  
  29. $this->load->view('templates/header', $data);
  30. $this->load->view('templates/sidebar', $data);
  31. $this->load->view('templates/topbar', $data);
  32. $this->load->view('admin/kategori', $data);
  33. $this->load->view('templates/footer');
  34. }
  35.  
  36. public function tambahKategori()
  37. {
  38. $data['tittle'] = 'Kategori Produk';
  39. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  40. $data['kategori'] = $this->Admin_model->getAllData('kategori')->result_array();
  41. $this->form_validation->set_rules('kategori', 'Kategori', 'required|trim|is_unique[kategori.name]', [
  42. 'is_unique' => 'Kategori Sudah Terdaftar.'
  43. ]);
  44.  
  45. if ($this->form_validation->run() == FALSE) {
  46. $this->load->view('templates/header', $data);
  47. $this->load->view('templates/sidebar', $data);
  48. $this->load->view('templates/topbar', $data);
  49. $this->load->view('admin/kategori', $data);
  50. $this->load->view('templates/footer');
  51. $this->session->set_flashdata('message', '<div class="alert alert-danger" role="alert">
  52. <strong>Gagal</strong> Menambahkan Kategori
  53. </div>');
  54. } else {
  55. $data = [
  56. 'name' => htmlspecialchars(ucfirst($this->input->post('kategori')))
  57. ];
  58. $this->Admin_model->insertData('kategori', $data);
  59. $this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">
  60. Kategori Baru Berhasil <strong>Ditambahkan!</strong>
  61. </div>');
  62. redirect('admin/kategori');
  63. }
  64. }
  65.  
  66. public function hapusKategori($id_kat)
  67. {
  68. $where = array('id_kat' => $id_kat);
  69.  
  70. $this->Admin_model->deleteData($where, 'kategori');
  71. $this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">
  72. Kategori Berhasil <strong>Dihapus!</strong>
  73. </div>');
  74. redirect('admin/kategori');
  75. }
  76.  
  77. public function ubahKategori($id_kat)
  78. {
  79. $data['tittle'] = 'Ubah Kategori Produk';
  80. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  81. $data['kategori'] = $this->Admin_model->getData('kategori', ['id_kat' => $id_kat])->row_array();
  82.  
  83. $this->form_validation->set_rules('kategori', 'Kategori', 'required|trim|is_unique[kategori.name]', [
  84. 'is_unique' => 'Kategori Sudah Terdaftar.'
  85. ]);
  86.  
  87. if ($this->form_validation->run() == FALSE) {
  88. $this->load->view('templates/header', $data);
  89. $this->load->view('templates/sidebar', $data);
  90. $this->load->view('templates/topbar', $data);
  91. $this->load->view('admin/ubahKategori', $data);
  92. $this->load->view('templates/footer');
  93. } else {
  94. $where = array('id_kat' => $id_kat);
  95. $data = [
  96. 'name' => htmlspecialchars(ucfirst($this->input->post('kategori')))
  97. ];
  98. $this->Admin_model->updateData('kategori', $data, $where);
  99. $this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">
  100. Kategori Berhasil <strong>Diubah!</strong>
  101. </div>');
  102. redirect('admin/kategori');
  103. }
  104. }
  105.  
  106. public function produk()
  107. {
  108. $data['tittle'] = 'Daftar Produk';
  109. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  110. $data['produk'] = $this->Admin_model->joinData('produk', 'kategori', 'produk.id_kat=kategori.id_kat')->result_array();
  111.  
  112. $this->load->view('templates/header', $data);
  113. $this->load->view('templates/sidebar', $data);
  114. $this->load->view('templates/topbar', $data);
  115. $this->load->view('admin/produk', $data);
  116. $this->load->view('templates/footer');
  117. }
  118.  
  119. public function tambahProduk()
  120. {
  121. $data['tittle'] = 'Tambah Produk';
  122. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  123. $data['produk'] = $this->Admin_model->getAllData('kategori')->result_array();
  124.  
  125. $this->form_validation->set_rules('nama', 'Nama', 'required|trim');
  126. $this->form_validation->set_rules('kategori', 'Kategori', 'required|trim');
  127. $this->form_validation->set_rules('stok', 'Stok', 'required|trim');
  128. $this->form_validation->set_rules('harga', 'Harga', 'required|trim');
  129.  
  130. if ($this->form_validation->run() == FALSE) {
  131. $this->load->view('templates/header', $data);
  132. $this->load->view('templates/sidebar', $data);
  133. $this->load->view('templates/topbar', $data);
  134. $this->load->view('admin/tambahProduk', $data);
  135. $this->load->view('templates/footer');
  136. $this->session->set_flashdata('message', '<div class="alert alert-danger" role="alert">
  137. <strong>Gagal</strong> Menambahkan Produk
  138. </div>');
  139. } else {
  140.  
  141. // gambar
  142. $upload_gambar = $_FILES['gambar']['name'];
  143.  
  144. if ($upload_gambar) {
  145. $config['allowed_types'] = 'gif|jpg|jpeg|png';
  146. $config['max_size'] = '2048';
  147. $config['upload_path'] = './assets/img/produk/';
  148.  
  149. $this->upload->initialize($config);
  150.  
  151. if ($this->upload->do_upload('gambar')) {
  152. $gambar_baru = $this->upload->data('file_name');
  153. } else {
  154. echo $this->upload->display_errors();
  155. }
  156. }
  157.  
  158. $data = [
  159.  
  160. 'id_kat' => $this->input->post('kategori'),
  161. 'nama' => $this->input->post('nama'),
  162. 'stok' => $this->input->post('stok'),
  163. 'harga' => $this->input->post('harga'),
  164. 'gambar' => $gambar_baru
  165. ];
  166.  
  167. $this->Admin_model->insertData('produk', $data);
  168. $this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">
  169. Produk Baru Berhasil <strong>Ditambahkan!</strong>
  170. </div>');
  171. redirect('admin/produk');
  172. }
  173. }
  174.  
  175. public function ubahProduk($id_produk)
  176. {
  177. $data['tittle'] = 'Ubah Produk';
  178. $data['user'] = $this->Admin_model->getData('admin', ['email' => $this->session->userdata('email')])->row_array();
  179. $data['produk'] = $this->Admin_model->getData('produk', ['id_produk' => $id_produk])->row_array();
  180. $data['kategori'] = $this->Admin_model->getAllData('kategori')->result_array();
  181.  
  182. $this->form_validation->set_rules('nama', 'Nama', 'required|trim');
  183. $this->form_validation->set_rules('kategori', 'Kategori', 'required|trim');
  184. $this->form_validation->set_rules('stok', 'Stok', 'required|trim');
  185. $this->form_validation->set_rules('harga', 'Harga', 'required|trim');
  186.  
  187. if ($this->form_validation->run() == FALSE) {
  188. $this->load->view('templates/header', $data);
  189. $this->load->view('templates/sidebar', $data);
  190. $this->load->view('templates/topbar', $data);
  191. $this->load->view('admin/ubahProduk', $data);
  192. $this->load->view('templates/footer');
  193. } else {
  194.  
  195. $where = array('id_produk' => $id_produk);
  196.  
  197. // gambar
  198. $upload_gambar = $_FILES['gambar']['name'];
  199.  
  200. if ($upload_gambar) {
  201. $config['allowed_types'] = 'gif|jpg|jpeg|png';
  202. $config['max_size'] = '2048';
  203. $config['upload_path'] = './assets/img/produk/';
  204.  
  205. $this->upload->initialize($config);
  206.  
  207. if ($this->upload->do_upload('gambar')) {
  208. $gambarLama = $data['produk']['gambar'];
  209. if ($gambarLama != 'photo_default.png') {
  210. unlink(FCPATH . 'assets/img/produk/' . $gambarLama);
  211. }
  212. $gambar_baru = $this->upload->data('file_name');
  213. $data = [
  214. 'id_kat' => htmlspecialchars($this->input->post('kategori')),
  215. 'nama' => htmlspecialchars(ucfirst($this->input->post('nama'))),
  216. 'stok' => htmlspecialchars($this->input->post('stok')),
  217. 'harga' => htmlspecialchars($this->input->post('harga')),
  218. 'gambar' => $gambar_baru
  219. ];
  220. } else {
  221. echo $this->upload->display_errors();
  222. }
  223. }
  224. $data = [
  225. 'id_kat' => htmlspecialchars($this->input->post('kategori')),
  226. 'nama' => htmlspecialchars(ucfirst($this->input->post('nama'))),
  227. 'stok' => htmlspecialchars($this->input->post('stok')),
  228. 'harga' => htmlspecialchars($this->input->post('harga')),
  229. 'gambar' => $gambarLama
  230. ];
  231.  
  232. $this->Admin_model->updateData('produk', $data, $where);
  233. $this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">
  234. Produk Berhasil <strong>Diubah!</strong>
  235. </div>');
  236. redirect('admin/produk');
  237. }
  238. }
  239.  
  240. public function hapusProduk($id_produk)
  241. {
  242. $where = array('id_produk' => $id_produk);
  243.  
  244. $this->Admin_model->deleteData($where, 'produk');
  245. $this->session->set_flashdata('message', '<div class="alert alert-success" role="alert">
  246. Produk Berhasil <strong>Dihapus!</strong>
  247. </div>');
  248. redirect('admin/produk');
  249. }
  250. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement