diff --git a/app/apps/api/serializers.py b/app/apps/api/serializers.py index 61532a14ac5367a20821b0fc24bcf713866e73e5..e69add839008d6dc165a8575f89a6b53b472510a 100644 --- a/app/apps/api/serializers.py +++ b/app/apps/api/serializers.py @@ -102,11 +102,15 @@ class DocumentSerializer(serializers.ModelSerializer): transcriptions = TranscriptionSerializer(many=True, read_only=True) valid_block_types = BlockTypeSerializer(many=True, read_only=True) valid_line_types = LineTypeSerializer(many=True, read_only=True) + parts_count = serializers.SerializerMethodField() class Meta: model = Document fields = ('pk', 'name', 'transcriptions', - 'valid_block_types', 'valid_line_types') + 'valid_block_types', 'valid_line_types', 'parts_count') + + def get_parts_count(self, document): + return document.parts.count() class PartSerializer(serializers.ModelSerializer): @@ -127,6 +131,7 @@ class PartSerializer(serializers.ModelSerializer): 'image', 'bw_image', 'workflow', + 'order', 'recoverable', 'transcription_progress' ) diff --git a/front/vue/components/TabContent.vue b/front/vue/components/TabContent.vue index b51bd7ebc411f9f4465d4018b64b3f4021a2a9b7..11cecaa5bc220a6f46412c754b792f30ce1f68bf 100644 --- a/front/vue/components/TabContent.vue +++ b/front/vue/components/TabContent.vue @@ -15,6 +15,10 @@ class="nav-btn nav-prev" title="Previous (Page Up or Ctrl+Right Arrow)"> <i class="fas fa-angle-left"></i></a> + <input type="number" + v-if="$store.state.parts.loaded" + v-bind:value="$store.state.parts.order+1" + @change.lazy="goTo"/> <div> <button id="zoom-reset" @click="resetZoom" @@ -156,6 +160,9 @@ export default { resetZoom() { this.zoom.reset(); }, + async goTo(ev) { + await this.$store.dispatch('parts/loadPart', 'previous'); + }, async getPrevious(ev) { await this.$store.dispatch('parts/loadPart', 'previous'); },