async function checkPLLogin()

in frontend/app/projectsearch/ProjectLockerSearchBar.tsx [78:105]


  async function checkPLLogin() {
    if (props.projectLockerBaseUrl === "") {
      console.error("No project locker base URL set in the configuration");
      return;
    }

    try {
      const response = await authenticatedFetch(
        props.projectLockerBaseUrl + "/api/isLoggedIn",
        { credentials: "include" }
      );
      const bodyContent = await response.json();

      if (response.ok) {
        setProjectLockerUsername(bodyContent.uid);
        setProjectLockerLoggedIn(true);
      } else if (response.status === 403) {
        setProjectLockerLoggedIn(false);
        setLastError("Could not log in");
      } else {
        setLastError(JSON.stringify(bodyContent));
        setProjectLockerLoggedIn(false);
      }
    } catch (err) {
      setLastError("Could not contact pluto-core, please see browser console");
      return new Promise((resolve, reject) => reject(err));
    }
  }