Added the Search API Synonym module to deal specifically with licence and license...
[yaffs-website] / web / modules / contrib / search_api_synonym / src / SynonymViewsData.php
diff --git a/web/modules/contrib/search_api_synonym/src/SynonymViewsData.php b/web/modules/contrib/search_api_synonym/src/SynonymViewsData.php
new file mode 100644 (file)
index 0000000..f33fc27
--- /dev/null
@@ -0,0 +1,162 @@
+<?php
+
+namespace Drupal\search_api_synonym;
+
+use Drupal\views\EntityViewsData;
+
+/**
+ * Provides Views data for Synonym entities.
+ */
+class SynonymViewsData extends EntityViewsData {
+  /**
+   * {@inheritdoc}
+   */
+  public function getViewsData() {
+    $data = parent::getViewsData();
+
+
+    $data['search_api_synonym_field_data']['table']['base']['help'] = $this->t('Synonyms managed by Search API Synonyms module.');
+    $data['search_api_synonym_field_data']['table']['base']['defaults']['field'] = 'word';
+    $data['search_api_synonym_field_data']['table']['wizard_id'] = 'synonym';
+
+    $data['search_api_synonym_field_data']['sid']['title'] = $this->t('Synonym ID');
+    $data['search_api_synonym_field_data']['sid']['help'] = $this->t('The unique id of the synonym entity.');
+
+    $data['search_api_synonym_field_data']['word']['title'] = $this->t('Word');
+    $data['search_api_synonym_field_data']['word']['help'] = $this->t('The word we are defining synonyms for.');
+
+    $data['search_api_synonym_field_data']['synonyms']['title'] = $this->t('Synonyms');
+    $data['search_api_synonym_field_data']['synonyms']['help'] = $this->t('The synonyms to the word.');
+
+    $data['search_api_synonym_field_data']['type']['title'] = $this->t('Type');
+    $data['search_api_synonym_field_data']['type']['help'] = $this->t('The type of synonym. Either synonym or spelling error.');
+
+    $data['search_api_synonym_field_data']['created']['title'] = $this->t('Create date');
+    $data['search_api_synonym_field_data']['created']['help'] = $this->t('Date and time of when the synonym was created.');
+
+    $data['search_api_synonym_field_data']['created_fulldata'] = [
+      'title' => $this->t('Created date'),
+      'help' => $this->t('Date in the form of CCYYMMDD.'),
+      'argument' => [
+        'field' => 'created',
+        'id' => 'date_fulldate',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['created_year_month'] = [
+      'title' => $this->t('Created year + month'),
+      'help' => $this->t('Date in the form of YYYYMM.'),
+      'argument' => [
+        'field' => 'created',
+        'id' => 'date_year_month',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['created_year'] = [
+      'title' => $this->t('Created year'),
+      'help' => $this->t('Date in the form of YYYY.'),
+      'argument' => [
+        'field' => 'created',
+        'id' => 'date_year',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['created_month'] = [
+      'title' => $this->t('Created month'),
+      'help' => $this->t('Date in the form of MM (01 - 12).'),
+      'argument' => [
+        'field' => 'created',
+        'id' => 'date_month',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['created_day'] = [
+      'title' => $this->t('Created day'),
+      'help' => $this->t('Date in the form of DD (01 - 31).'),
+      'argument' => [
+        'field' => 'created',
+        'id' => 'date_day',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['created_week'] = [
+      'title' => $this->t('Created week'),
+      'help' => $this->t('Date in the form of WW (01 - 53).'),
+      'argument' => [
+        'field' => 'created',
+        'id' => 'date_week',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['changed']['title'] = $this->t('Updated date');
+    $data['search_api_synonym_field_data']['changed']['help'] = $this->t('Date and time of when the synonym was last updated.');
+
+    $data['search_api_synonym_field_data']['changed_fulldata'] = [
+      'title' => $this->t('Changed date'),
+      'help' => $this->t('Date in the form of CCYYMMDD.'),
+      'argument' => [
+        'field' => 'changed',
+        'id' => 'date_fulldate',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['changed_year_month'] = [
+      'title' => $this->t('Changed year + month'),
+      'help' => $this->t('Date in the form of YYYYMM.'),
+      'argument' => [
+        'field' => 'changed',
+        'id' => 'date_year_month',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['changed_year'] = [
+      'title' => $this->t('Changed year'),
+      'help' => $this->t('Date in the form of YYYY.'),
+      'argument' => [
+        'field' => 'changed',
+        'id' => 'date_year',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['changed_month'] = [
+      'title' => $this->t('Changed month'),
+      'help' => $this->t('Date in the form of MM (01 - 12).'),
+      'argument' => [
+        'field' => 'changed',
+        'id' => 'date_month',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['changed_day'] = [
+      'title' => $this->t('Changed day'),
+      'help' => $this->t('Date in the form of DD (01 - 31).'),
+      'argument' => [
+        'field' => 'changed',
+        'id' => 'date_day',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['changed_week'] = [
+      'title' => $this->t('Changed week'),
+      'help' => $this->t('Date in the form of WW (01 - 53).'),
+      'argument' => [
+        'field' => 'changed',
+        'id' => 'date_week',
+      ],
+    ];
+
+    $data['search_api_synonym_field_data']['status']['title'] = $this->t('Active status');
+    $data['search_api_synonym_field_data']['status']['help'] = $this->t('Whether the synonym is active and used by search engines or is it no active.');
+    $data['search_api_synonym_field_data']['status']['filter']['label'] = $this->t('Active synonym status');
+    $data['search_api_synonym_field_data']['status']['filter']['type'] = 'yes-no';
+
+    $data['search_api_synonym_field_data']['uid']['title'] = $this->t('Author uid');
+    $data['search_api_synonym_field_data']['uid']['help'] = $this->t('If you need more fields than the uid add the synonym: author relationship');
+    $data['search_api_synonym_field_data']['uid']['relationship']['title'] = $this->t('Author');
+    $data['search_api_synonym_field_data']['uid']['relationship']['help'] = $this->t('The User ID of the synonym\'s author.');
+    $data['search_api_synonym_field_data']['uid']['relationship']['label'] = $this->t('author');
+
+    return $data;
+  }
+
+}