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']);
  }



}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc