Customização

Cada personalização deve estar em uma pasta base custom / Extension / application / Ext / Api / V8 /. Veja mais sobre o framework Slim em https://www.slimframework.com.

Estendendo a configuração Slim em custom / application / Ext / Api / V8 / slim.php é um arquivo php nativo que deve retornar uma série de configurações slim. A configuração adicional será incorporada à configuração slim padrão.
return [ /* slim configuration here …*/ ];

Estendendo Rotas em custom / application / Ext / Api / V8 / Config / routes.php é um arquivo php nativo dado a variável $ app como um aplicativo Slim. Rotas adicionais serão adicionadas ao aplicativo slim padrão e estarão disponíveis em URL [SuiteCRM-path] / Api / V8 / custom custom / application / Ext / Api / V8 / Config / routes.php
$app->post(‘/my-route/{myParam}’, ‘MyCustomController:myCustomAction’);

Estendendo serviços em custom / application / Ext / Api / V8 / services.php é um arquivo php nativo que deve retornar uma série de serviços slim. Os serviços adicionais serão integrados aos serviços básicos padrão. custom / application / Ext / Api / V8 / services.php

return ['myCustomService' => function() {
     return new MyCustomService();
 }];

Estender BeanAliases em custom / application / Ext / Api / V8 / beanAliases.php é um arquivo php nativo que deve retornar uma matriz de apelidos de bean customizados. custom / application / Ext / Api / V8 / beanAliases.php
return [MyCustom::class => ‘MyCustoms’];

Estendendo Controladores em custom / application / Ext / Api / V8 / controllers.php é um arquivo php nativo que deve retornar um array de controladores customizados. custom / application / Ext / Api / V8 / controllers.php
return [MyCustomController::class => function(Container $container) { return new MyCustomController(); }];

Estendendo fábricas em custom / application / Ext / Api / V8 / factories.php é um arquivo php nativo que deve retornar uma matriz de fábricas personalizadas. custom / application / Ext / Api / V8 / factories.php
return [MyCustomFactory::class => function(Container $container) { return new MyCustomFactory(); }];

Estendendo Globais em custom / application / Ext / Api / V8 / globals.php é um arquivo php nativo que deve retornar uma matriz de globais customizados. custom / application / Ext / Api / V8 / globals.php
return [MyCustomGlobal::class => function(Container $container) { return new MyCustomFactory(); }];

Estendendo Helpers em custom / application / Ext / Api / V8 / helpers.php é um arquivo php nativo que deve retornar um array de helpers customizados. custom / application / Ext / Api / V8 / helpers.php
return [MyCustomHelper::class => function(Container $container) { return new MyCustomHelper(); }];

Estendendo Globais em custom / application / Ext / Api / V8 / globals.php é um arquivo php nativo que deve retornar uma matriz de globais customizados. custom / application / Ext / Api / V8 / globals.php
return [MyCustomGlobal::class => function(Container $container) { return new MyCustomFactory(); }];

Estendendo fábricas em custom / application / Ext / Api / V8 / factories.php é um arquivo php nativo que deve retornar uma matriz de fábricas personalizadas. custom / application / Ext / Api / V8 / factories.php
return [MyCustomFactory::class => function(Container $container) { return new MyCustomFactory(); }];

Estendendo Globais em custom / application / Ext / Api / V8 / globals.php é um arquivo php nativo que deve retornar uma matriz de globais customizados. custom / application / Ext / Api / V8 / globals.php
return [MyCustomGlobal::class => function(Container $container) { return new MyCustomFactory(); }];

Estendendo Helpers em custom / application / Ext / Api / V8 / helpers.php é um arquivo php nativo que deve retornar um array de helpers customizados. custom / application / Ext / Api / V8 / helpers.php
return [MyCustomHelper::class => function(Container $container) { return new MyCustomHelper(); }];

Estendendo Middlewares em custom / application / Ext / Api / V8 / middlewares.php é um arquivo php nativo que deve retornar um array de middlewares customizados. custom / application / Ext / Api / V8 / middlewares.php
return [MyCustomMiddleware::class => function(Container $container) { return new MyCustomMiddleware(); }];

Extending Params em custom / application / Ext / Api / V8 / params.php é um arquivo php nativo que deve retornar um array de parâmetros customizados. custom / application / Ext / Api / V8 / params.php
return [MyCustomParam::class => function(Container $container) { return new MyCustomParam(); }];

Estendendo validadores em custom / application / Ext / Api / V8 / validators.php é um arquivo php nativo que deve retornar um array de validadores customizados. custom / application / Ext / Api / V8 / validators.php
return [MyCustomValidator::class => function(Container $container) { return new MyCustomValidator(); }];

 

Exemplo básico de personalização de API
Crie um arquivo para a nova rota personalizada: [SuiteCRM-path] /custom/application/Ext/Api/V8/Config/routes.php com o seguinte conteúdo:

get('/hello', function() {
     return 'Hello World!';
 });