3
0
Fork 0
mirror of https://github.com/fsr/eseeva synced 2024-11-15 08:53:11 +01:00

Merge branch 'key_dropdown'

This commit is contained in:
Lucas Woltmann 2016-08-02 11:19:41 +02:00
commit 6a27c9ed5e

View file

@ -35,8 +35,9 @@
// if the user refreshes the page, it will default to the // if the user refreshes the page, it will default to the
// access code screen // access code screen
session_start(); session_start();
$formState = STATE_ACCESS_SUCCESSFULL; $formState = STATE_ACTION_NEWCODE;
$keyCode = ""; $keyCode = "";
$keyData = ReadKeyFile(KEYFILE);
// if the variable is set, the form has been posted to itself // if the variable is set, the form has been posted to itself
// if the submission ids of the post and the form don't match, the // if the submission ids of the post and the form don't match, the
@ -52,7 +53,7 @@
{ {
// if a key code has been entered, get the state of that key // if a key code has been entered, get the state of that key
$keyCode = $_POST["keyCode"]; $keyCode = $_POST["keyCode"];
$keyData = ReadKeyFile(KEYFILE); //$keyData = ReadKeyFile(KEYFILE);
// if no action was performed on the entered key, simply display its state // if no action was performed on the entered key, simply display its state
if (!isset($_POST["action"])) if (!isset($_POST["action"]))
$formState = KeyStateToFormState(GetKeyState($keyData, $_POST["keyCode"])); $formState = KeyStateToFormState(GetKeyState($keyData, $_POST["keyCode"]));
@ -74,7 +75,7 @@
} }
// if the access code was correct and no code was entered // if the access code was correct and no code was entered
else else
$formState = STATE_ACCESS_SUCCESSFULL; $formState = STATE_ACTION_NEWCODE;
} }
// generate a new submission id that is used within the form to prevent double posts // generate a new submission id that is used within the form to prevent double posts
$_SESSION["submissionId"] = rand(); $_SESSION["submissionId"] = rand();
@ -106,14 +107,14 @@
case STATE_ACTION_ACTIVATED: case STATE_ACTION_ACTIVATED:
case STATE_ACTION_USED: case STATE_ACTION_USED:
case STATE_ACTION_NEWCODE: case STATE_ACTION_NEWCODE:
CreateKeyCodeBox("", true); CreateKeyDropDownBox($keyData, "");
break; break;
// if previously entered key was not found or the action that should // if previously entered key was not found or the action that should
// be performed has been failed, just display the key code box with // be performed has been failed, just display the key code box with
// previously entered value // previously entered value
case STATE_KEY_NONEXISTENT: case STATE_KEY_NONEXISTENT:
case STATE_ACTION_FAILED: case STATE_ACTION_FAILED:
CreateKeyCodeBox($keyCode, true); CreateKeyDropDownBox($keyData, $keyCode);
break; break;
// if an existing key has been entered, display the readonly key code box // if an existing key has been entered, display the readonly key code box
// and all options that can be performed on the key // and all options that can be performed on the key
@ -190,6 +191,31 @@
echo " </div>\n"; echo " </div>\n";
echo "</div>\n"; echo "</div>\n";
} }
/**
* Echos a drop down box with all keys.
*
* @param string $keyCode The key that should be displayed in the box.
*/
function CreateKeyDropDownBox($keyData, $keyCode)
{
CreateRowHeader();
echo " <div class=\"col-6\">\n";
echo " <p class=\"lead\">ESE Code:</p>\n";
echo " </div>\n";
echo " <div class=\"col-6\">\n";
echo " <select class=\"form-control\" id=\"keyCode\" name=\"keyCode\" required>\n";
foreach ($keyData as $key => $value) {
echo " <option value=\"". $value[0] ."\" ";
if ($keyCode != "" && $keyCode == $value[0]) {
echo "selected=\"selected\"";
}
echo ">".$value[0]."</option>\n";
}
echo " </select>\n";
//echo " <input class=\"form-control\" type=\"text\" id=\"keyCode\" name=\"keyCode\" value=\"" . $keyCode . "\" required";
echo " </div>\n";
echo "</div>\n";
}
/** /**
* Echos the access code box according the current state of the form. * Echos the access code box according the current state of the form.
* *
@ -234,7 +260,7 @@
case STATE_ACTION_ISSUED: CreateMessageBox(MSG_SUCCESS, "ESE Code Status geändert:", "Der Schlüssel wurde erfolgreich auf den Status <strong>Ausgegeben</strong> gesetzt. Bitte gib einen ESE Code ein, welchen du überprüfen oder verändern möchtest."); break; case STATE_ACTION_ISSUED: CreateMessageBox(MSG_SUCCESS, "ESE Code Status geändert:", "Der Schlüssel wurde erfolgreich auf den Status <strong>Ausgegeben</strong> gesetzt. Bitte gib einen ESE Code ein, welchen du überprüfen oder verändern möchtest."); break;
case STATE_ACTION_ACTIVATED: CreateMessageBox(MSG_SUCCESS, "ESE Code Status geändert:", "Der Schlüssel wurde erfolgreich auf den Status <strong>Fragebogen ausgefüllt</strong> gesetzt. Bitte gib einen ESE Code ein, welchen du überprüfen oder verändern möchtest."); break; case STATE_ACTION_ACTIVATED: CreateMessageBox(MSG_SUCCESS, "ESE Code Status geändert:", "Der Schlüssel wurde erfolgreich auf den Status <strong>Fragebogen ausgefüllt</strong> gesetzt. Bitte gib einen ESE Code ein, welchen du überprüfen oder verändern möchtest."); break;
case STATE_ACTION_USED: CreateMessageBox(MSG_SUCCESS, "ESE Code Status geändert:", "Der Schlüssel wurde erfolgreich auf den Status <strong>Eingelöst</strong> gesetzt. Bitte gib einen ESE Code ein, welchen du überprüfen oder verändern möchtest."); break; case STATE_ACTION_USED: CreateMessageBox(MSG_SUCCESS, "ESE Code Status geändert:", "Der Schlüssel wurde erfolgreich auf den Status <strong>Eingelöst</strong> gesetzt. Bitte gib einen ESE Code ein, welchen du überprüfen oder verändern möchtest."); break;
case STATE_ACTION_NEWCODE: CreateMessageBox(MSG_INFO, "ESE Code eingeben:", "Bitte gib den ESE Code ein, welchen du überprüfen oder verändern möchtest."); break; case STATE_ACTION_NEWCODE: CreateMessageBox(MSG_INFO, "ESE Code auswählen:", "Bitte wähle den ESE Code aus, welchen du überprüfen oder verändern möchtest."); break;
case STATE_ACTION_FAILED: CreateMessageBox(MSG_DANGER, "Achtung:", "Der Status des angegebenen Schlüssels konnte <strong>nicht geändert</strong> werden! Bitte überprüfe deine Eingabe."); break; case STATE_ACTION_FAILED: CreateMessageBox(MSG_DANGER, "Achtung:", "Der Status des angegebenen Schlüssels konnte <strong>nicht geändert</strong> werden! Bitte überprüfe deine Eingabe."); break;
} }
} }