LABEL_CREATE_ANOTHER_ACCOUNT = _('Create another printer'); $this->LABEL_BACK_TO_ACCOUNT_LIST = _('Back to printer list'); } /** * Returns the alias name of this account type. * * @return string alias name */ function getAlias() { return _("Printers"); } /** * Returns the description of this account type. * * @return string description */ function getDescription() { return _("PyKota printers"); } /** * Returns the class name for the list object. * * @return string class name */ function getListClassName() { return "lamPykotaPrinterTypeList"; } /** * Returns the default attribute list for this account type. * * @return string attribute list */ function getDefaultListAttributes() { return "#cn;#description;#pykotaPricePerPage;#pykotaPricePerJob;#pykotaMaxJobSize"; } /** * Returns a list of attributes which have a translated description. * This is used for the head row in the list view. * * @return array list of descriptions */ function getListAttributeDescriptions() { return array_merge( parent::getListAttributeDescriptions(), array( "cn" => _('Printer name'), 'pykotaPricePerPage' => _('Price per page'), 'pykotaPricePerJob' => _('Price per job'), 'pykotaMaxJobSize' => _('Maximum job size'), )); } /** * Returns the the title text for the title bar on the new/edit page. * * @param accountContainer $container account container * @return String title text */ public function getTitleBarTitle($container) { // get attributes $attributes = array(); if ($container->getAccountModule('pykotaPrinter') != null) { $attributes = $container->getAccountModule('pykotaPrinter')->getAttributes(); } // check if cn is set if (isset($attributes['cn'][0])) { return htmlspecialchars($attributes['cn'][0]); } // show new publication label if ($container->isNewAccount) { return _("New printer"); } // fall back to default return parent::getTitleBarTitle($container); } /** * Returns the the subtitle text for the title bar on the new/edit page. * * @param accountContainer $container account container * @return String title text */ public function getTitleBarSubtitle($container) { // get attributes $attributes = array(); if ($container->getAccountModule('pykotaPrinter') != null) { $attributes = $container->getAccountModule('pykotaPrinter')->getAttributes(); } // check if description is set if (isset($attributes['description'][0])) { return htmlspecialchars($attributes['description'][0]); } // fall back to default return parent::getTitleBarSubtitle($container); } /** * {@inheritDoc} * @see baseType::getIcon() */ public function getIcon() { return 'printer.png'; } } /** * Generates the list view. * * @package lists * @author Roland Gruber * */ class lamPykotaPrinterTypeList extends lamList { /** * Constructor * * @param string $type account type * @return lamList list object */ function __construct($type) { parent::__construct($type); $this->labels = array( 'nav' => _("Printer count: %s"), 'error_noneFound' => _("No printers found!"), 'newEntry' => _("New printer"), 'deleteEntry' => _("Delete selected printers")); } } ?>