google_analytics_reports-8.x-3.0-rc3/google_analytics_reports.install
google_analytics_reports.install
<?php
/**
* @file
* Contains install and update functions for Google Analytics Reports module.
*/
/**
* Implements hook_schema().
*/
function google_analytics_reports_schema() {
$schema['google_analytics_reports_fields'] = [
'description' => 'Dimensions and metrics from Google Analytics.',
'fields' => [
'gaid' => [
'description' => 'The primary identifier for a column.',
'type' => 'varchar',
'length' => 128,
'not null' => TRUE,
'default' => '',
],
'type' => [
'description' => 'The type of column.',
'type' => 'varchar',
'length' => 32,
'not null' => TRUE,
'default' => '',
],
'data_type' => [
'description' => 'The type of data this column represents.',
'type' => 'varchar',
'length' => 128,
'not null' => TRUE,
'default' => '',
],
'column_group' => [
'description' => 'The dimensions/metrics group the column belongs to.',
'type' => 'varchar',
'length' => 128,
'not null' => TRUE,
'default' => '',
],
'ui_name' => [
'description' => 'The name/label of the column used in user interfaces (UI).',
'type' => 'varchar',
'length' => 128,
'not null' => TRUE,
'default' => '',
],
'description' => [
'description' => 'The full description of the column.',
'type' => 'text',
'size' => 'medium',
],
'calculation' => [
'description' => 'This shows how the metric is calculated. Only available for calculated metrics.',
'type' => 'varchar',
'length' => 128,
],
],
'indexes' => [
'type' => ['type'],
],
'unique keys' => [
'gaid' => ['gaid'],
],
'primary key' => ['gaid'],
];
return $schema;
}
/**
* Implements hook_uninstall().
*/
function google_analytics_reports_uninstall() {
// Uninstall table.
$table = 'google_analytics_reports_fields';
$schema = \Drupal::database()->schema();
if ($schema->tableExists($table)) {
$schema->dropTable($table);
}
\Drupal::configFactory()->getEditable('views.view.google_analytics_summary')->delete();
\Drupal::configFactory()->getEditable('views.view.google_analytics_reports_page')->delete();
}
