Browse Source

Improved link feature.

Martin Edenhofer 12 years ago
parent
commit
112ec68e7d

+ 12 - 1
app/assets/javascripts/app/controllers/link_info.js.coffee

@@ -3,6 +3,7 @@ $ = jQuery.sub()
 class App.LinkInfo extends App.Controller
   events:
     'click [data-type=add]': 'add',
+    'click [data-type=edit]': 'edit',
     'click [data-type=remove]': 'remove',
 
   constructor: ->
@@ -41,7 +42,10 @@ class App.LinkInfo extends App.Controller
         list[ item['link_type'] ] = []
         
       if item['link_object'] is 'Ticket'
-        list[ item['link_type'] ].push App.Ticket.find( item['link_object_value'] )
+        ticket = App.Ticket.find( item['link_object_value'] )
+        if ticket.ticket_state.name is 'merged'
+          ticket.css = 'merged'
+        list[ item['link_type'] ].push ticket
 
     # insert data
     @html App.view('link/info')(
@@ -53,6 +57,13 @@ class App.LinkInfo extends App.Controller
 #      user_id:  user_id,
 #    )
 
+  edit: (e) =>
+    e.preventDefault()
+    if $(e.target).parent().parent().find('[data-type=remove]').is('.hide')
+      $(e.target).parent().parent().find('[data-type=remove]').removeClass('hide')
+    else
+      $(e.target).parent().parent().find('[data-type=remove]').addClass('hide')
+
   remove: (e) =>
     e.preventDefault()
     link_type   = $(e.target).data('link-type')

+ 5 - 2
app/assets/javascripts/app/views/link/info.jst.eco

@@ -5,11 +5,14 @@
     <strong><%- T( type ) %></strong>
     <ul>
       <% for item in @links[type]: %>
-      <li><a href="#ticket/zoom/<%= item.id %>" data-type="" title="<%= item.title %>">T:<%= item.number %> <%= item.title %></a> <a href="" data-object="Ticket" data-object-id="<%= item.id %>" data-link-type="<%= type %>" data-type="remove" class="icon-remove" title="<%- T('remove') %>"></a></li>
+      <li><a href="#ticket/zoom/<%= item.id %>" data-type="" title="<%= item.title %>" class="<%= item.css %>">T:<%= item.number %> <%= item.title %></a> <a href="" data-object="Ticket" data-object-id="<%= item.id %>" data-link-type="<%= type %>" data-type="remove" class="icon-remove hide" title="<%- T('remove') %>"></a></li>
       <% end %>
     </ul>
   <% end %>
 
-  <div><a href="" data-type="add" class="icon-plus" title="<%- T('add') %>"></a></div>
+  <div>
+    <a href="" data-type="edit" class="icon-edit" title="<%- T('edit') %>"></a>
+    <a href="" data-type="add" class="icon-plus" title="<%- T('add') %>"></a>
+  </div>
 
 </div>

+ 8 - 0
app/assets/stylesheets/zzz.css

@@ -24,6 +24,10 @@ body {
   background-image: url("../assets/glyphicons-halflings.png");
 }
 
+h1, h2, h3, h4, h5, h6 {
+  margin: 0 0 10px;
+}
+
 .navbar .nav > li > a {
   padding: 10px 12px 10px;
 }
@@ -209,6 +213,10 @@ footer {
   border: 1px solid #fbeed5;
 }
 
+.merged, .merge:hover {
+  text-decoration: line-through;
+}
+
 .customer-info {
   width:86%;
   padding-top: 5px;

+ 1 - 1
app/controllers/links_controller.rb

@@ -39,7 +39,7 @@ class LinksController < ApplicationController
 
   # POST /links/add
   def add
-#    @template.created_by_id = current_user.id
+
     # lookup object id
     object_id = Ticket.where( :number => params[:link_object_target_number] ).first.id
     link = Link.add(