Files
luos/thirdparty/html2ps_pdf/box.input.password.php
Paula Quispe 9eb7d6cac2 HOR-2689
2017-08-03 17:00:30 -04:00

66 lines
2.0 KiB
PHP

<?php
// $Header: /cvsroot/html2ps/box.input.password.php,v 1.6 2006/10/06 20:10:52 Konstantin Exp $
class PasswordInputBox extends TextInputBox {
function &create(&$root, &$pipeline) {
// Text to be displayed
if ($root->has_attribute('value')) {
$text = str_repeat("*",strlen($root->get_attribute("value")));
} else {
$text = "";
};
/**
* Input field name
*/
$name = $root->get_attribute('name');
$box =& new PasswordInputBox($text, $root->get_attribute("value"), $name);
$box->readCSS($pipeline->getCurrentCSSState());
$ibox = InlineBox::create_from_text(" ", WHITESPACE_PRE, $pipeline);
for ($i=0, $size = count($ibox->content); $i<$size; $i++) {
$box->add_child($ibox->content[$i]);
};
return $box;
}
function show(&$driver) {
// Now set the baseline of a button box to align it vertically when flowing isude the
// text line
$this->default_baseline = $this->content[0]->baseline + $this->get_extra_top();
$this->baseline = $this->content[0]->baseline + $this->get_extra_top();
/**
* If we're rendering the interactive form, the field content should not be rendered
*/
global $g_config;
if ($g_config['renderforms']) {
/**
* Render background/borders only
*/
$status = GenericFormattedBox::show($driver);
/**
* @todo encoding name?
* @todo font name?
* @todo check if font is embedded for PDFLIB
*/
$driver->field_password($this->get_left_padding(),
$this->get_top_padding(),
$this->get_width() + $this->get_padding_left() + $this->get_padding_right(),
$this->get_height() + $this->get_padding_top() + $this->get_padding_bottom(),
$this->_value,
$this->_field_name);
} else {
/**
* Render everything, including content
*/
$status = GenericContainerBox::show($driver);
}
return $status;
}
}
?>