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.body
|
||||||
- field.field.node.fight.field_accuracy
|
- field.field.node.fight.field_accuracy
|
||||||
- field.field.node.fight.field_event
|
- 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_one
|
||||||
- field.field.node.fight.field_fighter_two
|
- field.field.node.fight.field_fighter_two
|
||||||
- field.field.node.fight.field_prediction
|
- field.field.node.fight.field_prediction
|
||||||
@ -35,6 +36,12 @@ content:
|
|||||||
size: 60
|
size: 60
|
||||||
placeholder: ''
|
placeholder: ''
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
|
field_fight_date:
|
||||||
|
type: datetime_timestamp
|
||||||
|
weight: 29
|
||||||
|
region: content
|
||||||
|
settings: { }
|
||||||
|
third_party_settings: { }
|
||||||
field_fighter_one:
|
field_fighter_one:
|
||||||
type: entity_reference_autocomplete_tags
|
type: entity_reference_autocomplete_tags
|
||||||
weight: 2
|
weight: 2
|
||||||
@ -89,3 +96,4 @@ hidden:
|
|||||||
status: true
|
status: true
|
||||||
sticky: true
|
sticky: true
|
||||||
uid: true
|
uid: true
|
||||||
|
|
||||||
|
|||||||
@ -6,6 +6,7 @@ dependencies:
|
|||||||
- field.field.node.fight.body
|
- field.field.node.fight.body
|
||||||
- field.field.node.fight.field_accuracy
|
- field.field.node.fight.field_accuracy
|
||||||
- field.field.node.fight.field_event
|
- 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_one
|
||||||
- field.field.node.fight.field_fighter_two
|
- field.field.node.fight.field_fighter_two
|
||||||
- field.field.node.fight.field_prediction
|
- field.field.node.fight.field_prediction
|
||||||
@ -21,7 +22,7 @@ bundle: fight
|
|||||||
mode: default
|
mode: default
|
||||||
content:
|
content:
|
||||||
field_accuracy:
|
field_accuracy:
|
||||||
weight: 8
|
type: number_decimal
|
||||||
label: above
|
label: above
|
||||||
settings:
|
settings:
|
||||||
thousand_separator: ''
|
thousand_separator: ''
|
||||||
@ -29,54 +30,74 @@ content:
|
|||||||
scale: 2
|
scale: 2
|
||||||
prefix_suffix: true
|
prefix_suffix: true
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
type: number_decimal
|
weight: 8
|
||||||
region: content
|
region: content
|
||||||
field_event:
|
field_event:
|
||||||
weight: 1
|
type: entity_reference_label
|
||||||
label: hidden
|
label: hidden
|
||||||
settings:
|
settings:
|
||||||
link: true
|
link: true
|
||||||
third_party_settings: { }
|
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
|
region: content
|
||||||
field_fighter_one:
|
field_fighter_one:
|
||||||
weight: 2
|
type: entity_reference_entity_view
|
||||||
label: hidden
|
label: hidden
|
||||||
settings:
|
settings:
|
||||||
view_mode: teaser
|
view_mode: teaser
|
||||||
link: false
|
link: false
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
type: entity_reference_entity_view
|
weight: 2
|
||||||
region: content
|
region: content
|
||||||
field_fighter_two:
|
field_fighter_two:
|
||||||
weight: 3
|
type: entity_reference_entity_view
|
||||||
label: hidden
|
label: hidden
|
||||||
settings:
|
settings:
|
||||||
view_mode: teaser
|
view_mode: teaser
|
||||||
link: false
|
link: false
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
type: entity_reference_entity_view
|
weight: 3
|
||||||
region: content
|
region: content
|
||||||
field_prediction:
|
field_prediction:
|
||||||
weight: 6
|
type: string
|
||||||
label: above
|
label: above
|
||||||
settings:
|
settings:
|
||||||
link_to_entity: false
|
link_to_entity: false
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
type: string
|
weight: 6
|
||||||
region: content
|
region: content
|
||||||
field_result:
|
field_result:
|
||||||
weight: 5
|
type: entity_reference_label
|
||||||
label: hidden
|
label: hidden
|
||||||
settings:
|
settings:
|
||||||
link: true
|
link: true
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
type: entity_reference_label
|
weight: 5
|
||||||
region: content
|
region: content
|
||||||
links:
|
links:
|
||||||
weight: 0
|
|
||||||
region: content
|
|
||||||
settings: { }
|
settings: { }
|
||||||
third_party_settings: { }
|
third_party_settings: { }
|
||||||
|
weight: 0
|
||||||
|
region: content
|
||||||
hidden:
|
hidden:
|
||||||
body: true
|
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