def upload_new_world(self, world):
        """
        Uploads a new world to the current FTP server connection
        
        :param world: The InfiniteWorld object for the world to upload
        :type world: InfiniteWorld
        """
        path = world.worldFolder.getFilePath("level.dat")[:-10]
        world_name = path.split(os.path.sep)[-1]
        if not self._host.path.exists(world_name):
            self._host.mkdir(world_name)
        self._host.chdir(world_name)
        for root, directory, files in os.walk(world.worldFolder.getFilePath("level.dat")[:-10]):
            for folder in directory:
                target = self._host.path.join(root.replace(path, ""), folder).replace("\\", "", 1).replace("\\", "/")
                print "Target: "+target
                if not "##MCEDIT.TEMP##" in target:
                    if not self._host.path.exists(target):
                        self._host.makedirs(target)
        for root, directory, files in os.walk(world.worldFolder.getFilePath("level.dat")[:-10]):
            for f in files:
                target = self._host.path.join(root.replace(path, ""), f).replace("\\", "", 1).replace("\\", "/")
                print target
                try:
                    self._host.upload(os.path.join(root, f), target)
                except Exception as e:
                    if "226" in e.message:
                        pass
                    else:
                        print "Error: {0}".format(e.message)

        Uploads a new world to the current FTP server connection
        
        :param world: The InfiniteWorld object for the world to upload
        :type world: InfiniteWorld
        
ftp_client.py