<?php
/*
# Fuer debugging
error_reporting(E_ALL);
ini_set('display_errors', 1);
#echo __LINE__."<br>";
*/
include_once './classes/TestProjektSmarty.class.php';
$smarty = new Smarty();
require_once("./config.inc.php");
$template = "standard";
$templatename = substr(basename($_SERVER['PHP_SELF']),0,-3)."html";
require_once "./language/german.inc.php";
require_once("func_rollenrechte.php");


// Rechteüberprüfung
#$db = dbconnect();
if ($user_admin == ""){ require("index.php"); exit;} //Wenn man nicht angemeldet ist, darf man nicht auf die Seite
if(!rore($user_admin,'a_schulbearb','RE')){echo "Keine Rechte";exit;}
// Rechteüberprüfung ende

session_start();



# Wenn Seite neu aufgerufen wird, dann alle Sessions, die mit "bearbeiten_" beginnen löschen
if(isset($_GET['new']) AND $_GET['new'] == 1){;
  $search_prefix = 'user_bearbeiten_';
  $search_len = strlen($search_prefix);
  foreach( $_SESSION as $key => $value){
    if ( substr( $key, 0, $search_len) == $search_prefix) {
      unset( $_SESSION[$key]);
    }
  }
}

if(isset($_GET['action'])){
  $action = $_GET['action'];
}else{
  $action = '';
}

if($action == ''){
    #$db = dbconnect();
    $query = "SELECT userid, vorname, nachname
                FROM users
               ORDER BY nachname ASC";
    $result = $db->query( $query)
              or die ("Cannot execute query");

    while ($row = $result->fetch_array()){
      $bezeichnung ="$row[nachname], $row[vorname]";
      $row['bezeichnung'] = $bezeichnung;
      $value_while[] = $row;
    }
    $smarty->assign('table_data', $value_while);
}

if($action == 'stammdaten'){
  
  # Daten aus Startseite speichern
  if(isset($_POST['benutzer'])){
    $_SESSION["user_bearbeiten_userid"] = $_POST['benutzer'];
  }else{
    if(!isset($_SESSION["user_bearbeiten_userid"])){
      $_SESSION["user_bearbeiten_userid"] = "";
    }
  
  }
  # Daten aus Startseite speichern ENDE
  
  if($_SESSION["user_bearbeiten_userid"] == ""){
    $smarty->assign('user_bearbeiten_mandatory_auswahl', "1");
  }else{
    $smarty->assign('user_bearbeiten_mandatory_auswahl', "2");
    
    # Daten aufbereiten für Zurückbutton
      if(isset($_SESSION["user_bearbeiten_vorname"])){
        $smarty->assign('user_bearbeiten_vorname', $_SESSION["user_bearbeiten_vorname"]);
      }else{
        #$db = dbconnect();
        $result_data = $db->query("SELECT vorname FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
        $row_data = $result_data->fetch_array();
        $_SESSION["user_bearbeiten_vorname"] = "$row_data[vorname]";
        $smarty->assign('user_bearbeiten_vorname', $_SESSION["user_bearbeiten_vorname"]);
      }
      
      if(isset($_SESSION["user_bearbeiten_nachname"])){
        $smarty->assign('user_bearbeiten_nachname', $_SESSION["user_bearbeiten_nachname"]);
      }else{
        #$db = dbconnect();
        $result_data = $db->query("SELECT nachname FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
        $row_data = $result_data->fetch_array();

        $_SESSION["user_bearbeiten_nachname"] = "$row_data[nachname]";
        $smarty->assign('user_bearbeiten_nachname', $_SESSION["user_bearbeiten_nachname"]);
      }
      
      if(isset($_SESSION["user_bearbeiten_religionspflicht"])){
        $smarty->assign('user_bearbeiten_religionspflicht_check', $_SESSION["user_bearbeiten_religionspflicht"]);
      }else{
        #$db = dbconnect();
        $result_data = $db->query("SELECT religionspflicht FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
        $row_data = $result_data->fetch_array();
        
        if($row_data['religionspflicht'] == 'J'){
          $smarty->assign('user_bearbeiten_religionspflicht_check', 'J');
        }else{
          $smarty->assign('user_bearbeiten_religionspflicht_check', 'N');
        }
        $_SESSION["user_bearbeiten_religionspflicht"] = "$row_data[religionspflicht]";
        $smarty->assign('user_bearbeiten_religionspflicht', $_SESSION["user_bearbeiten_religionspflicht"]);
      }
      
      
      if(isset($_SESSION["user_bearbeiten_religionskenner"])){
        $smarty->assign('user_bearbeiten_religionskenner_check', $_SESSION["user_bearbeiten_religionskenner"]);
      }else{
        #$db = dbconnect();
        $result_data = $db->query("SELECT upper(religionskenner) religionskenner FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
        $row_data = $result_data->fetch_array();
        
        if($row_data['religionskenner'] == ''){
          $smarty->assign('user_bearbeiten_religionskenner_check', '');
        }
        if($row_data['religionskenner'] == 'EV'){
          $smarty->assign('user_bearbeiten_religionskenner_check', 'EV');
        }
        if($row_data['religionskenner'] == 'RK'){
          $smarty->assign('user_bearbeiten_religionskenner_check', 'RK');
        }
        
        $_SESSION["user_bearbeiten_religionskenner"] = "$row_data[religionskenner]";
        $smarty->assign('user_bearbeiten_religionskenner', $_SESSION["user_bearbeiten_religionskenner"]);
      }
      
      if(isset($_SESSION["user_bearbeiten_mail"])){
        $smarty->assign('user_bearbeiten_mail', $_SESSION["user_bearbeiten_mail"]);
      }else{
        #$db = dbconnect();
        $result_data = $db->query("SELECT mail FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
        $row_data = $result_data->fetch_array();

        $_SESSION["user_bearbeiten_mail"] = "$row_data[mail]";
        $smarty->assign('user_bearbeiten_mail', $_SESSION["user_bearbeiten_mail"]);
      }
    # Daten aufbereiten für Zurückbutton ENDE
  }
}






if($action == 'passwort'){

  # Daten aus Stammdaten speichern
  if(isset($_POST['vorname'])){
    $_SESSION["user_bearbeiten_vorname"] = $_POST['vorname'];
  }
  
  if(isset($_POST['nachname'])){
    $_SESSION["user_bearbeiten_nachname"] = $_POST['nachname'];
  }
  
  if(isset($_POST['religionspflicht'])){
    $_SESSION["user_bearbeiten_religionspflicht"] = $_POST['religionspflicht'];
  }
  
  if(isset($_POST['religionskenner'])){
    $_SESSION["user_bearbeiten_religionskenner"] = $_POST['religionskenner'];
  }
  
  if(isset($_POST['mail'])){
    $_SESSION["user_bearbeiten_mail"] = $_POST['mail'];
  }
  # Daten aus Stammdaten speichern ENDE
  
  
  # Daten aufbereiten für Zurückbutton
  if(isset($_SESSION["user_bearbeiten_passwort"])){
    $smarty->assign('user_bearbeiten_passwort_check', $_SESSION["user_bearbeiten_passwort"]);
  }else{
    # Standardwert auf N
    $smarty->assign('user_bearbeiten_passwort_check', "N");
  }
  # Daten aufbereiten für Zurückbutton ENDE
      
  # Daten aus Profil speichern
  
  if(isset($_POST['profil'])){
  
    $_SESSION["user_bearbeiten_profil"] = $_POST['profil'];
  }
  

}
 
if($action == 'inaktiv'){
  
  # Daten aufbereiten für Zurückbutton
  if(isset($_SESSION["user_bearbeiten_inaktiv"])){
    $smarty->assign('user_bearbeiten_inaktiv_check', $_SESSION["user_bearbeiten_inaktiv"]);
  }else{
    $result_data = $db->query("SELECT inaktiv FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
    $row_data = $result_data->fetch_array();
    
    $_SESSION["user_bearbeiten_inaktiv"] = $row_data['inaktiv'];
    $smarty->assign('user_bearbeiten_inaktiv_check', $_SESSION["user_bearbeiten_inaktiv"]);
  }
  # Daten aufbereiten für Zurückbutton ENDE
  
  # Daten aus Passwort speichern
  if(isset($_POST['passwort'])){
    $_SESSION["user_bearbeiten_passwort"] = $_POST['passwort'];
  }
  # Daten aus Passwort speichern ENDE
  
  
}


if($action == 'overview'){

  # Daten aus "inaktiv" speichern
  if(isset($_POST['inaktiv'])){
    $_SESSION["user_bearbeiten_inaktiv"] = $_POST['inaktiv'];
  }
  # Daten aus "inaktiv" speichern ENDE
  
  
  
  #echo "<hr>";
  #echo nl2br(print_r($_SESSION,true));  
  #echo "<hr>";

    
    if($_SESSION["user_bearbeiten_religionspflicht"] == 'J'){
      $religionspflicht = "Ja";
    }else{
      $religionspflicht = "Nein";
    }
    
    if($_SESSION["user_bearbeiten_religionskenner"] == ''){
      $religionskenner = "Nicht religionspflichtig";
    }
    
    if($_SESSION["user_bearbeiten_religionskenner"] == 'EV'){
      $religionskenner = "Evangelisch";
    }
    
    if($_SESSION["user_bearbeiten_religionskenner"] == 'RK'){
      $religionskenner = "R&ouml;misch katholisch";
    }
    
    

    if($_SESSION["user_bearbeiten_passwort"] == 'J'){
      $passwd = "Ja";
    }else{
      $passwd = "Nein";
    }
    
    if($_SESSION["user_bearbeiten_inaktiv"] == 'J'){
      $inaktiv = "Ja";
    }else{
      $inaktiv = "Nein";
    }

   
    $result_uid = $db->query("SELECT user FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
    $row_uid = $result_uid->fetch_array();
    
    
    $smarty->assign('user_bearbeiten_vorname', $_SESSION["user_bearbeiten_vorname"]);
    $smarty->assign('user_bearbeiten_nachname', $_SESSION["user_bearbeiten_nachname"]);
    $smarty->assign('user_bearbeiten_religionspflicht', $religionspflicht);
    $smarty->assign('user_bearbeiten_religionskenner', $religionskenner);
    $smarty->assign('user_bearbeiten_user', $row_uid["user"]);
    $smarty->assign('user_bearbeiten_mail', $_SESSION["user_bearbeiten_mail"]);
    $smarty->assign('user_bearbeiten_passwort', $passwd);
    $smarty->assign('user_bearbeiten_inaktiv', $inaktiv);
    
}

   
if($action == 'save'){

  # dt_patrone
  $bearbeiten_vorname = trim($_SESSION["user_bearbeiten_vorname"]);
  $bearbeiten_nachname = trim($_SESSION["user_bearbeiten_nachname"]);
  $bearbeiten_mail = trim($_SESSION["user_bearbeiten_mail"]);
  $bearbeiten_religionspflicht = trim($_SESSION["user_bearbeiten_religionspflicht"]);
  $bearbeiten_religionskenner = trim($_SESSION["user_bearbeiten_religionskenner"]);
  
  #$db = dbconnect();
  $result_uid = $db->query("SELECT user, date_format(geburtstag, '%d%m%Y') passwort FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
  $row_uid = $result_uid->fetch_array();

  $benutzerkennung = $row_uid["user"];
  $passwortcheck = $_SESSION["user_bearbeiten_passwort"];
  $inaktiv = $_SESSION["user_bearbeiten_inaktiv"];
  $userid = $_SESSION["user_bearbeiten_userid"];
  
  # Profil
  $bearbeiten_profil = $_SESSION["user_bearbeiten_profil"];
  $bearbeiten_profil_rozuid = $_SESSION["user_bearbeiten_profil_rozuid"];
  
  if($passwortcheck == "J"){
    $passwd = md5($row_uid['passwort']);
  }else{
    #$db = dbconnect();
    $result_pwd = $db->query("SELECT passwort FROM users WHERE userid='$_SESSION[user_bearbeiten_userid]'");
    $row_pwd = $result_pwd->fetch_array();

    $passwd = $row_pwd['passwort'];
    $pw_expire = $row_pwd['pw_expire'];  // ISO-8601 Format
  }


  $sql1 = $db->query("UPDATE users 
                          SET vorname = '$bearbeiten_vorname'
                             ,nachname = '$bearbeiten_nachname'
                             ,religionspflicht = '$bearbeiten_religionspflicht'
                             ,religionskenner = '$bearbeiten_religionskenner'
                             ,mail = '$bearbeiten_mail'
                             ,passwort = '$passwd'
                             ,inaktiv = '$inaktiv'
                        WHERE userid = '$userid'
                     ");

   if(!$sql1){
     $error = TRUE;
     $error_reason .= "Fehler beim anlegen von Stammdaten (schueler)<br>";
   }else{
     $error = FALSE;
   }

       
   if(!$error){
     $smarty->assign('user_bearbeiten_inserterr', "2");
     
       # Passwort wurde nicht geändert
       $smarty->assign('user_bearbeiten_success', "1");                          // Erfolgsmeldung ausgeben

   }else{ // ELSE IF: Wenn Insert nicht geklappt hat
     $smarty->assign('user_bearbeiten_inserterr', "1");
     $smarty->assign('user_bearbeiten_reason', "$error_reason");  // Kein Mailversand
   } // Ende IF : Insert hat geklappt
   session_destroy(); 
}


$smarty->assign('action', "$action");
$smarty->display("$template/$templatename");
?>