Пример #1
0
class Saver():

  def __init__(self,outputfilename="prova2.elp",titol="Exportacio de LliureX"):

    self._outputfile = outputfilename
    self._titol = titol

    self.document = Package('LLiureX')

    self.document.set_name('Lliurex')
    self.document.set_description('Lliurex')
    self.document.set_author('Lliurex')
    self.document.set_title('Documentacio LLiurex')

  def addWikipedia(self,title,url,parent):
     W = WikipediaIdeviceLliurex(url)
     W.set_title(title)
     W.edit = False
     W.loadArticle("")
     W.undo = False
     parent.addIdevice(W)

  def save(self):
    self.document.save(self._outputfile)

  def AddNode(self,parent,titol):
    Fill = parent.createChild();
    Fill.setTitle(titol)
    return Fill

  def getRoot(self):
    return self.document.root
Пример #2
0
    def render_POST(self, request):
        #check the parameters
        required_headers = ['ldshake_frame_origin','name','sectoken']

        for r_h in required_headers:
            if r_h not in request.args:
                return 'error'

        #get an id and increment the counter
        self.id_count_lock.acquire()
        id = self.id_count;
        self.id_count += 1
        self.id_count_lock.release()

        package_name = request.args['sectoken'][0]

        if 'document' not in request.args:
            package = Package(package_name)
        else:
            fullpath = '/var/local/exelearning/' + package_name + '_' + str(random.randrange(1,999999)) + '.elp'
            try:
                elp_file = open(fullpath, "wb")
                elp_file.write(request.args['document'][0])
                elp_file.close()
                package = Package.load(fullpath, True, None)
                package.set_name(package_name)
            except:
                return 'error'

        self.putChild(str(id), LdShakeDocument({
            'name':     request.args['name'][0],
            'sectoken': request.args['sectoken'][0],
            'ldshake_frame_origin': request.args['ldshake_frame_origin'][0]
        }, self, package, self.webserver))

        #return the resource URL
        return request.prePathURL() + str(id) + '/'