Verze 1.4.X
Obsah souboru:
script\CwgList\GgsCwgList.exe | plugin pro GgStat pro vložení seznamu CWG do statistiky |
script\CwgList\CwgList.lib.*.pas | knihovny s funkcemi pro obsluhu formulářu a makra gg?.pas |
script\CwgList\CwgList.config.pas | konfigurační soubor |
script\CwgList\CwgList.ggp.pas | makro na toolbar pro generování textového seznamu všech vlastněných CWG |
script\CwgList\CwgList.gge.pas | exportní makro pro generování textového seznamu všech vlastněných CWG |
script\CwgList\CwgLog.ggc.pas | makro pro uložení informací o CWG do databáze GeoGetu ze zobrazeného listingu keše |
script\CwgList\CwgLog.ggp.pas | makro pro uložení informací o CWG do databáze GeoGetu a hledání keší podle CWG uložených v jejich TAGu |
script\CwgList\CwgList.gge.pas | exportní makro pro generování textového seznamu všech vlastněných CWG |
script\CwgList\CwgCtlg.gfm | formulář pro výběr CWG ze seznamu |
script\CwgList\CwgForm.gfm | formulář pro určení vlastněných CWG |
script\CwgList\GgsCwgReadme.html | tento soubor |
Knihovny: | |
script\lib\StructString.lib.pas | knihovna pro práci se strukturovaným stringem |
script\lib\RelToAbsPath.lib.pas | funkce pro převod relativní cesty na absolutní |
Pro ladicí a demonstrační účely obsahuje balíček ještě následující dva soubory: | |
script\CwgList\GgsCwgTemplate.cz | minimální Template pro GgStat.exe, kterým se vygeneruje jen přehled CWG |
script\CwgList\GgsCwgTest.bat | dávka pro spuštění GgStatu tak, aby byl vstupem template a výstupem html se přehledem CWG |
GgsCwgList.exe
je plugin pro
GgStat.exe
, pomocí něhož je
možné do statistik vložit seznam a obrázky všech nalezených, vyměněných nebo
jinak získaných CWG. Seznam je tvořen kartami s CWG. Velikost a barvy karty
lze měnit. Údaje na kartě mohou obsahovat:
Všechny zobrazené informace lze doplnit o krátkou poznámku, která se objeví jako "bublina" při najetí myšího kurzoru na příslušné místo v kartě.
Lze definovat barvy a velikosti celého seznamu, karty, písma a obrázku CWG.
Seznam karet je definován při generování statistiky, plugin automaticky získává potřebné informace z databáze GeoGetu, z oficiálního CWG serveru, jehož informace doplňuje z častěji aktualizovaného Maxinohova serveru.
Plugin si uchovává poslední načtenou verzi seznamů a pokud nejsou seznamy dostupné online, použije tuto zálohu. Pro vytvoření seznamu není tedy nezbytně nutné být online. Seznam slouží i pro makro s formulářem jako zdroj dat pro výběr správného jména CWG
Volitelně je možné zařadit na začátek seznamu tlačítka pro změnu řazení karet s CWG.
Automatická instalace probíhá standardním postupem nejlépe pomocí správce
pluginů v GeoGetu
. Během instalace je převeden
starý formát záznamu o CWG na nový a protože došlo i ke změně formátu
offline katalogu, automaticky se načte z webu i poslední verze.
Nová instalace vytvoří samostatný adresář v DATADIR\script. Pro začlenění
výstupu do statistik je potřeba doplnit do souboru Template
volání pluginu a nastavení parametrů. Příkazy a parametry pluginu použité
v souboru Template
jsou uvedeny v části
Konfigurace pluginu.
Plugin načte z obou serverů nebo z uložené zálohy seznam všech CWG v katalogu a dostupné informace o nich. Rozsah informací se liší podle serveru, takže CWG, která nejsou v oficiálním katalogu, nemají některé odkazy klikací.
Plugin načte z databáze GeoGetu a ze souboru určeného příkazem
FileMyCwg
seznam všech vlastněných CWG a informace,
které mají upravit nebo doplnit podrobnosti o jednotlivých CWG. Vytvořený
seznam předá programu GgStat.exe
pro začlenění do
souboru se statistikou.
Plugin může nastavit GgStatu
proměnnou, která bude
obsahovat celkový počet vlastněných CWG. Tuto proměnnou je pak možné použít
třeba k doplnění textu pod obrázky s CWG. Viz níže příkaz
CwgCount
. Upozorňuji, že tato hodnota může být
vypsána až po zpracování seztnamu CWG, nelze tedy tímto způsobem vypsat počet
CWG například do nadpisu části statistik s CWG. (S jistým omezením leze počet
CWG získat také pomocí pluginu GgsExprTag
a tuto
hodnotu v nadpisu použít lze, pokud bude plugin použit před generováním
tabulky s CWG.)
Poznámka: | v současnosti Maxinohův server neobsahuje informace potřebné ke generování klikacích odkazů. Proto CWG, která nejsou v oficiálním katalogu a pro které plugin načte informace z tohoto serveru, nebudou mít jméno CWG klikací, ale jen vypsané běžným textem. |
Za normálních okolností asi parametry příkazového řadku nebudou nijak využívány.
Mohou se ovšem vyskytnout situace, kdy použití některého z nich bude užitečné.
V případě spouštění pluginu pomocí GgStat.exe
jsou parametry zapsány:
PLUGINSTART GgsCwgList.exe parametry
Parametry:
-c soubor | předá programu konfigurační soubor. Soubor obsahuje
stejné parametry jako při předání programem GgStat.exe |
-r soubor | vynutí použití souboru se seznamem CWG. Seznam je ve stejném tvaru jako uložená offline záloha katalogů |
-x | plugin se nebude pokoušet načíst online verze katalogů a rovnou použije offline zálohu |
Konfigurace se skládá z několika částí:
OfflineDir xxx | adresář, kde budou uloženy poslední načtené seznamy CWG, tato "záloha" může také sloužit k ověřování platných jmen CWG, viz níže | ||||||||
CardItems xxx | definuje, co bude
na kartě zobrazeno a v jakém pořadí. Jedná se o mezerou oddělený seznam
položek Příklad: CardItems Nick Date CWG
| ||||||||
TagName xxx | Kategorie TAGu, v kterém jsou uloženy nalezené CWG a upřesňující informace k zobrazení jednotlivých karet s CWG | ||||||||
FileMyCwg CP FILE | načte z uvedeného
souboru seznam vlastněných CWG. Je to jakási zjednodušená alternativa TAGu.
Každý řádek souboru obsahuje jméno jednoho CWG, soubor je kódován ve stránce
CP (možné hodnoty jsou utf-8 , cp1250 , ...). Lze kombinovat načítání
ze souboru i načítání z TAGu, takže pokud někdo u stávajících CWG nezná
příslušná data a u nových je chce evidovat, není v tom žádný problém.
Cesta k souboru je buďto absolutní nebo relativní vůči DATADIR. DATADIR
je aktuálním adresářem při spouštění všech pluginů z GeoGetu. | ||||||||
UseType xxx | zpracuje jen CWG, která
mají <TYP="xxx"/> , ostatní ignoruje.
To umožňuje rozdělit zpracování CWG do samostatných seznamů (např.
nalezené, vyměněné, vyměněné poštou, vlastní, CWG kačerů, CWG keší, ...).
Příkaz je možné použít vícekrát, v tom případě budou zpracovány
typy uvedené ve všech příkazech. | ||||||||
NoFromDb | plugin bude ignorovat CWG
uvedená v databázi GeoGetu a bude pracovat jen se souborem uvedeným
v příkaze FileMyCwg . Příkaz je dalším prostředkem,
jak rozdělit seznam CWG do více částí (např. získané v keši nebo mimo keš) | ||||||||
Sort xxx | podle čeho karty CWG seřadit; možné hodnoty jsou
| ||||||||
SortButtons xxx | seznam může obsahovat tlačítka pro změnu řazení CWG přímo ze stránky se zobrazeným seznamem. Řazení je realizováno pomocí Javascriptu, takže v závislosti na povoleném skriptování na serveru geocaching.com funkce řazení nemusí pracovat. Platné parametry jsou Yes nebo No. Implicitně tlačítka pro změnu řazení nejsou zobrazena. |
Následující hodnoty definují zobrazení informací. Jejich definice a zápis
hodnot odpovídá příslušným definicím v HTML. Jednotky velikostí nepoužívejte,
jsou vždy doplněny jako px
.
DivHeight xxx | zobrazená délka seznamu
CWG. Pokud bude seznam delší, bude mít rolovátko. 0
znamená, že bude zobrazen vždy celý seznam bez rolovátka |
DivWidth xxx | šířka tabulky se seznamem CWG |
CardWidth xxx | šířka jedné karty s CWG |
CardHeight xxx | výška jedné karty s CWG |
CardBorderSize xxx | tloušťka rámečku okolo karty |
CardBorderColor xxx | barva rámečku okolo karty |
CardBorderStyle xxx | styl rámečku okolo karty |
CardBgColor xxx | barva karty s CWG |
TableBgColor xxx | barva pozadí tabulky (implicitně je použitá tato hodnota z GgStatu jako první položka příkazu COLORS, tato hodnota má vyšší prioritu) |
TableColor xxx | barva písma tabulky a karet CWG (implicitně je použitá tato hodnota z GgStatu GgStatu jako druhá položka příkazu COLORS, tato hodnota má vyšší prioritu) |
ButtonColor xxx | barva tlačítek pro změnu řazení karet CWG (implicitně je použitá tato hodnota z GgStatu jako třetí položka příkazu COLORS, tato hodnota má vyšší prioritu) |
FontSize xxx | velikost použitého fontu |
FontFamily xxx | definice fontu |
CwgSize xxx | velikost obrázku s CWG |
CwgCount Jméno | plugin na konci své
práce předá GgStatu příkaz pro nastavení proměnné
Jméno tak, aby obsahovala celkový
počet vlastněných CWG. Tuto proměnnou je pak možné
využít třeba k výpisu souhrnného textu pod přehledem CWG.
Protože hodnota proměnné je předána zpět volajícímu
GgStatu , není možné tímto
způsobem hodnotu zobrazit před seznamem CWG. Zatím je
jedinou možností, jak ji zobrazit "dopředu", použít plugin
GgsExprTag , pomocí
něj spočítat počet CWG a zobrazit jej ještě před
voláním pluginu GgsCwgList . |
GeoGetu
a seznamu CWG
v souboru určeném příkazem FileMyCwg
. Pro manipulaci
s těmito informacemi jsou v distribučním balíčku 2 makra.
Jedno makro je aktivovatelné ze zobrazeného listingu keše (ggc) a
druhé makro ze seznamu zobrazených keší (ggp, zpracuje všechny označené
keše).
Při znalosti podrobností je možné použít i manuální
způsob pomocí nastavení TAGů vlastním GeoGetem
,
ale proč to dělat složitě, když existuje nástroj pro jednodušší manipulaci.
Pro všechna makra existuje společný konfigurační soubor
CwgList.config.pas
, který může být upraven ručně
nebo pomocí GeoGetu
a jeho funkce
Pluginy - Správce pluginů - Konfigurace pluginů
.
Pro správnou funkci zejména makra pro nastavení vlastněných CWG je třeba, aby
konfigurace byla v souladu s nastavením v Template
souboru (zejména nastavení Offline adresáře).
Minimální verze GeoGetu pro správnou funkci zobrazování
náhledu CWG je 2.3.2.
Protože manuální nastavení informací o CWG vyžaduje znalost formátu a jmen
proměnných, jsou součástí distribuce 2 makra, která umožňují nastavení
těchto informací pomocí dialogu (formuláře). Programové makro
(CwgLog.ggp.pas
) postupně nabízí ke
zpracování všechny keše označené v seznamu GeoGetu. Pro každou takovou keš
zobrazí seznam CWG k ní poznamenaných a umožní informace doplnit, opravit
a přidat nebo odebrat CWG.
Makro obsahuje 3 záložky:
Záložka plní následující funkce:
Makro pracuje nad seznamem keší, které jsou před vyvoláním makra označené
v hlavním okně GeoGetu
nebo nad seznamem keší,
které získá ze záložky Hledání keší podle CWG.
Funkce formuláře považuji za zřejmé, navíc po ponechání myšího kurzoru nad tlačítkem se zobrazí podrobnější vysvětlení jeho funkce. Ještě vysvětlím některé pojmy, na kterých je formulář postaven:
seznam keší | seznam označených keší v hlavním okně GeoGetu |
aktuální keš | keš, jejíž ID a jméno je zobrazeno tučně na vrchu formuláře |
seznam CWG | seznam CWG, které mají informace uložené v TAGu u aktuální keše. Pozor: odlišujte jej od seznamu CWG v katalogu |
aktuální CWG | CWG v seznamu, které je vybráno a označeno |
informace o CWG | podrobnosti o aktuálním CWG v seznamu se zobrazují v jednotlivých editačních polích, kde je možné je upravit |
Vedle pole pro nick
je tlačítko, které zobrazí
seznam všech CWG v obou katalozích a umožní vybrat správné jméno. To je sice
užitečná kontrola pro zadání správného jména, ale nejde jí využít, pokud
příslušné CWG ještě v žádném z katalogů není. (Typ katalogu je pro informaci
uveden u každého CWG za "svislítkem".)
Pro zobrazení seznamu CWG evidovaných v oficiálním katalogu využívá makro
offline zálohu vytvořenou pluginem GgsCwgList
.
Z formuláře je ovšem také možné tuto zálohu aktualizovat pomocí tlačítka
Nový seznam
v doplňkovém dialogu.
Protože načítání obrázků zobrazovaných tímto doplňkovým dialogem může nějakou dobu trvat (zejména na pomalejších linkách), usnadňuje formulář uživateli život:
Ze serveru
,
v tom případě se vždy načítá obrázek ze serveru a je možné tak aktualizovat
obrázek třeba po zařazení CWG do kataloguZáložka slouží k údžbě seznamu CWG, které nebyly získány v keších. Jsou zobrazeny dva seznamy - jeden s CWG v některém z katalogů, druhý s vlastěnými CWG. V seznamech lze vyhledávat "normálním psaním", po každém písmenu se přesune kurzor na první CWG, které odpovídá dosud zapsaným znakům.
Technicky je seznam CWG nevyzvednutých v keši řešen jako prostý textový
soubor, jehož použití definuje příkaz FileMyCwg
.
Soubor obsahuje na každém řádku jedno CWG, v případě potřeby doplněné o
verzi CWG a další údaje ve stejném formátu jako
v TAGu v u keše v databázi Geogetu a je možné
jej upravovat i přímo v poznámkovém bloku nebo podobném editoru.
Záložka slouží k vyhledání keše podle CWG, s vyhledanou keší či kešemi pak umožňuje:
CWG v keších
CWG v keších
Makro CwgLog.ggc.pas
slouží k vyvolání stejného
formuláře jako je v makru CwgLog.ggp.pas
, ale pro
keš, jejíž listing je právě zobrazen.
Součástí distribuce je exportní makro (gge) a programové makro (ggp), jejichž úkolem je vytvořit soubor s abecedně seřazeným seznamem CWG, který by měl sloužit jako přehled vlastněných CWG při vlastním lovu, kdy nebývá zvykem mít k dispozici GeoGet s jeho databází.
Exportní makro se na jméno souboru pro uložení seznamu optá, programové
makro seznam uloží do souboru uvedeného v konfiguračním souboru v proměnné
FILE_EXPORT
.
Formát výstupu určuje parametr FILE_OUTPUT_TYPE
,
který může nabývat jedné z hodnot: TXT
,
CSV
, GPX_POI
nebo může být
prázdný. V posledním případě je formát určen automaticky podle přípony
výstupního souboru.
Typ GPX_POI
(přípona gpx
)
znaméná, že seznam bude vytvořen jako popis POI bodu. Bod je umístěn na
souřadnice referenčního bodu, jehož jméno je v konfiguračním souboru v proměnné
CWG_POI_POSITION
. Jestliže takový referenční bod
nebude nalezen, budou použity souřadnice [50.0; 14.0]. Předpokládá se, že
soubor bude nahrán do GPS pomocí POILoaderu a ideálně bude vše automatizováno
pomocí
pluginu Combine
(proto také ukončení tvorby souboru není oznámeno). Seznam tak bude v terénu
vždy při ruce a aktuální.
Proměnná v konfiguračním souboru
řídí rozdělení CWG do WPT bodů, pod kterými bude jejich seznam k dispozici.
Pokud je Proměnná prázdná, budou všechny CWG v jedinem seznamu. Pokud prázdná
není, obsahuje seznam znaků (písmen), pro které se vytvoří vždy nový WPT.
Na příklad
GXP_POI_RANGE_CHARS='N'
rozdělí seznam
do dvou WPT, v prvním budou CWG začínající znaky s ASCII menšími než
N
a ve druhém budou N
až
Z
. Lze takto vytvoři bodů i více
(GXP_POI_RANGE_CHARS='DJO'
), jen pozor na písmeno
Ch
, které bude sice zařazeno správně z H, ale
pokud bude posledním CWG v seznamu příslušného WPT, WPT ponese ve jméně
příznak, že obsahuje CWG do písmena C
.
Typ CSV
(přípona csv
) -
vytvořený seznam bude ve formátu snadno zobrazitelném např. v Excelu a v tom
případě může být v konfiguračním souboru určen i počet sloupců a směr
řazení CWG v tabulce.
CSV_COLS | definuje počet sloupců v tabulce |
CSV_INCNUM | obsahuje jednu z hodnot
HORIZONTAL nebo VERTICAL ,
která říká, jakým směrem budou CWG řazena vzestupně - po řádcích nebo
po sloupcích. |
AHA & team
má CWG pojmenované AHAteam
DinoKo
má na CWG uvedeno DinoKo team
jope_cz
má CWG JOPEteam
Katulinka
má na CWG uvedeno Katulinka & Burisek
Kocovina
má na CWG uvedeno Kocovina & Team
mapa a peta
mají na svém CWG napsáno mata & peta
o_three
mají na CWG text o_htree & family
Shine-sama
má na svém CWG uvedeno oncem (mr.kejm)
Ventube
má CWG pojmenované GCNZOP Ventube
s velkým O namísto 0K vyhledání platného jména může dobře posloužit offline záloha seznamů načtených ze serverů nebo odpovídající funkce ve formuláři makra pro úpravu hodnot TAGu s CWG.
CWGrrrrmmdd
, kde rrrr
je rok, mm
měsíc a dd
den).FileMyCwg
pro určení souboru se seznamem vlastněných CWG jinak, než pomocí TAGu.
CWG určená pomocí tohoto souboru mají v informacích zobrazených na kartě
některá omezení, např. nelze definovat bublinu u keše.
Gordíci (<DAT="23.10.2010"/><ID="moje CWG"/><TXT_ID="dostal jsem
ho poštou od výrobce"/>)
<proměnná="text"/>
<ID="výměna poštou"/>
<DAT="15.3.2010"/>
<ID="výměna"/>
<TXT_NICK="s majitelem CWG jsem se potkal na této keši při FTF"/>
<TXT_DAT="datum nálezu je nejisté, nepamatuju si jej"/>
<TXT_ID="vlastně ani nevím, jestli jsem CWG našel v této keši"/>
(pokud tato proměnná nebude uvedena, v bublině se zobrazí
jméno keše)<TXT_CWG="text bubliny zobrazené u obrazku CWG"/>
(pokud tato proměnná nebude uvedena, zobrazí se číslo CWG)<VER="2"/>
<TYP="keramická destička"/>
<TYP="vizitka"/>
<TYP="kovová známka"/>
TYP
je nastaven na jiný SigItem. Pro CWG je GUID načítán z katalogu, ale
pro jiné typy osobních předmětů žádné katalogy neexistují, proto je zde
tato cesta, jak propojit předmět s profilem. Příklad:<GUID="cda79ad8-fea4-4fe6-7c577f8823b5"/>
<URL="http://server.cz/obrazek.jpg"/>
Pro nastavení TAGu pomocí GeoGetu
postupujte
následujícím způsobem:
Změnit tagy
Přidat ...
a jako kategorii
napište nebo vyberte ze seznamu CWG
(pozor, na
velikosti písmen záleží!)Gordíci (<TXT_NICK="moje vlastní CWG"/>)
Tímto postupem může být k jedné keši doplněno i více samostatných TAGů, tedy i více CWG. V dialogu pro úpravu TAGů pak budou všechna takto přidaná CWG pěkně pod sebou a přitom každé samostatně.
Pokud má "keš obsahovat" více CWG, je třeba pro každé CWG přidat samostatný TAG.
Jméno kategorie musí odpovídat příkazu TagName
,
hodnota CWG
je implicitní.
Příslušná minimální část souboru Template s definicemi pro použití pluginu
je v přiloženém souboru GgsCwgTemplate.cz
.
V ukázce se předpokládá, že plugin je umístěn v adresáři script\CwgList. U každého příkazu jsou stručné vysvětlivky. Všechny uvedené hodnoty jsou implicitní, proto může řádek zůstat jako komentář. Tuto část textu stačí zkopírovat na příslušné místo v používaném Template souboru, vytvořit vlastněných CWG nalezených v keších nebo mimo keše a spustit generování statistiky.