def createProject(self, form):

        db = self.__db
        cursor = self.__cursor
        hostname = self.__hostname

        #print "Content-type:text/html"		# TEMPORARY, REMOVE AFTER DEBUGGING TO HAVE SCRIPT REDIRECT PROPERLY!!!!!!
        #print					# DITTO
        #print `form`

        # Handlers
        pHandler = ProjectDatabaseHandler(db, cursor)
        uHandler = UserHandler(db, cursor)

        # Get form values
        projectID = form.getvalue("packetID")
        ownerID = form.getvalue("packetOwner")

        # get owner's name
        packetOwner = uHandler.getUserByID(ownerID)

        packetName = form.getvalue("packetName")
        packetDescription = form.getvalue("packetDescription")

        # private or public
        if form.getvalue("private_or_public") == "public":
            isPrivate = False
        else:
            isPrivate = True

        # Lists of project readers & editors
        # These are lists of INTEGER USER IDs!!!!!
        # A User instance needs to be created for each!!!!!!!
        projectReaderIDs = form.getlist("readersTargetList")
        projectWriterIDs = form.getlist("writersTargetList")

        projectReaders = []
        projectWriters = []

        for rID in projectReaderIDs:
            tmpReader = uHandler.getUserByID(rID)
            projectReaders.append(tmpReader)

        for wID in projectWriterIDs:
            tmpWriter = uHandler.getUserByID(wID)

            # Now check if the user is an OpenFreezer writer - otherwise cannot be made Writer on a project
            if tmpWriter.getCategory() != 'Reader':
                projectWriters.append(tmpWriter)

        newProject = Packet(projectID, packetName, packetDescription,
                            packetOwner, isPrivate, projectReaders,
                            projectWriters)
        packetID = pHandler.insertPacket(
            newProject)  # new project is empty by default

        self.showProjectDetails('view', newProject)
	def createProject(self, form):
		
		db = self.__db
		cursor = self.__cursor
		hostname = self.__hostname
		
		#print "Content-type:text/html"		# TEMPORARY, REMOVE AFTER DEBUGGING TO HAVE SCRIPT REDIRECT PROPERLY!!!!!!
		#print					# DITTO
		#print `form`
		
		# Handlers
		pHandler = ProjectDatabaseHandler(db, cursor)
		uHandler = UserHandler(db, cursor)

		# Get form values
		projectID = form.getvalue("packetID")
		ownerID = form.getvalue("packetOwner")

		# get owner's name
		packetOwner = uHandler.getUserByID(ownerID)

		packetName = form.getvalue("packetName")
		packetDescription = form.getvalue("packetDescription")
		
		# private or public
		if form.getvalue("private_or_public") == "public":
			isPrivate = False
		else:
			isPrivate = True
		
		# Lists of project readers & editors
		# These are lists of INTEGER USER IDs!!!!!
		# A User instance needs to be created for each!!!!!!!
		projectReaderIDs = form.getlist("readersTargetList")
		projectWriterIDs = form.getlist("writersTargetList")

		projectReaders = []
		projectWriters = []

		for rID in projectReaderIDs:
			tmpReader = uHandler.getUserByID(rID)
			projectReaders.append(tmpReader)
		
		for wID in projectWriterIDs:
			tmpWriter = uHandler.getUserByID(wID)
			
			# Now check if the user is an OpenFreezer writer - otherwise cannot be made Writer on a project
			if tmpWriter.getCategory() != 'Reader':
				projectWriters.append(tmpWriter)
			
		newProject = Packet(projectID, packetName, packetDescription, packetOwner, isPrivate, projectReaders, projectWriters)
		packetID = pHandler.insertPacket(newProject)		# new project is empty by default

		self.showProjectDetails('view', newProject)