【備忘録】過去に設定したJs
//注意事項
//「説明」の前、後なのどを指定して移動する場合は、「説明」が入力されていないと
//移動されなくなって表示されない→そのため「説明」を入力必須にすること。
※view_customizeプラグインを使用
※トラッカーの値に応じて表示画面と編集画面を設定する
$(function() {
var changeCustomFieldPositon = function(){
//----------------------------------------------------------------------
// トラッカーの値に応じて表示画面と編集画面を設定する
//----------------------------------------------------------------------
var trackerId = $('#issue_tracker_id').val();
//alert(trackerId);
if (trackerId == '1'){
//----------------------------------------------------------------------
// 表示画面の設定
//----------------------------------------------------------------------
// 対象のカスタムフィールドの要素を取得
var cf1 = $('.cf_1.attribute');
var cf2 = $('.cf_2.attribute');
var cf3 = $('.cf_3.attribute');
var cf4 = $('.cf_4.attribute');
// 対象のフィールドの要素を取得
var assign = $('.assigned-to.attribute');
// 説明の後に移動
$('.description')
.after(
// '<br>',
'<hr>',
'<p><b>フィールド移動</b></p>',
$('<div class="attributes">')
.append(
$('<div class="splitcontentleft">').append(assign),
$('<div class="splitcontentleft">').append(cf2),
$('<div class="splitcontentleft">').append(cf1),
$('<div class="splitcontentleft">').append(cf3),
$('<div class="splitcontentleft">').append(cf4),
)
);
//----------------------------------------------------------------------
// 編集画面の設定
//----------------------------------------------------------------------
// 対象のカスタムフィールドの要素を取得
var cField_1 = $('#issue_custom_field_values_1').parent();
var cField_2 = $('#issue_custom_field_values_2').parent();
var cField_3 = $('#issue_custom_field_values_3').parent();
var cField_4 = $('#issue_custom_field_values_4').parent();
// 対象要素を取得(担当者)
var assignField = $('#issue_assigned_to_id').parent();
// 最後に移動
$('#all_attributes').append(
'<hr>',
/* '<p> <strong>【あああ】</strong></p>', */
$('<div class="attributes">').append(
$('<div class="splitcontentleft">').append(assignField),
$('<div class="splitcontentleft">').append(cField_1),
$('<div class="splitcontentleft">').append(cField_2)),
'<hr>',
/* '<p> <strong>【いいい】</strong></p>', */
$('<div class="attributes">').append(
$('<div class="splitcontentleft">').append(cField_3),
$('<div class="splitcontentleft">').append(cField_4)),
);
}
else
{
//DO NOTHING
}
};
/* 初期変換 */
changeCustomFieldPositon();
/* ステータス変更時など、DOMが差し替えられるたびに実施 */
var _replaceIssueFormWith = replaceIssueFormWith;
replaceIssueFormWith = function(html){
_replaceIssueFormWith(html);
changeCustomFieldPositon();
};
})