Skip to content

Instantly share code, notes, and snippets.

@bs1180
Created March 4, 2026 14:06
Show Gist options
  • Select an option

  • Save bs1180/04d7c3b76103df8d3e33a7a18e29b230 to your computer and use it in GitHub Desktop.

Select an option

Save bs1180/04d7c3b76103df8d3e33a7a18e29b230 to your computer and use it in GitHub Desktop.
PostHog test
<!doctype html>
<html>
<head>
<title>Survey test</title>
<script>
!(function (t, e) {
var o, n, p, r;
e.__SV ||
(window.posthog && window.posthog.__loaded) ||
((window.posthog = e),
(e._i = []),
(e.init = function (i, s, a) {
console.log("==== init called ===");
function g(t, e) {
var o = e.split(".");
(2 == o.length && ((t = t[o[0]]), (e = o[1])),
(t[e] = function () {
t.push([e].concat(Array.prototype.slice.call(arguments, 0)));
}));
}
(((p = t.createElement("script")).type = "text/javascript"),
(p.crossOrigin = "anonymous"),
(p.async = !0),
(p.src =
s.api_host.replace(".i.posthog.com", "-assets.i.posthog.com") +
"/static/array.js"),
(r = t.getElementsByTagName("script")[0]).parentNode.insertBefore(
p,
r,
));
var u = e;
for (
void 0 !== a ? (u = e[a] = []) : (a = "posthog"),
u.people = u.people || [],
u.toString = function (t) {
var e = "posthog";
return (
"posthog" !== a && (e += "." + a),
t || (e += " (stub)"),
e
);
},
u.people.toString = function () {
return u.toString(1) + ".people (stub)";
},
o =
"init ir nr qi rr ar Ze er capture calculateEventProperties dr register register_once register_for_session unregister unregister_for_session getFeatureFlag getFeatureFlagPayload getFeatureFlagResult isFeatureEnabled reloadFeatureFlags updateFlags updateEarlyAccessFeatureEnrollment getEarlyAccessFeatures on onFeatureFlags onSurveysLoaded onSessionId getSurveys getActiveMatchingSurveys renderSurvey displaySurvey cancelPendingSurvey canRenderSurvey canRenderSurveyAsync identify setPersonProperties group resetGroups setPersonPropertiesForFlags resetPersonPropertiesForFlags setGroupPropertiesForFlags resetGroupPropertiesForFlags reset get_distinct_id getGroups get_session_id get_session_replay_url alias set_config startSessionRecording stopSessionRecording sessionRecordingStarted captureException startExceptionAutocapture stopExceptionAutocapture loadToolbar get_property getSessionProperty cr hr createPersonProfile setInternalOrTestUser pr Xe gr opt_in_capturing opt_out_capturing has_opted_in_capturing has_opted_out_capturing get_explicit_consent_status is_capturing clear_opt_in_out_capturing lr debug At vr getPageViewId captureTraceFeedback captureTraceMetric Je".split(
" ",
),
n = 0;
n < o.length;
n++
)
g(u, o[n]);
e._i.push([i, s, a]);
}),
(e.__SV = 1));
})(document, window.posthog || []);
posthog.init("phc_4Zyq2uQgTwVvUkjiUaPWGRBbyNoBeyiTT9vryvM0fZB", {
api_host: "https://ph.rfprs.lol", // your managed reverse proxy domain
ui_host: "https://eu.i.posthog.com", // necessary because you're using a proxy, this way links will point back to PostHog properly
defaults: "2026-01-30",
debug: true,
opt_out_capturing_by_default: true,
});
</script>
</head>
<body>
<div>hello world!</div>
<button onclick="posthog.capture('event_1')">event 1</button>
<button onclick="posthog.capture('event_2')">event 2</button>
<button onclick="posthog.opt_in_capturing()">grant consent</button>
<button onclick="posthog.opt_out_capturing()">deny consent</button>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment