PageRenderTime 35ms CodeModel.GetById 27ms RepoModel.GetById 0ms app.codeStats 0ms

/application/controllers/content_old.php

https://gitlab.com/wildanoo/E-procurement
PHP | 342 lines | 271 code | 65 blank | 6 comment | 24 complexity | 54c502dfb6db3dbc6d401d608e4dc7de MD5 | raw file
  1. <?php defined('BASEPATH') OR exit('No direct script access allowed');
  2. if ( ! class_exists('Controller'))
  3. {
  4. class Controller extends CI_Controller {}
  5. }
  6. class Content extends Controller {
  7. function __construct()
  8. {
  9. parent::__construct();
  10. //$this->load->model('m_category', 'm_category');
  11. $this->load->model('crud', 'crud');
  12. $this->load->library('session');
  13. $this->limit = 5;
  14. }
  15. function index(){
  16. if ($this->tank_auth->is_logged_in()) {
  17. $data['user_id'] = $this->tank_auth->get_user_id();
  18. $data['username'] = $this->tank_auth->get_username();
  19. $sess_like = $this->session->flashdata('like');
  20. $table = "content_type";
  21. $page = $this->uri->segment(3);
  22. $per_page = 5;
  23. $offset = $this->crud->set_offset($page,$per_page);
  24. $total_rows = $this->crud->get_total_record("",$table);
  25. $set_config = array('base_url'=> base_url().'/content/index','total_rows'=>$total_rows,'per_page'=>5,'uri_segment'=>3);
  26. $config = $this->crud->set_config($set_config);
  27. $this->load->library('pagination');
  28. $this->pagination->initialize($config);
  29. $paging = $this->pagination->create_links();
  30. $order = array('field'=>'created_date','order'=>'DESC');
  31. $data['pagination'] = $paging;
  32. $data['num'] = $offset;
  33. $select = "id,type_name,status,(SELECT username FROM users WHERE id=created_id)as created_id,created_date,last_updated";
  34. if($sess_like){
  35. $like = array('col'=>'type_name','field'=>$sess_like);
  36. $browse = $this->crud->browse("",$table." l","","","true",$select,"","","",$like); } else {
  37. $browse = $this->crud->browse_with_paging("",$table." l","","","true",$select,"",$order,$config['per_page'],$offset); }
  38. $data['browse'] = $browse;
  39. $data['view'] = "content/browse";
  40. $this->load->view('layout/template',$data);
  41. } else {
  42. $this->session->set_flashdata('message','user not authorized');
  43. redirect('/auth/login/');
  44. }
  45. }
  46. function get_cat_tags(){
  47. $term = $_GET['term'];
  48. $order = array('field'=>'type_name','sort'=>'ASC'); $select = "type_name as name";
  49. $result = $this->crud->autocomplete("","content_type",$select,"type_name",$term,"",$order);
  50. echo json_encode($result);
  51. }
  52. function get_tags(){
  53. $term = $_GET['term'];
  54. $order = array('field'=>'type_name','sort'=>'ASC'); $select = "type_name as name";
  55. $result = $this->crud->autocomplete("","content_type",$select,"type_name",$term,"",$order);
  56. echo json_encode($result);
  57. }
  58. function set_sess_search(){
  59. $like = $_POST['search'];
  60. $this->session->set_flashdata('like',$like);
  61. }
  62. function is_exist(){
  63. $content = $_POST['type_name'];
  64. $is_exist['1']= !$content ? "false" : "true";
  65. $msg['1'] = !$content ? "content name required" : "";
  66. if ($is_exist['1']=='true'){
  67. $where = array('type_name'=>$content);
  68. $checked = $this->crud->is_exist("","content_type","id",$where);
  69. $is_exist['1'] = !$checked ? "true" : "false";
  70. $msg['1'] = $checked ? "duplicate content name" : "";
  71. }
  72. $status = in_array('false', $is_exist) ? "false" : "true";
  73. $result = array('status'=>$status,'msg' =>$msg['1']);
  74. echo json_encode($result);
  75. }
  76. function create(){
  77. //$init_code = $this->m_category->category_code("category");
  78. $curr_date = date('Y-m-d H:i:s'); $userID = $this->tank_auth->get_user_id();
  79. $data = array('id'=>null,
  80. 'type_name'=>$_POST['type_name'],
  81. 'status'=>'1',
  82. 'created_id'=>$userID,
  83. 'created_date'=>$curr_date,
  84. 'last_updated'=>$curr_date);
  85. $id = $this->crud->insert("","content_type",$data);
  86. $this->session->set_flashdata('message','1 data success insert');
  87. }
  88. function form_update(){
  89. $id = $this->uri->segment(3);
  90. $select = "id,(SELECT id FROM content_type r WHERE r.id=l.content_id) as content_id, subtype_name,status,created_date,last_updated";
  91. $def = $this->crud->browse("","subcontent_type l","id",$id,"false",$select);
  92. $data['def'] = $def ;
  93. $content = $this->crud->browse("","content_type","","","true","id,type_name");
  94. //print_r($content);
  95. $id = $this->uri->segment(3);
  96. $select = "id,type_name,created_id,last_updated";
  97. $data ['def'] = $this->crud->browse ( "", "content_type", "id", $id, "false", $select);
  98. $this->load->view ('content/form_update', $data );
  99. }
  100. function form_update1(){
  101. $id = $this->uri->segment(3);
  102. $select = "id,init_code,(SELECT id FROM category r WHERE r.id=l.id_cat) as id_cat, subcategory,created_date,last_updated";
  103. $def = $this->crud->browse("","subcategory l","id",$id,"false",$select);
  104. $data['def'] = $def ;
  105. $category = $this->crud->browse("","category","","","true","id,category");
  106. $id = $this->uri->segment(3);
  107. $select = "id,init_code,category,created_id,last_updated";
  108. $data ['def'] = $this->crud->browse ( "", "category", "id", $id, "false", $select);
  109. $this->load->view ( 'supplier/category/form_update', $data );
  110. }
  111. function form_create(){
  112. $data ['user_id'] = $this->tank_auth->get_user_id ();
  113. $data ['username'] = $this->tank_auth->get_username ();
  114. $this->load->view('content/form_create', $data);
  115. }
  116. function update(){
  117. $curr_date = date('Y-m-d H:i:s'); $userID = $this->tank_auth->get_user_id();
  118. $data = array('type_name'=>$_POST['type_name'],'last_updated'=>$curr_date);
  119. $this->crud->update("","content_type","id",$_POST['id'],$data);
  120. $this->session->set_flashdata('message','1 data success update');
  121. }
  122. function delete(){
  123. $id = $this->uri->segment(3);
  124. $where = array('content_id'=>$id);
  125. $checked = $this->crud->is_exist("","subcontent_type","id",$where);
  126. if ($checked) {
  127. $this->session->set_flashdata('msg_warning','This data is already in use');
  128. }
  129. else {
  130. $this->crud->delete("","content_type","id",$id);
  131. }
  132. $this->session->set_flashdata('message','1 data success deleted');
  133. redirect('content/','refresh');
  134. }
  135. function subcontent(){
  136. if ($this->tank_auth->is_logged_in()) {
  137. $data['user_id'] = $this->tank_auth->get_user_id();
  138. $data['username'] = $this->tank_auth->get_username();
  139. $sess_like = $this->session->flashdata('like');
  140. $table = "subcontent_type";
  141. $page = $this->uri->segment(3);
  142. $per_page = 5;
  143. $offset = $this->crud->set_offset($page,$per_page);
  144. $total_rows = $this->crud->get_total_record("",$table);
  145. $set_config = array('base_url'=> base_url().'/content/subcontent','total_rows'=>$total_rows,'per_page'=>5,'uri_segment'=>3);
  146. $config = $this->crud->set_config($set_config);
  147. $this->load->library('pagination');
  148. $this->pagination->initialize($config);
  149. $paging = $this->pagination->create_links();
  150. $order = array('field'=>'created_date','order'=>'DESC');
  151. $data['pagination'] = $paging;
  152. $data['num'] = $offset;
  153. $select = "id,(SELECT type_name FROM content_type r WHERE r.id=l.content_id)as content_id,
  154. subtype_name,status,(SELECT username FROM users WHERE id=created_id)as created_id,
  155. document_req,created_date,last_updated";
  156. if($sess_like){
  157. $like = array('col'=>'subtype_name','field'=>$sess_like);
  158. $browse = $this->crud->browse("",$table." l","","","true",$select,"","","",$like); } else {
  159. $browse = $this->crud->browse_with_paging("",$table." l","","","true",$select,"",$order,$config['per_page'],$offset); }
  160. $data['browse'] = $browse;
  161. //print_r($data['browse']);
  162. $data['view'] = "subcontent/browse";
  163. $this->load->view('layout/template',$data);
  164. } else {
  165. $this->session->set_flashdata('message','user not authorized');
  166. redirect('/auth/login/');
  167. }
  168. }
  169. function get_subcontent_tags(){
  170. $term = $_GET['term'];
  171. $order = array('field'=>'subtype_name','sort'=>'ASC'); $select = "subtype_name as name";
  172. $result = $this->crud->autocomplete("","subcontent_type",$select,"subtype_name",$term,"",$order);
  173. echo json_encode($result);
  174. }
  175. function set_sess_search_subcontent(){
  176. $like = $_POST['search'];
  177. $this->session->set_flashdata('like',$like);
  178. }
  179. function is_exist_subcontent(){
  180. $content = $_POST['content_id'];
  181. $subcontent = $_POST['subtype_name'];
  182. $is_exist['1']= !$content ? "false" : "true";
  183. $is_exist['2']= !$subcontent ? "false" : "true";
  184. $msg['1'] = !$content ? "content name required" : "";
  185. $msg['2'] = !$subcontent ? "subcontent name required" : "";
  186. if ($is_exist['1']=='true' && $is_exist['2']=='true'){
  187. $where = array('content_id'=>$content, 'subtype_name'=>$subcontent);
  188. $checked = $this->crud->is_exist("","subcontent_type","id",$where);
  189. $is_exist['1'] = !$checked ? "true" : "false";
  190. $is_exist['2'] = !$checked ? "true" : "false";
  191. $msg['1'] = $checked ? "duplicate content name" : "";
  192. $msg['2'] = $checked ? "duplicate subcontent name" : "";
  193. }
  194. $status = in_array('false', $is_exist) ? "false" : "true";
  195. $result = array('status'=>$status,'msg1' =>$msg['1'], 'msg2' =>$msg['2']);
  196. echo json_encode($result);
  197. }
  198. function form_create_subcontent(){
  199. $content = $this->crud->browse("","content_type","","","true","id,type_name");
  200. if(!$content) $content = array();
  201. $select = array(''=>'-- Select --');
  202. foreach($content as $val){ $options[$val->id] = $val->type_name; }
  203. $data['content'] = $select + $options;
  204. $behavior = $this->crud->browse("","behavior","","","true","id,behavior");
  205. if(!$behavior) $behavior = array();
  206. $select2 = array(''=>'-- Select --');
  207. foreach($behavior as $val){ $options2[$val->id] = $val->behavior; }
  208. $data['behavior'] = $select2 + $options2;
  209. $data['doc'] = $this->crud->browse("","document_req","","","true","id,document_req");
  210. $this->load->view('subcontent/form_create',$data);
  211. }
  212. function create_subcontent(){
  213. $ttl = $_POST['ttl'];
  214. $subtype = $_POST['subtype_name'];
  215. $document_req = "";
  216. $where = array('subtype_name'=>$subtype);
  217. $is_exist = $this->crud->is_exist("","subcontent_type","id",$where);
  218. for ($i = 1; $i <= $ttl; $i++) {
  219. $value = $this->input->post('check'.$i);
  220. if($value) $doc[] = $value; }
  221. if($doc){ $document_req = implode(",",$doc); }
  222. $data = array('id' => null,
  223. 'content_id' => $_POST['content_id'],
  224. 'subtype_name' => $_POST['subtype_name'],
  225. 'behavior_id' => $_POST['behavior_id'],
  226. 'document_req' => $document_req,
  227. 'created_id' => $this->tank_auth->get_user_id(),
  228. 'created_date' => date('Y-m-d H:i:s'),
  229. 'last_updated' => date('Y-m-d H:i:s'));
  230. if(!$is_exist){
  231. $this->crud->insert("","subcontent_type",$data); }
  232. $msg1 = "succesfully add new document";
  233. $msg2 = "duplicate group document";
  234. $msg = !$is_exist ? $msg1 : $msg2;
  235. //print_r($data);exit;
  236. $this->session->set_flashdata('message','1 data success insert');
  237. }
  238. function form_update_subcontent(){
  239. $id = $this->uri->segment(3);
  240. $select = "id,(SELECT id FROM content_type WHERE id=content_id) as content_id,subtype_name,document_req,created_id,created_date,last_updated";
  241. $def = $this->crud->browse("","subcontent_type l","id",$id,"false",$select);
  242. $data['def'] = $def ;
  243. $content = $this->crud->browse("","content_type","","","true","id,type_name");
  244. if(!$content) $content = array();
  245. $select = array(''=>'-- Select --');
  246. foreach($content as $val){ $options[$val->id] = $val->type_name; }
  247. $data['content'] = $select + $options;
  248. $order = array('field'=>'document_req','sort'=>'ASC');
  249. $data['doc'] = $this->crud->browse("","document_req","","","true","id,document_req","",$order);
  250. $this->load->view('subcontent/form_update',$data);
  251. }
  252. function update_subcontent(){
  253. $ttl = $_POST['ttl'];
  254. $id = $_POST['id'];
  255. $doc = "";
  256. $document = "";
  257. for ($i = 1; $i <= $ttl; $i++) {
  258. $value = $this->input->post('check'.$i);
  259. if($value) $doc[] = $value; }
  260. if($doc) $document = implode(",",$doc);
  261. $update = array('document_req' => !$document ? "" : $document,
  262. 'id' =>$id,
  263. 'content_id' =>$_POST['content_id'],
  264. 'subtype_name' =>$_POST['subtype_name'],
  265. 'last_updated' => date('Y-m-d H:i:s'));
  266. $this->crud->update("","subcontent_type","id",$id,$update);
  267. //print_r($update);
  268. $this->session->set_flashdata('message','1 data success update');
  269. redirect('content/','refresh');
  270. }
  271. function delete_subcontent(){
  272. $id = $this->uri->segment(3);
  273. $this->crud->delete("","subcontent_type","id",$id);
  274. $this->session->set_flashdata('message','1 data success deleted');
  275. redirect('content/subcontent/','refresh');
  276. }
  277. }