Пример #1
0
def export(items, tempdir):
    """Export a list of items
    
    Arguments
    items -- list of items to export
    tempdir -- directory to use for the export operation
    
    """
    initdir = spm.spmanager.getFirstPath([spm.ExportFolder, 
                                          spm.ImportFolder, 
                                          spm.MostRecentFolder])
    
    filenamepath = tkFileDialog.asksaveasfilename(initialdir = initdir, 
                                                  filetypes = ff.dlgExportFormats, 
                                                  defaultextension = ff.dlgDefaultExportExt)
        
    if(len(filenamepath) < 1):
        return
    
    spm.spmanager.setPath(spm.ExportFolder, os.path.dirname(filenamepath))
    
    #Create export dir and datamodel
    dmdir = os.path.join(tempdir, _exportdir)
    
    if(os.path.exists(dmdir)):
       shutil.rmtree(dmdir)
       
    os.makedirs(dmdir)
    
    dm = DataModel(dmdir)
    
    #Add all slideshows
    for item in items:
        if(not dm.addSlideshow(item, True)):
            showerror(lang[lng.txtExportError], lang[lng.txtCouldNotExport] + item.title)
            shutil.rmtree(dmdir)
            return

    #Save and zip
    dm.saveToFile()
    pack(dmdir, filenamepath)
    shutil.rmtree(dmdir)