Merge pull request #3194 from NoelDeMartin/MOBILE-3833
MOBILE-3833 courses: Add site home link handler & fix site listing stylesmain
commit
64da66be79
|
@ -15,17 +15,18 @@
|
|||
import { Injectable } from '@angular/core';
|
||||
import { CoreContentLinksHandlerBase } from '@features/contentlinks/classes/base-handler';
|
||||
import { CoreContentLinksAction } from '@features/contentlinks/services/contentlinks-delegate';
|
||||
import { CoreMainMenuHomeHandlerService } from '@features/mainmenu/services/handlers/mainmenu';
|
||||
import { CoreNavigator } from '@services/navigator';
|
||||
import { makeSingleton } from '@singletons';
|
||||
import { CoreDashboardHomeHandler, CoreDashboardHomeHandlerService } from './dashboard-home';
|
||||
|
||||
/**
|
||||
* Handler to treat links to my overview.
|
||||
* Handler to treat links to dashboard.
|
||||
*/
|
||||
@Injectable({ providedIn: 'root' })
|
||||
export class CoreCoursesDashboardLinkHandlerService extends CoreContentLinksHandlerBase {
|
||||
|
||||
name = 'CoreCoursesMyOverviewLinkHandler';
|
||||
name = 'CoreCoursesDashboardLinkHandler';
|
||||
pattern = /\/my\/?$/;
|
||||
|
||||
/**
|
||||
|
@ -37,7 +38,13 @@ export class CoreCoursesDashboardLinkHandlerService extends CoreContentLinksHand
|
|||
return [{
|
||||
action: (siteId): void => {
|
||||
// Use redirect to select the tab.
|
||||
CoreNavigator.navigateToSitePath(CoreDashboardHomeHandlerService.PAGE_NAME, { siteId });
|
||||
CoreNavigator.navigateToSitePath(
|
||||
`/${CoreMainMenuHomeHandlerService.PAGE_NAME}/${CoreDashboardHomeHandlerService.PAGE_NAME}`,
|
||||
{
|
||||
siteId,
|
||||
preferCurrentTab: false,
|
||||
},
|
||||
);
|
||||
},
|
||||
}];
|
||||
}
|
||||
|
|
|
@ -38,7 +38,8 @@
|
|||
max-width: fit-content;
|
||||
width: auto;
|
||||
height: auto;
|
||||
margin: 0 50% 0 auto; // LTR will be applied on transform.
|
||||
margin: 0 auto;
|
||||
margin-left: 50%;
|
||||
@include transform(translate3d(-50%,0,0));
|
||||
object-fit: cover;
|
||||
object-position: 50% 50%;
|
||||
|
@ -50,6 +51,15 @@
|
|||
}
|
||||
}
|
||||
|
||||
:host-context([dir="rtl"]) {
|
||||
|
||||
.item ion-thumbnail img {
|
||||
margin-left: 0;
|
||||
margin-right: 50%;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
.core-login-site-logo,
|
||||
.core-login-site-list,
|
||||
.core-login-site-list-found {
|
||||
|
|
|
@ -20,6 +20,8 @@ import { CoreContentLinksAction } from '@features/contentlinks/services/contentl
|
|||
import { CoreSiteHome } from '../sitehome';
|
||||
import { makeSingleton } from '@singletons';
|
||||
import { CoreNavigator } from '@services/navigator';
|
||||
import { CoreSiteHomeHomeHandlerService } from './sitehome-home';
|
||||
import { CoreMainMenuHomeHandlerService } from '@features/mainmenu/services/handlers/mainmenu';
|
||||
|
||||
/**
|
||||
* Handler to treat links to site home index.
|
||||
|
@ -29,7 +31,7 @@ export class CoreSiteHomeIndexLinkHandlerService extends CoreContentLinksHandler
|
|||
|
||||
name = 'CoreSiteHomeIndexLinkHandler';
|
||||
featureName = 'CoreMainMenuDelegate_CoreSiteHome';
|
||||
pattern = /\/course\/view\.php.*([?&]id=\d+)/;
|
||||
pattern = /\/course\/view\.php.*([?&]id=\d+)|\/index\.php(\?redirect=0)?/;
|
||||
|
||||
/**
|
||||
* @inheritdoc
|
||||
|
@ -37,10 +39,13 @@ export class CoreSiteHomeIndexLinkHandlerService extends CoreContentLinksHandler
|
|||
getActions(): CoreContentLinksAction[] | Promise<CoreContentLinksAction[]> {
|
||||
return [{
|
||||
action: (siteId: string): void => {
|
||||
CoreNavigator.navigateToSitePath('/home/site', {
|
||||
CoreNavigator.navigateToSitePath(
|
||||
`/${CoreMainMenuHomeHandlerService.PAGE_NAME}/${CoreSiteHomeHomeHandlerService.PAGE_NAME}`,
|
||||
{
|
||||
preferCurrentTab: false,
|
||||
siteId,
|
||||
});
|
||||
},
|
||||
);
|
||||
},
|
||||
}];
|
||||
}
|
||||
|
@ -51,7 +56,7 @@ export class CoreSiteHomeIndexLinkHandlerService extends CoreContentLinksHandler
|
|||
async isEnabled(siteId: string, url: string, params: Record<string, string>, courseId?: number): Promise<boolean> {
|
||||
courseId = parseInt(params.id, 10);
|
||||
if (!courseId) {
|
||||
return false;
|
||||
return url.includes('index.php');
|
||||
}
|
||||
|
||||
const site = await CoreSites.getSite(siteId);
|
||||
|
|
Loading…
Reference in New Issue