You are here

function webform2pdf_requirements in Webform2PDF 6.2

Same name and namespace in other branches
  1. 6 webform2pdf.install \webform2pdf_requirements()
  2. 7.4 webform2pdf.install \webform2pdf_requirements()
  3. 7.3 webform2pdf.install \webform2pdf_requirements()

Implementation of hook_requirements().

File

./webform2pdf.install, line 302
Webform2pdf module install/schema hooks.

Code

function webform2pdf_requirements($phase) {
  $requirements = array();
  $t = get_t();
  $error = FALSE;
  $value = array();
  if ($phase == 'runtime') {
    $default = variable_get('webform2pdf_default', '');
    if (!is_file($default['pdf_lib'] . '/tcpdf.php')) {
      $error = TRUE;
      $severity = REQUIREMENT_ERROR;
      $value = $t('The Webform2PDF module requires you to !link.', array(
        '!link' => l($t('set the TCPDF library directory'), 'admin/settings/webform2pdf'),
      ));
    }
    else {
      include_once $default['pdf_lib'] . '/tcpdf.php';
      list($tmp, $version, $tmp) = explode(' ', PDF_PRODUCER);
      if (empty($version)) {
        $pdf = new TCPDF();
        if (method_exists($pdf, 'getTCPDFVersion')) {
          $version = $pdf
            ->getTCPDFVersion();
        }
        elseif (class_exists('TCPDF_STATIC')) {
          $version = TCPDF_STATIC::getTCPDFVersion();
        }
      }
      if (version_compare('4.5.000', $version) >= 0) {
        $error = TRUE;
        $severity = REQUIREMENT_ERROR;
        $value = $t('The Webform2PDF module requires !TCPDF 4.5.000 or later, your version: !ver.', array(
          '!TCPDF' => l('TCPDF', 'http://www.tcpdf.org/'),
          '!ver' => $version,
        ));
      }
    }
  }
  if ($error) {
    $requirements['webform2pdf_tcpdf_library'] = array(
      'title' => $t('TCPDF Library requirements'),
      'value' => $value,
      'severity' => $severity,
    );
  }
  else {
    $requirements['webform2pdf_tcpdf_library'] = array(
      'title' => $t('TCPDF Library version'),
      'value' => $version,
      'severity' => REQUIREMENT_OK,
    );
  }
  return $requirements;
}