MOBILE-4470 tag: Add new tagarea for badges
parent
9d30620080
commit
b739011de9
|
@ -2578,6 +2578,7 @@
|
|||
"core.tag.searchtags": "tag",
|
||||
"core.tag.showingfirsttags": "tag",
|
||||
"core.tag.tag": "moodle",
|
||||
"core.tag.tagarea_badge": "badges",
|
||||
"core.tag.tagarea_course": "tag",
|
||||
"core.tag.tagarea_course_modules": "tag",
|
||||
"core.tag.tagarea_post": "tag",
|
||||
|
|
|
@ -23,6 +23,8 @@ import { AddonBadgesUserHandler } from './services/handlers/user';
|
|||
import { CoreMainMenuTabRoutingModule } from '@features/mainmenu/mainmenu-tab-routing.module';
|
||||
import { CorePushNotificationsDelegate } from '@features/pushnotifications/services/push-delegate';
|
||||
import { AddonBadgesPushClickHandler } from './services/handlers/push-click';
|
||||
import { CoreTagAreaDelegate } from '@features/tag/services/tag-area-delegate';
|
||||
import { AddonBadgesTagAreaHandler } from './services/handlers/tag-area';
|
||||
|
||||
/**
|
||||
* Get badges services.
|
||||
|
@ -57,6 +59,7 @@ const mainMenuRoutes: Routes = [
|
|||
CoreContentLinksDelegate.registerHandler(AddonBadgesBadgeLinkHandler.instance);
|
||||
CoreUserDelegate.registerHandler(AddonBadgesUserHandler.instance);
|
||||
CorePushNotificationsDelegate.registerClickHandler(AddonBadgesPushClickHandler.instance);
|
||||
CoreTagAreaDelegate.registerHandler(AddonBadgesTagAreaHandler.instance);
|
||||
},
|
||||
},
|
||||
],
|
||||
|
|
|
@ -0,0 +1,53 @@
|
|||
// (C) Copyright 2015 Moodle Pty Ltd.
|
||||
//
|
||||
// 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, Type } from '@angular/core';
|
||||
import { CoreTagFeedComponent } from '@features/tag/components/feed/feed';
|
||||
import { CoreTagAreaHandler } from '@features/tag/services/tag-area-delegate';
|
||||
import { CoreTagFeedElement, CoreTagHelper } from '@features/tag/services/tag-helper';
|
||||
import { makeSingleton } from '@singletons';
|
||||
import { AddonBadges } from '../badges';
|
||||
|
||||
/**
|
||||
* Handler to support tags.
|
||||
*/
|
||||
@Injectable({ providedIn: 'root' })
|
||||
export class AddonBadgesTagAreaHandlerService implements CoreTagAreaHandler {
|
||||
|
||||
name = 'AddonBadgesTagAreaHandler';
|
||||
type = 'core_badges/badge';
|
||||
|
||||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
isEnabled(): Promise<boolean> {
|
||||
return AddonBadges.isPluginEnabled();
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
async parseContent(content: string): Promise<CoreTagFeedElement[]> {
|
||||
return CoreTagHelper.parseFeedContent(content);
|
||||
}
|
||||
|
||||
/**
|
||||
* @inheritdoc
|
||||
*/
|
||||
getComponent(): Type<unknown> | Promise<Type<unknown>> {
|
||||
return CoreTagFeedComponent;
|
||||
}
|
||||
|
||||
}
|
||||
export const AddonBadgesTagAreaHandler = makeSingleton(AddonBadgesTagAreaHandlerService);
|
|
@ -8,8 +8,9 @@
|
|||
"searchtags": "Search tags",
|
||||
"showingfirsttags": "Showing {{$a}} most popular tags",
|
||||
"tag": "Tag",
|
||||
"tagarea_course": "Courses",
|
||||
"tagarea_badge": "Badges",
|
||||
"tagarea_course_modules": "Activities and resources",
|
||||
"tagarea_course": "Courses",
|
||||
"tagarea_post": "Blog posts",
|
||||
"tagarea_user": "User interests",
|
||||
"tagareabadgedescription": "There are {{count}} items.",
|
||||
|
|
|
@ -69,7 +69,7 @@ export class CoreTagAreaDelegateService extends CoreDelegate<CoreTagAreaHandler>
|
|||
* @returns String key.
|
||||
*/
|
||||
getDisplayNameKey(component: string, itemType: string): string {
|
||||
return (component == 'core' ? 'core.tag' : 'addon.' + component) + '.tagarea_' + itemType;
|
||||
return (component === 'core' || component.startsWith('core_') ? 'core.tag' : 'addon.' + component) + '.tagarea_' + itemType;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue