MOBILE-3793 forum: Hide post being edited
This commit is contained in:
		
							parent
							
								
									a068384867
								
							
						
					
					
						commit
						5fa280fe32
					
				| @ -1,111 +1,115 @@ | ||||
| <div class="addon-mod_forum-post"> | ||||
|     <ion-card-header class="ion-text-wrap ion-no-padding" id="addon-mod_forum-post-{{post.id}}"> | ||||
|         <ion-item class="ion-text-wrap" [class.highlight]="highlight" lines="none"> | ||||
|             <ion-label> | ||||
|                 <div class="addon-mod-forum-post-title" *ngIf="displaySubject"> | ||||
|                     <h2 class="ion-text-wrap"> | ||||
|                         <ion-icon name="fas-map-pin" *ngIf="discussion && !post.parentid && discussion.pinned" | ||||
|                             [attr.aria-label]="'addon.mod_forum.discussionpinned' | translate"> | ||||
|                         </ion-icon> | ||||
|                         <ion-icon name="fas-star" class="addon-forum-star" | ||||
|                             [attr.aria-label]="'addon.mod_forum.favourites' | translate" | ||||
|                             *ngIf="discussion && !post.parentid && !discussion.pinned && discussion.starred"> | ||||
|                         </ion-icon> | ||||
|                         <core-format-text | ||||
|                             [text]="post.subject" | ||||
|                             contextLevel="module" [contextInstanceId]="forum && forum.cmid" [courseId]="courseId"> | ||||
|                         </core-format-text> | ||||
|                     </h2> | ||||
|                     <ion-note *ngIf="trackPosts && post.unread" | ||||
|                         class="ion-float-end ion-padding-start ion-text-end" [attr.aria-label]="'addon.mod_forum.unread' | translate"> | ||||
|                         <ion-icon name="fas-circle" color="primary" aria-hidden="true"></ion-icon> | ||||
|                     </ion-note> | ||||
|                     <ion-button *ngIf="optionsMenuEnabled" | ||||
|                         fill="clear" color="dark" [attr.aria-label]="('core.displayoptions' | translate)" | ||||
|                         (click)="showOptionsMenu($event)"> | ||||
|                         <ion-icon name="ellipsis-vertical" slot="icon-only" aria-hidden="true"> | ||||
|                         </ion-icon> | ||||
|                     </ion-button> | ||||
|                 </div> | ||||
|                 <div class="addon-mod-forum-post-info"> | ||||
|                     <core-user-avatar *ngIf="post.author && post.author.fullname" [user]="post.author" slot="start" [courseId]="courseId"> | ||||
|                     </core-user-avatar> | ||||
|                     <div class="addon-mod-forum-post-author"> | ||||
|                         <span *ngIf="post.author && post.author.fullname">{{post.author.fullname}}</span> | ||||
|                         <p *ngIf="post.author && post.author.groups"> | ||||
|                             <ng-container *ngFor="let group of post.author.groups"> | ||||
|                                 <ion-icon name="fas-users" [attr.aria-label]="'addon.mod_forum.group' | translate"> | ||||
|                                 </ion-icon> {{ group.name }} | ||||
|                             </ng-container> | ||||
|                         </p> | ||||
|                         <p *ngIf="post.timecreated">{{post.timecreated * 1000 | coreFormatDate: "strftimerecentfull"}}</p> | ||||
|                         <p *ngIf="!post.timecreated"> | ||||
|                             <ion-icon name="fas-clock" aria-hidden="true"></ion-icon> {{ 'core.notsent' | translate }} | ||||
|                         </p> | ||||
|                     </div> | ||||
|                     <ng-container *ngIf="!displaySubject"> | ||||
|                         <ion-note *ngIf="trackPosts && post.unread" | ||||
|                             class="ion-float-end ion-padding-start ion-text-end" [attr.aria-label]="'addon.mod_forum.unread' | translate"> | ||||
|     <ng-container *ngIf="!replyData.isEditing || !showForm"> | ||||
|         <ion-card-header class="ion-text-wrap ion-no-padding" id="addon-mod_forum-post-{{post.id}}"> | ||||
|             <ion-item class="ion-text-wrap" [class.highlight]="highlight" lines="none"> | ||||
|                 <ion-label> | ||||
|                     <div class="addon-mod-forum-post-title" *ngIf="displaySubject"> | ||||
|                         <h2 class="ion-text-wrap"> | ||||
|                             <ion-icon name="fas-map-pin" *ngIf="discussion && !post.parentid && discussion.pinned" | ||||
|                                 [attr.aria-label]="'addon.mod_forum.discussionpinned' | translate"> | ||||
|                             </ion-icon> | ||||
|                             <ion-icon name="fas-star" class="addon-forum-star" | ||||
|                                 [attr.aria-label]="'addon.mod_forum.favourites' | translate" | ||||
|                                 *ngIf="discussion && !post.parentid && !discussion.pinned && discussion.starred"> | ||||
|                             </ion-icon> | ||||
|                             <core-format-text | ||||
|                                 [text]="post.subject" | ||||
|                                 contextLevel="module" [contextInstanceId]="forum && forum.cmid" [courseId]="courseId"> | ||||
|                             </core-format-text> | ||||
|                         </h2> | ||||
|                         <ion-note *ngIf="trackPosts && post.unread" class="ion-float-end ion-padding-start ion-text-end" | ||||
|                             [attr.aria-label]="'addon.mod_forum.unread' | translate"> | ||||
|                             <ion-icon name="fas-circle" color="primary" aria-hidden="true"></ion-icon> | ||||
|                         </ion-note> | ||||
|                         <ion-button *ngIf="optionsMenuEnabled" | ||||
|                             fill="clear" color="dark" [attr.aria-label]="('core.displayoptions' | translate)" | ||||
|                             (click)="showOptionsMenu($event)"> | ||||
|                             <ion-icon name="ellipsis-vertical" slot="icon-only" aria-hidden="true"></ion-icon> | ||||
|                             <ion-icon name="ellipsis-vertical" slot="icon-only" aria-hidden="true"> | ||||
|                             </ion-icon> | ||||
|                         </ion-button> | ||||
|                     </ng-container> | ||||
|                 </div> | ||||
|             </ion-label> | ||||
|         </ion-item> | ||||
|     </ion-card-header> | ||||
|     <ion-card-content [class]="post.parentid == 0 ? 'ion-padding-top' : ''"> | ||||
|         <div class="ion-padding-bottom" *ngIf="post.isprivatereply"> | ||||
|             <ion-note color="danger">{{ 'addon.mod_forum.postisprivatereply' | translate }}</ion-note> | ||||
|         </div> | ||||
|         <core-format-text [component]="component" [componentId]="componentId" [text]="post.message" | ||||
|             contextLevel="module" [contextInstanceId]="forum && forum.cmid" [courseId]="courseId"> | ||||
|         </core-format-text> | ||||
|         <div lines="none" *ngIf="post.attachments && post.attachments.length > 0"> | ||||
|             <core-files [files]="post.attachments" [component]="component" [componentId]="componentId" showInline="true"> | ||||
|             </core-files> | ||||
|         </div> | ||||
|     </ion-card-content> | ||||
|     <div class="addon-mod-forum-post-more-info"> | ||||
|         <ion-item class="ion-text-wrap" *ngIf="tagsEnabled && post.tags && post.tags.length > 0" lines="none"> | ||||
|             <div slot="start">{{ 'core.tag.tags' | translate }}:</div> | ||||
|             <ion-label> | ||||
|                 <core-tag-list [tags]="post.tags"></core-tag-list> | ||||
|             </ion-label> | ||||
|         </ion-item> | ||||
|         <core-rating-rate *ngIf="forum && ratingInfo" | ||||
|             [ratingInfo]="ratingInfo" contextLevel="module" [instanceId]="componentId" [itemId]="post.id" | ||||
|             [itemSetId]="discussionId" [courseId]="courseId" [aggregateMethod]="forum.assessed" [scaleId]="forum.scale" | ||||
|             [userId]="post.author.id" (onUpdate)="ratingUpdated()"> | ||||
|         </core-rating-rate> | ||||
|         <core-rating-aggregate *ngIf="forum && ratingInfo" | ||||
|             [ratingInfo]="ratingInfo" contextLevel="module" [instanceId]="componentId" [itemId]="post.id" | ||||
|             [courseId]="courseId" [aggregateMethod]="forum.assessed" [scaleId]="forum.scale"> | ||||
|         </core-rating-aggregate> | ||||
|                     </div> | ||||
|                     <div class="addon-mod-forum-post-info"> | ||||
|                         <core-user-avatar *ngIf="post.author && post.author.fullname" [user]="post.author" slot="start" | ||||
|                             [courseId]="courseId"> | ||||
|                         </core-user-avatar> | ||||
|                         <div class="addon-mod-forum-post-author"> | ||||
|                             <span *ngIf="post.author && post.author.fullname">{{post.author.fullname}}</span> | ||||
|                             <p *ngIf="post.author && post.author.groups"> | ||||
|                                 <ng-container *ngFor="let group of post.author.groups"> | ||||
|                                     <ion-icon name="fas-users" [attr.aria-label]="'addon.mod_forum.group' | translate"> | ||||
|                                     </ion-icon> {{ group.name }} | ||||
|                                 </ng-container> | ||||
|                             </p> | ||||
|                             <p *ngIf="post.timecreated">{{post.timecreated * 1000 | coreFormatDate: "strftimerecentfull"}}</p> | ||||
|                             <p *ngIf="!post.timecreated"> | ||||
|                                 <ion-icon name="fas-clock" aria-hidden="true"></ion-icon> {{ 'core.notsent' | translate }} | ||||
|                             </p> | ||||
|                         </div> | ||||
|                         <ng-container *ngIf="!displaySubject"> | ||||
|                             <ion-note *ngIf="trackPosts && post.unread" class="ion-float-end ion-padding-start ion-text-end" | ||||
|                                 [attr.aria-label]="'addon.mod_forum.unread' | translate"> | ||||
|                                 <ion-icon name="fas-circle" color="primary" aria-hidden="true"></ion-icon> | ||||
|                             </ion-note> | ||||
|                             <ion-button *ngIf="optionsMenuEnabled" | ||||
|                                 fill="clear" color="dark" [attr.aria-label]="('core.displayoptions' | translate)" | ||||
|                                 (click)="showOptionsMenu($event)"> | ||||
|                                 <ion-icon name="ellipsis-vertical" slot="icon-only" aria-hidden="true"></ion-icon> | ||||
|                             </ion-button> | ||||
|                         </ng-container> | ||||
|                     </div> | ||||
|                 </ion-label> | ||||
|             </ion-item> | ||||
|         </ion-card-header> | ||||
|         <ion-card-content [class]="post.parentid == 0 ? 'ion-padding-top' : ''"> | ||||
|             <div class="ion-padding-bottom" *ngIf="post.isprivatereply"> | ||||
|                 <ion-note color="danger">{{ 'addon.mod_forum.postisprivatereply' | translate }}</ion-note> | ||||
|             </div> | ||||
|             <core-format-text [component]="component" [componentId]="componentId" [text]="post.message" | ||||
|                 contextLevel="module" [contextInstanceId]="forum && forum.cmid" [courseId]="courseId"> | ||||
|             </core-format-text> | ||||
|             <div lines="none" *ngIf="post.attachments && post.attachments.length > 0"> | ||||
|                 <core-files [files]="post.attachments" [component]="component" [componentId]="componentId" showInline="true"> | ||||
|                 </core-files> | ||||
|             </div> | ||||
|         </ion-card-content> | ||||
|         <div class="addon-mod-forum-post-more-info"> | ||||
|             <ion-item class="ion-text-wrap" *ngIf="tagsEnabled && post.tags && post.tags.length > 0" lines="none"> | ||||
|                 <div slot="start">{{ 'core.tag.tags' | translate }}:</div> | ||||
|                 <ion-label> | ||||
|                     <core-tag-list [tags]="post.tags"></core-tag-list> | ||||
|                 </ion-label> | ||||
|             </ion-item> | ||||
|             <core-rating-rate *ngIf="forum && ratingInfo" | ||||
|                 [ratingInfo]="ratingInfo" contextLevel="module" [instanceId]="componentId" [itemId]="post.id" | ||||
|                 [itemSetId]="discussionId" [courseId]="courseId" [aggregateMethod]="forum.assessed" [scaleId]="forum.scale" | ||||
|                 [userId]="post.author.id" (onUpdate)="ratingUpdated()"> | ||||
|             </core-rating-rate> | ||||
|             <core-rating-aggregate *ngIf="forum && ratingInfo" | ||||
|                 [ratingInfo]="ratingInfo" contextLevel="module" [instanceId]="componentId" [itemId]="post.id" | ||||
|                 [courseId]="courseId" [aggregateMethod]="forum.assessed" [scaleId]="forum.scale"> | ||||
|             </core-rating-aggregate> | ||||
| 
 | ||||
|         <ion-item *ngIf="post.id > 0 && post.capabilities.reply && !post.isprivatereply" | ||||
|             class="ion-no-padding ion-text-end addon-forum-reply-button"> | ||||
|             <ion-label> | ||||
|                 <ion-button fill="clear" size="small" | ||||
|                     [attr.aria-controls]="'addon-forum-reply-edit-form-' + uniqueId" | ||||
|                     [attr.aria-expanded]="replyData.replyingTo === post.id" | ||||
|                     (click)="showReplyForm($event)"> | ||||
|                     <ion-icon name="fas-reply" slot="start" aria-hidden="true"></ion-icon> | ||||
|                     {{ 'addon.mod_forum.reply' | translate }} | ||||
|                 </ion-button> | ||||
|             </ion-label> | ||||
|         </ion-item> | ||||
|     </div> | ||||
|             <ion-item *ngIf="post.id > 0 && post.capabilities.reply && !post.isprivatereply" | ||||
|                 class="ion-no-padding ion-text-end addon-forum-reply-button"> | ||||
|                 <ion-label> | ||||
|                     <ion-button fill="clear" size="small" | ||||
|                         [attr.aria-controls]="'addon-forum-reply-edit-form-' + uniqueId" | ||||
|                         [attr.aria-expanded]="replyData.replyingTo === post.id" | ||||
|                         (click)="showReplyForm($event)"> | ||||
|                         <ion-icon name="fas-reply" slot="start" aria-hidden="true"></ion-icon> | ||||
|                         {{ 'addon.mod_forum.reply' | translate }} | ||||
|                     </ion-button> | ||||
|                 </ion-label> | ||||
|             </ion-item> | ||||
|         </div> | ||||
|     </ng-container> | ||||
| 
 | ||||
|     <form *ngIf="showForm" | ||||
|         [id]="'addon-forum-reply-edit-form-' + uniqueId" #replyFormEl> | ||||
|         <ion-item> | ||||
|             <ion-label position="stacked">{{ 'addon.mod_forum.subject' | translate }}</ion-label> | ||||
|             <ion-input type="text" [placeholder]="'addon.mod_forum.subject' | translate" [(ngModel)]="replyData.subject" name="subject"> | ||||
|             <ion-input type="text" [placeholder]="'addon.mod_forum.subject' | translate" [(ngModel)]="replyData.subject" | ||||
|                 name="subject"> | ||||
|             </ion-input> | ||||
|         </ion-item> | ||||
|         <ion-item> | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user