mirror of
https://github.com/4gray/iptvnator.git
synced 2026-10-10 18:36:15 -08:00
Refactor stalker-series-view template to guard fields with conditionals so that only available metadata is displayed. Replace selectedItem() with displayItem() to use the updated selection accessor. Add checks for director, actors, year/release date, genre/genres_str, imdb and kinopoisk ratings to avoid showing empty labels. Enhance stalker-portal-import component by adding reactive form fields for serial/device IDs and signatures, importing MatProgressSpinnerModule, and wiring TranslateService and StalkerSessionService into the component. Include a small loading-container style. These changes prepare the UI for improved import UX and safer rendering of optional series metadata.
62 lines
1.9 KiB
TypeScript
62 lines
1.9 KiB
TypeScript
/**
|
|
* An interface that describe the possible states of the playlist update/refresh process
|
|
*/
|
|
export enum PlaylistUpdateState {
|
|
UPDATED,
|
|
IN_PROGRESS,
|
|
NOT_UPDATED,
|
|
}
|
|
|
|
/**
|
|
* Describes playlist interface
|
|
*/
|
|
export interface Playlist {
|
|
_id: string;
|
|
title: string;
|
|
filename?: string;
|
|
playlist?: any;
|
|
importDate: string;
|
|
lastUsage: string;
|
|
favorites?: string[];
|
|
items?: unknown[];
|
|
header?: unknown;
|
|
count: number;
|
|
url?: string;
|
|
userAgent?: string;
|
|
referrer?: string;
|
|
origin?: string;
|
|
filePath?: string;
|
|
autoRefresh: boolean;
|
|
updateDate?: number;
|
|
updateState?: PlaylistUpdateState;
|
|
position?: number;
|
|
isTemporary?: boolean;
|
|
serverUrl?: string;
|
|
username?: string;
|
|
password?: string;
|
|
macAddress?: string;
|
|
portalUrl?: string;
|
|
recentlyViewed?: any[];
|
|
/** Indicates if this is a full stalker portal URL (e.g., /stalker_portal/c) requiring handshake authentication */
|
|
isFullStalkerPortal?: boolean;
|
|
/** Session token for full stalker portal authentication - persisted for session */
|
|
stalkerToken?: string;
|
|
/** Serial number for stalker portal - generated once and stored for consistency */
|
|
stalkerSerialNumber?: string;
|
|
/** Optional device ID 1 for stalker portal - if not provided, auto-generated from MAC */
|
|
stalkerDeviceId1?: string;
|
|
/** Optional device ID 2 for stalker portal - if not provided, auto-generated from MAC */
|
|
stalkerDeviceId2?: string;
|
|
/** Optional signature 1 for stalker portal - required by some portals for device verification */
|
|
stalkerSignature1?: string;
|
|
/** Optional signature 2 for stalker portal - required by some portals for device verification */
|
|
stalkerSignature2?: string;
|
|
/** Account info from get_profile call */
|
|
stalkerAccountInfo?: {
|
|
login?: string;
|
|
expireDate?: number;
|
|
tariffPlanName?: string;
|
|
status?: number;
|
|
};
|
|
}
|