File php5-pear-DB_DataObject_FormBuilder.spec of Package php5-pear-DB_DataObject_FormBuilder

# spec file for package php5-pear-DB_DataObject_FormBuilder
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via

# norootforbuild

Name:           php5-pear-DB_DataObject_FormBuilder
%define pear_name  DB_DataObject_FormBuilder
%define pear_sname db_dataobject_formbuilder
Summary:        Build automatically HTML_QuickForm objects from a DB_DataObject-derived class
Version:        1.0.1
Release:        1
License:        LGPL
Group:          Productivity/Networking/Web/Servers
BuildArch:      noarch
Url:  {pear_name}
Source:         %{pear_name}-%{version}.tgz
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  php-macros
BuildRequires:  php >= 4.3
BuildRequires:  php5-pear
Requires:       php >= 4.3
Requires:       php5-pear
Requires:       pear-DB_DataObject >= 1.8.5
Requires:       pear-HTML_QuickForm >= 3.2.4
# optional
Suggests:       pear-Date >= 1.4.7
Suggests:       pear-HTML_Table >= 1.7.5
Suggests:       pear-HTML_QuickForm_ElementGrid >= 0.1.0
Provides:       php-pear-%{pear_name} pear-%{pear_name}
# Fix for renaming (package convention)
Provides:       php5-pear-%{pear_sname} = %{version}
Provides:       php-pear-%{pear_sname} = %{version}
Provides:       pear-%{pear_sname} = %{version}
Obsoletes:      php5-pear-%{pear_sname} < %{version}
Obsoletes:      php-pear-%{pear_sname} < %{version}
Obsoletes:      pear-%{pear_sname} < %{version}

DB_DataObject_FormBuilder will aid you in rapid application development using the
 packages DB_DataObject and HTML_QuickForm. For having a quick but working
 prototype of your application, simply model the database, run DataObject`s
 createTable script over it and write a script that passes one of the resulting
 objects to the FormBuilder class. The FormBuilder will automatically generate a
 simple but working HTML_QuickForm object that you can use to test your application.
 It also provides a processing method that will automatically detect if an insert()
 or update() command has to be executed after the form has been submitted.
 If you have set up DataObject&apos;s links.ini file correctly, it will also
 automatically detect if a table field is a foreign key and will populate a
 selectbox with the linked table&apos;s entries. There are many optional
 parameters that you can place in your DataObjects.ini or in the properties of
 your derived classes, that you can use to fine-tune the form-generation,
 gradually turning the prototypes into fully-featured forms, and you can
 take control at any stage of the process.

%setup -c


%{__mv} package*.xml %{pear_name}-%{version}
cd %{pear_name}-%{version}
PHP_PEAR_PHP_BIN="$(which php) -d memory_limit=50m"
%{__pear} -v \
        -d doc_dir=/doc \
        -d bin_dir=%{_bindir} \
        -d data_dir=%{php_peardir}/data \
        install --offline --nodeps -R "%{buildroot}" package.xml

%{__install} -D -m 0644 package.xml %{buildroot}%{php_pearxmldir}/%{pear_name}.xml

%{__rm} -rf %{buildroot}/{doc,tmp}
%{__rm} -rf %{buildroot}%{php_peardir}/.{filemap,lock,registry,channels,depdb,depdblock}

cd ..


# on `rpm -ivh` PARAM is 1
# on `rpm -Uvh` PARAM is 2
if [ "$1" = "1" ]; then
  %{__pear} install --nodeps --soft --force --register-only %{php_pearxmldir}/%{pear_name}.xml
if [ "$1" = "2" ]; then
  %{__pear} upgrade --offline --register-only %{php_pearxmldir}/%{pear_name}.xml

# on `rpm -e` PARAM is 0
if [ "$1" = "0" ]; then
  %{__pear} uninstall --nodeps --ignore-errors --register-only{pear_name}

%{__rm} -rf %{buildroot}

%files -f %{name}.files
%defattr(-, root, root)
%doc %{pear_name}-%{version}/examples