<tr class="<%= cycle('', 'alt') %> line-item">
  <td data-hook="cart_item_image">
    <% if variant.images.length == 0 %>
      <%= link_to small_image(variant.product), variant.product %>
    <% else %>
      <%= link_to image_tag(variant.images.first.attachment.url(:small)), variant.product %>
    <% end %>
  </td>
  <td data-hook="cart_item_description">
    <h4><%= link_to variant.product.name, product_path(variant.product) %></h4>
    <%= variant.options_text %>
    <% if @order.insufficient_stock_lines.include? line_item %>
      <span class="out-of-stock">
        <%= variant.in_stock? ? t(:insufficient_stock, :on_hand => variant.on_hand) : t(:out_of_stock) %><br />
      </span>
    <% end %>
    <%= truncate(variant.product.description, :length => 100, :omission => "...") %>
  </td>
  <td data-hook="cart_item_price">
    <%= number_to_currency line_item.price %>
  </td>
  <td data-hook="cart_item_quantity">
    <%= item_form.number_field :quantity, :min => 0, :class => "line_item_quantity", :size => 5 %>
  </td>
  <td data-hook="cart_item_total">
    <%= number_to_currency(line_item.price * line_item.quantity) unless line_item.quantity.nil? %>
  </td>
  <td data-hook="cart_item_delete">
    <%= link_to image_tag('icons/delete.png'), '#', :class => 'delete', :id => "delete_#{dom_id(line_item)}" %>
  </td>
</tr>
