<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Student extends CI_Controller {

        #################################################################################
        #                               Pożyteczne pchełki ;)
        #################################################################################    
    public function __construct() {
        parent::__construct();
        $this->user_data = $this->ion_auth->check_user_privilege(array('Firma', 'Admin', 'Student'));
        $this->load->model(array('Student_model'));
        $this->breadcrumbs->push('Start', '/');
        $this->company_id = $this->ion_auth->user()->row()->id;
        $this->company = $this->ion_auth->user()->row()->first_name.' '.$this->ion_auth->user()->row()->last_name;
        $this->base_url = base_url() . '/Student/' . $this->router->fetch_method();
    }
    
    
    public function pre($str){
        echo '<pre>';
        print_r( $str );
        echo '</pre>';
    }
    

    public function konwertuj($str){
        $zakazane = array('"'=>'|',' '=>'_', ','=>'_', 'ś'=>'s', 'ć'=>'c', 'ę'=>'e', 'ą'=>'a', 'ź'=>'z', 'ż'=>'z', 'ó'=>'o', 'ł'=>'l', 'ń'=>'n',
          'Ą' => 'a', 'Ś'=>'s', 'Ć'=>'c', 'Ę'=>'e',  'Ź'=>'z', 'Ż'=>'z', 'Ó'=>'o', 'Ł'=>'l', 'Ń'=>'n');
        $czas = time();  
            //echo 'start = '.$str.'<br>';
        $wynik = strtr($str,$zakazane);
        //echo 'str po strtr: '.$wynik.'<br>';
        $wynik = strtolower($wynik);
        //echo 'str po lower: '.$wynik.'<br>';
        $koniec =  $czas."_".$wynik;
        //echo 'koniec = '.$koniec.'<br>';
        return $koniec;
    }    
    
    
        #################################################################################
        #                               INDEX
        #################################################################################
    
    
    public function index($komunikatStr = false)
	{
		$data['active'] = 'Student';


		$this->breadcrumbs->push('Student', '/Student');
		$data['breadcrumbs'] = $this->breadcrumbs->show();

        if($komunikatStr == false){
            $data['komunikat'] = false;    
        }
        else{
            $data['komunikat'] = true;
            $data['komunikatTyp'] = 'success';
            $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.'; 
        } 
        
        //$this->pre($_SESSION);


		
        //$this->pre($data);
        
        $this->load->view('Base_header', $data);
		$this->load->view('student/Student_widok', $data);
		$this->load->view('Base_footer', $data);
	}
    
        #################################################################################
        #                               EDYCJA DANYCH
        #################################################################################   
    
    public function EdytujDane()
	{


        $this->load->helper('form');
        
        $data['active'] = 'Student';

		$this->breadcrumbs->push('Student', '/Student');
        $this->breadcrumbs->push('Edytuj dane', '/Student/EdytujDane');
		$data['breadcrumbs'] = $this->breadcrumbs->show();

        $data['komunikat'] = false;

        $usershow = $this->ion_auth->user()->row();

        $usershow_addit = $this->Student_model->pobierzUseraAddit($usershow->id);
        
        //$this->pre($usershow_addit);
        
        if(!$usershow_addit){
            $usershow_addit[0]['imie_nazwisko'] = '';
            $usershow_addit[0]['opis_dzialalnosci']= '';
            $usershow_addit[0]['kwalifikacje']= '';
            $usershow_addit[0]['ulica']= '';
            $usershow_addit[0]['nrdomu']= '';
            $usershow_addit[0]['nrlokalu']= '';
            $usershow_addit[0]['kodpocztowy']= '';
            $usershow_addit[0]['miejscowosc']= '';
            //$usershow_addit[0]['wiek']= '';            
            //$usershow_addit[0]['szkola']= '';            
            //$usershow_addit[0]['klasa']= '';            
            $usershow_addit[0]['kierunek']= '';                        
        }
        else{
            
        }
  		//$this->load->model('Wspolne_model');
        $data['id_user'] = $usershow->id;        
        
        $data['poleStareHaslo'] = array(
            'name' => 'nazwaStareHaslo',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Zostaw puste jeśli nie zmieniasz',
			'value'		=> '',
            'type' => 'password'
        );
        
        $data['poleNoweHaslo'] = array(
            'name' => 'nazwaNoweHaslo',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Zostaw puste jeśli nie zmieniasz',
			'value'		=> '',
            'type' => 'password'
        );
        
        $data['poleNoweHasloConfirm'] = array(
            'name' => 'nazwaNoweHasloConfirm',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Zostaw puste jeśli nie zmieniasz',
			'value'		=> '',
            'type' => 'password'
        );        
        
        $data['poleEmail'] = array(
            'name' => 'nazwaEmail',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'E-mail',
			'required'	=> 'required',
			'value'		=> $usershow->email          
        );
        
              
         $data['poleKierunek'] = array(
            'name' => 'nazwaKierunek',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Kierunek',
			'required'	=> 'required',
			'value'		=> $usershow_addit[0]['kierunek']          
        );        
        
        $data['poleCompany'] = array(
            'name' => 'nazwaCompany',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Nazwa firmy',
			'value'		=> $usershow->company          
        );
        
        $data['polePhone'] = array(
            'name' => 'nazwaPhone',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Telefon',
			'value'		=> $usershow->phone         
        );
        
        
        $data['poleFirstName'] = array(
            'name' => 'nazwaFirstName',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Imię',
			'required'	=> 'required',
			'value'		=> $usershow->first_name          
        );

        $data['poleLastName'] = array(
            'name' => 'nazwaLastName',
  			'class'		=> 'form-control inpZielony',
			'placeholder' => 'Nazwisko',
			'required'	=> 'required',
			'value'		=> $usershow->last_name          
        );        
        
        $data['buttonZmienUzytkownika'] = array(
			'class'	=> 'submitZielony margtop20',
			'name'	=> 'zapiszUzytkownika',
			'value'	=> 'Zapisz zmiany'
		); 

            if ($this->input->post('zapiszUzytkownika')) {

                if( !$this->input->post('nazwaNoweHaslo') && !$this->input->post('nazwaNoweHasloConfirm')     ) {
                    // jeśli haslo puste to nie zmieniaj
                    $data_update = array(
                        'email' =>      $this->input->post('nazwaEmail'),
                        'first_name' => $this->input->post('nazwaFirstName'),    
                        'last_name' =>  $this->input->post('nazwaLastName'), 
                        'company' =>    $this->input->post('nazwaCompany'), 
                        'phone' =>      $this->input->post('nazwaPhone'), 
                    );                    
                    // hasla nie zmieniamy, ale komunikat ma sie zgadzać
                    $change_password = true;
                }
                else{
                    $data_update = array(
                        'email' =>      $this->input->post('nazwaEmail'),
                        'first_name' => $this->input->post('nazwaFirstName'),    
                        'last_name' =>  $this->input->post('nazwaLastName'), 
                        'company' =>    $this->input->post('nazwaCompany'), 
                        'phone' =>      $this->input->post('nazwaPhone'), 
                    );   
                    
                $identityMail = $_SESSION['identity'];                   
                $change_password = $this->ion_auth->change_password($identityMail, $this->input->post('nazwaStareHaslo'), $this->input->post('nazwaNoweHaslo') );                      
                }

                $additUpdate = array(
                    'id_users' => $_SESSION['user_id'],                   
                    'kierunek' =>   $this->input->post('nazwaKierunek'),
                );

                
                $czy_update = $this->ion_auth->update($_SESSION['user_id'], $data_update);
                $czy_update2 = $this->Student_model->podmienAddit($additUpdate);

                $data['komunikat'] = true;
                if($czy_update && $czy_update2 && $change_password){
                    $data['komunikatTyp'] = 'success';
                    $data['komunikatTresc'] = 'Dane użytkownika pomyślnie zmienione';  
                    redirect( base_url('Student/index/Ok') );

                }
                else{
                    $data['komunikatTyp'] = 'danger';
                    
                    if(!$change_password){
                        $data['komunikatTresc'] = 'Błąd! Błędne stare hasło lub niewłaściwe nowe hasło!  ';                    
                    }
                    else{
                        $data['komunikatTresc'] = 'Błąd zmiany danych użytkownika!';                
                    }
                    
                }

            }         

        //$this->pre($_SESSION);
		$this->load->view('Base_header', $data);
		$this->load->view('student/EdytujDane_widok', $data);
		$this->load->view('Base_footer', $data);        
        
        
        
	}
    
    
            #################################################################################
    #                               Biblioteka
    #################################################################################
    
    public function Portfolio($komunikatStr = false)
	{
        $data['active'] = 'Student';

        
        $this->load->model('Wspolne_model');
        $this->load->model('Student_model');
        $user_id = $_SESSION['user_id'];

        $data['poleZNazwaPliku'] = array(
            'name' => 'nazwaDokumentu',
  			'class'		=> 'form-control',
			'placeholder' => 'Nazwa pliku',
			'required'	=> 'required',
			'value'		=> ''          
        );
        
        
        $data['buttonDodajPlik'] = array(
			'class'	=> 'btn btn-primary btn-block margtop20',
			'name'	=> 'zapiszPlik',
			'value'	=> 'Zapisz zmiany'
		);
        
        
		$this->breadcrumbs->push('Start', '/');
		$this->breadcrumbs->push('Student', '/Student');
        $this->breadcrumbs->push('Portfolio', '/Student/Portfolio');
		$data['breadcrumbs'] = $this->breadcrumbs->show();
		$data['komunikat'] = false;
        

        if ($this->input->post('zapiszPlik')) {
            
            $data['komunikat'] = true;
            
            if( isset($_FILES['plikx']['name'])  and $_FILES['plikx']['name'] != '' ) {
                $losuj = time();
                $sciezka = './assets/files/portfolio/'; // ze slashem na koncu!!!
                $tmp_name = $_FILES['plikx']['tmp_name'];
                $nazwa_start = $_FILES['plikx']['name'];
                $nazwax = $this->konwertuj($nazwa_start);
                //exit;
                
                if(move_uploaded_file($tmp_name, $sciezka.$nazwax)){
                    if( !$this->input->post('nazwaDokumentu')   ){
                        $nazwaDokum = $nazwa_pliku; 
                    }
                    else{
                        $nazwaDokum = $this->input->post('nazwaDokumentu');
                    }
                    // rzuć dane do bazy danych
                    $czy_upload = $this->Student_model->uploadPortfolio( $this->input->post('staze'), $user_id, $nazwaDokum, $nazwax  );    
                    if( $czy_upload ){
                        $data['komunikatTyp'] = 'success';
                        $data['komunikatTresc'] = 'Dodawanie pytań pomyślnie zmienione';  
                        // przekieruj z komunikatem, że wszystko gra
                        redirect( base_url('Student/Portfolio/Ok') );

                    }
                    else{
                        // blad dodawania do bazy danych
                        $data['komunikatTyp'] = 'danger';
                        $data['komunikatTresc'] = 'Błąd dodawania pliku do bazy danych!';                
                    }
                }
                else{
                    // blad wrzucania pliku na serwer
                    $data['komunikatTyp'] = 'danger';
				    $data['komunikatTresc'] = 'Błąd dodawania pliku na serwer!'; 
                }
            }
            else{
                // blad wrzucania pliku na serwer
                $data['komunikatTyp'] = 'danger';
				$data['komunikatTresc'] = 'Błąd! Nie dodałeś pliku do formularza!';                 
            }
            


            
		}  // koniec post 
        
        if($komunikatStr == false){
            $data['komunikat'] = false;    
        }
        else{
            $data['komunikat'] = true;
            $data['komunikatTyp'] = 'success';
            $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.'; 
        }        
        
        $data['listaPortfolio'] = $this->Student_model->pobierzPliki();
        
        $data['dropdownStaze'] = $this->Wspolne_model->pobierzListeSelect('staze','','',false);

        
		$this->load->view('Base_header', $data);
		$this->load->view('student/portfolio_widok', $data);
		$this->load->view('Base_footer', $data);
	}
    
    public function Portfolio_Pobierz($ide){
        $this->load->model('Student_model');
        
        $nazwaPliku = $this->Student_model->PobierzNazwePliku($ide);        
        $sciezka = base_url().'assets/files/portfolio/'.$nazwaPliku[0]['plik']; 
        header('Content-Type: application/pdf');
        header('Content-disposition: attachment;filename='.$nazwaPliku[0]['plik']);
        readfile($sciezka);  
    }
    
    //-------------------------------------------------------------------------------------------------------------------
    
    public function Portfolio_Usun($ide){
        $this->load->model('Student_model');
        
        // wybierz plik
        $data['komunikat'] = true;  // zamiast pracodawca - elearning
        $nazwaPliku = $this->Student_model->PobierzNazwePliku($ide);
        $sciezka = './assets/files/portfolio/'.$nazwaPliku[0]['plik'];
        if(file_exists($sciezka) ){
            if( unlink($sciezka) ){
                if( $this->Student_model->UsunPlikZBazy($ide) ){
                    redirect( base_url('Student/Portfolio/Ok') );
                }
                else{
                    $data['komunikatTyp'] = 'danger';
                    $data['komunikatTresc'] = 'Błąd usuwania z bazy danych! ';                      
                }
                
               
            }
            else{
                $data['komunikatTyp'] = 'danger';
				$data['komunikatTresc'] = 'Błąd usuwania pliku z serwera! ';         
            }
        }
        else{
                $data['komunikatTyp'] = 'danger';
				$data['komunikatTresc'] = 'Błąd! Brak pliku na serwerze!';   
        }
       echo $data['komunikatTresc'];
       //print_r($data);
        //echo $sciezka.'<br>';
    }
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    #################################################################################
    #                               Biblioteka
    #################################################################################
    
    public function Biblioteka($komunikatStr = false)
	{
		$this->load->model('Wspolne_model');
        $this->load->model('Pracodawca_Elearning_model');
        
        
        $data['active'] = 'Student';
        $data['logged'] = $this->ion_auth->logged_in();
        $data['logUser'] = $this->get_user(); 
        $data['user_level'] = $this->get_user_level();

        $data['poleZNazwaPliku'] = array(
            'name' => 'nazwaDokumentu',
  			'class'		=> 'form-control ',
			'placeholder' => 'Nazwa pliku',
			'required'	=> 'required',
			'value'		=> ''          
        );
        
        
        $data['buttonDodajPlik'] = array(
			'class'	=> 'btn btn-primary btn-block margtop20',
			'name'	=> 'zapiszPlik',
			'value'	=> 'Zapisz zmiany'
		);
        
        
		$this->breadcrumbs->push('Start', '/');
		$this->breadcrumbs->push('Student', '/Student');
        $this->breadcrumbs->push('Biblioteka', '/Student/Biblioteka');
		$data['breadcrumbs'] = $this->breadcrumbs->show();
		$data['komunikat'] = false;
        

        if ($this->input->post('zapiszPlik')) {
            
            $data['komunikat'] = true;
            
            if( isset($_FILES['plikx']['name'])  and $_FILES['plikx']['name'] != '' ) {
                $losuj = time();
                $sciezka = './assets/files/biblioteka/'; // ze slashem na koncu!!!
                $tmp_name = $_FILES['plikx']['tmp_name'];
                $nazwa_start = $_FILES['plikx']['name'];
                $nazwax = $this->konwertuj($nazwa_start);
                //exit;
                
                if(move_uploaded_file($tmp_name, $sciezka.$nazwax)){
                    if( !$this->input->post('nazwaDokumentu')   ){
                        $nazwaDokum = $nazwa_pliku; 
                    }
                    else{
                        $nazwaDokum = $this->input->post('nazwaDokumentu');
                    }
                    // rzuć dane do bazy danych
                    $czy_upload = $this->Pracodawca_Elearning_model->uploadBiblioteka( $this->input->post('nazwaZadania'), $nazwaDokum, $nazwax  );    
                    if( $czy_upload ){
                        $data['komunikatTyp'] = 'success';
                        $data['komunikatTresc'] = 'Dodawanie pytań pomyślnie zmienione';  
                        // przekieruj z komunikatem, że wszystko gra
                        redirect( base_url('Student/Biblioteka/Ok') );

                    }
                    else{
                        // blad dodawania do bazy danych
                        $data['komunikatTyp'] = 'danger';
                        $data['komunikatTresc'] = 'Błąd dodawania pliku do bazy danych!';                
                    }
                }
                else{
                    // blad wrzucania pliku na serwer
                    $data['komunikatTyp'] = 'danger';
				    $data['komunikatTresc'] = 'Błąd dodawania pliku na serwer!'; 
                }
            }
            else{
                // blad wrzucania pliku na serwer
                $data['komunikatTyp'] = 'danger';
				$data['komunikatTresc'] = 'Błąd! Nie dodałeś pliku do formularza!';                 
            }
            


            
		}  // koniec post 
        
        if($komunikatStr == false){
            $data['komunikat'] = false;    
        }
        else{
            $data['komunikat'] = true;
            $data['komunikatTyp'] = 'success';
            $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.'; 
        }        
        
        $data['listaBiblioteki'] = $this->Pracodawca_Elearning_model->pobierzPliki();
        
        $data['dropdownZawody'] = $this->Wspolne_model->pobierzListeSelect('zawody','','',false);
        $data['dropdownZadania'] = $this->Wspolne_model->pobierzListeSelect('zadania_zawodowe','id_zawody',1,false);
        
		$this->load->view('Base_header', $data);
		$this->load->view('student/biblioteka_widok', $data);
		$this->load->view('Base_footer', $data);
	}
    
    public function Biblioteka_Pobierz($ide){
        $this->load->model('Pracodawca_Elearning_model');
        
        $nazwaPliku = $this->Pracodawca_Elearning_model->PobierzNazwePliku($ide);        
        $sciezka = base_url().'assets/files/biblioteka/'.$nazwaPliku[0]['plik']; 
        header('Content-Type: application/pdf');
        header('Content-disposition: attachment;filename='.$nazwaPliku[0]['plik']);
        readfile($sciezka);  
    }
    
    //-------------------------------------------------------------------------------------------------------------------
    
    public function Biblioteka_Usun($ide){
        $this->load->model('Pracodawca_Elearning_model');
        // wybierz plik
        $data['komunikat'] = true; 
        $nazwaPliku = $this->Pracodawca_Elearning_model->PobierzNazwePliku($ide);
        $sciezka = './assets/files/biblioteka/'.$nazwaPliku[0]['plik'];
        if(file_exists($sciezka) ){
            if( unlink($sciezka) ){
                if( $this->Pracodawca_Elearning_model->UsunPlikZBazy($ide) ){
                    redirect( base_url('Student/Biblioteka/Ok') );
                }
                else{
                    $data['komunikatTyp'] = 'danger';
                    $data['komunikatTresc'] = 'Błąd usuwania z bazy danych! ';                      
                }
                
               
            }
            else{
                $data['komunikatTyp'] = 'danger';
				$data['komunikatTresc'] = 'Błąd usuwania pliku z serwera! ';         
            }
        }
        else{
                $data['komunikatTyp'] = 'danger';
				$data['komunikatTresc'] = 'Błąd! Brak pliku na serwerze!';   
        }
       //print_r($data);
        //echo $sciezka.'<br>';
    }
    
    
    #################################################################################
    #                               Oceń staż
    #################################################################################    
    
    public function OcenStaz($komunikatStr = false,$lastOpened = false)
	{
		$this->load->model('Wspolne_model');
        $this->load->model('Student_model');
        //$this->pre($_SESSION);
        $data['active'] = 'Student';
        $data['logged'] = $this->ion_auth->logged_in();
        $data['logUser'] = $this->get_user(); 
        $data['user_level'] = $this->get_user_level();
    

		$this->breadcrumbs->push('Start', '/StronaGlowna');
		$this->breadcrumbs->push('Student', '/Student');
        $this->breadcrumbs->push('Oceń staż', '/OcenStaz/index/staz/');
		$data['breadcrumbs'] = $this->breadcrumbs->show();
        
        $user = $_SESSION['user_id'];

        if($komunikatStr == false){
            $data['komunikat'] = false;    
        }
        else{
            $data['komunikat'] = true;
            $data['komunikatTyp'] = 'success';
            $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.'; 
        } 
        
        //$this->pre($_SESSION);
 		$data['poleKomentarz'] = array(
			'class'		=> 'form-control margtop20',
			'name'		=> 'poleKomentarzStazu',
            'placeholder'     => 'Wpisz swój komentarz',
		); 
        
        
        
        $data['buttonOcenStaz'] = array(
			'class'		=> 'btn btn-primary btn-block display-none margtop20',
			'name'		=> 'zapiszOceneStazu',
            'value'     => 'Oceń',
		);  
        //$this->pre($_POST);
        if ($this->input->post('zapiszOceneStazu')) {
            
            $idStazu = $this->input->post('przygotujOceneStazu');
            
        
            $ocena = $this->input->post('ocenaStazu');    
            $komentarz = $this->input->post('poleKomentarzStazu');
                
            $zapisz = $this->Student_model->dodajOceneStazu($idStazu, $user, $ocena, $komentarz);
            if($zapisz){
                redirect( base_url('Student/OcenStaz/index/Ok') );
            }
            else{
                $data['komunikat'] = true;
                $data['komunikatTyp'] = 'success';
                $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.';                
            }
            
        }
        
        if(is_numeric($lastOpened)){
            $data['last_opened'] = $lastOpened;                                        // pobierz bez jsona
            $data['elementy_stazu'] = $this->Student_model->pobierzElementy($lastOpened);
        }
        else{
            $data['last_opened'] = false;
            $data['elementy_stazu'] = array();
        }
        
        
        $data['dropdownZawod'][0] = 'Wybierz stanowisko';
        
        if($lastOpened ){
            $data['listaOcenione'] = $this->Student_model->pobierzOcenione($lastOpened, $user);    
        }
        else{
            $data['listaOcenione'] = false;     
        }
        
        $data['dropdownStaz'] = $this->Wspolne_model->pobierzListeSelect('staze',false, false, false, true);
        $data['listaMoichOcen'] = $this->Student_model->pobierzMojeOceny($user);
        
        //$this->pre($data['listaMoichOcen']);
        $data['listaZadanStart'] = array();
        
        
		$this->load->view('Base_header', $data);
		$this->load->view('student/ocenStaz_widok', $data);
		$this->load->view('Base_footer', $data);
	}
    
   //=========================================================================================================
    
    public function WybierzElementOcena($idStaz, $idElement, $komunikatStr = false){
		$this->load->model('Wspolne_model');
        $this->load->model('Student_model');
        //$this->pre($_SESSION);
        $data['active'] = 'Student';
        $data['logged'] = $this->ion_auth->logged_in();
        $data['logUser'] = $this->get_user(); 
        $data['user_level'] = $this->get_user_level();
    

		$this->breadcrumbs->push('Start', '/StronaGlowna');
		$this->breadcrumbs->push('Student', '/Student');
        $this->breadcrumbs->push('Oceń staż', '/OcenStaz/index/'.$idStaz.'/');
        $this->breadcrumbs->push('Wystaw ocenę', '/WybierzElementOcena');
		$data['breadcrumbs'] = $this->breadcrumbs->show();
        $user = $_SESSION['user_id'];

        if($komunikatStr == false){
            $data['komunikat'] = false;    
        }
        else{
            $data['komunikat'] = true;
            $data['komunikatTyp'] = 'success';
            $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.'; 
        } 
        

        
        
        $data['buttonOcenElement'] = array(
			'class'		=> 'btn btn-primary btn-block margtop20',
			'name'		=> 'zapiszOcenePodzadania',
            'value'     => 'Wystaw ocenę',
		);  
        //-------------------------------------------------------------------------------
        //$this->pre($_POST);
        if ($this->input->post('zapiszOcenePodzadania')) {
            $sprawdzPuste = false;
            $posty = $this->input->post();
            foreach( $posty as $klucz => $dane ){
                if(!$dane){
                    $sprawdzPuste = true;
                    break;
                }
                else{
                    if( strpos($klucz, 'ocenaStazu')!== false ){
                        $rozwal = explode("_",$klucz);
                        $tablica_ocen[ $rozwal[1] ] = $dane;

                    }
                }
            }
            
            if(!isset($tablica_ocen) ){
                $tablica_ocen = array();
            }

            if($sprawdzPuste){
                $data['komunikat'] = true;
                $data['komunikatTyp'] = 'danger';
                $data['komunikatTresc'] = 'Dane nie zostały zapisane! Musisz wystawić wszystkie oceny!';                
            }
            else{
                $zapisz = $this->Student_model->dodajOcenePodzadania($idStaz, $idElement, $user, $tablica_ocen);
                if($zapisz == true){
                    redirect( base_url('Student/OcenStaz/index/'.$idStaz.'/'.$idElement) );
                }
                elseif($zapisz == -1){
                    $data['komunikat'] = true;
                    $data['komunikatTyp'] = 'danger';
                    $data['komunikatTresc'] = 'Ten element został już przez Ciebie oceniony!';                 
                }
                else{
                    $data['komunikat'] = true;
                    $data['komunikatTyp'] = 'danger';
                    $data['komunikatTresc'] = 'Dane nie zostały zapisane! Musisz wystawić wszystkie oceny!';                
                }                
            }
            

            
        }
        //---------------------------------------------------------------------------------------
        
        
        
        $data['dropdownZawod'][0] = 'Wybierz stanowisko';
        $data['dropdownStaz'] = $this->Wspolne_model->pobierzListeSelect('staze',false, false, false, true);
        $data['last_opened'] = $idStaz;
        $data['element_stazu'] = $this->Student_model->pobierzElementJeden($idStaz,$idElement);
        $data['idStaz'] = $idStaz;
        $data['idElement'] = $idElement;
        
        //$this->pre($data['element_stazu']);
        
        //$this->pre($data['listaMoichOcen']);
        $data['listaZadanStart'] = array();
        
        
		$this->load->view('Base_header', $data);
		$this->load->view('student/ocenStaz_elementy_widok', $data);
		$this->load->view('Base_footer', $data);
        
    }
    
        #################################################################################
        #                              Oceń staż AJAX
        #################################################################################   
    
    public function PobierzListeZadan($ideStazu)
	{
        if( !is_numeric($ideStazu) ){
            $ideStazu = 0;
            $str = 'error';
            
        }
        else{
            //print_r($_SESSION);
                   
            $this->load->model('Student_model');
            //$this->load->helper('form');
            $tablica = $this->Student_model->pobierzElementy($ideStazu);
            $listaOcenione = $this->Student_model->pobierzOcenione($ideStazu, $_SESSION['user_id']);
            
            foreach($tablica as $klucz => $dane){
               if( in_array($dane['id'], $listaOcenione ) ){
                  $tablica[$klucz]['id'] = -1; 
               } 
            }
            
            
            
            //$username = $this->Student_Staz_model->pobierzUsera($_SESSION['user_id']);
            
            //foreach($firmy as $kl=>$danex){
            //    $firmy[$kl]['email'] = base64_encode($danex['email']);
            //}
            //$this->pre($firmy);
            
            //$zadaniaZawodowe = $this->Student_Staz_model->pobierzZadaniaCzas($ide);
            //$nazwaZawodu = $this->Student_Staz_model->pobierzNazweZawodu($ide);    


            //$tablica['user_id'] = $_SESSION['user_id'];
            //$tablica['username'] = $username[0]['username'];
            //$tablica['username_test'] = base64_encode($username[0]['email']);
            //$tablica['nazwaZawodu'] = $nazwaZawodu[0]['nazwa'];    
            //$tablica['zawody'] = $zadaniaZawodowe;
            //$tablica['zadania'] = $zadaniaZawodowe;
            //$tablica['podzadania'] = $zadaniaZawodowe;
            
            //$tablica['firmy'] = $firmy;
            

        } // koniec else
        echo json_encode($tablica);
	}

 public function SprawdzUseraStaze($idStaz, $idUser){
    $this->load->model('Student_model');
     echo $this->Student_model->sprawdzUseraStaz($idStaz,$idUser);
     
 }   
    
    
    
    
    #################################################################################
    #                               RANKING PRACOWDAWCOW
    #################################################################################    
    
    public function RankingPracodawcow($sortuj = 'kompleksowosc',$komunikatStr = false)
	{
		$this->load->model('Wspolne_model');
        $this->load->model('Student_model');
        //$this->pre($_SESSION);
        $data['active'] = 'Student';
        $data['logged'] = $this->ion_auth->logged_in();
        $data['logUser'] = $this->get_user(); 
        $data['user_level'] = $this->get_user_level();
    

		$this->breadcrumbs->push('Start', '/StronaGlowna');
		$this->breadcrumbs->push('Student', '/Student');
        $this->breadcrumbs->push('Ranking Pracodawców', '/RankingPracodawcow');
        
		$data['breadcrumbs'] = $this->breadcrumbs->show();
        
        $user = $_SESSION['user_id'];

        if($komunikatStr == false){
            $data['komunikat'] = false;    
        }
        else{
            $data['komunikat'] = true;
            $data['komunikatTyp'] = 'success';
            $data['komunikatTresc'] = 'Dane zostały pomyślnie uaktualnione.'; 
        } 
        
 
        $data['rankingPracodawcow'] = $this->Student_model->pobierzRankingPracodawcow($sortuj);
        

        //$data['dropdownPracodawca'] = $this->Student_model->pobierzListePracodawcow();
        //$data['listaMoichOcen'] = $this->Student_model->pobierzMojeOcenyPracodawcow($user);
        
        //$this->pre($data['rankingPracodawcow']);
        $data['listaZadanStart'] = array();
        
        
		$this->load->view('Base_header', $data);
		$this->load->view('student/rankingPracodawcow_widok', $data);
		$this->load->view('Base_footer', $data);
	}    
    
    ////////////////////////////////////////////////////////////////////////////////////////
    
    public function SprawdzOcenyPracodawcy($idOceniajacy){
    $this->load->model('Student_model');
     echo $this->Student_model->sprawdzOcenyPracodawcy($idOceniajacy);        
    }
    
   
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
} // koniec klasy
