feat(project): 툴바에 현재 프로젝트 이름 크게 표시, 멤버 목록에 프로필 아바타 적용
- 뷰 탭과 스코프 토글 사이 빈 공간에 프로젝트 이름(pj-project-title) 표시. - 좌측 멤버 목록이 항상 기본 아이콘만 쓰던 것을 프로젝트 카드/업무 담당자 처럼 avatars 맵을 조회해 구글 프로필 사진이 있으면 그걸 쓰도록 통일. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
{% extends "erp_base.html" %}
|
{% extends "erp_base.html" %}
|
||||||
|
|
||||||
{% block head_extra %}
|
{% block head_extra %}
|
||||||
<link rel="stylesheet" href="/static/project.css?v=20260916k" />
|
<link rel="stylesheet" href="/static/project.css?v=20260916l" />
|
||||||
<link rel="stylesheet" href="/static/vendor/material-symbols/material-symbols.css" />
|
<link rel="stylesheet" href="/static/vendor/material-symbols/material-symbols.css" />
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{% extends "erp_base.html" %}
|
{% extends "erp_base.html" %}
|
||||||
|
|
||||||
{% block head_extra %}
|
{% block head_extra %}
|
||||||
<link rel="stylesheet" href="/static/project.css?v=20260916k" />
|
<link rel="stylesheet" href="/static/project.css?v=20260916l" />
|
||||||
<link rel="stylesheet" href="/static/vendor/material-symbols/material-symbols.css" />
|
<link rel="stylesheet" href="/static/vendor/material-symbols/material-symbols.css" />
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
{% extends "erp_base.html" %}
|
{% extends "erp_base.html" %}
|
||||||
|
|
||||||
{% block head_extra %}
|
{% block head_extra %}
|
||||||
<link rel="stylesheet" href="/static/project.css?v=20260916k" />
|
<link rel="stylesheet" href="/static/project.css?v=20260916l" />
|
||||||
<!-- 구글 머티리얼 심볼(담당자 아이콘 등) — self-host -->
|
<!-- 구글 머티리얼 심볼(담당자 아이콘 등) — self-host -->
|
||||||
<link rel="stylesheet" href="/static/vendor/material-symbols/material-symbols.css" />
|
<link rel="stylesheet" href="/static/vendor/material-symbols/material-symbols.css" />
|
||||||
<!-- 타임라인 vis-timeline — self-host -->
|
<!-- 타임라인 vis-timeline — self-host -->
|
||||||
@@ -69,7 +69,11 @@
|
|||||||
<ul class="pj-member-list" id="pj-member-list">
|
<ul class="pj-member-list" id="pj-member-list">
|
||||||
{% for m in members %}
|
{% for m in members %}
|
||||||
<li>
|
<li>
|
||||||
|
{% if avatars.get(m.user_email | lower) %}
|
||||||
|
<img class="pj-avatar pj-gicon-sm" src="{{ avatars[m.user_email | lower] }}" alt="" referrerpolicy="no-referrer" />
|
||||||
|
{% else %}
|
||||||
<span class="material-symbols-outlined pj-gicon">account_circle</span>
|
<span class="material-symbols-outlined pj-gicon">account_circle</span>
|
||||||
|
{% endif %}
|
||||||
<span class="pj-member-name">{{ m.user_email.split('@')[0] }}</span>
|
<span class="pj-member-name">{{ m.user_email.split('@')[0] }}</span>
|
||||||
{% if m.role == 'manager' %}<span class="pj-chip pj-chip-sm">관리</span>{% endif %}
|
{% if m.role == 'manager' %}<span class="pj-chip pj-chip-sm">관리</span>{% endif %}
|
||||||
{% if is_admin %}
|
{% if is_admin %}
|
||||||
@@ -92,6 +96,7 @@
|
|||||||
<button type="button" class="pj-tab" data-view="calendar">달력</button>
|
<button type="button" class="pj-tab" data-view="calendar">달력</button>
|
||||||
<button type="button" class="pj-tab" data-view="timeline">타임라인</button>
|
<button type="button" class="pj-tab" data-view="timeline">타임라인</button>
|
||||||
</div>
|
</div>
|
||||||
|
<h1 class="pj-project-title">{{ project.name }}</h1>
|
||||||
<!-- 아사나처럼 기본은 "이 프로젝트"만 보여준다. 전체 프로젝트 보기는
|
<!-- 아사나처럼 기본은 "이 프로젝트"만 보여준다. 전체 프로젝트 보기는
|
||||||
예전처럼 접근 가능한 모든 프로젝트를 합쳐서 보여주는 모드. -->
|
예전처럼 접근 가능한 모든 프로젝트를 합쳐서 보여주는 모드. -->
|
||||||
<div class="pj-view-tabs" id="pj-scope-toggle">
|
<div class="pj-view-tabs" id="pj-scope-toggle">
|
||||||
|
|||||||
@@ -187,6 +187,11 @@
|
|||||||
|
|
||||||
/* ── 툴바 + 탭 ── */
|
/* ── 툴바 + 탭 ── */
|
||||||
.pj-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; flex: none; }
|
.pj-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; flex: none; }
|
||||||
|
.pj-project-title {
|
||||||
|
flex: 1 1 auto; min-width: 0; margin: 0; padding: 0 16px; text-align: center;
|
||||||
|
font-size: 20px; font-weight: 800; color: var(--pj-ink);
|
||||||
|
overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
|
||||||
|
}
|
||||||
/* 현재 활성 뷰(보드/리스트/달력/타임라인)가 pj-main 의 남은 세로 공간을
|
/* 현재 활성 뷰(보드/리스트/달력/타임라인)가 pj-main 의 남은 세로 공간을
|
||||||
차지 — 뷰 하나만 자체 스크롤(다른 칸과 스크롤이 서로 안 얽히게). 보드는
|
차지 — 뷰 하나만 자체 스크롤(다른 칸과 스크롤이 서로 안 얽히게). 보드는
|
||||||
내부에 pj-board 자체 스크롤 컨테이너가 따로 있어 여기선 넘침을 숨긴다. */
|
내부에 pj-board 자체 스크롤 컨테이너가 따로 있어 여기선 넘침을 숨긴다. */
|
||||||
|
|||||||
Reference in New Issue
Block a user