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);
     }
 }
Ejemplo n.º 2
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
 }
function register($name, $email, $password, $teacher)
{
    $user = new ParseUser();
    $user->set("username", $email);
    $user->set("email", $email);
    $user->set("password", $password);
    $user->set("name", $name);
    if ($teacher == "true") {
        $user->set("Teacher", true);
    } else {
        $user->set("Teacher", false);
    }
    try {
        $user->signUp();
        $user->save();
        if ($teacher == "true") {
            header("Location: profile.php");
        } else {
            header("Location: howToLearn.php");
        }
        // Hooray! Let them use the app now.
    } catch (ParseException $ex) {
        // Show the error message somewhere and let the user try again.
    }
}
Ejemplo n.º 4
0
function signup()
{
    $username = $_POST["id"];
    $user = new ParseUser();
    $user->set("username", $username);
    $user->set("password", $_POST["pass"]);
    $user->set("email", $username . "@example.com");
    try {
        $user->signUp();
        // 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();
    }
}
Ejemplo n.º 5
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());
     }
 }
Ejemplo n.º 6
0
 /**
  * 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);
 }
 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);
 }
 /**
  * Show the form for creating a new resource.
  *
  * @return Bool
  */
 public static function authenticated()
 {
     try {
         ParseClient::initialize(env('PARSE_ID', 'f**k'), env('PARSE_REST', 'f**k'), env('PARSE_MASTER', 'f**k'));
         $session = Cache::get('sessionToken', 'default');
         $user = ParseUser::become($session);
         return true;
     } catch (ParseException $error) {
         return false;
     }
 }
Ejemplo n.º 9
0
 /**
  * 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);
 }
Ejemplo n.º 10
0
function resetPasswordAux($userName)
{
    try {
        console . log("entrei");
        window . alert("Email enviado");
        ParseUser::requestPasswordReset($userName);
        window . alert("Email enviado");
        // Password reset request was sent successfully
    } catch (ParseException $ex) {
        // Password reset failed, check the exception message
    }
}
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request  $request
  * @param  \Closure  $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     Log::info("PARSE AUTH");
     try {
         ParseClient::initialize(env('PARSE_ID', 'f**k'), env('PARSE_REST', 'f**k'), env('PARSE_MASTER', 'f**k'));
         $session = Cache::get('sessionToken', 'default');
         $user = ParseUser::become($session);
         return $next($request);
     } catch (ParseException $error) {
         Log::info("PARSE AUTH ERROR: " . $error);
         return new RedirectResponse(url('/login'));
     }
 }
Ejemplo n.º 12
0
 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) {
     }
 }
Ejemplo n.º 13
0
/**
Envia la notificacion a cierto usuario
**/
function enviarPush()
{
    $_strName = $_POST['nombreUsuario'];
    $_strMenssage = $_POST['send'];
    // Find users near a given username
    $userQuery = ParseUser::query();
    $userQuery->equalTo("username", $_strName);
    // Find devices associated with these users
    $pushQuery = ParseInstallation::query();
    $pushQuery->matchesQuery('Usuarios', $userQuery);
    // Send push notification to query
    ParsePush::send(array("where" => $pushQuery, "data" => array("alert" => "{$_strMenssage}")));
}
 public function get_user_data($username, $credentials)
 {
     ParseClient::initialize($credentials->app_id, $credentials->rest_key, $credentials->master_key);
     $query = ParseUser::query();
     $query->equalTo('username', $username);
     $result = $query->find();
     $user = $result[0];
     $data = new stdClass();
     $data->fullName = $user->get("fullName");
     $data->avatar = $user->get("avatar");
     $data->title = $user->get("title");
     return $data;
 }
 /**
  * LOGOUT A USER
  *
  * @return void
  */
 public function logOut()
 {
     try {
         ParseClient::initialize(env('PARSE_ID', 'f**k'), env('PARSE_REST', 'f**k'), env('PARSE_MASTER', 'f**k'));
         $session = Cache::get('sessionToken', 'default');
         $user = ParseUser::become($session);
         Cache::forget('sessionToken');
         $user->logOut();
         return Redirect::to('login');
     } catch (ParseException $error) {
         dd($error);
     }
 }
Ejemplo n.º 16
0
 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);
     }
 }
Ejemplo n.º 17
0
function login($email, $password)
{
    try {
        $user = ParseUser::logIn($email, $password);
        if (isset($_GET["back"])) {
            $course = $_GET["course"];
            header("Location: course.php?course={$course}");
        } else {
            header("Location: profile.php");
        }
    } catch (ParseException $error) {
        header("Location: login.php?error=1");
    }
}
Ejemplo n.º 18
0
 /**
  * Expects a post with email (or the form is just shown). Resets the password using the email then redirects to the
  * sign in page with a success or error message.
  */
 public function forgotAction()
 {
     if (!$this->request instanceof Request or !$this->request->isPost()) {
         return;
         //nothing to do
     }
     $email = $this->request->getPost('email');
     try {
         ParseUser::requestPasswordReset($email);
         $this->flashMessenger()->addInfoMessage('Reset Sent!');
     } catch (ParseException $e) {
         $this->flashMessenger()->addErrorMessage($e->getMessage());
     }
     $this->redirect()->toRoute('auth', ['action' => 'signin']);
 }
Ejemplo n.º 19
0
 /**
  * Parse\Client::initialize, must be called before using Parse features.
  *
  * @param string $app_id     Parse Application ID
  * @param string $rest_key   Parse REST API Key
  * @param string $master_key Parse Master Key
  *
  * @return null
  */
 public static function initialize($app_id, $rest_key, $master_key)
 {
     ParseUser::registerSubclass();
     ParseRole::registerSubclass();
     ParseInstallation::registerSubclass();
     self::$applicationId = $app_id;
     self::$restKey = $rest_key;
     self::$masterKey = $master_key;
     if (!static::$storage) {
         if (session_status() === PHP_SESSION_ACTIVE) {
             self::setStorage(new ParseSessionStorage());
         } else {
             self::setStorage(new ParseMemoryStorage());
         }
     }
 }
Ejemplo n.º 20
0
 public static function login($email, $password)
 {
     if (!empty($email) && !empty($password)) {
         $cleanEmail = filter_var($email, FILTER_SANITIZE_EMAIL);
         $cleanPassword = filter_var($password, FILTER_SANITIZE_STRING);
         try {
             // Hooray! Let them use the app now.
             ParseUser::logIn($cleanEmail, $cleanPassword);
             return 200;
         } catch (ParseException $ex) {
             return 500;
         }
     } else {
         return 500;
     }
 }
Ejemplo n.º 21
0
 public function login($obj)
 {
     //si el objeto recibido desde el FrontEnd está vacío, se interrumpen los procesos
     if (empty($obj)) {
         die("Falta completar alguno de los campos");
     }
     //instanciamos Connect y llamamos al método necesario para conectarnos a la DB
     $con = new Connect();
     $var = $con->connect_to_db();
     //logueamos al usuario con los datos recibidos desde FrontEnd
     $user = ParseUser::logIn($obj["username"], $obj["password"]);
     session_start();
     //almacenamos dentro de la variable global los datos que nos interesará utilizar luego en otros servicios
     $_SESSION["username"] = $user->get('username');
     $_SESSION["userType"] = $user->get('TipoUsuario')->getObjectId();
     $_SESSION["sede"] = $user->get('NombreSede_FK')->getObjectId();
 }
Ejemplo n.º 22
0
 function add()
 {
     // validators
     $this->form_validation->set_error_delimiters($this->config->item('error_delimeter_left'), $this->config->item('error_delimeter_right'));
     $this->form_validation->set_rules('user_id', lang('reservations input user_id'), 'trim');
     $this->form_validation->set_rules('team_id', lang('reservations input team_id'), 'trim');
     $this->form_validation->set_rules('match_data[date]', lang('reservations input date'), 'required|trim');
     $this->form_validation->set_rules('match_data[time]', lang('reservations input time'), 'required|trim');
     $this->form_validation->set_rules('match_data[duration]', lang('reservations input duration'), 'required|trim|numeric');
     if ($this->form_validation->run() == true) {
         $data = $this->input->post();
         // save the new user
         $reservation = new ParseObject("Reservation");
         $relationOwner = $reservation->getRelation("userId");
         $queryOwner = ParseUser::query();
         $owner = $queryOwner->get("btPTAhtpvo");
         $relationOwner->add($owner);
         $relationStatus = $reservation->getRelation("status");
         $queryStatus = new ParseQuery("ReservationStatus");
         $status = $queryStatus->get("KIzDQVJrAV");
         $relationStatus->add($status);
         $reservation->setAssociativeArray("reservationData", $data['match_data']);
         try {
             $reservation->save();
             $this->session->set_flashdata('message', 'New object created with objectId: ' . $reservation->getObjectId());
             redirect($this->_redirect_url);
         } catch (ParseException $ex) {
             // Execute any logic that should take place if the save fails.
             // error is a ParseException object with an error code and message.
             $this->session->set_flashdata('error', 'Failed to create new object, with error message: ' . $ex->getMessage());
         }
         // return to list and display message
     }
     // setup page header data
     // setup page header data
     $this->set_title(sprintf(lang('reservations title reservations'), $this->settings->site_name));
     $this->set_subtitle(lang('reservations subtitle add_reservation'));
     $data = $this->includes;
     // set content data
     $content_data = array('cancel_url' => $this->_redirect_url, 'user' => null, 'password_required' => true);
     // load views
     $data['content'] = $this->load->view('reservations/form', $content_data, true);
     $this->load->view($this->template, $data);
 }
Ejemplo n.º 23
0
 /**
  * Envia push de atualizaçao.
  *
  * @return Response
  */
 public function enviarAtualizacao()
 {
     try {
         ParseClient::initialize('YZzX02HIZ0xnl2XgzYRHB9QRwYr6FBgWrDUYl5w0', 'zNGQwg11i4fQRhGUCZIR777A8VRWjCqe3BQeZgDI', '4neCCcchvafqvgZlnVu0c4q3s3nsmh9n5tYV0x2o');
         $session = Cache::get('sessionToken', 'default');
         $usuario = ParseUser::become($session);
         $texto = Input::get('texto');
         $atualizacaoQuery = new ParseQuery("Atualizacao");
         $atualizacaoQuery->descending("numero");
         $ultimaAtualizacao = $atualizacaoQuery->first();
         $novoNumero = $ultimaAtualizacao->get('numero') + 1;
         $novaAtualizacao = new ParseObject("Atualizacao");
         $novaAtualizacao->set('numero', $novoNumero);
         $novaAtualizacao->set('usuario', $usuario);
         $novaAtualizacao->set('texto', $texto);
         $novaAtualizacao->save();
         // $fields = array('Accept'=>'application/json',
         //          'X-Parse-Application-Id' => 'YZzX02HIZ0xnl2XgzYRHB9QRwYr6FBgWrDUYl5w0',
         //          'X-Parse-Master-Key' => '4neCCcchvafqvgZlnVu0c4q3s3nsmh9n5tYV0x2o');
         // $ch = curl_init();
         // curl_setopt($ch, CURLOPT_URL, 'https://api.parse.com/1/jobs/jobTeste');
         // curl_setopt($ch, CURLOPT_RETURNTRANSFER, false);
         // curl_setopt($ch, CURLOPT_HEADER, $fields);
         // curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
         // // curl_setopt(CURLOPT_USERPWD, 'XXXXXX');
         // $result = curl_exec($ch);
         // curl_close($ch);
         // $cmd='curl -X POST \
         // 	  -H \"X-Parse-Application-Id: YZzX02HIZ0xnl2XgzYRHB9QRwYr6FBgWrDUYl5w0\" \
         // 	  -H \"X-Parse-Master-Key: 4neCCcchvafqvgZlnVu0c4q3s3nsmh9n5tYV0x2o\" \
         // 	  -H \"Content-Type: application/json\" \
         // 	  -d \"{\"plan\":\"paid\"}\" \
         // 	  https://api.parse.com/1/jobs/jobTeste';
         // Log::info($cmd);
         // exec($cmd,$result);
         Log::info("CHEGUEI NEGAO");
         // Log::info($result);
         return 200;
     } catch (ParseException $error) {
         return $error;
     }
 }
 /**
  * Show the form for creating a new resource.
  *
  * @return Response
  */
 public function create()
 {
     try {
         ParseClient::initialize(env('PARSE_ID', 'f**k'), env('PARSE_REST', 'f**k'), env('PARSE_MASTER', 'f**k'));
         $session = Cache::get('sessionToken', 'default');
         $user = ParseUser::become($session);
         $nome = Input::get('nome');
         $especialidadeId = Input::get('especialidadeId');
         $especQuery = new ParseQuery("Especialidade");
         $especialidade = $especQuery->get($especialidadeId);
         $protocolo = ParseObject::create("Protocolo");
         $protocolo->set('nome', $nome);
         $protocolo->set('especialidade', $especialidade);
         $protocolo->save();
         $id = $protocolo->getObjectId();
         return $id;
     } catch (ParseException $error) {
         return $error;
     }
 }
Ejemplo n.º 25
0
 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');
 }
Ejemplo n.º 26
0
 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);
 }
Ejemplo n.º 27
0
 /**
  * Parse\Client::initialize, must be called before using Parse features.
  *
  * @param string  $app_id               Parse Application ID
  * @param string  $rest_key             Parse REST API Key
  * @param string  $master_key           Parse Master Key
  * @param boolean $enableCurlExceptions Enable or disable Parse curl exceptions
  *
  * @return null
  */
 public static function initialize($app_id, $rest_key, $master_key, $enableCurlExceptions = true)
 {
     if (!ParseObject::hasRegisteredSubclass('_User')) {
         ParseUser::registerSubclass();
     }
     if (!ParseObject::hasRegisteredSubclass('_Role')) {
         ParseRole::registerSubclass();
     }
     ParseInstallation::registerSubclass();
     ParseSession::registerSubclass();
     self::$applicationId = $app_id;
     self::$restKey = $rest_key;
     self::$masterKey = $master_key;
     self::$enableCurlExceptions = $enableCurlExceptions;
     if (!static::$storage) {
         if (session_status() === PHP_SESSION_ACTIVE) {
             self::setStorage(new ParseSessionStorage());
         } else {
             self::setStorage(new ParseMemoryStorage());
         }
     }
 }
Ejemplo n.º 28
0
 /**
  * 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);
 }
<?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();
    }
}
Ejemplo n.º 30
0
 public function createUser($username)
 {
     $user = new ParseUser();
     $user->setUsername($username);
     $user->setPassword($username);
     return $user;
 }