# Scripts to mass-upload images into tutor-web
# How to run:
# plone@twserver:~/mobile-tutorweb$ ./bin/instance-debug debug
import os
import os.path
import transaction
from zope.app.component.hooks import setSite
from plone.namedfile.file import NamedBlobImage
from Testing.makerequest import makerequest

app = makerequest(app)
portal = app['tutor-web']
setSite(portal)

# *** Change the source and the destination here
#container = portal.restrictedTraverse('comp/crypto251.0/lec00100')
#image_directory = '/home/gunnar/uploads/smly-01'
container = portal.restrictedTraverse('comp/crypto251.0/images') # try to use a single image folder in Plone
image_directory = '/home/gunnar/uploads/smly-04'                 # set this to the local image directory

for image_file in os.listdir(image_directory):
    container.invokeFactory(
        type_name='Image',
        title=image_file,
        id=image_file,
        image=NamedBlobImage(
            data=open(os.path.join(image_directory, image_file), 'rb').read()))

transaction.commit()
app._p_jar.sync()
