mirror of
				https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
				synced 2025-11-04 04:12:45 +00:00 
			
		
		
		
	Add back corpus export.
This commit is contained in:
		@@ -7,6 +7,8 @@ class CorpusDisplay extends RessourceDisplay {
 | 
			
		||||
 | 
			
		||||
  init(corpus) {
 | 
			
		||||
    this.corpus = corpus;
 | 
			
		||||
    for (let exportCorpusTriggerElement of this.displayElement.querySelectorAll('.export-corpus-trigger')) {exportCorpusTriggerElement.addEventListener('click', () => this.requestCorpusExport());}
 | 
			
		||||
    nopaque.appClient.socket.on(`export_corpus_${this.corpus.id}`, () => this.downloadCorpus());
 | 
			
		||||
    this.setCreationDate(this.corpus.creation_date);
 | 
			
		||||
    this.setDescription(this.corpus.description);
 | 
			
		||||
    this.setLastEditedDate(this.corpus.last_edited_date);
 | 
			
		||||
@@ -33,6 +35,21 @@ class CorpusDisplay extends RessourceDisplay {
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  requestCorpusExport() {
 | 
			
		||||
    nopaque.appClient.socket.emit('export_corpus', this.corpus.id);
 | 
			
		||||
    nopaque.flash('Preparing your corpus export...', 'corpus');
 | 
			
		||||
    for (let exportCorpusTriggerElement of this.displayElement.querySelectorAll('.export-corpus-trigger')) {exportCorpusTriggerElement.classList.toggle('disabled', true);}
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  downloadCorpus() {
 | 
			
		||||
    nopaque.flash('Corpus export is done. Your corpus download is ready!', 'corpus');
 | 
			
		||||
    for (let exportCorpusTriggerElement of this.displayElement.querySelectorAll('.export-corpus-trigger')) {exportCorpusTriggerElement.classList.toggle('disabled', false);}
 | 
			
		||||
    // Little trick to call the download view after ziping has finished
 | 
			
		||||
    let fakeBtn = document.createElement('a');
 | 
			
		||||
    fakeBtn.href = `/corpora/${this.corpus.id}/download`;
 | 
			
		||||
    fakeBtn.click();
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  setTitle(title) {
 | 
			
		||||
    for (let element of this.displayElement.querySelectorAll('.corpus-title')) {this.setElement(element, title);}
 | 
			
		||||
  }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user