diff -r 373392025533 -r 3b1579a7bffb lib/utils.py --- a/lib/utils.py Wed Jun 03 18:59:46 2009 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,89 +0,0 @@ -# DeGAL - A pretty simple web image gallery -# Copyright (C) 2007 Tero Marttila -# http://marttila.de/~terom/degal/ -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# This program 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 General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the -# Free Software Foundation, Inc., -# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -# - -import os, os.path - -import settings - -def isImage (fname) : - """ - Is the given filename likely to be an image file? - """ - - fname = fname.lower() - base, ext = os.path.splitext(fname) - ext = ext.lstrip('.') - - return ext in settings.IMAGE_EXTS - -def readFile (path) : - fo = open(path, 'r') - data = fo.read() - fo.close() - - return data - -def fuzzyDecode (bytes) : - try : - return bytes.decode('utf8') - except UnicodeDecodeError : - return bytes.decode('latin1', 'replace') - -def readTitleDescr (path) : - """ - Read a title.txt or .txt file - """ - - if os.path.exists(path) : - content = readFile(path) - - if '---' in content : - title, descr = content.split('---', 1) - else : - title, descr = content, '' - - title, descr = fuzzyDecode(title), fuzzyDecode(descr) - - return title.strip(), descr.strip() - - return u"", u"" - -def url (*parts, **kwargs) : - abs = kwargs.pop('abs', False) - up = kwargs.pop('up', 0) - trailing = kwargs.pop('trailing', False) - - return '/'.join(([""]*int(abs)) + ([".."]*up) + list(parts) + ([""]*int(trailing))) - -url_join = url - -def path_join (*parts) : - return os.path.join(*[part for part in parts if part is not None]) - -def strip_path (path) : - return path.lstrip('.').lstrip('/') - -def mtime (path) : - try : - return os.stat(path).st_mtime - except OSError : - # no such file or directory - return None -