<?php
#include("kurs/datenbankanbindung.php"); // f&uuml;gt die Datenbankanbindung ein: Sys:\php\includes\kurs\datenbankanbindung.php

# Beim Button Mailversand muss es eine Schleife geben,
# die prüft, welche Dokumente versendet werden müssen:
/* ähnlich disesm select
SELECT a.saaid, b.uid, a.zuweisung, vorname, nachname,a.qid 
FROM stan_printqueue_antrag a, stan_antrag b, stud c 
WHERE (a.saaid=b.saaid or a.uid=b.uid) 
AND b.uid=c.uid 
AND b.uid='55200' 
AND druckstatus ='N' 
*/
# Dann wird mit funktion zuweisung_mail die jeweilige PDF erzeugt,
# darauf achten, dass Anträge an Student nur einmal erzeugt werden pro Art (EZS, AES)
# Returnwert ist der Dateiname der pdf
# Diese pdf an hinterlegte Mailadresse schicken.
# Wenn es keine Mailadresse gibt, dann Status neu und Briefdruck, damit es über alle offenen Zuweisungen gedruckt werden kann.
  define('FPDF_FONTPATH','font/');
  require_once('prints/as_utf_class.php');
 
  
  
function zuweisung_mail($hs, $zuweisung, $extid, $uid, $hist){

  #user Admin um in stan_printqueue_antrag updates zu machen
  $user_admin=$_COOKIE["user_admin"];
  
  $pdf= new utfFPDF();
  if($hs == 'K'){
      require("prints/table_def_kehl.inc");
  }
  if($hs == 'L'){
    require("prints/table_def.inc");
  }
  
  if($hs == 'L'){
    $pagecount = $pdf->setSourceFile("anschreiben/briefkopf_blanko_2023.pdf");
  }
  if($hs == 'K'){
    $pagecount = $pdf->setSourceFile("anschreiben_kehl/blanko_kehl.pdf");
  }
  
  $tplidx = $pdf->ImportPage(1);
  
  # Briefe an den Student werden nur einmal gedruckt. Dort sind alle Praxisstellen darauf
  $lnzaehler1 = 0;
  $lnzaehler2 = 0;
  $lnzaehler3 = 0;
  
  
  $db = dbconnect();
  if($zuweisung != 'SOZ'){
    if(!isset($hist)){
    $querya = "SELECT a.saaid, b.uid, vorname, nachname,a.qid
                FROM stan_printqueue_antrag a, stan_antrag b, stud c
               WHERE a.saaid=b.saaid
                 AND b.uid=c.uid
                 AND b.uid='$uid'
                 AND druckstatus ='N'
                 AND a.zuweisung = '$zuweisung'
                 AND a.saaid = $extid
               ORDER BY uid,sort_order";
    $resulta = $db->query ($querya)
       or die ("Cannot execute query1");
    }else{
    $querya = "SELECT a.saaid, b.uid, vorname, nachname,a.qid
                FROM stan_printqueue_hist a, stan_antrag b, stud c
               WHERE a.saaid=b.saaid
                 AND b.uid=c.uid
                 AND b.uid='$uid'
                 AND druckstatus ='N'
                 AND a.zuweisung = '$zuweisung'
                 AND a.saaid = $extid
               ORDER BY uid,sort_order";
    $resulta = $db->query ($querya)
       or die ("Cannot execute query1");
    }   
    
    
    while ($row_cur_uid = $resulta->fetch_array()){
    
      $resultakt = $db->query("SELECT saaid, aendid, status, zuweisung, uid
                                  FROM stan_antrag
                                 WHERE saaid ='$row_cur_uid[saaid]'
                              ");
      $row_akt = $resultakt->fetch_array();  // Prüfen ob schon Änderungsanträge vorhanden
    
    
      # wird u.a für AEP benötigt
      $res_alt = $db->query("SELECT saaid, aendid, status, zuweisung
                               FROM stan_antrag
                              WHERE saaid<'$row_cur_uid[saaid]'
                                AND aendid='$row_akt[aendid]'
                                AND zuweisung!='NA'
                              ORDER BY saaid DESC
                              LIMIT 1");
      $row_alt = $res_alt->fetch_array();
    
    
      if($lnzaehler1 < 1 AND $zuweisung == 'EZS'){
        $pdf->addPage();
        $pdf->useTemplate($tplidx,0,0,0);
        $pdf->SetAutoPageBreak(true, 10);
        if($hs == 'L'){
          require("anschreiben/zuweisung_erstantrag_student.php");
        }
        if($hs == 'K'){
          require("anschreiben_kehl/zuweisung_erstantrag_student.php");
        }

        # Dokumentenname sichern, auch bei Sammeldrucken EZS
        if(!isset($hist)){
          $resultpo = $db->query("SELECT printed_obj
                                    FROM stan_printqueue_antrag
                                   WHERE qid = '" . $row_cur_uid['qid'] . "'
                    ");
          $row_po = $resultpo->fetch_array();  // Prüfen ob schon Änderungsanträge vorhanden
          
          $printed_obj = explode(',', substr(trim($row_po['printed_obj']), 0, -1));
          for($k=0;$k < count($printed_obj);$k++){
             $sql_queue = $db->query("UPDATE stan_printqueue_antrag 
                                       SET dokument='drucke_mailversand/zuweisung_".$extid."_".$hs."_".$uid."_".$zuweisung.".pdf'
                                     WHERE saaid='" . $printed_obj[$k] . "'
                               ");
          }
        }else{
         # Historiendruck
        }

        $lnzaehler1 =1;
      }
     
      if($zuweisung == 'EZP'){
        $pdf->addPage();
        $pdf->useTemplate($tplidx,0,0,0);
        $pdf->SetAutoPageBreak(true, 10);
        if($hs == 'L'){
          require("anschreiben/zuweisung_erstantrag_praxisstelle.php");
        }
        if($hs == 'K'){
          require("anschreiben_kehl/zuweisung_erstantrag_praxisstelle.php");
        }

        # Dokumentenname sichern
        if(!isset($hist)){
          $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET dokument='drucke_mailversand/zuweisung_".$extid."_".$hs."_".$uid."_".$zuweisung.".pdf' WHERE qid='$row_cur_uid[qid]'");
        }else{
         # Historiendruck
        } 

      }
    
      if($lnzaehler2 < 1 AND $zuweisung == 'AES'){
        $pdf->addPage();
        $pdf->useTemplate($tplidx,0,0,0);
        $pdf->SetAutoPageBreak(true, 10);
        if($hs == 'L'){
          require("anschreiben/zuweisung_aenderung_student.php");
        }
        if($hs == 'K'){
          require("anschreiben_kehl/zuweisung_aenderung_student.php");
        }

        # Dokumentenname sichern, auch bei Sammeldrucken AES
        # Dokumentenname sichern, auch bei Sammeldrucken EZS
        if(!isset($hist)){
          $resultpo = $db->query("SELECT printed_obj
                                    FROM stan_printqueue_antrag
                                   WHERE qid = '" . $row_cur_uid['qid'] . "'
                    ");
          $row_po = $resultpo->fetch_array();  // Prüfen ob schon Änderungsanträge vorhanden
          
          $printed_obj = explode(',', substr(trim($row_po['printed_obj']), 0, -1));
          for($k=0;$k < count($printed_obj);$k++){
             $sql_queue = $db->query("UPDATE stan_printqueue_antrag 
                                       SET dokument='drucke_mailversand/zuweisung_".$extid."_".$hs."_".$uid."_".$zuweisung.".pdf'
                                     WHERE saaid='" . $printed_obj[$k] . "'
                               ");
          }
        }else{
         # Historiendruck
        }

        $lnzaehler2 =1;
      }
      
      if($zuweisung == 'AEP'){
        $pdf->addPage();
        $pdf->useTemplate($tplidx,0,0,0);
        $pdf->SetAutoPageBreak(true, 10);
        if($hs == 'L'){
          require("anschreiben/zuweisung_aenderung_praxisstelle.php");
        }
        if($hs == 'K'){
          require("anschreiben_kehl/zuweisung_aenderung_praxisstelle.php");
        }
       
        # Dokumentenname sichern
        if(!isset($hist)){
          $sql_queue = $db->query("UPDATE stan_printqueue_antrag SET dokument='drucke_mailversand/zuweisung_".$extid."_".$hs."_".$uid."_".$zuweisung.".pdf' WHERE qid='$row_cur_uid[qid]'");
        }else{
         # Historiendruck
        } 
        
      }
      
        #datum = date("Y-m-d H:i:s",time());
        # 15.01.2010: Wurde innerhalb while schleife gezogen, da sonst der update mit Druckstatus=G nicht mehr funktionieren würde


     $dok_output = "drucke_mailversand/zuweisung_".$extid."_".$hs."_".$uid."_".$zuweisung.".pdf"; 
     $pdf->Output($dok_output,"F");
     $pdf->close();
    } // Ende While
  }
  
  # Standortzuweisung
  if($zuweisung == 'SOZ'){
    if(!isset($hist)){   
      $querya = "SELECT distinct uid, vorname, nachname
                   FROM stan_zuw_so_neu
                  WHERE uid='$uid'
                  ORDER BY uid";
      $resulta = $db->query ($querya)
                or die ("Cannot execute query1");
    }else{
      $querya = "SELECT a.UID, a.zuweisung, vorname, nachname, wagsid
                   FROM stan_printqueue_hist a, stud c
                  WHERE a.uid=c.uid 
                    AND a.qid='$extid' 
                    AND a.zuweisung = 'SOZ'
                  ORDER BY uid,sort_order";
      $resulta = $db->query ($querya)
                 or die ("Cannot execute query1");
    }
 

    while ($row_cur_uid2 = $resulta->fetch_array()){
      $pdf->addPage();
      $pdf->useTemplate($tplidx,0,0,0);
      $pdf->SetAutoPageBreak(true, 10);
      if($row_cur_uid2['wagsid'] == ''){
        $dok_output = "drucke_mailversand/zuweisung_".$hs."_".$uid."_".$zuweisung.".pdf";
      }else{
        $dok_output = "drucke_mailversand/zuweisung_".$hs."_".$row_cur_uid2['wagsid']."_".$uid."_".$zuweisung.".pdf";
      }
      if($hs == 'K' or $hs == 'k'){
        require("anschreiben_kehl/zuweisung_ag_standort_neu.php");
      }else{
        require("anschreiben/zuweisung_ag_standort_neu.php");
      }
      $pdf->Output($dok_output,"F");
      $pdf->close();
    }
  }
  



  
  

 
# return $output;
 return $dok_output;

}

#echo zuweisung_mail('L', 'SOZ', NULL, 'abel_philipp', NULL);

?>