MOBILE-3002 block: Add HTML block feature
parent
34061ad5ab
commit
11eee9b8a8
|
@ -0,0 +1,36 @@
|
|||
// (C) Copyright 2015 Martin Dougiamas
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
import { NgModule } from '@angular/core';
|
||||
import { IonicModule } from 'ionic-angular';
|
||||
import { CoreBlockDelegate } from '@core/block/providers/delegate';
|
||||
import { AddonBlockHtmlHandler } from './providers/block-handler';
|
||||
|
||||
@NgModule({
|
||||
declarations: [
|
||||
],
|
||||
imports: [
|
||||
IonicModule
|
||||
],
|
||||
exports: [
|
||||
],
|
||||
providers: [
|
||||
AddonBlockHtmlHandler
|
||||
]
|
||||
})
|
||||
export class AddonBlockHtmlModule {
|
||||
constructor(blockDelegate: CoreBlockDelegate, blockHandler: AddonBlockHtmlHandler) {
|
||||
blockDelegate.registerHandler(blockHandler);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,50 @@
|
|||
// (C) Copyright 2015 Martin Dougiamas
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
import { Injectable, Injector } from '@angular/core';
|
||||
import { CoreBlockHandlerData } from '@core/block/providers/delegate';
|
||||
import { CoreBlockPreRenderedComponent } from '@core/block/components/pre-rendered-block/pre-rendered-block';
|
||||
import { CoreBlockBaseHandler } from '@core/block/classes/base-block-handler';
|
||||
|
||||
/**
|
||||
* Block handler.
|
||||
*/
|
||||
@Injectable()
|
||||
export class AddonBlockHtmlHandler extends CoreBlockBaseHandler {
|
||||
name = 'AddonBlockHtml';
|
||||
blockName = 'html';
|
||||
|
||||
constructor() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the data needed to render the block.
|
||||
*
|
||||
* @param {Injector} injector Injector.
|
||||
* @param {any} block The block to render.
|
||||
* @param {string} contextLevel The context where the block will be used.
|
||||
* @param {number} instanceId The instance ID associated with the context level.
|
||||
* @return {CoreBlockHandlerData|Promise<CoreBlockHandlerData>} Data or promise resolved with the data.
|
||||
*/
|
||||
getDisplayData(injector: Injector, block: any, contextLevel: string, instanceId: number)
|
||||
: CoreBlockHandlerData | Promise<CoreBlockHandlerData> {
|
||||
|
||||
return {
|
||||
title: block.contents.title,
|
||||
class: 'addon-block-html',
|
||||
component: CoreBlockPreRenderedComponent
|
||||
};
|
||||
}
|
||||
}
|
|
@ -95,6 +95,7 @@ import { AddonBlockCalendarMonthModule } from '@addon/block/calendarmonth/calend
|
|||
import { AddonBlockCalendarUpcomingModule } from '@addon/block/calendarupcoming/calendarupcoming.module';
|
||||
import { AddonBlockCommentsModule } from '@addon/block/comments/comments.module';
|
||||
import { AddonBlockCompletionStatusModule } from '@addon/block/completionstatus/completionstatus.module';
|
||||
import { AddonBlockHtmlModule } from '@addon/block/html/html.module';
|
||||
import { AddonBlockMyOverviewModule } from '@addon/block/myoverview/myoverview.module';
|
||||
import { AddonBlockLearningPlansModule } from '@addon/block/learningplans/learningplans.module';
|
||||
import { AddonBlockPrivateFilesModule } from '@addon/block/privatefiles/privatefiles.module';
|
||||
|
@ -224,6 +225,7 @@ export const CORE_PROVIDERS: any[] = [
|
|||
AddonBlockCalendarUpcomingModule,
|
||||
AddonBlockCommentsModule,
|
||||
AddonBlockCompletionStatusModule,
|
||||
AddonBlockHtmlModule,
|
||||
AddonBlockLearningPlansModule,
|
||||
AddonBlockMyOverviewModule,
|
||||
AddonBlockPrivateFilesModule,
|
||||
|
|
|
@ -4,9 +4,8 @@ ion-app.app-root .item core-format-text,
|
|||
ion-app.app-root core-rich-text-editor .core-rte-editor {
|
||||
@include core-headings();
|
||||
|
||||
font-size: 1.4rem;
|
||||
|
||||
p {
|
||||
font-size: 1.4rem;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue