Definování vzhledu klienta
Obsah
Úvod
HTML klient se většinou skládá z několika rámců. Velikost těchto rámců a další nastavení jsou popsány v konfiguračním souboru window_schema.inc. Umístění, obsah a jiné vlastnosti těchto rámců jsou definovány v adresáři tms/.admin/mapclient v souboru, který nese název mapového klienta (např. all.inc, map.inc atd.).
Popis parametrů
Konfigurační soubor {název klienta}.inc definuje proměnnou FRAMES, která obsahuje hierarchii rámců HTML klienta. Tato hierarchie je popsána vícenásobným asociativním polem, kde každé toto pole tvoří konkrétní rámec. Při každém zanoření pole v hierarchii se mění horizontální a vertikální směr rámce. Počáteční směr je určen proměnnou FRAMES_DIRECTION (může nabývat hodnot "rows" a "cols").
Následující příklad popisuje 3 rámce ve vertikálním směru, kde druhý rámec se skládá ze 3 rámců v horizontálním směru.
Každý rámec může mít tyto základní vlastnosti:
-
type - typ rámce
-
name - název rámce
-
script - obsah rámce (jaký skript nebo HTML stránka bude načtena
)
-
height - výška rámce
-
width - šířka rámce
-
cond - podmínka, jenž určuje, v kterém prohlížeči se má rámec zobrazit
- hodnota "ie" znamená prohlížeč Internet Explorer
- hodnota "nc" znamená prohlížeč Netscape
Typ rámce může nabývat těchto hodnot (zároveň jsou některé typy rozšířeny o další parametry):
-
map - mapové okno
Další parametry:
- align - umístění mapy v případě nevyužitého místa (hodnoty: left, right, center)
-
interface - komunikační okno (pomocí něj komunikuji externí aplikace nebo agendy s mapovým klientem)
Další parametry:
- marginwidth - parametr marginwidth pro element frame
- scrolling - zda má mít okno scrollbar (hodnoty: true,false)
-
panel - okno pro panel nástrojů a funkcí
Další parametry:
- scrolling - zda má mít okno scrollbar (hodnoty: true,false)
-
arrows - okno pro šipky okolo mapy pro posun v mapě
Další parametry:
- margin - parametr marginwidth a marginheight pro element frame
- scrolling - zda má mít okno scrollbar (hodnoty: true,false)
-
empty - prázdné okno, pro vyplnění prázdných částí klienta
Další parametry:
- marginwidth - parametr marginwidth pro element frame
- scrolling - zda má mít okno scrollbar (hodnoty: true,false)
-
ostatní - okno pro jiné nebo nové skripty
Další parametry:
- marginwidth - parametr marginwidth pro element frame
- marginheight - parametr marginheight pro element frame
Příklady nastavení
Jednoduchý příklad:
<?
$FRAMES_DIRECTION = "rows";
$FRAMES = array(
array("type"=>"panel", "name"=>"map_panel", "width"=>30),
array(
array(
"type"=>"map",
"name"=>"map",
"script"=>FileUp2('map_loading.php')."?client_lang=cz_win",
"width"=>300,
"height"=>200
),
array("type"=>"empty", "name"=>"map_info", "width"=>150),
array("type"=>"empty", "name"=>"map_interface", "width"=>0)
),
array("type"=>"empty")
);
?>
Na obrázku vypadá schéma tohoto klienta takto:

Složitější příklad:
<?
$FRAMES = array(
array(
"type"=>"arrows",
"name"=>"name",
"script"=>FileUp2("banner.php")."?type=$type",
"height"=>"70",
"width"=>"100%",
"margin"=>0
),
array(
array(
"type"=>"arrows",
"script"=>FileUp2("panel_arrows.php")."?type=left".$arrows,
"width"=>$p_arrow_width
),
array(
array(
"type"=>"arrows",
"script"=>FileUp2("panel_arrows.php")."?type=top".$arrows,
"height"=>$p_arrow_height
),
array(
"type"=>"map",
"name"=>"map",
"script"=>FileUp2('map_loading.php').($client_lang?"?client_lang=".$client_lang:""),
"width"=>$properties["map"]["width"],
"height"=>$properties["map"]["height"]
),
array(
"type"=>"arrows",
"script"=>FileUp2("panel_arrows.php")."?type=bottom".$arrows,
"height"=>$p_arrow_height
)
),
array(
"type"=>"arrows",
"script"=>FileUp2("panel_arrows.php")."?type=right".$arrows,
"width"=>$p_arrow_width
),
array(
"type"=>"empty",
"width"=>10
),
array(
array(
"type"=>"panel",
"name"=>"map_panel",
"width"=>$properties["panel"]["width"]
),
array(
"type"=>"map",
"name"=>"map_overview",
"script"=>"empty.php?nohr=1",
"width"=>$properties["overview"]["width"],
"height"=>$properties["overview"]["height"]
),
array(
"type"=>"arrows",
"script"=>FileUp2("reference.php")."?type=link",
"height"=>$p_arrow_height
)
),
array(
"type"=>"empty",
"name"=>"map_interface",
"type"=>"interface",
width=>array("IE"=>6,"NW"=>10,"NU"=>12))
),
array("type"=>"empty")
);
?>