Commit da8724be by Kang Donghun

Merge branch 'features/release_sp3_collaboration_audio' into 'release_sp3'

Features/release sp3 collaboration audio

See merge request !98
parents 3bcc0e4d 3730ef32
......@@ -170,7 +170,6 @@
String.prototype.replaceAll = function(org, dest) {
return this.split(org).join(dest);
}
$("#loadingArea").load("./loading.html");
let CHAT_SERVER_URL = '';
let CMS_SERVER_URL = '';
......
<div class="user_list_wrap">
<div class="user_list d-flex flex-wrap">
{{#joinedUserList}}
<div class="user_item {{isHost}}">
<a href="#" data-toggle="modal" data-target="#profileModal1" onclick="CHAT_UI.makeNameCardInCollaboration({{shopMemberId}})">
<div class="img_wrap"><img src="{{profileUrl}}" alt="this.src='./img/noImage.png'" /></div>
<span class="name">{{shopMemberName}}</span>
</a>
</div>
{{/joinedUserList}}
</div>
</div>
\ No newline at end of file
......@@ -15,6 +15,7 @@
<link rel="stylesheet" href="./css/footer.css">
<link rel="stylesheet" href="./css/font-awesome.css">
<link rel="stylesheet" href="./css/share.css">
</head>
<body>
......@@ -22,7 +23,7 @@
<header id="collabo_header">
<div class="d-flex align-items-center h-100">
<div class="collabo_nav_l text-left w-100">
通話中
ライブラリ
<span>15:20</span>
</div>
<div class="collabo_nav_r">
......@@ -49,54 +50,24 @@
<button id="coviewSharePhotoCamera" class="coview_share_photo_select_bubble_in_button cam">
</button>
<BR>
<button id="coviewSharePhotoGalary" class="coview_share_photo_select_bubble_in_button gal">
<button id="coviewSharePhotoGallery" class="coview_share_photo_select_bubble_in_button gal">
</button>
</div>
<!-- ユーザー追加オーバーレイ -->
<div id="overlay_add_user_list" class="none">
<nav>
<div class="row h-100 align-items-center">
<div class="col-4 pr-0">
<div class="nav-item">
<a href="#" class="close_btn">閉じる</a>
</div>
</div>
<div class="col-4 p-0">
<div class="nav-item p-0">
<h1 class="nav-ttl">ユーザー選択</h1>
</div>
</div>
<div class="col-4 pl-0">
<div class="nav-item text-right">
<a href="#" class="inv_btn">招待</a>
</div>
</div><!-- .col -->
</div><!-- .row -->
</nav><!-- nav -->
<!-- ユーザー検索 -->
<div class="search_form">
<form>
<input type="search" name="search" placeholder="ユーザー検索" maxlength="30">
<span class="src_icon"></span>
<a href="#" class="cancel none">キャンセル</a>
</form>
</div>
<!-- ユーザーリスト -->
<div id="add_user_list"></div>
</div>
<!-- オーバーレイ メニュー -->
<div id="collaboration_video_overlay_menu"></div>
<div id="collaboration_picture_overlay_menu"></div>
<!-- オーバーレイ ユーザーリスト -->
<div id="overlay_user_list" class="overlay noscroll">
<div id="collabotarion_overlay_user_list"></div>
<div id="collaboration_overlay_user_list"></div>
</div>
<!-- キャプチャ モーダル -->
<div id="modal_collabo_capture"></div>
<!-- プロフィールモーダル -->
<div id="modal_collabo_profile"></div>
<div id="userProfileModalInCollaboration"></div>
<div id="modal_collabo_profile2"></div>
<!-- ホスト変更モーダル -->
<div id="modal_collabo_change_host"></div>
......@@ -149,7 +120,7 @@
</footer>
<!-- フッター -->
<div id="footer_collabo"></div>
<div id="loadingArea"></div>
<script src="./js/libs/jquery-3.3.1.min.js"></script>
<script src="./js/libs/socket.io.js"></script>
<script src="./js/libs/moment.js"></script>
......@@ -165,6 +136,7 @@
<script src="./js/chat-ui.js"></script>
<script src="./js/chat-util.js"></script>
<script src="./js/chat-db.js"></script>
<script src="./js/loading.js"></script>
<script src="./js/language.js"></script>
<script src="./js/language_ko.js" charset="UTF-8"></script>
<script src="./js/language_ja.js" charset="UTF-8"></script>
......@@ -176,11 +148,10 @@
$("#footer_collabo").load("./footer_collabo.html");
$("#modal_collabo_host_request").load("./modal_collabo_host_request.html");
$("#modal_collabo_change_host").load("./modal_collabo_change_host.html");
$("#modal_collabo_profile2").load("./modal_collabo_profile2.html");
$("#modal_collabo_profile").load("./modal_collabo_profile.html");
$("#modal_collabo_capture").load("./modal_collabo_capture.html");
$("#collabotarion_overlay_user_list").load("./collabotarion_overlay_user_list.html");
$("#collaboration_video_overlay_menu").load("./collaboration_video_overlay_menu.html");
$("#modal_collabo_profile2").load("./modal_collabo_profile2.html");
$("#loadingArea").load("./loading.html");
$("#collaboration_picture_overlay_menu").load("./collaboration_picture_overlay_menu.html");
$("#zoom").load("./zoom.html");
let CHAT_SERVER_URL = '';
......@@ -218,5 +189,4 @@
};
</script>
</body>
</html>
\ No newline at end of file
......@@ -22,7 +22,7 @@
<header id="collabo_header">
<div class="d-flex align-items-center h-100">
<div class="collabo_nav_l text-left w-100">
通話中
LIVE
<span>15:20</span>
</div>
<div class="collabo_nav_r">
......@@ -50,54 +50,24 @@
<button id="coviewSharePhotoCamera" class="coview_share_photo_select_bubble_in_button cam">
</button>
<BR>
<button id="coviewSharePhotoGalary" class="coview_share_photo_select_bubble_in_button gal">
<button id="coviewSharePhotoGallery" class="coview_share_photo_select_bubble_in_button gal">
</button>
</div>
<!-- ユーザー追加オーバーレイ -->
<div id="overlay_add_user_list" class="none">
<nav>
<div class="row h-100 align-items-center">
<div class="col-4 pr-0">
<div class="nav-item">
<a href="#" class="close_btn">閉じる</a>
</div>
</div>
<div class="col-4 p-0">
<div class="nav-item p-0">
<h1 class="nav-ttl">ユーザー選択</h1>
</div>
</div>
<div class="col-4 pl-0">
<div class="nav-item text-right">
<a href="#" class="inv_btn">招待</a>
</div>
</div><!-- .col -->
</div><!-- .row -->
</nav><!-- nav -->
<!-- ユーザー検索 -->
<div class="search_form">
<form>
<input type="search" name="search" placeholder="ユーザー検索" maxlength="30">
<span class="src_icon"></span>
<a href="#" class="cancel none">キャンセル</a>
</form>
</div>
<!-- ユーザーリスト -->
<div id="add_user_list"></div>
</div>
<!-- オーバーレイ メニュー -->
<div id="collaboration_picture_overlay_menu"></div>
<div id="collaboration_video_overlay_menu"></div>
<!-- オーバーレイ ユーザーリスト -->
<div id="overlay_user_list" class="overlay noscroll">
<div id="collabotarion_overlay_user_list"></div>
<div id="collaboration_overlay_user_list"></div>
</div>
<!-- キャプチャ モーダル -->
<div id="modal_collabo_capture"></div>
<!-- プロフィールモーダル -->
<div id="modal_collabo_profile"></div>
<div id="userProfileModalInCollaboration"></div>
<div id="modal_collabo_profile2"></div>
<!-- ホスト変更モーダル -->
<div id="modal_collabo_change_host"></div>
......@@ -146,7 +116,7 @@
</footer>
<!-- フッター -->
<div id="footer_collabo"></div>
<div id="loadingArea"></div>
<script src="./js/libs/jquery-3.3.1.min.js"></script>
<script src="./js/libs/socket.io.js"></script>
<script src="./js/libs/moment.js"></script>
......@@ -161,6 +131,7 @@
<script src="./js/chat.js"></script>
<script src="./js/chat-ui.js"></script>
<script src="./js/chat-util.js"></script>
<script src="./js/loading.js"></script>
<script src="./js/chat-db.js"></script>
<script src="./js/language.js"></script>
<script src="./js/language_ko.js" charset="UTF-8"></script>
......@@ -174,11 +145,10 @@
$("#footer_collabo").load("./footer_collabo.html");
$("#modal_collabo_host_request").load("./modal_collabo_host_request.html");
$("#modal_collabo_change_host").load("./modal_collabo_change_host.html");
$("#modal_collabo_profile2").load("./modal_collabo_profile2.html");
$("#modal_collabo_profile").load("./modal_collabo_profile.html");
$("#modal_collabo_capture").load("./modal_collabo_capture.html");
$("#collabotarion_overlay_user_list").load("./collabotarion_overlay_user_list.html");
$("#collaboration_picture_overlay_menu").load("./collaboration_picture_overlay_menu.html");
$("#modal_collabo_profile2").load("./modal_collabo_profile2.html");
$("#loadingArea").load("./loading.html");
$("#collaboration_video_overlay_menu").load("./collaboration_video_overlay_menu.html");
$("#zoom").load("./zoom.html");
let CHAT_SERVER_URL = '';
......
......@@ -11,8 +11,10 @@
<link href="./fontawesome/css/all.css" rel="stylesheet">
<link rel="stylesheet" href="./css/bootstrap.min.css">
<link rel="stylesheet" href="./css/common.css">
<link rel="stylesheet" href="./css/contact.css">
<link rel="stylesheet" href="./css/collaboration.css">
<link rel="stylesheet" href="./css/footer.css">
<link rel="stylesheet" href="./css/loading.css">
<link rel="stylesheet" href="./css/font-awesome.css">
<link rel="stylesheet" href="./css/share.css">
</head>
......@@ -22,7 +24,7 @@
<header id="collabo_header">
<div class="d-flex align-items-center h-100">
<div class="collabo_nav_l text-left w-100">
通話中
音声通話
<span>15:20</span>
</div>
<div class="collabo_nav_r">
......@@ -35,57 +37,24 @@
</header><!-- header -->
<!-- コンテンツ -->
<main id="collabo_main">
<main id="collabo_main" class="none">
<div class="document_wrap">
<div class="coview_share_body coview_share_area" id="coviewShare" style="z-index: 1;">
</div>
</div>
<!-- <div id="collabotarion_overlay_user_list"></div>-->
</main>
<!-- ユーザー追加オーバーレイ -->
<div id="overlay_add_user_list" class="none">
<nav>
<div class="row h-100 align-items-center">
<div class="col-4 pr-0">
<div class="nav-item">
<a href="#" class="close_btn">閉じる</a>
</div>
</div>
<div class="col-4 p-0">
<div class="nav-item p-0">
<h1 class="nav-ttl">ユーザー選択</h1>
</div>
</div>
<div class="col-4 pl-0">
<div class="nav-item text-right">
<a href="#" class="inv_btn">招待</a>
</div>
</div><!-- .col -->
</div><!-- .row -->
</nav><!-- nav -->
<!-- ユーザー検索 -->
<div class="search_form">
<form>
<input type="search" name="search" placeholder="ユーザー検索" maxlength="30">
<span class="src_icon"></span>
<a href="#" class="cancel none">キャンセル</a>
</form>
</div>
<!-- ユーザーリスト -->
<div id="add_user_list"></div>
</div>
<!-- オーバーレイ メニュー -->
<div id="collaboration_voice_overlay_menu"></div>
<!-- キャプチャ モーダル -->
<div id="modal_collabo_capture"></div>
<!-- オーバーレイ ユーザーリスト -->
<div id="overlay_user_list" class="overlay slidein" style="z-index: 3;">
<div id="collaboration_overlay_user_list"></div>
</div>
<!-- プロフィールモーダル -->
<div id="modal_collabo_profile"></div>
<div id="userProfileModalInCollaboration"></div>
<div id="modal_collabo_profile2"></div>
<div id="add_user_list" ></div>
<!-- ホスト変更モーダル -->
<div id="modal_collabo_change_host"></div>
......@@ -94,7 +63,7 @@
<!-- フッター -->
<div id="footer_collabo"></div>
<div id="loadingArea"></div>
<script src="./js/libs/jquery-3.3.1.min.js"></script>
<script src="./js/libs/socket.io.js"></script>
<script src="./js/libs/moment.js"></script>
......@@ -106,6 +75,7 @@
<script src="./js/constant.js"></script>
<script src="./js/collaboration.js"></script>
<script src="./js/common.js"></script>
<script src="./js/loading.js"></script>
<script src="./js/chat.js"></script>
<script src="./js/chat-ui.js"></script>
<script src="./js/chat-util.js"></script>
......@@ -121,12 +91,10 @@
$("#footer_collabo").load("./footer_collabo.html");
$("#modal_collabo_host_request").load("./modal_collabo_host_request.html");
$("#modal_collabo_change_host").load("./modal_collabo_change_host.html");
$("#modal_collabo_profile2").load("./modal_collabo_profile2.html");
$("#modal_collabo_profile").load("./modal_collabo_profile.html");
$("#modal_collabo_capture").load("./modal_collabo_capture.html");
$("#collabotarion_overlay_user_list").load("./collabotarion_overlay_user_list.html");
$("#collaboration_picture_overlay_menu").load("./collaboration_picture_overlay_menu.html");
$("#zoom").load("./zoom.html");
$("#modal_collabo_profile2").load("./modal_collabo_profile2.html");
$("#loadingArea").load("./loading.html");
$("#collaboration_voice_overlay_menu").load("./collaboration_voice_overlay_menu.html");
let CHAT_SERVER_URL = '';
let CMS_SERVER_URL = '';
......@@ -160,6 +128,7 @@
CHAT_SOCKET.connectSocket();
socket.emit('join', CHAT.globalLoginParameter, function() {
});
};
</script>
</body>
......
<div class="user_list_wrap">
<div class="user_list d-flex flex-wrap">
<div class="user_item host">
<a href="#" data-toggle="modal" data-target="#profileModal1">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前名前名前名前名前名前名前名前</span>
</a>
</div>
<div class="user_item host">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前名前名前名前名前名前名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前名前名前名前名前名前名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前名前名前名前名前名前名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前名前名前名前名前名前名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前名前名前名前名前名前名前名前</span>
</a>
</div>
<div class="user_item">
<a href="#" data-toggle="modal" data-target="#profileModal2">
<div class="img_wrap"><img src="img/thumbnail.png" alt="サムネイル画像" /></div>
<span class="name">名前名前名前</span>
</a>
</div>
</div>
</div>
\ No newline at end of file
......@@ -41,6 +41,11 @@ input[name="tab_item"] {
display: block;
}
#tabMyGroupOnAddUserInCollaboration:checked ~ #tab1_content,
#tabAllGroupOnAddUserInCollaboration:checked ~ #tab2_content{
display: block;
}
#tabMyGroupOnAddUser:checked ~ #tab1_content,
#tabAllGroupOnAddUser:checked ~ #tab2_content{
display: block;
......
......@@ -34,10 +34,12 @@
height: 100%;
background: #525252;
}
#collabo_main .user_list,
#overlay_user_list .user_list {
#collabo_main .user_list_collabo,
#overlay_user_list .user_list_collabo {
background: #525252;
padding-bottom: 120px;
overflow: auto;
height: inherit;
}
#collabo_main .user_list .img_wrap,
#overlay_user_list .user_list .img_wrap {
......@@ -86,7 +88,7 @@
height: 64px;
}
.user_item {
width: calc(50% - 5px);
width: calc(50% - 20px);
position: relative;
text-align: center;
border: 1px solid white;
......@@ -96,6 +98,7 @@
line-height: calc(100vh / 3);
overflow: hidden;
}
.user_item a {
display: block;
height: 100%;
......@@ -134,6 +137,10 @@
background: #525252;
height: 100vh;
}
#add_user_list{
width: 90%;
height: 90%;
}
.fixed {
position: fixed;
}
......@@ -179,8 +186,8 @@
z-index: 100;
top: 0;
background: white;
height: 100%;
width: 100%;
height: 70%;
width: 80%;
max-width: 1280px;
}
#add_user_list .user_list li {
......@@ -423,3 +430,16 @@
width: 30px;
}
}
.nav-modal-add-user {
position: absolute;
}
#buttonAddUser {
position: inherit;
}
.add_user_modal{
width: 80%;
height: 70%;
}
......@@ -322,6 +322,15 @@ CHAT_DB.getContentList = function() {
}
};
CHAT_DB.getUserListByLoginId = function(loginIdList) {
console.log(loginIdList);
if (CHAT_UTIL.isIOS()) {
//TODO ローカルDBからダウンロード済のコンテンツを取得
} else if (CHAT_UTIL.isAndroid()) {
return JSON.parse(android.getUserListByLoginId(loginIdList.join(",")));
}
}
CHAT_DB.getCollaborationJoinFlg = function() {
// Androidは実装不要
if (CHAT_UTIL.isIOS()) {
......
......@@ -1390,6 +1390,15 @@ $('#tabMyGroupOnAddUser').on('click', function(e) {
$('#tabAllGroupOnAddUser').on('click', function(e) {
CHAT_UI.refreshAllGroupForAddUser('0');
});
$('#tabMyGroupOnAddUserInCollaboration').on('click', function(e) {
CHAT_UI.refreshMyGroupForAddUserInCollaboration();
});
$('#tabAllGroupOnAddUserInCollaboration').on('click', function(e) {
CHAT_UI.refreshAllGroupForAddUserInCollaboration('0');
});
$('#makeRoomConfirmBtn').on('click', function(e) {
if (typeof(android) != "undefined") {
android.saveSelectedUserList(CHAT.globalSelectedUserList.join(","));
......@@ -1408,6 +1417,15 @@ $('#addUserConfirmBtn').on('click', function(e) {
$('#addUserForm').submit();
});
$('#addUserConfirmBtnInCollaboration').on('click', function(e) {
if (typeof(android) != "undefined") {
android.saveSelectedUserList(CHAT.globalSelectedUserList.join(","));
} else {
webkit.messageHandlers.saveSelectedUserList.postMessage(CHAT.globalSelectedUserList.join(","));
}
$('#addUserFormInCollaboration').submit();
});
CHAT_UI.roomDisplayOff = function() {
if (typeof(android) != "undefined") {
android.roomDisplayOff();
......@@ -2477,3 +2495,310 @@ CHAT_UI.displayDocumentSelectScreen = function() {
$('#overlay_document_list').append(obj);
$('#overlay_document_list').removeClass('none');
}
CHAT_UI.refreshJoinedCollaboration = function(loginIdList, hostName) {
CHAT_UI.showLoadingIndicator();
$('#collaboration_overlay_user_list').html('');
var joinedUserListTemplate;
$.get({ url: "./collaboration_overlay_user_list.html", async: false }
, function(text) {
joinedUserListTemplate = text;
});
var joinedUserList = CHAT_DB.getUserListByLoginId(loginIdList);
joinedUserList.forEach(function(user) {
console.log("is host = " + (user.loginId == hostName));
user.profileUrl = CHAT.getProfileImgUrl(user.profileUrl);
user.isHost = user.loginId == hostName ? "host" : "";
})
let html = Mustache.render(joinedUserListTemplate, {
joinedUserList: joinedUserList
});
let obj = jQuery.parseHTML(html);
$('#collaboration_overlay_user_list').append(obj);
CHAT_UI.dismissLoadingIndicator();
}
CHAT_UI.refreshMyGroupForAddUserInCollaboration = function() {
if (CHAT_DB.loadSelectedUsers() != "") {
let selectedUsers = CHAT_DB.loadSelectedUsers();
selectedUsers.forEach(function(user) {
CHAT.globalSelectedUserList.push(user.shopMemberId);
})
};
if (CHAT.globalSelectedUserList.length > 0) {
$('.select_member_num').text(CHAT.globalSelectedUserList.length);
} else {
$('.select_member_num').text('0');
}
$('#favoriteListForAddUserInCollaboration').html('');
$('#myGroupListForAddUserInCollaboration').html('');
$('#tabMyGroupOnAddUserInCollaboration').prop('checked', true);
// グループの様式を読み込む
var groupTemplate;
$.get({ url: "./template/template_add_user_group_list.html", async: false }
, function(text) {
groupTemplate = text;
});
// ユーザの様式を読み込む
var userTemplate;
$.get({ url: "./template/template_add_user_user_list.html", async: false }
, function(text) {
userTemplate = text;
});
var groupUserTemplate;
$.get({ url: "./template/template_add_user_group_user_list.html", async: false }
, function(text) {
groupUserTemplate = text;
});
if (IS_ONLINE == 'true') {
if (typeof(android) != "undefined") {
android.updateGroupInfo('0');
android.updateMyInfo();
android.updateGroupUser();
android.updateFavorite();
} else {
webkit.messageHandlers.updateGroupInfo.postMessage("0");
webkit.messageHandlers.updateMyInfo.postMessage({});
webkit.messageHandlers.updateGroupUser.postMessage({});
webkit.messageHandlers.updateFavorite.postMessage({});
}
}
//お気に入りグループ取得。
var favoriteGroupList = CHAT_DB.getFavoriteGroups();
favoriteGroupList.forEach(function(favoriteGroup) {
let html = Mustache.render(groupTemplate, {
name: favoriteGroup.groupName,
id: favoriteGroup.groupId,
});
let obj = $(jQuery.parseHTML(html)).on('click', function() {
});
$('#favoriteListForAddUserInCollaboration').append(obj);
})
//お気に入りユーザ取得。
var favoriteUserList = CHAT_DB.getFavoriteUsersNotInRoom();
favoriteUserList.forEach(function(favoriteUser) {
favoriteUser.profileUrl = CHAT.getProfileImgUrl(favoriteUser.profileUrl);
let findObj = CHAT.globalSelectedUserList.find(function(shopMemberId) {
return shopMemberId == favoriteUser.shopMemberId;
})
if (findObj) {
favoriteUser.checked = 'checked';
}
});
let html = Mustache.render(userTemplate, {
userList: favoriteUserList
});
let obj = jQuery.parseHTML(html);
$('#favoriteListForAddUserInCollaboration').append(obj);
var myGroupList = CHAT_DB.getMyGroupUsersNotInRoom();
myGroupList.forEach(function(myGroup) {
myGroup.groupUserList.forEach(function(groupUser) {
groupUser.profileUrl = CHAT.getProfileImgUrl(groupUser.profileUrl)
let findObj = CHAT.globalSelectedUserList.find(function(shopMemberId) {
return shopMemberId == groupUser.shopMemberId;
})
if (findObj) {
groupUser.checked = 'checked';
}
})
let html = Mustache.render(groupUserTemplate, {
groupName: myGroup.groupName,
groupUserList: myGroup.groupUserList
});
let obj = $(jQuery.parseHTML(html)).on('click', function() {
});
$('#myGroupListForAddUserInCollaboration').append(obj);
$('#addUserInCollaboration').modal('show');
});
CHAT_UI.dismissLoadingIndicator();
}
CHAT_UI.refreshAllGroupForAddUserInCollaboration = function(paramGroupId) {
var groupId = paramGroupId;
$('.content').removeClass('none');
$('#tabAllGroupOnAddUserInCollaboration').prop('checked', true);
//オンライン状態であればサーバから情報更新。
if (IS_ONLINE == 'true') {
if (typeof(android) != "undefined") {
android.updateGroupInfo(groupId);
} else {
webkit.messageHandlers.updateGroupInfo.postMessage(groupId);
}
}
//画面エリアを初期化。
$('#parentGroupBtnForAddUserInCollaboration').off();
$('#rootGroupBtnForAddUserInCollaboration').off();
$('#childGroupListAreaForAddUserInCollaboration').html('');
$('#userInGroupListForAddUserInCollaboration').html('');
$('#groupPathAreaForAddUserInCollaboration').html('');
//DBからグループ情報を取得。
var result = CHAT_DB.getGroupInfoForAddUser(groupId);
//上位グループ、トップグループ遷移ボタンのイベント追加。
if (typeof result.parentGroupId !== 'undefined') {
$('#parentGroupBtnForAddUserInCollaboration').on('click', function() {
CHAT_UI.refreshAllGroupForAddUserInCollaboration(result.parentGroupId);
});
}
if (typeof result.rootGroupId !== 'undefined') {
if (paramGroupId == 0) { groupId = result.rootGroupId }
$('#rootGroupBtnForAddUserInCollaboration').on('click', function() {
CHAT_UI.refreshAllGroupForAddUserInCollaboration(result.rootGroupId);
});
}
if (groupId == result.rootGroupId || paramGroupId == '0') {
$('#rootGroupAreaInCollaboration').addClass('none');
$('#parentGroupAreaInCollaboration').addClass('none');
} else {
$('#rootGroupAreaInCollaboration').removeClass('none');
$('#parentGroupAreaInCollaboration').removeClass('none');
}
//該当グループのパースを表示。
var groupPathTemplate;
$.get({ url: "./template/template_add_user_group_path.html", async: false }
, function(text) {
groupPathTemplate = text;
});
var groupPathCount = 0;
result.groupPathList.forEach(function(groupPath) {
if (!(groupPathCount < (result.groupPathList.length - 3))) {
let html = Mustache.render(groupPathTemplate, {
name: groupPath.groupName,
id: groupPath.groupId
});
let obj = jQuery.parseHTML(html);
$('#groupPathAreaForAddUserInCollaboration').append(obj);
}
groupPathCount++;
})
//該当グループの下位グループ表示。
var groupTemplate;
$.get({ url: "./template/template_add_user_group_list.html", async: false }
, function(text) {
groupTemplate = text;
});
result.childGroupList.forEach(function(childGroup) {
let html = Mustache.render(groupTemplate, {
name: childGroup.groupName,
id: childGroup.groupId,
});
let obj = $(jQuery.parseHTML(html)).on('click', function() {
});
$('#childGroupListAreaForAddUserInCollaboration').append(obj);
})
//該当グループの所属ユーザを表示。
var userTemplate;
$.get({ url: "./template/template_add_user_user_list.html", async: false }
, function(text) {
userTemplate = text;
});
result.groupUserList.forEach(function(groupUser) {
groupUser.profileUrl = CHAT.getProfileImgUrl(groupUser.profileUrl)
let findObj = CHAT.globalSelectedUserList.find(function(shopMemberId) {
return shopMemberId == groupUser.shopMemberId;
})
if (findObj) {
groupUser.checked = 'checked';
}
})
let html = Mustache.render(userTemplate, {
userList: result.groupUserList
});
let obj = jQuery.parseHTML(html);
$('#userInGroupListForAddUserInCollaboration').append(obj);
}
CHAT_UI.makeNameCardInCollaboration = function(shopMemberId, isCollaborationHost) {
if (CHAT.globalLoginParameter.shopMemberId == shopMemberId) {
return;
}
var nameCardInfo = CHAT_DB.getNameCardData(shopMemberId);
var namecardTemplate;
var changeHostTemplate;
$.get({ url: "./modal_collabo_profile.html", async: false }
, function(text) {
namecardTemplate = text;
});
if (isCollaborationHost != "host") {
$.get({ url: "./modal_collabo_change_host.html", async: false }
, function(text) {
changeHostTemplate = text;
});
let changeHostHtml = Mustache.render(changeHostTemplate, {
shopMemberId: nameCardInfo.shopMemberId
});
let changeHostObj = $(jQuery.parseHTML(changeHostHtml)).on('click', function() {
});
$('#modal_collabo_profile2').html(changeHostObj);
}
nameCardInfo.profileUrl = CHAT.getProfileImgUrl(nameCardInfo.profileUrl);
let namecardHtml = Mustache.render(namecardTemplate, {
shopMemberId: nameCardInfo.shopMemberId,
profileUrl: nameCardInfo.profileUrl,
name: nameCardInfo.shopMemberName,
groupPathList: nameCardInfo.groupPathList,
isFavorite: nameCardInfo.isFavorite,
isHost: isCollaborationHost == "host" ? true : false
});
let namecardObj = $(jQuery.parseHTML(namecardHtml)).on('click', function() {
});
$('#userProfileModalInCollaboration').html(namecardObj);
$('#userNameCardInCollaboration').modal('show');
};
CHAT_UI.removeFavoriteUserInCollaboration = function(shopMemberId) {
CHAT_UI.showLoadingIndicator();
$('#userNameCardInCollaboration').modal('hide');
var result;
if (typeof(android) != "undefined") {
result = android.removeFavoriteUser(shopMemberId);
} else {
result = CHAT_DB.removeFavoriteUser(shopMemberId);
}
CHAT_UI.dismissLoadingIndicator();
};
CHAT_UI.insertFavoriteUserInCollaboration = function(shopMemberId) {
$('#userNameCardInCollaboration').modal('hide');
var result;
if (typeof(android) != "undefined") {
result = android.addFavoriteUser(shopMemberId);
} else {
result = CHAT_DB.addFavoriteUser(shopMemberId);
}
CHAT_UI.dismissLoadingIndicator();
};
\ No newline at end of file
......@@ -76,18 +76,8 @@ $(function () {
// ユーザー招待メンバー検索
$(".add_user_btn").click(function () {
$("#overlay_add_user_list").removeClass("none");
$.ajax({
url: "collaboration_overlay_add_user_list.html",
type: "POST",
datatype: "html",
}).done(function (data) {
$("#add_user_list").html(data);
});
CHAT_UI.showLoadingIndicator();
CHAT_UI.refreshMyGroupForAddUserInCollaboration();
});
$('#penBtn').click(function () {
......
......@@ -2,7 +2,7 @@
/* Functions */
/* --------------------------------------------------- */
let coview_api = new CoviewApi();
$(function(){
$(function() {
var coviewApiActive = coview_api.Init(
{
testSTRParam : "param1",
......@@ -15,69 +15,61 @@ $(function(){
);
// special button IN Chat ui
$("#coviewShareMainBtn").on("click", function(e){
$("#coviewShareMainBtn").on("click", function(e) {
e.stopPropagation();
if($(".coview_share_dropdown_bar").is(':visible') == true){
if ($(".coview_share_dropdown_bar").is(':visible') == true) {
Coview_shareDropdownHide();
if($(".coview_share_photo_select_bubble").is(':visible') == true){
if ($(".coview_share_photo_select_bubble").is(':visible') == true) {
$(".coview_share_photo_select_bubble").slideUp();
}
}
else{
} else {
$(".coview_share_dropdown_bar").slideDown();
}
});
$("#coviewShareCloseButton").on("click", function(e){
$("#coviewShareCloseButton").on("click", function(e) {
coview_api.LeaveRoom();
$(".coview_share_area").hide();
});
$("body").on("click", function(){
$("body").on("click", function() {
Coview_shareDropdownHide();
});
$(document).on("click", ".coview_share_request", function(){
$(document).on("click", ".coview_share_request", function() {
console.log("globalUserInfo", globalUserInfo);
if($(this).hasClass("video") == true){
globalUserInfo.coWorkType = "video";
if ($(this).hasClass(collaborationTypeKey.VIDEO) == true) {
globalUserInfo.coWorkType = collaborationTypeKey.VIDEO;
$(".coview_share_title_name").text("LIVE");
}
else{
globalUserInfo.coWorkType = "image";
$(".coview_share_title_name").text("IMAGE");
} else if ($(this).hasClass(collaborationTypeKey.CAMERA) == true) {
globalUserInfo.coWorkType = collaborationTypeKey.CAMERA;
$(".coview_share_title_name").text("ライブラリ");
} else if ($(this).hasClass(collaborationTypeKey.AUDIO) == true) {
globalUserInfo.coWorkType = collaborationTypeKey.AUDIO;
$(".coview_share_title_name").text("音声通話");
}
coview_api.JoinRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
Coview_moveToVideoShareArea();
});
// $('#coviewShareRequestVideo').bind('click', function()
// console.log("globalUserInfo", globalUserInfo);
// globalUserInfo.coWorkType = "video";
// coview_api.JoinRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
// });
/* --------------------------------------------------- */
/* Video, photo, chat, doc */
/* --------------------------------------------------- */
$("#coviewShareChat").on("click", function(){
$("#coviewShareChat").on("click", function() {
console.log("ON click coviewShareChat");
});
$("#coviewSharePhoto").on("click", function(e){
$("#coviewSharePhoto").on("click", function(e) {
e.stopPropagation();
console.log("ON click coviewSharePhoto");
if($(".coview_share_photo_select_bubble").is(':visible') == true){
if ($(".coview_share_photo_select_bubble").is(':visible') == true) {
$(".coview_share_photo_select_bubble").slideUp();
}
else{
} else {
$(".coview_share_photo_select_bubble").slideDown();
}
});
......@@ -85,48 +77,48 @@ $(function(){
$("#coviewSharePhotoCamera").on("click", function(){
$("#coviewSharePhotoCamera").on("click", function() {
$(".coview_share_photo_select_bubble").hide();
globalUserInfo.coWorkType = "camera";
globalUserInfo.coWorkType = collaborationTypeKey.CAMERA;
coview_api.CreateRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
Coview_moveToVideoShareArea();
$(".coview_share_title_name").text("カメラ");
});
$("#coviewSharePhotoGalary").on("click", function(){
$("#coviewSharePhotoGallery").on("click", function() {
$(".coview_share_photo_select_bubble").hide();
globalUserInfo.coWorkType = "galary";
globalUserInfo.coWorkType = "gallery";
coview_api.CreateRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
Coview_moveToVideoShareArea();
$(".coview_share_title_name").text("ライブラリ");
});
$("#coviewShareLive").on("click", function(){
$("#coviewShareAudio").on("click", function() {
globalUserInfo.coWorkType = collaborationTypeKey.AUDIO;
coview_api.CreateRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
Coview_moveToVideoShareArea();
$(".coview_share_title_name").text("音声通話");
})
$("#coviewShareLive").on("click", function() {
console.log("ON click coviewShareLive");
globalUserInfo.coWorkType = "video";
console.log("globalUserInfo", globalUserInfo);
// var chars = "0123456789";
// var string_length = 6;
// var randomstring = '';
// for (var i=0; i<string_length; i++) {
// var rnum = Math.floor(Math.random() * chars.length);
// randomstring += chars.substring(rnum,rnum+1);
// }
// coview_api.CreateRoom(randomstring, globalUserInfo.coWorkType);
coview_api.CreateRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
Coview_moveToVideoShareArea();
$(".coview_share_title_name").text("LIVE");
});
$("#coviewShareDoc").on("click", function(){
console.log("ON click coviewShareDoc");
alert("INTO a document share mode (only audio)");
globalUserInfo.coWorkType = "audio";
});
// $("#coviewShareDoc").on("click", function(){
// console.log("ON click coviewShareDoc");
// alert("INTO a document share mode (only audio)");
// globalUserInfo.coWorkType = "audio";
// });
coview_api.addEventListener ("ready", function () {
console.log("=============> READY : ready for coview api");
......@@ -148,7 +140,7 @@ $(function(){
coview_api.addEventListener ("message", async function (event, json) {
console.log("+++ addEventListener", json);
console.log("processMessage api = ", json.api);
let loginIdList = new Array();
switch (json.api){
case "LoginResponse":
console.log('------------------------------');
......@@ -160,32 +152,46 @@ $(function(){
coview_api.CreateRoom(globalUserInfo.roomId, globalUserInfo.coWorkType);
}
Coview_moveToVideoShareArea();
break;
case "CreateRoomResponse":
if(json.resultCode == 200){
if (json.resultCode == 200) {
var coviewInviteMessage = "" + messageSeperator + messageType.COMMUNICATIONSTART + messageSeperator + CHAT_UTIL.getCollaborationType(globalUserInfo.coWorkType);
socket.emit('createMessage', {
text: coviewInviteMessage
}, 0);
}
else{
} else {
}
break;
case "joinRoomInfoResponse":
if(json.resultCode == 200){
}
else{
// alert(json.resultMsg + "(" + json.resultCode + ")" );
case "JoinRoomInfoResponse":
if (json.resultCode == 200) {
} else {
alert("Not exist sharing call (" + json.resultCode + ")\nPlease using share menu.");
coview_api.LeaveRoom();
$(".coview_share_area").hide();
$("#loadingIndicator").removeClass("full_active");
}
break;
case "JoinRoomResponse":
if (json.resultCode == 200) {
for (let key in g_participants) {
loginIdList.push(key);
}
CHAT_UI.refreshJoinedCollaboration(loginIdList);
} else {
}
break;
case "RoomMemberJoinedEvent":
for (let key in g_participants) {
loginIdList.push(key);
}
CHAT_UI.refreshJoinedCollaboration(loginIdList);
break;
case "RoomMemberLeavedEvent":
for (let key in g_participants) {
loginIdList.push(key);
}
CHAT_UI.refreshJoinedCollaboration(loginIdList);
break;
default:
console.log('Unrecognized api', json);
break;
......@@ -193,18 +199,23 @@ $(function(){
});
});
function Coview_shareDropdownHide(){
function Coview_shareDropdownHide() {
$(".coview_share_dropdown_bar").slideUp();
$(".coview_share_photo_select_bubble").slideUp();
}
function Coview_moveToVideoShareArea(){
function Coview_moveToVideoShareArea() {
$("#loadingIndicator").addClass("full_active");
$(".coview_share_area").show();
$('#collabo_main').removeClass('none');
}
function Coview_exitCollaboration(){
function Coview_exitCollaboration() {
coview_api.LeaveRoom();
CHAT_UI.joinRoom(CHAT.globalLoginParameter.roomId, CHAT.globalLoginParameter.name);
}
function Coview_changeHost(shopMemberId) {
console.log("Change Host To " + shopMemberId);
coview_api.HostChange(shopMemberId);
}
<!-- コンテンツ -->
<div class="modal fade add_user_modal" id="addUserInCollaboration" tabindex="-1" role="dialog" aria-labelledby="addUserInCollaboration" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<form id="addUserFormInCollaboration" action="chat_add_user_confirm.html" method="post">
<!-- ユーザー検索 -->
<!-- タブ -->
<div class="content tabs">
<nav class="nav-modal-add-user">
<div class="row h-100 align-items-center">
<div class="col-4 pr-0">
<div class="nav-item">
<a href="#" class="close_btn" class="close" data-dismiss="modal" aria-label="Close">閉じる</a>
</div>
</div>
<div class="col-4 p-0">
<div class="nav-item p-0">
<h1 class="nav-ttl">ユーザー選択</h1>
</div>
</div>
</div><!-- .row -->
</nav><!-- nav -->
<input id="tabMyGroupOnAddUserInCollaboration" type="radio" name="tab_item" checked>
<label class="tab_item" for="tabMyGroupOnAddUserInCollaboration">マイグループ</label>
<input id="tabAllGroupOnAddUserInCollaboration" type="radio" name="tab_item">
<label class="tab_item" for="tabAllGroupOnAddUserInCollaboration">全グループ</label>
<div class="tab_content" id="tab1_content">
<div class="chat_list">
<!-- お気に入りグループ -->
<div class="category"><div class="category_name"><span>お気に入り</span></div></div>
<div id="favoriteListForAddUserInCollaboration"></div>
<div id="myGroupListForAddUserInCollaboration"></div>
</div>
</div>
<div class="tab_content" id="tab2_content">
<div class="breadcrumb" id="groupPathAreaForAddUser"></div>
<div class="chat_list">
<!-- 全グループ -->
<ul class="p-0 chat_make_room_list">
<li class="d-flex align-items-center" id="rootGroupAreaInCollaboration">
<a href="#" class="w-100" id="rootGroupBtnForAddUserInCollaboration">
<div class="chat_item d-flex flex-row align-items-center">
<div class="chat_item_l">
<div class="thumbnail">
<img src="icon/icon_prev_top.png" alt="トップグループに戻る" />
</div>
</div>
<div class="chat_item_m px-0">
<div class="d-flex flex-column">
<div class="chat_item_t">
<span class="chat_item_ttl">トップグループに戻る</span>
</div>
</div>
</div>
</div>
</a>
</li>
<li class="d-flex align-items-center" id="parentGroupAreaInCollaboration">
<a href="#" class="w-100" id="parentGroupBtnForAddUserInCollaboration">
<div class="chat_item d-flex flex-row align-items-center">
<div class="chat_item_l">
<div class="thumbnail">
<img src="icon/icon_prev.png" alt="上位グループに戻る" />
</div>
</div>
<div class="chat_item_m px-0">
<div class="d-flex flex-column">
<div class="chat_item_t">
<span class="chat_item_ttl">上位グループに戻る</span>
</div>
</div>
</div>
</div>
</a>
</li>
<div id="childGroupListAreaForAddUserInCollaboration"></div>
<div id="userInGroupListForAddUserInCollaboration"></div>
</ul>
</div>
</div>
</div>
<!-- ルーム解説ボタン -->
<div class="make_room_confirm_btn content" id="addUserConfirmBtnInCollaboration">
<button type="button" name="button" id="buttonAddUser">
確認<br>
<span class="select_member_num"></span><span class="select_member">名 選択中</span></button>
</div>
</form>
</div>
</div>
</div>
......@@ -15,7 +15,7 @@
<span>キャンセル</span>
</div>
</button>
<button type="button" class="profile_chat_btn border-0 bg_blue text_white">
<button type="button" onclick="Coview_changeHost({{shopMemberId}});" class="profile_chat_btn border-0 bg_blue text_white">
<div class="d-flex flex-column">
<span>引き渡し</span>
</div>
......
<div class="modal fade profile_modal w_50" id="profileModal1" tabindex="-1" role="dialog"
aria-labelledby="profileModal1" aria-hidden="true">
<div class="modal fade profile_modal w_50" id="userNameCardInCollaboration" tabindex="-1" role="dialog"
aria-labelledby="userNameCardInCollaboration" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered" role="document">
<div class="modal-content">
<div class="modal-header border-0">
<div class="profile_desc d-flex flex-row">
<img src="img/noImage.png" alt="プロフィール画像">
<div class="profile_name"><span>名前 名前</span></div>
<img src="{{profileUrl}}" onError="this.src='./img/noImage.png'"/>
<div class="profile_name"><span>{{name}}</span></div>
</div>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
<div class="modal-body">
<p>
グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループグループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ名グループ
</p>
{{#groupPathList}}
<li onclick="CHAT_UI.refreshAllGroupSearch({{groupId}});"><b>{{groupPath}}</b></li>
{{/groupPathList}}
</div>
<div class="modal-footer border-0 justify-content-center">
<button type="button" class="border-0 bg_navy text_white">
{{#isFavorite}}
<button type="button" class="border-0 bg_navy" onclick="CHAT_UI.removeFavoriteUserInCollaboration({{shopMemberId}})" id="favoriteButton">
<div class="d-flex flex-column">
<div class="img_wrap">
<img src="icon/icon_profile_favorite.png" alt="お気に入り">
......@@ -25,8 +26,20 @@
<span>お気に入り解除</span>
</div>
</button>
<button type="button" class="ch_host_btn border-0 bg_blue text_white" data-toggle="modal"
data-target="#changeHostModal" value="#profileModal1">
{{/isFavorite}}
{{^isFavorite}}
<button type="button" class="border-0 bg_navy" onclick="CHAT_UI.insertFavoriteUserInCollaboration({{shopMemberId}})" id="favoriteButton">
<div class="d-flex flex-column">
<div class="img_wrap">
<img src="icon/icon_profile_favorite_white.png" alt="お気に入り">
</div>
<span>お気に入り登録</span>
</div>
</button>
{{/isFavorite}}
<!-- {{^isHost}}-->
<button type="button" class="ch_host_btn border-0 bg_grey text_white" data-toggle="modal"
data-target="#changeHostModal" value="#profileModal1" disabled>
<div class="d-flex flex-column">
<div class="img_wrap">
<img src="icon/icon_change_host.png" alt="ホスト変更">
......@@ -34,6 +47,7 @@
<span>ホスト変更</span>
</div>
</button>
<!-- {{/isHost}}-->
</div>
</div>
</div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment