newscoop/JS-Scoopwriter

View on GitHub
app/views/attach-image.html

Summary

Maintainability
Test Coverage
<div class="attach-image" ng-controller="AttachImageCtrl">
  <div class="content-row">
    <div class="left-pane sources list-group">
      <a
         class="list-group-item"
         ng-repeat="source in sources"
         ng-click="select(source)"
         ng-class="{active: selected.value==source.value}"
         data-test="select-{{selected.value}}"
         ng-bind="source.description"
         >
      </a>
    </div>
    <div
       class="right-pane source"
       ng-include="selected.url"
       >
    </div>
  </div>

  <div class="basket-container">
    <div class="basket-head">
      <span class="description">{{ ::('aes.label.selectedimages'|trans) }}</span>
      <span class="badge" ng-bind="images.collected.length"></span>
      {{'aes.label.imagescount'|transChoice: images.collected.length }}
    </div>

    <div class="basket">
      <div
         ng-repeat="image in images.collected"
         class="thumbnail-wrapper"
         ng-class="{attached: images.isAttached(image.id)}"
         ng-click="images.toggleCollect(image.id)"
         title="{{image.description || 'aes.label.nodescription'|trans}}"
         >
        <div class="toggler">
          <span class="glyphicon glyphicon-minus"></span>
        </div>
        <img
           class="thumbnail" 
           ng-src="{{root}}/images/thumbnails/{{image.thumbnailPath}}"
           alt="{{image.description || 'aes.label.nodescription'|trans}}"
           >
        <div class="img-metadata">
          {{image.description || 'aes.label.nodescription'|trans}}<br/>
          <span class="size-info">{{image.width}} x {{image.height}}</span>
        </div>
      </div>
    </div>
  </div>
  
  <div class="commands-bar">
    <button
       type="button"
       class="btn btn-default"
       ng-disabled="images.images2upload.length > 0"
       ng-click="discardChanges($event)"
       data-test-button="modal-close"
       data-dismiss="modal">
      {{ ::('aes.btn.discard'|trans) }}
    </button>
    <button
       type="button"
       class="btn btn-primary"
       ng-disabled="images.collected.length < 1 || images.images2upload.length > 0"
       ng-click="attachCollected()">
      {{ ::('aes.label.attachimages'|trans) }}
    </button>
  </div>
</div>