gitlabhq/gitlabhq

View on GitHub
app/views/projects/commits/_image.html.haml

Summary

Maintainability
Test Coverage
- if diff.renamed_file || diff.new_file || diff.deleted_file
  .image
    %span.wrap
      .frame{class: image_diff_class(diff)}
        %img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
      %p.image-info= "#{number_to_human_size file.size}"
- else
  .image
    %div.two-up.view
      %span.wrap
        .frame.deleted
          %a{href: project_blob_path(@project, tree_join(@commit.parent_id, diff.old_path))}
            %img{src: "data:#{old_file.mime_type};base64,#{Base64.encode64(old_file.data)}"}
        %p.image-info.hide
          %span.meta-filesize= "#{number_to_human_size old_file.size}"
          |
          %b W:
          %span.meta-width 
          |
          %b H:
          %span.meta-height
      %span.wrap
        .frame.added
          %a{href: project_blob_path(@project, tree_join(@commit.id, diff.new_path))}
            %img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
        %p.image-info.hide
          %span.meta-filesize= "#{number_to_human_size file.size}"
          |
          %b W:
          %span.meta-width 
          |
          %b H:
          %span.meta-height

    %div.swipe.view.hide
      .swipe-frame
        .frame.deleted
          %img{src: "data:#{old_file.mime_type};base64,#{Base64.encode64(old_file.data)}"}
        .swipe-wrap
          .frame.added
            %img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
        %span.swipe-bar
          %span.top-handle
          %span.bottom-handle

    %div.onion-skin.view.hide
      .onion-skin-frame
        .frame.deleted
          %img{src: "data:#{old_file.mime_type};base64,#{Base64.encode64(old_file.data)}"}
        .frame.added
          %img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
        .controls
          .transparent
          .drag-track
            .dragger{:style => "left: 0px;"}
          .opaque


  .view-modes.hide
    %ul.view-modes-menu
      %li.two-up{data: {mode: 'two-up'}} 2-up
      %li.swipe{data: {mode: 'swipe'}} Swipe
      %li.onion-skin{data: {mode: 'onion-skin'}} Onion skin