Permalink
Browse files

Initial import to new Subversion repository.

This tree is so old and I've blocked too long that I'm not going to
try and preserve history.




git-svn-id: svn+ssh://vault.xythian.com/singleshot/trunk@266 7e82af7f-0629-0410-be36-c8f2cdeb922f
  • Loading branch information...
fox
fox committed Aug 3, 2008
0 parents commit bc230c5dc06fb2781ffe5f4edcb9c7c0271a8970
@@ -0,0 +1,44 @@
Version 2.0.0a3
- Add pagination to album view page to deal with huge directories of
images
- Modify date handling to support year/month directories before
epoch (Jan 1 1970)
- Fix // issue with Apache 2
- Change macros template to 'macros.html' from 'page.html'
- Fix view caching so it detects changes to underlying items
Version 2.0.0a1, ...
- Substantially rearranged dispatch. All CGI entry now goes
through sscgi.py which centralizes some error reporting and
dispatches to action_* handlers.
- Defined a 'virtual' handler for files and directories that do not
exist, permitting the action_tag handler to be invoked for /tag/blah
- Replaced Cheetah with SimpleTAL for templates
- Added support to JpegHeader for reading XMP data from JPEGs
- Started to remove support for using raw JPEG comments as captions
- Defined mechanism for filtered images and added filters/ directory
to contain those filters.
- Added PIL-based resizer
- Moved image processing from albums.py to imageprocessor.py
- Moved tag-related code from albums.py to action_tag.py
- Added test script extractor.py for running experiments locally
- Removed traceback eating behavior of virtual_demand_property
- Started to define prettier template for default singleshot templates.K
- Completely rewrote EXIF and IPTC reading.
- Virtualized access to the CGI data to enable more deployment
options.
- Added experimental mod_python and FastCGI interfaces to allow
Singleshot to be run as a persistent process (== fast).
Version 1.0.1, 29 March 2004
- Bug fix #905628: Setting highlight image in _album.cfg doesn't work
- Moved classes around to remove cyclic dependency between some
modules
- Remove use of system() for resizing images; now uses process.py which in
turn uses fork/exec
- Improved diagnostic output of resize for error conditions
- Made singleshot.py more forgiving of spurious /s in input path
Version 1.0.0, 18 January 2004
-- First public release.
98 LICENSE
@@ -0,0 +1,98 @@
Singleshot is a web album publishing package.
Copyright (C) 2004-2005 Ken Fox http://www.xythian.com/
See http://www.singleshot.org/ for Singleshot information.
This library is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation; either version 2.1 of the
License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
USA
--------------------------------
Singleshot includes SimpleTAL 3.13 in simpletal-3.13.zip. SimpleTAL is
available from
http://www.owlfish.com/software/simpleTAL/
and is covered under the following license:
SimpleTAL 3.13
--------------------------------------------------------------------
Copyright (c) 2005 Colin Stewart (http://www.owlfish.com/)
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. The name of the author may not be used to endorse or promote products
derived from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
------------------------------------------------------------------
Singleshot also includes PyRSS2Gen from:
http://www.dalkescientific.com/Python/PyRSS2Gen.html
under the following license:
PyRSS2Gen 0.1.1
-----------------------------------------------------------------
(This is the BSD license, based on the template at
http://www.opensource.org/licenses/bsd-license.php )
Copyright (c) 2003, Dalke Scientific Software, LLC
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
* Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
* Neither the name of the Dalke Scientific Softare, LLC, Andrew
Dalke, nor the names of its contributors may be used to endorse or
promote products derived from this software without specific prior
written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
@@ -0,0 +1,5 @@
README
setup.py
recursive-include src *.py *.html
recursive-include scripts *.py
recursive-include lib *.py
133 README
@@ -0,0 +1,133 @@
Singleshot
==========
Web page
--------
Singleshot's home page is
http://www.singleshot.org/
There you will find this information as well as the current release.
Overview
--------
Web-based photo album software that requires minimal work after initial
setup. There is no external data and your album hierarchy can be maintained
by updating the files and directories in that tree. The administrator of the
singleshot installation can use Web server permissions to restrict access to
albums.
Singleshot does not require a special process or program for sharing photos.
You post the photos to your albums using the file upload program of your
choice.
Requirements
------------
You will need the following software installed on your web server
to install Singleshot.
* Apache http://www.apache.org/ with mod_rewrite
* Python 2.3+ http://www.python.org/
* ImageMagick http://www.imagemagick.org
Singleshot relies on setting mod_rewrite directives in .htaccess.
This facility needs to be enabled on the web server.
You will also need an appropriate unpacking tool to unpack the
Singleshot archive.
Definitions
-----------
album root
The directory that will become the root album of your new
Singleshot installation. Apache needs to be configured to serve this
directory.
.htaccess
File with directives to Apache to set up permissions, rewrite
rules, or other options. Singleshot comes with two of these, one for
the singleshot directory and one for the album root.
Instructions
------------
Instructions
1. Download and unpack Singleshot.
2. If you want Singleshot installed with the other Python libraries in
site-packages, run python setup.py install. Otherwise, skip this
step.
3. To set up a new album root using Singleshot, use the
singleshotinit.py script. It's in the scripts/ directory of the
unpacked SIngleshot distribution, or with the other
Python-library-installed scripts if you installed Singleshot into
site-packages.
4. Run singleshotinit.py -h to see a list of the command line options.
Generally, you'll want either the --standalone install. If you
installed Singleshot in a place not normally on sys.path (e.g. by
using the --home option to setup.py install), you'll need to either
put that on PYTHONPATH before running singleshotinit or tell
singleshot init about it using --path.
For example, suppose I wanted to get Singleshot running in my personal
web directory ~/public_html/photos which will show up on my web server
as /~fox/photos/ and I didn't want to install it in site-packages.
I'd unpack Singleshot's archive, cd into the directory, and run
./scripts/singleshotinit.py --root ~/public_html/photos --url /~fox/photos/ --standalone
Configurable things
-------------------------
Where ALBUMROOT is where you put your album root (--root above):
ALBUMROOT/_singleshot.cfg can also have (and default to the values below):
[imagesizes]
mini=40
thumb=200
view=600
large=1200
The imagesizes section is very important: it limits what sizes of
images can be requested from your album originals. With the above
configuration, downloads are limited to a max of 40, 200, 600, or 1200
pixels on a side. (That is, any picture downloaded will be scaled down
from the original size to one of the appropriate sizes) In a template,
referring to a size by number means 'show me that size or nothing',
but referring to a size by name means 'show me a permitted size no
larger than the one I asked for'.
_album.cfg in every directory can have:
[album]
title=foo ; sets the title of the album to foo
highlightimage=file.jpg ; uses file.jpg (in the current dir) as the 'cover' of the album
; default is to use the first image in the directory
order=dir,title,-mtime ; sort order for display. Valid orders are:
; title, dir, mtime, exifdate, name, href
; prepending '-' sorts in descending order instead of ascending
ALBUMROOT/pages can be a directory with files in it. foo.html will show up as URLROOT/foo/ and will display the contents of foo.html.
This is to enable you to easily create static pages on the site with the photos.
Writing templates
-----------------
http://www.owlfish.com/software/simpleTAL/tal-guide.html describes the syntax of the templating system used by Singleshot 2.x.
(** document attributes and objects exposed to templates **)
Binary file not shown.
Oops, something went wrong.

0 comments on commit bc230c5

Please sign in to comment.