2
1
0

JIRAの課題表示画面で、付けられたコメントを発言者(あるいはその所属グループ)別に色分け表示して、区別し易くしたいと思います。

良い方法はあるでしょうか?

  1. yuuki ebihara

    差し支えなければ、最終的にやりたいことを記載いただけるとよろしいかと思います。

  2. 田代 衛

    即日に御返答いただきながら、当方の応答が遅くなり恐縮です。

    実は当方ではJSD類似機能のHelpdesk for JIRAというプラグインでコミュニケーション・システムを構築したのですが、その課題を閲覧したときに外部の顧客には見えない内部の関与者によるコメントを一目で判別できるように、更にはコメント入力画面も色分けして自分のコメントが外部の人に見られるものになるのかどうかが直感的に判断できるようにしたい、というようなことです。

    多分、これはJSDでも同様で、外部ユーザーに聞こえないつもりで書いた顧客の悪口が筒抜けになってたなんて事態を少しでも防げればと。。。

Commentコメントを追加...

2 回答

  1.  
    2
    1
    0

    yuuki ebihara さんがおっしゃる通りお知らせバナーにスクリプトを仕込めば
    コメントの作成者別に色を表示することはできそうでしたが、
    アドオンはわかりませんでした...

    <script>
    (function($) {
      var colorsWithAuthors = {};
    
      function isExistingOnTabReady() {
        return !!(JIRA && JIRA.ViewIssueTabs && JIRA.ViewIssueTabs.onTabReady);
      }
    
      function getCommentColor(){
        var keyLength = Object.keys(colorsWithAuthors).length;
        return 'hsl(' + (keyLength * 60) + ', 100%, 95%)';
      }
    
      function setCommentColors($comments) {
        $comments.each(function() {
          var commentId = $(this).attr('id').match(/[0-9]+$/);
          var author = $('#commentauthor_' + commentId + '_verbose').attr('rel');
    
          var isExisting = false;
          for (var key in colorsWithAuthors) {
            if (key === author) {
              isExisting = true;
              $(this).css('background-color', colorsWithAuthors[author]);
            }
          }
    
          if (isExisting) return;
    
          colorsWithAuthors[author] = getCommentColor();
          $(this).css('background-color', colorsWithAuthors[author]);
        });
    
        return colorsWithAuthors;
      }
    
      if (!isExistingOnTabReady()) return;
    
      JIRA.ViewIssueTabs.onTabReady(function() {
        var $comments = $('[id^=comment-].activity-comment');
    
        if ($comments.size() === 0) return;
    
        setTimeout(function() {
          setCommentColors($comments);
        }, 0);
    
      });
    })(AJS.$);
    
    
    </script>

    1. 田代 衛

      Shuzaburo Dobaさん

      ありがとうございました。「お知らせバナーにスクリプト」というお馴染みの手法で実現できることは分かりました。

      実現結果を見ると、発言者が一目で区別できるという意味でこの色分けは非常に効果的なものだと感じます。多分、アドオンにできればそれなりに売れるのではないかと。。。私自身ではできないですけどね。。。

    Commentコメントを追加...
  2.  
    1
    0
    -1

    パッと思いつくのは お知らせバナーでユーザ名を取得して色を振り分けるようなスクリプトを準備する方法ですが、実装は大変そうです。

    最終的に実現したい目的にあうようなアドオンを探す形になってしまいそうです。(見つかる保証はないですが...)

      Commentコメントを追加...