akz92/estudeantes

View on GitHub
app/views/layouts/_navbar.html.haml

Summary

Maintainability
Test Coverage
- if !subject && period
  = render partial: "periods/modal_edit", locals: { period: period }
  = render partial: "subjects/modal", locals: { period: period }
- if !subject && other_periods
  = render partial: "periods/modal"
- if user_signed_in?
  = render partial: "devise/registrations/modal_edit"
%nav.navbar.navbar-default.navbar-fixed-top{:role => "navigation"}
  / Brand and toggle get grouped for better mobile display
  .container
    .navbar-header
      %button.navbar-toggle{"data-target" => "#navbarCollapse", "data-toggle" => "collapse", :type => "button"}
        %span.sr-only Toggle navigation
        %span.icon-bar
        %span.icon-bar
        %span.icon-bar
      %a.navbar-brand{:href => "#{root_url}"} EstudeAntes
    / Collection of nav links and other content for toggling
    #navbarCollapse.collapse.navbar-collapse
      %ul.nav.navbar-nav
        - if subject
          %li
            - if period.is_current
              %a{href: "#{root_url}"} #{period.number}º Período
            - else
              %a{href: "#{root_url}"} Periodo atual
              %li= link_to 'Outros periodos', periods_all_path
              /%a{href: "#{period_subjects_path(period)}"} #{period.number}º Período
        - elsif other_periods
          %li
            %a{href: "#{root_url}"} Periodo atual
          %li.dropdown
            %a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"}
              Outros periodos
              %b.caret
            %ul.dropdown-menu
              %li
                %a{href: "#", "data-target" => "#PeriodModalForm", "data-toggle" => "modal"} Adicionar periodo

        -elsif period
          %li.dropdown
            %a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"}
              #{period.number}º Período
              %b.caret
            %ul.dropdown-menu
              /%button.btn.btn-info.btn-lg{"data-target" => "#SubjectModalForm", "data-toggle" => "modal", :type => "button"} Open Modal
              %li
                %a{href: "#", "data-target" => "##{dom_id(period, :subject)}", "data-toggle" => "modal"} Adicionar disciplina
              /%li= link_to '<i class="glyphicon glyphicon-plus"></i> Adicionar disciplina'.html_safe, new_period_subject_path(@period)
              %li.divider
              %li
                %a{href: "#", "data-target" => "##{dom_id(period, :edit_period)}", "data-toggle" => "modal"} Editar
              /%li= link_to '<i class="glyphicon glyphicon-pencil"></i> Editar'.html_safe, edit_period_path(@period), class: "icon-pencil icon-white"
              %li.divider
              %li= link_to 'Deletar', period_path(period), method: :delete, data: { confirm: 'Tem certeza que deseja deletar o periodo?' }
          - if period.is_current
            %li= link_to 'Outros periodos', periods_all_path
          -#- if period.is_current
            %li.dropdown
              %a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"}
                Outros Períodos
                %b.caret
              %ul.dropdown-menu
                /- @dados["all_periods"].each do |period|
                - other_periods.each do |period|
                  %li= link_to "#{period.number}º Período", period_subjects_path(period)
                  %li.divider
                /%li= link_to '<i class="glyphicon glyphicon-plus"></i> Adicionar novo periodo'.html_safe, new_period_path, "data-target" => "#PeriodModalForm", "data-toggle" => "modal"
                %li
                  %a{href: "#", "data-target" => "#PeriodModalForm", "data-toggle" => "modal"} Adicionar período
            /%li= link_to "Outros períodos", periods_all_path
      - if user_signed_in?
        %ul.nav.navbar-nav.pull-right
          %li
            #user_nav
              %li.dropdown
                %a.dropdown-toggle{"data-toggle" => "dropdown", href: "#"}
                  - if current_user.name
                    #{current_user.name}
                  - else
                    #{current_user.email}
                  %b.caret
                %ul.dropdown-menu
                  %li
                    %a{href: "#", "data-target" => "#EditUserModalForm", "data-toggle" => "modal"} Editar conta
                  /%li= link_to "Editar Conta", edit_user_registration_path
                  %li= link_to "Sair", destroy_user_session_path, :method => :delete