Untitled
user_4191664
plain_text
6 months ago
50 kB
1
Indexable
Never
<?php namespace App\Controllers; use App\Models\UsersModel; use Config\Database; use App\Libraries\Users; //use App\Models\ProiecteModel; //use App\Models\MessagesGrupModel; //use App\Models\InvitatiiProiectModel; //use CodeIgniter\Controller; class Proiecte extends BaseController { public $css_files; public $js_files; private $db; private $users; protected $session; public function __construct() { //parent::__construct(); helper('url'); helper('view'); $this->session = \Config\Services::session(); $this->usersModel = new UsersModel(); $this->db = Database::connect(); $this->users = new Users(); /* $info = $this->session->all_userdata(); if (!isset($info['cont']['logat'])) { redirect('http://re-invent.ro?act=login_no'); exit(); } */ //check_login(); //$this->load->model('usersModel'); } public function index() { helper(['form', 'url', 'users']); $session = session(); $info = $session->get(); $data['nr_notif'] = get_count_notif(); $data['header_img'] = '/assets/images/headers/header_proiecte.jpg'; $data['header_text'] = 'Lista proiecte - demo text info'; $active_m = ['active', '', '', '', '']; $data['active_m'] = $active_m; $db = db_connect(); if ($this->request->getPost('filtru')) { $lista_cat = $this->usersModel->get_categorii_proiect_copii($this->request->getPost('cat')); $l_cat = []; foreach ($lista_cat as $lista) { array_push($l_cat, $lista['id']); } } $builder = $db->table('proiecte') ->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.id AS idP, proiecte.*') ->join('categorii', 'proiecte.tip = categorii.id', 'left'); if ((tip_user() != 'partener') && (tip_user() != 'administrator')) { $builder->select('invitatii_proiect.*, proiecte.nume, proiecte.status') ->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id_proiect', 'left') ->where('invitatii_proiect.id_user', id_user()) ->where('invitatii_proiect.status', 'acceptata'); } if ($this->request->getGet('q')) { $builder->like('proiecte.nume', $this->request->getGet('q')); } $builder->where('proiecte.activ', '1'); if ($this->request->getPost('filtru')) { $status = $this->request->getPost('status'); if (isset($status) && is_array($status) && count($status) !== 0) { $builder->whereIn('proiecte.status', $status); } if (!empty($l_cat)) { $builder->whereIn('proiecte.tip', $l_cat); } $data_dl = $this->request->getPost('data_dl'); if ($data_dl != "") { $builder->where("proiecte.deadline_proiect BETWEEN '1970-01-01' AND '" . $data_dl . "'"); } $buget_sort = $this->request->getPost('buget_sort'); $builder->orderBy('proiecte.id', $buget_sort); } else { $builder->orderBy('proiecte.id', 'desc'); } if (tip_user() == 'partener') { $builder->where('proiecte.adaugat_de', id_user()); } $data['tip_user'] = tip_user(); $data['lista_proiecte'] = $builder->get()->getResultArray(); $data['categorii_filtru'] = $this->usersModel->get_categorii_proiect(); $data['main_content'] = 'proiecte/index.php'; echo view('template', $data); } public function index_old(){ helper(['form', 'url', 'users']); $session = session(); $info = $session->get(); $data['nr_notif'] = get_count_notif(); $data['header_img'] = '/assets/images/headers/header_proiecte.jpg'; $data['header_text'] = 'Lista proiecte - demo text info'; $active_m = [ 'active', // proiecte '', // lanseaza proiect '', // furnizori '', // mesaje '' // notificari ]; $data['active_m'] = $active_m; /* $db = db_connect(); if ($this->request->getPost('filtru')) { $lista_cat = $this->usersModel->get_categorii_proiect_copii($this->request->getPost('cat')); $l_cat = []; foreach ($lista_cat as $lista) { array_push($l_cat, $lista['id']); } } $builder = $db->table('proiecte') ->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.id AS idP') ->join('categorii', 'proiecte.tip = categorii.id', 'left'); if ((tip_user() != 'partener') && (tip_user() != 'administrator')) { $builder->select('invitatii_proiect.*, proiecte.nume, proiecte.status') ->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id_proiect', 'left') ->where('invitatii_proiect.id_user', id_user()) ->where('invitatii_proiect.status', 'acceptata'); } else { $builder->select('*'); } if ($this->request->getGet('q')) { $builder->like('proiecte.nume', $this->request->getGet('q')); } $builder->where('proiecte.activ', '1'); if ($this->request->getPost('filtru')) { $builder->whereIn('proiecte.status', $this->request->getPost('status')); if (count($lista_cat) != 0) { $builder->whereIn('proiecte.tip', $l_cat); } if ($this->request->getPost('data_dl') != "") { $builder->where("proiecte.deadline_proiect BETWEEN '1970-01-01' AND '" . $this->request->getPost('data_dl') . "'"); } $builder->orderBy('proiecte.id', $this->request->getPost('buget_sort')); } else { $builder->orderBy('proiecte.id', 'desc'); } if (tip_user() == 'partener') { $builder->where('proiecte.adaugat_de', id_user()); } */ $db = db_connect(); $builder = $db->table('proiecte') ->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.id AS idP, proiecte.*') ->join('categorii', 'proiecte.tip = categorii.id', 'left'); if ($this->request->getPost('filtru')) { $lista_cat = $this->usersModel->get_categorii_proiect_copii($this->request->getPost('cat')); $l_cat = []; foreach ($lista_cat as $lista) { array_push($l_cat, $lista['id']); } } if ((tip_user() != 'partener') && (tip_user() != 'administrator')) { $builder->select('invitatii_proiect.*, proiecte.nume, proiecte.status') ->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id', 'left') ->where('invitatii_proiect.id_user', id_user()) ->where('invitatii_proiect.status', 'acceptata'); } if ($this->request->getGet('q')) { $builder->like('proiecte.nume', $this->request->getGet('q')); } $builder->where('proiecte.activ', '1'); if ($this->request->getPost('filtru')) { // echo '<pre>'; // print_r($this->request->getPost('status')); // exit(); if (!isset($id) || (is_array($id) && count($id) === 0)) { //return []; }else{ $builder->whereIn('proiecte.status', $this->request->getPost('status')); } if (count($lista_cat) != 0) { $builder->whereIn('proiecte.tip', $l_cat); } if ($this->request->getPost('data_dl') != "") { $builder->where("proiecte.deadline_proiect BETWEEN '1970-01-01' AND '" . $this->request->getPost('data_dl') . "'"); } // $builder->orderBy('proiecte.id', $this->request->getPost('buget_sort')); } else { $builder->orderBy('proiecte.id', 'desc'); } if (tip_user() == 'partener') { $builder->where('proiecte.adaugat_de', id_user()); } $data['tip_user'] = tip_user(); $data['lista_proiecte'] = $builder->get()->getResultArray(); // $data['tip_user'] = tip_user(); // $data['lista_proiecte'] = $builder->get()->getResultArray(); $data['categorii_filtru'] = $this->usersModel->get_categorii_proiect(); // echo '<pre>'; // print_r( $data['lista_proiecte']); // exit(); $data['main_content'] = 'proiecte/index.php'; // echo '<pre>'; // print_r($_SESSION); // exit(); echo view('template', $data); } private function info_proiect($id) { $data = []; $userType = tip_user(); if (($userType != 'partener') && ($userType != 'administrator') && ($userType != 'project_manager')) { $query = $this->db->table('proiecte') ->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.moneda as moneda_proiect, proiecte.id AS idP, invitatii_proiect.*,proiecte.nume,proiecte.status') ->join('categorii', 'proiecte.tip = categorii.id') ->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id_proiect') // Replace the following line with your method of getting the user's id ->where('invitatii_proiect.id_user', id_user()) ->where('invitatii_proiect.id_proiect', $id) ->where('invitatii_proiect.status', 'acceptata') ->get(); $data['proiect'] = $query->getRowArray(); } else { $query = $this->db->table('proiecte') ->select('*') ->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.moneda as moneda_proiect, proiecte.id AS idP') ->join('categorii', 'proiecte.tip = categorii.id') ->orderBy("proiecte.id", "desc") ->where('proiecte.activ', '1') ->where('proiecte.id_proiect', $id) ->get(); $data['proiect'] = $query->getRowArray(); } return $data; return $data; } public function download(){ /*$id = $_GET['id']; $this -> db -> select('*'); $this -> db -> where('file_name', $id); $this -> db -> where('active', '1'); $query = $this -> db -> get('files'); $file = $query->row_array(); if (count($file) == 0){ echo 'Invalid id'; exit(); }*/ $id = $_GET['id']; $db = db_connect(); $builder = $db->table('files') ->select('*') ->where('file_name', $id) ->where('active', '1'); $file = $builder->get()->getRowArray(); if (count($file) == 0){ echo 'Invalid id'; return false; } $full_link = 'http://134.209.249.85/upload_reinvent/'.$id; $full_link = str_replace(' ', '%20', $full_link); // header("Content-Disposition: attachment; filename=".$file['file_original']."\n\n"); // header("Content-Type: application/force-download"); // readfile($full_link); header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file['file_original'])); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); ob_clean(); flush(); readfile($full_link); return false; } private function get_exp($type_data,$data, $separator){ $data = explode(',',$data); $return_data = array(); // $return_data = ''; $nrCharSep = strlen($separator)*-1; foreach($type_data as $item){ // echo $item['id'].'<br>'; foreach($data as $dataItem){ if ($item['id'] == $dataItem){ // $return_data.=$item['nume'].$separator; array_push($return_data,$item['nume']); } } } //return substr($return_data, 0, $nrCharSep); return $return_data; } private function lista_useri($tip = 'all') { /* //preluare lista dezvoltatori $this->db->select('*'); $this->db->join('bookmark_profile', ' profil.user_id = bookmark_profile.bm_user_id AND bookmark_profile.bm_my_id='.id_user().'','left'); $this->db->join('conturi', 'profil.user_id = conturi.id','left'); $this->db->select('conturi.email AS email_dev', FALSE); // $this->db->where('proiecte.activ', '1'); if ($tip != 'all') { $this->db->where('conturi.tip_user', $tip); } if (isset($_GET['q'])) { $this->db->group_start(); $this->db->like('profil.nume', $_GET['q']); $this->db->or_like('profil.prenume', $_GET['q']); $this->db->group_end(); } if (isset($_POST['filtru'])) { if (isset($_POST['expertiza'])) { foreach ($_POST['expertiza'] as $like) { //$this->db->like('profil.expertiza', ",".$like.","); $this->db->or_like('profil.expertiza', "," . $like . ","); } } if (isset($_POST['experienta'])) { foreach ($_POST['experienta'] as $like) { //$this->db->like('profil.expertiza', ",".$like.","); $this->db->or_like('profil.experienta', "," . $like . ","); } } } $this->db->group_start(); $this->db->where('conturi.tip_user !=', 'partener'); $this->db->where('conturi.tip_user !=', 'administrator'); $this->db->group_end(); $this->db->order_by('bookmark_profile.bm_data','desc'); $Qdev = $this->db->get('profil')->result_array(); // end lista dezvoltatori //echo "<pre>"; //echo $this->db->last_query(); //print_r($Qdev); //exit(); //preluare filtre $experienta_lista = $this->db->get('experienta')->result_array(); $expertiza_lista = $this->db->get('expertiza')->result_array(); //end filtre $data['dezvoltatori'] = $Qdev; $data['tip_user'] = tip_user(); $this->db->order_by('id','desc'); $Qlist = $this->db->get('profil')->result_array(); $data['lista_useri'] = $Qlist; foreach ($data['dezvoltatori'] as $k => $item){ // echo $item['experienta']; $d = $this->get_exp($experienta_lista,$item['experienta'],', '); $d1 = $this->get_exp($expertiza_lista,$item['expertiza'],', '); // $item[$k]['experienta_txt'] = $d; // print_r($k); $data['dezvoltatori'][$k]['experienta_txt'] = $d; $data['dezvoltatori'][$k]['expertiza_txt'] = $d1; } // echo '<pre>'; // print_r($data['dezvoltatori']); //exit(); return $data['dezvoltatori'];*/ $db = db_connect(); $builder = $db->table('profil') ->select('*') ->join('bookmark_profile', 'profil.user_id = bookmark_profile.bm_user_id AND bookmark_profile.bm_my_id=' . id_user(), 'left') ->join('conturi', 'profil.user_id = conturi.id', 'left') ->select('conturi.email AS email_dev', false); if ($tip != 'all') { $builder->where('conturi.tip_user', $tip); } if (isset($_GET['q'])) { $builder->groupStart() ->like('profil.nume', $_GET['q']) ->orLike('profil.prenume', $_GET['q']) ->groupEnd(); } if (isset($_POST['filtru'])) { if (isset($_POST['expertiza'])) { foreach ($_POST['expertiza'] as $like) { $builder->orLike('profil.expertiza', "," . $like . ","); } } if (isset($_POST['experienta'])) { foreach ($_POST['experienta'] as $like) { $builder->orLike('profil.experienta', "," . $like . ","); } } } $builder->groupStart() ->where('conturi.tip_user !=', 'partener') ->where('conturi.tip_user !=', 'administrator') ->groupEnd() ->orderBy('bookmark_profile.bm_data', 'desc'); $Qdev = $builder->get()->getResultArray(); $experienta_lista = $db->table('experienta')->get()->getResultArray(); $expertiza_lista = $db->table('expertiza')->get()->getResultArray(); $data['dezvoltatori'] = $Qdev; $data['tip_user'] = tip_user(); $Qlist = $db->table('profil')->orderBy('id', 'desc')->get()->getResultArray(); $data['lista_useri'] = $Qlist; foreach ($data['dezvoltatori'] as $k => $item) { $d = $this->get_exp($experienta_lista, $item['experienta'], ', '); $d1 = $this->get_exp($expertiza_lista, $item['expertiza'], ', '); $data['dezvoltatori'][$k]['experienta_txt'] = $d; $data['dezvoltatori'][$k]['expertiza_txt'] = $d1; } return $data['dezvoltatori']; } public function brief($id = 0){ /*$active_m = array(); $active_m[0]='active'; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]='active'; // brief $active[1]=''; // buget $active[2]=''; // furnizori $active[3]=''; // task-uri $active[4]=''; // istoric $active[5]=''; // disctuii $active[6]=''; // fisiere $data['active'] = $active; $data['tip_user'] = tip_user(); $data['idP'] = $id; $data['proiect'] = $this->info_proiect($id); // echo "<pre>"; // print_r($data['proiect']); // // // exit(); $this->db->select('*'); $this->db->where('id_proiect', $id); $data['files'] = $this->db->get('files')->result_array(); // return $Qdev; $data['istoric'] = $this->usersModel->get_istoric_brief($id); // print_r($data['proiect']); //echo '<pre>'; // exit(); $data['header_img'] = '/assets/images/headers/header_brief.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $data['main_content'] = 'proiecte/brief.php'; $this->load->view('template', $data);*/ $active_m = array(); $active_m[0] = 'active'; // proiecte $active_m[1] = ''; // lanseaza proiect $active_m[2] = ''; // furnizori $active_m[3] = ''; // mesaje $active_m[4] = ''; // notificari $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0] = 'active'; // brief $active[1] = ''; // buget $active[2] = ''; // furnizori $active[3] = ''; // task-uri $active[4] = ''; // istoric $active[5] = ''; // disctuii $active[6] = ''; // fisiere $data['active'] = $active; $data['tip_user'] = tip_user(); $data['idP'] = $id; $data['proiect'] = $this->info_proiect($id); $db = db_connect(); $data['files'] = $db->table('files')->where('id_proiect', $id)->get()->getResultArray(); $data['istoric'] = $this->usersModel->get_istoric_brief($id); $data['header_img'] = '/assets/images/headers/header_brief.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $data['main_content'] = 'proiecte/brief.php'; echo view('template', $data); } private function get_categorii($id){ /*$this->db->select('*'); $this->db->where('id_proiect', $id); $Qdev = $this->db->get('categorii_proiect')->result_array(); return $Qdev;*/ $db = db_connect(); $builder = $db->table('categorii_proiect'); $builder->select('*'); $builder->where('id_proiect', $id); $Qdev = $builder->get()->getResultArray(); return $Qdev; } public function buget($id = 0){ /* $data['tip_conturi'] = $this->usersModel->get_user_category(); $data['select_cat'] = $this->get_categorii($id); $data['nr_notif'] = get_count_notif(); $active_m = array(); $active_m[0]='active'; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; $sel_cat = array(); $sel_cat[0]=''; $sel_cat[1]=''; $sel_cat[2]=''; $sel_cat[3]=''; $active = array(); $active[0]=''; // brief $active[1]='active'; // buget $active[2]=''; // furnizori $active[3]=''; // task-uri $active[4]=''; // istoric $active[5]=''; // disctuii $active[6]=''; // fisiere $data['active'] = $active; foreach ($data['select_cat'] as $item){ if ($item['id_cat'] == 3){ $sel_cat[0] = 'checked'; } if ($item['id_cat'] == 4){ $sel_cat[1] = 'checked'; } if ($item['id_cat'] == 1){ $sel_cat[2] = 'checked'; } if ($item['id_cat'] == 6){ $sel_cat[3] = 'checked'; } } $data['sel_cat'] = $sel_cat; $data['proiect'] = $this->info_proiect($id); $data['idP'] = $id; $data['furnizori'] = $this->lista_useri(); $data['main_content'] = 'proiecte/buget'; $data['list_invitation'] = $this->usersModel->get_user_invitation($id); $last_task = ''; $data['buget_cheltuit'] = 0; $data['tip_user'] = tip_user(); foreach ($data['list_invitation'] as $item){ // if ($item['id_task'] != $last_task){ // echo $item['buget'].'<br >'; $data['buget_cheltuit']+=$item['buget']; // } // $last_task = $item['id_task']; } $data['proiect_id'] = $id; $data['rate'] = $this->usersModel->get_list_rate($id); $data['alte_detalii'] = $this->usersModel->get_alte_detalii($id); $data['istoric'] = $this->usersModel->get_istoric_brief($id); $data['files'] = $this->usersModel->get_files_buget($id); $data['header_img'] = '/assets/images/headers/header_buget.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $this->load->view('template', $data);*/ $data['tip_conturi'] = $this->usersModel->get_user_category(); $data['select_cat'] = $this->get_categorii($id); $data['nr_notif'] = get_count_notif(); $active_m = array(); $active_m[0] = 'active'; // proiecte $active_m[1] = ''; // lanseaza proiect $active_m[2] = ''; // furnizori $active_m[3] = ''; // mesaje $active_m[4] = ''; // notificari $data['active_m'] = $active_m; $sel_cat = array(); $sel_cat[0] = ''; $sel_cat[1] = ''; $sel_cat[2] = ''; $sel_cat[3] = ''; $active = array(); $active[0] = ''; // brief $active[1] = 'active'; // buget $active[2] = ''; // furnizori $active[3] = ''; // task-uri $active[4] = ''; // istoric $active[5] = ''; // disctuii $active[6] = ''; // fisiere $data['active'] = $active; foreach ($data['select_cat'] as $item) { if ($item['id_cat'] == 3) { $sel_cat[0] = 'checked'; } if ($item['id_cat'] == 4) { $sel_cat[1] = 'checked'; } if ($item['id_cat'] == 1) { $sel_cat[2] = 'checked'; } if ($item['id_cat'] == 6) { $sel_cat[3] = 'checked'; } } $data['sel_cat'] = $sel_cat; $data['proiect'] = $this->info_proiect($id); $data['idP'] = $id; $data['furnizori'] = $this->lista_useri(); $data['main_content'] = 'proiecte/buget'; $data['list_invitation'] = $this->usersModel->get_user_invitation($id); $last_task = ''; $data['buget_cheltuit'] = 0; $data['tip_user'] = tip_user(); foreach ($data['list_invitation'] as $item) { $data['buget_cheltuit'] += $item['buget']; } $data['proiect_id'] = $id; $data['rate'] = $this->usersModel->get_list_rate($id); $data['alte_detalii'] = $this->usersModel->get_alte_detalii($id); $data['istoric'] = $this->usersModel->get_istoric_brief($id); $data['files'] = $this->usersModel->get_files_buget($id); $data['header_img'] = '/assets/images/headers/header_buget.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; echo view('template', $data); } public function proiect_nou(){ $active_m = array(); $active_m[0]=''; // proiecte $active_m[1]='active'; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); if (tip_user() != 'project_manager' && tip_user() != 'administrator' && tip_user() != 'partener'){ // redirect('http://reinvent.digital/new/?act=login_no'); return redirect()->to('http://reinvent.digital/new/?act=login_no'); } $all_cat = '<select name="tip_proiect" id="tip_proiect" class="slim-select3" multiple="multiple">'; $all_cat.= get_categorie('categorii'); $all_cat.= '</select>'; $data['categorii'] = $all_cat; $data['tip_user'] = tip_user(); // $data['expertiza'] = $this->db->get('expertiza')->result_array(); // $data['experienta'] = $this->db->get('experienta')->result_array(); $data['expertiza'] = $this->db->table('expertiza')->get()->getResultArray(); $data['experienta'] = $this->db->table('experienta')->get()->getResultArray(); $data['main_content'] = 'inregistrare/proiect'; // $this->load->view('template',$data); echo view('template', $data); } public function furnizori($id = 'no'){ $active_m = array(); if ($id == "no") { $active_m[0] = ''; // proiecte $active_m[1] = ''; // lanseaza proiect $active_m[2] = 'active'; // furnizori $active_m[3] = ''; // mesaje $active_m[4] = ''; // notificari $data['header_img'] = '/assets/images/headers/header_furnizori.jpg'; $data['header_text'] = 'Lista furnizori'; }else{ $active_m[0] = 'active'; // proiecte $active_m[1] = ''; // lanseaza proiect $active_m[2] = ''; // furnizori $active_m[3] = ''; // mesaje $active_m[4] = ''; // notificari } $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]=''; // brief $active[1]=''; // buget $active[2]='active'; // furnizori $active[3]=''; // task-uri $active[4]=''; // istoric $active[5]=''; // disctuii $active[6]=''; // fisiere $data['active'] = $active; // $data['experienta_lista'] = $this->db->get('experienta')->result_array(); // $data['expertiza_lista'] = $this->db->get('expertiza')->result_array(); $data['experienta_lista'] = $this->db->table('experienta')->get()->getResultArray(); $data['expertiza_lista'] = $this->db->table('expertiza')->get()->getResultArray(); if (tip_user() != 'administrator' && tip_user() != 'project_manager'){ exit(); } $data['tip_conturi'] = $this->usersModel->get_user_category(); $data['select_cat'] = $this->get_categorii($id); $data['proiect'] = $this->info_proiect($id); $data['furnizori'] = $this->lista_useri(); $data['idP'] = $id; $data['tip_user'] = tip_user(); if ($id == 'no') { $data['main_content'] = 'furnizori'; }else{ $data['header_img'] = '/assets/images/headers/header_furnizori2.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $data['list_invitation'] = $this->usersModel->get_user_invitation($id); // echo '<pre>'; // print_r($data['list_invitation']); // exit(); $data['main_content'] = 'proiecte/furnizori'; } // echo '<pre>'; // print_r($data['furnizori']); // exit(); /// $this->load->view('template', $data); echo view('template', $data); } public function get_taskuri($id){ /*$this->db->select('*'); $this->db->select('proiect_taskuri.id as task_id'); $this->db->join('profil', 'proiect_taskuri.id_user = profil.user_id'); $this->db->where('proiect_taskuri.id_proiect', $id); $this->db->order_by('proiect_taskuri.id','desc'); $Qdev = $this->db->get('proiect_taskuri')->result_array(); return $Qdev;*/ $Qdev = $this->db->table('proiect_taskuri') ->select('*') ->select('proiect_taskuri.id as task_id') ->join('profil', 'proiect_taskuri.id_user = profil.user_id') ->where('proiect_taskuri.id_proiect', $id) ->orderBy('proiect_taskuri.id','desc') ->get() ->getResultArray(); return $Qdev; } public function taskuri($id = 0){ $active_m = array(); $active_m[0]='active'; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]=''; // brief $active[1]=''; // buget $active[2]=''; // furnizori $active[3]='active'; // task-uri $active[4]=''; // istoric $active[5]=''; // disctuii $active[6]=''; // fisiere $data['active'] = $active; $data['tip_user'] = tip_user(); $data['proiect'] = $this->info_proiect($id); $data['idP'] = $id; $data['furnizori'] = $this->lista_useri(); $data['list_invitation'] = $this->usersModel->get_user_invitation($id); $data['taskuri'] = $this->get_taskuri($id); $data['header_img'] = '/assets/images/headers/header_task-uri.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $data['main_content'] = 'proiecte/taskuri'; /// $this->load->view('template', $data); echo view('template', $data); } public function istoric($id = 0){ $active_m = array(); $active_m[0]='active'; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]=''; // brief $active[1]=''; // buget $active[2]=''; // furnizori $active[3]=''; // task-uri $active[4]='active'; // istoric $active[5]=''; // disctuii $active[6]=''; // fisiere $data['active'] = $active; $data['tip_user'] = tip_user(); $data['proiect'] = $this->info_proiect($id); $data['idP'] = $id; /*$this->db->select('*'); $this->db->where('id_proiect', $id); $this->db->where('user_id', id_user()); $this->db->order_by('id','desc'); $istoric = $this->db->get('history')->result_array();*/ $istoric = $this->db->table('history') ->select('*') ->where('id_proiect', $id) ->where('user_id', id_user()) ->orderBy('id','desc') ->get() ->getResultArray(); $istoric_arr = array(); $r=0; foreach ($istoric as $item){ $item['top_title'] = $this->usersModel->get_user_name($item['from_user_id']); $item['sub_title'] = $this->usersModel->get_user_type($item['from_user_id']); $istoric_arr[$r] = $item; $r++; } // echo '<pre>'; // print_r($istoric_arr); // print_r($istoric); $data['istoric'] = $istoric_arr; // echo '<pre>'; // print_r($istoric_arr); $data['header_img'] = '/assets/images/headers/header_istoric.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $data['main_content'] = 'proiecte/istoric'; // $this->load->view('template', $data); echo view('template', $data); } public function mesaje_old($id = ''){ $users = new UsersModel(); $proiecte = new ProiecteModel(); $tipUser = tip_user(); // $data['list_invitation'] = $this->get_user_invitation($id); // echo '<pre>'; // print_r($data['list_invitation']); // exit(); $active_m = array(); $active_m[0]=''; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]='active'; // mesaje $active_m[4]=''; // notificari $data['header_img'] = '/assets/images/headers/header_mesaje.jpg'; $data['header_text'] = 'Lista mesaje'; $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]=''; // brief $active[1]=''; // buget $active[2]=''; // furnizori $active[3]=''; // task-uri $active[4]=''; // istoric $active[5]='active'; // disctuii $active[6]=''; // fisiere $data['active'] = $active; $data['proiect'] = $this->info_proiect($id); $data['idP'] = $id; $data['tip_user'] = tip_user(); $data['furnizori'] = $this->lista_useri(); $data['list_invitation'] = $this->usersModel->get_user_invitation($id); // echo '<pre>'; // print_r($data['list_invitation']); /* $this->db->select('*'); $this->db->where('id_proiect', $id); $this->db->where('status', 1); $this->db->order_by("id", "desc"); $data['grupuri'] = $this->db->get('messages_grup')->result_array();*/ $data['grupuri'] = $this->db->table('messages_grup') ->select('*') ->where('id_proiect', $id) ->where('status', 1) ->orderBy('id', 'desc') ->get() ->getResultArray(); // PROIECTEEEEEEEEEEEEEE /* $this->db->join('categorii', 'proiecte.tip = categorii.id'); if ((tip_user() != 'partener') && (tip_user() != 'administrator')) { // $this->db->where('proiecte.adaugat_de', id_user()); $this->db->select('invitatii_proiect.*,proiecte.nume,proiecte.status'); $this->db->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id_proiect'); $this->db->where('invitatii_proiect.id_user', id_user()); $this->db->where('invitatii_proiect.status', 'acceptata'); }else{ $this->db->select('*'); } $this->db->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.id AS idP', FALSE); $this->db->order_by("proiecte.id", "desc"); $this->db->where('proiecte.activ', '1'); if (tip_user() == 'partener') { $this->db->where('proiecte.adaugat_de', id_user()); } $Qlist = $this->db->get('proiecte')->result_array(); $data['tip_user'] = tip_user(); $data['lista_proiecte'] = $Qlist; $data['main_content'] = 'mesaje'; $this->load->view('template', $data);*/ $builder = $proiecte->builder() ->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.id AS idP') ->join('categorii', 'proiecte.tip = categorii.id') ->where('proiecte.activ', '1') ->orderBy('proiecte.id', 'desc'); if ($tipUser === 'partener') { $builder->where('proiecte.adaugat_de', $users->id_user()); } else if ($tipUser !== 'administrator') { $builder ->select('invitatii_proiect.*, proiecte.nume, proiecte.status') ->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id_proiect') ->where('invitatii_proiect.id_user', $users->id_user()) ->where('invitatii_proiect.status', 'acceptata'); } $Qlist = $builder->get()->getResultArray(); $data['tip_user'] = $tipUser; $data['lista_proiecte'] = $Qlist; $data['main_content'] = 'mesaje'; return view('template', $data); } public function mesaje($id = '') { $db = \Config\Database::connect(); $active_m = [ '', // proiecte '', // lanseaza proiect '', // furnizori 'active', // mesaje '', // notificari ]; $data = [ 'header_img' => '/assets/images/headers/header_mesaje.jpg', 'header_text' => 'Lista mesaje', 'active_m' => $active_m, 'nr_notif' => get_count_notif(), 'active' => [ '', // brief '', // buget '', // furnizori '', // task-uri '', // istoric 'active', // disctuii '', // fisiere ], 'proiect' => $this->info_proiect($id), 'idP' => $id, 'tip_user' => tip_user(), 'furnizori' => $this->lista_useri(), 'list_invitation' => $this->usersModel->get_user_invitation($id), 'grupuri' => $db->table('messages_grup') ->select('*') ->where('id_proiect', $id) ->where('status', 1) ->orderBy("id", "desc") ->get() ->getResultArray(), 'main_content' => 'mesaje' ]; // Set up the database query for the "proiecte" part of the function $builder = $db->table('proiecte'); try { $builder->select('categorii.nume AS nume_categorie, proiecte.nume AS nume_proiect, proiecte.id AS idP, proiecte.*'); $builder->join('categorii', 'proiecte.tip = categorii.id'); if (tip_user() != 'partener' && tip_user() != 'administrator') { $builder->select('invitatii_proiect.*,proiecte.nume,proiecte.status'); $builder->join('invitatii_proiect', 'invitatii_proiect.id_proiect = proiecte.id_proiect'); $builder->where('invitatii_proiect.id_user', id_user()); $builder->where('invitatii_proiect.status', 'acceptata'); } $builder->where('proiecte.activ', '1'); if (tip_user() == 'partener') { $builder->where('proiecte.adaugat_de', id_user()); } $builder->orderBy("proiecte.id", "desc"); $Qlist = $builder->get()->getResultArray(); } catch (\Exception $e) { die($e->getMessage()); } $data['lista_proiecte'] = $Qlist; return view('template', $data); } public function discutii($id = 0){ // $data['list_invitation'] = $this->get_user_invitation($id); // echo '<pre>'; // print_r($data['list_invitation']); // exit(); $active_m = array(); $active_m[0]='active'; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]=''; // brief $active[1]=''; // buget $active[2]=''; // furnizori $active[3]=''; // task-uri $active[4]=''; // istoric $active[5]='active'; // disctuii $active[6]=''; // fisiere $data['active'] = $active; $data['proiect'] = $this->info_proiect($id); $data['idP'] = $id; $data['tip_user'] = tip_user(); $data['furnizori'] = $this->lista_useri(); $data['list_invitation'] = $this->usersModel->get_user_invitation($id); /*$this->db->select('*'); $this->db->where('id_proiect', $id); $this->db->where('status', 1); $this->db->order_by("id", "desc"); $data['grupuri'] = $this->db->get('messages_grup')->result_array();*/ // $db = \Config\Database::connect(); $query = $this->db->table('messages_grup') ->select('*') ->where('id_proiect', $id) ->where('status', 1) ->orderBy('id', 'DESC') ->get(); $data['grupuri'] = $query->getResultArray(); $data['header_img'] = '/assets/images/headers/header_discutii.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; $data['main_content'] = 'proiecte/discutii'; // $this->load->view('template', $data); return view('template', $data); } public function fisiere($id = 0){ $data['tip_conturi'] = $this->usersModel->get_user_category(); $data['nr_notif'] = get_count_notif(); $active = array(); $active[0]=''; // brief $active[1]=''; // buget $active[2]=''; // furnizori $active[3]=''; // task-uri $active[4]=''; // istoric $active[5]=''; // disctuii $active[6]='active'; // fisiere $data['active'] = $active; $active_m = array(); $active_m[0]='active'; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]=''; // notificari $data['active_m'] = $active_m; /* $this->db->select('*'); $this->db->where('id_proiect', $id); $this->db->order_by('id','desc'); $data['files'] = $this->db->get('files')->result_array();*/ $query = $this->db->table('files') ->select('*') ->where('id_proiect', $id) ->orderBy('id', 'DESC') ->get(); $data['files'] = $query->getResultArray(); $data['proiect'] = $this->info_proiect($id); $data['taskuri'] = $this->get_taskuri($id); $data['idP'] = $id; $data['tip_user'] = tip_user(); $data['main_content'] = 'proiecte/fisiere'; $data['header_img'] = '/assets/images/headers/header_fisiere.jpg'; $data['header_text'] = $data['proiect']['proiect']['nume_proiect']; // $this->load->view('template', $data); return view('template', $data); } private function get_cat_proiect($id){ /*$this->db->select('*'); $this->db->join('categorii', 'categorii_proiect.id_cat = categorii.id'); $this->db->where('categorii_proiect.id_proiect',$id); $Qlist = $this->db->get('categorii_proiect')->result_array(); return $Qlist;*/ $query = $this->db->table('categorii_proiect') ->select('*') ->join('categorii', 'categorii_proiect.id_cat = categorii.id') ->where('categorii_proiect.id_proiect', $id) ->get(); return $query->getResultArray(); } public function notificari(){ $active_m = array(); $active_m[0]=''; // proiecte $active_m[1]=''; // lanseaza proiect $active_m[2]=''; // furnizori $active_m[3]=''; // mesaje $active_m[4]='active'; // notificari $data['header_img'] = '/assets/images/headers/header_notificari.jpg'; $data['header_text'] = 'Lista notificari - demo text info '; $data['active_m'] = $active_m; $data['nr_notif'] = get_count_notif(); $data['tip_user'] = tip_user(); /* $this->db->select('invitatii_proiect.*,proiecte.nume,proiecte.tip, categorii.nume, profil.nume, profil.avatar , profil.prenume, conturi.tip_user'); $this->db->select('categorii.nume AS nume_categorie', FALSE); $this->db->select('proiecte.nume AS nume_proiect', FALSE); $this->db->select('proiecte.moneda AS moneda_proiect', FALSE); $this->db->join('proiecte', 'proiecte.id_proiect = invitatii_proiect.id_proiect'); $this->db->join('profil', 'profil.user_id = invitatii_proiect.id_from'); $this->db->join('conturi', 'conturi.id = invitatii_proiect.id_from'); $this->db->join('categorii', 'proiecte.tip = categorii.id'); //$this->db->select('proiecte.email AS email_dev', FALSE); $this->db->where('id_user', id_user()); $this->db->order_by('invitatii_proiect.id', 'desc'); $Qlist = $this->db->get('invitatii_proiect')->result_array(); $data['lista_invitatii'] = $Qlist;*/ $query = $this->db->table('invitatii_proiect') ->select('invitatii_proiect.*, proiecte.nume, proiecte.tip, categorii.nume, profil.nume, profil.avatar , profil.prenume, conturi.tip_user') ->select('categorii.nume AS nume_categorie', false) ->select('proiecte.nume AS nume_proiect', false) ->select('proiecte.moneda AS moneda_proiect', false) ->join('proiecte', 'proiecte.id_proiect = invitatii_proiect.id_proiect') ->join('profil', 'profil.user_id = invitatii_proiect.id_from') ->join('conturi', 'conturi.id = invitatii_proiect.id_from') ->join('categorii', 'proiecte.tip = categorii.id') ->where('id_user', id_user()) ->orderBy('invitatii_proiect.id', 'desc') ->get(); $data['lista_invitatii'] = $query->getResultArray(); /* $this->db->select('*'); $this->db->where('user_id', id_user()); $this->db->order_by('notifications.id', 'desc'); $Qlist = $this->db->get('notifications')->result_array(); $data['notificari'] = $Qlist;*/ $query = $this->db->table('notifications') ->select('*') ->where('user_id', id_user()) ->orderBy('notifications.id', 'desc') ->get(); $data['notificari'] = $query->getResultArray(); foreach($data['lista_invitatii'] as $item){ // echo '<pre>'; // print_r($this->get_cat_proiect($item['id_proiect'])); } /*$this->db->select('*') ->where(array('id_user'=>id_user())) ->update("invitatii_proiect",array("view"=>"1")); $this->db->select('*') ->where(array('user_id'=>id_user())) ->update("notifications",array("view"=>"1")); $data['main_content'] = 'notificari'; $this->load->view('template', $data);*/ $this->db->table('invitatii_proiect') ->where('id_user', id_user()) ->set('view', '1') ->update(); $this->db->table('notifications') ->where('user_id', id_user()) ->set('view', '1') ->update(); $data['main_content'] = 'notificari'; echo view('template', $data); } // } }