Programujeme Google Gadgets Miroslav Slavik Copyright © Gug.cz, 2007 Gug.cz
Google Gadget Gadget
pomůcka pomůcka vynález vynález vtipná věc vtipná věc mechanismus mechanismus Gadget Gadget Google nul hodně velké číslo Nejznámější vyhledávač Narozeniny: 09/1998
Google GG je mini aplikace, ktera muže běžet na Google homepage – iGoogle, může být vložena na Google Desktop, či na jakoukoliv internetovou stranku GG muže být jednoduchá HTML stránka, či komplexní aplikace... a nebo cokoliv co VÁS NAPADNE Gadget Gadget
GG - Trocha teorie GG - Trocha teorie GG poskytuje snadnou cestu jak publikovat téměř jakýkoliv obsah na: iGoogle = Google Homepage Google Desktop Page Creator Jakákoliv stranka … jste-li admin … jste-li admin
... samozřejmě existuji vyjímky NELZE použit Desktop Gadget na iGoogle NELZE použit „inline“ gadget pro Google Desktop nebo Google Page Creator Google Page Creator podporuje „title bar“ a „user preferences“ jen v editačním modu
... a jdeme na to Kde začit? Kde začit?
„Hello World“ Jak jinak začít ukázku programovaní Jak jinak začít ukázku programovaní
„Hello World“ – jak jinak … „Hello World“ – jak jinak … počitač operační system funkční připojení k Internetu „moderní“ browser s podporou JavaScriptu opravdu nic vic
„Hello World“ – jak jinak … „Hello World“ – jak jinak …
„Hello World“ GGE Demo
Hello World ještě jednou … Google Code Hosting Subversion client (TortioseSVN, AnkhSVN, ZigVersion, RapidSVN) Textovy editor (PSPad … ) FireFox + WebDeveloper + Firebug
„Hello World“ Google Code Demo
Anatomie gadgetu <Content> <UserPref><ModulePrefs>
Anatomie gadgetu – UserPref User Preference Substitution Variables title atribut __UP_name__ (HTML escaped) title atribut __UP_name__ (HTML escaped) title_url atribut __UP_name__ (URL escaped) title_url atribut __UP_name__ (URL escaped) HTML __UP_name__ (HTML-escaped) HTML __UP_name__ (HTML-escaped) JavaScript _IG_Prefs() JavaScript _IG_Prefs()
Publikování Příprava Testovat šířku/výšku iGoogle, Page Creator Content Directory Syndication Nemůže být „inline” Nemůže ukládat stav Nemůže dynamicky nastavovat výšku _IG_AdjustIFrameHeight() Nemůže zobrazit User Preference funkcionalita by na jejich nastavení nemela být závislá
Tvorba uživatelského rozhraní Výška gadgetu Default = 200px; Default = 200px; _IG_AdjustIFrameHeight() _IG_AdjustIFrameHeight() Nastavení titulku _IG_SetTitle(title) _IG_SetTitle(title) Záložky – Tabs JavaSript funkce + CSS Dynamicky vytvářene založky Dynamicky vkladaný obsah
Tvorba uživatelského rozhraní Drag ; source, target, surrogate ; source, target, surrogateMiniMessages ; reklama, stav, chyba,... ; reklama, stav, chyba,...Grid Indexovaná pole Drag sensitive Flash
Financial Gadgets Google Finance - Finance Market Data API
Remote Content _IG_FetchContent(url, func) _IG_FetchContent(url, func) Vrátí obsah specifikovaný url parametrem jako text. Používá se pro čtení HTML dokumentů _IG_FetchContent(url, func) _IG_FetchXmlContent(url, func) _IG_FetchXmlContent(url, func) Vrátí XML specifikované url parametrem jako DOM objekt _IG_FetchXmlContent(url, func) _IG_FetchFeedAsJSON(url, func, num_entries, get_summaries) _IG_FetchFeedAsJSON(url, func, num_entries, get_summaries) Vrátí RSS specifikované url parametrem jako JSON objekt _IG_FetchFeedAsJSON(url, func, num_entries, get_summaries)
Remote Content Dynamická výška Ukládaní stavu Demo
Internationalization Vytvořte gadget. Vyjměnte všechny texty, ktere musí být přelozeny a umístete je do „message bundles“. message bundlesmessage bundles Sežeňte nekoho, kdo to přelozí. Překladatel vytvoří novy message bundle pro určený jazyk (fr), nebo zemi (ca-fr). Všechny neanglické texty musi vyt ulozene v UTF-8 formátu. message bundlemessage bundle Překladatel vam pošle URL nového „bundle“. Modifikujte gadget tak aby využíval novy „bundle“. Pokud je gadget publikován do Content Directory, vyčkejte 1-2 týdny, než bude gadget zaindexovan a zpřistupněn pro cílovou zeni/jazyk.
Internationalization Demo
Diskuze... konec