forked from shibao/cannery
		
	run phx.new and add phx.gen.auth
This commit is contained in:
		
							
								
								
									
										75
									
								
								lib/lokal_web/live/component/topbar.ex
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								lib/lokal_web/live/component/topbar.ex
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,75 @@ | ||||
| defmodule LokalWeb.Live.Component.Topbar do | ||||
|   use LokalWeb, :live_component | ||||
|    | ||||
|   def mount(socket), do: {:ok, socket |> assign(results: [])} | ||||
|  | ||||
|   def render(assigns) do | ||||
|     ~L""" | ||||
|     <header class="mb-4 px-8 py-4 w-full bg-primary-400"> | ||||
|       <nav role="navigation"> | ||||
|         <div class="flex flex-row justify-between items-center space-x-4"> | ||||
|           <h1 class="leading-5 text-xl text-white">Lokal</h1> | ||||
|          | ||||
|           <ul class="flex flex-row flex-wrap justify-center items-center | ||||
|             text-lg space-x-4 text-lg text-white"> | ||||
|             <%# search %> | ||||
|             <form phx-change="suggest" phx-submit="search"> | ||||
|               <input type="text" name="q" class="input" | ||||
|                 placeholder="Search" list="results" autocomplete="off"/> | ||||
|               <datalist id="results"> | ||||
|                 <%= for {app, _vsn} <- @results do %> | ||||
|                   <option value="<%= app %>"><%= app %></option> | ||||
|                 <% end %> | ||||
|               </datalist> | ||||
|             </form> | ||||
|            | ||||
|             <%# user settings %> | ||||
|             <%= if assigns |> Map.has_key?(:current_user) do %> | ||||
|               <li> | ||||
|                 <%= @current_user.email %></li> | ||||
|               <li> | ||||
|                 <%= link "Settings", class: "hover:underline", | ||||
|                   to: Routes.user_settings_path(LokalWeb.Endpoint, :edit) %> | ||||
|               </li> | ||||
|               <li> | ||||
|                 <%= link "Log out", class: "hover:underline", | ||||
|                   to: Routes.user_session_path(LokalWeb.Endpoint, :delete), method: :delete %> | ||||
|               </li> | ||||
|                | ||||
|               <%= if function_exported?(Routes, :live_dashboard_path, 2) do %> | ||||
|                 <li> | ||||
|                   <%= link "LiveDashboard", class: "hover:underline", | ||||
|                     to: Routes.live_dashboard_path(LokalWeb.Endpoint, :home) %> | ||||
|                 </li> | ||||
|               <% end %> | ||||
|             <% else %> | ||||
|               <li> | ||||
|                 <%= link "Register", class: "hover:underline", | ||||
|                   to: Routes.user_registration_path(LokalWeb.Endpoint, :new) %> | ||||
|               </li> | ||||
|               <li> | ||||
|                 <%= link "Log in", class: "hover:underline", | ||||
|                   to: Routes.user_session_path(LokalWeb.Endpoint, :new) %> | ||||
|               </li> | ||||
|             <% end %> | ||||
|           </ul> | ||||
|         </div> | ||||
|       </nav> | ||||
|        | ||||
|       <%= if live_flash(@flash, :info) do %> | ||||
|         <p class="alert alert-info" role="alert" | ||||
|           phx-click="lv:clear-flash" phx-value-key="info"> | ||||
|           <%= live_flash(@flash, :info) %> | ||||
|         </p> | ||||
|       <% end %> | ||||
|  | ||||
|       <%= if live_flash(@flash, :error) do %> | ||||
|         <p class="alert alert-danger" role="alert" | ||||
|           phx-click="lv:clear-flash" phx-value-key="error"> | ||||
|           <%= live_flash(@flash, :error) %> | ||||
|         </p> | ||||
|       <% end %> | ||||
|     </header> | ||||
|     """ | ||||
|   end | ||||
| end | ||||
		Reference in New Issue
	
	Block a user