var Namecard = {}; Namecard.makeNameCard = function (shopMemberID) { if (currentUserInfo.shopMemberID == shopMemberID) { return; } const nameCardInfo = NativeBridgeDataSource.getNameCardData(shopMemberID); const namecardTemplate = getTemplate(TemplateURL.USER_NAME_CARD); nameCardInfo.profileUrl = Common.getProfileImgUrl(nameCardInfo.profileUrl); let namecardHTML = Mustache.render(namecardTemplate, { shopMemberId: nameCardInfo.shopMemberId, profileUrl: nameCardInfo.profileUrl, name: nameCardInfo.shopMemberName, groupPathList: nameCardInfo.groupPathList, chat: getLocalizedString("chat"), voice: getLocalizedString("voice"), favorite: getLocalizedString("addFavorite"), isFavorite: nameCardInfo.isFavorite, }); let namecardObj = $(jQuery.parseHTML(namecardHTML)).on( "click", function () {} ); $("#userProfileModal").html(namecardObj); $("#userNameCard").modal("show"); }; // template_user_name_card.html Namecard.startChat = function (userShopMemberID, userName) { Common.showLoadingIndicator(); let userIDList = []; userIDList.push(userShopMemberID); // 参加ユーザ名でルーム名を生成 const newRoomName = currentUserInfo.loginID + "," + userName; NativeBridgeDelegate.createChatRoom( ChatRoomType.DM, userIDList.join(","), newRoomName, MakeRoomFlag.NAME_CARD, false ); }; // template_user_name_card.html Namecard.startVoice = function (userShopMemberID, userName) { Common.showLoadingIndicator(); let userIDList = []; userIDList.push(userShopMemberID); // 参加ユーザ名でルーム名を生成 const newRoomName = currentUserInfo.loginID + "," + userName; NativeBridgeDelegate.createChatRoom( ChatRoomType.DM, userIDList.join(","), newRoomName, MakeRoomFlag.NAME_CARD, true ); }; Namecard.favoriteUserChange = function (shopMemberID, star) { const div = $(star); if (div.hasClass("sp-circle")) { return; } div.removeClass("star"); div.addClass("sp-circle"); setTimeout(() => { if (div.hasClass("active")) { Namecard.removeFavoriteUser(shopMemberID, div); } else if (div.hasClass("disable")) { Namecard.insertFavoriteUser(shopMemberID, div); } div.removeClass("sp-circle"); div.addClass("star"); if (typeof Contact != "undefined") { Contact.reloadFavoriteList(); } if (div.hasClass("active")) { window.scroll(0, window.scrollY + $(".my_info_sell").height()); } else if (div.hasClass("disable")) { window.scroll(0, window.scrollY - $(".my_info_sell").height()); } }, 0); }; Namecard.removeFavoriteUser = function (shopMemberID, div) { const result = NativeBridgeDataSource.removeFavoriteUser(shopMemberID); div.removeClass(result ? "active" : "disable"); div.addClass(result ? "disable" : "active"); }; Namecard.insertFavoriteUser = function (shopMemberID, div) { const result = NativeBridgeDataSource.addFavoriteUser(shopMemberID); div.removeClass(result ? "disable" : "active"); div.addClass(result ? "active" : "disable"); }; Namecard.refreshForOnline = function () { $("#favoriteButton").prop("disabled", false); }; Namecard.refreshForOffline = function () { $("#favoriteButton").prop("disabled", true); }; Namecard.moveContactPage = function (paramGroupID) { const groupID = paramGroupID; if ( window.location.pathname.includes("chat_room") || window.location.pathname.includes("archive_detail") ) { if (groupID == "") return; NativeBridgeDelegate.setToMoveGroupId(groupID); window.location.href = "contact.html"; } };