Files
archived-teslamate/lib/teslamate_web/live/car_live/index.ex
dependabot[bot] 9509ccde76 Bump ex_cldr from 2.23.2 to 2.24.1 (#2121)
* Bump ex_cldr from 2.23.2 to 2.24.1

Bumps [ex_cldr](https://github.com/elixir-cldr/cldr) from 2.23.2 to 2.24.1.
- [Release notes](https://github.com/elixir-cldr/cldr/releases)
- [Changelog](https://github.com/elixir-cldr/cldr/blob/master/CHANGELOG.md)
- [Commits](https://github.com/elixir-cldr/cldr/compare/v2.23.2...v2.24.1)

---
updated-dependencies:
- dependency-name: ex_cldr
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Replace custom PutSession plug

* Bust cldr chache

* Bump phoenix_live_view and tzdata

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Adrian Kumpf <8999358+adriankumpf@users.noreply.github.com>
2021-11-05 17:19:37 +01:00

46 lines
1.1 KiB
Elixir

defmodule TeslaMateWeb.CarLive.Index do
use TeslaMateWeb, :live_view
require Logger
alias TeslaMate.{Settings, Vehicles}
alias TeslaMate.Settings.GlobalSettings
on_mount {TeslaMateWeb.InitAssigns, :locale}
@impl true
def mount(_params, %{"settings" => settings}, socket) do
socket =
socket
|> assign(page_title: gettext("Home"))
|> assign_new(:summaries, fn -> Vehicles.list() end)
|> assign_new(:settings, fn -> update_base_url(settings, socket) end)
{:ok, socket}
end
## Private
defp update_base_url(%GlobalSettings{base_url: url} = settings, socket)
when is_nil(url) or url == "" do
if connected?(socket) do
base_url = get_connect_params(socket)["baseUrl"]
case Settings.update_global_settings(settings, %{base_url: base_url}) do
{:error, reason} ->
Logger.warning("Updating settings failed: #{inspect(reason)}")
settings
{:ok, settings} ->
settings
end
else
settings
end
end
defp update_base_url(settings, _socket) do
settings
end
end