app/views/layouts/application.html.erb
<!DOCTYPE html>
<html>
<head>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-CNHJDWQXG7"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-CNHJDWQXG7');
</script>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<title><%= [@page_title, @page&.title, Rails.configuration.x.site_title].compact.join(" | ") %></title>
<%= csrf_meta_tags %>
<%= csp_meta_tag %>
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
<%= javascript_include_tag 'application' %>
<%= stylesheet_link_tag 'application', "https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;700;800&display=swap", media: 'all', 'data-turbolinks-track' => true %>
<%= favicon_link_tag %>
<%= yield :head %>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-default bg-primary bg-background mb-5">
<a class="navbar-brand mr-auto" href="/" target='blank'>
<%= image_tag "logo.png", class: "navbar__logo" %>
</a>
<button class="navbar-toggler p-1" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo01" aria-controls="navbarTogglerDemo01" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon">
<svg viewBox="-42 0 512 512.002" width="16" height="16" fill="white" xmlns="http://www.w3.org/2000/svg"><path d="m210.351562 246.632812c33.882813 0 63.222657-12.152343 87.195313-36.128906 23.972656-23.972656 36.125-53.304687 36.125-87.191406 0-33.875-12.152344-63.210938-36.128906-87.191406-23.976563-23.96875-53.3125-36.121094-87.191407-36.121094-33.886718 0-63.21875 12.152344-87.191406 36.125s-36.128906 53.308594-36.128906 87.1875c0 33.886719 12.15625 63.222656 36.132812 87.195312 23.976563 23.96875 53.3125 36.125 87.1875 36.125zm0 0"/><path d="m426.128906 393.703125c-.691406-9.976563-2.089844-20.859375-4.148437-32.351563-2.078125-11.578124-4.753907-22.523437-7.957031-32.527343-3.308594-10.339844-7.808594-20.550781-13.371094-30.335938-5.773438-10.15625-12.554688-19-20.164063-26.277343-7.957031-7.613282-17.699219-13.734376-28.964843-18.199219-11.226563-4.441407-23.667969-6.691407-36.976563-6.691407-5.226563 0-10.28125 2.144532-20.042969 8.5-6.007812 3.917969-13.035156 8.449219-20.878906 13.460938-6.707031 4.273438-15.792969 8.277344-27.015625 11.902344-10.949219 3.542968-22.066406 5.339844-33.039063 5.339844-10.972656 0-22.085937-1.796876-33.046874-5.339844-11.210938-3.621094-20.296876-7.625-26.996094-11.898438-7.769532-4.964844-14.800782-9.496094-20.898438-13.46875-9.75-6.355468-14.808594-8.5-20.035156-8.5-13.3125 0-25.75 2.253906-36.972656 6.699219-11.257813 4.457031-21.003906 10.578125-28.96875 18.199219-7.605469 7.28125-14.390625 16.121094-20.15625 26.273437-5.558594 9.785157-10.058594 19.992188-13.371094 30.339844-3.199219 10.003906-5.875 20.945313-7.953125 32.523437-2.058594 11.476563-3.457031 22.363282-4.148437 32.363282-.679688 9.796875-1.023438 19.964844-1.023438 30.234375 0 26.726562 8.496094 48.363281 25.25 64.320312 16.546875 15.746094 38.441406 23.734375 65.066406 23.734375h246.53125c26.625 0 48.511719-7.984375 65.0625-23.734375 16.757813-15.945312 25.253906-37.585937 25.253906-64.324219-.003906-10.316406-.351562-20.492187-1.035156-30.242187zm0 0"/></svg>
</span>
</button>
<% if current_user %>
<div class="btn-group" role="group" aria-label="Button group with nested dropdown">
<div class="btn-group" role="group">
<button id="operatorDropdownTopMenu" type="button" class="btn btn-light dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
Menu
</button>
<div class="dropdown-menu dropdown-menu-right" aria-labelledby="operatorDropdownTopMenu">
<h6 class="dropdown-header">Administração:</h6>
<%= link_to("Agendamentos", admin_appointments_path, class: "dropdown-item") %>
<%= link_to("Bairros", admin_neighborhoods_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Condições", admin_conditions_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Grupos", admin_groups_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Inquérito", admin_inquiry_questions_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Operadores", admin_users_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Pacientes", admin_patients_path, class: "dropdown-item") %>
<%= link_to("Páginas", admin_pages_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Unidades", admin_ubs_index_path, class: "dropdown-item") if current_user.admin? %>
<%= link_to("Vacinas", admin_vaccines_path, class: "dropdown-item") if current_user.admin? %>
<% if current_user.ubs.any? -%>
<h6 class="dropdown-header">Unidades:</h6>
<% current_user.ubs.order(:name).each do |ubs| -%>
<%= link_to ubs.name, operator_ubs_appointments_path(ubs), class: "dropdown-item" %>
<% end -%>
<% end -%>
</div>
</div>
<%= link_to destroy_user_session_path, method: :delete, class: "btn btn-danger", data: { cy: "operatorLogoutButton" } do %>
Sair
<% end %>
</div>
<% elsif current_patient %>
<div class="btn-group" role="group">
<%= link_to current_patient.name.truncate(30), "#",
class: "btn btn-light disabled",
data: { cy: "patientNameButton" } %>
<%= link_to "Alterar meus dados", edit_community_patient_path,
class: "btn btn-light",
data: { cy: "patientEditButton" } %>
<%= link_to "Sair", community_session_path, method: :delete,
class: "btn btn-danger",
data: { cy: "patientLogoutButton" } %>
</div>
<% else %>
<div class="collapse navbar-collapse ml-auto flex-shrink-1 flex-grow-0" id="navbarTogglerDemo01">
<%= link_to "Entrar como Operador", new_user_session_path, class: "btn btn-primary w-100 mt-2", data: { cy: "userLoginButton" } %>
</div>
<% end %>
</nav>
<div class="container">
<div class="container d-print-none">
<% if flash[:notice].present? || flash[:notice_title].present?%>
<div class="alert alert-success alert-dismissible fade show" data-cy="noticeMessage">
<% if flash[:notice_title].present? -%>
<h4 class="alert-heading">
<%= flash[:notice_title] %>
</h4>
<% end -%>
<%= flash[:notice] %>
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% end %>
<% if flash[:alert].present? %>
<div class="alert alert-warning alert-dismissible fade show" data-cy="<%= flash[:cy] %>">
<%= flash[:alert] %>
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% end %>
<% if flash[:error].present? %>
<div class="alert alert-danger alert-dismissible fade show" data-cy="errorMessage">
<%= flash[:error] %>
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% end %>
</div>
<%= yield %>
</div>
<footer class="footer">
<div class="container p-5"></div>
<hr>
<div class="text-center p-3">
<%= embedded_page :footer %>
</div>
</footer>
</body>
</html>