mirror of
				https://gitlab.ub.uni-bielefeld.de/sfb1288inf/nopaque.git
				synced 2025-11-03 20:02:47 +00:00 
			
		
		
		
	Add more metadate to corpus files
This commit is contained in:
		@@ -5,12 +5,20 @@ from wtforms.validators import DataRequired, Length
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class AddCorpusFileForm(FlaskForm):
 | 
			
		||||
    author = StringField('Author', validators=[DataRequired(), Length(1, 64)])
 | 
			
		||||
    address = StringField('Adress', validators=[Length(0, 255)])
 | 
			
		||||
    author = StringField('Author', validators=[DataRequired(), Length(1, 255)])
 | 
			
		||||
    booktitle = StringField('Booktitle', validators=[Length(0, 255)])
 | 
			
		||||
    chapter = StringField('Chapter', validators=[Length(0, 255)])
 | 
			
		||||
    editor = StringField('Editor', validators=[Length(0, 255)])
 | 
			
		||||
    file = FileField('File', validators=[DataRequired()])
 | 
			
		||||
    publishing_year = IntegerField('Publishing year',
 | 
			
		||||
                                   validators=[DataRequired()])
 | 
			
		||||
    institution = StringField('institution', validators=[Length(0, 255)])
 | 
			
		||||
    journal = StringField('Journal', validators=[Length(0, 255)])
 | 
			
		||||
    pages = StringField('pages', validators=[Length(0, 255)])
 | 
			
		||||
    publisher = StringField('Publisher', validators=[Length(0, 255)])
 | 
			
		||||
    publishing_year = IntegerField('Publishing year', validators=[DataRequired()])
 | 
			
		||||
    school = StringField('School', validators=[Length(0, 255)])
 | 
			
		||||
    submit = SubmitField()
 | 
			
		||||
    title = StringField('Title', validators=[DataRequired(), Length(1, 64)])
 | 
			
		||||
    title = StringField('Title', validators=[DataRequired(), Length(1, 255)])
 | 
			
		||||
 | 
			
		||||
    def validate_file(form, field):
 | 
			
		||||
        if not field.data.filename.lower().endswith('.vrt'):
 | 
			
		||||
 
 | 
			
		||||
@@ -369,11 +369,20 @@ class CorpusFile(db.Model):
 | 
			
		||||
    __tablename__ = 'corpus_files'
 | 
			
		||||
    # Primary key
 | 
			
		||||
    id = db.Column(db.Integer, primary_key=True)
 | 
			
		||||
    author = db.Column(db.String(64))
 | 
			
		||||
    address = db.Column(db.String(255))
 | 
			
		||||
    author = db.Column(db.String(255))
 | 
			
		||||
    booktitle = db.Column(db.String(255))
 | 
			
		||||
    chapter = db.Column(db.String(255))
 | 
			
		||||
    dir = db.Column(db.String(255))
 | 
			
		||||
    editor = db.Column(db.String(255))
 | 
			
		||||
    filename = db.Column(db.String(255))
 | 
			
		||||
    institution = db.Column(db.String(255))
 | 
			
		||||
    journal = db.Column(db.String(255))
 | 
			
		||||
    pages = db.Column(db.String(255))
 | 
			
		||||
    publisher = db.Column(db.String(255))
 | 
			
		||||
    publishing_year = db.Column(db.Integer)
 | 
			
		||||
    title = db.Column(db.String(64))
 | 
			
		||||
    school = db.Column(db.String(255))
 | 
			
		||||
    title = db.Column(db.String(255))
 | 
			
		||||
    corpus_id = db.Column(db.Integer, db.ForeignKey('corpora.id'))
 | 
			
		||||
 | 
			
		||||
    def delete(self):
 | 
			
		||||
@@ -394,8 +403,17 @@ class CorpusFile(db.Model):
 | 
			
		||||
                            self.dir, self.filename)
 | 
			
		||||
        element_tree = ET.parse(file)
 | 
			
		||||
        text_node = element_tree.find('text')
 | 
			
		||||
        text_node.set('address', self.address)
 | 
			
		||||
        text_node.set('author', self.author)
 | 
			
		||||
        text_node.set('booktitle', self.booktitle)
 | 
			
		||||
        text_node.set('chapter', self.chapter)
 | 
			
		||||
        text_node.set('editor', self.editor)
 | 
			
		||||
        text_node.set('institution', self.institution)
 | 
			
		||||
        text_node.set('journal', self.journal)
 | 
			
		||||
        text_node.set('pages', self.pages)
 | 
			
		||||
        text_node.set('publisher', self.publisher)
 | 
			
		||||
        text_node.set('publishing_year', str(self.publishing_year))
 | 
			
		||||
        text_node.set('school', self.school)
 | 
			
		||||
        text_node.set('title', self.title)
 | 
			
		||||
        element_tree.write(file)
 | 
			
		||||
        self.corpus.status = 'unprepared'
 | 
			
		||||
 
 | 
			
		||||
@@ -7,9 +7,10 @@
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<div class="col s12 m8">
 | 
			
		||||
  <form method="POST" enctype="multipart/form-data">
 | 
			
		||||
  <div class="card">
 | 
			
		||||
    <form method="POST" enctype="multipart/form-data">
 | 
			
		||||
      <div class="card-content">
 | 
			
		||||
        <span class="card-title">Required metadata</span>
 | 
			
		||||
        {{ add_corpus_file_form.hidden_tag() }}
 | 
			
		||||
        <div class="row">
 | 
			
		||||
          <div class="col s12 m4">
 | 
			
		||||
@@ -61,7 +62,29 @@
 | 
			
		||||
      <div class="card-action right-align">
 | 
			
		||||
        <button class="btn waves-effect waves-light" id="submit" name="submit" type="submit">Submit<i class="material-icons right">send</i></button>
 | 
			
		||||
      </div>
 | 
			
		||||
    </form>
 | 
			
		||||
  </div>
 | 
			
		||||
    </div>
 | 
			
		||||
    <br>
 | 
			
		||||
    <ul class="collapsible hoverable">
 | 
			
		||||
      <li>
 | 
			
		||||
        <div class="collapsible-header"><i class="material-icons">add</i>Add additional metadata</div>
 | 
			
		||||
        <div class="collapsible-body">
 | 
			
		||||
          <span>
 | 
			
		||||
            <div class="row">
 | 
			
		||||
              <div class="col s12">
 | 
			
		||||
                <div class="input-field">
 | 
			
		||||
                  <i class="material-icons prefix">person</i>
 | 
			
		||||
                  {{ add_corpus_file_form.author(data_length='64') }}
 | 
			
		||||
                  {{ add_corpus_file_form.author.label }}
 | 
			
		||||
                  {% for error in add_corpus_file_form.author.errors %}
 | 
			
		||||
                    <span class="helper-text red-text">{{ error }}</span>
 | 
			
		||||
                  {% endfor %}
 | 
			
		||||
                </div>
 | 
			
		||||
              </div>
 | 
			
		||||
            </div>
 | 
			
		||||
          </span>
 | 
			
		||||
        </div>
 | 
			
		||||
      </li>
 | 
			
		||||
    </ul>
 | 
			
		||||
  </form>
 | 
			
		||||
</div>
 | 
			
		||||
{% endblock %}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user