= New module for the BlogEngine.Net bloging system - Poll
Aktualizace (28.2.2009)
V rámci soutěže vyhlášené Microsoftem (Soutěž: Udělejte si blog forum nebo wiki, dostanete triko a možná i počítač) jsem se rozhodl vytvořit rozšíření implementující anketu.
První pokus, který jsem sepsal během včerejšího večera, je spíše návrh čekající na nápady či připomínky :). Momentálně je možné vytvořit anketu s možností výběru z 10 odpovědí, přičemž průběh hlasování se zobrazuje jak číselně (počet hlasů k položce), tak i pokus o grafický vzhled. Dále je prováděna kontrola hlasování, tj. z každé IP adresy je možné hlasovat pro danou anketu jen jednou. Toto řešení by chtělo ještě časem vylepšit, jelikož jeden hlasující znepřístupní hlasování ostatním uživatelům schovaným za jednou IP adresou.
V rámci aktualizace a úprav bylo hlasování upraveno tak, že hlasování je voláno pomocí AJAXu a není již třeba reload celé stránky. Také byla opravena možná chyba při současném hlasování několikauživatelů najednou. Nyní je zápis do souboru řízen prostřednictvím zámků.
Administrace ankety je řešena standardně dle návrhu aplikace viz následující obrázek:
Vlastní anketa může mít následující vzhled:
Instalace
Pro instalaci rozšíření Anketa stačí upravit jazykové soubory, případně je přehrát, a přidat do nich jazykové nastavení pro anketu. Dále je třeba v projektu přidat složku do složky widgets s názvem Poll. Do této složky nahrát zdrojové soubory (edit.aspx, edit.aspx.cs, widget.aspx, widget.aspx.cs, Poll.js, PollCallBack.aspx a PollCallBack.aspx.cs) rozšíření. Poslední soubor, který je třeba přehrát je třída PollHelper.cs, kterou je třeba nahrát do složky App_Code a v ní do složky Controls.
Jakmile jsou soubory zdrojů a zdrojové aplikace nahrány a přidány do projektu, stačí celý projekt zkompilovat a uložit na server. Rozšíření se automaticky přidá do nabídky a je připraveno k použití.
Zdrojové soubory je možné stáhnout zde.
PS: za jakékoli náměty či připomínky budu rád, pište je prosím do komentářů