aggrid-8.x-1.x-dev/modules/aggrid_demo/aggrid_demo.install
modules/aggrid_demo/aggrid_demo.install
<?php
/**
* @file
* Uninstall functions for the ag-Grid Demo module.
*/
use Drupal\node\Entity\Node;
/**
* Implements hook_install().
*/
function aggrid_demo_install() {
// Create a demo event node.
$aggrid_node = Node::create([
'type' => 'aggrid_demo',
'title' => t('DEMO: ag-Grid Car Report'),
'status' => 1,
]);
$aggrid_node->field_aggrid_demo->aggrid_id = 'aggrid_demo_vc';
$aggrid_node->field_aggrid_demo->value = '
[
{
"color": "Red",
"car": 1,
"truck": 2,
"motorcycle": 4,
"bicycle": 44,
"total": 51
},
{
"color": "Blue",
"car": 34,
"truck": 8,
"motorcycle": 5,
"bicycle": 3,
"total": 50
},
{
"color": "Green",
"car": 89,
"truck": 4,
"motorcycle": 7,
"bicycle": 1,
"total": 101
},
{
"color": "Yellow",
"car": 2,
"truck": 3,
"motorcycle": 45,
"bicycle": 0,
"total": 50
},
{
"color": "Black",
"car": 0,
"truck": 2,
"motorcycle": 0,
"bicycle": 3,
"total": 5
}
]';
$aggrid_node->body->value = '<p>' . t('Nothing more to say about this demonstration vehicle and color data.') . '</p>';
$aggrid_node->body->format = filter_default_format();
$aggrid_node->save();
// Create another demo event node.
$aggrid_node = Node::create([
'type' => 'aggrid_demo',
'title' => t('DEMO: ag-Grid M-F Spending Report'),
'status' => 1,
]);
$aggrid_node->field_aggrid_demo->aggrid_id = 'aggrid_demo_we';
$aggrid_node->field_aggrid_demo->value = '
[
{
"id": 1,
"bills": "Groceries",
"mon": 15.00,
"tue": 0,
"wed": 0,
"thu": 125.32,
"fri": 0,
"total": 140.32,
"rollingtotal": 140.32,
"pototal": 0.4279,
"expected": 150.00,
"difference": 9.68
},
{
"id": 2,
"bills": "Take-out",
"mon": 0,
"tue": 34.50,
"wed": 0,
"thu": 0,
"fri": 64.32,
"total": 98.82,
"rollingtotal": 239.14,
"pototal": 0.3013,
"expected": 100.00,
"difference": 1.18
},
{
"id": 3,
"bills": "Clothes",
"mon": 0,
"tue": 0,
"wed": 0,
"thu": 34.21,
"fri": 0,
"total": 34.21,
"rollingtotal": 273.35,
"pototal": 0.1043,
"expected": 50,
"difference": 15.79
},
{
"id": 4,
"bills": "Gas (transportation)",
"mon": 54.60,
"tue": 0,
"wed": 0,
"thu": 0,
"fri": 0,
"total": 54.60,
"rollingtotal": 327.95,
"pototal": 0.1665,
"expected": 60.00,
"difference": 5.40
},
{
"id": 5,
"bills": "Grand Total",
"mon": 69.60,
"tue": 34.50,
"wed": 0,
"thu": 159.53,
"fri": 64.32,
"total": 327.95,
"rollingtotal": 327.95,
"pototal": 1,
"expected": 360,
"difference": 32.05
}
]';
$aggrid_node->body->value = '<p>' . t('A demo of weekly expense data.') . '</p>';
$aggrid_node->body->format = filter_default_format();
$aggrid_node->save();
}
/**
* Implements hook_uninstall().
*/
function aggrid_demo_vc_uninstall() {
/*
* Removed deleting of demo on uninstall
*
// Delete all aggrid:aggrid_demo_vc nodes.
$entity_ids = \Drupal::entityQuery('node')
->condition('type', 'aggrid_demo_vr')
->execute();
if ($entity_ids) {
//@var \Drupal\node\Entity\Node[] $nodes
$nodes = Node::loadMultiple($entity_ids);
foreach ($nodes as $node) {
$node->delete();
}
}
Drupal::configFactory()->getEditable('node.type.aggrid_demo_vr')->delete();
Drupal::configFactory()->getEditable('field.storage.node.field_aggrid_demo_vc')->delete();
Drupal::configFactory()->getEditable('core.entity_view_display.node.aggrid_demo_vr.default')->delete();
Drupal::configFactory()->getEditable('core.entity_form_display.node.aggrid_demo_vr.default')->delete();
Drupal::configFactory()->getEditable('core.entity_view_display.node.aggrid_demo_vr.teaser')->delete();
Drupal::configFactory()->getEditable('aggrid.aggrid.aggrid_demo_vc')->delete();
*/
/*
* // Extra issues trying to delete these two items. (error)
Drupal::configFactory()->getEditable('field.field.node.aggrid_demo_vr.field_aggrid_demo_vc')->delete();
Drupal::configFactory()->getEditable('field.field.node.aggrid_demo_vr.body')->delete();
*/
}
