if (is_null($value)) { unset($values[$key]); } } list($valid, ) = $subTaskModel->validateCreation($values); if (!$valid) { return false; } return $subTaskModel->create($values); }); $server->register('updateSubtask', function ($id, $task_id, $title = null, $user_id = null, $time_estimated = null, $time_spent = null, $status = null) use($subTaskModel) { $values = array('id' => $id, 'task_id' => $task_id, 'title' => $title, 'user_id' => $user_id, 'time_estimated' => $time_estimated, 'time_spent' => $time_spent, 'status' => $status); foreach ($values as $key => $value) { if (is_null($value)) { unset($values[$key]); } } list($valid, ) = $subTaskModel->validateApiModification($values); return $valid && $subTaskModel->update($values); }); /** * Application procedures */ $server->register('getTimezone', function () use($configModel) { return $configModel->get('application_timezone'); }); /** * Parse incoming requests */ echo $server->execute();
Route::group(['protect_alias' => 'server'], function () { Route::resource('servers', 'ServersController'); }); Route::group(['protect_alias' => 'user'], function () { Route::get('users/{users}/password/change', ['as' => 'users.password.change', 'uses' => 'UsersController@changePassword']); Route::put('users/{users}/password', ['as' => 'users.password.update', 'uses' => 'UsersController@updatePassword']); Route::get('users/{users}/role/edit', ['as' => 'users.role.edit', 'uses' => 'UsersController@editRole']); Route::put('users/{users}/role', ['as' => 'users.role.update', 'uses' => 'UsersController@updateRole']); Route::get('users/{users}/api_token/edit', ['as' => 'users.api_token.edit', 'uses' => 'UsersController@editApiToken']); Route::put('users/{users}/api_token', ['as' => 'users.api_token.regenerate', 'uses' => 'UsersController@regenerateApiToken']); Route::resource('users', 'UsersController'); }); Route::group(['protect_alias' => 'setting'], function () { Route::controller('settings', 'SettingsController', ['getEmail' => 'settings.email']); }); }); Route::group(['middleware' => 'api'], function () { Route::group(['prefix' => 'api/v1'], function () { Route::post('jsonrpc', function (Illuminate\Http\Request $request) { $server = new JsonRPC\Server(); $middlewareHandler = $server->getMiddlewareHandler(); $middlewareHandler->withMiddleware(new App\Services\Api\Middleware\Authenticate($request)); $procedureHandler = $server->getProcedureHandler(); $procedureHandler->withObject(app()->make('App\\Services\\Api\\JsonRpc')); return $server->execute(); }); }); Route::group(['prefix' => 'webhook/github/v1', 'middleware' => 'github_webhook_secret'], function () { Route::resource('projects.deployments', 'Webhook\\Github\\V1\\DeploymentsController', ['only' => ['store']]); }); });