better endpoints
This commit is contained in:
parent
72c7d14df8
commit
a9af7c00be
@ -1,6 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
namespace Drupal\bundle_article\Controller;
|
namespace Drupal\endpoint_get_AAAAA\Controller;
|
||||||
|
|
||||||
use Drupal\Core\Controller\ControllerBase;
|
use Drupal\Core\Controller\ControllerBase;
|
||||||
use Drupal\node\Entity\Node;
|
use Drupal\node\Entity\Node;
|
||||||
@ -22,7 +22,6 @@ class NodesController extends ControllerBase {
|
|||||||
* Url : optional URL argument - single value
|
* Url : optional URL argument - single value
|
||||||
* Example : /api/en/articles/1234
|
* Example : /api/en/articles/1234
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// private const FIELD_CATEGORY = 'field_AAAAA_category'; // Editable
|
// private const FIELD_CATEGORY = 'field_AAAAA_category'; // Editable
|
||||||
|
|
||||||
/* Used for : Taxonomy reference field
|
/* Used for : Taxonomy reference field
|
||||||
@ -30,7 +29,6 @@ class NodesController extends ControllerBase {
|
|||||||
* Url : optional URL query params - accept multiple values
|
* Url : optional URL query params - accept multiple values
|
||||||
* Example : /api/en/articles/1234?subcategory=55,66,77
|
* Example : /api/en/articles/1234?subcategory=55,66,77
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// private const FIELD_SUBCATEGORY = 'field_AAAAA_subcategory'; // Editable
|
// private const FIELD_SUBCATEGORY = 'field_AAAAA_subcategory'; // Editable
|
||||||
|
|
||||||
private const HTTP_BAD_REQUEST = 400;
|
private const HTTP_BAD_REQUEST = 400;
|
||||||
@ -64,30 +62,60 @@ class NodesController extends ControllerBase {
|
|||||||
$node = $node->getTranslation($lang);
|
$node = $node->getTranslation($lang);
|
||||||
$published = $node->get('status')->value;
|
$published = $node->get('status')->value;
|
||||||
|
|
||||||
/* get user name */
|
/* USER - get user name */
|
||||||
$uid = $node->getOwnerId();
|
$uid = $node->getOwnerId();
|
||||||
$user = \Drupal\user\Entity\User::load($uid);
|
$user = \Drupal\user\Entity\User::load($uid);
|
||||||
$name = $user->getDisplayName();
|
$name = $user->getDisplayName();
|
||||||
|
|
||||||
/* absolute urls for body inline images */
|
/* BODY Field - absolute urls for body inline images */
|
||||||
$base_url = Url::fromRoute('<current>')->setAbsolute()->toString();
|
// $base_url = Url::fromRoute('<current>')->setAbsolute()->toString();
|
||||||
$url_components = parse_url($base_url);
|
// $url_components = parse_url($base_url);
|
||||||
$domain = $url_components['scheme'].'://'.$url_components['host'].':'.$url_components['port'];
|
// $domain = $url_components['scheme'].'://'.$url_components['host'].':'.$url_components['port'];
|
||||||
$body = str_replace(
|
// $body = str_replace(
|
||||||
'/sites/default/',
|
// '/sites/default/',
|
||||||
$domain.'/sites/default/',
|
// $domain.'/sites/default/',
|
||||||
$node->get('body')->value
|
// $node->get('body')->value
|
||||||
);
|
// );
|
||||||
|
|
||||||
|
/* LINK Field */
|
||||||
|
// $field_link = [];
|
||||||
|
// if ($node->hasField('field_link') && !$node->get('field_link')->isEmpty()) {
|
||||||
|
// $link_field = $node->get('field_link')->first();
|
||||||
|
// $url = $link_field->getUrl();
|
||||||
|
// $title = $link_field->getTitle();
|
||||||
|
// if ($url) {
|
||||||
|
// $field_link['url'] = $url->toString();
|
||||||
|
// }
|
||||||
|
// if ($title) {
|
||||||
|
// $field_link['title'] = $link_field->getTitle();
|
||||||
|
// } else {
|
||||||
|
// $field_link['title'] = $url->toString();;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
/* GEOLOCATION Field */
|
||||||
|
// $field_geolocation = [];
|
||||||
|
// if ($node->hasField('field_geolocation') && !$node->get('field_geolocation')->isEmpty()) {
|
||||||
|
// $geolocation_field = $node->get('field_geolocation')->first();
|
||||||
|
// $latitude = $geolocation_field->lat;
|
||||||
|
// $longitude = $geolocation_field->lng;
|
||||||
|
// if ($latitude && $longitude) {
|
||||||
|
// $field_geolocation['lat'] = $latitude;
|
||||||
|
// $field_geolocation['lng'] = $longitude;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
if ($published == 1) {
|
if ($published == 1) {
|
||||||
$nodes_response[] = [
|
$nodes_response[] = [
|
||||||
'id' => $node->id(),
|
'id' => $node->id(),
|
||||||
'title' => $node->getTitle(),
|
'title' => $node->getTitle(),
|
||||||
'body' => $body,
|
|
||||||
'lang' => $node->get('langcode')->value,
|
'lang' => $node->get('langcode')->value,
|
||||||
'created' => $node->get('created')->value,
|
'created' => $node->get('created')->value,
|
||||||
'alias' => $node->get('path')->alias,
|
'alias' => $node->get('path')->alias,
|
||||||
'author' => $name,
|
'author' => $name,
|
||||||
|
// 'field_geolocation' => $field_geolocation,
|
||||||
|
// 'field_link' => $field_link,
|
||||||
|
// 'body' => $body,
|
||||||
// 'file' => $this->getFiles($node, 'field_file'),
|
// 'file' => $this->getFiles($node, 'field_file'),
|
||||||
// 'image' => $this->getImages($node, 'field_image'),
|
// 'image' => $this->getImages($node, 'field_image'),
|
||||||
// 'category_id' => (
|
// 'category_id' => (
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user