/** * Print generic normal Item Cell * * @param $type display type (0=HTML, 1=Sylk,2=PDF,3=CSV) * @param $value value to display * @param &$num column number * @param $row row number * @param $extraparam extra parameters for display (default '') * * @return string to display * */ static function showItem($type, $value, &$num, $row, $extraparam = '', $params = array()) { $out = ""; switch ($type) { case Search::PDF_OUTPUT_LANDSCAPE: //pdf //pdf case Search::PDF_OUTPUT_PORTRAIT: global $PDF_TABLE; $value = preg_replace('/' . Search::LBBR . '/', '<br>', $value); $value = preg_replace('/' . Search::LBHR . '/', '<hr>', $value); $PDF_TABLE .= "<td {$extraparam} valign='top'>"; $PDF_TABLE .= Html::weblink_extract(Html::clean($value)); $PDF_TABLE .= "</td>\n"; break; case Search::SYLK_OUTPUT: //sylk global $SYLK_ARRAY, $SYLK_HEADER, $SYLK_SIZE; $value = Html::weblink_extract($value); $value = preg_replace('/' . Search::LBBR . '/', '<br>', $value); $value = preg_replace('/' . Search::LBHR . '/', '<hr>', $value); $SYLK_ARRAY[$row][$num] = Search::sylk_clean($value); $SYLK_SIZE[$num] = max($SYLK_SIZE[$num], Toolbox::strlen($SYLK_ARRAY[$row][$num])); break; case Search::CSV_OUTPUT: //csv $value = preg_replace('/' . Search::LBBR . '/', '<br>', $value); $value = preg_replace('/' . Search::LBHR . '/', '<hr>', $value); $value = Html::weblink_extract($value); $quotes = ""; if ($params['quotes']) { $quotes = "\""; } switch ($params['encoding']) { case self::ANSI_ENCODING: $out = "{$quotes}" . Toolbox::decodeFromUtf8(Search::csv_clean($value), 'windows-1252') . "{$quotes}" . $_SESSION["glpicsv_delimiter"]; break; case self::UTF8_ENCODING: $out = "{$quotes}" . Search::csv_clean($value) . "{$quotes}" . $_SESSION["glpicsv_delimiter"]; break; } break; default: $out = "<td {$extraparam} valign='top'>"; if (!preg_match('/' . Search::LBHR . '/', $value)) { $values = preg_split('/' . Search::LBBR . '/i', $value); $line_delimiter = '<br>'; } else { $values = preg_split('/' . Search::LBHR . '/i', $value); $line_delimiter = '<hr>'; } $limitto = 20; if (count($values) > $limitto) { for ($i = 0; $i < $limitto; $i++) { $out .= $values[$i] . $line_delimiter; } // $rand=mt_rand(); $out .= "... "; $value = preg_replace('/' . Search::LBBR . '/', '<br>', $value); $value = preg_replace('/' . Search::LBHR . '/', '<hr>', $value); $out .= Html::showToolTip($value, array('display' => false, 'autoclose' => false)); } else { $value = preg_replace('/' . Search::LBBR . '/', '<br>', $value); $value = preg_replace('/' . Search::LBHR . '/', '<hr>', $value); $out .= $value; } $out .= "</td>\n"; } $num++; return $out; }