case 'create': $title = $data['title']; $content = $data['content']; $section = $data['section']; $token = $data['token']; if (empty($title) || empty($content) || $section == 0) { die(json_encode(['status' => false, 'err' => 'data is not valid'])); } if (!Token::validateToken($token)) { die(json_encode(['status' => false, 'err' => 'Token is not valid'])); } unset($data['token']); $data['uid'] = USER_ID; $data['created'] = getNow(); $QNA = new QNA(); $create = $QNA->create($data); if (is_int($create)) { die(json_encode(['status' => true, 'id' => $create])); } else { die(json_encode(['status' => false, 'err' => $create])); } break; case 'upvote': $PostID = sanitize_id($data['id']); $post = new Post(); $QNA = new QNA(); // check if question exists if (!is_object($QNA->get_question($PostID)) && !is_array($post->get_post($PostID, true))) { die(json_encode(['status' => false, 'err' => 'Post was not found.'])); } // check if user has already upvoted the question