Skip to content
Snippets Groups Projects
RegistrationLinkFieldOutputHandler.php 1.22 KiB
Newer Older
jaapjansma's avatar
jaapjansma committed
<?php
/**
 * @author Jaap Jansma <jaap.jansma@civicoop.org>
 * @license AGPL-3.0
 */

namespace Civi\VeltWebsiteActiviteiten\DataProcessor\FieldOutputHandler;

use Civi\DataProcessor\FieldOutputHandler\AbstractSimpleFieldOutputHandler;
jaapjansma's avatar
jaapjansma committed
use Civi\DataProcessor\FieldOutputHandler\FieldOutput;
use CRM_Veltwebsiteactiviteiten_ExtensionUtil as E;

class RegistrationLinkFieldOutputHandler extends AbstractSimpleFieldOutputHandler {
jaapjansma's avatar
jaapjansma committed

  /**
   * Returns the data type of this field
   *
   * @return String
   */
  protected function getType() {
    return 'String';
  }

  /**
   * Returns the formatted value
   *
   * @param $rawRecord
   * @param $formattedRecord
   *
   * @return \Civi\DataProcessor\FieldOutputHandler\FieldOutput
   */
  public function formatField($rawRecord, $formattedRecord) {
    $event_id = $rawRecord[$this->inputFieldSpec->alias];
    $link = '';
    if ($event_id) {
      $link = \CRM_VeltWebsiteActiviteiten_Utils_EventInfo::generateLink($event_id);
    }
    return new FieldOutput($link);
  }

  /**
   * Returns the label of the field for selecting a field.
jaapjansma's avatar
jaapjansma committed
   *
   * This could be override in a child class.
jaapjansma's avatar
jaapjansma committed
   *
   * @return string
jaapjansma's avatar
jaapjansma committed
   */
  protected function getFieldTitle() {
    return E::ts('Event ID Field');