From cff9db5cb177459d7655e61f208cb671f0d0178b Mon Sep 17 00:00:00 2001 From: Roland Gruber Date: Sun, 27 Nov 2011 15:14:09 +0000 Subject: [PATCH] implemented PDF --- lam/lib/modules/asteriskExtensionNewUI.inc | 82 +++++++++++++--------- 1 file changed, 47 insertions(+), 35 deletions(-) diff --git a/lam/lib/modules/asteriskExtensionNewUI.inc b/lam/lib/modules/asteriskExtensionNewUI.inc index 5191fa4f..7fc9dfa4 100644 --- a/lam/lib/modules/asteriskExtensionNewUI.inc +++ b/lam/lib/modules/asteriskExtensionNewUI.inc @@ -4,8 +4,8 @@ $Id$ This code is part of LDAP Account Manager (http://www.sourceforge.net/projects/lam) - Copyright (C) 2009 - 2010 Pavel Pozdnyak - 2009 - 2010 Roland Gruber + Copyright (C) 2009 - 2011 Pavel Pozdnyak + 2009 - 2011 Roland Gruber This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -126,13 +126,14 @@ class asteriskExtensionNewUI extends baseModule { $return['profile_mappings'] = array( 'AsteriskExtension_AstContext' => 'AstContext', ); - /* - $configContainer = new htmlTable(); - $configMigrateSuffix = new htmlTableExtendedInputField(_('Suffix to migrate'), 'AsteriskExtension_MigrateSuffix', '', 'MigrateSuffix'); - $configMigrateSuffix->setRequired(false); - $configContainer->addElement($configMigrateSuffix, true); - $return['config_options']['all'] = $configContainer; - */ + // available PDF fields + $return['PDF_fields'] = array( + 'AstContext' => _('Account context'), + 'AstExtension' => _('Extension name'), + 'member' => _('Extension owners'), + 'cn' => _('Common name'), + 'rules' => _('Rules'), + ); return $return; } @@ -677,32 +678,43 @@ class asteriskExtensionNewUI extends baseModule { if (isset($this->extensionRows[0]['astextension'][0])) { $extName = $this->extensionRows[0]['astextension'][0]; } - $entries = $this->load_extension_parts($extName); - for ($rowCounter = 0; $rowCounter < count($this->extensionRows); $rowCounter++) { - $row = $this->extensionRows[$rowCounter]; - if (isset($row['astcontext'])) { - $return[get_class($this) . '_AstContext'. $rowCounter] = array('' . _('Account context') . '' . $row['astcontext'][0] . ''); - } - if (isset($row['astapplicationdata'])) { - $return[get_class($this) . '_AstApplicationData' . $rowCounter] = array('' . _('Application data') . '' . $row['astapplicationdata'][0] . ''); - } - if (isset($row['astapplication'])) { - $return[get_class($this) . '_AstApplication' . $rowCounter] = array('' . _('Application') . '' . $row['astapplication'][0] . ''); - } - if (isset($row['astpriority'])) { - $return[get_class($this) . '_AstPriority' . $rowCounter] = array('' . _('Priority') . '' . $row['astpriority'][0] . ''); - } - if (isset($row['astetension'])) { - $return[get_class($this) . '_AstExtension' . $rowCounter] = array('' . _('Extension name') . '' . $row['astetension'][0] . ''); - } - if (isset($row['member'])) { - $return[get_class($this) . '_member' . $rowCounter] = array('' . _('Extension owners') . '' . implode('; ', $row['member']) . ''); - } - if (isset($row['cn'])) { - $return[get_class($this) . '_cn' . $rowCounter] = array('' . _('Common name') . '' . $row['cn'][0] . ''); - } - } - + // global values + if (isset($this->attributes['AstContext'])) { + $return[get_class($this) . '_AstContext'] = array('' . _('Account context') . '' . $this->attributes['AstContext'][0] . ''); + } + if (isset($this->attributes['AstExtension'])) { + $return[get_class($this) . '_AstExtension'] = array('' . _('Extension name') . '' . $this->attributes['AstExtension'][0] . ''); + } + if (isset($this->attributes['member'])) { + $return[get_class($this) . '_member'] = array('' . _('Extension owners') . '' . implode('; ', $this->attributes['member']) . ''); + } + if (isset($this->attributes['cn'])) { + $return[get_class($this) . '_cn'] = array('' . _('Common name') . '' . $this->attributes['cn'][0] . ''); + } + // rules + $entries = $this->load_extension_parts($extName); + $rulePDF = array(); + $rulePDF[] = ' '; + $rulePDF[] = ' '; + $rulePDF[] = ' '; + $rulePDF[] = '' . + '' . _('Name') . '' . + '' . _('Application') . '' . + '' . _('Application data') . '' . + '' . _('Priority') . '' . + ''; + for ($i = 0; $i < sizeof($entries); $i++) { + $appdata = ''; + if (isset($entries[$i]['astapplicationdata'][0])) { + $appdata = $entries[$i]['astapplicationdata'][0]; + } + $rulePDF[] = '' . + '' . $entries[$i]['cn'][0] . '' . + '' . $entries[$i]['astapplication'][0] . '' . + '' . $appdata . '' . + '' . $entries[$i]['astpriority'][0] . ''; + } + $return[get_class($this) . '_rules'] = $rulePDF; return $return; }