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);
     }
 }
Exemple #2
0
 /**
  * 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());
     }
 }
Exemple #3
0
 /**
  * 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;
 }
Exemple #16
0
 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;
 }
Exemple #18
0
    $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.
        }
    }
Exemple #19
0
 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');
     }
 }
Exemple #20
0
 /**
  * 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;
 }
Exemple #23
0
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);
    }
}
Exemple #24
0
 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');
     }
 }
Exemple #26
0
 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);
             }
         }
     }
 }
Exemple #28
0
 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();
    }
}
Exemple #30
0
$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;