public function alerts($cc = null) { $current_user = ParseUser::getCurrentUser(); $query = new ParseQuery("Notifications"); $query->equalTo("for", $current_user); $query->equalTo("read", false); $query->includeKey('by'); $query->includeKey('message'); try { $notifications = $query->find(); $notes = array(); foreach ($notifications as $notify) { if (!empty($notify->get('message'))) { if ($notify->get('message')->get('chatRoom')->getObjectId() == $cc) { $notify->set("read", true); $notify->save(); continue; } $notes[] = ['id' => $notify->getObjectId(), 'for' => $notify->get('for')->getObjectId(), 'from' => ['id' => $notify->get('by')->getObjectId(), 'name' => $notify->get('by')->get('name')], 'message' => $notify->get('message')->get('message')]; } } $ret = ['status' => "success", 'data' => ['notifications' => $notes]]; return response()->json($ret); } catch (ParseException $ex) { $ret = ['status' => 'fail', 'error' => $ex->getMessage()]; return response()->json($ret); } }
/** * Determines whether the current session token is revocable. * This method is useful for migrating an existing app to use * revocable sessions. * * @return boolean */ public static function isCurrentSessionRevocable() { $user = ParseUser::getCurrentUser(); if ($user) { return self::_isRevocable($user->getSessionToken()); } }
/** * Dispatch is called before the action, using this to make sure any request to the app without an authenticated * user is directed to the signin, * * @param Request $request * @param Response $response * @return mixed|\Zend\Http\Response|Response */ public function dispatch(Request $request, Response $response = null) { $this->user = ParseUser::getCurrentUser(); if (!$this->user or !isset($_SESSION['todo']['user']) or $this->user->getUsername() !== $_SESSION['todo']['user']) { return $this->redirect()->toRoute('auth', ['action' => 'signin']); } return parent::dispatch($request, $response); // TODO: Change the autogenerated stub }
/** * Retrieve a user by their unique identifier. * * @param mixed $identifier * * @return \Illuminate\Contracts\Auth\Authenticatable|\LaraParse\Subclasses\User|null */ public function retrieveById($identifier) { // check current user exist $currentUser = ParseUser::getCurrentUser(); if ($currentUser->getObjectId() == $identifier) { return $currentUser; } $query = new ParseQuery('_User'); return $query->get($identifier, true); }
/** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $this->current_user = ParseUser::getCurrentUser(); if (!$this->current_user) { if ($request->ajax()) { return response('Unauthorized.', 401); } else { return redirect()->route('login'); } } return $next($request); }
public function postLogIn(ValidateLoginExpert $request) { $email = $request->get('email'); $pass = $request->get('password'); $user = ParseUser::logIn($email, $pass); $query = new ParseQuery("attractions"); $currentUser = ParseUser::getCurrentUser(); try { $attractions = $query->find(); return view('expertTemplate.displayAttractions')->with('attractions', $attractions)->with('currentUser', $currentUser); } catch (ParseException $ex) { } }
public function newMessage(Request $request) { $current_user = ParseUser::getCurrentUser(); $message = $request->input("message"); $chat_id = $request->input("chat_id"); $assets = $request->input("assets"); $utube = $request->input("youtube"); try { $messageObj = new ParseObject("Messages"); $query = new ParseQuery("ChatRoom"); $chatRoom = $query->get($chat_id); $messageObj->set("message", $message); $messageObj->set("user", $current_user); $messageObj->set("chatRoom", $chatRoom); $messageObj->save(); $relation = $chatRoom->getRelation("messages"); $relation->add($messageObj); $chatRoom->save(); if (!empty($assets)) { $mrelation = $messageObj->getRelation("asset"); $crelation = $chatRoom->getRelation("assets"); foreach ($assets as $asset_id) { $assetQry = new ParseQuery("Assets"); $assetObj = $assetQry->get($asset_id); $mrelation->add($assetObj); $crelation->add($assetObj); } $chatRoom->save(); } if (!empty($utube)) { if (preg_match('/[\\?\\&]v=([^\\?\\&]+)/', $utube, $matches)) { $utube = $matches[1]; $assetUobj = new ParseObject("Assets"); // add the file we saved above $assetUobj->set("youtube", $utube); $assetUobj->save(); $mrelation = $messageObj->getRelation("asset"); $crelation = $chatRoom->getRelation("assets"); $mrelation->add($assetUobj); $crelation->add($assetUobj); $chatRoom->save(); } } $messageObj->save(); $ret = ['status' => "success", 'data' => ['object' => "messages", 'id' => $messageObj->getObjectId(), 'message' => $messageObj->get("message")]]; return response()->json($ret); } catch (ParseException $ex) { $ret = ['status' => 'fail', 'error' => $ex->getMessage()]; return response()->json($ret); } }
public function login($data) { $app_id = 'yPPe3Uv46pKNnrTc7I6xArFHi8EQ8cdz4Kw3JGkX'; $rest_key = '7PJB1F4g8aFSv5f8e0gSMwi9Ghv2AeAkTW0O50pe'; $master_key = 'y95bItd5BI6Btqos1De4m8HZUllSM3HMcOs04WWB'; try { ParseClient::initialize($app_id, $rest_key, $master_key); $user = ParseUser::logIn($data["username"], $data["password"]); $currentUser = ParseUser::getCurrentUser(); //die('<pre>'.print_r($currentUser, true)); return $currentUser; } catch (ParseException $e) { return false; } }
public function login() { Hooks::addHook('js', 'Controllers\\auth@js'); Hooks::addHook('css', 'Controllers\\auth@css'); // if(Session::get('loggedin')){ // Url::redirect(); // } $currentUser = ParseUser::getCurrentUser(); if ($currentUser) { // do stuff with the user Url::redirect(); } else { // show the signup or login page } //==============Sign Up Manually========================== // $user = new ParseUser(); // $user->set("username", "yoak"); // $user->set("password", "yoakyoak"); // $user->set("email", "*****@*****.**"); // // other fields can be set just like with ParseObject // $user->set("phone", "0909814465"); // try { // $user->signUp(); // // Hooray! Let them use the app now. // $error = 'Hooray! Let them use the app now.'; // } catch (ParseException $ex) { // // Show the error message somewhere and let the user try again. // echo "Error: " . $ex->getCode() . " " . $ex->getMessage(); // } //==============Sign Up Manually========================== if (isset($_POST['submit'])) { $username = $_POST['username']; $password = $_POST['password']; try { $user = ParseUser::logIn($username, $password); Url::redirect(); // Do stuff after successful login. } catch (ParseException $ex) { // The login failed. Check error to see why. $error = "ParseException: " . $ex->getCode() . " " . $ex->getMessage(); } } $data['title'] = 'Login'; View::rendertemplate('header', $data); View::render('auth/login', $data, $error); View::rendertemplate('footer', $data); }
public function testRevocableSession() { ParseClient::enableRevocableSessions(); $user = new ParseUser(); $user->setUsername("username"); $user->setPassword("password"); $user->signUp(); $session = ParseSession::getCurrentSession(); $this->assertEquals($user->getSessionToken(), $session->getSessionToken()); $this->assertTrue($session->isCurrentSessionRevocable()); ParseUser::logOut(); ParseUser::logIn("username", "password"); $session = ParseSession::getCurrentSession(); $this->assertEquals(ParseUser::getCurrentUser()->getSessionToken(), $session->getSessionToken()); $this->assertTrue($session->isCurrentSessionRevocable()); $sessionToken = $session->getSessionToken(); ParseUser::logOut(); $this->setExpectedException('Parse\\ParseException', 'invalid session token'); ParseUser::become($sessionToken); }
public function save(Request $request) { $current_user = ParseUser::getCurrentUser(); $name = $request->input('name'); $assetId = $request->input('assetId'); $current_user->set('name', $name); try { if (!empty($assetId)) { $query = new ParseQuery("Assets"); $asset = $query->get($assetId); if (!empty($asset)) { $current_user->set('image', $asset->get('file')); } } $current_user->save(); } catch (\Exception $ex) { echo 'Failed to create new object, with error message: ' . $ex->getMessage(); } return redirect()->route('profile'); }
public function showUploader($roomId, Request $request) { $current_user = ParseUser::getCurrentUser(); if (!$current_user) { return redirect()->route('login'); } $message = $request->input('msg'); Html\Assets::addLink(Html\Link::Css('/vendor/dropzone/dropzone.css')); Html\Assets::addLink(Html\Link::Css(elixir('css/default.css'))); Html\Assets::addLink(Html\Link::Script('//www.parsecdn.com/js/parse-1.6.7.min.js')); Html\Assets::addLink(Html\Link::Script('/vendor/dropzone/dropzone.js')); Html\Assets::addLink(Html\Link::Script(elixir('scripts/chatUploader.js'))); Html\Assets::addMetaTag(Html\Meta::Tag('description', '')); $query = new ParseQuery("ChatRoom"); $chatObj = $query->get($roomId); $renderData = $this->getRenderData($request); $renderData['user'] = $current_user; $renderData['chatObj'] = $chatObj; $renderData['message'] = $message; return view('chatUploader', $renderData); }
/** * Show the profile for the given user. * * @param int $id * @return Response */ public function getIndex() { ParseClient::initialize(env('PARSE_APP_ID'), env('ARSE_REST_KEY'), env('PARSE_MASTER_KEY')); $user = new ParseUser(); $user->setUsername("foo"); $user->setPassword("Q2w#4!o)df"); try { $user->signUp(); dd(1112); } catch (ParseException $ex) { echo $ex->getMessage() . "<br>"; } // Login try { $user = ParseUser::logIn("foo", "Q2w#4!o)df"); } catch (ParseException $ex) { echo $ex->getMessage(); } // Current user $user = ParseUser::getCurrentUser(); dd($user); }
public function secOwnerBeacUnAssQuery($venueId) { $user = ParseUser::getCurrentUser(); $roleCheck = $user->get("role"); $roleCheck->fetch(); $role = $roleCheck->get("name"); $beacon_info = []; $outletCheck = new ParseObject("Outlets", $venueId); $query = new ParseQuery("Beacons"); $query->equalTo("outlet", $outletCheck); $query->equalTo("isSectionAssigned", true); $result = $query->find(); for ($i = 0; $i < count($result); $i++) { $object = $result[$i]; $beacon_info[$object->getObjectId()] = $object->get('name'); } return $beacon_info; }
/** * Execute a find query and return the results. * * @param bool $useMasterKey * * @return ParseObject[] */ public function find($useMasterKey = false) { $sessionToken = null; if (ParseUser::getCurrentUser()) { $sessionToken = ParseUser::getCurrentUser()->getSessionToken(); } $queryString = $this->buildQueryString($this->_getOptions()); $result = ParseClient::_request('GET', 'classes/' . $this->className . '?' . $queryString, $sessionToken, null, $useMasterKey); $output = []; foreach ($result['results'] as $row) { $obj = ParseObject::create($this->className, $row['objectId']); $obj->_mergeAfterFetchWithSelectedKeys($row, $this->selectedKeys); $output[] = $obj; } return $output; }
public function dtestCurrentUserIsNotDirty() { $user = new ParseUser(); $user->setUsername('asdf'); $user->setPassword('zxcv'); $user->set('bleep', 'bloop'); $user->signUp(); $this->assertFalse($user->isKeyDirty('bleep')); $userAgain = ParseUser::getCurrentUser(); $this->assertFalse($userAgain->isKeyDirty('bleep')); }
/** * Removing a Schema from Parse. * You can only remove a schema from your app if it is empty (has 0 objects). * * @throws \Exception * * @return array */ public function delete() { self::assertClassName(); $sessionToken = null; if (ParseUser::getCurrentUser()) { $sessionToken = ParseUser::getCurrentUser()->getSessionToken(); } $result = ParseClient::_request('DELETE', 'schemas/' . $this->className, $sessionToken, null, self::$useMasterKey); if (!empty($result)) { throw new Exception('Error on delete Schema "' . $this->className . '"', 101); } return true; }
$user = ParseUser::getCurrentUser(); // put the user in $user } else { // otherwise try { $user = ParseUser::logIn("*****@*****.**", "123"); // log the user // Do stuff after successful login. } catch (ParseException $error) { // The login failed. Check error to see why. die('Bill could not log in!'); // in case of error fail misserably } } $requested = false; $userType = getUserType(ParseUser::getCurrentUser()); if ($userType == 'availableBorrower') { // Procceed normally! // Check if action was performed. if (isset($_POST['action']) && $_POST['action']) { $action = $_POST['action']; if ($action == 'request') { $start = $_POST['start']; $end = $_POST['end']; $requested = true; // Send a request for the specified time. createTransaction($start, $end); } else { // DELETE TRANSACTION. } }
public function deleteBeacon($beaconId) { $status1 = true; $currentUser = ParseUser::getCurrentUser(); if ($currentUser) { $deleteBeaconParse = $this->compeditquery->doBeaconDelete($beaconId); if (!$deleteBeaconParse['status']) { $status1 = false; } if (!$status1) { echo "There was an error, we're taking you back to sort it out..."; notify('danger', $deleteBeaconParse['parseMsg'], 'company/beacons/editbeacons/' . $beaconId); } else { echo "Please wait, we'll take you back right away..."; notify('success', 'Beacon Deleted Succesfully', 'company/beacons'); } } else { redirect('company/login', 'refresh'); } }
/** * Get the defaultACL. * * @return ParseACL */ public static function _getDefaultACL() { if (self::$defaultACLUsesCurrentUser && self::$defaultACL) { $last = self::$lastCurrentUser ? clone self::$lastCurrentUser : null; if (!ParseUser::getCurrentUser()) { return self::$defaultACL; } if ($last != ParseUser::getCurrentUser()) { self::$defaultACLWithCurrentUser = clone self::$defaultAC; self::$defaultACLWithCurrentUser->_setShared(true); self::$defaultACLWithCurrentUser->setUserReadAccess(ParseUser::getCurrentUser(), true); self::$defaultACLWithCurrentUser->setUserWriteAccess(ParseUser::getCurrentUser(), true); self::$lastCurrentUser = clone ParseUser::getCurrentUser(); } return self::$defaultACLWithCurrentUser; } return self::$defaultACL; }
public function getAttractions() { $city = new ParseQuery("Cities"); $city->equalTo("city_name", "NewYork"); $query = new ParseQuery("attractions"); $query->matchesQuery("city_attractions", $city); $currentUser = ParseUser::getCurrentUser(); if ($currentUser) { $attractions = $query->find(); return view('expertTemplate.displayAttractions')->with('attractions', $attractions)->with('currentUser', $currentUser); } else { } }
public function get_current_user() { $currentUser = ParseUser::getCurrentUser(); return $currentUser; }
function user_login_report($username, $pass, $report_id) { $response = new Response(); try { $user = ParseUser::logIn($username, $pass); $user->save(); $user = ParseUser::getCurrentUser(); $_SESSION['user'] = $user; $_SESSION['notification'] = true; $query = new ParseQuery("_Session"); $query->equalTo("user", $user); $query->includeKey("user"); $query->descending("createdAt"); $query->limit(1); $new = $query->find(true); $_SESSION['last_date'] = date_format($new[0]->getCreatedAt(), 'Y-m-d\\TH:i:s.u\\Z'); echo add_user_report($report_id, $user); } catch (ParseException $error) { $response->success = false; $response->message = 'Error: Failed to login: ' . $error; echo json_encode($response); } }
public function doAddCampaign($title, $desc, $type, $points, $date, $section, $userpoints, $startdate, $age, $gender) { $date1 = date('Y-m-d H:i', strtotime((string) date('Y-m-d'))); $date2 = date_create($date1); $user = ParseUser::getCurrentUser(); $outletCheck = $user->get("outlet"); $outletCheck->fetch(); $sectionObject = new ParseObject("Sections", $section); $starto = date_format($startdate, 'Y-M-d'); // var_dump($starto); // exit; $city = $outletCheck->get("city"); $city->fetch(); $activity = new ParseObject("ActivityLog"); $activity->set("city", $city); $activity->set("activity", "Campaign Added"); $activity->set("startDate", $starto); $offers = new ParseObject("OutletOffers"); $offers->set("offerTitle", $title); $offers->set("offerDescription", $desc); $offers->set("offerType", $type); $offers->set("pointBalance", $points); if ($startdate >= $date2) { $offers->set("offerStatus", "sent"); } else { $offers->set("offerStatus", "expired"); } $offers->set("age", $age); $offers->set("gender", $gender); $offers->set("offerPoints", $points); $offers->set("userAllocation", $userpoints); $offers->set("expiryDate", $date); $offers->set("startDate", $startdate); $offers->set("startStrDate", $starto); $offers->set("outlet", $outletCheck); $offers->set("section", $sectionObject); try { $offers->save(); $activity->set("campaign", $offers); $activity->save(); return ['status' => true]; } catch (ParseException $ex) { return ['status' => false, 'parseMsg' => $ex->getMessage()]; } }
public function verifyUser(Request $request) { $user = new ParseUser(); $userQuery = ParseUser::query(); try { $user = ParseUser::logIn($request->input('userName'), $request->input('userPass')); $currentUser = ParseUser::getCurrentUser(); if (!$currentUser->get('isAdmin')) { \Session::put('message', 0); return redirect('/login'); } else { $request->session()->put('username', $request->input('userName')); return redirect('/maintenance'); } } catch (ParseException $e) { \Session::put('message', -1); return redirect('/login'); } }
public function editCamp($campaignId) { # code... if ($this->input->post('editcamp')) { $campaign = $this->input->post('editcamp'); $date1 = date('Y-m-d H:i', strtotime($campaign['expirydate'])); $date = date_create($date1); $title = $campaign['title']; $type = $campaign['type']; $points = (int) $campaign['points']; $userpoints = (int) $campaign['userpoints']; $description = $campaign['desc']; $gender = $campaign['gender']; $age = $campaign['age']; //var_dump($companyName); //exit; $status1 = true; $currentUser = ParseUser::getCurrentUser(); if ($currentUser) { $editCampParse = $this->signup->doEditCampaign($title, $type, $points, $userpoints, $description, $gender, $age, $date, $campaignId); if (!$editCampParse['status']) { $status1 = false; } if (!$status1) { //echo "f**k"; notify('danger', $editCampParse['parseMsg'], 'company/campaigns'); } else { echo "Please wait, we'll take you back to the dashboard right away..."; notify('success', 'Campaign Edited Succesfully', 'company/campaigns'); } } else { redirect('company/login', 'refresh'); } } else { $currentUser = ParseUser::getCurrentUser(); $displayData = 'display:none'; $adminName = $this->editHeader($displayData, $campaignId); if ($currentUser) { $dashView = $this->load->view('beacons/editadmincampaign', $adminName, true); buildPage($dashView, 'Edit Campaign'); } else { //echo 'hey'; redirect('company/login', 'refresh'); } } }
/** * Save object and unsaved children within. * * @param ParseObject|array $target * @param bool $useMasterKey Whether to use the Master Key. * * @throws Exception * @throws ParseAggregateException * @throws ParseException */ private static function deepSave($target, $useMasterKey = false) { $unsavedChildren = []; $unsavedFiles = []; static::findUnsavedChildren($target, $unsavedChildren, $unsavedFiles); $sessionToken = null; if (ParseUser::getCurrentUser()) { $sessionToken = ParseUser::getCurrentUser()->getSessionToken(); } foreach ($unsavedFiles as &$file) { $file->save(); } $objects = []; // Get the set of unique objects among the children. foreach ($unsavedChildren as &$obj) { if (!in_array($obj, $objects, true)) { $objects[] = $obj; } } $remaining = $objects; while (count($remaining) > 0) { $batch = []; $newRemaining = []; foreach ($remaining as $key => &$object) { if (count($batch) > 40) { $newRemaining[] = $object; continue; } if ($object->canBeSerialized()) { $batch[] = $object; } else { $newRemaining[] = $object; } } $remaining = $newRemaining; if (count($batch) === 0) { throw new Exception('Tried to save a batch with a cycle.'); } $requests = []; foreach ($batch as $obj) { $json = $obj->getSaveJSON(); $method = 'POST'; $path = 'classes/' . $obj->getClassName(); if ($obj->getObjectId()) { $path .= '/' . $obj->getObjectId(); $method = 'PUT'; } $requests[] = ['method' => $method, 'path' => $path, 'body' => $json]; } if (count($requests) === 1) { $req = $requests[0]; $result = ParseClient::_request($req['method'], $req['path'], $sessionToken, json_encode($req['body']), $useMasterKey); $batch[0]->mergeAfterSave($result); } else { foreach ($requests as &$r) { $r['path'] = '/' . ParseClient::getMountPath() . $r['path']; } $result = ParseClient::_request('POST', 'batch', $sessionToken, json_encode(['requests' => $requests]), $useMasterKey); $errorCollection = []; foreach ($batch as $key => &$obj) { if (isset($result[$key]['success'])) { $obj->mergeAfterSave($result[$key]['success']); } elseif (isset($result[$key]['error'])) { $response = $result[$key]; $error = $response['error']['error']; $code = isset($response['error']['code']) ? $response['error']['code'] : -1; $errorCollection[] = ['error' => $error, 'code' => $code, 'object' => $obj]; } else { $errorCollection[] = ['error' => 'Unknown error in batch save.', 'code' => -1, 'object' => $obj]; } } if (count($errorCollection)) { throw new ParseAggregateException('Errors during batch save.', $errorCollection); } } } }
public function index() { // This only happens if there was a post request from the lockscreen form. if ($this->input->server('REQUEST_METHOD') == 'POST') { //declare variables //holding boolean for error checking $status1 = true; // get username from login form // this was made hidden in the form so that the user doesn't see it. $username = $this->input->post('txtusername'); // get password from login form $password = $this->input->post('txtpassword'); // set validation rules $this->form_validation->set_rules('txtusername', 'Email', 'required|min_length[5]|valid_email|trim'); $this->form_validation->set_rules('txtpassword', 'Password', 'required'); // check validation // If there was an error during validation, this runs. if ($this->form_validation->run() == FALSE) { $data = array('displayData' => 'display:show'); $this->load->view('lockscreen/lockscreen_company', $data); } else { // login using the login model $loginParse = $this->login->doLogin($username, $password); // check if the status message from the login operation is false. if (!$loginParse['status']) { $status1 = false; } // do something if the status is false(e.g, show an error message). if (!$status1) { notify('danger', $loginParse['parseMsg'], 'company/Lockscreen'); } else { echo "Logging you in..."; //$this->session->sess_destroy(); $userDetails = ['firstName', 'lastName', 'username']; //$this->session->unset_userdata($userDetails); redirect('company/Dashboard', 'refresh'); } } // This happens if there is a normal navigation to the page } else { //$this->menu_header(); $currentUser = ParseUser::getCurrentUser(); $firstName = ''; $lastName = ''; $username = ''; $userDetails = ['firstName', 'lastName', 'username']; if (!$this->session->userdata('firstName')) { echo 'session totally destroyed, sorry.'; redirect('company/Login'); } else { if ($currentUser) { // do stuff with the user $firstName = $currentUser->get("firstName"); $lastName = $currentUser->get("lastName"); $username = $currentUser->get("username"); $userDetails = array('firstName' => $firstName, 'lastName' => $lastName, 'username' => $username); $this->session->set_userdata($userDetails); //$currentUser = ParseUser::getCurrentUser(); //if ($currentUser){ // log the user out ParseUser::logOut(); // load lockscreen view with the details needed for login // which has already been set in the $adminName array (which excludes the password for obvious reasons). } $adminDetails = ['firstName' => $this->session->userdata('firstName'), 'lastName' => $this->session->userdata('lastName'), 'username' => $this->session->userdata('username'), 'displayData' => 'display:none']; $this->load->view('lockscreen/lockscreen_company', $adminDetails); // else{ // // go to the main login page if the user is not in session // redirect('admin/Login','refresh'); // // destroy the codeIgniter session set with user details in the menu_header() function. // $this->session->sess_destroy(); // } // $data = array( // 'displayData' => 'display:none', // 'firstName' => $this->session->userdata('firstName'), // 'lastName' => $this->session->userdata('lastName'), // 'username' => $this->session->userdata('username') // ); // $this->load->view('lockscreen/lockscreen', $data); } } }
<?php require 'vendor/autoload.php'; use Parse\ParseClient; use Parse\ParseUser; use Parse\ParseSessionStorage; use Parse\ParseQuery; use Parse\ParseObject; ParseClient::initialize('bYE5q8xvJEiV2A2mtf0fgbQR8olNMQ2wfr05WYco', 'wZ5XfUCgQBZzFfQOwhWzP14W1fHfe6aj4qS76u0h', '3e8xtmuzrlpgAHNq7ho5Pe5tL9HrQFEgtJD2YVvQ'); if (session_status() == PHP_SESSION_NONE) { session_start(); } ParseClient::setStorage(new ParseSessionStorage()); $currentUser = ParseUser::getCurrentUser(); $doubtsCourseQuery = new ParseQuery("doubtCourse"); $doubtsCourseQuery->equalTo("User", $currentUser); $doubtsCourseQuery->equalTo("CourseName", $_GET["course"]); echo $_GET["course"]; $doubtsCourse = $doubtsCourseQuery->find(); foreach ($doubtsCourse as $doubts) { $doubts->fetch(); $doubts = $doubts->get("Doubts"); foreach ($doubts as $doubt) { $doubt->set("Seen", 1); $doubt->save(); } }
$master_key = "Fm9X40ewplSIEDTOmYxVdCEN7ge31vgfFwScYr3y"; ParseClient::initialize($app_id, $rest_key, $master_key); /* Backup logout info goes here */ // if(isset($_SESSION["username"])) { // unset($_SESSION["username"]); // } $user = new ParseUser(); if (isset($_POST["username"]) && isset($_POST["password"]) && $_POST["username"] != "" && $_POST["password"] != "") { /* set session storage */ ParseClient::setStorage(new ParseSessionStorage()); try { $user = ParseUser::logIn($_POST["username"], $_POST["password"]); if (ParseUser::getCurrentUser()->get("isAdmin") != TRUE) { ParseUser::logOut(); throw new AdminException("User is not an admin"); } $_SESSION["username"] = ParseUser::getCurrentUser()->get("username"); $_SESSION["friendlyName"] = ParseUser::getCurrentUser()->get("friendlyName"); // Do stuff after successful login. } catch (ParseException $ex) { // The login failed. Check error to see why. setcookie("loginError", $ex->getMessage()); } catch (AdminException $aex) { setcookie("loginError", $aex->getMessage()); } } else { setcookie("loginError", "Failed to login"); } header("Location: index.php"); /* Redirect browser */ exit;