131 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			131 lines
		
	
	
		
			4.3 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
/**
 | 
						|
 * File: interview.php
 | 
						|
 * Author: Ryan Prather
 | 
						|
 * Purpose: Category Interview page
 | 
						|
 * Created: Aug 25, 2014
 | 
						|
 *
 | 
						|
 * Portions Copyright 2016: Cyber Perspectives, All rights reserved
 | 
						|
 * Released under the Apache v2.0 License
 | 
						|
 *
 | 
						|
 * Portions Copyright (c) 2012-2015, Salient Federal Solutions
 | 
						|
 * Portions Copyright (c) 2008-2011, Science Applications International Corporation (SAIC)
 | 
						|
 * Released under Modified BSD License
 | 
						|
 *
 | 
						|
 * See license.txt for details
 | 
						|
 *
 | 
						|
 * Change Log:
 | 
						|
 *  - Aug 25, 2014 - File created
 | 
						|
 *  - Sep 1, 2016 - Copyright and file purpose updated
 | 
						|
 *  - Dec 27, 2017 - Formatting
 | 
						|
 *  - Jan 2, 2018 - Fixed bug #351
 | 
						|
 */
 | 
						|
include_once 'config.inc';
 | 
						|
include_once 'database.inc';
 | 
						|
include_once 'helper.inc';
 | 
						|
 | 
						|
$db = new db();
 | 
						|
 | 
						|
$cats = $db->get_Question_Categories();
 | 
						|
$type = filter_input(INPUT_POST, 'type', FILTER_VALIDATE_REGEXP, ['options' => ['regexp' => "/Unix|Windows/", 'flag' => FILTER_NULL_ON_FAILURE]]);
 | 
						|
$cat_id = (int) filter_input(INPUT_POST, 'cat', FILTER_VALIDATE_INT, FILTER_NULL_ON_FAILURE);
 | 
						|
if (!$cat_id) {
 | 
						|
  $cat_id = (int) filter_input(INPUT_GET, 'cat', FILTER_VALIDATE_INT, FILTER_NULL_ON_FAILURE);
 | 
						|
}
 | 
						|
$action = filter_input(INPUT_POST, 'action', FILTER_SANITIZE_STRING, FILTER_NULL_ON_FAILURE);
 | 
						|
 | 
						|
if ($type) {
 | 
						|
  $db->set_Questions($type, $cat_id);
 | 
						|
}
 | 
						|
 | 
						|
if ($action) {
 | 
						|
  $questions = $db->get_Questions($cat_id, $type);
 | 
						|
 | 
						|
  foreach ($questions as $key => $ques) {
 | 
						|
    $ques->answer = isset($_REQUEST[$ques->key]);
 | 
						|
    $db->set_QA($cat, $ques);
 | 
						|
  }
 | 
						|
 | 
						|
  header("Location: /ste");
 | 
						|
}
 | 
						|
 | 
						|
$title_prefix = "Category Interview";
 | 
						|
include_once 'header.inc';
 | 
						|
?>
 | 
						|
 | 
						|
<div id="wrapper">
 | 
						|
  <div id="main-wrapper">
 | 
						|
    <div class="12u" id="main-content" style="overflow:scroll;">
 | 
						|
      <div class="5grid-layout 5grid" style="text-align:right;">
 | 
						|
        <div class="row">
 | 
						|
          <div class="12u">
 | 
						|
            <div style="float:left;margin-top:6px;">
 | 
						|
              <form method="post" action="interview.php">
 | 
						|
                <?php
 | 
						|
                if ($cat_id) {
 | 
						|
                  print "<input type='hidden' name='cat' value='$cat_id' />";
 | 
						|
                }
 | 
						|
                else {
 | 
						|
                  die("Lost access to the category");
 | 
						|
                }
 | 
						|
                ?>
 | 
						|
                Type:
 | 
						|
                <select name="type" style="width:300px;" id="type" onchange="this.form.submit();">
 | 
						|
                  <option> -- Select Interview Type -- </option>
 | 
						|
                  <?php
 | 
						|
                  foreach ($cats as $key => $cat) {
 | 
						|
                    print "<option" . ($type == $cat ? " selected='true'" : "") . ">$cat</option>";
 | 
						|
                  }
 | 
						|
                  ?>
 | 
						|
                </select>
 | 
						|
              </form>
 | 
						|
            </div>
 | 
						|
          </div>
 | 
						|
        </div>
 | 
						|
 | 
						|
        <div style='margin-left:20%;'>
 | 
						|
          <?php
 | 
						|
          if ($type) {
 | 
						|
            $questions = $db->get_Questions($cat_id, $type);
 | 
						|
            if (is_array($questions) && count($questions)) {
 | 
						|
              ?>
 | 
						|
              <form method='post' action='interview.php' id='tableContainer'>
 | 
						|
                <div style="text-align:left;">
 | 
						|
                  <input type='submit' name='action' value='Save' />
 | 
						|
                </div>
 | 
						|
                <input type='hidden' name='cat' value='<?php print ($cat_id ? $cat_id : ""); ?>' />
 | 
						|
                <input type='hidden' name='type' value='<?php print ($type ? $type : ""); ?>' />
 | 
						|
                <table style='width:800px;text-align:left;'>
 | 
						|
                  <thead>
 | 
						|
                    <tr>
 | 
						|
                      <th>Question</th>
 | 
						|
                      <th>Answer</th>
 | 
						|
                    </tr>
 | 
						|
                  </thead>
 | 
						|
 | 
						|
                  <tbody>
 | 
						|
                    <?php
 | 
						|
                    $odd = true;
 | 
						|
                    foreach ($questions as $key => $ques) {
 | 
						|
                      $class = ($odd ? 'odd_row' : 'even_row');
 | 
						|
                      $ques->question = preg_replace("/\t/", "<span style='width:20px;display:inline-block;'> </span>", $ques->question);
 | 
						|
                      print "<tr class='$class'><td>" . nl2br($ques->question) . "</td><td><input type='checkbox' name='" . $ques->key . "'" . ($ques->answer ? " checked='true'" : '') . " value='1' /></td></tr>";
 | 
						|
                      $odd = !$odd;
 | 
						|
                    }
 | 
						|
                    ?>
 | 
						|
                  </tbody>
 | 
						|
                </table>
 | 
						|
              </form>
 | 
						|
              <?php
 | 
						|
            }
 | 
						|
          }
 | 
						|
          ?>
 | 
						|
        </div>
 | 
						|
      </div>
 | 
						|
    </div>
 | 
						|
  </div>
 | 
						|
</div>
 | 
						|
 | 
						|
<?php
 | 
						|
include_once 'footer.inc';
 |