mirror of
https://github.com/plausible/analytics.git
synced 2024-12-29 20:42:01 +03:00
2cc80ebd7a
* Extend the Tokens context module * Extract GA Import to separate component * Extract Search Console settings to separate component * Remove Search Console from the router * Stop counting imported pageviews in general settings * Remove search console controller action * Add settings_integrations controller action * Fix remaining redirects * Add Integrations route * Replace SC sidebar item with Integrations * Update site controller tests * Implement Plugins API Tokens LV * Apply universal heroicon to docs info links * Add flash on token creation * Update CHANGELOG * Redirect to integrations upon forgetting GA import * Update moduledocs * Remove unnecessary wildcards * WIP: attempt at fixing broken oauth flow * Fix post-import redirect * Fixup missing attribute * Format * Seed random google auth * Use example.com for seeded e-mails * Tweak Google integrations layout * Remove dangling IO.inspect * Bugfix: copy to clipboard breaking LV form bindings * Update lib/plausible/plugins/api/tokens.ex Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com> * Update lib/plausible_web/controllers/site_controller.ex Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com> * Update lib/plausible_web/live/plugins/api/settings.ex Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com> * Update test/plausible/plugins/api/tokens_test.exs Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com> --------- Co-authored-by: Adrian Gruntkowski <adrian.gruntkowski@gmail.com>
112 lines
4.4 KiB
Plaintext
112 lines
4.4 KiB
Plaintext
<div class="shadow sm:rounded-md sm:overflow-hidden">
|
|
<div class="bg-white dark:bg-gray-800 py-6 px-4 space-y-6 sm:p-6">
|
|
<header class="relative">
|
|
<h2 class="text-lg leading-6 font-medium text-gray-900 dark:text-gray-100">Site Domain</h2>
|
|
<p class="mt-1 text-sm leading-5 text-gray-500 dark:text-gray-200">
|
|
Moving your Site to a different Domain? We got you!
|
|
</p>
|
|
|
|
<PlausibleWeb.Components.Generic.docs_info slug="change-domain-name" />
|
|
</header>
|
|
<div class="grid grid-cols-4 gap-6">
|
|
<div class="col-span-4 sm:col-span-2">
|
|
<%= label(nil, "Domain",
|
|
class: "block text-sm font-medium leading-5 text-gray-700 dark:text-gray-300"
|
|
) %>
|
|
<%= text_input(nil, :domain,
|
|
value: @site.domain,
|
|
disabled: "disabled",
|
|
class:
|
|
"dark:bg-gray-900 w-full mt-1 block pl-3 pr-10 py-2 text-base border-gray-300 dark:border-gray-500 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm rounded-md dark:text-gray-100 text-gray-500"
|
|
) %>
|
|
</div>
|
|
</div>
|
|
<span class="inline-flex rounded-md shadow-sm">
|
|
<%= link("Change Domain",
|
|
to: Routes.site_path(@conn, :change_domain, @site.domain),
|
|
class: "button"
|
|
) %>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
|
|
<%= form_for @changeset, "/#{URI.encode_www_form(@site.domain)}/settings", fn f -> %>
|
|
<div class="shadow sm:rounded-md sm:overflow-hidden">
|
|
<div class="bg-white dark:bg-gray-800 py-6 px-4 space-y-6 sm:p-6">
|
|
<header class="relative">
|
|
<h2 class="text-lg leading-6 font-medium text-gray-900 dark:text-gray-100">
|
|
Site Timezone
|
|
</h2>
|
|
<p class="mt-1 text-sm leading-5 text-gray-500 dark:text-gray-200">
|
|
Update your reporting Timezone.
|
|
</p>
|
|
|
|
<PlausibleWeb.Components.Generic.docs_info slug="general" />
|
|
</header>
|
|
<div class="grid grid-cols-4 gap-6">
|
|
<div class="col-span-4 sm:col-span-2">
|
|
<%= label(f, :timezone, "Reporting Timezone",
|
|
class: "block text-sm font-medium leading-5 text-gray-700 dark:text-gray-300"
|
|
) %>
|
|
<%= select(f, :timezone, Plausible.Timezones.options(),
|
|
class:
|
|
"dark:bg-gray-900 mt-1 block w-full pl-3 pr-10 py-2 text-base border-gray-300 dark:border-gray-500 focus:outline-none focus:ring-indigo-500 focus:border-indigo-500 sm:text-sm rounded-md dark:text-gray-100 cursor-pointer"
|
|
) %>
|
|
</div>
|
|
</div>
|
|
<span class="inline-flex rounded-md shadow-sm">
|
|
<%= submit("Save", class: "button") %>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
<% end %>
|
|
|
|
<%= form_for @conn, "/", [class: "shadow bg-white dark:bg-gray-800 sm:rounded-md sm:overflow-hidden py-6 px-4 sm:p-6"], fn f -> %>
|
|
<header class="relative">
|
|
<h2 class="text-lg leading-6 font-medium text-gray-900 dark:text-gray-100">
|
|
JavaScript Snippet
|
|
</h2>
|
|
<p class="mt-1 text-sm leading-5 text-gray-500 dark:text-gray-200">
|
|
Include this Snippet in the <code><head></code> of your Website.
|
|
</p>
|
|
|
|
<PlausibleWeb.Components.Generic.docs_info slug="plausible-script" />
|
|
</header>
|
|
|
|
<div class="my-4">
|
|
<div class="relative">
|
|
<code>
|
|
<%= textarea(f, :domain,
|
|
id: "snippet_code",
|
|
class:
|
|
"transition overflow-hidden bg-gray-100 dark:bg-gray-900 outline-none appearance-none border border-transparent rounded w-full p-2 pr-6 text-gray-700 dark:text-gray-300 leading-normal focus:outline-none focus:bg-white focus:border-gray-300 dark:focus:border-gray-500 text-xs mt-2 resize-none",
|
|
value: render_snippet(@site),
|
|
rows: 2
|
|
) %>
|
|
</code>
|
|
<a
|
|
onclick="var textarea = document.getElementById('snippet_code'); textarea.focus(); textarea.select(); document.execCommand('copy');"
|
|
href="javascript:void(0)"
|
|
class="no-underline text-indigo-500 text-sm hover:underline"
|
|
>
|
|
<svg
|
|
class="absolute text-indigo-500"
|
|
style="top: 24px; right: 12px;"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
width="16"
|
|
height="16"
|
|
viewBox="0 0 24 24"
|
|
fill="none"
|
|
stroke="currentColor"
|
|
stroke-width="2"
|
|
stroke-linecap="round"
|
|
stroke-linejoin="round"
|
|
>
|
|
<rect x="9" y="9" width="13" height="13" rx="2" ry="2"></rect>
|
|
<path d="M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"></path>
|
|
</svg>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<% end %>
|