<!-- Buttons to add to the header. -->
<core-navbar-buttons slot="end">
    <ion-button fill="clear" (click)="openModuleSummary()" aria-haspopup="true" [attr.aria-label]="'core.info' | translate">
        <ion-icon name="fas-circle-info" slot="icon-only" aria-hidden="true" />
    </ion-button>
</core-navbar-buttons>

<!-- Content. -->
<core-loading [hideUntil]="!showLoading">

    <!-- Activity info. -->
    <core-course-module-info [module]="module" [description]="description" [component]="component" [componentId]="componentId"
        [courseId]="courseId" (completionChanged)="onCompletionChange()" />

    <ion-list>
        <ion-item>
            <ion-label>
                <h2>{{ 'addon.mod_book.toc' | translate }}</h2>
            </ion-label>
        </ion-item>

        <ion-item class="ion-text-wrap" *ngFor="let chapter of chapters" [class.item-dimmed]="chapter.hidden" button [detail]="true"
            (click)="openBook(chapter.id)">
            <ion-label>
                <p [class.ion-padding-start]="addPadding && chapter.level === 1 ? true : null">
                    <span *ngIf="showNumbers" class="addon-mod-book-number">{{chapter.indexNumber}} </span>
                    <span *ngIf="showBullets" class="addon-mod-book-bullet">&bull; </span>
                    <core-format-text [text]="chapter.title" contextLevel="module" [contextInstanceId]="module.id" [courseId]="courseId" />
                </p>
            </ion-label>
        </ion-item>
    </ion-list>

    <div collapsible-footer appearOnBottom *ngIf="!showLoading" slot="fixed">
        <div class="list-item-limited-width">
            <ion-button expand="block" (click)="openBook()" class="ion-margin ion-text-wrap">
                <span *ngIf="!hasStartedBook">{{ 'core.start' | translate }}</span>
                <span *ngIf="hasStartedBook">{{ 'core.resume' | translate }}</span>
            </ion-button>
        </div>

        <core-course-module-navigation [courseId]="courseId" [currentModuleId]="module.id" />
    </div>
</core-loading>
