MOBILE-3068 comments: Open comments in new page if split view
parent
5794bade90
commit
43d6839a8d
|
@ -1,4 +1,4 @@
|
||||||
<a *ngIf="commentsEnabled" ion-item text-wrap (click)="showComments()" detail-none>
|
<a *ngIf="commentsEnabled" ion-item text-wrap (click)="showComments($event)" detail-none>
|
||||||
<h2>{{plugin.name}}</h2>
|
<h2>{{plugin.name}}</h2>
|
||||||
<core-comments contextLevel="module" [instanceId]="assign.cmid" component="assignsubmission_comments" [itemId]="submission.id" area="submission_comments" [title]="plugin.name"></core-comments>
|
<core-comments contextLevel="module" [instanceId]="assign.cmid" component="assignsubmission_comments" [itemId]="submission.id" area="submission_comments" [title]="plugin.name"></core-comments>
|
||||||
</a>
|
</a>
|
||||||
|
|
|
@ -48,7 +48,7 @@ export class AddonModAssignSubmissionCommentsComponent extends AddonModAssignSub
|
||||||
/**
|
/**
|
||||||
* Show the comments.
|
* Show the comments.
|
||||||
*/
|
*/
|
||||||
showComments(): void {
|
showComments(e?: Event): void {
|
||||||
this.commentsComponent && this.commentsComponent.openComments();
|
this.commentsComponent && this.commentsComponent.openComments(e);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,11 +12,12 @@
|
||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
import { Component, EventEmitter, Input, OnChanges, OnDestroy, Output, SimpleChange } from '@angular/core';
|
import { Component, EventEmitter, Input, OnChanges, OnDestroy, Output, SimpleChange, Optional } from '@angular/core';
|
||||||
import { NavController } from 'ionic-angular';
|
import { NavController } from 'ionic-angular';
|
||||||
import { CoreCommentsProvider } from '../../providers/comments';
|
import { CoreCommentsProvider } from '../../providers/comments';
|
||||||
import { CoreEventsProvider } from '@providers/events';
|
import { CoreEventsProvider } from '@providers/events';
|
||||||
import { CoreSitesProvider } from '@providers/sites';
|
import { CoreSitesProvider } from '@providers/sites';
|
||||||
|
import { CoreSplitViewComponent } from '@components/split-view/split-view';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Component that displays the count of comments.
|
* Component that displays the count of comments.
|
||||||
|
@ -44,7 +45,9 @@ export class CoreCommentsCommentsComponent implements OnChanges, OnDestroy {
|
||||||
protected refreshCommentsObserver;
|
protected refreshCommentsObserver;
|
||||||
|
|
||||||
constructor(private navCtrl: NavController, private commentsProvider: CoreCommentsProvider,
|
constructor(private navCtrl: NavController, private commentsProvider: CoreCommentsProvider,
|
||||||
sitesProvider: CoreSitesProvider, eventsProvider: CoreEventsProvider) {
|
sitesProvider: CoreSitesProvider, eventsProvider: CoreEventsProvider,
|
||||||
|
@Optional() private svComponent: CoreSplitViewComponent) {
|
||||||
|
|
||||||
this.onLoading = new EventEmitter<boolean>();
|
this.onLoading = new EventEmitter<boolean>();
|
||||||
|
|
||||||
this.disabled = this.commentsProvider.areCommentsDisabledInSite();
|
this.disabled = this.commentsProvider.areCommentsDisabledInSite();
|
||||||
|
@ -135,10 +138,17 @@ export class CoreCommentsCommentsComponent implements OnChanges, OnDestroy {
|
||||||
/**
|
/**
|
||||||
* Opens the comments page.
|
* Opens the comments page.
|
||||||
*/
|
*/
|
||||||
openComments(): void {
|
openComments(e?: Event): void {
|
||||||
|
if (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
e.stopPropagation();
|
||||||
|
}
|
||||||
|
|
||||||
if (!this.disabled && !this.countError) {
|
if (!this.disabled && !this.countError) {
|
||||||
// Open a new state with the interpolated contents.
|
// Open a new state with the interpolated contents.
|
||||||
this.navCtrl.push('CoreCommentsViewerPage', {
|
const navCtrl = this.svComponent ? this.svComponent.getMasterNav() : this.navCtrl;
|
||||||
|
|
||||||
|
navCtrl.push('CoreCommentsViewerPage', {
|
||||||
contextLevel: this.contextLevel,
|
contextLevel: this.contextLevel,
|
||||||
instanceId: this.instanceId,
|
instanceId: this.instanceId,
|
||||||
componentName: this.component,
|
componentName: this.component,
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<core-loading *ngIf="!disabled" [hideUntil]="commentsLoaded || !displaySpinner">
|
<core-loading *ngIf="!disabled" [hideUntil]="commentsLoaded || !displaySpinner">
|
||||||
<div (click)="openComments()" *ngIf="!countError" [class.core-comments-clickable]="!disabled">
|
<div (click)="openComments($event)" *ngIf="!countError" [class.core-comments-clickable]="!disabled">
|
||||||
{{ 'core.comments.commentscount' | translate : {'$a': commentsCount} }}
|
{{ 'core.comments.commentscount' | translate : {'$a': commentsCount} }}
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="countError">
|
<div *ngIf="countError">
|
||||||
|
|
Loading…
Reference in New Issue