<?php

/**
 * na zaklade povinnych parametru title, list, values vytvori html tabulku s vypisem vysledku dotazu do databaze
 * pokud se zadaji nepovinne parametry actions, parametr1, parametr2, parametr3 vytvori html odkazy pro dalsi zpracovani vcetne moznosti poslat az tri parametry 
 * \param array $params: pole proměnných prevzatých z sablony. Musí obsahovat vyse uvedene promenné
 * \param object &$smarty: objekt smarty 
 * \return false pokud dojde k chybě 
 */

  
function smarty_function_view_result($params,&$smarty)
{
  global $webdoc;
  extract($params); //vytvoreni samostatnych promennych z pole $params
  $params["smarty_include_vars"]=Array(); //definovani novych promennych v $params, bez nich to nebude fungovat
  
  if (!isset($title) OR !isset($list) OR !isset($values)) // kontrola, zda byly zadany povinne parametry
  {
    $smarty->trigger_error("insert_form: nebyl zadan nektery z povinnych parametru..."); //Smarty error
    return false;
  }
  else
  {
    // $output = "<table class=array border=0>\n"; // vytvoreni tabulky
    $output .= "<tr>";
    foreach ($title as $key_title=>$val_title) // vytvoreni zahlavi poli pro tabulku z pole title
      if ($val_title=="Actions") $output .= "<th class=noprint>" . $val_title . "</th>";
      else $output .= "<th>" . $val_title . "</th>"; 
    $output .= "</tr>\n";
    
    
    foreach ($list as $key_list=>$val_list) // vytvoreni tabulky, ve ktere jsou zobrazena data z SQL dotazu
    {
      if (isset($color) && ($val_list["$color"]==$webdoc["$color"])) // jestlize je zadano pole, podle ktereho se ma resit podbarveni u aktualniho zaznamu
      $output .= "<tr class=actual>";
      else
      $output .= "<tr>";
      
      foreach ($values as $key_values=>$val_values)
      {
        if (isset($terminate) && ($val_list["terminator_id"]<>0)) // jestlize je nastavena promenna $terminate (s jakoukoli hodnotou) kontroluje, zda nejsou zanamy terminated a podle toho je preskrtne, nebo ne
        {
          $output .= "<td><strike>" . $val_list["$val_values"] . "</strike></td>";
        }
        else
        {
          $output .= "<td>" . substr((strip_tags($val_list["$val_values"])),0,100) . "</td>"; // zobrazeni hodnoty spolu s orezanim na 100 znaku
        } 
      }
      $i=0;
      if (isset($actions)) // jestlize se maji s vypsanymi zaznamy provadet akce, nacte pole akci s nazvy prislusnych zpracovavajicich skriptu
      {
        $i=0;
        $output .= "<td class=noprint>| ";
        
        foreach ($actions as $key_actions=>$val_actions) // ziskani jednotlivych actions
        {
          if (!isset($role) OR ($webdoc["role_id"]<=$role[$i])) // kontroluje, zda je uzivatek opravnen videt danou action 
          {
            if (isset($_GET["subpage3"])) $output .=  "<a href=./?subpage1=" .$_GET["subpage1"]. "&subpage2=" .$_GET["subpage2"]. "&subpage3=" .$actions[$key_actions];
            else  $output .=  "<a href=./?subpage1=" .$_GET["subpage1"]. "&subpage2=" .$actions[$key_actions];
            if (isset($parametr)) // jestlize je zadan parametr k actions, vytvor je
            {
              foreach ($parametr as $key_parametr=>$val_parametr)
              {
                if ($val_parametr!="version" OR ($val_parametr=="version" && $val_list["current"]==0))
                $output .= "&" .$val_parametr. "=" .$val_list["$val_parametr"];
              }
            }
            $output .= " >" .$key_actions. "</a> | ";
          }
          $i++;
        }  
        $output .= "</td>";
      }
      $output .= "</tr>\n";
    } 
    
    // $output .= "</table>";
    
    return $output;  
  }
}

?>
