holderdeord/hdo-site

View on GitHub
app/views/admin/questions/edit.html.erb

Summary

Maintainability
Test Coverage
<% page_title "Rediger spørsmål #{@question.id} - Admin - #{t('app.title')}" %>

<h3>
  Spørsmål
  <small class="pull-right <%= alert_class_for_status(@question.status) %>"><%= @question.status_text %></small>
</h3>

<%= form_for(@question, url: admin_question_url(@question)) do |f| %>
  <div class="form-actions">
    <%= f.submit t('app.save'), class: 'btn btn-primary' %>
    <%= link_to t('app.back'), admin_questions_path, class: 'btn' %>
  </div>

  <div class="row-fluid">
    <dl class="span6">
      <dt><%= Question.human_attribute_name :created_at %></dt>
      <dd><%= l @question.created_at.localtime %></dd>

      <dt><%= Question.human_attribute_name :representative %></dt>
      <dd><%= link_to @question.representative.name, @question.representative %></dd>

      <dt><%= Question.human_attribute_name :from_name %></dt>
      <dd><%= f.text_field :from_name %></dd>

      <dt><%= Question.human_attribute_name :from_email %></dt>
      <dd><%= @question.from_email %></dd>

      <dt><%= Question.human_attribute_name :show_sender %> <%= f.check_box :show_sender %></dt>

      <dt><%= Question.human_attribute_name :body %></dt>
      <dd class="well">
        <%= f.text_area :body, rows: 5, style: 'width: 100%;' %>
        <small class="muted">Suπerforsiktig, superadmin...</small>
      </dd>

      <dt><%= Question.human_attribute_name :internal_comment %></dt>
      <dd><%= f.text_area :internal_comment, rows:  5, style: 'width: 100%' %></dd>
    </dl>

    <dl class="span6">
      <dt><%= Question.human_attribute_name :status %></dt>
      <dd><%= f.select :status, question_status_options %></dd>

      <dt><%= Question.human_attribute_name :issues %></dt>
      <dd><%= f.select :issues, issue_options_for(@question), {}, multiple: true, data: {placeholder: 'Velg saker'} %></dd>

      <div class="span6">
        <dt><%= Question.human_attribute_name :tags %></dt>
        <dd>
          <input type="text" name="tags" placeholder="Tags" id="question-tag-list" class="tagManager"
                data-current-tags="<%= @question.tag_list.join(",") %>"
                data-all-tags="<%= all_tags.join(',') %>" />
        </dd>
      </div>
    </dl>

  </div>

  <hr class="soften">

  <div class="row-fluid">
    <h3>
      Svar

      <% if @answer %>
        <small>fra <%= @answer.representative.full_name %></small>
        <small class="pull-right <%= alert_class_for_status(@answer.status) %>"><%= @answer.status_text %></small>
      <% end %>
    </h3>

    <div class="row-fluid">
      <% if @answer %>
        <dl class="span6">
          <%= f.fields_for :answer do |b| %>
            <dt><%= Answer.human_attribute_name :created_at %></dt>
            <dd><%= b.datetime_select :created_at, { order: [:day, :month, :year], use_month_numbers: true, default: @answer.created_at }, { class: 'date-select' } %></dd>

            <dt><%= Answer.human_attribute_name :body %></dt>
            <dd class="well">
              <%= f.text_area :answer_body, rows: 5, style: 'width: 100%;' %>
              <small class="muted">Suπerforsiktig, superadmin...</small>
            </dd>
          <% end %>
        </dl>

        <dl class="span6">
          <dt><%= Question.human_attribute_name :status %></dt>
          <dd><%= select_tag 'question[answer][status]', answer_status_options %></dd>
        </dl>
      <% else %>
        Ingen svar foreløπig.
        <div class="row-fluid"><%= link_to 'Opprett et svar, da.', create_answer_admin_question_path(@question), class: 'btn btn-primary' %></div>
      <% end %>
    </div>

    <hr class="soften">

  <h3>E-poster</h3>
  <div class="row-fluid">
    <div class="span4<%= @question.approved? ? '' : ' muted' %>">
      <h4>Ved godkjent spørsmål</h4>
      <% if @question.approved? %>
        <div class="row-fluid">
          <%= link_to 'Send e-post til bruker', question_approved_email_user_admin_question_path(@question), class: 'btn', confirm: 'Er du sikker på at du vil sende e-post til brukeren?' %>
        </div>
        <div class="row-fluid">
          <%= link_to 'Send e-post til representant', question_approved_email_rep_admin_question_path(@question), class: 'btn', confirm: 'Er du sikker på at du vil sende e-post til representanten?'%>
        </div>
      <% else %>
        <div class="row-fluid"><div class="btn disabled">Send e-post til bruker</div></div>
        <div class="row-fluid"><div class="btn disabled">Send e-post til representant</div></div>
      <% end %>
    </div>
    <div class="span4<%= @question.rejected? ? '' : ' muted' %>">
      <h4>Ved avvist spørsmål</h4>
      <% if @question.rejected? %>
        <div class="row-fluid">
          <a href="#" data-toggle="modal" data-target="#reject-question-email-modal" class="btn">Send e-post til bruker</a>
        </div>
      <% else %>
        <div class="row-fluid"><div class="btn disabled">Send e-post til bruker</div></div>
      <% end %>
    </div>
    <div class="span4<%= @question.answer && @question.answer.approved? ? '' : ' muted' %>">
      <h4>Ved godkjent svar</h4>
      <% if @question.has_approved_answer? %>
        <div class="row-fluid">
          <%= link_to 'Send e-post til bruker', answer_approved_email_user_admin_question_path(@question), class: 'btn', confirm: 'Er du sikker på at du vil sende e-post til brukeren?' %>
        </div>
      <% else %>
        <div class="row-fluid"><div class="btn disabled">Send e-post til bruker</div></div>
      <% end %>
    </div>
  </div>

  <% if @question.email_events.any? %>
      <h4>Sendte e-poster</h4>
      <table class="table table-hover">
        <thead>
          <tr>
            <th>Sendt</th>
            <th>Til</th>
            <th>Emne</th>
          </tr>
        </thead>

        <tbody>
          <% @question.email_events.each do |email_event| %>
            <tr>
              <td><%= l email_event.created_at %></td>
              <td><%= email_event.email_address %></td>
              <td><%= email_event.email_type %></td>
            </tr>
          <% end %>
        </tbody>
      </table>
  <% end %>

  <div class="form-actions">
    <%= f.submit t('app.save'), class: 'btn btn-primary' %>
    <%= link_to t('app.back'), admin_questions_path, class: 'btn' %>
  </div>
<% end %>

<%= render partial: 'question_rejected_modal' %>

<% content_for :document_ready do %>
  <script type="text/javascript" charset="utf-8">
    $(document).ready(function() {
      $("#question_issues").chosen();


      var tagList = $("#question-tag-list");

      tagList.tagsManager({
        prefilled: tagList.data('current-tags').split(","),
        preventSubmitOnEnter: true,
        typeahead: true,
        typeaheadSource: tagList.data('all-tags').split(","),
        hiddenTagListName: 'question[tag_list]'
      });
    });
  </script>
<% end %>