Dělám na PHP aplikaci, která kromě RSS generuje také iCalendar pro Lighting a iCal na Mac OS X. Někomu stačí asi RFC 2445 a hravě si s tím poradí, ale pro ty ostatní pár tipů, které mi pomohli a které mě trochu mátli. Ještě může bý napomocný iCalendar Specification Excerpts. Data mám v mysql kde je datum a čas odděleně a pokud událost nemá čas (je NULL) tak je to celodenní událost. Pokud má jen čas od tak končí za nějakou stanovenou dobu třeba 90 min jako ve škole. Pokud má jen datum od tak je to jednodenní akce. Pár zásad při tvorbě iCalendar exportu
V nové verzi Zend Framework 1.5 byla do Zend_Auth přidána podpora pro LDAP. Protože u mě v práci se bez toho neobejde ani ta nejjednoduší aplikace, zkusil jsem ho a seznámím vás s problémy na které jsem narazil a jak jsem je obešel.
Nejprve standarní řešení přes Ldap modul v PHP. Něco o našem LDAPu, používáme port 1636 a pro bind vlastní DN, které kopíruje naší strukturu. Pro bind nepotřebuje aplikace žádného vlastního uživatele použije se jméno a heslo toho kdo se hlásí. Část kódu, která je podstatná pro naše porovnání.
Pro projekt jsem potřeboval zobrazit celou stránku, ale při tak dlouhé stránce to není možné, ale existuje freeware Webshot, který udělal právě co chci.
Pokud pracujete s TSVN nebo přímo s repozitory pod Windows časem přijdete na to, že potřebujete občas nějakou operaci před commitem nebo commitem k tomu slouží hook skripty. Hook je program, který je spuštěn nějakým triggrem, každé repozitory obsahuje předdefinované skripty. Nutnou podmínkou je mít samozřejmě nainstalovaný i Subversion ne jenom TSVN.
Adresář repozitory: \path-to-repozitory\project-name
[conf] [dav] [hooks] [locks] format README.TXT
v adresáři hooks jsou skripty:
post-commit.tmpl
post-lock.tmpl
post-revprop-change.tmpl
post-unlock.tmpl
pre-commit.tmpl
pre-lock.tmpl
pre-revprop-change.tmpl
pre-unlock.tmpl
start-commit.tmpl
tyto skripty vám určují možné spouštěče, kdy se který skript vykoná. Já osobně používám jen post-commit a to tak, že jsem vytvořil post-commit.bat, který obsahuje tento kód, který přegeneruje changelog.
“c:\Program Files\Subversion\bin\svn.exe” log -v –xml svn://localhost/rep_testing/start_page/trunk >c:\rootwww\wc_testing\startpage_changelog.xml
ještě mě napadlo, že můžete např. udělat automatický export pro deploy na jiný stroj:
“c:\Program Files\Subversion\bin\svn.exe” export –force file:///rootwww/rep_cvut/akce/trunk c:/tmp/export/akce
a k němu vygenerovat příslušný textový changelog:
“c:\Program Files\Subversion\bin\svn.exe” log file:///rootwww/rep_cvut/akce/trunk >c:/tmp/export/akce/changelog.txt
Ty skripty samozřejmě mohou dělat mnohem více.
Nová aktualizace se objevila brzo po předchozí verzi, ale opravuje mnoho bezpečnostních chyb a proto nezapomeňte provést aktualizaci.