class ContentExportController in Content Export YAML 8
Class ContentExportController.
@package Drupal\content_export_yaml\Controller
Hierarchy
- class \Drupal\Core\Controller\ControllerBase implements ContainerInjectionInterface uses LoggerChannelTrait, MessengerTrait, LinkGeneratorTrait, RedirectDestinationTrait, UrlGeneratorTrait, StringTranslationTrait
- class \Drupal\content_export_yaml\Controller\ContentExportController implements ContainerInjectionInterface
Expanded class hierarchy of ContentExportController
File
- src/
Controller/ ContentExportController.php, line 14
Namespace
Drupal\content_export_yaml\ControllerView source
class ContentExportController extends ControllerBase implements ContainerInjectionInterface {
/**
* Handles html requests.
*
* @return string Return Hello string.
*/
public function view() {
$query = \Drupal::request()->query
->all();
if ($query['file_single']) {
$result = $query['file_single'];
$id = basename($query['file_single'], '.yml');
$bundle = $this
->_getBundleName($result);
$entity_type = $this
->_getEntityType($result);
$object_file = $this
->_getObjectinFile($result);
///in database
$entity_list_name = array_keys(\Drupal::entityTypeManager()
->getDefinitions());
if (in_array($entity_type, $entity_list_name)) {
$item['is_entity'] = true;
$bundle_list_name = \Drupal::service('entity_type.bundle.info')
->getBundleInfo($entity_type);
if (in_array($bundle, array_keys($bundle_list_name))) {
$item['is_bundle'] = true;
$object = \Drupal::entityTypeManager()
->getStorage($entity_type)
->load($id);
if ($object) {
$item['database']['id'] = $object ? $object
->id() : "";
$item['database']['label'] = $object ? $object
->label() : "";
$item['database']['created'] = $object && $object->created ? date("Y-m-d H:i:s", $object->created->value) : "";
$item['database']['changed'] = $object && $object->changed ? date("Y-m-d H:i:s", $object->changed->value) : "";
$item['database']['uid'] = $object && $object->uid ? $object->uid->target_id : "";
}
if ($object_file) {
$item['file']['id'] = $object_file ? $object_file
->id() : "";
$item['file']['label'] = $object_file ? $object_file
->label() : "";
$item['file']['created'] = $object_file && $object_file->created ? date("Y-m-d H:i:s", $object_file->created->value) : "";
$item['file']['changed'] = $object_file && $object_file->changed ? date("Y-m-d H:i:s", $object_file->changed->value) : "";
$item['file']['uid'] = $object_file && $object_file->uid ? $object_file->uid->target_id : "";
}
}
}
$item['file_path'] = $query['file_single'];
$item['entity_type'] = $entity_type;
$item['bundle'] = $bundle;
$output = [
'#theme' => 'view_template_item',
'#item' => $item,
'#cache' => [
'max-age' => 0,
],
];
return $output;
}
else {
return [
'#markup' => $this
->t('Item not found.'),
];
}
}
protected function _getBundleName($result) {
$root_folder = dirname($result);
return basename($root_folder);
}
protected function _getEntityType($result) {
$root_folder_1 = dirname($result);
$root_folder = dirname($root_folder_1);
return basename($root_folder);
}
protected function _getObjectinFile($file) {
$file = DRUPAL_ROOT . $file;
if (file_exists($file)) {
$yaml_object = file_get_contents($file, FILE_USE_INCLUDE_PATH);
$parsed = new Parser();
$object = $parsed
->parse($yaml_object, SymfonyYaml::PARSE_OBJECT);
if (is_object($object)) {
return $object;
}
}
return FALSE;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ContentExportController:: |
public | function | Handles html requests. | |
ContentExportController:: |
protected | function | ||
ContentExportController:: |
protected | function | ||
ContentExportController:: |
protected | function | ||
ControllerBase:: |
protected | property | The configuration factory. | |
ControllerBase:: |
protected | property | The current user service. | 1 |
ControllerBase:: |
protected | property | The entity form builder. | |
ControllerBase:: |
protected | property | The entity manager. | |
ControllerBase:: |
protected | property | The entity type manager. | |
ControllerBase:: |
protected | property | The form builder. | 2 |
ControllerBase:: |
protected | property | The key-value storage. | 1 |
ControllerBase:: |
protected | property | The language manager. | 1 |
ControllerBase:: |
protected | property | The module handler. | 2 |
ControllerBase:: |
protected | property | The state service. | |
ControllerBase:: |
protected | function | Returns the requested cache bin. | |
ControllerBase:: |
protected | function | Retrieves a configuration object. | |
ControllerBase:: |
private | function | Returns the service container. | |
ControllerBase:: |
public static | function |
Instantiates a new instance of this class. Overrides ContainerInjectionInterface:: |
40 |
ControllerBase:: |
protected | function | Returns the current user. | 1 |
ControllerBase:: |
protected | function | Retrieves the entity form builder. | |
ControllerBase:: |
protected | function | Retrieves the entity manager service. | |
ControllerBase:: |
protected | function | Retrieves the entity type manager. | |
ControllerBase:: |
protected | function | Returns the form builder service. | 2 |
ControllerBase:: |
protected | function | Returns a key/value storage collection. | 1 |
ControllerBase:: |
protected | function | Returns the language manager service. | 1 |
ControllerBase:: |
protected | function | Returns the module handler. | 2 |
ControllerBase:: |
protected | function |
Returns a redirect response object for the specified route. Overrides UrlGeneratorTrait:: |
|
ControllerBase:: |
protected | function | Returns the state storage service. | |
LinkGeneratorTrait:: |
protected | property | The link generator. | 1 |
LinkGeneratorTrait:: |
protected | function | Returns the link generator. | |
LinkGeneratorTrait:: |
protected | function | Renders a link to a route given a route name and its parameters. | |
LinkGeneratorTrait:: |
public | function | Sets the link generator service. | |
LoggerChannelTrait:: |
protected | property | The logger channel factory service. | |
LoggerChannelTrait:: |
protected | function | Gets the logger for a specific channel. | |
LoggerChannelTrait:: |
public | function | Injects the logger channel factory. | |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
UrlGeneratorTrait:: |
protected | property | The url generator. | |
UrlGeneratorTrait:: |
protected | function | Returns the URL generator service. | |
UrlGeneratorTrait:: |
public | function | Sets the URL generator service. | |
UrlGeneratorTrait:: |
protected | function | Generates a URL or path for a specific route based on the given parameters. |