Untitled
user_4191664
plain_text
3 years ago
50 kB
13
Indexable
<?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);
}
// }
}
Editor is loading...