OSDN Git Service

implement(in progress): WorkTime plug-in extension. refs #1362 (http://www.r-labs...
[quickedit/quick_view.git] / app / views / hooks / _quick_view_issues_footer_worktime_ext.html.erb
1 <script>
2 //<![CDATA[
3 <% if Setting.plugin_quick_view['worktime_ext_enabled'] %>
4 if ($("body").hasClass("controller-work_time")) {
5   quick_view_work_time_extension_init();
6   $(document).ajaxComplete(quick_view_work_time_extension_init);
7
8   <% if Setting.plugin_quick_view['worktime_ext_tooltip_enabled'] %>
9   quick_view_work_time_extension_tooltip_init();
10   $(document).ajaxComplete(quick_view_work_time_extension_tooltip_init);
11   <% end %>
12 }
13
14 function quick_view_work_time_extension_init() {
15   var links = $(".wt_iss_link");
16   links.each(function(){
17      var link = $(this);
18      if (link.hasClass("has_quick_view_anchor")) return;
19
20      var insertTo = link.next(".wt_done_ratio");
21      if (insertTo.length == 0) {
22        insertTo = link;
23      }
24      var issue_id = link.data("issue");
25      var anchor_html="<a style='margin-left: 5px;' href='javascript: quick_view_show_dialog("+issue_id+");'><img src='<%= image_path("external.png") %>'></img></a>";
26      $(anchor_html).insertAfter(insertTo);
27      link.addClass("has_quick_view_anchor");
28   });
29 }
30
31 function quick_view_work_time_extension_tooltip_init() {
32   var links = $(".wt_iss_link");
33   links.each(function(){
34      var link = $(this);
35      if (link.hasClass("has_tooltip")) return;
36
37      link.addClass("has_tooltip"); //need before ajax call.
38      link.mouseenter(function() { 
39        if (link.hasClass("has_tooltip_content")) return;
40
41        var issue_id = link.data("issue");
42        var url = "<%= quick_view_worktime_issue_path(0) %>".replace(/0$/, link.data("issue"));
43        $.ajax( { url: url, dataType: 'html', success: function (html){
44          link.addClass("has_tooltip_content"); //mark of tooltip content created.
45          link.tooltip({tooltipClass:"quick_view_tooltip", track: true, create:function(){link.attr("title",html);}});
46          link.tooltip("open");
47        }});
48      });
49   });
50 }
51 <% end %>
52 //]]>
53 </script>
54