#!/usr/bin/env python
print 'running update images'
import os

basedir = os.getcwd()
heididir = open('heididir').read()
largesize = '800x600'
#smallsize = '200x150'
smallsize = '230x173'
navs = ',gallery,videos,members,classes,contact,links,events'.split(',')

def bashsafe(cmd):
	cmd = cmd.replace(' ','\ ')
	cmd = cmd.replace('(','\(')
	cmd = cmd.replace(')','\)')
	cmd = cmd.replace("'","\'")
	return cmd
def filterimages(files):
	return filter(lambda x:x[-4:].lower() in ['.jpg','.png','.gif'],files)
def ensurepathexists(path):
	if not os.path.exists(path):
		os.system('mkdir -p %s'%bashsafe(path))

def makewebimages(mainfolder):
	folders = os.listdir(os.path.join(heididir,mainfolder))
	folders = filter(lambda x:os.path.isdir(os.path.join(heididir,mainfolder,x)),folders)
	for folder in folders:
		files = os.listdir(os.path.join(heididir,mainfolder,folder))
		images = filterimages(files)
		for image in images:
			source = os.path.join(heididir,mainfolder,folder,image)
			destpath = os.path.join(basedir,mainfolder,folder)
			dest = os.path.join(destpath,image)
			smalldest = os.path.join(destpath,'small',image)
			ensurepathexists(destpath)
			ensurepathexists(os.path.join(destpath,'small'))
			cmd = "convert -resize %s %s %s"%(largesize, bashsafe(source), bashsafe(dest))
			cmd2 = "convert -resize %s %s %s"%(smallsize, bashsafe(source), bashsafe(smalldest))
			if source.find("'") != -1:
				print 'this file SUCKS, renaming it'
				os.rename(source,source.replace("'",""))
			if not os.path.exists(dest):
				print 'resize'
				os.system(cmd)
			if not os.path.exists(smalldest):
				print 'resize small'
				os.system(cmd2)

makewebimages('gallery')
makewebimages('events')
makewebimages('members')

os.system('cp -r %s %s'%(os.path.join(heididir,'images'),basedir))

