Nahrávání souborů s využitím ASP.net AJAX UpdatePanel

31. května 2008 18:41
webové stránky

Používáte ve svých aplikacích ASP.net AJAX a také jste si oblíbili možnost využívání UpdatePanelu k přenesení některých částí provádění vaší aplikace až na klienta? Vždyť díky tomu nemusí docházet k neustálému znovunačítání stránky. Jenže jak pak uploadovat soubory na server?

Pokud chcete umožnit uživateli do vaší webové aplikace nahrávat soubory ze svého počítače, v ASP.NET stačí do stránky vložit ovládací prvek FileUpload a zavolat metodu FileUpload.SaveAs(cesta_k_souboru_na_serveru) a vše je vyřešeno. Jenže, když tento prvek umístíte do ASP.net AJAX UpdatePanelu, tak narazíte! Žádný soubor se nikam nenahraje, neboť najednou, jakoby z ničeho nic, FileUpload neobsahuje žádný soubor z klientova počítače.

Problém je v tom, že pro nahrávání souboru z klienta na server se používá hlavička (X)HTML stránky, která se přenáší na server metodou POST při volání nějaké URL. Jenže když použijete ASP.net AJAX UpdatePanel, tak k žádnému volání stránky na serveru nedojde (tedy alespoň ne se standardně používaným reloadem stránky) a tedy ani k přenosu hlavičky se souborem. To je tedy potřeba nějak vyřešit a donutit vaši AJAX aplikaci, aby při vyvolání programu, který má soubor uploadovat na server stránku poslala, přestože je program vykonán JavaScriptem jen u klienta.

Nejjednodušším a nejčistším řešením je, dle mého názoru, využití asynchronního volání stránky. Do ASP.NET stránky stačí vložit skryté tlačítko (<asp:button runat="server" visible="false" />), které bude skutečně realizovat program uploadující (a případně i dále zpracovávající) soubor a přitom se vše vykoná na serveru při znovuvolání stránky. A původnímu tlačíku, které má „opticky“ zajistit upload souboru na server, a je společně s FileUpload umístěné v UpdatePanelu, jen nastavit vyvolání původního výkonného programu uploadu souboru skrytého tlačítka, k události onclick viditelného tlačíka, která je však volána AJAXem na straně klienta.

Postup si ukážeme na jednoduchém příkladě

Formulář pro uploadování (vložen do UpdatePanelu)

Stránka s objekty pro upload souboru

Zdrojový kód řešení ASP.NET stránky

<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
    <ContentTemplate>
        <asp:FileUpload ID="soubor" runat="server" />  
        <asp:Button ID="tlacitkoViditelne" runat="server" Text="Nahraj soubor..." />
    </ContentTemplate>
</asp:UpdatePanel>

<asp:Button ID="tlacitkoSkryte" runat="server"
    Visible="false" OnClick="TlacitkoUpload_Click" />

Zdrojový kód oblužného programu

protected void Page_Init(object sender, EventArgs e)
{
    // přidání obsluhy volající kliknutí na tlačítko mimo UpdatePanel,
    // tak dojde k asynchronní obsluze a soubor se načte
    tlacitkoViditelne.Attributes.Add("onclick",
        Page.ClientScript.GetPostBackEventReference(tlacitkoSkryte, ""));
}

protected void TlacitkoUpload_Click(object sender, EventArgs e)
{
    // zde doplníte potřebné zpracování a uložení souboru na server
    if (soubor.HasFile)
    {
        soubor.SaveAs(Server.MapPath("/data/" + soubor.FileName));
    }
}

Jak je vidět z ukázky, jediné co do vaší současné aplikace musíte přidat je právě ono neviditelné tlačítko. Pak přiřadíte asynchronní obsluhu události OnClick pomocí Page.ClientScript.GetPostBackEventReference() k tlačítku pro upload. A nakonec program zajišťující zpracovávání uploadovaného souboru připojit k události OnClick neviditelného tlačítka. Tento program se již provede na serveru, a tak dojde k volání stránky na webovém serveru a tím i k přenostu souboru od klienta na server.

jerrysohn | trvalý odkaz | přidej komentář

Portál ŠIIP.cz a nová verze Gryphoon

17. května 2008 13:29
webové stránky

V pátek 16. května brzy nad ránem jsem dokončil poslední úpravy v programu své bakalářské práce, která se zabývala vzdělávacími moduly do portálu ŠIIP. A ač jsem to původně neměl vůbec v plánu, tak jsem nakonec k portálu spustil i web ŠIIP.cz, který jsem zprovoznil na nové verzi blogovacího systému Gryphoon 1.82, kterou jsem pro tento web připravil.

Abych se přiznal, tak dokončení mé bakalářské práce bylo relativně hodně náročné. Nejenom že programování samotných vzdělávacích modulů zabíralo opravdu hodně času, ale i samotné napsání textu bakalářky doplněného o dvě kompletní příručky pro uživatele a správce portálu bylo docela dost zdlouhavé. A tak se lidé v mém okolí bohužel nemohli divit, že poslední dva měsíce jsem nedělal v podstatě nic jiného než bakalářku. Ale snad to přinese konečné své ovoce.

Když už jsem se rozhodl, jeden den před odevzdáním finální bakalářky, že pořídím doménu siip.cz, tak mi to nedalo a pustil jsem se i do nějakých úprav redakčního systému Gryphoon. Díky tomu vznikla nová verze 1.82. Do této verze jsem zařadil (již na mém blogu provozovanou) ochranu proti spamům v komentářích, ale hlavně jsem redakční část doplnil o kompletní správu souborů, která nyní mimo jiné umožňuje přikládat soubory ke stažení přímo pod jednolivé články. Jednotlivé soubory jsou kromě disku serveru také zaznamenávány do databáze, a díky doplnění skriptu pro stahování souborů se správným ContentType, je možné stahovat soubory z článků, tak že uživatel nevidí strukturu souborů na disku (to otvírá možnost využití vyššího zabezpečení souborů ke stažení na webu). Redakční část také začala používat komponenty ASP.net AJAX ControlToolkit, takže jsem portál již spustil na .NET Frameworku 3.5, který do budoucna nabízí další zajímavé možnosti rozvoje portálu.

Takže teď uvidíme, jak se dohodnu s Raroušem, zda tuto mou upravenou verzi vypustíme oficiálně mezi lidi na webu Gryphoonu a nebo zda dokončí úplně novou verzi 2.0 a teprve tu, pustí ven. Uvidíme… V každém případě pokud vás zajímá, jak nová verze pracuje, podívejte se na www.siip.cz (kde také najdete reálně běžící demo portálu ŠIIPu včetně vzdělávacích modulů) a nebo na temto můj blog.

(aktualizováno) Gryphoon weblog edition 1.82 ke stažení

Pokud si chcete stáhnout zmiňovanou verzi GRYPHOON weblog edition verze 1.82, můžete tak učinit na webových stránkách projektu Gryphoon.

jerrysohn | trvalý odkaz | komentáře (4)

Přidání ochrany proti robotům u komentářů

27. března 2008 15:43
webové stránky

Tak už jsem dnes nevydržel a doplnil jsem svůj blog alespoň o základní mechanismus bránící proti robotům, kteří zapisují nepříjemné komentáře pod články.

Věřím, že nutnost doplnit kontrolní kód z obrázku při komentování mých článků, vás neodradí a i nadále se tu pod články budou vaše komentáře objevovat. Mně tento kód snad trošku ulehčí práci při mazání nevyžádaných komentářů.

Přeji příjemné čtení a těším se na další plodné komentáře :-)

jerrysohn | trvalý odkaz | komentáře (3)

Jak jsem začal používat ASP.net AJAX

6. srpna 2007 12:50
webové stránky

Konečně jsem se při programování webových aplikací dostal k používání technologie ASP.net AJAX. A musím přiznat, že práce s ní mě více než jen potěšila.

Když jsem před několika dny začal programovat nové moduly do interního webu akce Klíč 2008, které slouží k zjednodušení řízení týmů připravujících tuto akci, došlo mi, že pro něco takto obsáhlého již nadešel čas začít používat AJAX. První místo, kde jsem se pro použití AJAXu rozhodl byl adresář členů přípravného týmu. Nezačal jsem jen samotným základním balíkem ASP.net AJAXu, ale rovnou jsem si nainstaloval Control Toolkit. Ten obsahuje velké množství AJAX objektů a extenderů, které uživatelům internetových aplikací práci se stránkami usnadňují a opravdu zpříjemňují. První objekt, který jsem využil byly záložky (Tabs) a hned v zápětí validační extender (ValidatorCallout).

Kouzlo ASP.net AJAXu vidím hlavně v tom, že si v klidu můžete i nadále programovat tak, jak jste dosud zvyklí. I nadále si píšete programy tzv. run at server (tedy program, který by se měl vykonávat na serveru) přímo ve vašem oblíbeném .net jazyku a jednoduše deklarativně přidáváte do stránky AJAX objekty. Navíc pak do stránky přidáte AJAX ScriptManager, který zajistí připojení potřebných AJAX JavaScriptů jež zajišťují obsluhu AJAX objektů na straně klienta. Kromě toho také musíte v souboru web.config doplnit několik deklarací, které umožní v aplikaci AJAX používat a pokud chcete používat i Control Toolkit, tak doplníte .net assembly případně i s různými jazykovými verzemi (jednoduchý a názorný návod najdete ve výukových videích Get Started with ASP.NET AJAX a Get Started with the ASP.NET AJAX Control Toolkit).

Musím přiznat, že práce s ASP.net AJAXem mě opravdu nadchla. Je to velmi snadné a výsledky jsou myslím velmi pěkné a hlavně uživatelsky příjemné. V tomto článku alespoň ukáži, jak snadno lze doplnit validaci prvků formuláře o AJAX extender, který přidá „informační bublinu“ k server controlu, který měl být vyplněn.

Ukázka validace s ASP.net AJAX ValidatorCallout

Pokud máte ve formuláři například textové pole pro povinný údaj jméno, bude váš kód celé ASPX stránky vypadat třeba takto:

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Protected Sub btnSend_Click(ByVal sender As Object, ByVal e As System.EventArgs)

        'kontrola správného vyplnění formuláře
        Page.Validate("contact")
        If Not Page.IsValid Then Return

        'zpracování formuláře
        litSendOk.Text = "Formulář úspěšně odeslán!"
        'TODO: libovně dopsat zpracování dat uvedených ve formuláři

    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Validace formuláře</title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <asp:ValidationSummary ID="valsumContact" runat="server"
                HeaderText="Pro úspěšné uložení kontaktu je nutné správně doplnit následující údaje:"
                ValidationGroup="contact" />
            <asp:Literal ID="litSendOk" runat="server" />
        </div>
        <div>
            <asp:Label ID="lblName" runat="server" AssociatedControlID="txtName">jméno:</asp:Label>
            <asp:TextBox ID="txtName" runat="server" CssClass="povinne" />
            <asp:RequiredFieldValidator
                ID="valName" runat="server"
                ControlToValidate="txtName"
                ValidationGroup="contact"
                Display="Dynamic"
                ErrorMessage="<strong>Nevyplněná položka</strong><br />Jméno je povinné.">
                *</asp:RequiredFieldValidator>
        </div>
        <div>
            <asp:Button ID="btnSend" runat="server" Text="Odeslat" OnClick="btnSend_Click" />
        </div>
    </form>
</body>
</html>

Tento kód zajistí zobrazení textového pole (asp:TextBox) pro zadání povinného jména a tlačítko (asp:Button) pro odeslání formuláře. V případě, že nevyplníte jméno, zobrazí se vedle nevyplněného textového pole hvězdička a při snaze o odeslání se zobrazí v objektu asp:SummaryVa­lidator i chybová hláška upozorňující na nutnost vyplnění povinného jména.

Doplnění o AJAX

Nyní tento formulář ASP.net AJAX ValidatorCallout extender, který zobrazí dynamicky chybovou hlášku hned při vyplňování formuláře. Je to velmi snadné a ve stránce nebudeme muset provádět téměř žádné úpravy.

  1. do stránky vložíme AJAX ScriptManager (ten musí být v každé stránce, která ASP.net AJAX používá, ale vždy maximálně jen jednou)
  2. u nyní použitého ASP.net RequiredFieldVa­lidator změníme Display="Dynamic" na Display="None"
  3. přidáme AJAX ValidatorCallout za textové pole

Upravená část kódu stránky nyní bude vypadat takto:

<div>
    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>

    <asp:ValidationSummary ID="valsumContact" runat="server"
        HeaderText="Pro úspěšné uložení kontaktu je nutné správně doplnit následující údaje:"
        ValidationGroup="contact" />

    <asp:Literal ID="litSendOk" runat="server" />
</div>
<div>
    <asp:Label ID="lblName" runat="server" AssociatedControlID="txtName">jméno:</asp:Label>
    <asp:TextBox ID="txtName" runat="server" CssClass="povinne" />
    <asp:RequiredFieldValidator
        ID="valName" runat="server"
        ControlToValidate="txtName"
        ValidationGroup="contact"
        Display="None"
        ErrorMessage="<strong>Nevyplněná položka</strong><br />Jméno je povinné." />
    <ajaxToolkit:ValidatorCalloutExtender
        runat="server"
        ID="valexName"
        TargetControlID="valName" />
</div>

Tak a první využití ASP.net AJAXu máme úspěšně za sebou. Teď si můžete živou ukázku této stránky prohlédnout v akci.

Tento i další ukázkové zdrojové kódy naleznete i na http://ukazky­.jerrysohn.net/

jerrysohn | trvalý odkaz | komentáře (2)

Budete se vdávat či ženit?

11. července 2007 13:39
webové stránky

Pokud ano, určitě je to kromě toho krásného (co snad bude napořád), také spousta starostí a také hledání těch správných šatů. Třeba vám nějaké starosti ubere Studio Annie.

To jsou totiž nové internetové stránky, které jsem před pár dny dodělal a spustil. Spolu s nimi také vznikl další produkt z řady PBSOFTWAREsystem a to redakční systém pro internetové stránky firem nazvaný jednoduše FIRMAsystem. Tento redakční systém umožňuje společnostem dle potřeby publikovat informace na na své internetové stránky, sledovat komentáře návštěvníků a komunikovat s nimi. Navíc je systém vždy možné na zakázku doplnit o nejrůznější moduly ušité na míru dané společnosti. U Studia Annie je to například galerie šatů, kde si každá žena a dívka vyberou právě ty její pohádkové šaty.

Na FIRMAsystem nejdéle v září 2007 přejde i webová prezentace naší společnosti Ondřej Peřina, PB software. Takže se můžete těšit i na novou verzi našich stránek, na které přibudou i podrobné informace o naší nové produktové řadě PBSOFTWAREsystem a jejich jednotlivých balících, které nabízíme.

jerrysohn | trvalý odkaz | přidej komentář

Redakční systém za 4 dny

7. července 2007 23:41
webové stránky

Začaly prázdniny a já s jejich začátkem poněkud propadám panice. Nebudou to prázdniny, ale spíše trošku pracovní galeje.

Je něco po půlnoci 1. července 2007 a já po několika týdnech programování spouštím nový modul Honesta Web Application (velká intranetová aplikace pro několik společností exekutorů, právníků, soudců a obchodníků). Bylo to náročné programování, jenže netuším, že hned ráno začnu programovat další velké úpravy v tomto modulu, neboť si zadavatel přeje po spuštění aplikace do ostrého provozu provedení ještě mnoha dalších vychytávek :o(

Tyto doplňkové úpravy zvládám za necelé dva dny. Nyní je 3. července a já si denně dopřávám maximálně 3 až 4 hodiny spánku. Teprve teď to ale začne! Pouštím se do vývoje redakčního systému OBECsystem, který se v zápětí stane základním kamenem nové prezentace obce Bílá (okres Liberec). Původně jsem měl v úmyslu prezentaci této obce postavit na redakčním systému Gryphoon (v jeho edici Obec), který úspěšně spravuje stránky obce Osečná, ale nakonec jsem se rozhodl, že konečně dojde k vytvoření dvou produktových řad redakčních systémů v naší společnosti. Aleš (rarouš) bude i nadále vyvíjet Gryphoon, který je primárně určen hlavně pro osobní blogy a já se pouštím do vývoje produktové řady PBSOFTWAREsystem, která nabídne několik produktů dle různých cílových skupin (především pak prezentace obcí a firem).

Následující 4 dny téměř vůbec nespím a většinu dne i noci trávím u svého stolu s tužkou, spoustou papírů a poznámek, ale hlavně se svým notebookem. Skládám jednotlivé moduly, které jsme již v minulosti pro nejrůznější projekty vytvořili, do jednoho kompaktního – uceleného balíku. A doplňuji je o další, úplně nové části. Zároveň při tom vše testuji na připravované nové verzi stránek obce Bílá. Takže zpracovávám i aktualizovanou verzi designu a nasazuji nové redakční jádro. Práce mi jde celkem slušně od ruky a výsledek je přímo skvělý… 4 dny beze spánku se vyplatily! Na světě je nový redakční systém určený pro obce a města – OBECsystem.

OBECsystem – redakční systém pro obce – si v reálném provozu budete moci problédnout na stránkách Obce Bíláwww.ou-bila.cz. Zde je již nová verze připravena, nyní již čekáme jen na převod domény k novému poskytovateli hostingových služeb. K tomuto převodu by mělo dojít nejdéle do začátku srpna 2007. Ale pokud jste zvědavi na novou podobu internetových stránek obce, tak jak je dokáže spravovat OBECsystem, již nyní, tak se podívejte na náš testovací server http://ou-bila.cz.test.pbsof­tware.cz/.

jerrysohn | trvalý odkaz | komentáře (2)

Má e-mail na Centrum.cz problémy?

14. června 2007 10:24
webové stránky

Když se někde na internetu objeví informace o tom, že má nějaký portál problémy, že byly napadeny jeho uživatelské účty či něco podobného, vždy se kolem toho strhne velká diskuze. Osobně to příliš nemám rád, ale dnes se mi již potřetí stalo něco, co by se asi stávat nemělo.

Běžně si stahuji poštu ze svých mnoha e-mailových schránek do Outlooku na svém notebooku. Dnes jsem však byl opět okolnostmi donucen se přihlásit do své e-mailové schránky na Cetrum.cz přímo na internetových stránkách a využít tedy webového rozhraní e-mailu. Mailové rozhraní e-mailu na Centrum.cz mám rád a vyhovuje mi. Ale co mě dnes čekalo za děsivé překvapení?

Po přihlášení do mé e-mailové schránky se mi najednou objevila pošta úplně někoho jiného! Nejprve jsem si nebyl jist, zda to třeba není jen nějaký spam či omyl, ale když jsem zjistil, že ani složky neodpovídají mým a že žádný e-mail není skutečně můj, tak mě to hodně vyděsilo.

Možná by si člověk řekl, že jsem se připojoval ve škole a je tak možné, že šlo o nějakou nacachovanou schránku nějakého studenta, který se neodhlásil přede mnou, ale já se na e-mail díval ze svého vlastního notebooku, na kterém nikdo jiný než já nepracuje. Dokonce na mém notebooku ani nikdo jiný svou poštu nečte a na web ho používám jen já…

No uvidíme, co s tím Centrum.cz udělá. Snad to byla jen nějaká drobnost, kterou velice rychle odstraní. Ale v každém případě by se na portálech nemělo stávat, že po přihlášení se vám objeví pošta někoho jiného (a v hlavičce stránky je přitom uvedeno, že jste skutečně přihlášeni vy).

jerrysohn | trvalý odkaz | komentáře (6)

Hlasování na internetu

2. února 2007 22:15
webové stránky

Dnes jsem konečně spustil finální podobu internetového hlasování o maskota akce klíč 2008.

Když jsem to celé začal programovat, řešil jsem otázku, jak udělat internetové hlasování tak, aby jej šlo co nejhůře zmanipulovat. Nakonec jsem došel k tomu, že nejlepší bude zvolit ověřování pomocí e-mailových adres.

A jak tedy internetové hlasování funguje?

Hlasování má dvě roviny:

  1. hlasování pomocí SMS zpráv (mám na serverech naprogramovanou vlastní GSM bránu, která kontroluje z jakého čísla byl hlas zaslán)
  2. internetové hlasování přímo z www stránek

To hlasování z internetových stránek je určitě zajímavější než hlasování pomocí SMS a hlavně se s ním můžete při programování podobných hlasování častěji potkat.

Někteří lidé mi nabízeli, že bych měl ověřovat IP adresy, jiní říkali, že stačí používat cookie, další, že nemá smysl ověřovat nic. Mně ale nakonec přišlo nejlepší použít potvrzování hlasů pomocí e-mailových zpráv.

Takže samo hlasování nyní umožňuje zaslat až 5 hlasů z jedné e-mailové adresy. Samo hlasování probíhá tak, že uživatel si na webu vybere komu chce dát hlas, pak udá svou e-mailovou adresu a program provede několik kroků, které ve výsledku vedou až k samotnému přičtení hlasu.

  1. zkontroluje, zda již z této adresy nebylo posláno všech 5 hlasů
  2. pokud již hlasy nejsou k dispozici, informuje o tom uživatele a žádný hlas již nepřičte
  3. pokud ještě lze z tohoto e-mailu hlasovat, vytvoří e-mailovou zprávu s jedinečnou internetovou adresou obsahující unikátní identifikační kód, který je zaznamenán v databázi u daného hlasu a e-mailové adresy
  4. tento e-mail odešle na udanou e-mailovou adresu
  5. uživatel si přečte e-mail, klikne na uvedenou adresu
  6. uživateli se zobrazí stránka, kde se zobrazí informace o tom, z jaké e-mailové adresy hlasuje a jakému zvířeti chce dát hlas
  7. uživatel hlas potvrdí a v tento okamžit se teprve hlas přičte. V případě, že chce hlas zrušit, zamítne jej a on se z databáze vymaže

Osobně si myslím, že tohle je momentálně ten nejobjektivnější způsob jak internetové hlasování provozovat. Sice není tak jednoduché jako jen obyčejné kliknutí na internetové stránce, ale funguje dobře. Nemáte problémy s IP adresami, za kterými se skrývají školy, úřady, no prostě desítky a stovky počítačů a ani problémy s cookies, které si každý chytřejší uživatel umí smazat, a tak stále hlasovat a hlasovat a tedy zkreslovat výsledky.

jerrysohn | trvalý odkaz | přidej komentář

Hack pro odlišení IE6 a IE7

17. ledna 2007 11:21
webové stránky

Včera v noci jsem nainstaloval novou verzi Internet Exploreru 7 v české verzi. Konečně je tady kvalitní nástupce…

V této verzi byla odstraněna spousta chyb v zobrazování internetových stránek a interpreteci jednotlivých norem pro tvorbu www stránek. Taktéž byl odstraněn oblíbený podrtžítkový hack, který vývojáři s oblibobou používali pro opravy chyb v interpretaci norem. Je to v pořádku, neboť tímto hackem bylo často řešeno spousta neduhů starších verzí Internet Exploreru, které jsou v IE7 již opraveny.

Jenže ouha…

Byl jsem velmi potěšen, když jsem se podíval na jedny ze svých posledních www stránek. Při jejich tvorbě jsem již neměl sílu si hrát s každým malým designovým prvkem, tak aby se zcela stejně stránky zobrazovaly v IE a všech ostatních prohlížečích. Stránky vypadaly ve své podstatě na všech prohlížečích stejně až na některé drobné odlišnosti, ale to klientovi nevadilo, takže v tom problém nebyl. V Internet Exploreru 7 se konečně zobrazují ve své plné kráse :o) Až na jednu drobnost. Z nějakého divného důvodu si stránky usmyslely, že v jednom místě posunou jeden box, tak jako to dělaly staré verze IE bez použití hacku. No a s ohledem na to, že IE7 již podtržítkový hack ignoruje, tak se stránka v jednom místě rozjela.

Naštěstí IE7 zrušil pouze podtržítkový hack, a tak tu zbyla možnost jak odlišit i novou verzi IE7. Naštěstí tuto volbu nebudeme příliš často potřebovat, neboť IE7 téměř všechny své chyby na poli běžně používaných věcí zcela odstranila.

A jak na to?

Stačí do definic CSS místo podtržítka uvést nějaký jiný speciální znak, např. &

Takže snadné rozlišení:
[všechny standardní prohlížeče (včetně IE7)]
nazevVlastnosti: hodnota;
[IE6]
_nazevVlastnosti: hodnota;
[IE7]
&nazevVlastnosti: hodnota;

jerrysohn | trvalý odkaz | komentáře (17)

Konečně jsem spustil internetový obchod

24. listopadu 2006 13:42
webové stránky

Bylo to náročné, provázela to spousta problémů a náhod, které nám podrážely nohy, ale povedlo se! Včera jsem spustil novou verzi 1. Mnichova antikvariátu.

Věřím, že se zákazníkům nová podoba internetového obchodu bude líbit a hlavně, že bude fungovat mnohem lépe než původní systém, který byl již technologickým stařečkem (v podstatě bez velkých změn existoval již od roku 2000).

jerrysohn | trvalý odkaz | komentáře (3)

Novinka Libereckého centra skautingu

8. listopadu 2006 1:04
webové stránky

I přesto (a nebo právě proto), že již šestý den programuji témeř bez přestávky nový internetový obchod pro jednoho mého klienta, dnes v noci jsem na webu Libereckého centra skautingu spustil jednu novinku, která integruje do stránek Novinek – článků nejnovější články z jiných skautkých webů.

Celý systém je postaven na úplně jednoduché věci a to na RSS. Nyní tedy všichni čtenáři „novinek na skautlibu“ mohou také velice snadno sledovat, jaké nové články vycházejí i na jiných skautských webech. Navíc, pokud si někdo myslíte, že by bylo vhodné přidat do tohoto sledovače článků i nějaký další skautský web, není nic snazšího, než mi poslat e-mail s adresou RSS kanálu a já jej na stránky přidám.

Další informace o téhle novince najdete přímo v článku na Libereckém centru skautingu – Co se děje jinde.

jerrysohn | trvalý odkaz | komentáře (2)

Jerry's Log na vlastní doméně www.jerrysohn.net

3. listopadu 2006 21:14
webové stránky

Tak a je to konečně tady. Můj blog byl definitivně přemístěn na novou adresu nezávislou na mé firemní doméně.

Dospěl jsem totiž k závěru, že zde na blogu již píši o tolika různých tématech, která přímo nesouvisí s počítači a programováním, že bude vhodné blog umístit na samostatnou doménu.

Od pondělí tedy Jerry's Log běží kompletně na adrese www.jerrysohn.net

jerrysohn | trvalý odkaz | komentáře (3)

Nové skautské stránky + úpravy

23. listopadu 2005 23:22
webové stránky

Tak mi to dnes nedalo a během programování do práce jsem se několik málo hodin odreagovával programováním pro skauty.

Díky tomu dnes vznikly tři nové weby (nebo spíše jen takové malé jednostránkové prezentace – podsekce jiných webů), ale kdyby vás to zajímalo, tak se podívejte.

Navíc jsem také nějakou dobu programoval centrální web Libereckého centra skautingu a nyní jsou vylepšeny některé možnosti při psaní článků na tomto portálu.

Takže pokud budete nyní chtít přidat nějaký zajímavý článek na Novinky LCS (http://novin­ky.skautlib.cz/), budete mít možnost zaslat článek e-mailem nejen do konference ORJ Liberec, ale i roverské konference a navíc i na libovolné další e-mailové adresy, které ručně zadáte. Navíc jsem upravil úvodní stránku s výpisy článků pro editaci, takže se nyní každému autorovi zobrazují v editačním módu jen články, které opravdu může editovat.

Věžím, že možnost psaní článků na web si postupně oblíbí spousta skautů a budeme se na stránkách Libereckého centra skautingu dočítat o spoustě zajímavých akcích, zážitcích,…

jerrysohn | trvalý odkaz | přidej komentář

nahoru | na titulní stranu | redakce | provozováno na redakčním systému Gryphoon Weblog v1.82 (1.82.3061.33029)