snort/packages/app/src/Components/Tasks/RenewSubscription.tsx

36 lines
972 B
TypeScript
Raw Normal View History

import { CachedMetadata } from "@snort/system";
2024-01-04 17:01:18 +00:00
import { FormattedMessage } from "react-intl";
import { Link } from "react-router-dom";
2023-10-18 13:47:45 +00:00
import { BaseUITask } from "@/Components/Tasks/index";
import { LoginSession } from "@/Utils/Login";
import { getCurrentSubscription } from "@/Utils/Subscription";
2023-10-18 13:47:45 +00:00
export class RenewSubTask extends BaseUITask {
id = "renew-sub";
check(user: CachedMetadata, session: LoginSession): boolean {
2023-10-18 13:47:45 +00:00
const sub = getCurrentSubscription(session.subscriptions);
return !sub && session.subscriptions.length > 0;
}
render(): JSX.Element {
return (
<>
<p>
<FormattedMessage
2023-11-20 19:16:47 +00:00
defaultMessage="Your {site_name} subscription is expired"
id="jAmfGl"
2023-10-18 13:47:45 +00:00
values={{
site_name: CONFIG.appName,
}}
/>
</p>
<Link to="/subscribe/manage">
<FormattedMessage defaultMessage="Renew" />
</Link>
2023-10-18 13:47:45 +00:00
</>
);
}
}