forena-8.x-1.x-dev/src/Forena.php

src/Forena.php
<?php
/**
 * Created by PhpStorm.
 * User: metzlerd
 * Date: 3/9/2017
 * Time: 1:58 PM
 */

namespace Drupal\forena;

class Forena {
  use FrxAPI;
  static protected $instance;

  /**
   * Singleton
   * @return static
   */
  public static function service() {
    if (static::$instance === NULL) {
      static::$instance = new static();
    }
    return static::$instance;
  }

  public function report($report, $parms = []) {
    $content = ReportManager::instance()->report($report, $parms);
    return $content;
  }

  public function setContext($id, $data) {
    $this->setDataContext($id, $data);
  }

  /**
   * @param string $report
   *   Name of the report to run with format.
   * @param array $parms
   *   Parameters to apply to report
   * @return string
   *   The report text.
   */
  public function runReport($report, $parms = []) {
    $content = \Drupal\forena\ReportManager::instance()->report($report, $parms);
    $d = \Drupal\forena\DocManager::instance();
    $doc_type = $d->getDocumentType();
    $email_override = \Drupal::config('forena.settings')->get('email_override');
    $user = \Drupal::currentUser();
    $email = $email_override ? $user->getEmail() : '';

    switch ($doc_type) {
      case 'drupal':
        $content = $content['report']['#template'];
        break;
      case 'email':
        /** @var \Drupal\forena\FrxPlugin\Document\EmailMerge $merge */
        $merge = $d->getDocument();
        $merge->sendMail($email, 0);
        break;
    }
    return $content;
  }

}

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

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