예제 #1
0
파일: index.php 프로젝트: CloCkWeRX/kort
<?php

/**
 * kort - the /validation webservices.
 */
/** Load Slim library */
require_once '../../../lib/Slim-2.1.0/Slim/Slim.php';
/** Load ClassLoader */
require_once '../../../server/php/ClassLoader.php';
// Load Slim library
\Slim\Slim::registerAutoloader();
Kort\ClassLoader::registerAutoLoader();
// create Slim app
$app = new \Slim\Slim();
$slim = new \Helper\SlimHelper($app);
$validationHandler = new \Webservice\Validation\ValidationHandler();
$voteHandler = new \Webservice\Vote\VoteHandler();
$app->get('/position/:lat,:lng', function ($lat, $lng) use($validationHandler, $app, $slim) {
    $validationHandler->setLanguage($app->request()->params('lang'));
    $limit = $app->request()->params('limit');
    $radius = $app->request()->params('radius');
    $validationData = $validationHandler->getValidationsByOwnPosition($lat, $lng, $limit, $radius);
    $slim->returnData($validationData);
});
$app->post('/vote', function () use($voteHandler, $app) {
    $voteHandler->setLanguage($app->request()->params('lang'));
    $data = json_decode($app->request()->getBody(), true);
    if (!isset($_SESSION) || $data['user_id'] != $_SESSION['user_id']) {
        $app->response()->status(403);
        $app->response()->write("Wrong user_id");
        return;
예제 #2
0
파일: index.php 프로젝트: CloCkWeRX/kort
<?php

/**
 * kort - the /promotion webservices
 */
/** Load Slim library */
require_once '../../../lib/Slim-2.1.0/Slim/Slim.php';
/** Load ClassLoader */
require_once '../../../server/php/ClassLoader.php';
// Load Slim library
\Slim\Slim::registerAutoloader();
Kort\ClassLoader::registerAutoLoader();
// create Slim app
$app = new \Slim\Slim();
$slim = new \Helper\SlimHelper($app);
$promotionHandler = new \Webservice\Promotion\PromotionHandler();
$app->get('/', function () use($promotionHandler, $app, $slim) {
    $promotionHandler->setLanguage($app->request()->params('lang'));
    $promotionData = $promotionHandler->getAllPromotions();
    $slim->returnData($promotionData);
});
if (!isset($_SESSION)) {
    session_cache_limiter(false);
    session_start();
}
// start Slim app
$app->run();
예제 #3
0
파일: index.php 프로젝트: CloCkWeRX/kort
<?php

/**
 * kort - the /bug webservices
 */
/** Load Slim library */
require_once '../../../lib/Slim-2.1.0/Slim/Slim.php';
/** Load ClassLoader */
require_once '../../../server/php/ClassLoader.php';
// Load Slim library
\Slim\Slim::registerAutoloader();
Kort\ClassLoader::registerAutoLoader();
// create Slim app
$app = new \Slim\Slim();
$slim = new \Helper\SlimHelper($app);
$bugHandler = new \Webservice\Bug\BugHandler();
$fixHandler = new \Webservice\Fix\FixHandler();
$fixGetHandler = new \Webservice\Fix\FixGetHandler();
$app->get('/position/:lat,:lng', function ($lat, $lng) use($bugHandler, $app, $slim) {
    $bugHandler->setLanguage($app->request()->params('lang'));
    $limit = $app->request()->params('limit');
    $radius = $app->request()->params('radius');
    $bugData = $bugHandler->getBugsByOwnPosition($lat, $lng, $limit, $radius);
    $slim->returnData($bugData);
});
$app->post('/fix', function () use($fixHandler, $app) {
    $fixHandler->setLanguage($app->request()->params('lang'));
    $data = json_decode($app->request()->getBody(), true);
    if (!isset($_SESSION) || $data['user_id'] != $_SESSION['user_id']) {
        $app->response()->status(403);
        $app->response()->write("Wrong user_id");
예제 #4
0
파일: index.php 프로젝트: CloCkWeRX/kort
<?php

/**
 * kort - the /highscore webservices
 */
/** Load Slim library */
require_once '../../../lib/Slim-2.1.0/Slim/Slim.php';
/** Load ClassLoader */
require_once '../../../server/php/ClassLoader.php';
use Webservice\Highscore\HighscoreHandler;
// Load Slim library
\Slim\Slim::registerAutoloader();
Kort\ClassLoader::registerAutoLoader();
$app = new \Slim\Slim();
$slim = new \Helper\SlimHelper($app);
\session_start();
$highscoreHandler = new HighscoreHandler();
// define REST resources
$app->get('/absolute', function () use($highscoreHandler, $app, $slim) {
    $highscoreHandler->setLanguage($app->request()->params('lang'));
    $limit = $app->request()->params('limit');
    $page = $app->request()->params('page');
    $highscoreData = $highscoreHandler->getAbsoluteHighscore($limit, $page);
    $slim->returnData($highscoreData);
});
$app->get('/relative', function () use($highscoreHandler, $app, $slim) {
    $highscoreHandler->setLanguage($app->request()->params('lang'));
    $limit = $app->request()->params('limit');
    $page = $app->request()->params('page');
    $highscoreData = $highscoreHandler->getRelativeHighscore($limit, $page);
    $slim->returnData($highscoreData);
예제 #5
0
파일: index.php 프로젝트: CloCkWeRX/kort
<?php

/**
 * kort - the /statistics webservices
 */
/** Load Slim library */
require_once '../../../lib/Slim-2.1.0/Slim/Slim.php';
/** Load ClassLoader */
require_once '../../../server/php/ClassLoader.php';
// Load Slim library
\Slim\Slim::registerAutoloader();
Kort\ClassLoader::registerAutoLoader();
// create Slim app
$app = new \Slim\Slim();
$slim = new \Helper\SlimHelper($app);
$statisticsHandler = new \Webservice\Statistics\StatisticsHandler();
$app->get('/', function () use($statisticsHandler, $app, $slim) {
    $statistics = $statisticsHandler->getStatistics();
    if (json_decode($statistics, true) === null) {
        $this->app->response()->status(404);
    }
    $callback = $app->request()->params('callback');
    if (empty($callback)) {
        $slim->returnData($statistics);
    } else {
        // generate JSONP return value
        if (empty($statistics)) {
            $statistics = '[]';
        }
        $app->response()->header('Content-Type', 'application/x-javascript');
        $app->response()->write($callback . "({\"return\":" . $statistics . "});");
예제 #6
0
파일: index.php 프로젝트: CloCkWeRX/kort
<?php

/**
 * kort - the /answer webservices
 */
/** Load Slim library */
require_once '../../../lib/Slim-2.1.0/Slim/Slim.php';
/** Load ClassLoader */
require_once '../../../server/php/ClassLoader.php';
// Load Slim library
\Slim\Slim::registerAutoloader();
Kort\ClassLoader::registerAutoLoader();
// create Slim app
$app = new \Slim\Slim();
$slim = new \Helper\SlimHelper($app);
$answerHandler = new \Webservice\Answer\AnswerHandler();
$app->get('/(:type)', function ($type = null) use($answerHandler, $app, $slim) {
    $answerHandler->setLanguage($app->request()->params('lang'));
    if (empty($type)) {
        $answers = $answerHandler->getAllAnswers();
    } else {
        $answers = $answerHandler->getSpecificAnswers($type);
    }
    $slim->returnData($answers);
});
if (!isset($_SESSION)) {
    session_cache_limiter(false);
    session_start();
}
// start Slim app
$app->run();