]>
Commit | Line | Data |
---|---|---|
26f1514f ER |
1 | %define status stable |
2 | %define pearname HTML_Template_Flexy | |
26f1514f ER |
3 | Summary: %{pearname} - a flexible caching template engine based on SimpleTemplate |
4 | Summary(pl.UTF-8): %{pearname} - elastyczny buforujący silnik szablonów oparty na SimpleTemplate | |
5 | Name: php-pear-%{pearname} | |
e19d0ecf ER |
6 | Version: 1.3.13 |
7 | Release: 1 | |
72ff36db PG |
8 | License: PHP 2.02 |
9 | Group: Development/Languages/PHP | |
26f1514f | 10 | Source0: http://pear.php.net/get/%{pearname}-%{version}.tgz |
e19d0ecf | 11 | # Source0-md5: b2927f235ba75660dcc0f3a6257279d1 |
d51222b0 | 12 | Patch0: %{name}-case_fix.patch |
91ebd2ba | 13 | Patch1: %{name}-path_fix.patch |
9f24944a | 14 | Patch2: %{name}-no_gtk.patch |
ae9f522f | 15 | URL: http://pear.php.net/package/HTML_Template_Flexy/ |
57aaf9c0 | 16 | BuildRequires: php-pear-PEAR |
ceba87b1 | 17 | BuildRequires: rpm-php-pearprov >= 4.4.2-11 |
26f1514f | 18 | BuildRequires: rpmbuild(macros) >= 1.654 |
5ebcd2bf | 19 | Requires: php(core) >= 4.3 |
72ff36db | 20 | Requires: php-pear |
be928e96 ER |
21 | Suggests: php-pear-File_Gettext |
22 | Suggests: php-pear-HTML_Javascript | |
23 | Suggests: php-pear-Translation2 | |
06ef0d99 | 24 | Obsoletes: php-pear-HTML_Template_Flexy-tests |
72ff36db PG |
25 | BuildArch: noarch |
26 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
27 | ||
ceba87b1 | 28 | # exclude optional dependencies |
26f1514f | 29 | %define _noautoreq_pear HTML/Javascript.* File/Gettext.* Translation2.* Services/JSON.php |
ceba87b1 | 30 | |
72ff36db | 31 | %description |
e2e95832 | 32 | HTML_Template_Flexy started its life as a simplification of |
022e35a7 JB |
33 | HTML_Template_Xipe, however in version 0.2, it became one of the first |
34 | template engine to use a real Lexer, rather than regexes, making it | |
35 | possible to do things like ASP.net or Cold Fusion tags. However, it | |
36 | still has a very simple set of goals. | |
312dc2b8 | 37 | - Very Simple API, |
64b88781 ER |
38 | - easy to learn... |
39 | - prevents to much logic going in templates | |
022e35a7 | 40 | - Easy to write documentable code |
64b88781 ER |
41 | - By using object vars for a template rather than 'assign', you can |
42 | use PHPDoc comments to list what variable you use. | |
312dc2b8 | 43 | - Editable in WYSIWYG editors |
64b88781 ER |
44 | - you can create full featured templates, that don't get broken every |
45 | time you edit with Dreamweaver(tm) or Mozilla editor | |
46 | - Uses namespaced attributes to add looping/conditionals | |
022e35a7 | 47 | - Extremely Fast |
64b88781 ER |
48 | - runtime is at least 4 time smaller than most other template engines |
49 | (eg. Smarty) | |
50 | - uses compiled templates, as a result it is many times faster on | |
51 | blocks and loops than than Regex templates (eg. IT/phplib) | |
e85a85ed | 52 | - Safer (for cross-site scripting attacks) |
64b88781 ER |
53 | - All variables default to be output as HTML escaped (overridden with |
54 | the :h modifier) | |
312dc2b8 | 55 | - Multilanguage support |
64b88781 ER |
56 | - Parses strings out of template, so you can build translation tools |
57 | - Compiles language specific templates (so translation is only done | |
58 | once, not on every request) | |
022e35a7 | 59 | - Full dynamic element support (like ASP.NET), so you can pick |
64b88781 | 60 | elements to replace at runtime |
312dc2b8 | 61 | |
022e35a7 | 62 | The long term plan for Flexy is to be integrated as a backend for the |
e2e95832 | 63 | Future Template Package (A BC wrapper will be made available - as the |
e85a85ed | 64 | author needs to use it too). |
72ff36db | 65 | |
26f1514f | 66 | In PEAR status of this package is: %{status}. |
4915c12c | 67 | |
4d155650 JR |
68 | %description -l pl.UTF-8 |
69 | HTML_Template_Flexy początkowo był uproszczeniem HTML_Template_Xipe, | |
70 | jednak od wersji 0.2 stał się jednym z pierwszych silników szablonów | |
71 | używających prawdziwego analizatora leksykalnego zamiast wyrażeń | |
72 | regularnych, co umożliwia robienie rzeczy w stylu ASP.net czy | |
73 | znaczników Cold Fusion. Jednak nadal ma bardzo prosty zbiór | |
74 | zastosowań. Cechy silnika: | |
75 | - bardzo proste API - łatwe do nauczenia, zapobiega umieszczaniu zbyt | |
76 | dużej ilości logiki w szablonach | |
77 | - łatwe pisanie dokumentowalnego kodu - poprzez użycie zmiennych | |
64b88781 ER |
78 | obiektowych dla szablonu zamiast przypisywania można używać komentarzy |
79 | phpDoc do wypisywania używanych zmiennych | |
4d155650 JR |
80 | - edytowalny w edytorach WYSIWYG - można tworzyć w pełni funkcjonalne |
81 | szablony, które nie psują się po każdym użyciu Dreamweavera(tm) czy | |
64b88781 ER |
82 | edytora Mozilli; przy dodawaniu pętli i warunków używane są atrybuty z |
83 | przestrzeniami nazw | |
e85a85ed | 84 | - ekstremalnie szybki - kod uruchomieniowy jest przynajmniej 4 razy |
4d155650 JR |
85 | mniejszy niż większość innych silników szablonów (np. Smarty); używa |
86 | skompilowanych szablonów, dzięki czemu jest wiele razy szybszy na | |
64b88781 ER |
87 | blokach i pętlach niż szablony oparte na wyrażeniach regularnych (np. |
88 | IT/phplib) | |
4d155650 JR |
89 | - bezpieczniejszy (pod kątem ataków cross-site scripting) - wszystkie |
90 | zmienne domyślnie są wypisywane z użyciem sekwencji kontrolnych HTML | |
91 | (można to zmienić modyfikatorem :h) | |
92 | - wspiera wielojęzyczność - przetwarza łańcuchy z szablonu, co pozwala | |
93 | na zbudowanie narzędzi do tłumaczenia; kompiluje specyficzne dla | |
94 | języka szablony, dzięki czemu tłumaczenie jest robione tylko raz, a | |
95 | nie przy każdym żądaniu | |
96 | - w pełni obsługuje dynamiczne elementy (jak ASP.NET), dzięki czemu | |
97 | można pobierać elementy do zastąpienia w czasie działania. | |
98 | ||
99 | Długoterminowym planem rozwoju Flexy jest zintegrowanie jako backend | |
100 | dla Future Template Package (dostępny będzie wrapper BC, jako że autor | |
101 | też musi tego używać). | |
7c703af3 | 102 | |
26f1514f | 103 | Ta klasa ma w PEAR status: %{status}. |
4915c12c | 104 | |
72ff36db | 105 | %prep |
ceba87b1 | 106 | %pear_package_setup |
28e2acbb | 107 | cd ./%{php_pear_dir}/HTML/Template |
d51222b0 | 108 | %patch0 -p1 |
91ebd2ba | 109 | %patch1 -p1 |
9f24944a | 110 | %patch2 -p6 |
64b88781 ER |
111 | cd - |
112 | ||
113 | mv .%{php_pear_dir}/data/HTML_Template_Flexy/TODO . | |
114 | mv .%{php_pear_dir}/data/HTML_Template_Flexy/ChangeLog . | |
72ff36db PG |
115 | |
116 | %install | |
117 | rm -rf $RPM_BUILD_ROOT | |
ceba87b1 ER |
118 | install -d $RPM_BUILD_ROOT%{php_pear_dir} |
119 | %pear_package_install | |
72ff36db | 120 | |
3219856b ER |
121 | %post -p <lua> |
122 | %pear_package_print_optionalpackages | |
64b88781 | 123 | |
72ff36db PG |
124 | %clean |
125 | rm -rf $RPM_BUILD_ROOT | |
126 | ||
127 | %files | |
128 | %defattr(644,root,root,755) | |
3219856b | 129 | %doc TODO ChangeLog install.log optional-packages.txt |
ceba87b1 | 130 | %{php_pear_dir}/.registry/*.reg |
28e2acbb ER |
131 | %{php_pear_dir}/HTML/Template/Flexy |
132 | %{php_pear_dir}/HTML/Template/Flexy.php | |
26f1514f | 133 | %{php_pear_dir}/data/%{pearname} |