niobi-8.x-2.0-alpha4/modules/niobi_form/modules/niobi_app/src/Plugin/views/field/ApplicationFieldForReview.php
modules/niobi_form/modules/niobi_app/src/Plugin/views/field/ApplicationFieldForReview.php
<?php
namespace Drupal\niobi_app\Plugin\views\field;
use Drupal\niobi_app\Form\Review\NiobiAppReviewAssignmentForm;
use Drupal\views\Plugin\views\field\FieldPluginBase;
use Drupal\views\ResultRow;
use Drupal\Core\Form\FormStateInterface;
/**
* Defines a views field plugin.
*
* @ingroup views_field_handlers
*
* @ViewsField("niobi_app_app_field_for_review")
*/
class ApplicationFieldForReview extends FieldPluginBase {
/**
* {@inheritdoc}
*/
public function query() {
// Leave empty to avoid a query on this field.
}
/**
* Define the available options.
*
* @return array
* Array of available options for views_add_button form.
*/
protected function defineOptions() {
$options = parent::defineOptions();
$options['report_type'] = ['default' => 'value'];
return $options;
}
/**
* Provide the options form.
* @param $form
* @param FormStateInterface $form_state
*/
public function buildOptionsForm(&$form, FormStateInterface $form_state) {
parent::buildOptionsForm($form, $form_state);
$form['report_type'] = [
'#type' => 'radios',
'#title' => t('Report Type'),
'#description' => t('Select the way you wish to show the fields.'),
'#options' => [
'value' => t('Submission Value'),
'key_value' => t('Data Key: Submission Value')
],
'#required' => TRUE,
'#default_value' => $this->options['report_type'],
];
$form['style_settings']['#attributes']['style'] = 'display:none;';
$form['element_type_enable']['#attributes']['style'] = 'display:none;';
$form['element_type']['#attributes']['style'] = 'display:none;';
$form['element_class_enable']['#attributes']['style'] = 'display:none;';
$form['element_class']['#attributes']['style'] = 'display:none;';
$form['element_label_type_enable']['#attributes']['style'] = 'display:none;';
$form['element_label_type']['#attributes']['style'] = 'display:none;';
$form['element_label_class_enable']['#attributes']['style'] = 'display:none;';
$form['element_label_class']['#attributes']['style'] = 'display:none;';
$form['element_wrapper_type_enable']['#attributes']['style'] = 'display:none;';
$form['element_wrapper_type']['#attributes']['style'] = 'display:none;';
$form['element_wrapper_class_enable']['#attributes']['style'] = 'display:none;';
$form['element_wrapper_class']['#attributes']['style'] = 'display:none;';
$form['element_default_classes']['#attributes']['style'] = 'display:none;';
$form['alter']['#attributes']['style'] = 'display:none;';
$form['empty_field_behavior']['#attributes']['style'] = 'display:none;';
$form['empty']['#attributes']['style'] = 'display:none;';
$form['empty_zero']['#attributes']['style'] = 'display:none;';
$form['hide_empty']['#attributes']['style'] = 'display:none;';
$form['hide_alter_empty']['#attributes']['style'] = 'display:none;';
}
/**
* {@inheritdoc}
*/
public function render(ResultRow $values) {
$ret = '';
/* @var $application \Drupal\niobi_app\Entity\NiobiApplication */
$application = $values->_entity;
return NiobiAppReviewAssignmentForm::applicationFieldsForReviewDashboard($application, $this->options['report_type']);
}
}
