/application/controllers/common.php

https://bitbucket.org/prasoon2211/schooldayz · PHP · 107 lines · 100 code · 2 blank · 5 comment · 1 complexity · 2907686bf70c41057f39b5339269ca54 MD5 · raw file

  1. <?php
  2. /**
  3. * This is a controller for functions that are used globally
  4. * that is, without regard to the type of user
  5. **/
  6. class common extends CI_Controller
  7. {
  8. public function __construct()
  9. {
  10. parent::__construct();
  11. $this->load->helper('url');
  12. }
  13. public function is_loggedin()
  14. {
  15. return $this->session->userdata('logged_in');
  16. }
  17. public function assign_job()
  18. {
  19. // Check if already logged in
  20. if(!$this->is_loggedin())
  21. {
  22. $data['error'] = "Yor aren't logged in";
  23. $this->load->view('pages/index', $data);
  24. }
  25. else
  26. {
  27. // Table name stings to be used
  28. /*
  29. $table_announcements = $this->session->userdata('myschool_id') . '_announcements';
  30. $table_sub_class_sec = $this->session->userdata('myschool_id') . '_sub_class_sec';
  31. $table_class_info_snapshot = $this->session->userdata('myschool_id') . '_class_info_snapshot';
  32. */
  33. $table_id_map = $this->session->userdata('myschool_id') . '_id_map';
  34. $table_job_assignment = $this->session->userdata('myschool_id') . '_job_assignment';
  35. $table_school_id_map = $this->session->userdata('myschool_id') . '_id_map';
  36. $lid = $this->session->userdata('lid');
  37. $query = $this->db->where('lid', $lid)->get($table_school_id_map);
  38. $data['my_l_info'] = $query->row_array();
  39. $result = $this->db->select('lid')->get($table_id_map);
  40. $data['users'] = $result->result_array();
  41. $data['userdata'] = $this->session->all_userdata();
  42. $data['highlight'] = 'Assign Job';
  43. $data['variant'] = 'default';
  44. $this->load->library('form_validation');
  45. // Check if the form was submitted. If yes, process
  46. if($this->input->server('REQUEST_METHOD') == 'POST')
  47. {
  48. // Validate data
  49. $this->load->helper('form');
  50. $this->form_validation->set_rules('message', 'Details of job', 'trim|required|xss_clean');
  51. $this->form_validation->set_rules('target', 'Date of completion', 'trim|required|xss_clean');
  52. // Run validation on data
  53. // If fails, we load the homepage for logging in again
  54. // Error messages for validation will be displayed above the form
  55. // TODO : Use set_value() to generate submitted data on user side
  56. if ($this->form_validation->run() == FALSE)
  57. {
  58. $this->load->view('admin/header', $data);
  59. $this->load->view('admin/leftnav', $data);
  60. $this->load->view('admin/assign_job_content', $data);
  61. $this->load->view('common/footer', $data);
  62. }
  63. $message = $this->input->post('message');
  64. $respondent = $this->input->post('respondent');
  65. $job_id = $lid . "_" . date('Ymd_His');
  66. $date_time_completion = $this->input->post('date_time_completion');
  67. $mail = $this->input->post('mail');
  68. if($mail == 1)
  69. {
  70. mail('prasoon92.iitr@gmail.com', 'Announcement', $message);
  71. }
  72. $date_time_posted = date('Y-m-d');
  73. $arr = array(
  74. 'job_id' => $job_id,
  75. 'details' => $message,
  76. 'assigned_by_lid' => $lid,
  77. 'assigned_to_lid' => $respondent,
  78. 'date_time_update' => $date_time_posted,
  79. 'date_time_completion' => date('Y-m-d', strtotime($date_time_completion)),
  80. 'details' => $message,
  81. 'ticket_update' => '',
  82. 'initial' => '1'
  83. );
  84. $this->db->insert($table_job_assignment, $arr);
  85. $data['message'] = 'Job successfully assigned';
  86. }
  87. // Now, we output the view
  88. $this->load->view('admin/header', $data);
  89. $this->load->view('admin/leftnav', $data);
  90. $this->load->view('admin/assign_job_content', $data);
  91. $this->load->view('common/footer', $data);
  92. }
  93. }
  94. // function end: home
  95. }
  96. /* End of file admin.php */
  97. /* Location: ./application/controllers/admin.php */