/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // initialize slim if (!isset($_SERVER['REQUEST_METHOD'])) { } else { $this->app = new \Slim\Slim(array('debug' => true)); $this->app->response->headers->set('Content-Type', 'application/json'); $this->app->map('/test', array($this, 'testLFile'))->via('POST'); $this->app->map('/fileDb/:path+/hash/:hash', array($this, 'fileDbGet'))->via('GET'); $this->app->map('/fileDb/file', array($this, 'fileDbPost'))->via('POST'); $this->app->map('/file/file', array($this, 'fileFsPost'))->via('POST'); // run Slim $this->app->run(); } }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(LFormProcessor::getPrefix() . ',course,link', dirname(__FILE__)); // runs the LFormProcessor if ($com->used()) { return; } $conf = $com->loadConfig(); // initialize slim $this->app = new \Slim\Slim(array('debug' => true)); $this->app->response->headers->set('Content-Type', 'application/json'); // initialize component $this->_conf = $conf; $this->_formDb = CConfig::getLinks($conf->getLinks(), "formDb"); $this->_pdf = CConfig::getLinks($conf->getLinks(), "pdf"); $this->_postProcess = CConfig::getLinks($conf->getLinks(), "postProcess"); $this->_deleteProcess = CConfig::getLinks($conf->getLinks(), "deleteProcess"); $this->_getProcess = CConfig::getLinks($conf->getLinks(), "getProcess"); // POST PostProcess $this->app->map('/' . $this->getPrefix() . '(/)', array($this, 'postProcess'))->via('POST'); // POST AddCourse $this->app->post('/course(/)', array($this, 'addCourse')); // POST DeleteCourse $this->app->delete('/course/:courseid(/)', array($this, 'deleteCourse')); // GET GetExistsCourse $this->app->get('/link/exists/course/:courseid(/)', array($this, 'getExistsCourse')); // run Slim $this->app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(DBAttachment2::getPrefix() . ',course,link', dirname(__FILE__)); // runs the DBAttachment2 if ($com->used()) { return; } $this->_conf = $com; // initialize slim $this->_app = new \Slim\Slim(array('debug' => true)); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddCourse $this->_app->post('(/:pre)/course(/)', array($this, 'addCourse')); // POST DeleteCourse $this->_app->delete('(/:pre)/course/:courseid(/)', array($this, 'deleteCourse')); // PUT EditAttachment $this->_app->put('(/:pre)/' . $this->getPrefix() . '(/attachment)/:aid(/)', array($this, 'editAttachment')); // DELETE DeleteAttachment $this->_app->delete('(/:pre)/' . $this->getPrefix() . '(/attachment)/:aid(/)', array($this, 'deleteAttachment')); // POST AddAttachment $this->_app->post('(/:pre)/' . $this->getPrefix(), array($this, 'addAttachment')); // GET GetExistsCourseAttachments $this->_app->get('(/:pre)/link/exists/course/:courseid(/)', array($this, 'getExistsCourseAttachments')); // GET GetAttachment $this->_app->get('(/:pre)/' . $this->getPrefix() . '(/attachment)/:aid(/)', array($this, 'getAttachment')); // GET GetExerciseAttachments $this->_app->get('(/:pre)/' . $this->getPrefix() . '/exercise/:eid(/)', array($this, 'getExerciseAttachments')); // GET GetSheetAttachments $this->_app->get('(/:pre)/' . $this->getPrefix() . '/exercisesheet/:esid(/)', array($this, 'getSheetAttachments')); // GET GetCourseAttachments $this->_app->get('(/:pre)/' . $this->getPrefix() . '/course/:courseid(/)', array($this, 'getCourseAttachments')); // run Slim $this->_app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(LProcessor::getPrefix() . ',submission,course,link', dirname(__FILE__)); // runs the LProcessor if ($com->used()) { return; } $conf = $com->loadConfig(); // initialize slim $this->app = new \Slim\Slim(); $this->app->response->headers->set('Content-Type', 'application/json'); // initialize component $this->_conf = $conf; $this->_submission = CConfig::getLinks($conf->getLinks(), "submission"); $this->_marking = CConfig::getLinks($conf->getLinks(), "marking"); $this->_processorDb = CConfig::getLinks($conf->getLinks(), "processorDb"); $this->_attachment = CConfig::getLinks($conf->getLinks(), "attachment"); $this->_workFiles = CConfig::getLinks($conf->getLinks(), "workFiles"); $this->_file = CConfig::getLinks($conf->getLinks(), "file"); $this->_createCourse = CConfig::getLinks($conf->getLinks(), "postCourse"); $this->_getExerciseExerciseFileType = CConfig::getLinks($conf->getLinks(), "getExerciseExerciseFileType"); // POST PostSubmission $this->app->map('/submission(/)', array($this, 'postSubmission'))->via('POST'); // POST AddProcess $this->app->map('/' . $this->getPrefix() . '(/)', array($this, 'addProcess'))->via('POST'); // POST AddCourse $this->app->post('/course(/)', array($this, 'addCourse')); // POST DeleteCourse $this->app->delete('/course/:courseid(/)', array($this, 'deleteCourse')); // GET GetExistsCourse $this->app->get('/link/exists/course/:courseid(/)', array($this, 'getExistsCourse')); // run Slim $this->app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(LExtension::getPrefix() . ',course', dirname(__FILE__)); // runs the LExtension if ($com->used()) { return; } $conf = $com->loadConfig(); // initialize slim $this->app = new \Slim\Slim(array('debug' => true)); $this->app->response->headers->set('Content-Type', 'application/json'); // initialize component $this->_conf = $conf; $this->_extension = CConfig::getLinks($conf->getLinks(), "extension"); //POST AddCourseExtension $this->app->post('/link/course/:courseid/extension/:name', array($this, 'addCourseExtension')); //DELETE DeleteCourseExtension $this->app->delete('/link/course/:courseid/extension/:name', array($this, 'deleteCourseExtension')); //DELETE DeleteCourse $this->app->delete('/course/:courseid/', array($this, 'deleteCourse')); //GET GetExtensionInstalled $this->app->get('/link/exists/course/:courseid/extension/:name', array($this, 'getExtensionInstalled')); //GET GetInstalledExtensions $this->app->get('/link/course/:courseid/extension', array($this, 'getInstalledExtensions')); //GET GetExtensions $this->app->get('/link/extension(/)', array($this, 'getExtensions')); //GET GetExtensionExists $this->app->get('/link/exists/extension/:name', array($this, 'getExtensionExists')); //GET GetExtension $this->app->get('/link/extension/:name', array($this, 'getExtension')); //run Slim $this->app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. * * @param Component $conf component data */ public function __construct() { // runs the CConfig $com = new CConfig(LCourse::getPrefix(), dirname(__FILE__)); // runs the LCourse if ($com->used()) { return; } $conf = $com->loadConfig(); // initialize slim $this->app = new \Slim\Slim(array('debug' => true)); $this->app->response->headers->set('Content-Type', 'application/json'); // initialize component $this->_conf = $conf; $this->query = CConfig::getLink($conf->getLinks(), "controller"); $this->_deleteCourse = CConfig::getLinks($conf->getLinks(), "deleteCourse"); $this->_postCourse = CConfig::getLinks($conf->getLinks(), "postCourse"); // initialize lURL $this->lURL = $this->query->getAddress(); //POST AddCourse $this->app->post('/' . $this->getPrefix() . '(/)', array($this, 'AddCourse')); //PUT EditCourse $this->app->put('/' . $this->getPrefix() . '/course/:courseid(/)', array($this, 'editCourse')); //DELETE DeleteCourse $this->app->delete('/' . $this->getPrefix() . '/course/:courseid(/)', array($this, 'deleteCourse')); //POST AddCourseMember $this->app->post('/' . $this->getPrefix() . '/course/:courseid/user/:userid/status/:status(/)', array($this, 'addCourseMember')); //GET GetCourseMember $this->app->get('/' . $this->getPrefix() . '/course/:courseid/user(/)', array($this, 'getCourseMember')); //GET GetCourses $this->app->get('/' . $this->getPrefix() . '/user/:userid(/)', array($this, 'getCourses')); //run Slim $this->app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(DBSetting::getPrefix() . ',course,link', dirname(__FILE__)); // runs the DBSetting if ($com->used()) { return; } $this->_conf = $com; // initialize slim $this->_app = new \Slim\Slim(array('debug' => true)); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddCourse $this->_app->post('(/:pre)/course', array($this, 'addCourse')); // POST DeleteCourse $this->_app->delete('(/:pre)/course/:courseid', array($this, 'deleteCourse')); // PUT EditSetting $this->_app->put('(/:pre)/' . $this->getPrefix() . '/setting/:setid', array($this, 'editSetting')); // DELETE DeleteSetting $this->_app->delete('(/:pre)/' . $this->getPrefix() . '/setting/:setid', array($this, 'deleteSetting')); // POST AddSetting $this->_app->post('(/:pre)/' . $this->getPrefix() . '/course/:courseid', array($this, 'addSetting')); // GET GetExistsCourseSettings $this->_app->get('(/:pre)/link/exists/course/:courseid', array($this, 'getExistsCourseSettings')); // GET GetCourseSettings $this->_app->get('(/:pre)/' . $this->getPrefix() . '/course/:courseid', array($this, 'getCourseSettings')); // GET GetSetting $this->_app->get('(/:pre)/' . $this->getPrefix() . '/setting/:setid', array($this, 'getSetting')); // GET GetSettingByName $this->_app->get('(/:pre)/' . $this->getPrefix() . '/course/:courseid/name/:setname', array($this, 'getSettingByName')); // run Slim $this->_app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig('transaction,course,link', dirname(__FILE__)); // runs the DBTransaction if ($com->used()) { return; } $this->_conf = $com; // initialize slim $this->_app = new \Slim\Slim(array('debug' => true)); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddCourse $this->_app->post('(/:name)/course', array($this, 'addCourse')); // POST DeleteCourse $this->_app->delete('(/:name)/course/:courseid', array($this, 'deleteCourse')); // GET GetExistsCourseTransactions $this->_app->get('(/:name)/link/exists/course/:courseid', array($this, 'getExistsCourseTransactions')); // DELETE DeleteTransaction $this->_app->delete('(/:name)/transaction/authentication/:auid/transaction/:tid', array($this, 'deleteTransaction')); // DELETE DeleteTransactionShort $this->_app->delete('(/:name)/transaction/transaction/:tid', array($this, 'deleteTransactionShort')); // POST AddTransaction $this->_app->post('(/:name)/transaction/course/:courseid', array($this, 'addTransaction')); // POST AddSheetTransaction $this->_app->post('(/:name)/transaction/exercisesheet/:esid', array($this, 'addSheetTransaction')); // POST AddExerciseTransaction $this->_app->post('(/:name)/transaction/exercise/:eid', array($this, 'addExerciseTransaction')); // GET GetTransaction $this->_app->get('(/:name)/transaction/authentication/:auid/transaction/:tid', array($this, 'getTransaction')); // GET GetTransactionShort $this->_app->get('(/:name)/transaction/transaction/:tid', array($this, 'getTransactionShort')); // GET GetAmountOfExpiredTransactions $this->_app->get('(/:name)/clean/clean/course/:courseid', array($this, 'getAmountOfExpiredTransactions')); // DELETE CleanTransactions $this->_app->delete('(/:name)/clean/clean/course/:courseid', array($this, 'cleanTransactions')); // run Slim $this->_app->run(); }
/** * the component constructor */ public function __construct() { // runs the CConfig $com = new CConfig(CControl::getPrefix() . ',link,definition', dirname(__FILE__)); // runs the DBSubmission if ($com->used()) { return; } // initialize slim $this->_app = new \Slim\Slim(); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddPlatform $this->_app->post('/platform', array($this, 'addPlatform')); // DELETE DeletePlatform $this->_app->delete('/platform', array($this, 'deletePlatform')); // GET GetExistsPlatform $this->_app->get('/link/exists/platform', array($this, 'getExistsPlatform')); // GET GetTableReferences $this->_app->get('/tableReferences', array($this, 'getTableReferences')); // PUT EditLink $this->_app->put('/link/:linkid(/)', array($this, 'editLink')); // DELETE DeleteLink $this->_app->delete('/link/:linkid(/)', array($this, 'deleteLink')); // POST SetLink $this->_app->post('/link(/)', array($this, 'setLink')); // GET GetLink $this->_app->get('/link/:linkid(/)', array($this, 'getLink')); // PUT EditComponent $this->_app->put('/component/:componentid(/)', array($this, 'editComponent')); // DELETE DeleteComponent $this->_app->delete('/component/:componentid(/)', array($this, 'deleteComponent')); // POST SetComponent $this->_app->post('/component(/)', array($this, 'setComponent')); // GET GetComponent $this->_app->get('/component/:componentid(/)', array($this, 'getComponent')); // GET GetComponentDefinitions $this->_app->get('/definition(/)', array($this, 'getComponentDefinitions')); // GET SendComponentDefinitions $this->_app->get('(/definition)/send(/)', array($this, 'sendComponentDefinitions')); // GET GetComponentDefinition $this->_app->get('/definition/:componentid(/)', array($this, 'getComponentDefinition')); // run Slim $this->_app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. * * @param Component $conf component data */ public function __construct() { // runs the CConfig $com = new CConfig(DBAttachment::getPrefix(), dirname(__FILE__)); // runs the DBAttachment if ($com->used()) { return; } $conf = $com->loadConfig(); // initialize component $this->_conf = $conf; $this->query = array(CConfig::getLink($conf->getLinks(), 'out')); $this->query2 = array(CConfig::getLink($conf->getLinks(), 'out2')); // initialize slim $this->_app = new \Slim\Slim(); $this->_app->response->setStatus(409); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddPlatform $this->_app->post('/platform', array($this, 'addPlatform')); // DELETE DeletePlatform $this->_app->delete('/platform', array($this, 'deletePlatform')); // GET GetExistsPlatform $this->_app->get('/link/exists/platform', array($this, 'getExistsPlatform')); // PUT EditAttachment $this->_app->put('/' . $this->getPrefix() . '(/attachment)/:aid(/)', array($this, 'editAttachment')); // DELETE DeleteAttachment $this->_app->delete('/' . $this->getPrefix() . '(/attachment)/:aid(/)', array($this, 'deleteAttachment')); // DELETE DeleteExerciseAttachments $this->_app->delete('/' . $this->getPrefix() . '/exercise/:eid(/)', array($this, 'deleteExerciseAttachment')); // DELETE DeleteExerciseFileAttachment $this->_app->delete('/' . $this->getPrefix() . '/exercise/:eid/file/:fileid(/)', array($this, 'deleteExerciseFileAttachment')); // POST AddAttachment $this->_app->post('/' . $this->getPrefix() . '(/)', array($this, 'addAttachment')); // GET GetAttachment $this->_app->get('/' . $this->getPrefix() . '(/attachment)/:aid(/)', array($this, 'getAttachment')); // GET GetAllAttachments $this->_app->get('/' . $this->getPrefix() . '(/attachment)(/)', array($this, 'getAllAttachments')); // GET GetExerciseAttachments $this->_app->get('/' . $this->getPrefix() . '/exercise/:eid(/)', array($this, 'getExerciseAttachments')); // GET GetSheetAttachments $this->_app->get('/' . $this->getPrefix() . '/exercisesheet/:esid(/)', array($this, 'getSheetAttachments')); // run Slim $this->_app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(DBChoice::getPrefix() . ',course,link', dirname(__FILE__)); // runs the DBChoice if ($com->used()) { return; } // initialize component $this->_conf = $com; // initialize slim $this->_app = new \Slim\Slim(array('debug' => true)); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddCourse $this->_app->post('(/:preChoice(/:preForm(/:preExercise)))/course', array($this, 'addCourse')); // DELETE DeleteCourse $this->_app->delete('(/:preChoice(/:preForm(/:preExercise)))/course(/course)/:courseid', array($this, 'deleteCourse')); // PUT EditChoice $this->_app->put('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '(/choice)/:choiceid(/)', array($this, 'editChoice')); // DELETE DeleteChoice $this->_app->delete('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '(/choice)/:choiceid(/)', array($this, 'deleteChoice')); // POST AddChoice $this->_app->post('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '(/)', array($this, 'addChoice')); // GET GetChoice $this->_app->get('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '(/choice)/:choiceid(/)', array($this, 'getChoice')); // GET GetCourseChoices $this->_app->get('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '/course/:courseid(/)', array($this, 'getCourseChoices')); // GET GetExistsCourseChoices $this->_app->get('(/:preChoice(/:preForm(/:preExercise)))/link/exists/course/:courseid(/)', array($this, 'getExistsCourseChoices')); // GET GetSheetChoices $this->_app->get('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '/exercisesheet/:esid(/)', array($this, 'getSheetChoices')); // GET GetExerciseChoices $this->_app->get('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '/exercise/:eid(/)', array($this, 'getExerciseChoices')); // GET GetFormChoices $this->_app->get('(/:preChoice(/:preForm(/:preExercise)))/' . $this->getPrefix() . '/form/:formid(/)', array($this, 'getFormChoices')); // run Slim $this->_app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(LOOP::getPrefix() . ',course,link', dirname(__FILE__)); // runs the LOOP if ($com->used()) { return; } $conf = $com->loadConfig(); // lädt die Daten der CConfig.json // initialize slim $this->app = new \Slim\Slim(array('debug' => true)); $this->app->response->headers->set('Content-Type', 'application/json'); // initialize component // hier werden die Verknüpfungen aus der CConfig.json ausgelesen (entsprechend ihrem Namen) $this->_conf = $conf; $this->_pdf = CConfig::getLinks($conf->getLinks(), "pdf"); // wird nicht genutzt, theoretisch koennten hier PDFs erzeugt werden // für POST /course zum eintragen als Verarbeitung (wird dann in CreateSheet aufgelistet) $this->_postProcess = CConfig::getLinks($conf->getLinks(), "postProcess"); $this->_deleteProcess = CConfig::getLinks($conf->getLinks(), "deleteProcess"); // für DELETE /course/xyz $this->_getProcess = CConfig::getLinks($conf->getLinks(), "getProcess"); // GET /link/exists/course/:courseid // POST PostProcess $this->app->map('/' . $this->getPrefix() . '(/)', array($this, 'postProcess'))->via('POST'); // POST AddCourse // fügt die Komponente der Veranstaltung hinzu (Daten kommen im Anfragekörper) $this->app->post('/course(/)', array($this, 'addCourse')); // DELETE DeleteCourse // entfernt die Komponente aus der Veranstaltung $this->app->delete('/course/:courseid(/)', array($this, 'deleteCourse')); // GET GetExistsCourse // zum Prüfen, ob diese Kompoenten korrekt installiert wurde (existiert Tabelleneintrag, konf-Dateien etc.) $this->app->get('/link/exists/course/:courseid(/)', array($this, 'getExistsCourse')); // run Slim $this->app->run(); }
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(DBForm::getPrefix() . ',course,link', dirname(__FILE__)); // runs the DBForm if ($com->used()) { return; } $conf = $com->loadConfig(); // initialize component $this->_conf = $conf; $this->query = array(CConfig::getLink($conf->getLinks(), 'out')); // initialize slim $this->_app = new \Slim\Slim(); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST AddCourse $this->_app->post('/course(/)', array($this, 'addCourse')); // POST DeleteCourse $this->_app->delete('/course/:courseid(/)', array($this, 'deleteCourse')); // PUT EditForm $this->_app->put('/' . $this->getPrefix() . '(/form)/:formid(/)', array($this, 'editForm')); // DELETE DeleteForm $this->_app->delete('/' . $this->getPrefix() . '(/form)/:formid(/)', array($this, 'deleteForm')); // POST AddForm $this->_app->post('/' . $this->getPrefix() . '(/)', array($this, 'addForm')); // GET GetForm $this->_app->get('/' . $this->getPrefix() . '(/form)/:formid(/)', array($this, 'getForm')); // GET GetCourseForms $this->_app->get('/' . $this->getPrefix() . '/course/:courseid(/)', array($this, 'getCourseForms')); // GET GetExistsCourseForms $this->_app->get('/link/exists/course/:courseid(/)', array($this, 'getExistsCourseForms')); // GET GetSheetForms $this->_app->get('/' . $this->getPrefix() . '/exercisesheet/:esid(/)', array($this, 'getSheetForms')); // GET GetExerciseForms $this->_app->get('/' . $this->getPrefix() . '/exercise/:eid(/)', array($this, 'getExerciseForms')); // run Slim $this->_app->run(); }
/** * Run slim */ public function run() { $this->slim->run(); }
public function testKeepFlashForNextRequest() { $_SESSION['slim.flash'] = array('info' => 'Foo'); $s = new Slim(); $s->get('/bar', function () use($s) { $s->flashKeep(); }); $s->run(); $this->assertEquals('Foo', $_SESSION['slim.flash']['info']); }
/** * Test parses request body based on media-type only, disregarding * any extra content-type header parameters */ public function testParsesRequestBodyWithMediaType() { Slim_Environment::mock(array('REQUEST_METHOD' => 'POST', 'CONTENT_TYPE' => 'application/json; charset=ISO-8859-4', 'CONENT_LENGTH' => 13, 'slim.input' => '{"foo":"bar"}')); $s = new Slim(); $s->add(new Slim_Middleware_ContentTypes()); $s->run(); $body = $s->request()->getBody(); $this->assertTrue(is_array($body)); $this->assertEquals('bar', $body['foo']); }
/** * Test Slim returns 200 OK for successful route * * Pre-conditions: * You have initialized a Slim app with an accessible route that * does not throw any Exceptions and does not set a custom status. * * Post-conditions: * The response status is 200 and response body is as expected. */ public function testSlimOkResponse() { Slim::init(); Slim::get('/', function () { echo "Ok"; }); Slim::run(); $this->assertEquals(Slim::response()->status(), 200); $this->assertEquals(Slim::response()->body(), 'Ok'); }
$env_mock[$key] = $value; } } } $env_mock['PATH_INFO'] = $_REQUEST['route']; $env_mock['slim.url_scheme'] = empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] === 'off' ? 'http' : 'https'; $rawInput = @file_get_contents('php://input'); if (!$rawInput) { $rawInput = ''; } $env_mock['slim.input'] = $rawInput; $env_mock['slim.errors'] = fopen('php://stderr', 'w'); Slim_Environment::mock($env_mock); $we_betatext = new Slim(); // die Funktionen für die einzelnen Abfragetypen liegen in eigenen Dateien $method = strtolower($we_betatext->request()->getMethod()); require BBT_restpath . '/actions/' . $method . '.php'; // Standard-Funktionen function send_response($out) { global $we_betatext; if ($out !== false) { $response = $we_betatext->response(); $response['Content-Type'] = 'application/json'; $response['Cache-Control'] = 'no-cache'; echo json_encode($out); } else { } } $we_betatext->run();
/** * Test that app returns 404 response when there are no matching routes */ public function testNotFoundIfNoMatchingRoutes() { $_SERVER['REQUEST_URI'] = "/foo"; $_SERVER['REQUEST_METHOD'] = 'GET'; $app = new Slim(); $app->map('/foo/bar', function () { echo "Foo bar!"; })->via('GET'); $app->run(); $this->assertEquals(404, $app->response()->status()); }
print_r(Slim::request()); }); //Sample PUT route for PHP <5.3 /* Slim::put('/put', 'put_example'); function put_example() { echo '<br/><br/>Here are the details about your PUT request:<br/><br/>'; print_r(Slim::request()); } */ //Sample DELETE route for PHP >=5.3 Slim::delete('/delete', function () { echo '<p>Here are the details about your DELETE request:</p>'; print_r(Slim::request()); }); //Sample DELETE route for PHP <5.3 /* Slim::delete('/delete', 'delete_example'); function delete_example() { echo '<br/><br/>Here are the details about your DELETE request:<br/><br/>'; print_r(Slim::request()); } */ /*** NAMED ROUTES *****/ Slim::get('/hello/:name', function ($name) { echo "<p>Hello, {$name}!</p>"; echo "<p>This route using name \"Bob\" instead of \"{$name}\" would be: " . Slim::urlFor('hello', array('name' => 'Bob')) . '</p>'; })->name('hello')->conditions(array('name' => '\\w+')); /*** RUN SLIM ***/ Slim::run();
/** * Test that app sends response with custom HTTP version */ public function testAppSendsResponseWithCustomHttpVersion() { $app = new Slim(array('http.version' => '1.0')); $app->get('/', function () { }); $app->run(); $this->assertEquals('1.0', $app->response()->httpVersion()); }
$full_url .= $resource_uri; // build the final post object $post_result = array('title' => $post_meta['title'], 'date' => $post_meta['date'], 'tags' => $post_meta['tags'], 'desc' => $post_meta['desc'], 'html' => $post_html, 'disqusid' => strtotime($post_meta['date']), 'disqusurl' => $full_url); // render the post view $blog->render('post.html', array('post' => $post_result)); }); // tag view $blog->get('/blog/tagged/:tag', function ($tag) use($blog, $getMarkdownPosts) { // get all the posts $posts = $getMarkdownPosts($blog->config('posts.path')); // array to hold our tagged posts $tagged_posts = array(); // filter the posts foreach ($posts as $post) { // if the tag is in the post // push it to the new array if (in_array($tag, $post['tags'])) { array_push($tagged_posts, $post); } } // render the tagged view $blog->render('tagged.html', array('tag' => $tag, 'posts' => $tagged_posts)); }); // custom 404 view $blog->notFound(function () use($blog) { $blog->render('404.html'); }); // -------------------------------------------------- // ------------------ RUN THE BLOG :) --------------- $blog->run();
/** * Run slim */ public function run() { $this->init(); $this->loadArticles(); $this->slim->run(); }
<?php require 'Slim/Slim.php'; $app = new Slim(); $app->get('/new-events', 'listNewEvents'); $app->put('/ack-event/:id', 'acknowledgeEvent'); $app->run(); function listNewEvents() { $sql = "SELECT event_id, user_id, wf_id, event_msg FROM events WHERE event_status=0 ORDER BY event_id"; try { $dbT = getConnt(); $stmt = $dbT->query($sql); $wines = $stmt->fetchAll(PDO::FETCH_OBJ); $dbT = null; echo json_encode($wines); } catch (PDOException $e) { echo '{"error":{"text":' . $e->getMessage() . '}}'; } } function acknowledgeEvent($id) { //$eid = $request->params('eid'); $sql = "UPDATE `events` SET event_status=2 WHERE event_id=:id"; try { //$dbT = getConnection(); $dbT = getConnt(); $stmt = $dbT->prepare($sql); //$stmt->bindParam("id", $eid) $stmt->bindParam("id", $id); $stmt->execute();
<?php require "includes/index.php"; require_once "Slim/Slim.php"; $data = new Slim(); $data->get('/books/search', function () use($data) { $query = $data->request()->params('name'); findByName($query); }); $data->get('/books', 'getBooks'); $data->get('/books/:id', 'getBook'); //$data->get('/books/search:query', 'findByName'); $data->post('/books', 'addBook'); $data->put('/books/:id', 'updateBook'); $data->delete('/books/:id', 'deleteBook'); $data->run(); function getBooks() { $sql = "select * FROM books ORDER BY id DESC"; try { $db = getConnection(); $stmt = $db->query($sql); $books = $stmt->fetchAll(PDO::FETCH_OBJ); $db = null; echo json_encode($books); } catch (PDOException $e) { echo '{"error":{"text":' . $e->getMessage() . '}}'; } } function getBook($id) {
/** * REST actions * * This function contains the REST actions with the assignments to * the functions. */ public function __construct() { // runs the CConfig $com = new CConfig(LFile::$_baseDir, dirname(__FILE__)); // runs the LFile if ($com->used()) { return; } $conf = $com->loadConfig(); $this->_conf = $conf; $this->_fs = CConfig::getLinks($this->_conf->getLinks(), 'file'); $this->_db = CConfig::getLinks($this->_conf->getLinks(), 'fileDb'); $this->_app = new \Slim\Slim(array('debug' => true)); $this->_app->response->setStatus(404); $this->_app->response->headers->set('Content-Type', 'application/json'); // POST File $this->_app->post('/' . LFile::$_baseDir . '(/)', array($this, 'postFile')); /*// POST PathFile $this->_app->post( '/' . LFile::$_baseDir . '/:path(/)', array( $this, 'postPathFile' ) );*/ // DELETE File $this->_app->delete('/' . LFile::$_baseDir . '/:fileid', array($this, 'deleteFile')); // run Slim $this->_app->run(); }
public function run() { $that = $this; $app = new \Slim(array('view' => 'rg\\broker\\web\\View', 'templates.path' => './src/rg/broker/web/templates')); $this->app = $app; $app->get('/', function () use($app, $that) { /** @var \Slim $app */ /** @var Application $that */ $mdParser = new \dflydev\markdown\MarkdownParser(); $content = $mdParser->transformMarkdown(file_get_contents(ROOT . '/README.md')); $app->render('home.php', array('repositories' => $that->getRepositories(), 'content' => $content)); }); $app->get('/repositories/:repositoryName/', function ($repositoryName) use($app, $that) { /** @var \Slim $app */ /** @var Application $that */ $app->render('repository.php', array('repositories' => $that->getRepositories(), 'currentRepository' => $that->getRepository($repositoryName))); }); $app->get('/repositories/:repositoryName/package/:packageName', function ($repositoryName, $packageName) use($app, $that) { /** @var \Slim $app */ /** @var Application $that */ $packageName = urldecode($packageName); $app->render('package.php', array('repositories' => $that->getRepositories(), 'currentRepository' => $that->getRepository($repositoryName), 'package' => $that->getPackage($repositoryName, $packageName))); }); $app->run(); }