Browse Source

fix auth

master
mortezaei 3 weeks ago
parent
commit
c89cc8e958
  1. 12
      src/app/layout.tsx
  2. 5
      src/app/questions-list/questions-list-client.tsx
  3. 9
      src/lib/auth-bridge.ts

12
src/app/layout.tsx

@ -132,6 +132,7 @@ export default async function RootLayout({
var HABIB_TOKEN_COOKIE = 'HABIB_TOKEN'; var HABIB_TOKEN_COOKIE = 'HABIB_TOKEN';
var HABIB_COINS_COOKIE = 'HABIB_COINS'; var HABIB_COINS_COOKIE = 'HABIB_COINS';
var HABIB_ENTRY_PATH_COOKIE = 'HABIB_MARRIAGE_ENTRY_PATH'; var HABIB_ENTRY_PATH_COOKIE = 'HABIB_MARRIAGE_ENTRY_PATH';
var HABIB_MARRIAGE_DATA_COOKIE = 'HABIB_MARRIAGE_DATA';
var HABIB_COOKIE_MAX_AGE = 60 * 60 * 24 * 30; var HABIB_COOKIE_MAX_AGE = 60 * 60 * 24 * 30;
function writeCookie(name, value) { function writeCookie(name, value) {
@ -158,6 +159,17 @@ export default async function RootLayout({
return ''; return '';
} }
var earlyMarriageCookie = readCookie(HABIB_MARRIAGE_DATA_COOKIE) || readCookie('habib_marriage_data');
if (earlyMarriageCookie) {
try {
var parsedEarlyMarriage = JSON.parse(earlyMarriageCookie);
if (parsedEarlyMarriage && typeof parsedEarlyMarriage === 'object') {
window.__HABIB_MARRIAGE_INITIAL_DATA__ = parsedEarlyMarriage;
window.HABIB_MARRIAGE = parsedEarlyMarriage;
}
} catch (e) {}
}
if (!Object.getOwnPropertyDescriptor(window, 'HABIB_TOKEN')) { if (!Object.getOwnPropertyDescriptor(window, 'HABIB_TOKEN')) {
Object.defineProperty(window, 'HABIB_TOKEN', { Object.defineProperty(window, 'HABIB_TOKEN', {
configurable: true, configurable: true,

5
src/app/questions-list/questions-list-client.tsx

@ -113,10 +113,7 @@ export default function QuestionsListClient() {
[profile], [profile],
); );
const isProfileRedirecting = const isProfileRedirecting =
profileTargetPath !== null &&
profileTargetPath !== "/questions-list" &&
(!hasCompletedMarriageProfileBasics(profile) ||
profile?.can_edit_profile === false);
profileTargetPath !== null && profileTargetPath !== "/questions-list";
useEffect(() => { useEffect(() => {
if (isProfileRedirecting && profileTargetPath) { if (isProfileRedirecting && profileTargetPath) {

9
src/lib/auth-bridge.ts

@ -53,6 +53,15 @@ class AuthBridge {
if (win.HABIB_MARRIAGE || win.__HABIB_MARRIAGE_INITIAL_DATA__) { if (win.HABIB_MARRIAGE || win.__HABIB_MARRIAGE_INITIAL_DATA__) {
this.marriageData = this.marriageData =
win.HABIB_MARRIAGE ?? win.__HABIB_MARRIAGE_INITIAL_DATA__ ?? null; win.HABIB_MARRIAGE ?? win.__HABIB_MARRIAGE_INITIAL_DATA__ ?? null;
} else {
const rawMarriageCookie =
getClientCookie("HABIB_MARRIAGE_DATA") ??
getClientCookie("habib_marriage_data");
if (rawMarriageCookie) {
try {
this.marriageData = JSON.parse(decodeURIComponent(rawMarriageCookie));
} catch (e) {}
}
} }
const token = const token =

Loading…
Cancel
Save