Exemplo n.º 1
0
        }
        $inval = $indata->{$opfieldid};
        switch ($opfieldtype) {
            case 'text':
                if (!is_string($inval)) {
                    finishWith('invalid: ' . $opfieldid);
                }
                break;
            case 'list':
                if (!is_array($inval)) {
                    finishWith('invalid: ' . $opfieldid);
                }
                foreach ($inval as $val) {
                    if (!is_string($val)) {
                        finishWith('invalid val in ' . $opfieldid);
                    }
                }
                break;
        }
        $indata_processed->{$opfieldid} = $inval;
    }
    $op_part_data = json_encode($indata_processed);
}
$return = joinOperation($op['id'], $user['id'], $op_part_data);
$status = $return['status'];
if ($status !== TRUE) {
    finishWith($status);
}
attachParticipantToOperation($op, $user['id']);
$opHtml = renderOpWithTasks($op);
echo json_encode(array('status' => 'success', 'ophtml' => $opHtml, 'addedpoints' => $return['addedpoints']));
Exemplo n.º 2
0
function getParticipatingOperationsAndTasks($userid)
{
    global $_DB;
    $stmt = $_DB->prepare("SELECT id, name, description, detail, data FROM operations WHERE id IN (select opid from operation_participants where userid=?)");
    $stmt->bind_param('i', $userid);
    $stmt->execute();
    $results = $stmt->get_result();
    $operations = array();
    while ($row = $results->fetch_array(MYSQLI_NUM)) {
        $opdata = $row[4];
        if (!is_null($opdata)) {
            $opdata = json_decode($opdata);
        }
        $op = array('id' => $row[0], 'name' => $row[1], 'description' => $row[2], 'detail' => $row[3], 'data' => $opdata);
        attachParticipantToOperation($op, $userid);
        array_push($operations, $op);
    }
    return $operations;
}