Zend Framework 1.7

Filed Under (Web) by Jirka Helmich on 17-11-2008

Tagged Under : ,

Dnes, 17. listopadu 2008 vyšla nová verze Zend Framework 1.7. Podívejme se na to, co pro nás vývojáři přichystali nového, z pre-release verzí se dá tušit, že mnoho. Sám čekám například  na některá vylepšení Zend_Dojo_Form, hlavním nedostatkem je krkolomná implementace onsubmit validace.

Read the rest of this entry »

Thera_Form_Element_FCK

Filed Under (Software, Web) by Jirka Helmich on 09-08-2008

Tagged Under : , ,

Další milník pokořen, podařilo se mi do Thera Frameworku založeném na Zend Frameworku integrovat FCK Editor. Bylo třeba chvíli laborovat s umístěním souborů a způsobem implementace, ale myslím, že to za to stálo.

Stačilo PHP soubor umístit do /library/fckeditor/ a ten zbytek nasypat do složky /public/fckeditor. Aby vše fungovalo jednoduše, chtěl jsem, aby byl FCK Editor běžným Zend Form Elementem, aby na něj platily validátory a vše ostatní. V první fázi tedy bylo třeba vytvořit si vlastní Element, vzhledem k tomu, že to, co FCK doopravdy odesílá není Textarea, ale Hidden pole, zvolil jsem odpovídající variantu a extendoval jsem Zend_Form_Element_Text. Pak bylo třeba vytvořit helper. Jediné, co bylo třeba napsat byl konstruktor, kde vytvořím novou instanci FCK Editoru s příslušnými parametry a nechám si vypsat XHTML kód.

Vypadá to tedy následovně:

<?php
class Thera_Form_Element_FCK extends Zend_Form_Element_Text
{
    public $helper = ‘FCK’;
}
?>

 

<?php
class Zend_View_Helper_FCK extends Zend_View_Helper_FormElement
{
    public function FCK($name, $value = null, $attribs = null)
    {
        $info = $this->_getInfo($name, $value, $attribs);
        extract($info); // name, value, attribs, options, listsep, disable
        include_once(dirname(__FILE__).’/../../../../../library/fckeditor/fckeditor.php’);
        $oFCKeditor = new FCKeditor($this->view->escape($name)) ;
        $oFCKeditor->BasePath = ‘/public/fckeditor/’;
        $oFCKeditor->Value = $value;
        foreach ($attribs as $key => $value)
        {
            $oFCKeditor->Config[$key] = $value;
        }
        $xhtml = $oFCKeditor->CreateHtml();

        return $xhtml;
    }
}
?>

Považte, výše uvedné není nijak náročný kód. O mnoho jednodušší je pak přitom vložení celého FCKEditoru do formuláře:

$fck = new Thera_Form_Element_FCK(’fck’);
$fck->setLabel(’Editor’);
$form->addElement($fck);

Zend_Translate vs. Zend_Form

Filed Under (Web) by Jirka Helmich on 04-05-2008

Tagged Under : , , , ,

Zend Framewok obsahuje třídu Zend_Form, pomocí které je možné vytvořit formuláře poměrně rychle, čistě a logicky. Díky ní není nutné vytvářet přímo HTML, ale formulář je možné vygenerovat pomocí sledu PHP příkazů. Jako doplněk lze použít tzv. validátory, které vyhodnotí vstupní data a v případě, že něco není v pořádku, vyplní formulář zadanými daty a okomentuje jej. Nicméně zde narážíme na malý problém, komentář je samozřejmě anglicky. Vypsat českému uživateli na výstup něco jako "abcd" doesn’t match against pattern "\d+\s[[:alnum]#@{}]" asi není nejlepší nápad, když už tam musí být uvedena maska, mohlo by to být alespoň česky.

Read the rest of this entry »

Ze série Můj milý deníčku

Filed Under (Nespoutaný tok myšlenek) by Jirka Helmich on 26-04-2008

Tagged Under : , ,

Můj milý deníčku, stále ještě čekám na notebook, který jsem před necelými třemi týdni odeslal na reklamaci, a tak se mi zkomplikovaly některé věci. Spoustu věci momentálně musím udělat dvakrát - jednou doma jednou na koleji. Třeba stáhnout maily, updatovat SVN, napsat domácí úkol z programování, … Prostě dělám toho pořád stejně hodně, občas vícekrát a času je stále méně. Ono je to na tobě dobře vidět. Je čas na malé shrnutí toho, co se stalo, nebudu plýtvat spoty, nahustím to všechno do jednoho.

Read the rest of this entry »

Projekt Thera a rozloučení se Smarty

Filed Under (Nespoutaný tok myšlenek, Web) by Jirka Helmich on 10-03-2008

Tagged Under : , ,

Používal jsem Smarty. Měsíc. Na jediném projektu. V létě jsem s Goophym dělal na projektu hledejhracky.cz a hledejnaradi.cz a používali jsme Smarty, poměrně fajn knihovnu pro práci se šablonami. Lidem, kteří poznávají, co to je MVC a jak mají vypadat šablony strašně usnadní život. Ale je to zřejmě naposledy, co jsme tuto knihovnu použili. V současné době pracujeme na high-level PHP frameworku Thera, který bude postaven na Zend Frameworku a místo Smarty bude využívat třídu Zend_View, která narozdíl od Smartyho umí iterovat na objektech ve foreach cyklech. Navíc to bude o mnoho pohodlnější.

Ptáte se, co je to Thera? Nový, úžasný, skvělý high-level framework (cool, huh?), na který nemusíte narozdíl od jiných českých frameworků (…) čekat, protože … … … nebude veřejný, nebude to OpenSource, nebude zdarma a vy ho nikdy používat nebudete. Ale myšlenku prozradit můžu. Zkrátka jsem se zamyslel nad tím, jak zefektivnit práci na projektech. K čemu jsem došel? Začnu dělat web a vymýšlím, jak pracovat s databází, implementuji uživatele, moduly, práva, kategorie, logy. Znovu a znovu. Proto tedy Thera, která bude vše výše uvedené obsahovat ve zobecněné formě. Co se skrývá pod magickým “ve zobecněné formě”? Představte si, že se probudíte a klient, který vám volá po vás chce změnu autentifikace uživatelů. Už žádná databázová tabulka, ale LDAP. A vy začnete nadávat a na pár dní sedáte k PSPadu…

Stačí číst

Filed Under (Web) by Jirka Helmich on 09-03-2008

Tagged Under :

Kdo nečte, je za vola. Občas i veřejně. Jako já. http://php.interval.cz/clanky/zend-framework-modularni-struktura-aplikace/

Zend nebo Prado? Toť otázka…

Filed Under (Web) by Jirka Helmich on 07-03-2008

Tagged Under : , ,

Poslední týden jsem věnoval výběru frameworku, na kterém budu stavět své aplikace. Chtěl jsem dostat do ruky něco, co mi umožní jednoduše a rychle realizovat moji představu o CMS, ať už finální sbírka modulů bude reprezentovat e-shop, redakční systém, blog nebo vizitku.

Díky všeobecnému nadšení, které panuje kolem Zend Frameworku jsem v pondělí řekl "hurá, jdu napsat jádro aplikace v Zendu". Ale ono to není tak jednoduché. Tento Framework prosazuje MVC (model-view-controller) model, jehož základní myšlenka je jasná a dobrá - oddělit logiku a "vzhled" - zkrátka PHP a HTML+CSS+JS. V podání Zendu je ale tento model mírně omezený a jak řekl Tutchek, je to v tu chvíli o tom, jestli ohýbat framework kvůli webu nebo web kvůli frameworku.

Read the rest of this entry »