var CHK_MessageList = {};

msgMap.messageListTopTitle = {ja:"プッシュメッセージ一覧", ko:"푸시 메시지 일람", en:"Push Message List"};
msgMap.messageListHeaderTitle = {ja:"メッセージ一覧", ko:"메시지 일람", en:"Message List"};
msgMap.messageListEmptyTitle = {ja:"メッセージがありません。", ko:"메시지가 없습니다.", en:"No Messages"};

CHK_MessageList.init = function() {
    CHK.initCommon();
    $("#footer").load("main-footer.html", function() {
        CHK_Footer.activeDashboardBottomNav();
    });
    //CHK_MessageList.createMessageList(CHK_MessageList.dummyMessageList());
    CHK.initPushMessageList();
}

CHK_MessageList.initPushMessageListCallback = function(pushMessageList) {
    CHK_MessageList.createMessageList(pushMessageList);
}

CHK_MessageList.goBack = function() {
    CHK_Footer.goDashboard();
}

CHK_MessageList.refresh = function() {
    CHK.sendAppCommand('refreshContent');
}

CHK_MessageList.clickMessage = function(pushMessageId) {
    $("#pushMessageId_" + pushMessageId).removeClass('unread');
    CHK.goUrlWithCurrentParams('message-detail.html', {pushMessageId: pushMessageId});
}

CHK_MessageList.createMessageList = function(messageList) {
    $('#messageTable').empty();
    if (typeof messageList === 'undefined' || messageList.length < 1) {
        $('#messageList .not-found').removeClass('d-none');
        return;
    }
    $('#messageList .not-found').addClass('d-none');
    for (var i = 0; i < messageList.length; i++) {
        let message = messageList[i];
        var messageId = message.pushMessageId;
        var mTitle = message.pushMessage;
        var mDate = message.pushSendDate;
        if (CHK.isAndroid) 
        {
            mDate = CHK.getFormatDate(new Date(message.pushSendDate));
        }
        var mSubtitle = message.operationName;
        var unread = !message.readingFlg;
		var messageLi = $('<li class="item list-unstyled rounded border mb-2" id="pushMessageId_' + messageId + '"/>');
        if (unread) {
            messageLi.addClass('unread');
        }
        var messageA = $('<a class="d-block px-3 py-2 text-decoration-none text-dark"/>');
        messageA.attr('href', "javascript:CHK_MessageList.clickMessage('" + messageId +"');");
        var titleDiv = $('<div class="title">' + mTitle + '</div>');
        var subTitleMainDiv = $('<div class="sub-title-wrap"></div>');
        var dateDiv = $('<div class="fs-8 text-secondary mr-2"><div class="data">' + mDate + '</div></div>');
		var subTitleDiv = $('<div class="sub-title">' + mSubtitle + '</div>');
        subTitleMainDiv.append(dateDiv);
        subTitleMainDiv.append(subTitleDiv);
        var infoI = $('<i class="fas fa-chevron-right fs-12"></i>');
        messageA.append(titleDiv);
        messageA.append(subTitleMainDiv);
        messageA.append(infoI);
        messageLi.append(messageA);
		$('#messageTable').append(messageLi);
	}
};

//dummy messages
CHK_MessageList.dummyMessageList = function() {
    var messes = [];
    messes.push({
        pushMessageId: 1,
        pushMessage: 'メッセージ内容が入ります。',
        startDate: '2022/07/06 14:14',
        operationName: '作業名が入ります。',
        readingFlg: false,
    });
    messes.push({
        pushMessageId: 2,
        pushMessage: 'メッセージ内容が入ります。メッセージ内容が入ります。メッセージ内容が入ります。メッセージ内容が入ります。メッセージ内容が入ります。メッセージ内容が入ります。メッセージ内容が入ります。',
        pushSendDate: 'xxxxxxxxxxxxxxxxxxxxxxxxxx',
        operationName: '作業名が入ります。作業名が入ります。作業名が入ります。作業名が入ります。作業名が入ります。作業名が入ります。作業名が入ります。作業名が入ります。',
        readingFlg: true,
    });
    messes.push({
        pushMessageId: 3,
        pushMessage: 'メッセージ内容が入ります。',
        pushSendDate: '2022/07/07 14:14',
        operationName: '作業名が入ります。',
        readingFlg: false,
    });
    return messes;
}