Skip to content

Commit c1a877b

Browse files
committed
Merge branch 'fix/invalid-feed-algo-5559' into 'master'
Fix invalid feed algorithm #5559 See merge request minds/front!1936
2 parents c8a9c49 + 15be932 commit c1a877b

File tree

4 files changed

+16
-8
lines changed

4 files changed

+16
-8
lines changed

src/app/modules/newsfeed/feeds/feed-header/feed-header.component.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { FeedAlgorithm } from './../subscribed.component';
2-
import { Component, HostBinding, Input, OnInit } from '@angular/core';
2+
import { Component, HostBinding, Input } from '@angular/core';
33
import { ExperimentsService } from '../../../experiments/experiments.service';
44
import { ActivityV2ExperimentService } from '../../../experiments/sub-services/activity-v2-experiment.service';
55

@@ -20,5 +20,5 @@ export class FeedHeaderComponent {
2020
}
2121

2222
@Input()
23-
algorithm: FeedAlgorithm = 'latest';
23+
algorithm: FeedAlgorithm = FeedAlgorithm.latest;
2424
}

src/app/modules/newsfeed/feeds/feed-header/feed-type-popover/feed-type-popover.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ const TOP_FEED_PROMPT_STORAGE_KEY = 'top-feed:recommended';
1919
styleUrls: ['./feed-type-popover.component.ng.scss'],
2020
})
2121
export class FeedTypePopoverComponent implements OnInit {
22-
@Input() type: FeedAlgorithm = 'latest';
22+
@Input() type: FeedAlgorithm = FeedAlgorithm.latest;
2323
shown: boolean = false;
2424
shouldShowTooltip$ = new BehaviorSubject<boolean>(false);
2525

src/app/modules/newsfeed/feeds/subscribed.component.ts

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,10 @@ import { FormToastService } from '../../../common/services/form-toast.service';
3636
import { ExperimentsService } from '../../experiments/experiments.service';
3737
import { NewsfeedBoostRotatorComponent } from '../boost-rotator/boost-rotator.component';
3838

39-
export type FeedAlgorithm = 'top' | 'latest';
39+
export enum FeedAlgorithm {
40+
top = 'top',
41+
latest = 'latest',
42+
}
4043

4144
@Injectable()
4245
export class LatestFeedService extends FeedsService {}
@@ -151,7 +154,11 @@ export class NewsfeedSubscribedComponent implements OnInit, OnDestroy {
151154

152155
this.paramsSubscription = this.route.params.subscribe(params => {
153156
if (params['algorithm']) {
154-
this.changeFeedAlgorithm(params['algorithm']);
157+
if (params['algorithm'] in FeedAlgorithm) {
158+
this.changeFeedAlgorithm(params['algorithm']);
159+
} else {
160+
this.router.navigate([`/newsfeed/subscriptions/${this.algorithm}`]);
161+
}
155162
}
156163
this.load();
157164

@@ -326,7 +333,7 @@ export class NewsfeedSubscribedComponent implements OnInit, OnDestroy {
326333
behavior: 'smooth',
327334
});
328335
setTimeout(() => {
329-
this.changeFeedAlgorithm('top');
336+
this.changeFeedAlgorithm(FeedAlgorithm.top);
330337
this.load();
331338
}, 500);
332339
}

src/app/modules/newsfeed/services/feed-algorithm-history.service.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,9 @@ export class FeedAlgorithmHistoryService {
1515
* Gets last feed algorithm from storage.
1616
* @returns { string } - feed type a user last accessed.
1717
*/
18-
get lastAlorithm(): FeedAlgorithm {
19-
return this.storage.get(FEED_ALGORITHM_STORAGE_KEY) as FeedAlgorithm;
18+
get lastAlorithm(): FeedAlgorithm | undefined {
19+
const algo = this.storage.get(FEED_ALGORITHM_STORAGE_KEY);
20+
return FeedAlgorithm[algo];
2021
}
2122

2223
/**

0 commit comments

Comments
 (0)