タグ: redmine_view_customize

Redmine View Customizeで、ステータスに応じてバージョンを移動させる。

個人用のメモとして活用しているRedmine。

ステータスをハリポタシリーズの呪文に見立てているなど、かなり遊んでいます。

そこで、

  • 終わったチケット
  • 却下されたチケット

を、自動的にそれらのバージョンに移動できないかということで組んだCustomizeです。

  • Redmine 5.1
  • View Customize

で動作を確認しています。

カスタマイズ

  • パスのパターン:空白
  • プロジェクトのパターン:空白
  • 挿入位置:全ページのヘッダ
  • 種別:JavaScript
$(document).ready(function() {
  const prophecyRoomId = 4; // 「予言の間」のバージョンID
  const azkabanId = 5; // 「アズカバン」のバージョンID

  $('#issue_status_id').change(function() {
    const statusId = parseInt($(this).val()); // ステータスのIDを取得
    if (statusId === 5) { // FinitoのステータスID(例)
      $('#issue_fixed_version_id').val(prophecyRoomId); // 「予言の間」に変更
    } else if (statusId === 6) { // Avada KedavraのステータスID(例)
      $('#issue_fixed_version_id').val(azkabanId); // 「アズカバン」に変更
    }
  });
});

変数は自分が分かればいいのでこのような形にしています。なお、バージョンやステータスのIDは管理画面で把握できます。

あとは保存して、

  1. チケットのステータスを移動
  2. それに応じてバージョンが変わる

ことを確認できればOKです。

Redmineの進捗率を自動クローズ/変更時に元に戻すView_Customize

個人メモとして利用しているRedmine。ステータスに応じて進捗率を設定してしまうと、トラッカーが追えなくなるため、以下のカスタマイズを行いました。

スクリプトの内容

  1. Redmineに管理者権限でログインします。
    1. 管理>表示のカスタマイズに進みます。
    2. 新しい表示のカスタマイズを選択し、
      1. パスのパターン:空白
      2. 挿入位置:全ページのヘッダ
      3. 種別:JavaScript
      4. コード
$(document).on('change', '#issue_status_id', function () {
 const closedStatuses = [5, 6]; // 閉じられたステータスIDを指定(例: 5: 完了, 6: 却下)
 const selectedStatus = parseInt($(this).val(), 10);

 // 元の進捗率を保存するための変数
 let originalDoneRatio = $('#issue_done_ratio').data('original-done-ratio');

 if (!originalDoneRatio) {
   // 初回実行時に元の進捗率を保存
   originalDoneRatio = $('#issue_done_ratio').val();
   $('#issue_done_ratio').data('original-done-ratio', originalDoneRatio);
}

 if (closedStatuses.includes(selectedStatus)) {
   $('#issue_done_ratio').val('100'); // 進捗率を100%に設定
} else {
   // 元の進捗率に戻す
   $('#issue_done_ratio').val(originalDoneRatio);
}
});

動作の解説

  1. チケットのステータスが変更されると、指定された閉じられたステータスIDの場合は、自動で進捗率が100%に変更されます。
  2. その他のステータスに変更された場合は、初回に保存した元の進捗率に戻されます。

これで、進捗率を維持しつつステータスの変更が可能になります。

Redmine View Customizeを用いて、alt属性がついた画像を拡大して表示する。

こちらの記事の応用となります。

のように、alt属性がついた画像をマウスオーバーしたときに

拡大表示させます。

前提

  • Redmine View Customize がインストールされていること。
  • Redmine 5.1で動作を確認しています。

手順

画面移動

  1. Redmineに管理者権限でログインします。
  2. 管理>表示のカスタマイズに移動します。

カスタマイズ作成:JavaScript

表示のカスタマイズに移動後、「新しい表示のカスタマイズ」をクリックします。

以下の通りに入力します。

  • パスのパターン
  • 空白
  • プロジェクトのパターン
  • 空白
  • 挿入位置
  • 全ページのヘッダ
  • 種別
  • JavaScript

コード

// JavaScript部分
$(document).ready(function() {
$('img[alt]').hover(
function() {
$(this).css({
'transform': 'scale(1.5)',
'transition': 'transform 0.3s ease'
});
},
function() {
$(this).css('transform', 'scale(1)');
}
);
});

// CSS部分
var style = document.createElement('style');
style.innerHTML = `
img[alt] {
transition: transform 0.3s ease;
}
`;
document.head.appendChild(style);
  • コメント
  • 任意「alt画像のホバー表示(javascript)」など
  • 有効
  • チェック
  • プライベート
  • チェックを外す

設定後、保存をクリックします。

動作を確認します。

上記設定後、チケット詳細などのアイコンが表示されているページに遷移します。

冒頭のようにマウスカーソルを近づけた際に拡大されれば設定は完了です。

Redmine View Cutomizeを用いてアイコンを拡大表示させる。

概要

アイコンの画像にマウスを近づけたとき、

アイコンを拡大表示させるためのView_Customizeのスクリプトです。

前提

  • Redmine View Customize がインストールされていること。
  • Redmine 5.1で動作を確認しています。

手順

画面移動

  1. Redmineに管理者権限でログインします。
  2. 管理>表示のカスタマイズに移動します。

カスタマイズ作成:JavaScript

表示のカスタマイズに移動後、「新しい表示のカスタマイズ」をクリックします。

以下の通りに入力します。

  • パスのパターン
  • 空白
  • プロジェクトのパターン
  • 空白
  • 挿入位置
  • 全ページのヘッダ
  • 種別
  • JavaScript

コード

$(document).ready(function() {
// gravatarクラスを持つ画像にホバーイベントを追加
$('img.gravatar').hover(
function() {
$(this).css({
'transform': 'scale(1.5)', // 拡大率
'transition': 'transform 0.3s ease' // 拡大のスムーズなアニメーション
});
},
function() {
$(this).css({
'transform': 'scale(1)', // 元のサイズに戻す
'transition': 'transform 0.3s ease' // 縮小のスムーズなアニメーション
});
}
);
});
  • コメント
  • 任意「アイコンのホバー表示(javascript)」など
  • 有効
  • チェック
  • プライベート
  • チェックを外す

設定後、保存をクリックします。

カスタマイズ作成:CSS

表示のカスタマイズに移動後、「新しい表示のカスタマイズ」をクリックします。

以下の通りに入力します。

  • パスのパターン
  • 空白
  • プロジェクトのパターン
  • 空白
  • 挿入位置
  • 全ページのヘッダ
  • 種別
  • CSS

コード

/* gravatarクラスを持つ画像のスタイル */
img.gravatar {
transition: transform 0.3s ease; /* スムーズなアニメーション */
cursor: pointer; /* ポインタを表示 */
}
  • コメント
  • 任意「アイコンのホバー表示(CSS)」など
  • 有効
  • チェック
  • プライベート
  • チェックを外す

設定後、保存をクリックします。

動作を確認します。

上記設定後、チケット詳細などのアイコンが表示されているページに遷移します。

冒頭のようにマウスカーソルを近づけた際に拡大されれば設定は完了です。

Redmine、ヘッダーに別サイトへのリンクを追加。(redmine_view_customize)

ヘッダーに別のサイトのリンクがほしいときは割とあるので、そのメモです。

動作環境

  • Redmine 4.2 /5.0/5.1
  • view_customize_pluginがインストール済み

コード

「新しい表示のカスタマイズ」で

  • パスのパターン:空白
  • プロジェクトのパターン:空白
  • 挿入位置:ヘッダー
  • 種別:JavaScript

で、以下のように入力。

$(document).ready(function(){
  // メニューの準備
  const menus = `
<li><a href="https://manualmaton.com" rel="noopener noreferrer">WordPress(manualmaton.com)</a></li>
<li><a href="http://barrel.reisalin.com" target="_blank" rel="noopener noreferrer">BookStack(Barrel Gazer)</a></li>
`;
  // 追加する
  $('#top-menu>ul').append(menus);
});

こうすることで、Redmineのヘッダーに

このようにリンクが追加されます。

Redmine View Customize Pluginでのアイコンサイズ変更。

やりたいこと

Redmineのチケット表示画面に出てくるこのアイコンを大きくします。

環境

  • Redmine 4.2 Redmine 5.1
  • 要:ViewCustomize Pluginの導入

共通手順

  1. Redmineに管理者権限でログインします。
  2. 管理>表示のカスタマイズに移動します。
  3. 「新しい表示のカスタマイズ」をクリックします。

カスタマイズ1

以下の通り指定します。

  • パスのパターン:空白
  • プロジェクトのパターン:空白
  • 挿入位置:全ページのヘッダ
  • 種別:JavaScript
  • コード
$(document).ready(function() {
  // 表示環境やテーマに合わせて任意のサイズを指定
$('.gravatar').css('width', '70px').css('height', '70px');
});

コード入力後、有効にして「保存」をクリックします。

設定反映後、

と、サイズが大きくなりました。

しかし、全てに適用されるので

ガントチャートのアイコンもそれに合わせて大きくなります。それを抑制する措置を執ります。

カスタマイズ2

以下の通り指定します。

  • パスのパターン:/gantt
  • プロジェクトのパターン:空白
  • 挿入位置:全ページのヘッダ
  • 種別:JavaScript
  • コード
$(document).ready(function() {
  // 表示環境やテーマに合わせて任意のサイズを指定
   $('.gravatar').css('width', '10px').css('height', '10px');
});

適用後、

ガントチャートのアイコンサイズも設定できました。

まとめ

  • アイコンが全てに及ぶため、かなり乱暴な手を取っています。
  • そのため、カスタマイズを2つ挟む結果になりました。
  • もっとスマートな手があると思いますので、要検証です。

Powered by WordPress & Theme by Anders Norén