$value) {
$code .= ' ' . $attribute . '="' . htmlentities(stripslashes($value), ENT_COMPAT) . '"';
}
if ($content === false || $content === null) {
$code .= ' />';
} else {
$code .= '>' . $content . '' . $tag . '>';
}
return $code;
}
function getInputTextHtml($name, $currentValue, $attributes = array()) {
$defaultAttributes = array(
'id' => $name,
'name' => $name
);
$finalAttributes = array_merge($defaultAttributes, $attributes);
if ($currentValue !== null) {
$finalAttributes['value'] = $currentValue;
}
return getElementHtml('input', $finalAttributes, false);
}
function getOptionGroup($options, $currentValue) {
$content = '';
foreach ($options as $optionKey => $optionValue) {
if (is_array($optionValue)) {
$content .= '';
} else {
$optionAttributes = array();
if ($currentValue == $optionKey) {
$optionAttributes['selected'] = 'selected';
}
$content .= getOptionHtml($optionKey, $optionValue, $optionAttributes);
}
}
return $content;
}
function getOptionHtml($value, $content, $attributes = array()) {
$defaultAttributes = array(
'value' => $value
);
$finalAttributes = array_merge($defaultAttributes, $attributes);
return getElementHtml('option', $finalAttributes, $content);
}
function getSelectHtml($name, $currentValue, $options, $attributes = array()) {
$defaultAttributes = array(
'size' => 1,
'id' => $name,
'name' => $name
);
$finalAttributes = array_merge($defaultAttributes, $attributes);
$content = getOptionGroup($options, $currentValue);
return getElementHtml('select', $finalAttributes, $content);
}
function getCheckboxHtml($name, $currentValue, $attributes = array()) {
$defaultAttributes = array(
'type' => 'checkbox',
'id' => $name,
'name' => $name,
'value' => isset($attributes['value']) ? $attributes['value'] : 'On'
);
$finalAttributes = array_merge($defaultAttributes, $attributes);
if ($currentValue == $finalAttributes['value']) {
$finalAttributes['checked'] = 'checked';
}
return getElementHtml('input', $finalAttributes, false);
}
function getButton($value, $output = null) {
$escaped = false;
$finalValue = $value[0] === '&' ? $value : htmlentities($value);
if ($output === null) {
$output = $value;
} else {
$escaped = true;
}
$code = '';
return $code;
}
/**
* Returns the fonts available for drawing.
*
* @return string[]
*/
function listfonts($folder) {
$array = array();
if (($handle = opendir($folder)) !== false) {
while (($file = readdir($handle)) !== false) {
if(substr($file, -4, 4) === '.ttf') {
$array[$file] = $file;
}
}
}
closedir($handle);
array_unshift($array, 'No Label');
return $array;
}
/**
* Returns the barcodes present for drawing.
*
* @return string[]
*/
function listbarcodes() {
include_once('barcode.php');
$availableBarcodes = array();
foreach ($supportedBarcodes as $file => $title) {
if (file_exists($file)) {
$availableBarcodes[$file] = $title;
}
}
return $availableBarcodes;
}
function findValueFromKey($haystack, $needle) {
foreach ($haystack as $key => $value) {
if (strcasecmp($key, $needle) === 0) {
return $value;
}
}
return null;
}
function convertText($text) {
$text = stripslashes($text);
if (function_exists('mb_convert_encoding')) {
$text = mb_convert_encoding($text, 'ISO-8859-1', 'UTF-8');
}
return $text;
}
?>