Example #1
0
 static function entity(\PDO $db, $id)
 {
     return Resource::create(self::defaults())->allowedMethods(['GET', 'PUT', 'DELETE'])->isProcessable(self::validator())->canPutToMissing(false)->isNew(false)->isRespondWithEntity(function (Context $context) {
         return $context->getRequest()->isMethod('PUT');
     })->exists(function ($context) use($db, $id) {
         return Todo::exists($db, $id);
     })->put(function ($context) use($db, $id) {
         Todo::update($db, $id, $context->entity);
     })->delete(function ($context) use($db, $id) {
         Todo::delete($db, $id);
     })->handleOk(function (Context $context) use($db, $id) {
         return Todo::fetchOne($db, $id);
     });
 }