|
- <?php
- if (!defined('IN_CB')) { die('You are not allowed to access to this page.'); }
-
- $imageKeys = array();
- function registerImageKey($key, $value) {
- global $imageKeys;
- $imageKeys[$key] = $value;
- }
-
- function getImageKeys() {
- global $imageKeys;
- return $imageKeys;
- }
-
- function getElementHtml($tag, $attributes, $content = false) {
- $code = '<' . $tag;
- foreach ($attributes as $attribute => $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 .= '<optgroup label="' . $optionKey . '">' . getOptionGroup($optionValue, $currentValue) . '</optgroup>';
- } 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 = '<input type="button" value="' . $finalValue . '" data-output="' . $output . '"' . ($escaped ? ' data-escaped="true"' : '') . ' />';
- 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;
- }
- ?>
|