uploaded by works, and now you can view art on its own page.
[zzz-floof.git] / floof / model / art.py
index 725b9e8..1df10cc 100644 (file)
@@ -4,9 +4,30 @@
 #   Copyright (c) 2009 Scribblr
 #
 
-from elixir import Entity, Field, Integer, Unicode
+# from elixir import Entity, Field, Integer, Unicode
+from elixir import *
+
+from pylons import config
+
+from floof.lib.file_storage import get_path, save_file
 
 class Art(Entity):
     title = Field(Unicode(120))
-    # filename = Field(Unicode(120))
+    original_filename = Field(Unicode(120))
+    hash = Field(String)
+    uploaded_by = ManyToOne('User')
+
+    def __init__(self, **kwargs):
+        # I wanted to check for the existence of the file, but...
+        # for some reason this FieldStorage object always conditions as falsey.
+        self.hash = save_file("art", kwargs.pop('file'))
+        super(Art, self).__init__(**kwargs)
+        # this is what super is doing, pretty much.
+        # for key, value in kwargs.items():
+        #     setattr(self, key, value)
+        
+
 
+    def get_path(self):
+        if self.hash:
+            return get_path("art", self.hash)