holderdeord/hdo-site

View on GitHub
app/views/admin/issues/_positions.html.erb

Summary

Maintainability
Test Coverage
<button class="btn btn-small" id="new-position">Ny</button>

<div class="positions">
  <% issue.positions.group_by { |e| e.parliament_period }.
                     sort_by { |period, _| period.name }.
                     reverse.each do |period, positions| %>
    <h4>
      <%= period.name %>
      <small class="pull-right muted">
        <span class="positions-counter"><%= positions.size %></span> <%= Position.model_name.human(count: positions.size).downcase %>
      </small>
    </h4>

    <% positions.each do |position| %>
      <div class="row-fluid position" data-context='<%= position.as_json(methods: [:party_ids, :party_names]).to_json.html_safe %>'>
        Laster...
      </div>
    <% end -%>
  <% end %>
</div>

<script data-name="position-template" type="text/x-handlebars-template">
  <div class="row-fluid" data-expands="#position-{{id}}">
    <div class="span4">
      <span class="expandable"></span>
      <small>{{party_names}}</small>
    </div>

    <div class="span1">{{priority}}</div>
    <div class="span6">{{title}}</div>
    <div class="span1">
      <a href="#" class="btn btn-small btn-danger position-remove" data-id="{{id}}" data-description="{{party_names}}" data-title="{{title}}">Slett</a>
    </div>
  </div>

  <div class="position-form" id="position-{{id}}">
    <div class="row-fluid">
      <div class="span4">
        <h5>Partier</h5>

        <select
           id="positions_{{id}}_parties"
           name="positions[{{id}}][parties][]"
           class="position-parties"
           data-placeholder="Velg partier"
           multiple>

          <% Party.order(:name).each do |party| %>
            <option value="<%= party.id %>" {{selectedIfInclude <%= party.id %> party_ids}}>
              <%= party.name %>
            </option>
          <% end %>
        </select>
      </div>

      <div class="span4">
        <h5>Tittel</h5>
        <div class="row-fluid">
          <input type="text" id="positions_{{id}}_title" name='positions[{{id}}][title]' value="{{title}}" placeholder="Stemt for å ...">
        </div>

        <h5>Prioritet</h5>
        <input type="text" id="positions_{{id}}_priority" name="positions[{{id}}][priority]" value="{{priority}}">
      </div>

      <div class="span4">
        <h5>Stortingsperiode</h5>
        <select id="positions_{{id}}_parliament_period_id"
                name="positions[{{id}}][parliament_period_id]">
          <% ParliamentPeriod.order('start_date DESC').each do |pp| %>
            <option value="<%= pp.id %>" {{selectedIfEqual <%= pp.id %> parliament_period_id}}>
              <%= pp.name %>
            </option>
          <% end %>
        </select>
      </div>
    </div>

    <div class="row-fluid" data-wmd-editor="position-{{id}}">
      <div class="span7">
        <h5>Beskrivelse</h5>
        <div id="wmd-button-bar-position-{{id}}"></div>

        <textarea
           id="wmd-input-position-{{id}}"
           name="positions[{{id}}][description]"
           rows="10"
           class="span12"
           placeholder="Har stemt ..."
           >{{description}}</textarea>
      </div>

      <div class="span5">
        <h5>Forhåndsvisning</h5>
        <div id="wmd-preview-position-{{id}}" class="well"></div>
      </div>
    </div>

    <hr class="soften">
  </div>
</script>