(self)
return s
Main function. Process the request, set headers and return a string as response.
Main function. Process the request, set headers and return a string as response.
Main function . Process the request set headers and return a string as response .
def doResponse(self):
		"Main function. Process the request, set headers and return a string as response."
		s = ""
		# Check if this connector is disabled
		if not(Config.Enabled):
			return self.sendError(1, "This connector is disabled.  Please check the connector configurations in \"editor/filemanager/connectors/py/config.py\" and try again.")
		# Make sure we have valid inputs
		for key in ("Command","Type","CurrentFolder"):
			if not self.request.has_key (key):
				return
		# Get command, resource type and current folder
		command = self.request.get("Command")
		resourceType = self.request.get("Type")
		currentFolder = getCurrentFolder(self.request.get("CurrentFolder"))
		# Check for invalid paths
		if currentFolder is None:
			return self.sendError(102, "")

		# Check if it is an allowed command
		if ( not command in Config.ConfigAllowedCommands ):
			return self.sendError( 1, 'The %s command isn\'t allowed' % command )

		if ( not resourceType in Config.ConfigAllowedTypes  ):
			return self.sendError( 1, 'Invalid type specified' )

		# Setup paths
		if command == "QuickUpload":
			self.userFilesFolder = Config.QuickUploadAbsolutePath[resourceType]
			self.webUserFilesFolder =  Config.QuickUploadPath[resourceType]
		else:
			self.userFilesFolder = Config.FileTypesAbsolutePath[resourceType]
			self.webUserFilesFolder = Config.FileTypesPath[resourceType]

		if not self.userFilesFolder: # no absolute path given (dangerous...)
			self.userFilesFolder = mapServerPath(self.environ,
									self.webUserFilesFolder)
		# Ensure that the directory exists.
		if not os.path.exists(self.userFilesFolder):
			try:
				self.createServerFoldercreateServerFolder( self.userFilesFolder )
			except:
				return self.sendError(1, "This connector couldn\'t access to local user\'s files directories.  Please check the UserFilesAbsolutePath in \"editor/filemanager/connectors/py/config.py\" and try again. ")

		# File upload doesn't have to return XML, so intercept here
		if (command == "FileUpload"):
			return self.uploadFile(resourceType, currentFolder)

		# Create Url
		url = combinePaths( self.webUserFilesFolder, currentFolder )

		# Begin XML
		s += self.createXmlHeader(command, resourceType, currentFolder, url)
		# Execute the command
		selector = {"GetFolders": self.getFolders,
					"GetFoldersAndFiles": self.getFoldersAndFiles,
					"CreateFolder": self.createFolder,
					}
		s += selector[command](resourceType, currentFolder)
		s += self.createXmlFooter()
		return s
def doResponse ( self ) : s = "" # Check if this connector is disabled if not ( Config . Enabled ) : return self . sendError ( 1 , "This connector is disabled.  Please check the connector configurations in \"editor/filemanager/connectors/py/config.py\" and try again." ) # Make sure we have valid inputs for key in ( "Command" , "Type" , "CurrentFolder" ) : if not self . request . has_key ( key ) : return # Get command, resource type and current folder command = self . request . get ( "Command" ) resourceType = self . request . get ( "Type" ) currentFolder = getCurrentFolder ( self . request . get ( "CurrentFolder" ) ) # Check for invalid paths if currentFolder is None : return self . sendError ( 102 , "" ) # Check if it is an allowed command if ( not command in Config . ConfigAllowedCommands ) : return self . sendError ( 1 , 'The %s command isn\'t allowed' % command ) if ( not resourceType in Config . ConfigAllowedTypes ) : return self . sendError ( 1 , 'Invalid type specified' ) # Setup paths if command == "QuickUpload" : self . userFilesFolder = Config . QuickUploadAbsolutePath [ resourceType ] self . webUserFilesFolder = Config . QuickUploadPath [ resourceType ] else : self . userFilesFolder = Config . FileTypesAbsolutePath [ resourceType ] self . webUserFilesFolder = Config . FileTypesPath [ resourceType ] if not self . userFilesFolder : # no absolute path given (dangerous...) self . userFilesFolder = mapServerPath ( self . environ , self . webUserFilesFolder ) # Ensure that the directory exists. if not os . path . exists ( self . userFilesFolder ) : try : self . createServerFoldercreateServerFolder ( self . userFilesFolder ) except : return self . sendError ( 1 , "This connector couldn\'t access to local user\'s files directories.  Please check the UserFilesAbsolutePath in \"editor/filemanager/connectors/py/config.py\" and try again. " ) # File upload doesn't have to return XML, so intercept here if ( command == "FileUpload" ) : return self . uploadFile ( resourceType , currentFolder ) # Create Url url = combinePaths ( self . webUserFilesFolder , currentFolder ) # Begin XML s += self . createXmlHeader ( command , resourceType , currentFolder , url ) # Execute the command selector = { "GetFolders" : self . getFolders , "GetFoldersAndFiles" : self . getFoldersAndFiles , "CreateFolder" : self . createFolder , } s += selector [ command ] ( resourceType , currentFolder ) s += self . createXmlFooter ( ) return s