2019-09-02 14:29:19 +03:00
< ! DOCTYPE html >
< html lang = " en " class = " h-full " >
< head >
< meta charset = " utf-8 " / >
< meta http - equiv = " X-UA-Compatible " content = " IE=edge " / >
< meta name = " viewport " content = " width=device-width, initial-scale=1.0 " / >
2020-03-20 12:41:50 +03:00
< meta name = " description " content = " Plausible is a lightweight and open-source web analytics tool. Your website data is 100% yours and the privacy of your visitors is respected. " / >
2019-09-02 14:29:19 +03:00
< link rel = " icon " type = " image/png " sizes = " 32x32 " href = " <%= PlausibleWeb.Router.Helpers.static_path(@conn, " / images / icon / plausible_favicon . png " ) %> " >
2020-07-01 10:22:26 +03:00
< link rel = " apple-touch-icon " href = " /images/icon/apple-touch-icon.png " >
2020-03-20 12:41:50 +03:00
< title > < % = assigns [ :title ] || " Plausible · Simple, privacy-friendly alternative to Google Analytics " % > < / title >
2019-09-02 14:29:19 +03:00
< link rel = " stylesheet " href = " <%= Routes.static_path(@conn, " / css / app . css " ) %> " / >
2020-03-18 11:43:30 +03:00
< link rel = " stylesheet " type = " text/css " href = " https://cdnjs.cloudflare.com/ajax/libs/flatpickr/4.6.3/flatpickr.min.css " >
2019-09-02 14:29:19 +03:00
< % = render ( " _tracking.html " , assigns ) % >
< / head >
2020-03-26 15:22:48 +03:00
< body class = " flex flex-col h-full bg-gray-50 " >
2019-09-02 14:29:19 +03:00
< % = render ( " _svg_icons.html " ) % >
2020-03-31 16:56:02 +03:00
< nav class = " relative py-8 z-10 " >
< div class = " container " >
< nav class = " relative flex items-center justify-between sm:h-10 md:justify-center " >
< div class = " flex items-center flex-1 md:absolute md:inset-y-0 md:left-0 " >
< div class = " flex items-center justify-between " >
2020-04-01 11:18:39 +03:00
< a href = " <%= home_dest(@conn) %> " > < % = img_tag ( PlausibleWeb.Router.Helpers . static_path ( @conn , " /images/icon/plausible_logo.png " ) , class : " h-8 w-auto sm:h-10 -mt-2 " , alt : " Plausible logo " ) % > < / a >
2020-03-26 15:22:48 +03:00
< / div >
2020-03-31 16:56:02 +03:00
< / div >
< div class = " absolute flex items-center justify-end inset-y-0 right-0 " >
< % = cond do % >
< % @conn . assigns [ :current_user ] -> % >
< ul class = " flex " >
< % = if @conn . assigns [ :current_user ] . subscription == nil do % >
< li class = " mr-6 hidden sm:block " >
< % = link ( trial_notificaton ( @conn . assigns [ :current_user ] ) , to : " /settings " , class : " font-bold text-orange-900 rounded p-2 bg-orange-200 " , style : " line-height: 40px; " ) % >
< / li >
< % else % >
< li class = " mr-6 hidden sm:block " >
< % = link ( " Give feedback " , to : " /feedback " , class : " font-bold rounded p-2 hover:bg-gray-200 " , style : " line-height: 40px; " ) % >
< / li >
< % end % >
< li >
< div class = " relative font-bold rounded " >
< div data - dropdown - trigger class = " flex items-center hover:bg-gray-200 rounded p-2 cursor-pointer " >
< span class = " mr-2 " > < % = @conn . assigns [ :current_user ] . name || @conn . assigns [ :current_user ] . email % > < / span >
2020-04-01 12:27:26 +03:00
< svg style = " height: 18px; transform: translateY(2px); fill: # 606f7b; " xmlns = " http://www.w3.org/2000/svg " xmlns :xlink = " http://www.w3.org/1999/xlink " version = " 1.1 " x = " 0px " y = " 0px " viewBox = " 0 0 512 640 " enable - background = " new 0 0 512 512 " xml :space = " preserve " > < g > < circle cx = " 256 " cy = " 52.8 " r = " 50.8 " / > < circle cx = " 256 " cy = " 256 " r = " 50.8 " / > < circle cx = " 256 " cy = " 459.2 " r = " 50.8 " / > < / g > < / svg >
2020-03-31 16:56:02 +03:00
< / div >
< div data - dropdown style = " top: 42px; right: 0px; width: 185px; " class = " dropdown-content hidden absolute right-0 bg-white border border-gray-300 rounded shadow-md z-10 " >
< % = link ( " Settings " , to : " /settings " , class : " block py-2 px-2 border-b border-gray-300 hover:bg-gray-100 " ) % >
< % = link ( " Log out " , to : " /logout " , method : :post , class : " block py-2 px-2 hover:bg-gray-100 " ) % >
< / div >
< / div >
< / li >
< / ul >
< % true -> % >
< ul class = " flex " x - show = " !document.cookie.includes('logged_in=true') " >
< li >
< div class = " inline-flex " >
< a href = " /login " class = " font-medium text-gray-500 hover:text-gray-900 focus:outline-none focus:text-gray-900 transition duration-150 ease-in-out " > Login < / a >
< / div >
< div class = " inline-flex rounded shadow ml-6 " >
< a href = " /register " class = " inline-flex items-center justify-center px-5 py-2 border border-transparent text-base leading-6 font-medium rounded-md text-white bg-indigo-600 hover:bg-indigo-500 focus:outline-none focus:shadow-outline transition duration-150 ease-in-out " > Start free trial < / a >
< / div >
< / li >
< / ul >
< % end % >
< / div >
< / nav >
< / div >
2019-09-02 14:29:19 +03:00
< / nav >
< % = if get_flash ( @conn , :success ) do % >
2020-03-06 12:11:38 +03:00
< div id = " flash " class = " text-center bg-green-500 text-green-100 text-sm font-bold px-4 absolute w-full transition overflow-hidden " style = " top: 91px " role = " alert " >
2019-09-02 14:29:19 +03:00
< p class = " py-3 " > < % = get_flash ( @conn , :success ) % > < / p >
< / div >
< % end % >
< % = if get_flash ( @conn , :error ) do % >
2020-03-06 12:11:38 +03:00
< div id = " flash " class = " text-center bg-red-dark-500 text-red-100 text-sm font-bold px-4 absolute w-full transition overflow-hidden " style = " top: 91px " role = " alert " >
2019-09-02 14:29:19 +03:00
< p class = " py-3 " > < % = get_flash ( @conn , :error ) % > < / p >
< / div >
< % end % >
< main class = " flex-1 " >
< % = render @view_module , @view_template , assigns % >
< / main >
< % = render ( " _footer.html " , assigns ) % >
< script type = " text/javascript " src = " <%= Routes.static_path(@conn, " / js / app . js " ) %> " > < / script >
< / body >
< / html >