Sophie

Sophie

distrib > Fedora > 13 > i386 > media > updates-src > by-pkgid > f086a176a515a83a7f5ae65b972d189d > files > 3

xinha-0.96.1-2.fc13.src.rpm

Name:		xinha
Version:	0.96.1
Release:	2%{?dist}
Summary:	A WYSIWIG HTML editor component in Javascript

Group:		Development/Languages
License:	BSD and PHP and LGPLv2+ and CC-BY-SA
URL:		http://www.xinha.org

Source0:	http://fedorahosted.org/release/x/i/Xinha-%{version}.tar.bz2
Source1:	xinha.conf

BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
BuildArch:	noarch

Requires:	perl-XML-DOM
Requires:	perl-Text-Aspell

# These would be required for some plugins to work
# (those would be the plugins we conveniently remove in %setup)
#  * Requires:	php-magickwand
#  * Requires:	php-gd
#  * Requires:	Some other PEAR libraries which aren't in Fedora (yet)

%description
Xinha is a Javascript component that can be used to enhance a textarea field in
HTML. It can be used on its own or as part of a larger WYSIWYG module such as
Scribite.

%prep
%setup -q -c tmp/Xinha-%{version}
mv tmp/Xinha-%{version} Xinha-%{version}
rm -rf tmp
cp -p %SOURCE1 .

# Remove precompiled binaries and other illegal files
find Xinha-%{version} | grep \.jar$ | xargs rm
find Xinha-%{version} | grep \.htaccess$ | xargs rm

# Fix permissions on non-executables
find Xinha-%{version} | grep \.js$ | xargs chmod a-x
find Xinha-%{version} | grep \.php$ | xargs chmod a-x
find Xinha-%{version} | grep \.css$ | xargs chmod a-x
find Xinha-%{version} | grep \.html$ | xargs chmod a-x
find Xinha-%{version} | grep \.svg$ | xargs chmod a-x

# Remove plugins that contain unresolvable dependecies
rm -rf Xinha-%{version}/plugins/ImageManager/
rm -rf Xinha-%{version}/plugins/ExtendedFileManager/
rm -rf Xinha-%{version}/unsupported_plugins/
rm -rf Xinha-%{version}/contrib/

# Remove carriage returns
cat Xinha-%{version}/skins/inditreuse/README | tr -d "\r \n" > README.unix
mv README.unix Xinha-%{version}/skins/inditreuse/README
cat Xinha-%{version}/license.txt| tr -d "\r \n" > license.unix
mv license.unix Xinha-%{version}/license.txt
cat Xinha-%{version}/skins/titan/README | tr -d "\r \n" > README.unix
mv README.unix Xinha-%{version}/skins/titan/README


# Organize the documentation files into folders. We can't just
# simply %doc <file> them because they're often named the same
mkdir doc
mkdir doc/tango-images
mkdir doc/tango-icons doc/crystal-icons
mkdir doc/inditreuse-skin doc/titan-skin
mkdir doc/InsertSmiley doc/SmartReplace doc/Equation doc/SpellChecker
mkdir doc/SaveSubmit doc/FormOperations doc/InsertSnippet doc/InsertSnippet2

mv Xinha-%{version}/license.txt doc
mv Xinha-%{version}/release-notes.txt doc
mv Xinha-%{version}/XinhaLoader_readme.txt doc

mv Xinha-%{version}/images/tango/COPYING doc/tango-images

#mv Xinha-%{version}/iconsets/Tango/LICENSE doc/tango-icons
mv Xinha-%{version}/iconsets/Tango/README doc/tango-icons
mv Xinha-%{version}/iconsets/Crystal/LICENSE doc/crystal-icons
mv Xinha-%{version}/iconsets/Crystal/README doc/crystal-icons

mv Xinha-%{version}/skins/inditreuse/README doc/inditreuse-skin
mv Xinha-%{version}/skins/titan/README doc/titan-skin

mv Xinha-%{version}/plugins/InsertSmiley/README.txt doc/InsertSmiley
mv Xinha-%{version}/plugins/SmartReplace/readme.txt doc/SmartReplace
mv Xinha-%{version}/plugins/Equation/readme.txt doc/Equation
mv Xinha-%{version}/plugins/SpellChecker/README doc/SpellChecker
mv Xinha-%{version}/plugins/SpellChecker/readme-tech.html doc/SpellChecker
mv Xinha-%{version}/plugins/SaveSubmit/README.txt doc/SaveSubmit
mv Xinha-%{version}/plugins/FormOperations/README doc/FormOperations
mv Xinha-%{version}/plugins/InsertSnippet/readme.html doc/InsertSnippet
mv Xinha-%{version}/plugins/InsertSnippet2/readme.html doc/InsertSnippet2

mv Xinha-%{version}/examples doc/examples

%build

# There's nothing to build here; we're just copying js/php.

%install

# Clean the build root
rm -rf $RPM_BUILD_ROOT

# Create the directory (if not already there) where js is supposed to go
mkdir -p $RPM_BUILD_ROOT%{_datadir}/js/%{name}-%{version}
cp -p -r -a Xinha-%{version}/* $RPM_BUILD_ROOT%{_datadir}/js/%{name}-%{version}

# Create conf.d, if it's not there already, and copy over our .conf file
mkdir -p $RPM_BUILD_ROOT/etc/httpd/conf.d
install -p -m 0644 %{name}.conf $RPM_BUILD_ROOT/etc/httpd/conf.d/%{name}.conf

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,-)
%{_datadir}/js/%{name}-%{version}
%config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf

# Install documentation
# If removed plugins are reintegrated in the future, remember
# to include their documentation files.

%doc doc/*

# Note that this package includes locales, but they are implemented
# in JSON, not .mo files, so we can't currently handle them. We'll
# just have to let Xinha handle them as it sees fit until we have
# a better protocol for doing so.

%changelog
* Sat May 29 2010 Rakesh Pandit <rakesh@fedoraproject.org> - 0.96.1-2
- Bumped to fix missing dist tag

* Sat May 29 2010 Rakesh Pandit <rakesh@fedoraproject.org> - 0.96.1-1
- Updated to 0.96.1
- CVE-2010-1916 xinha: access restriction bypass [MOPS 2010-020]

* Mon Oct 19 2009 Matthew Daniels <danielsmw@gmail.com> - 0.96-0.1.b2
- Spec file submission (initial package creation)