PHP-databaskonstruktion

Log | Files | Refs

incident.php (3158B)


      1 <?php
      2     require 'utils/imports.php';
      3     $handlerFactory = new InsertHandlerFactory();
      4     $procedureHandler = new ProcedureHandler();
      5 
      6     $incidentName = urldecode($_GET['IncidentName']);
      7     $incidentNumber = urldecode($_GET['IncidentNumber']);
      8 
      9     $pageContent = '';
     10 
     11     $queryOperations = "SELECT * FROM Operation WHERE IncidentName = '{$incidentName}' AND IncidentNumber = '{$incidentNumber}';";
     12 
     13     $pageContent .= "<h3>Operations in $incidentName</h3>" . tableFactory::createTableWithRedirect($queryOperations, "operation.php", ["OperationName", "StartDate", "IncidentName", "IncidentNumber"], "Operation");
     14 
     15     logg("Incident: " . "'{$incidentName}', '{$incidentNumber}'");
     16 
     17     $operationModalBuilder = (new ModalBuilder())
     18             ->setModalId('insertOperation')
     19             ->setTableName("Operation")
     20             ->setPostHandler($handlerFactory->createHandler('Operation'))
     21             ->addColumn("OperationName")
     22             ->addDateColumn("StartDate")
     23             ->addDateColumn("EndDate", true)
     24             ->addColumn("SuccessRate", true)
     25             ->addDropdownColumn("GroupLeader", getColumnValues("GroupLeaders", "CodeName"))
     26             ->addHiddenColumn("Incident", "{$incidentName}, {$incidentNumber}");
     27 
     28     $operationModalBuilder->handleData();
     29     $pageContent .= $operationModalBuilder->build();
     30     $pageContent .= $operationModalBuilder->generateOpenButton("Create Operation");
     31 
     32     $pageContent .= "<hr>";
     33 
     34     $queryReports = "SELECT * FROM Report WHERE IncidentName = '{$incidentName}' AND IncidentNumber = {$incidentNumber}";
     35 
     36     $pageContent .= "<h3>Reports</h3>" . tableFactory::createTableWithCallbackColumn($queryReports, 'archiveReport', "Report");
     37 
     38     function ArchiveReport($rowdata) {
     39         $dateCreated = isset($rowdata['DateCreated']) ? $rowdata['DateCreated'] : '';
     40         $title = isset($rowdata['Title']) ? $rowdata['Title'] : '';
     41     
     42         return "
     43         <form action='' method='POST' class='mb-0'>
     44             <input type='hidden' name='DateCreated' value='{$dateCreated}'>
     45             <input type='hidden' name='Title' value='{$title}'>
     46             <input type='hidden' name='OperationType' value='EXECUTE'>
     47             <input type='hidden' name='Function' value='ArchiveReport'>
     48             <button type='submit' class='btn btn-block btn-warning'>Archive</button>
     49         </form>";
     50     }
     51 
     52     $procedureHandler->handlePostData($_POST);
     53 
     54     $WriteReportModal = (new ModalBuilder())
     55             ->setModalId('insertReport')
     56             ->setTableName("Report")
     57             ->setPostHandler($handlerFactory->createHandler('Report'))
     58             ->addColumn("Title")
     59             ->addDateColumn("DateCreated")
     60             ->addDropdownColumn("Author", getColumnValues("Agent", "CodeName"))
     61             ->addColumn("Content")
     62             ->addHiddenColumn("IncidentName", $incidentName)
     63             ->addHiddenColumn("IncidentNumber", $incidentNumber);
     64 
     65     $WriteReportModal->handleData();
     66     $pageContent .= $WriteReportModal->build();
     67     $pageContent .= $WriteReportModal->generateOpenButton("Write Report");
     68 
     69     $pageContent .= "<hr>";
     70 
     71 
     72 
     73     include 'utils/pageTemplate.php';
     74 ?>