使用しているのはMyRedmine(RedMica 1.3.0.stable)です。また、プラグインは以下のものが設定されています。新しいチケット画面では、以前相談させて頂いたようにまた何かのプラグインが邪魔しているのでしょうか。
RedMica S3 plugin
RedMica UI extension
Redmine Farend Control Panel plugin
Redmine Ip Filter
Redmine Issue Templates plugin
Redmine Issues Panel plugin
Redmine message customize plugin
My Page Blocks plugin
View Customize plugin2021年8月20日金曜日 15:09:08 UTC+9 Tachibana Yuduki:
--
このメールは Google グループのグループ「Redmine Users (japanese)」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには redmine-users-...@googlegroups.com にメールを送信してください。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/redmine-users-ja/c90661ae-8c40-47c4-bd17-42e4c54b9162n%40googlegroups.com にアクセスしてください。
onozaty様
ご回答いただきありがとうございます。
挿入位置を「チケット入力欄の下」に変更、スクリプトを以下のように修正して、
試してみましたが、やはりうまくいきません…
①サンプルのように、if文内がswitch文のみになるよう他の部分を削除
⇒トラッカーやステータスを変更するとメッセージが消え、再表示されません。
②replaceIssueFormWith部分のみ削除
⇒トラッカーやステータスを変更すると、メッセージが2行重複して一瞬だけ表示されたあと、消えてしまいます。
カスタマイズが実行されたあとに、入力フォームが再読み込みされて上書きされてしまっているように感じます…。
View customizeのバージョンが古いのでしょうか…。プラグイン一覧には「2.6.0」と書かれていました。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/redmine-users-ja/06226b61-9416-4d7f-99d8-1c5c8fe8f6b1n%40googlegroups.com にアクセスしてください。
パスのパターン:/issues/new$、/issues/[0-9]+$
(新規と編集ではメッセージの文言が異なるだけでスクリプト自体はほぼ同じです)
挿入位置:チケット入力欄の下
種別:JavaScript
1◆このスクリプトの場合、トラッカーやステータスを変更するとメッセージが消え、再表示されない
$(function() {
var project_id = ViewCustomize.context.project.identifier;
var pid = project_id.substring(0,4);
//プロジェクト名の頭がunyoで始まるもののみ適用
if (pid == 'unyo'){
//トラッカーが「連絡」「相談」「要望」のときとそれ以外で
//メッセージをかえる
switch($('#issue_tracker_id option:selected').text()) {
case "連絡":
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">※次にチケットを確認して欲しい人に向けてください。</span>'
);
break;
case "相談":
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">次にチケットを確認して欲しい人に向けてください。</span>'
);
break;
case "要望
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">次にチケットを確認して欲しい人に向けてください。</span>'
);
break;
default:
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">※必ず受付担当を選択してください。</span>'
);
break;
}; //switch
//担当者氏名
$('#issue_custom_field_values_1').parent().append(
'<br/>',
'<span style="color:red;">※チケット起票者の所属、氏名を入力してください</span>'
);
}; //if
}); //function
2◆このスクリプトの場合、トラッカーやステータスを変更すると、メッセージが2行重複して一瞬だけ表示されたあと消えて、再表示されない
$(function() {
var project_id = ViewCustomize.context.project.identifier;
var pid = project_id.substring(0,4);
//プロジェクト名の頭がunyoで始まるもののみ適用
if (pid == 'unyo'){
//入力項目注意文の設定
var setMessage = function() {
//トラッカーが「連絡」「相談」「要望」のときとそれ以外で
//メッセージをかえる
switch($('#issue_tracker_id option:selected').text()) {
case "連絡":
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">※次にチケットを確認して欲しい人に向けてください。</span>'
);
break;
case "相談":
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">次にチケットを確認して欲しい人に向けてください。</span>'
);
break;
case "要望":
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">次にチケットを確認して欲しい人に向けてください。</span>'
);
break;
default:
//担当者
$('#issue_assigned_to_id').parent().append(
'<br/>',
'<span style="color:red;">※必ず受付担当を選択してください。</span>'
);
break;
}; //switch
//担当者氏名
$('#issue_custom_field_values_1').parent().append(
'<br/>',
'<span style="color:red;">※チケット起票者の所属、氏名を入力してください</span>'
);
}; //var
//現時点のもので表示
setMessage();
//トラッカーが変わったタイミングで切替
$('#all_attributes').on('change', '#issue_tracker_id', function(e) {
setMessage();
//編集画面ではステータスが変わったタイミングでも切替
//$('#all_attributes').on('change', '#issue_status_id', function(e) {
// setMessage();
});
}; //if
}); //function
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/redmine-users-ja/7c02ddda-29e4-43f6-b22a-0f0ef6f6108bn%40googlegroups.com にアクセスしてください。
ご回答ありがとうございます。
新規か編集かはステータスでも判別ができるので、ifかcaseで分ければいいとして、パスパターンを.*にしたところ、切り替え時に再表示されるようになりました。
ただ、同じ文章が2行重複して表示されてしまうことがあります。(以下のような感じです)
担当者 受付担当
※必ず受付担当を選択してください。
※必ず受付担当を選択してください。
何度かトラッカーを変更するなかでちゃんと表示されるときもあるので、これについては何かで防止できるものではないですよね…。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/redmine-users-ja/c3332074-c7e3-48cc-b13f-7026a41f09cdn%40googlegroups.com にアクセスしてください。
onozaty様
他に設定してあるスクリプトを一度全て無効にして試してみましたが、
それでもやはり二重で表示されるときがあります…。
また、逆にまったく表示されないということはなく、表示は必ずされております。
普段ブラウザはInternetExplorerを使用しているので、ブラウザをMicrosoftEdgeに変えて確認してみましたが、
それでも同じような動きをしてしまいます。
実際のスクリプトはもう少しcaseの数が多かったり
case内にもif文を書いていたりといくつもネストしているので、
検証用に、条件分岐のない簡易的なもので試してみましたが、それでもダメでした…。
二重で表示されるタイミングに決まりもなさそうなので、
原因を特定するのは厳しいかもしれません。
実運用までにはまだ時間があるので、もう少し検討してみようと思います。
ここまで色々とありがとうございました。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/redmine-users-ja/64b8a84c-823c-45e0-b3a0-3ce9db56ba77n%40googlegroups.com にアクセスしてください。
onozaty様
ありがとうございます。
教えて頂いたように修正したところ、2重に表示されるのを回避することはできました。
しかし今度は、メッセージは表示されているのに入力欄が消えてしまう現象が起こりました…。
手入力形式の入力項目は入力欄がちゃんと表示されているのですが、
セレクトボックス形式の入力項目は入力欄も消されてしまうようです。
(「担当者」という項目名ラベルは表示されています)
前に別件で、RedMica UI extension のプラグインでセレクトボックスをカスタマイズしていると
教えて頂きましたが、今回のremoveにもこのプラグインが関係してしまっているのでしょうか…。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/redmine-users-ja/cb220189-32da-489b-abb7-e7a16bbc6dd9n%40googlegroups.com にアクセスしてください。