2019-10-07 07:29:38 +00:00
|
|
|
<div>
|
|
|
|
<div>
|
2019-10-21 04:20:14 +00:00
|
|
|
<div class="current-head">
|
|
|
|
<h3>그룹</h3>
|
|
|
|
<div class="btn-box">
|
2019-10-21 08:23:02 +00:00
|
|
|
<button mat-icon-button>
|
2019-10-21 04:20:14 +00:00
|
|
|
<mat-icon>person_add</mat-icon>
|
|
|
|
</button>
|
2019-10-21 08:23:02 +00:00
|
|
|
<button
|
|
|
|
mat-icon-button
|
|
|
|
[matMenuTriggerFor]="groupMenu"
|
|
|
|
aria-label="group menu"
|
|
|
|
>
|
2019-10-21 04:20:14 +00:00
|
|
|
<mat-icon>more_vert</mat-icon>
|
|
|
|
</button>
|
|
|
|
</div>
|
|
|
|
</div>
|
2019-10-15 07:39:58 +00:00
|
|
|
<ucap-organization-tenant-search
|
|
|
|
[companyList]="companyList$ | async"
|
|
|
|
[companyCode]="companyCode"
|
|
|
|
(keyDownEnter)="onKeyDownEnterOrganizationTenantSearch($event)"
|
2019-10-23 06:07:41 +00:00
|
|
|
(cancel)="onClickCancel($event)"
|
2019-10-15 07:39:58 +00:00
|
|
|
></ucap-organization-tenant-search>
|
2019-10-21 04:20:14 +00:00
|
|
|
|
2019-10-15 07:39:58 +00:00
|
|
|
<mat-menu
|
|
|
|
#groupMenu="matMenu"
|
|
|
|
xPosition="after"
|
|
|
|
yPosition="below"
|
|
|
|
[overlapTrigger]="false"
|
|
|
|
>
|
2019-10-07 08:02:14 +00:00
|
|
|
<button mat-menu-item (click)="onClickGroupMenu('GROUP_NEW')">
|
|
|
|
<mat-icon>group_add</mat-icon>
|
|
|
|
<span>새 그룹 추가</span>
|
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickGroupMenu('GROUP_EXPAND_MORE')">
|
|
|
|
<mat-icon>expand_more</mat-icon>
|
|
|
|
<span>그룹 전체 열기</span>
|
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickGroupMenu('GROUP_EXPAND_LESS')">
|
|
|
|
<mat-icon>expand_less</mat-icon>
|
|
|
|
<span>그룹 전체 닫기</span>
|
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickGroupMenu('GROUP_SAVE')">
|
|
|
|
<mat-icon>save</mat-icon>
|
|
|
|
<span>그룹 저장하기</span>
|
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickGroupMenu('GROUP_RESTORE')">
|
|
|
|
<mat-icon>restore</mat-icon>
|
|
|
|
<span>그룹 가져오기</span>
|
|
|
|
</button>
|
|
|
|
</mat-menu>
|
2019-10-07 07:29:38 +00:00
|
|
|
</div>
|
2019-10-23 06:07:41 +00:00
|
|
|
<div *ngIf="!isShowSearch">
|
2019-10-15 07:39:58 +00:00
|
|
|
<ucap-group-expansion-panel
|
|
|
|
#groupExpansionPanel
|
|
|
|
[groupBuddyList]="groupBuddyList$ | async"
|
|
|
|
[favoritBuddyList]="favoritBuddyList$ | async"
|
2019-10-22 00:47:14 +00:00
|
|
|
[myProfileInfo]="loginRes.userInfo"
|
2019-10-15 07:39:58 +00:00
|
|
|
(more)="onMoreGroup($event)"
|
|
|
|
>
|
|
|
|
<ucap-profile-user-list-item
|
|
|
|
*ucapGroupExpansionPanelItem="let userInfo"
|
|
|
|
[userInfo]="userInfo"
|
|
|
|
[presence]="getStatusBulkInfo(userInfo) | async"
|
|
|
|
[sessionVerinfo]="sessionVerinfo"
|
|
|
|
(click)="onSelectBuddy(userInfo)"
|
|
|
|
(contextmenu)="onContextMenuProfile($event, userInfo)"
|
|
|
|
>
|
2019-10-11 08:52:00 +00:00
|
|
|
</ucap-profile-user-list-item>
|
2019-10-07 07:29:38 +00:00
|
|
|
</ucap-group-expansion-panel>
|
|
|
|
</div>
|
2019-10-23 06:07:41 +00:00
|
|
|
<div *ngIf="isShowSearch">
|
|
|
|
<div *ngIf="searchProcessing">
|
|
|
|
<mat-progress-bar mode="indeterminate"></mat-progress-bar>
|
|
|
|
</div>
|
|
|
|
<div>검색결과({{ searchUserInfos.length }}명)</div>
|
|
|
|
<ucap-profile-user-list-item
|
|
|
|
*ngFor="let userInfo of searchUserInfos"
|
|
|
|
[userInfo]="userInfo"
|
|
|
|
[presence]="getStatusBulkInfo(userInfo) | async"
|
|
|
|
[sessionVerinfo]="sessionVerinfo"
|
|
|
|
(click)="onSelectBuddy(userInfo)"
|
|
|
|
>
|
|
|
|
</ucap-profile-user-list-item>
|
|
|
|
</div>
|
2019-10-07 07:29:38 +00:00
|
|
|
</div>
|
2019-10-15 02:07:26 +00:00
|
|
|
|
2019-10-15 07:39:58 +00:00
|
|
|
<div
|
|
|
|
style="visibility: hidden; position: fixed"
|
|
|
|
[style.left]="profileContextMenuPosition.x"
|
|
|
|
[style.top]="profileContextMenuPosition.y"
|
2019-10-16 01:20:49 +00:00
|
|
|
#profileContextMenuTrigger="matMenuTrigger"
|
2019-10-15 07:39:58 +00:00
|
|
|
[matMenuTriggerFor]="profileContextMenu"
|
|
|
|
></div>
|
2019-10-15 02:07:26 +00:00
|
|
|
<mat-menu #profileContextMenu="matMenu" [overlapTrigger]="false">
|
2019-10-15 09:20:50 +00:00
|
|
|
<ng-template matMenuContent let-userInfo="userInfo">
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
|
|
|
(click)="onClickProfileContextMenu('VIEW_PROFILE', userInfo)"
|
|
|
|
>
|
|
|
|
프로필 보기
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
2019-10-22 00:53:16 +00:00
|
|
|
*ngIf="getShowContextMenu(userInfo)"
|
2019-10-15 09:20:50 +00:00
|
|
|
(click)="onClickProfileContextMenu('REGISTER_FAVORITE', userInfo)"
|
|
|
|
>
|
2019-10-21 08:23:02 +00:00
|
|
|
즐겨찾기 {{ userInfo.isFavorit ? '해제' : '등록' }}
|
2019-10-15 09:20:50 +00:00
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickProfileContextMenu('CHAT', userInfo)">
|
|
|
|
대화하기
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
2019-10-22 00:53:16 +00:00
|
|
|
*ngIf="getShowContextMenu(userInfo)"
|
2019-10-15 09:20:50 +00:00
|
|
|
(click)="onClickProfileContextMenu('REMOVE_FROM_GROUP', userInfo)"
|
|
|
|
>
|
|
|
|
이 그룹에서 삭제
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
2019-10-22 00:53:16 +00:00
|
|
|
*ngIf="getShowContextMenu(userInfo)"
|
2019-10-15 09:20:50 +00:00
|
|
|
(click)="onClickProfileContextMenu('COPY_BUDDY', userInfo)"
|
|
|
|
>
|
|
|
|
대화 상대 복사
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
2019-10-22 00:53:16 +00:00
|
|
|
*ngIf="getShowContextMenu(userInfo)"
|
2019-10-15 09:20:50 +00:00
|
|
|
(click)="onClickProfileContextMenu('MOVE_BUDDY', userInfo)"
|
|
|
|
>
|
|
|
|
대화 상대 이동
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
2019-10-22 00:53:16 +00:00
|
|
|
*ngIf="getShowContextMenu(userInfo)"
|
2019-10-15 09:20:50 +00:00
|
|
|
(click)="onClickProfileContextMenu('SEND_NOTE', userInfo)"
|
|
|
|
>
|
|
|
|
쪽지 보내기
|
|
|
|
</button>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
2019-10-22 00:53:16 +00:00
|
|
|
*ngIf="getShowContextMenu(userInfo)"
|
2019-10-15 09:20:50 +00:00
|
|
|
(click)="onClickProfileContextMenu('REGISTER_NICKNAME', userInfo)"
|
|
|
|
>
|
|
|
|
닉네임 설정
|
|
|
|
</button>
|
2019-10-15 02:07:26 +00:00
|
|
|
</ng-template>
|
|
|
|
</mat-menu>
|
2019-10-15 02:50:59 +00:00
|
|
|
|
2019-10-15 07:39:58 +00:00
|
|
|
<div
|
|
|
|
style="visibility: hidden; position: fixed"
|
|
|
|
[style.left]="groupContextMenuPosition.x"
|
|
|
|
[style.top]="groupContextMenuPosition.y"
|
2019-10-16 01:20:49 +00:00
|
|
|
#groupContextMenuTrigger="matMenuTrigger"
|
2019-10-15 07:39:58 +00:00
|
|
|
[matMenuTriggerFor]="groupContextMenu"
|
|
|
|
></div>
|
2019-10-15 02:50:59 +00:00
|
|
|
<mat-menu #groupContextMenu="matMenu" [overlapTrigger]="false">
|
2019-10-15 09:20:50 +00:00
|
|
|
<ng-template matMenuContent let-group="group">
|
|
|
|
<button mat-menu-item (click)="onClickGroupContextMenu('CHAT', group)">
|
|
|
|
그룹 대화하기
|
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickGroupContextMenu('SEND_NOTE', group)">
|
|
|
|
그룹 쪽지 보내기
|
|
|
|
</button>
|
|
|
|
<button mat-menu-item (click)="onClickGroupContextMenu('RENAME', group)">
|
|
|
|
그룹 이름 바꾸기
|
|
|
|
</button>
|
|
|
|
<mat-divider></mat-divider>
|
|
|
|
<button
|
|
|
|
mat-menu-item
|
|
|
|
(click)="onClickGroupContextMenu('EDIT_MEMBER', group)"
|
|
|
|
>
|
|
|
|
그룹 멤버 변경
|
|
|
|
</button>
|
2019-10-16 06:36:18 +00:00
|
|
|
<button mat-menu-item (click)="onClickGroupContextMenu('DELETE', group)">
|
2019-10-15 09:20:50 +00:00
|
|
|
그룹 삭제
|
|
|
|
</button>
|
2019-10-15 02:50:59 +00:00
|
|
|
</ng-template>
|
|
|
|
</mat-menu>
|