private function login() { $requires = array('_email', '_pwd'); $values = $this->sanitize_fields($_POST, $requires); if ($values) { $user_data = array('_email' => $values['_email'], '_pwd' => md5($values['_pwd'])); $model = new Model(); $user = $model->get_user($user_data); $user = array_shift($user); } if (isset($user->user_id) && $user->user_id) { $_SESSION['hash'] = base64_encode($user->user_id); $_SESSION['username'] = $user->user_name; if (isset($values['_rememberme']) && $values['_rememberme']) { $update = $model->update_hash($user->user_id, $_SESSION['hash']); if ($update) { setcookie('hash', $_SESSION['hash'], time() + 365 * 86400); } } } return isset($_SESSION['hash']) && $_SESSION['hash'] ? true : false; }
require dirname(__FILE__) . "/service/common/config.php"; require dirname(__FILE__) . "/service/common/auth.php"; require dirname(__FILE__) . "/service/common/view.php"; require dirname(__FILE__) . "/service/models/model.php"; use Abraham\TwitterOAuth\TwitterOAuth; $auth = new Auth(); if (!$auth->checkLogin()) { $layout = 'login'; $view = new View(); $view->render($layout); exit; } $twitter = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $auth->info['oauth_token'], $auth->info['oauth_token_secret']); $settings = $twitter->get('account/verify_credentials'); $user = array('session_id' => $settings->id, 'auth_type' => 'twitter', 'name' => $settings->screen_name); $user_data = Model::get_user(array('session_id' => $user['session_id'])); $SPEND_PARAMS = array('amount', 'created', 'type', 'category', 'memo'); $params = array(); foreach ($SPEND_PARAMS as $param) { if (isset($_POST[$param]) && $_POST[$param] != '') { $params[$param] = $_POST[$param]; } else { $params[$param] = ''; } } // TODO validation $params['user_id'] = $user_data[0]['user_id']; $result = Model::add_spending($params); header("Content-Type: application/json; charset=utf-8"); echo json_encode($result);
<?php require dirname(__FILE__) . "/service/common/config.php"; require dirname(__FILE__) . "/service/common/auth.php"; require dirname(__FILE__) . "/service/common/view.php"; require dirname(__FILE__) . "/service/models/model.php"; require dirname(__FILE__) . "/service/vendor/autoload.php"; use Abraham\TwitterOAuth\TwitterOAuth; $auth = new Auth(); if (!$auth->checkLogin()) { $layout = 'login'; $view = new View(); $view->render($layout); exit; } $twitter = new TwitterOAuth(CONSUMER_KEY, CONSUMER_SECRET, $auth->info['oauth_token'], $auth->info['oauth_token_secret']); $settings = $twitter->get('account/verify_credentials'); $user = array('session_id' => $settings->id, 'auth_type' => 'twitter', 'name' => $settings->screen_name); $model = new Model(); $isRegistration = Model::get_user(array('session_id' => $user['session_id'])); $spending = array(); if (0 < count($isRegistration)) { $spending = Model::get_spending(array('user_id' => $isRegistration[0]['user_id'])); } else { Model::add_user($user); } $layout = 'index'; $view = new View(); $view->setData('spending', $spending); $view->render($layout);