-%include /usr/lib/rpm/macros.php
-%define _class HTML
-%define _subclass Template
-%define _status stable
-%define _pearname %{_class}_%{_subclass}_Flexy
-
-Summary: %{_pearname} - a flexible caching template engine based on SimpleTemplate
-Summary(pl): %{_pearname} - elastyczny buforuj±cy silnik szablonów oparty na SimpleTemplate
-Name: php-pear-%{_pearname}
-Version: 1.2.4
+%define status stable
+%define pearname HTML_Template_Flexy
+Summary: %{pearname} - a flexible caching template engine based on SimpleTemplate
+Summary(pl.UTF-8): %{pearname} - elastyczny buforujący silnik szablonów oparty na SimpleTemplate
+Name: php-pear-%{pearname}
+Version: 1.3.13
Release: 1
-Epoch: 0
License: PHP 2.02
Group: Development/Languages/PHP
-Source0: http://pear.php.net/get/%{_pearname}-%{version}.tgz
-# Source0-md5: 093e8a45095db78a9fc36f4ff1ed64d7
+Source0: http://pear.php.net/get/%{pearname}-%{version}.tgz
+# Source0-md5: b2927f235ba75660dcc0f3a6257279d1
Patch0: %{name}-case_fix.patch
Patch1: %{name}-path_fix.patch
+Patch2: %{name}-no_gtk.patch
URL: http://pear.php.net/package/HTML_Template_Flexy/
BuildRequires: php-pear-PEAR
BuildRequires: rpm-php-pearprov >= 4.4.2-11
-Requires: php-common >= 3:4.3
+BuildRequires: rpmbuild(macros) >= 1.654
+Requires: php(core) >= 4.3
Requires: php-pear
+Suggests: php-pear-File_Gettext
+Suggests: php-pear-HTML_Javascript
+Suggests: php-pear-Translation2
+Obsoletes: php-pear-HTML_Template_Flexy-tests
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# exclude optional dependencies
-%define _noautoreq 'pear(HTML/Javascript.*)' 'pear(File/Gettext.*)' 'pear(Translation2.*)'
+%define _noautoreq_pear HTML/Javascript.* File/Gettext.* Translation2.* Services/JSON.php
%description
HTML_Template_Flexy started its life as a simplification of
possible to do things like ASP.net or Cold Fusion tags. However, it
still has a very simple set of goals.
- Very Simple API,
- - easy to learn...
- - prevents to much logic going in templates
+ - easy to learn...
+ - prevents to much logic going in templates
- Easy to write documentable code
- - By using object vars for a template rather than 'assign',
- you can use PHPDoc comments to list what variable you use.
+ - By using object vars for a template rather than 'assign', you can
+ use PHPDoc comments to list what variable you use.
- Editable in WYSIWYG editors
- - you can create full featured templates, that don't get
- broken every time you edit with Dreamweaver(tm) or Mozilla
- editor
- - Uses namespaced attributes to add looping/conditionals
+ - you can create full featured templates, that don't get broken every
+ time you edit with Dreamweaver(tm) or Mozilla editor
+ - Uses namespaced attributes to add looping/conditionals
- Extremely Fast
- - runtime is at least 4 time smaller than most other template
- engines (eg. Smarty)
- - uses compiled templates, as a result it is many times faster
- on blocks and loops than than Regex templates (eg.
- IT/phplib)
+ - runtime is at least 4 time smaller than most other template engines
+ (eg. Smarty)
+ - uses compiled templates, as a result it is many times faster on
+ blocks and loops than than Regex templates (eg. IT/phplib)
- Safer (for cross-site scripting attacks)
- - All variables default to be output as HTML escaped
- (overridden with the :h modifier)
+ - All variables default to be output as HTML escaped (overridden with
+ the :h modifier)
- Multilanguage support
- - Parses strings out of template, so you can build translation
- tools
- - Compiles language specific templates (so translation is only
- done once, not on every request)
+ - Parses strings out of template, so you can build translation tools
+ - Compiles language specific templates (so translation is only done
+ once, not on every request)
- Full dynamic element support (like ASP.NET), so you can pick
- elements to replace at runtime
+ elements to replace at runtime
The long term plan for Flexy is to be integrated as a backend for the
Future Template Package (A BC wrapper will be made available - as the
author needs to use it too).
-In PEAR status of this package is: %{_status}.
-
-%description -l pl
-HTML_Template_Flexy pocz±tkowo by³ uproszczeniem HTML_Template_Xipe,
-jednak od wersji 0.2 sta³ siê jednym z pierwszych silników szablonów
-u¿ywaj±cych prawdziwego analizatora leksykalnego zamiast wyra¿eñ
-regularnych, co umo¿liwia robienie rzeczy w stylu ASP.net czy
-znaczników Cold Fusion. Jednak nadal ma bardzo prosty zbiór
-zastosowañ. Cechy silnika:
-- bardzo proste API - ³atwe do nauczenia, zapobiega umieszczaniu zbyt
- du¿ej ilo¶ci logiki w szablonach
-- ³atwe pisanie dokumentowalnego kodu - poprzez u¿ycie zmiennych
- obiektowych dla szablonu zamiast przypisywania mo¿na u¿ywaæ
- komentarzy phpDoc do wypisywania u¿ywanych zmiennych
-- edytowalny w edytorach WYSIWYG - mo¿na tworzyæ w pe³ni funkcjonalne
- szablony, które nie psuj± siê po ka¿dym u¿yciu Dreamweavera(tm) czy
- edytora Mozilli; przy dodawaniu pêtli i warunków u¿ywane s± atrybuty
- z przestrzeniami nazw
+In PEAR status of this package is: %{status}.
+
+%description -l pl.UTF-8
+HTML_Template_Flexy początkowo był uproszczeniem HTML_Template_Xipe,
+jednak od wersji 0.2 stał się jednym z pierwszych silników szablonów
+używających prawdziwego analizatora leksykalnego zamiast wyrażeń
+regularnych, co umożliwia robienie rzeczy w stylu ASP.net czy
+znaczników Cold Fusion. Jednak nadal ma bardzo prosty zbiór
+zastosowań. Cechy silnika:
+- bardzo proste API - łatwe do nauczenia, zapobiega umieszczaniu zbyt
+ dużej ilości logiki w szablonach
+- łatwe pisanie dokumentowalnego kodu - poprzez użycie zmiennych
+ obiektowych dla szablonu zamiast przypisywania można używać komentarzy
+ phpDoc do wypisywania używanych zmiennych
+- edytowalny w edytorach WYSIWYG - można tworzyć w pełni funkcjonalne
+ szablony, które nie psują się po każdym użyciu Dreamweavera(tm) czy
+ edytora Mozilli; przy dodawaniu pętli i warunków używane są atrybuty z
+ przestrzeniami nazw
- ekstremalnie szybki - kod uruchomieniowy jest przynajmniej 4 razy
- mniejszy ni¿ wiêkszo¶æ innych silników szablonów (np. Smarty); u¿ywa
- skompilowanych szablonów, dziêki czemu jest wiele razy szybszy na
- blokach i pêtlach ni¿ szablony oparte na wyra¿eniach regularnych
- (np. IT/phplib)
-- bezpieczniejszy (pod k±tem ataków cross-site scripting) - wszystkie
- zmienne domy¶lnie s± wypisywane z u¿yciem sekwencji kontrolnych HTML
- (mo¿na to zmieniæ modyfikatorem :h)
-- wspiera wielojêzyczno¶æ - przetwarza ³añcuchy z szablonu, co pozwala
- na zbudowanie narzêdzi do t³umaczenia; kompiluje specyficzne dla
- jêzyka szablony, dziêki czemu t³umaczenie jest robione tylko raz, a
- nie przy ka¿dym ¿±daniu
-- w pe³ni obs³uguje dynamiczne elementy (jak ASP.NET), dziêki czemu
- mo¿na pobieraæ elementy do zast±pienia w czasie dzia³ania.
-
-D³ugoterminowym planem rozwoju Flexy jest zintegrowanie jako backend
-dla Future Template Package (dostêpny bêdzie wrapper BC, jako ¿e autor
-te¿ musi tego u¿ywaæ).
-
-Ta klasa ma w PEAR status: %{_status}.
-
-%package tests
-Summary: Tests for PEAR::%{_pearname}
-Summary(pl): Testy dla PEAR::%{_pearname}
-Group: Development/Languages/PHP
-Requires: %{name} = %{epoch}:%{version}-%{release}
-AutoReq: no
-AutoProv: no
-
-%description tests
-Tests for PEAR::%{_pearname}.
-
-%description tests -l pl
-Testy dla PEAR::%{_pearname}.
+ mniejszy niż większość innych silników szablonów (np. Smarty); używa
+ skompilowanych szablonów, dzięki czemu jest wiele razy szybszy na
+ blokach i pętlach niż szablony oparte na wyrażeniach regularnych (np.
+ IT/phplib)
+- bezpieczniejszy (pod kątem ataków cross-site scripting) - wszystkie
+ zmienne domyślnie są wypisywane z użyciem sekwencji kontrolnych HTML
+ (można to zmienić modyfikatorem :h)
+- wspiera wielojęzyczność - przetwarza łańcuchy z szablonu, co pozwala
+ na zbudowanie narzędzi do tłumaczenia; kompiluje specyficzne dla
+ języka szablony, dzięki czemu tłumaczenie jest robione tylko raz, a
+ nie przy każdym żądaniu
+- w pełni obsługuje dynamiczne elementy (jak ASP.NET), dzięki czemu
+ można pobierać elementy do zastąpienia w czasie działania.
+
+Długoterminowym planem rozwoju Flexy jest zintegrowanie jako backend
+dla Future Template Package (dostępny będzie wrapper BC, jako że autor
+też musi tego używać).
+
+Ta klasa ma w PEAR status: %{status}.
%prep
%pear_package_setup
-install -d docs/%{_pearname}
-mv ./%{php_pear_dir}/%{_class}/%{_subclass}/Flexy/example.ini docs/%{_pearname}
-cd ./%{php_pear_dir}/%{_class}/%{_subclass}
+cd ./%{php_pear_dir}/HTML/Template
%patch0 -p1
%patch1 -p1
+%patch2 -p6
+cd -
+
+mv .%{php_pear_dir}/data/HTML_Template_Flexy/TODO .
+mv .%{php_pear_dir}/data/HTML_Template_Flexy/ChangeLog .
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{php_pear_dir}
%pear_package_install
+%post -p <lua>
+%pear_package_print_optionalpackages
+
%clean
rm -rf $RPM_BUILD_ROOT
-%post
-if [ -f %{_docdir}/%{name}-%{version}/optional-packages.txt ]; then
- cat %{_docdir}/%{name}-%{version}/optional-packages.txt
-fi
-
%files
%defattr(644,root,root,755)
-%doc install.log optional-packages.txt
-%doc docs/%{_pearname}/example.ini
+%doc TODO ChangeLog install.log optional-packages.txt
%{php_pear_dir}/.registry/*.reg
-%{php_pear_dir}/%{_class}/%{_subclass}/Flexy
-%{php_pear_dir}/%{_class}/%{_subclass}/Flexy.php
-
-%files tests
-%defattr(644,root,root,755)
-%{php_pear_dir}/tests/*
+%{php_pear_dir}/HTML/Template/Flexy
+%{php_pear_dir}/HTML/Template/Flexy.php
+%{php_pear_dir}/data/%{pearname}