Danh sách đầy đủ các nhân vật Bạch Dương Hybrid x Heart Magias Academy Ataraxia (Masou Gakuen HxH).
Bạch Dương trong Hybrid x Heart Magias Academy Ataraxia (Masou Gakuen HxH)
# Bạch Dương Các nhân vật Hybrid x Heart Magias Academy Ataraxia (Masou Gakuen HxH): 0
Danh mục Phân loại Nhân vật Masou Gakuen HxH (Aries Hybrid x Heart Magias Academy Ataraxia) là một thêm vào thú vị cho phần Phim hoạt hình của sản phẩm cơ sở dữ liệu của chúng tôi, tập trung vào miêu tả các nhân vật hư cấu trong một loạt tiểu thuyết ánh sáng Nhật Bản. Phim hoạt hình theo chân cuộc phiêu lưu của nhân vật chính Kizuna Hida khi anh gia nhập Học viện Magias Ataraxia, một trường đào tạo phi công của áo giáp dùng ma thuật, và tham gia vào cuộc chiến chống lại những kẻ xâm lược từ thế giới khác. Loạt phim kết hợp các yếu tố cơ giới, harem và fanservice và nổi tiếng với các cảnh táo bạo được thiết kế để thu hút khán giả nam. Danh mục mục Nhân vật Masou Gakuen HxH được tập trung vào khám phá tính cách, đặc điểm và lý do của các nhân vật chính và phụ trong loạt phim. Chúng tôi xem xét các điểm mạnh và yếu của từng nhân vật, động cơ, hy vọng và khát vọng của họ và mối quan hệ của họ với các nhân vật khác. Người dùng có thể bình chọn và tranh luận về các loại tính cách của nhân vật yêu thích của họ, chẳng hạn như họ có các đặc điểm của sự ngoại trừ hay nội dung, suy nghĩ hoặc cảm giác, đánh giá hoặc nhận thức và tương tự. Cho dù bạn là một người hâm mộ hoạt hình cuồng nhiệt hoặc là người xem thông thường, danh mục Nhân vật Masou Gakuen HxH (Aries Hybrid x Heart Magias Academy Ataraxia) của chúng tôi là một tài nguyên tuyệt vời để hiểu về các nhân vật phức tạp và đa dạng trong loạt phim hoạt hình thú vị và giải trí này. Từ cô gái ngây thơ và trong sáng Yurishia đến cô gái quyến rũ và xảo quyệt Aine, mỗi nhân vật đều cung cấp một quan điểm độc đáo về cuộc sống và tình yêu trong một thế giới của áo giáp và ma thuật cao cấp. Khám phá tính cách, đặc điểm và hành vi của họ và khám phá xem nhân vật nào phản ánh với bạn nhất.
Kết bạn, hẹn hò hoặc trò chuyện với Bạch Dương trong Vũ trụ Bạch Dương.
` } document.getElementById(“form-check-award”).style.display=”none”; if(user._id === userId){ let response = await apiRequest(“GET”, `/v1/comment/awardSenders?postId=${postId}`, {}); let senders = response.senders; document.getElementById(“award-user-list”).style.setProperty(‘display’,”flex”,”important”); document.getElementById(“award-user-list”).style.setProperty(‘overflow’,”auto”,”important”); document.getElementById(“award-user-list”).innerHTML = “”; senders.map((item,i) => { document.getElementById(“award-user-list”).innerHTML += “ }) let totalAwards = 0; let awardWord for(let key in previousAwardData) { totalAwards += previousAwardData[key]; } totalAwards = totalAwards – senders.length; if(totalAwards > 0) { totalAwards > 1 ? awardWord = `and ${totalAwards} anonymous souls`:awardWord = ‘anonymous soul’ ; document.getElementById(“anonymous-souls”).style.removeProperty(‘display’); document.getElementById(“anonymous-souls”).innerHTML = `
${awardWord}
`; } else { document.getElementById(“anonymous-souls”).style.setProperty(‘display’,”none”,”important”); } } else { document.getElementById(“anonymous-souls”).style.setProperty(‘display’,”none”,”important”); document.getElementById(“give-award”).style.removeProperty(‘display’); document.getElementById(“give-award”).style.background =”#4edcd8″; document.getElementById(“give-award”).innerHTML =`
TRAO PHẦN THƯỞNG KHÁC
`; document.getElementById(“give-award”).onclick = () => loadAwards(event,postId,type); $(‘#staticBackdrop’).modal(‘hide’); } } else { showLoginModal(); } } async function clickedAward(id,key,postId,type,localUserId,postUserId){ document.getElementById(“clicked-award”).style.setProperty(‘height’,”45%”,”important”); let previousAwardData = JSON.parse(document.getElementById(“awardData-” + postId)?.innerHTML); if(localUserId===postUserId){ let response = await apiRequest(“GET”, `/v1/comment/awardSenders?postId=${postId}&awardId=${key}`, {}); let senders = response.senders; document.getElementById(“award-user-list”).style.setProperty(‘display’,”flex”,”important”); document.getElementById(“award-user-list”).style.setProperty(‘overflow’,”auto”,”important”); document.getElementById(“award-user-list”).innerHTML = “”; senders.map((item, i) => { document.getElementById(“award-user-list”).innerHTML += “ }) let totalAwards = previousAwardData[key] – senders.length;; let awardWord if(totalAwards > 0) { document.getElementById(“anonymous-souls”).style.removeProperty(‘display’); totalAwards > 1 ? awardWord = `and ${totalAwards} anonymous souls`:awardWord = ‘anonymous soul’ ; document.getElementById(“anonymous-souls”).innerHTML = `
${awardWord}
`; } else { document.getElementById(“anonymous-souls”).style.setProperty(‘display’,”none”,”important”); } } const awards = JSON.parse(localStorage.getItem(“awards”)); var item = awards.filter(i => {return i.id === key})[0]; document.getElementById(“clicked-award-gif”).innerHTML=`` document.getElementById(“clicked-award-price”).innerHTML=` ${item.price}`; document.getElementById(“clicked-award-name”).innerText=__(item.name); document.getElementById(“clicked-award-desc”).innerText=__(item.description); document.getElementById(“clicked-award-reward”).innerHTML=`Awards ${item.reward}` for (let [ky, value] of Object.entries(previousAwardData)) { document.getElementById(`award-${ky}`).style.boxShadow =”none”; document.getElementById(`award-${ky}`).style.transition =”0.5s all ease-in”; } document.getElementById(id).style.boxShadow =”0px 1px 8px #4edcd8″; document.getElementById(id).style.transition =”0.5s all ease-out”; } function loadAwards(event, postId,type){ event.preventDefault() event.stopPropagation(); document.getElementById(“form-check-award”).style.setProperty(‘display’,”flex”,”important”); document.getElementById(“award-modal-header”).style.removeProperty(‘justify-content’); document.getElementById(“award-coins”).style.removeProperty(‘display’); document.getElementById(“give-award”).style.removeProperty(‘display’); document.getElementById(“anonymous-souls”).style.setProperty(‘display’,”none”,”important”); document.getElementById(“award-user-list”).style.setProperty(‘display’,”none”,”important”); document.getElementById(“give-award”).style.background =”#4edcd8″; document.getElementById(“give-award”).innerHTML =`
TẶNG PHẦN THƯỞNG
`; document.getElementById(“clicked-award-gif”).innerHTML=””; document.getElementById(“clicked-award-price”).innerHTML=””; document.getElementById(“clicked-award-name”).innerText=””; document.getElementById(“clicked-award-desc”).innerText=””; document.getElementById(“clicked-award-reward”).innerHTML=””; let user = getUser(); if(user && user.pictures && user.pictures.length > 0){ fadeStar(postId, true) awardModal=true $(‘#staticBackdrop’).modal(‘show’); document.getElementById(“modal-coin”).innerText =user.coins ?? 0; document.getElementById(“award-list”).innerHTML=””; const awards=JSON.parse(localStorage.getItem(“awards”)); awards.map((item,i)=>{ // var itm = JSON.stringify(item) document.getElementById(“award-list”).innerHTML += `
${item.price}
` }) } else { showLoginModal(); } } $(“#staticBackdrop”).on(“hidden.bs.modal”, function () { awardModal=false fadeStar(currentAwardModalPostId, false) }); function clickAward(id,index,postId,type){ const awards=JSON.parse(localStorage.getItem(“awards”)); var item=awards[index]; document.getElementById(“clicked-award”).style.setProperty(‘height’,”40%”,”important”); document.getElementById(“clicked-award-gif”).innerHTML=`` document.getElementById(“clicked-award-price”).innerHTML=` ${item.price}`; document.getElementById(“clicked-award-name”).innerText=__(item.name); document.getElementById(“clicked-award-desc”).innerText=__(item.description); document.getElementById(“clicked-award-reward”).innerHTML=`Awards ${item.reward}` for(let i = 0; i < awards.length; i++) { document.getElementById(`award-${i}`).style.boxShadow =”none”; document.getElementById(`award-${i}`).style.transition =”0.5s all ease-in”; } document.getElementById(id).style.boxShadow =”0px 1px 8px #4edcd8″; document.getElementById(id).style.transition =”0.5s all ease-out”; if((getUser()?.coins ?? 0) >= item.price) { document.getElementById(“give-award”).style.background =”#4edcd8″; document.getElementById(“give-award”).innerHTML =`
TẶNG PHẦN THƯỞNG
`; document.getElementById(“give-award”).onclick = () => giveAward(item,postId,type); } else{ document.getElementById(“give-award”).style.background =”red”; document.getElementById(“give-award”).innerHTML =`
NOT ENOUGH COINS
`; document.getElementById(“give-award”).onclick = null; } } async function giveAward(item,postId,type){ let previousAwardData =document.getElementById(“awardData-” + postId)?.innerHTML? JSON.parse(document.getElementById(“awardData-” + postId)?.innerHTML):{}; document.getElementById(“award-” + postId).classList.add(“mb-2”); if(!previousAwardData){ previousAwardData={} } if(previousAwardData[item.id])previousAwardData[item.id] += 1; else previousAwardData[item.id] = 1; let totalAwards = 0; let awardWord; for(let key in previousAwardData) { totalAwards +=previousAwardData[key]; } totalAwards > 1 ? awardWord = ‘awards’ : awardWord = ‘award’; var totalAward = document.getElementById(`totalAward-${postId}`); totalAward.innerText=`${totalAwards} ${awardWord}`; document.getElementById(“awardList-” + postId).innerHTML=”; for (let [key, value] of Object.entries(previousAwardData)) { if(item.id!==key){ document.getElementById(“awardList-” + postId).innerHTML += `` } } document.getElementById(“awardList-” + postId).innerHTML += `` let awardClass = “” for(let key in previousAwardData) { if(key == “coin_philanthropy”) { awardClass = “gold-award”; } else if(awardClass == “” && [“beating_heart”, “cheer”, “cheers”, “diamond”, “galaxy_brain”, “nugget”, “starstruck”, “you_dropped_this”, “goat”, “ignite”].indexOf(key) != -1) { awardClass = “premium-award”; } } if(type===”post”){ if(awardClass){ document.querySelector(`.post-${postId}`).classList.remove(“premium-award”); document.querySelector(`.post-${postId}`).classList.remove(“gold-award”); document.querySelector(`.post-${postId}`).classList.add(awardClass); awardClass = “” }else{ document.querySelector(`.post-${postId}`).classList.remove(“premium-award”); document.querySelector(`.post-${postId}`).classList.remove(“gold-award”); } } document.getElementById(“awardData-” + postId).innerHTML=JSON.stringify(previousAwardData); $(‘#staticBackdrop’).modal(‘hide’); item.checked=false; item.checked = document.getElementById(“send-anonymously”).checked; var body={ postId: postId, awardId:item.id, anonymous: item.checked, price: item.price } let url=””; if(type===”post”){ url = “/v1/question/award”; }else{ url = “/v1/comment/award”; } await apiRequest(“POST”, url, body); let user = getUser(); user.coins -= item.price; localStorage.setItem(“user”, JSON.stringify(user)); document.getElementById(“userCoins”).innerHTML = user.coins ?? 0; } async function loadCommentsFromContext() { let questionId = document.querySelector(‘[id^=post-]’).id.replaceAll(“post-“, “”); let response = await apiRequest(“GET”, `/v1/comment/context?commentId=${params.commentId}&parentId=${params.parentId}&questionId=${questionId}&sort=popular`, {}); let comments = response.comments; if(comments.length == 0) { doneLoadingComments = true; } else { comments.forEach((comment) => { filterKeywords(comment, allLinkedKeywords); if(comment.comments) { comment.comments.forEach((c) => { filterKeywords(c, allLinkedKeywords); }); } if(!document.getElementById(comment._id)) { const commentHTML = commentTemplate({comment: comment, language: ‘vi’, showOptions: user && user._id != (comment.createdBy || comment.profilePreview)._id, isAdmin: user?.adminPermissions?.all == true, column: “commentsCol”}, null, includeFn, null); document.getElementById(“allComments”).innerHTML += commentHTML; } }); } $(`#loadMoreCommentsLoader`).animate({opacity: 0}); const y = document.getElementById(params.commentId).getBoundingClientRect().top + window.pageYOffset – 79; document.getElementById(“commentsCol”).scrollTo({top: y, behavior: ‘smooth’}); document.getElementById(params.commentId).classList.add(“blue-glow”); setTimeout(function(){ document.getElementById(params.commentId).classList.remove(“blue-glow”); }, 2000); $(`#loadMoreCommentsLoader`).animate({opacity: 1}); updateAll(); } function autoGrow(element) { element.style.height = “20px”; element.style.height = (element.scrollHeight)+”px”; } function goToProfile(event, handle) { event.preventDefault() event.stopPropagation(); window.location.assign(“/soul/” + handle) } function goToProfileTelepathy(event, handle, type) { event.preventDefault() event.stopPropagation(); window.location.assign(“/soul/” + handle + “?telepathy=” + type) } function copy(event, id, link) { event.preventDefault() event.stopPropagation(); document.querySelectorAll(‘[class^=”share-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 1; el.classList.toggle(“shared”); }); document.querySelector(“.post-” + id).classList.toggle(“blue-glow”); var input = document.createElement(“textarea”); if(link.includes(“https://”)) { input.value = link; } else { input.value = window.location.origin + link; } document.body.appendChild(input); input.select(); document.execCommand(“Copy”); input.remove(); showSnackbar(“Đã sao chép liên kết!”, “”); setTimeout(function(){ document.querySelectorAll(‘[class^=”share-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.toggle(“shared”); }); document.querySelector(“.post-” + id).classList.toggle(“blue-glow”); }, 2000); } function replyToComment(id, questionId, column) { let user = getUser(); if(user && user.pictures && user.pictures.length > 0) { if(!document.querySelector(“.comment-” + id)) { const newCommentHTML = newCommentTemplate({parentId: id, questionId: questionId, column: column}, null, includeFn, null); let newComment = document.createElement(‘div’); newComment.innerHTML = newCommentHTML.trim(); document.getElementById(id).parentNode.insertBefore(newComment.firstChild, document.getElementById(id).nextSibling); } document.querySelector(“.comment-” + id).classList.add(“ms-4”); document.querySelector(“.comment-” + id).style = “margin-bottom: 1.5rem;” document.getElementById(“comment-text-” + id).focus(); } else { showLoginModal(); } } function checkIfComment(id) { let commentButton = document.querySelector(“.comment-button-” + id) let commentText = document.querySelector(“#comment-text-” + id) let imageInput = document.getElementById(“commentImageInput-” + id); if(commentText.value || imageInput?.value) { commentButton.style = “”; } else { commentButton.style = “filter: grayscale(1)” } } function closeCommentImage(id) { document.querySelectorAll(‘[class^=”gif-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); let element = document.getElementById(“commentImage-” + id); let imageInput = document.getElementById(“commentImageInput-” + id); let commentButton = document.querySelector(“.comment-button-” + id) let commentText = document.querySelector(“#comment-text-” + id) if(commentText.value) { commentButton.style = “”; } else { commentButton.style = “filter: grayscale(1)” } $(element).animate({height:0},500); $(“#commentImageClose-” + id).fadeOut(500) document.querySelectorAll(‘[class^=”album-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); $(element).fadeOut(500, function () { element.style.backgroundImage = ”; element.style.display = “none”; imageInput.value = null; }); } function focusOnComment(id) { let user = getUser(); if(user && user.pictures && user.pictures.length > 0) { document.getElementById(“comment-text-” + id).focus(); } else { showLoginModal(); } } function clickOnInterest(event, interestName) { event.preventDefault(); window.location = “/u/” + interestName; } let allLinkedKeywords = new Set(); ; async function loadCommentPost() { let questionId = document.querySelector(‘[id^=post-]’).id.replaceAll(“post-“, “”); let response = await apiRequest(“GET”, `/v1/question?questionId=${questionId}`, {}); let post = response.question; filterKeywords(post, allLinkedKeywords); if(post) { const postHTML = postTemplate({post: post, clickable: false, isMainTitle: true, truncate: false, language: ‘vi’, showOptions: user && (post.createdBy || post.profilePreview) != null ? user._id != (post.createdBy || post.profilePreview)._id : false, isAdmin: user?.adminPermissions?.all == true, databaseCategoriesMap: databaseCategoriesMap}, null, includeFn, null); document.getElementById(“post-” + questionId).outerHTML = postHTML; } removeAwardsFromSelf(); loadUserAnimationListeners(); setPersonalityColors(); lazyLoadVideos(); } let doneLoadingPosts = false; let filter = “explore” let dimensionLanguage = “vi”; let sort = params.sort ?? ‘popular’; let allPosts = []; async function loadPosts(isInitial) { if(!doneLoadingPosts && !isLoadingApi) { isLoadingApi = true; if(!isInitial) { $(`#loadMorePostsLoader`).animate({opacity: 1}); } const postsList = document.getElementById(“postsList”) let beforeId = !isInitial && allPosts.length > 0 ? allPosts.slice(-1)[0]._id : ”; let response; if(window.location.href.includes(“/u/”)) { let interestName = “”; if(getUser()) { response = await apiRequest(‘GET’, `/v1/question/allQuestions?interestName=${interestName}&sort=${sort}&beforeId=${beforeId}&language=${dimensionLanguage}`, {}); } else { response = await apiRequest(‘GET’, `/web/question/allQuestions?interestName=${interestName}&sort=${sort}&beforeId=${beforeId}&language=${dimensionLanguage}`, {}); } } else if(false) { if(getUser()) { response = await apiRequest(‘GET’, `/v1/question/feed?search=&sort=popular&beforeId=${beforeId}&language=${dimensionLanguage}`, {}); } else { response = await apiRequest(‘GET’, `/web/question/feed?search=&sort=popular&beforeId=${beforeId}&language=${dimensionLanguage}`, {}); } } else { if(getUser()) { response = await apiRequest(‘GET’, `/v1/question/feed?filter=${filter}&sort=${sort}&beforeId=${beforeId}&language=${dimensionLanguage}`, {}); } else { response = await apiRequest(‘GET’, `/web/question/feed?filter=${filter}&sort=${sort}&beforeId=${beforeId}&language=${dimensionLanguage}`, {}); } } let posts = response.questions; allPosts = allPosts.concat(posts); if(posts.length == 0) { if(isInitial) { document.getElementById(“postsList”).innerHTML = `
Chưa có bài đăng!
`; let noContentGhost = new rive.Rive({ src: “/static/rive/ghost.riv”, canvas: document.getElementById(“noContentGhost”), autoplay: true, onLoad: () => { noContentGhost.resizeDrawingSurfaceToCanvas() }, }); } doneLoadingPosts = true; } else { if(isInitial) { document.getElementById(“postsList”).innerHTML = “”; } posts.forEach((p) => { const postHTML = postTemplate({post: p, clickable: true, isMainTitle: false, truncate: false, language: ‘vi’, keywords: ”, showOptions: (p.createdBy || p.profilePreview) != null && user != null ? (user._id != (p.createdBy || p.profilePreview)._id) : false, isAdmin: user?.adminPermissions?.all == true}, null, includeFn, null); const post = […document.getElementById(“postsList”).children].find((c) => `post-${p._id}` == c.id); if(post) { document.getElementById(“post-” + p._id).outerHTML = postHTML; } else { document.getElementById(“postsList”).innerHTML += postHTML; } }); if(document.getElementById(“postsList”).scrollHeight < document.getElementById(“postsList”).clientHeight) { doneLoadingPosts = true; } } $(`#loadMorePostsLoader`).animate({opacity: 0}); removeAwardsFromSelf(); loadUserAnimationListeners(); setPersonalityColors(); lazyLoadVideos(); setTimeout(function(){ document.getElementById(“dimensionsGlow”).classList.remove(“dimension-glow”); }, 1000); isLoadingApi = false; } } async function filterPosts(chosenFilter) { doneLoadingPosts = false; filter = chosenFilter; [“explore”, “following”, “friends”].forEach((f) => { if(filter === f) { document.getElementById(f).classList.add(“accent-color-text”); document.getElementById(f).classList.add(“fw-bold”); } else { document.getElementById(f).classList.remove(“accent-color-text”); document.getElementById(f).classList.remove(“fw-bold”); } }); document.getElementById(“postsList”).innerHTML = loader + loader + loader + loader + loader; loadPosts(true); } function setDimensions() { let user = getUser(); if(user) { if(user.languages && document.getElementById(“userDimensions”) && document.getElementById(“userDimensionsMobile”)) { user.languages.forEach((l) => { document.querySelectorAll(`.dimension-language-${l}`).forEach(p => { p.style = “display: none”; }); document.getElementById(“userDimensions”).innerHTML += `
${__(dimensionLanguages[l]).toUpperCase()}
`; document.getElementById(“userDimensionsMobile”).innerHTML += `
${__(dimensionLanguages[l]).toUpperCase()}
`; }); document.getElementById(“userDimensions”).innerHTML += “” document.getElementById(“userDimensionsMobile”).innerHTML += “” } } } async function changeSort(sortBy) { doneLoadingPosts = false; sort = sortBy; let text = “”; if(sortBy == “popular”) { text = ‘Hay nhất – Hôm nay’; } else if(sortBy == “topWeek”) { text = ‘Hay nhất – Trong tuần’; } else if(sortBy == “topMonth”) { text = ‘Hay nhất – Trong tháng’; } else if(sortBy == “topYear”) { text = ‘Hay nhất – Trong năm’; } else if(sortBy == “topAllTime”) { text = ‘Hay nhất – Mọi lúc’; } else if(sortBy == “recent”) { text = ‘Mới’; } document.getElementById(“sortPostsText”).innerHTML = text; document.getElementById(“postsList”).innerHTML = loader + loader + loader + loader + loader; loadPosts(true); $(“#sortPosts”).css({overflow: “hidden”}); $(`#sortPosts`).animate({height: “0px”}); document.getElementById(“sortPostsIcon”).classList.remove(“rotate”); document.getElementById(“sortPostsIcon”).style.filter = “brightness(0) saturate(100%) invert(54%) sepia(32%) saturate(0%) hue-rotate(160deg) brightness(91%) contrast(96%)”; $(“#bestSortOptions”).fadeOut(500) } let doneLoadingComments = false; let allComments = []; let isLoadingComments = false; async function loadComments(isInitial) { if(!doneLoadingComments && !isLoadingComments) { isLoadingComments = true; const commentsList = document.getElementById(“allComments”) let beforeId = !isInitial && allComments.length > 0 ? allComments.slice(-1)[0]._id : ”; let response; if(!isInitial) { $(`#loadMoreCommentsLoader`).animate({opacity: 1}); } if(getUser()) { let questionId = document.querySelector(‘[id^=post-]’).id.replaceAll(“post-“, “”); response = await apiRequest(‘GET’, `/v1/comment/?questionId=${questionId}&sort=${sort}&beforeId=${beforeId}`, {}) } else { let questionId = document.querySelector(‘[id^=post-]’).id.replaceAll(“post-“, “”); response = await apiRequest(‘GET’, `/web/comment/?questionId=${questionId}&sort=${sort}&beforeId=${beforeId}`, {}) } let comments = response.comments; allComments = allComments.concat(comments); if(comments.length == 0) { doneLoadingComments = true; } else { if(document.getElementById(“noComments”)) { document.getElementById(“noComments”).style.display = “none”; } if(isInitial) { document.getElementById(“allComments”).innerHTML = “”; } comments.forEach((comment) => { filterKeywords(comment, allLinkedKeywords); if(comment.comments) { comment.comments.forEach((c) => { filterKeywords(c, allLinkedKeywords); }); } if(!document.getElementById(comment._id)) { const commentHTML = commentTemplate({comment: comment, language: ‘vi’, showOptions: user && user._id != (comment.createdBy || comment.profilePreview)._id, isAdmin: user?.adminPermissions?.all == true, column: “commentsCol”, databaseCategoriesMap: databaseCategoriesMap}, null, includeFn, null); document.getElementById(“allComments”).innerHTML += commentHTML; } }); } $(`#loadMoreCommentsLoader`).animate({opacity: 0}); removeAwardsFromSelf(); loadUserAnimationListeners(); setPersonalityColors(); isLoadingComments = false; } } async function changeCommentsSort(sortBy) { doneLoadingComments = false; sort = sortBy; let text = “”; if(sortBy == “popular”) { text = ‘Tốt nhất’; } else if(sortBy == “recent”) { text = ‘Mới’; } const commentShimmerHTML = commentShimmerTemplate({}, null, includeFn, null); document.getElementById(“sortCommentsText”).innerHTML = text; document.getElementById(“allComments”).innerHTML = commentShimmerHTML + commentShimmerHTML + commentShimmerHTML + commentShimmerHTML + commentShimmerHTML; loadComments(true); $(“#sortComments”).css({overflow: “hidden”}); $(`#sortComments`).animate({height: “0px”}); document.getElementById(“sortCommentsIcon”).classList.remove(“rotate”); document.getElementById(“sortCommentsIcon”).style.filter = “brightness(0) saturate(100%) invert(54%) sepia(32%) saturate(0%) hue-rotate(160deg) brightness(91%) contrast(96%)”; } async function displayLikes(event, postId, userId, postType) { event.preventDefault() event.stopPropagation(); let user = getUser() if(user && user._id == userId) { $(‘#likeModal’).modal(‘show’) let req = ‘GET’ let likeQuery if(postType === ‘post’) { likeQuery = `/v1/question/likes?questionId=${postId}` } else { likeQuery = `/v1/comment/likes?commentId=${postId}` } let target = document.querySelector(‘.like-modal-content’) target.innerHTML = ` ` let likeData = await apiRequest(“GET”, likeQuery, {}) if(likeData) { target.innerHTML = “”; likeData.usersThatLiked.forEach((el, index) => { let container = document.createElement(“div”) let bubbles = “”; if(el.personality) { bubbles += ` ${el.personality.mbti} `; } if(el.horoscope) { bubbles += ` ${el.horoscope} `; } if(el.enneagram) { bubbles += `
${el.enneagram}
${el.enneagram.split(‘w’)[0]}
${el.enneagram.split(‘w’)[1]}
`; } container.classList.add(“d-flex”, “mb-4”) container.innerHTML = `
${el.firstName}
${bubbles}`; target.appendChild(container) }) setPersonalityColors(); } else { document.querySelector(“.like-modal-container”).style.display = ‘none’ } } } async function votePoll(id, selected) { if(getUser()) { let parsePollPrevious = JSON.parse(document.getElementById(“pollData-” + id).innerHTML); let currentNumVotes = document.querySelector(`#poll-${id} .numVotes-${selected}`) let body = { option: selected != parsePollPrevious.optionVotedByUser ? Number(selected) : null, questionId: id, } if(body.option == null) { parsePollPrevious.options[Number(selected)].numVotes -= 1; } else if(parsePollPrevious.optionVotedByUser == null) { parsePollPrevious.options[body.option].numVotes += 1; } else { parsePollPrevious.options[parsePollPrevious.optionVotedByUser].numVotes -= 1; parsePollPrevious.options[selected].numVotes += 1; } let parsePollCurrent = parsePollPrevious.options let totalVotes = 0 for(let i=0; i < parsePollCurrent.length; i++) { totalVotes += parsePollCurrent[i].numVotes } document.getElementById(`total-vote-${id}`).innerHTML=totalVotes+” votes” for(let i=0; i < parsePollCurrent.length; i++) { let selector = document.querySelector(`#poll-${id} .numVotes-${i}`) let bar = document.querySelector(`#poll-${id} .bar-${i}`) if( body.option === null ){ selector.innerHTML = “” bar.style.width = “100%” bar.classList.remove(‘poll-active-progress’) }else{ let percentage = Math.round((parsePollCurrent[i].numVotes / totalVotes) * 100) + “%” selector.innerHTML = percentage if( selected == i ) bar.classList.add(‘poll-active-progress’) else bar.classList.remove(‘poll-active-progress’) bar.style.width = percentage } } document.querySelectorAll(`#poll-${id} .poll-percentage-text`).forEach(p=> p.style.display = “block”) parsePollPrevious.optionVotedByUser = body.option; parsePollPrevious.numVotes = totalVotes; document.getElementById(“pollData-” + id).innerHTML = JSON.stringify(parsePollPrevious); await apiRequest(“PATCH”, “/v1/question/voteForPoll”, body); } else { showLoginModal(); } } function goToComment(postRepliedTo) { if (/Mobi/.test(navigator.userAgent)) { const y = document.getElementById(postRepliedTo).getBoundingClientRect().top + document.getElementById(“commentsCol”).scrollTop – 79; $(‘#commentsCol’).animate({ scrollTop: y }, {duration: 500, queue: false}); } else { const y = document.getElementById(postRepliedTo).offsetTop + window.pageYOffset – 79; document.getElementById(“commentsCol”).scrollTo({top: y, behavior: ‘smooth’}); } document.getElementById(postRepliedTo).classList.add(“blue-glow”); setTimeout(function(){ document.getElementById(postRepliedTo).classList.remove(“blue-glow”); }, 2000); } function reportPost(event, id) { event.preventDefault(); $(`#moreOptions-${id}`).dropdown(‘toggle’); apiRequest(“PATCH”, “/v1/question/report”, { “questionId”: id }); window.alert(“Report Submitted. Thank you, your feedback helps make Boo better for everyone!”); } function reportComment(event, id) { event.preventDefault(); $(`#moreOptions-${id}`).dropdown(‘toggle’); apiRequest(“PATCH”, “/v1/comment/report”, { “commentId”: id }); window.alert(“Report Submitted. Thank you, your feedback helps make Boo better for everyone!”); } let reportedUserId = “”; function reportUser(event, postId, id) { event.preventDefault(); reportedUserId = id; $(`#moreOptions-${postId}`).dropdown(‘toggle’); for(let i = 0; i < 7; i++) { document.getElementById(“reportReason-” + i).checked = false; } document.getElementById(“reportComment”).value = “”; $(‘#reportModal’).modal(‘show’); } function confirmReportUser() { let reasons = []; [“Catfish/Scammer”, “Underage”, “Spam”, “Inappropriate Messages”, “Inappropriate Profile”, “No Facial Photo”, “Other”].forEach((reason, i) => { if(document.getElementById(“reportReason-” + i).checked) { reasons.push(reason); } }); apiRequest(“POST”, “/v1/report”, { “user”: reportedUserId, “reason”: reasons, “comment”: document.getElementById(“reportComment”).value }); $(‘#reportModal’).modal(‘hide’); reportedUserId = “”; window.alert(“Report Submitted. Thank you, your feedback helps make Boo better for everyone!”); } async function blockUser(event, postId, firstName, id) { event.preventDefault(); $(`#moreOptions-${postId}`).dropdown(‘toggle’); let response = confirm(`Are you sure you want to block ${firstName}? You won’t see posts or comments from this user.`); if(response) { await apiRequest(“PATCH”, “/v1/user/block”, { “user”: id }); location.reload(); } } async function banUser(event, postId, id) { event.preventDefault(); $(`#moreOptions-${postId}`).dropdown(‘toggle’); let response = await apiRequest(“PUT”, “/v1/admin/ban”, { “user”: id }); if(response) { window.alert(“User Banned.”); } else { window.alert(“Error”); } } async function banPost(event, questionId) { event.preventDefault(); $(`#moreOptions-${questionId}`).dropdown(‘toggle’); let response = await apiRequest(“PUT”, “/v1/admin/banQuestion”, { “questionId”: questionId }); if(response) { window.alert(“Post Banned.”); } else { window.alert(“Error”); } } async function banComment(event, commentId) { event.preventDefault(); $(`#moreOptions-${commentId}`).dropdown(‘toggle’); let response = await apiRequest(“PUT”, “/v1/admin/banComment”, { “commentId”: commentId }); if(response) { window.alert(“Comment Banned.”); } else { window.alert(“Error”); } } function loadGifsForComment(id) { document.getElementById(“comment-id”).innerHTML=id; document.getElementById(“comment-search-gif”).value=”” var url = “https://api.giphy.com/v1/gifs/trending?api_key=tnCRZVocJqKQwWzaL4uYMo19SMKlorlG&limit=80” var GiphyAJAXCall = new XMLHttpRequest(); GiphyAJAXCall.open(“GET”, url); GiphyAJAXCall.send(); GiphyAJAXCall.addEventListener(“load”, function (data) { var actualData = data.target.response; var GIFs=JSON.parse(actualData).data document.getElementById(“comment-gif-list”).innerHTML=””; GIFs.map((item,i)=>{ document.getElementById(“comment-gif-list”).innerHTML += ` ` }) }); setTimeout(function(){ document.getElementById(“comment-search-gif”).focus() }, 500); } function loadNewCommentImage(id) { const reader = new FileReader(); reader.addEventListener(“load”, () => { const uploaded_image = reader.result; var image = new Image(); image.src = reader.result; image.onload = function () { aspectRatio = this.width / this.height; }; let element = document.getElementById(“commentImage-” + id); element.style.backgroundImage = `url(${uploaded_image})`; let commentButton = document.querySelector(“.comment-button-” + id) commentButton.style = “”; if(document.getElementById(“commentImageInput-” + id).files) { document.querySelectorAll(‘[class^=”album-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 1; el.classList.add(“active”); }); document.querySelectorAll(‘[class^=”gif-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); } else { document.querySelectorAll(‘[class^=”album-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); document.querySelectorAll(‘[class^=”gif-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 1; el.classList.add(“active”); }); } $(element).fadeIn(500, function() { $(“#commentImageClose-” + id).fadeIn(500) }); $(element).animate({height:80},500); }); reader.readAsDataURL(document.getElementById(“commentImageInput-” + id).files[0]); } let commenting = false; async function newComment(parentId, questionId, column) { let user = getUser(); if(user && user.pictures && user.pictures.length > 0) { if(user.verificationStatus == “verified” || user.verificationStatus == “reverifying”) { let textValue = document.getElementById(‘comment-text-‘ + parentId).value; let fileSelector = document.getElementById(“commentImageInput-” + parentId).files[0] let gif = document.getElementById(“commentImage-” + parentId).style.backgroundImage.slice(4, -1).replace(/”/g, “”); if((textValue || fileSelector || gif) && !commenting) { commenting = true; let body; if(column == “webPageColumn” || column == “databaseColumn”) { body = { ‘parentId’: parentId, ‘text’: textValue } } else { body = { ‘questionId’: questionId, ‘parentId’: parentId, ‘text’: textValue ? textValue : ”, }; } if(!fileSelector) body.gif = document.getElementById(“commentImage-” + parentId).style.backgroundImage.slice(4, -1).replace(/”/g, “”); $(`#loadingIndicator`).fadeIn(250); let obj = await apiRequest(“POST”, “/v1/comment”, body); if(obj.linkedKeywords) { obj.linkedKeywords = obj.linkedKeywords.filter(keyword => !allLinkedKeywords.has(keyword)); obj.linkedKeywords.forEach(keyword => allLinkedKeywords.add(keyword)); } document.getElementById(‘comment-text-‘ + parentId).value = “”; document.getElementById(‘comment-text-‘ + parentId).style.height = “20px”; document.querySelectorAll(‘[class^=”album-blue-‘ + parentId + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); let image = document.getElementById(“commentImage-” + parentId).style.backgroundImage.slice(4, -1).replace(/”/g, “”); if(fileSelector) { let formData = new FormData() formData.append(‘image’, fileSelector); let response = await formRequest(“POST”, ‘/v1/comment/image?commentId=’ + obj._id, formData); obj.image = response.image; const newComment = commentTemplate({comment: obj, language: ‘vi’, showOptions: user && user._id != (obj.createdBy || obj.profilePreview)._id, isAdmin: user?.adminPermissions?.all == true, column: column}, null, includeFn, null); if(questionId == parentId) { document.getElementById(“allComments”).innerHTML = newComment + document.getElementById(“allComments”).innerHTML; document.getElementById(“commentButton-” + parentId).style = “filter: grayscale(1)” } else { $(“.comment-” + parentId).after(newComment) document.querySelector(“.comment-” + parentId).style.display = “none” document.getElementById(“commentNumComments-” + parentId).innerHTML = parseInt(document.getElementById(“commentNumComments-” + parentId).innerHTML) + 1; } document.getElementById(obj._id).classList.toggle(“blue-glow”); setPersonalityColors(); if(document.getElementById(“noComments”)) { document.getElementById(“noComments”).style.display = “none”; } setTimeout(function(){ document.getElementById(obj._id).classList.toggle(“blue-glow”); }, 2000); $(`#loadingIndicator`).fadeOut(250); document.querySelectorAll(‘[class^=”gif-blue-‘ + parentId + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); let element = document.getElementById(“commentImage-” + parentId); element.style.backgroundImage = ”; element.style.display = “none”; let imageInput = document.getElementById(“commentImageInput-” + parentId); imageInput.value = null; if (/Mobi/.test(navigator.userAgent)) { const y = document.getElementById(obj._id).getBoundingClientRect().top + document.getElementById(column).scrollTop – 79; $(`#${column}`).animate({ scrollTop: y }, {duration: 500, queue: false}); } else { const y = document.getElementById(obj._id).offsetTop + window.pageYOffset – 79; document.getElementById(column).scrollTo({top: y, behavior: ‘smooth’}); } commenting = false; if(document.getElementById(“postNumComments-” + questionId)) { document.getElementById(“postNumComments-” + questionId).innerHTML = parseInt(document.getElementById(“postNumComments-” + questionId).innerHTML) + 1; } } else { document.querySelectorAll(‘[class^=”gif-blue-‘ + parentId + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); let element = document.getElementById(“commentImage-” + parentId); element.style.backgroundImage = ”; element.style.display = “none”; const newComment = commentTemplate({comment: obj, language: ‘vi’, showOptions: user._id != (obj.createdBy || obj.profilePreview)._id, isAdmin: user?.adminPermissions?.all == true, column: column}, null, includeFn, null); if(questionId == parentId) { document.getElementById(“allComments”).innerHTML = newComment + document.getElementById(“allComments”).innerHTML; document.getElementById(“commentButton-” + parentId).style = “filter: grayscale(1)” } else { $(“.comment-” + parentId).after(newComment) document.querySelector(“.comment-” + parentId).style.display = “none” document.getElementById(“commentNumComments-” + parentId).innerHTML = parseInt(document.getElementById(“commentNumComments-” + parentId).innerHTML) + 1; } document.getElementById(obj._id).classList.toggle(“blue-glow”); setPersonalityColors(); if(document.getElementById(“noComments”)) { document.getElementById(“noComments”).style.display = “none”; } setTimeout(function(){ document.getElementById(obj._id).classList.toggle(“blue-glow”); }, 2000); $(`#loadingIndicator`).fadeOut(250); if (/Mobi/.test(navigator.userAgent)) { const y = document.getElementById(obj._id).getBoundingClientRect().top + document.getElementById(column).scrollTop – 79; $(`#${column}`).animate({ scrollTop: y }, {duration: 500, queue: false}); } else { const y = document.getElementById(obj._id).offsetTop + window.pageYOffset – 79; document.getElementById(column).scrollTo({top: y, behavior: ‘smooth’}); } commenting = false; if(document.getElementById(“postNumComments-” + questionId)) { document.getElementById(“postNumComments-” + questionId).innerHTML = parseInt(document.getElementById(“postNumComments-” + questionId).innerHTML) + 1; } } removeAwardsFromSelf(); } else { document.querySelector(“.comment-” + parentId).classList.add(“shake”); if(!textValue) { document.getElementById(‘comment-text-‘ + parentId).classList.add(“placeholder-error”) } document.querySelectorAll(‘[class^=”gif-blue-‘ + parentId + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); document.getElementById(“commentButton-” + parentId).style = “filter: grayscale(1) brightness(0) saturate(100%) invert(13%) sepia(92%) saturate(7190%) hue-rotate(2deg) brightness(101%) contrast(112%);” setTimeout(function(){ document.getElementById(‘comment-text-‘ + parentId).classList.remove(“placeholder-error”) let commentButton = document.querySelector(“.comment-button-” + parentId) let commentText = document.querySelector(“#comment-text-” + parentId) let imageInput = document.getElementById(“commentImageInput-” + parentId); if(commentText.value || imageInput.value) { commentButton.style = “”; } else { commentButton.style = “filter: grayscale(1)” } document.getElementById(“commentButton-” + parentId).style = “filter: grayscale(1)” document.querySelector(“.comment-” + parentId).classList.remove(“shake”); }, 2000); } } else { showVerifyProfileModal(“Xác minh hồ sơ của bạn để bình luận”); } } else { showLoginModal(); } } function focusCommentText(parentId) { document.getElementById(“reply-text-” + parentId)?.classList.add(“accent-color-text”); document.getElementById(“comment-text-” + parentId).parentElement.classList.add(“blue-glow”); } function unfocusCommentText(parentId) { document.getElementById(“reply-text-” + parentId)?.classList.remove(“accent-color-text”); document.getElementById(“comment-text-” + parentId).parentElement.classList.remove(“blue-glow”); } function searchCommentGif() { const id=document.getElementById(“comment-id”).innerHTML; var url = “https://api.giphy.com/v1/gifs/search?api_key=tnCRZVocJqKQwWzaL4uYMo19SMKlorlG&q=”+document.getElementById(“comment-search-gif”).value var GiphyAJAXCall = new XMLHttpRequest(); GiphyAJAXCall.open(“GET”, url); GiphyAJAXCall.send(); GiphyAJAXCall.addEventListener(“load”, function (data) { var actualData = data.target.response; var GIFs=JSON.parse(actualData).data document.getElementById(“comment-gif-list”).innerHTML=””; GIFs.map((item,i)=>{ document.getElementById(“comment-gif-list”).innerHTML += ` ` }) }); } function handleClickOnCommentGIF(gifUrl,id){ let commentButton = document.querySelector(“.comment-button-” + id) let commentText = document.querySelector(“#comment-text-” + id) if(commentText.value || gifUrl) { commentButton.style = “”; } else { commentButton.style = “filter: grayscale(1)” } document.querySelectorAll(‘[class^=”album-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 0; el.classList.remove(“active”); }); document.querySelectorAll(‘[class^=”gif-blue-‘ + id + ‘”]’).forEach((el) => { el.style.opacity = 1; el.classList.add(“active”); }); document.getElementById(“commentImageInput-“+ id).value = “”; var image = new Image(); image.src = gifUrl; image.onload = function () { aspectRatio = this.width / this.height; console.log(aspectRatio); }; let element = document.getElementById(“commentImage-” + id); element.style.backgroundImage = `url(${gifUrl})`; $(element).fadeIn(500, function() { $(“#commentImageClose-” + id).fadeIn(500) }); $(element).animate({height:80},500); $(‘#comment-gif-modal’).modal(‘hide’); } function showLinkedKeywords(el) { el.querySelectorAll(‘.linked-keyword’).forEach((keyword) => { keyword.style = “color: var(-accent-color)”; }); } function hideLinkedKeywords(el) { el.querySelectorAll(‘.linked-keyword’).forEach((keyword) => { keyword.style = “”; }); } window.showLinkedKeywords = showLinkedKeywords; window.hideLinkedKeywords = hideLinkedKeywords; window.reportPost = reportPost; window.reportComment = reportComment; window.reportUser = reportUser; window.blockUser = blockUser; window.banUser = banUser; window.banPost = banPost; window.banComment = banComment; window.confirmReportUser = confirmReportUser; window.likeContent = likeContent; window.copy = copy; window.goToProfile = goToProfile; window.goToProfileTelepathy = goToProfileTelepathy; window.autoGrow = autoGrow; window.checkIfComment = checkIfComment; window.replyToComment = replyToComment; window.closeCommentImage = closeCommentImage; window.focusOnComment = focusOnComment; window.clickOnInterest = clickOnInterest; window.displayLikes = displayLikes; window.votePoll = votePoll; window.goToComment = goToComment; window.filterPosts = filterPosts; window.fadeLike = fadeLike; window.fadeShare = fadeShare; window.changeSort = changeSort; window.changeCommentsSort = changeCommentsSort; window.clickedAward = clickedAward; window.showAwards = showAwards; window.loadAwards = loadAwards; window.clickAward = clickAward; window.fadeStar = fadeStar; window.removeAwardsFromSelf = removeAwardsFromSelf; window.loadGifsForComment = loadGifsForComment; window.loadNewCommentImage = loadNewCommentImage; window.newComment = newComment; window.focusCommentText = focusCommentText; window.unfocusCommentText = unfocusCommentText; window.searchCommentGif = searchCommentGif; window.handleClickOnCommentGIF = handleClickOnCommentGIF;
Nhân vật Bạch Dương Hybrid x Heart Magias Academy Ataraxia (Masou Gakuen HxH)
Tất cả Nhân vật Bạch Dương Hybrid x Heart Magias Academy Ataraxia (Masou Gakuen HxH). Bình chọn về các loại tính cách của họ và tranh luận về tính cách thực sự của họ.