if (!isset($_COOKIE["sid"])) { finishWith('nologin'); } include '../lib/db.php'; include '../lib/op-with-tasks-view.php'; init_db(); $user = getSessionUser($_COOKIE["sid"]); if (is_null($user)) { setcookie('sid', '', time() - 3600); finishWith('nologin'); } if (!isset($_POST['opid'])) { finishWith('missingopid'); } $opid = intval($_POST['opid']); $op = getOperationById($opid); $op_part_data = NULL; if (!is_null($op['data'])) { if (!isset($_POST['data'])) { finishWith('missingdata'); } $indata = json_decode($_POST['data']); $opdata = $op['data']; $indata_processed = new stdClass(); foreach ($opdata as $opfield) { $opfieldid = $opfield->id; $opfieldtype = $opfield->type; if (!property_exists($indata, $opfieldid)) { finishWith('missingfield: ' . $opfieldid); } $inval = $indata->{$opfieldid};
function getOpAndTaskAndUserByTaskCode($taskcode) { global $_DB; $stmt = $_DB->prepare("SELECT id, title, description, deadline, completed, opid, userid " . "FROM participant_tasks WHERE taskcode = ?"); $stmt->bind_param("s", $taskcode); $stmt->execute(); $results = $stmt->get_result(); if ($results->num_rows != 1) { return NULL; } $task_row = $results->fetch_array(MYSQLI_NUM); $task = array('id' => $task_row[0], 'title' => $task_row[1], 'description' => $task_row[2], 'deadline' => new DateTime($task_row[3]), 'completed' => $task_row[4]); $opid = $task_row[5]; $userid = $task_row[6]; $op = getOperationById($opid); if (is_null($op)) { return NULL; } $op['single_task'] = $task; return array('op' => $op, 'userid' => $userid); }