$(document).ready(function () { loadYoutubeCard(); }); function loadYoutubeCard() { $.ajax({ url: "/Api/youtubeList", type: "post", data: null, success: function (data, textStatus, jqXHR) { if (data.ret == "yes") { var obj = data.youtubeList; $('#card_group').append(youtubeCardHtml(obj)); } else { alert(data.message); if (data.err_code == "99999") { location.href = "/Root/Login"; } } }, error: function (jqXHR, textStatus, errorThrown) { alert('網路或伺服器發生錯誤,請稍後重試!'); } }); } function youtubeCardHtml(objItem) { var html = ""; html += ""; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += " Youtube 頻道排行 "; html += "
"; html += "
"; html += "
"; html += "
"; html += " "; html += "
"; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; html += " "; $.each(objItem, function (index, item) { html += youtubeSubHtml(item); }); html += " "; html += "
頻道名稱 帳號 訂閱數 平均觀看數(近5)
"; html += "
"; html += " "; html += "
"; html += "
"; html += "
"; html += "
"; return html; } function youtubeSubHtml(item) { var html = ""; html += " "; html += " "; html += " "; html += "  "; html += " " + item.youtube_name + ""; html += " "; html += " " + item.youtube_account + " "; html += " " + AppendComma(item.youtube_subscriberCount) + " "; html += " " + AppendComma(item.youtube_avgViewCount) + " "; html += " "; html += " "; html += " "; html += " "; return html; } function youtubeBtnClick(obj) { var dataUid = obj.getAttribute('data-uid'); var trList = $("#youtube_layout").find(".masonry-item"); $.each(trList, function (index, item) { $(item).remove(); }); var formData = { youtube_uid: dataUid } $.ajax({ url: "/Api/youtubeData", type: "post", data: formData, success: function (data, textStatus, jqXHR) { if (data.ret == "yes") { var obj = data.data; var html = ""; $.each(obj.youtubeDetails, function (index, item) { html += youtubeModalHtml(item); }); $('#youtube_layout').append(html); $('#YoutubeModal').modal('toggle'); } else { alert(data.message); if (data.err_code == "99999") { location.href = "/Root/Login"; } } }, error: function (jqXHR, textStatus, errorThrown) { alert('網路或伺服器發生錯誤,請稍後重試!'); } }); } function youtubeModalHtml(obj) { var publishdate = new Date(obj.youtubeDetail_publishedAt); var html = ""; html += ""; html += "
"; html += " "; html += "
"; html += " "; html += " "; html += " "; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += "
"; html += " " + obj.youtubeDetail_title + ""; html += "
"; html += "
" + formatDate(publishdate, 'yyyy-MM-dd HH:mm:ss') + "
"; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += "
" + AppendComma(obj.youtubeDetail_viewCount) + "
"; html += "

觀看數

"; html += "
"; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += "
" + AppendComma(obj.youtubeDetail_likeCount) + "
"; html += "

按讚數

"; html += "
"; html += "
"; html += " "; html += "
"; html += " "; html += "
"; html += "
" + AppendComma(obj.youtubeDetail_commentCount) + "
"; html += "

留言數

"; html += "
"; html += "
"; html += "
"; html += "
"; html += "
"; html += "
"; return html; } function formatDate(inputDate, format) { if (!inputDate) return ''; const padZero = (value) => (value < 10 ? `0${value}` : `${value}`); const parts = { yyyy: inputDate.getFullYear(), MM: padZero(inputDate.getMonth() + 1), dd: padZero(inputDate.getDate()), HH: padZero(inputDate.getHours()), hh: padZero(inputDate.getHours() > 12 ? inputDate.getHours() - 12 : inputDate.getHours()), mm: padZero(inputDate.getMinutes()), ss: padZero(inputDate.getSeconds()), tt: inputDate.getHours() < 12 ? 'AM' : 'PM' }; return format.replace(/yyyy|MM|dd|HH|hh|mm|ss|tt/g, (match) => parts[match]); }