def fbe()

in fb_metadata/views.py [0:0]


def fbe(request, storeId):
    """ This view shows the form for entering the FBE flow and then redirects the user on submit to FBE """
    if canViewThisStore(storeId, request.user.id):
        store = Store.objects.get(id=storeId)
        if request.method == "POST":
            metadata_obj = FacebookMetadata.objects.filter(store=store).first()
            if not metadata_obj.fbe_external_business_id:
                metadata_obj.fbe_external_business_id = store.unique_business_id
                metadata_obj.save()

            # generate the FBE onboarding URL
            fb_url = generateFBEOnboardingURL(metadata_obj)
            print("FBE Onboarding URL:", fb_url)

            # redirect to FBE onboarding
            return HttpResponseRedirect(fb_url)

        # check if already connected
        existing_metadata = FacebookMetadata.objects.filter(store=store).first()
        if (
            existing_metadata
            and existing_metadata.fbe_external_business_id == store.unique_business_id
        ):
            return redirect("viewFbSettings", storeId)

        # If this is a GET (or any other method) create the default form.
        form = FbeOnboardingForm(
            initial={
                "business_name": store.name,
            }
        )
        context = {
            "store": store,
            "form": form,
        }
        return render(request, "fb_metadata/fbe.html", context)
    else:
        return render(request, "403.html")