<?php

include_once("utility.php");
include_once("dbutility.php");

class FieldRender {

    public static function renderField($fieldobj, $segnaposto = null, $extra = "") {

        $type = isset($fieldobj->type) ? $fieldobj->type : null;
        $name = isset($fieldobj->fieldname) ? $fieldobj->fieldname : null;
        $val = "";

        if ((strpos($name, "_id") && ($name != "dd_id")) || ($name == 'ut_dip')) {
            $val = getIDValue($fieldobj);
        } else {
            $val = $fieldobj->value;
            switch ($type) {

                case "date":
                    $val = print_date($val);
                    break;

                case "datetime":
                    $val = print_datetime($val, "date");
                    break;
            }
        }

        if (!isset($segnaposto))
            $segnaposto = $name;
        $s = self::render($segnaposto, $val, $extra);

        return $s;
    }

    public static function render($name, $val, $extra = "") {

        global $$name;

        if ($val != "") {
            $val = SQL_unescape($val);

            if (strpos($name, "_url")) {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span class=\"obj_name\">" . $$name . "</span><span class=\"colon\">: </span><a class=\"obj_value\" href=\"" . $val . "\" target=\"_blank\">" . $val . "</a>";
                $s.="$extra</div>";
            } else if (strpos($name, "_file")) {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span class=\"obj_name\">" . $$name . "</span><span class=\"colon\">: </span><span class=\"obj_value\">" . $val . "</span>";
                $s.="$extra</div>";
            } else if (strpos($name, "_tel") || strpos($name, "_email") || strpos($name, "_fax")) {
                $s = "<div class=\"" . $name . "\">";
                $s.="<span class=\"obj_value\">" . $val . "</span>";
                $s.="$extra</div>";
            } else if ($name == "rm_note") {
                $s = "<div class=\"$name\">";
                $s.="	<span class=\"obj_value\">" . $val . "</span> ";
                $s.="$extra</div>";
            } else if ($name == "dd_note") {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span class=\"obj_name\">" . $$name . ":</span> <span class=\"obj_value\">" . $val . "</span>";
                $s.="$extra</div>\n";
            } else if (strpos($name, "_stato")) {
                $s = "<span class=\"" . $name . "\">";
                $s.="	<img src=\"images/mynilde/rm_stato" . $val . ".png\">";
//                DIADOSIS TEAM Add explanation span regarding status of a request in user's home page
                switch ($val) {
                    case '10':
                        $s .= "&nbsp;<span class=\"label label-info\">" . getConstVar($name . $val) . "</span>";
                        break;
                    case '20':
                        $s .= "&nbsp;<span class=\"label label-warning\">" . getConstVar($name . $val) . "</span>";
                        break;
                    case '30':
                        $s .= "&nbsp;<span class=\"label label-success\">" . getConstVar($name . $val) . "</span>";
                        break;
                    case '31':
                        $s .= "&nbsp;<span class=\"label label-danger\">" . getConstVar($name . $val) . "</span>";
                        break;
                    default:
                        $s .= "&nbsp;<span class=\"label label-default\">" . getConstVar($name . $val) . "</span>";
                        break;
                }
                $s.="$extra</span>";
            } else if (strpos($name, "_datarichie")) {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span class=\"obj_name\">" . $$name . ": </span>";
                $s.="	<span class=\"obj_value\">" . print_datetime($val, "date") . "</span> ";
                $s.="$extra</div>\n";
            } else if (strpos($name, "_sosp")) {
                $s = "	<span class=\"obj_value\">" . print_datetime($val, "date") . "</span> ";
            } else if (strpos($name, "_countbib") || strpos($name, "_nprotrichie") || strpos($name, "_nproteva") || strpos($name, "_collocazione") || strpos($name, "_ninventarioforni") || (strpos($name, "_id") && $name != "qu_id" && $name != "di_id" && $name != "en_id" && $name != "pr_id" && $name != "na_id" && $name != "prov_id" && $name != "ed_id" && $name != "piatt_id" && $name != "contr_id")) {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span>" . $$name . ":</span>" . $val;
                $s.="$extra</div>\n";
            } else if (strpos($name, "costo")) {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span class=\"obj_name\">" . $$name . "</span><span class=\"colon\">: </span>";
                $s.="	<span class=\"obj_value\">" . $val . " &euro;</span> ";
                $s.="$extra</div>\n";
            } else if (strpos($name, "_check")) {
                $s = "<div class=\"" . $name . "\">";
                $chk = "";
                if ($val == 1)
                    $chk = "checked=\"checked\"";
                if ($val == 0)
                    $chk = "";
                $s.="	<span class=\"obj_name\">" . $$name . "</span><span class=\"colon\">: </span><input type=\"checkbox\" disabled=\"disabled\" value=\"$val\" $chk class=\"obj_value\">";
                $s.="$extra</div>";
            }


            else {
                $s = "<div class=\"" . $name . "\">";
                $s.="	<span class=\"obj_name\">" . $$name . "</span><span class=\"colon\">: </span>";
                $s.="	<span class=\"obj_value\">" . $val . "</span> ";
                $s.="$extra</div>\n";
            }
        } else
        if ($name == "rm_note") {
            $s = "<div class=\"rm_note\">";
            $s.="	<span>" . getConstVar("NO_RM_NOTE") . "</span>";
            $s.="$extra</div>";
        }
        if (isset($s))
            return $s;
        else
            return null;
    }

}

?>
