<?php

class gutachter {

  function gutachter_status($gid){
  global $db;
       # Berechnen, ob bereits entschieden ist, da die Mehrzahl der Stimmen bereits abgegeben wurde
       /*
       1) Prüfen, wie viele Ausschussmitglieder es gibt (gleich die Hälfte ermitteln)
       2) Prüfen, wie viele Ausschussmitglieder mit ja zugestimmt haben
       3) Prüfen, wie viele Ausschussmitglieder nicht abgestimmt haben und die Frist bereits verstrichen ist
       4) 2 und 3 addieren
       5) Wenn die Anzahl 4 > Hälfte der Ausschussmitglieder ist und abgabefrist für Gutachter nicht gesetzt,
          dann wurde der Gutachter angenommen, sonst ist der Status "Warten auf Gutachter"
       6) Ist die Anzahl 4 < Hälfte der Ausschussmitglieder und Frist ist abgelaufen
          Prüfen, ob für den Gutachter bereits ein Verlauf gesetzt wurde
          Wenn nicht -> Verlauf setzen (abgelehnt)    
       */
       
       #1 
       $result_anz_aus = $db->query("SELECT count(*)/2 Anz
                                        FROM imt_rollen_user_zuord
                                       WHERE roid = '4'"); # 4 ist id RollenID des Ausschusses
       $row_anz_aus = $result_anz_aus->fetch_array();

       #2
       $result_ja = $db->query("SELECT count(*) Anz
                                   FROM imt_ausschuss_gutachter_erg
                                  WHERE gid = '$gid'
                                    AND ergebnis = 'Y'");
       $row_ja = $result_ja->fetch_array();

       
       #3
       $result_frist = $db->query("SELECT count(*) Anz
                                      FROM imt_gutachter a
                                     WHERE a.gid = '$gid'
                                       AND a.frist_datum < date_format( now( ) , '%Y-%m-%d' )
                                  ");
       $row_frist = $result_frist->fetch_array();
       
       if($row_frist[Anz] > 0){
         # Wenn Frist schon abgelaufen ist, dann die Gutachter mitzählen, die versäumt haben eine Stimme abzugeben
         $result_ja_vers = $db->query("SELECT count(*) Anz
                                          FROM imt_rollen_user_zuord a
                                         WHERE a.roid = '4'
                                           AND a.imtuid NOT IN (SELECT imtuid FROM imt_ausschuss_gutachter_erg WHERE gid='$gid')
                                      ");
         $row_ja_vers = $result_ja_vers->fetch_array();
         $versaeumt = $row_ja_vers[Anz];
       }else{
         $versaeumt = 0;
       }
       
       #4
       $anz_zugestimmt = $row_ja[Anz]+$versaeumt;
       
       
         $result_name = $db->query("SELECT vorname, nachname
                                       FROM imt_gutachter a, imt_user b
                                      WHERE a.imtuid = b.imtuid
                                        AND a.gid = '$gid'
                                   ");
   
         $row_name = $result_name->fetch_array();
       
       if($anz_zugestimmt > $row_anz_aus[Anz]){
         #5
         
         $result_gafrist = $db->query("SELECT count(*) Anz
                                          FROM imt_gutachter
                                         WHERE frist_datum_abgabe != '0000-00-00'
                                           AND gid = '$gid'
                                      ");
   
         $row_gafrist = $result_gafrist->fetch_array();
         
         if($row_gafrist[Anz] == 0){
           # Wenn dem Gutachter keine Frist gesetzt wurde, dann wurde er nur vom Ausschuss zugestimmt
           return 1;
           
         }else{
           # Warten auf Gutachter, Frist läuft noch: stellung_dat == 0000-00-00 00:00:00 und frist_datum_abgabe <= date_format( now( ) , '%Y-%m-%d' )
           # Warten auf Gutachter, Frist abgelaufen: stellung_dat == 0000-00-00 00:00:00 und frist_datum_abgabe > date_format( now( ) , '%Y-%m-%d' )
           # Gutachten abgegeben, Frist läuft noch: stellung_dat != 0000-00-00 00:00:00 und frist_datum_abgabe <= date_format( now( ) , '%Y-%m-%d' )
           # Gutachten abgegeben, Frist abgelaufen: stellung_dat != 0000-00-00 00:00:00 und frist_datum_abgabe > date_format( now( ) , '%Y-%m-%d' )
           
           $result_stelldat1 = $db->query("SELECT stellung_dat
                                              FROM imt_gutachter
                                             WHERE gid = '$gid'
                                          ");
           $row_stelldat1 = $result_stelldat1->fetch_array();
         
           $result_fristabg1 = $db->query("SELECT count(*) Anz
                                              FROM imt_gutachter a
                                             WHERE a.gid = '$gid'
                                               AND a.frist_datum_abgabe < date_format( now( ) , '%Y-%m-%d' )
                                          ");
           $row_fristabg1 = $result_fristabg1->fetch_array();

           if($row_stelldat1[stellung_dat] == '0000-00-00 00:00:00' AND $row_fristabg1[Anz] == 0){
             return 2;
           }
           
           if($row_stelldat1[stellung_dat] == '0000-00-00 00:00:00' AND $row_fristabg1[Anz] == 1){
             return 3;
           }
           
           if($row_stelldat1[stellung_dat] != '0000-00-00 00:00:00' AND $row_fristabg1[Anz] == 0){
             return 4;
           }
           
           if($row_stelldat1[stellung_dat] != '0000-00-00 00:00:00' AND $row_fristabg1[Anz] == 1){
             return 5;
           }
         
           
         }
           
       }else{
         #6
         
         if($row_frist[Anz] > 0){ # Frist ist abgelaufen
           return 6;        
         }else{
           return 7;        
         }
      }
  }

  function gutachter_status_klartext($gid, $status){
    global $db;
    if($status == 1){
      #return "Ausschuss zugestimmt";
      return "Gutachter anschreiben";
    }
    
    if($status == 2){
      return "Warten auf Gutachter, Frist l&auml;uft noch";
    }
    
    if($status == 3){
      return "Warten auf Gutachter, Frist abgelaufen";
    }
    
    if($status == 4){
      return "<a class='aformlink box' title='Stellungnahme Gutachter' href='ansicht_gutachten.php?gid=$gid'>Gutachten abgegeben</a>, Frist l&auml;uft noch";
    }
    
    if($status == 5){
      return "<a class='aformlink box' title='Stellungnahme Gutachter' href='ansicht_gutachten.php?gid=$gid'>Gutachten abgegeben</a>, Frist abgelaufen";
    }
    
    if($status == 6){
      return "Ausschuss abgelehnt";
    }
    
    if($status == 7){
      return "Warten auf Ausschuss";
    }
  
  }

}
?>