čtvrtek 31. května 2012

gallery3 vs php 5.4.3

Na jedné základní škole provozuji php webovou galleri. Je to šikovná aplikace, která umí zpracovávat fotky přímo z foťáku, generuje si náhledy atd. Je plně lokalizována atd. Vlastnosti je celá řada.

Ovšem jak to bývá jsou s takovou aplikací někdy problémy. Naposledy jsem dlouze řešil problém s uploadem fotek, který mají dle mě nepochopitelně ve flash. Nástrojů pro generování náhledů se dá použít v gallerii hnedle několik. GD Graphic Library,  velmi známý ImageMagic a inovativní GraphicMagic. Problém spočíval v tom, že po uploadu fotky se předává ke spracování a zde to haprovalo. Naštěstí po hodinách laborování začal fungovat GraphicMagic.

Po včerejším upgradu PHP ve FreeBSD na verzi php5-5.4.3 se školní gallerie verze gallery3-3.0.3 odmlčela a na úvodní stránce byla jen bílá obrazovka. Marně jsem hledal v logách, ale marně. Poslední změnou byl upgrade PHP a tak jsem se zaměřil na dané verze.

gallery3-3.0.3 + php5-5.4.3

Googl mi napověděl :-)

http://sourceforge.net/apps/trac/gallery/ticket/1839
Don't call ob_end_clean() if PHP >= 5.4. Fixes #1839. Thanks to

Dohledal jsem si patřičný soubor Kohana.php, udelal kopii, upravil kod a pro jistotu udela patch.

pkg_info -L  gallery3-3.0.3 | grep -i Kohana.php
cd  /usr/local/www/gallery3/system/core/
cp  Kohana.php Kohana.php-inst
joe  Kohana.php
diff -u Kohana.php-inst Kohana.php
--- Kohana.php-inst    2012-05-30 21:43:45.000000000 +0200
+++ Kohana.php    2012-05-30 21:45:39.000000000 +0200
@@ -525,8 +525,12 @@
                 $close();
             }

-            // Store the Kohana output buffer
-            ob_end_clean();
+            // Store the Kohana output buffer.  Apparently there was a change in PHP
+            // 5.4 such that if you call this you wind up with a blank page.
+            // Disabling it for now.  See ticket #1839
+            if (version_compare(PHP_VERSION, "5.4", "<")) {
+                ob_end_clean();
+            }
         }
     }

pondělí 28. května 2012

NetSetMan


Většina OS mají spávce síťových připojení jakožto součást sama sebe. Např. v Linuxu s Gnome je Network Manager a Mac OS X ma asi network configuration. Win 7 nemá nic :-( Jen někteří výrobci dodávají s HW i kupu svých aplikaci např. Lenovo má nějaká spravce připojení. Pro widle mi jeden znamý doporučil aplikaci NetSetMan. Za Pro verzi asi nebudu váhat zaplatit.

pátek 18. května 2012

grep ve Windows

Pokud potřebujeme takzvaně grepnout nějaký textový soubor na výskyt nějakého řetězce, potřebujeme na to aplikaci grep, alespoň v UNIXových systémech je to věc prastará. Do windows si můžeme nainstalovat UnxUtils, ale ne vždy můžeme na servery toto instalovat.

Pokud je v systému PowerShell můřeme použít krkolomný příkaz Select-String.

PS C:\temp> Select-String -Path .\test.txt -Pattern "test"

test.txt:1:Tento text je testovaci.
test.txt:2:Testovat je treba.
test.txt:3:Kazdy testuje vse kolem sebe.

Druhá ukázka je z Cygwin ...

maly@nbmaly-tmp /cygdrive/c/temp
$ grep.exe -ni "test" test.txt 
1:Tento text je testovaci.
2:Testovat je treba.
3:Kazdy testuje vse kolem sebe.

středa 2. května 2012

UnxUtils for Windows

Pokud si člověk na něco navykne, už to vyžaduje všude. Jelikkož dlouhodobě jako desktop používám Linux s prostředím Gnome. Dost často se mi stává, že po přihlášení do WinXXX postrádám unixové příkazy, tail, grep atd.

Na Wiki je pekně popsáné UnxUtils
http://en.wikipedia.org/wiki/UnxUtils

Doposud používám Cygwin, ale odlehčenějších verzí UnxUtils je více.

http://unxutils.sourceforge.net/

Instalace je názorně popsána zde.
http://www.redantigua.com/unxutils-win.html

GNU Win II je další implementace UnxUtils.
http://gnuwin.epfl.ch/apps/unxutils/en/

Nemůžu říct, že by mi Cygwin nevyhovoval, ale asi budu postupně zkoušet i další možnosti.