Merge branch 'master' into ofop
[redakcja.git] / apps / filebrowser / base.py
diff --git a/apps/filebrowser/base.py b/apps/filebrowser/base.py
deleted file mode 100644 (file)
index c124026..0000000
+++ /dev/null
@@ -1,214 +0,0 @@
-# -*- coding: utf-8
-
-from django.conf import settings
-from django.utils.encoding import smart_unicode
-from filebrowser.fb_settings import *
-
-from filebrowser.functions import _get_file_type, _url_join, _is_selectable, \
-    _get_version_path
-
-from time import gmtime, strftime
-
-import locale
-import os
-import re
-import datetime
-import urllib
-
-
-# filebrowser imports
-
-# PIL import
-if STRICT_PIL:
-    from PIL import Image
-else:
-    try:
-        from PIL import Image
-    except ImportError:
-        import Image
-
-
-def filesystem_encoding(ucode):
-    ucode = ucode.encode('utf-8')
-    ucode = urllib.quote(ucode)
-    return ucode
-
-
-class FileObject(object):
-    """
-    The FileObject represents a File on the Server.
-
-    PATH has to be relative to MEDIA_ROOT.
-    """
-
-    def __init__(self, path):
-        self.path = path
-        self.head = os.path.split(path)[0]
-        self.filename = os.path.split(path)[1]
-        self.filename_lower = self.filename.lower()  # important for sorting
-        self.filetype = _get_file_type(self.filename)
-
-    def _filesize(self):
-        """
-        Filesize.
-        """
-        if os.path.isfile(os.path.join(MEDIA_ROOT, self.path)) or os.path.isdir(os.path.join(MEDIA_ROOT, self.path)):
-            return os.path.getsize(os.path.join(MEDIA_ROOT, self.path))
-        return ""
-    filesize = property(_filesize)
-
-    def _date(self):
-        """
-        Date.
-        """
-        if os.path.isfile(os.path.join(MEDIA_ROOT, self.path)) or os.path.isdir(os.path.join(MEDIA_ROOT, self.path)):
-            return os.path.getmtime(os.path.join(MEDIA_ROOT, self.path))
-        # IMHO this should raise an exception
-        return None
-    date = property(_date)
-
-    def _datetime(self):
-        """
-        Datetime Object.
-        """
-        return datetime.datetime.fromtimestamp(self.date)
-    datetime = property(_datetime)
-
-    def _extension(self):
-        """
-        Extension.
-        """
-        return u"%s" % os.path.splitext(self.filename)[1]
-    extension = property(_extension)
-
-    def _filetype_checked(self):
-        if self.filetype == "Folder" and os.path.isdir(self.path_full):
-            return self.filetype
-        elif self.filetype != "Folder" and os.path.isfile(self.path_full):
-            return self.filetype
-        else:
-            return ""
-    filetype_checked = property(_filetype_checked)
-
-    def _path_full(self):
-        """
-        Full server PATH including MEDIA_ROOT.
-        """
-        return u"%s" % os.path.join(MEDIA_ROOT, self.path)
-    path_full = property(_path_full)
-
-    def _path_relative(self):
-        return self.path
-    path_relative = property(_path_relative)
-
-    def _path_relative_directory(self):
-        """
-        Path relative to initial directory.
-        """
-        directory_re = re.compile(r'^(%s)' % (DIRECTORY))
-        value = directory_re.sub('', self.path)
-        return u"%s" % value
-    path_relative_directory = property(_path_relative_directory)
-
-    def _url_relative(self):
-        return self.path
-    url_relative = property(_url_relative)
-
-    def _url_full(self):
-        """
-        Full URL including MEDIA_URL.
-        """
-        return filesystem_encoding(u"%s" % _url_join(MEDIA_URL, self.path))
-
-    url_full = property(_url_full)
-
-    def _url_save(self):
-        """
-        URL used for the filebrowsefield.
-        """
-        if SAVE_FULL_URL:
-            return self.url_full
-        else:
-            return filesystem_encoding(self.path)
-    url_save = property(_url_save)
-
-    def _url_thumbnail(self):
-        """
-        Thumbnail URL.
-        """
-        if self.filetype == "Image":
-            return filesystem_encoding(u"%s" % _url_join(MEDIA_URL, _get_version_path(self.path, u'fb_thumb')))
-        else:
-            return ""
-    url_thumbnail = property(_url_thumbnail)
-
-    def url_admin(self):
-        if self.filetype_checked == "Folder":
-            directory_re = re.compile(r'^(%s)' % (DIRECTORY))
-            value = directory_re.sub('', self.path)
-            return filesystem_encoding(u"%s" % value)
-        else:
-            return filesystem_encoding(u"%s" % _url_join(MEDIA_URL, self.path))
-
-    def _dimensions(self):
-        """
-        Image Dimensions.
-        """
-        if self.filetype == 'Image':
-            try:
-                im = Image.open(os.path.join(MEDIA_ROOT, self.path))
-                return im.size
-            except:
-                pass
-        else:
-            return False
-    dimensions = property(_dimensions)
-
-    def _width(self):
-        """
-        Image Width.
-        """
-        return self.dimensions[0]
-    width = property(_width)
-
-    def _height(self):
-        """
-        Image Height.
-        """
-        return self.dimensions[1]
-    height = property(_height)
-
-    def _orientation(self):
-        """
-        Image Orientation.
-        """
-        if self.dimensions:
-            if self.dimensions[0] >= self.dimensions[1]:
-                return "Landscape"
-            else:
-                return "Portrait"
-        else:
-            return None
-    orientation = property(_orientation)
-
-    def _is_empty(self):
-        """
-        True if Folder is empty, False if not.
-        """
-        if os.path.isdir(self.path_full):
-            if not os.listdir(self.path_full):
-                return True
-            else:
-                return False
-        else:
-            return None
-    is_empty = property(_is_empty)
-
-    def __repr__(self):
-        return u"%s" % self.url_save
-
-    def __str__(self):
-        return u"%s" % self.url_save
-
-    def __unicode__(self):
-        return u"%s" % self.url_save