def import_from_path(self, path, update=False): try: Release.objects.get(path = path) print "found release with identical path" if not update==True: return except: pass self.path = path self.title_from_path(path) self.find_cover(path) try: self.save() except: print "something went wrong savin that object! " + self from releases.admin import getfiles files = getfiles(path) for f in files: t = Track(release=self) t.import_from_path(f) try: t.save() except Exception as e: print "Error saving Track\n" + str(e) + str(e.args) return
def find_cover(self, path): from releases.admin import getfiles files = getfiles(path) images = getfiles(path, '.jpg') + getfiles(path, '.png') covers = [] for i in images: im = Image.open( i ) if im.size[0] == im.size[1]: covers.append((i, im.size[0])) if len(covers)>1: cover = sorted(covers, key=lambda cover: -cover[1])[0][0] elif len(covers)==1: cover = covers[0][0] else: cover = None if cover: i = open(cover) self.cover.save(cover, File( i )) i.close()