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")