<?php
/**
 * @copyright (c) Kufer Software GmbH, Loisachstrasse 4, D-84453 Mühldorf
 */

  
  
  
  class Tools
  {
    
    public $strop;
    public $aktwarning4startseite;

    public function __construct($aktwarning4startseite = false)
    {
      $this->strop = new StringOperations();
      $this->aktwarning4startseite = $aktwarning4startseite;
    }

    public function getVersion()
    {
      return('');
    }

    
    
    
    public function doAccessDenied()
    {
      
      if (ob_get_contents() != false) {
        ob_clean();
      } 
      $str
        = '<html><head><title>' . KUFERTOOLS . ': Zugriff verweigert</title>'
        . '<META http-equiv="Content-Type" content="text/html; charset=' . ConstantOperations::getEncoding4Charset() . '" >' . "\n"
        . "</head>\n"
        . "<table height='100%' width='100%' border='0'>\n"
        . "<tr valign='center'>\n"
        . "<td>\n"
        . "<center><img src='images/forbidden.png'>\n"
        . BR_WT . BR_WT . "\n"
        . "<a style='font-size:14pt; font-family:arial; font-weight:bold; color:#FF0000;'>Zugriff verweigert!</a>\n"
        . BR_WT . BR_WT . "<a href='javascript:history.back();'>Zurück</a>\n"
        . "</center></td>\n"
        . '</tr></table></body></html>';
      die($str);
    }

    
    public function getUebersichtNoData()
    {
      $settings = ToolSettingsAPI::getToolSettings(0);
      if ($settings->willkommenTools != '') {
        $willkommenTools = CleanOperations::cleanStringContainingHtml($settings->willkommenTools);
      } else {
        $allgsettings = AllgSettingsAPI::getAllgSettings();
        $willkommenTools = 'Herzlich willkommen im Intranet der ' . CleanOperations::cleanStringForHtml($allgsettings->vhsname);
      }
      echo"
      <table border='0' cellpadding='0' cellspacing='5' height='100%' width='100%'>
        <tr>
          <td valign='top' width='100%' height='5%'>
            <p align='right'><font size='1' face='Arial'>" . KUFERTOOLS . "</font></p>
          </td>
        </tr>
        <tr>
          <td valign='top' align='center' width='100%' height='95%'>
            <font id='text_ueberschrift'>$willkommenTools</font>" . BR_WT . "
            <font class='text_main_menu'>" . COPYRIGHT . '</font>' . BR_WT . BR_WT . "
            <font id='text_hinweis'>Keine Kurse vorhanden!</font>" . BR_WT . '
          </td>
        </tr>
      </table>
      ';
    }

    
    public function getUebersichtNoRight()
    {
      $settings = ToolSettingsAPI::getToolSettings(0);
      if ($settings->willkommenTools != '') {
        $willkommenTools = CleanOperations::cleanStringContainingHtml($settings->willkommenTools);
      } else {
        $allgsettings = AllgSettingsAPI::getAllgSettings();
        $willkommenTools = 'Herzlich willkommen im Intranet der ' . CleanOperations::cleanStringForHtml($allgsettings->vhsname);
      }
      echo"
      <table border='0' cellpadding='0' cellspacing='5' height='100%' width='100%'>
        <tr>
          <td valign='top' width='100%' height='5%'>
            <p align='right'><font size='1' face='Arial'>" . KUFERTOOLS . "</font></p>
          </td>
        </tr>
        <tr>
          <td valign='top' align='center' width='100%' height='95%'>
            <font id='text_ueberschrift'>$willkommenTools</font>" . BR_WT . "
            <font class='text_main_menu'>" . COPYRIGHT . '</font>' . BR_WT . BR_WT . "
            <font id='text_hinweis'>Keine Rechte für die Übersicht vorhanden!</font>" . BR_WT . '
          </td>
        </tr>
      </table>
      ';
    }

    
    public function getUebersicht()
    {
      $settings = ToolSettingsAPI::getToolSettings(0);
      if ($settings->willkommenTools != '') {
        $willkommenTools = CleanOperations::cleanStringContainingHtml($settings->willkommenTools);
      } else {
        $allgsettings = AllgSettingsAPI::getAllgSettings();
        $willkommenTools = 'Herzlich willkommen im Intranet der ' . CleanOperations::cleanStringForHtml($allgsettings->vhsname);
      }
      echo"
      <table border='0' cellpadding='0' cellspacing='5' height='100%' width='100%'>
        <tr>
          <td valign='top' width='100%' height='5%'>
            <p align='right'><font size='1' face='Arial'>" . KUFERTOOLS . "</font></p>
          </td>
        </tr>
        <tr>
          <td valign='top' align='center' width='100%' height='95%'>
            <font id='text_ueberschrift'>$willkommenTools</font>" . BR_WT . "
            <font class='text_main_menu'>" . COPYRIGHT . '</font>' . BR_WT . BR_WT;

      if ($this->aktwarning4startseite) {
        echo" <div class='aktuellwarning'>Um sich die aktuellen News auf der Startseite ausgeben zu lassen, benötigen Sie vollen Zugriff auf das Recht 
        'Aktuelles auf Startseite anzeigen' !</div>";
      }

      echo" <font id='text_hinweis'>Bitte wählen Sie das gewünschte Tool im linken Menü aus!</font>";
      echo' </td>
        </tr>
      </table>
      ';
    }

    
    
    public function mainmenu($p_knr, $p_printversion, $p_section)
    {
      echo"
      <table border='0' cellpadding='0' cellspacing='5' height='100%' width='100%'>
        <tr>
          <td valign='top' width='100%' height='5%'>
            <p align='right'><font size='1' face='Arial'>" . KUFERTOOLS . "</font></p>
          </td>
        </tr>
        <tr>
          <td valign='top' align='center' width='100%' height='95%'>
            <font id='text_ueberschrift'>" . KUFERTOOLS . '</font>' . BR_WT . "
            <font class='text_main_menu'>" . COPYRIGHT . '</font>' . BR_WT . BR_WT . "
            <font id='text_hinweis'>Fehlerhafte Eingabe. Bitte schließen Sie das Browser - Fenster!</font>
          </td>
        </tr>
      </table>
      ";
    }

    
    
    

    
    public function getCurrentUserObject()
    {
      return SessionOperations::getCurrentWebToolsUser();
    }

    
    
    public function getCurrentDozentenObject()
    {
      try {
        return \SessionOperations::getCurrentWebToolsDozent();
      } catch (\Exception $ex) {
        return false;
      }
    }

    
    
    public function getCurrentTeilnehmerObject()
    {
      try {
        return \SessionOperations::getCurrentWebToolsTeilnehmer();
      } catch (\Exception $ex) {
        return false;
      }
    }

    
    
    public function getCurrentAdressenObject()
    {
      try {
        return \SessionOperations::getCurrentWebToolsHausmeister();
      } catch (Exception $ex) {
        return false;
      }
    }

    
    
    public function getCurrentBenutzerObject()
    {
      try {
        return \SessionOperations::getCurrentWebToolsMitarbeiter();
      } catch (Exception $ex) {
        return false;
      }
    }

    
    public function kursInToolAllowed($pKnr)
    {
      
      if (SessionOperations::isAdmin()) {
        return true;
      }
      $user = $this->getCurrentUserObject();
      $ben = $this->getCurrentBenutzerObject();
      
      $doz = $this->getCurrentDozentenObject();
      
      if (!$ben && !$doz) {
        return false;
      }
      $tool_id = $_REQUEST['tool_id'];
      $sett = ToolSettingsAPI::getToolSettings($tool_id);
      

      $dbwkurse = new DBWorkKurseWTSmall();
      $dbwkurse->newSearch();
      
      $dbwkurse->fromobject->id = $pKnr;
      $dbwkurse->toobject->id = $pKnr;
      
      if (isset($sett->sameAussenst) && $sett->sameAussenst) {
        $dbwkurse->fromobject->aussenst = $ben->aussenstelle;
      }
      $uid = -1;
      $tid = -1;
      
      if ($sett->varexist('checkKPrivileges') && $sett->checkKPrivileges == true) {
        $uid = $user->id;
        $tid = $tool_id;
      }
      
      $kurse = $dbwkurse->getKurseLimit('', 2, true, $uid, $tid);
      if (count($kurse) == 0) {
        return false;
      }

      return true;
    }
  }