new things and command
This commit is contained in:
parent
38039ed04b
commit
c075f78c85
@ -6,6 +6,7 @@ dependencies:
|
||||
- field.field.node.fight.body
|
||||
- field.field.node.fight.field_accuracy
|
||||
- field.field.node.fight.field_event
|
||||
- field.field.node.fight.field_fight_date
|
||||
- field.field.node.fight.field_fighter_one
|
||||
- field.field.node.fight.field_fighter_two
|
||||
- field.field.node.fight.field_prediction
|
||||
@ -35,6 +36,12 @@ content:
|
||||
size: 60
|
||||
placeholder: ''
|
||||
third_party_settings: { }
|
||||
field_fight_date:
|
||||
type: datetime_timestamp
|
||||
weight: 29
|
||||
region: content
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
field_fighter_one:
|
||||
type: entity_reference_autocomplete_tags
|
||||
weight: 2
|
||||
@ -89,3 +96,4 @@ hidden:
|
||||
status: true
|
||||
sticky: true
|
||||
uid: true
|
||||
|
||||
|
||||
@ -6,6 +6,7 @@ dependencies:
|
||||
- field.field.node.fight.body
|
||||
- field.field.node.fight.field_accuracy
|
||||
- field.field.node.fight.field_event
|
||||
- field.field.node.fight.field_fight_date
|
||||
- field.field.node.fight.field_fighter_one
|
||||
- field.field.node.fight.field_fighter_two
|
||||
- field.field.node.fight.field_prediction
|
||||
@ -21,7 +22,7 @@ bundle: fight
|
||||
mode: default
|
||||
content:
|
||||
field_accuracy:
|
||||
weight: 8
|
||||
type: number_decimal
|
||||
label: above
|
||||
settings:
|
||||
thousand_separator: ''
|
||||
@ -29,54 +30,74 @@ content:
|
||||
scale: 2
|
||||
prefix_suffix: true
|
||||
third_party_settings: { }
|
||||
type: number_decimal
|
||||
weight: 8
|
||||
region: content
|
||||
field_event:
|
||||
weight: 1
|
||||
type: entity_reference_label
|
||||
label: hidden
|
||||
settings:
|
||||
link: true
|
||||
third_party_settings: { }
|
||||
type: entity_reference_label
|
||||
weight: 1
|
||||
region: content
|
||||
field_fight_date:
|
||||
type: timestamp
|
||||
label: above
|
||||
settings:
|
||||
date_format: medium
|
||||
custom_date_format: ''
|
||||
timezone: ''
|
||||
tooltip:
|
||||
date_format: long
|
||||
custom_date_format: ''
|
||||
time_diff:
|
||||
enabled: false
|
||||
future_format: '@interval hence'
|
||||
past_format: '@interval ago'
|
||||
granularity: 2
|
||||
refresh: 60
|
||||
third_party_settings: { }
|
||||
weight: 9
|
||||
region: content
|
||||
field_fighter_one:
|
||||
weight: 2
|
||||
type: entity_reference_entity_view
|
||||
label: hidden
|
||||
settings:
|
||||
view_mode: teaser
|
||||
link: false
|
||||
third_party_settings: { }
|
||||
type: entity_reference_entity_view
|
||||
weight: 2
|
||||
region: content
|
||||
field_fighter_two:
|
||||
weight: 3
|
||||
type: entity_reference_entity_view
|
||||
label: hidden
|
||||
settings:
|
||||
view_mode: teaser
|
||||
link: false
|
||||
third_party_settings: { }
|
||||
type: entity_reference_entity_view
|
||||
weight: 3
|
||||
region: content
|
||||
field_prediction:
|
||||
weight: 6
|
||||
type: string
|
||||
label: above
|
||||
settings:
|
||||
link_to_entity: false
|
||||
third_party_settings: { }
|
||||
type: string
|
||||
weight: 6
|
||||
region: content
|
||||
field_result:
|
||||
weight: 5
|
||||
type: entity_reference_label
|
||||
label: hidden
|
||||
settings:
|
||||
link: true
|
||||
third_party_settings: { }
|
||||
type: entity_reference_label
|
||||
weight: 5
|
||||
region: content
|
||||
links:
|
||||
weight: 0
|
||||
region: content
|
||||
settings: { }
|
||||
third_party_settings: { }
|
||||
weight: 0
|
||||
region: content
|
||||
hidden:
|
||||
body: true
|
||||
|
||||
|
||||
20
config/default/field.field.node.fight.field_fight_date.yml
Normal file
20
config/default/field.field.node.fight.field_fight_date.yml
Normal file
@ -0,0 +1,20 @@
|
||||
uuid: 7357cd39-f97c-4f35-9c71-8bb4c5232045
|
||||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
config:
|
||||
- field.storage.node.field_fight_date
|
||||
- node.type.fight
|
||||
id: node.fight.field_fight_date
|
||||
field_name: field_fight_date
|
||||
entity_type: node
|
||||
bundle: fight
|
||||
label: 'Fight Date'
|
||||
description: ''
|
||||
required: false
|
||||
translatable: false
|
||||
default_value: { }
|
||||
default_value_callback: ''
|
||||
settings: { }
|
||||
field_type: timestamp
|
||||
|
||||
19
config/default/field.storage.node.field_fight_date.yml
Normal file
19
config/default/field.storage.node.field_fight_date.yml
Normal file
@ -0,0 +1,19 @@
|
||||
uuid: 08df81a1-8bd2-45d3-9db9-cc7d6e482fcc
|
||||
langcode: en
|
||||
status: true
|
||||
dependencies:
|
||||
module:
|
||||
- node
|
||||
id: node.field_fight_date
|
||||
field_name: field_fight_date
|
||||
entity_type: node
|
||||
type: timestamp
|
||||
settings: { }
|
||||
module: core
|
||||
locked: false
|
||||
cardinality: 1
|
||||
translatable: true
|
||||
indexes: { }
|
||||
persist_with_no_fields: false
|
||||
custom_storage: false
|
||||
|
||||
5
web/modules/custom/ufc/drush.services.yml
Normal file
5
web/modules/custom/ufc/drush.services.yml
Normal file
@ -0,0 +1,5 @@
|
||||
services:
|
||||
ufc.commands:
|
||||
class: \Drupal\ufc\Commands\UfcCommands
|
||||
tags:
|
||||
- { name: drush.command }
|
||||
43
web/modules/custom/ufc/src/Commands/UfcCommands.php
Normal file
43
web/modules/custom/ufc/src/Commands/UfcCommands.php
Normal file
@ -0,0 +1,43 @@
|
||||
<?php
|
||||
|
||||
namespace Drupal\ufc\Commands;
|
||||
|
||||
use Drupal\node\Entity\Node;
|
||||
use Drush\Commands\DrushCommands;
|
||||
|
||||
class UfcCommands extends DrushCommands {
|
||||
|
||||
/**
|
||||
* Update fights with their event date.
|
||||
*
|
||||
* @command ufc:update-fight-dates
|
||||
* @aliases ufc-ufd
|
||||
*/
|
||||
public function updateFightDates() {
|
||||
// Get all fights
|
||||
// For each fight
|
||||
// Go get event date.
|
||||
// Add to new field
|
||||
// Save.
|
||||
$fights = \Drupal::entityTypeManager()->getStorage('node')->loadByProperties(['type' => 'fight']);
|
||||
foreach ($fights as $fight) {
|
||||
$fight->field_fight_date = $this->getEventDateTimestampFromFight($fight);
|
||||
if ($fight->save()) {
|
||||
$this->output->writeln($fight->title->value . " updated successfully.");
|
||||
}
|
||||
else {
|
||||
$this->output->writeln($fight->title->value . " failed.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private function getEventDateTimestampFromFight(Node $fight_node) {
|
||||
// Get field value.
|
||||
$event_date_value = $fight_node->field_event->entity->field_event_date->value;
|
||||
assert($event_date_value, !null);
|
||||
|
||||
return strtotime($event_date_value);
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user