feat(project): 새 업무 모달 제목에 프로젝트 이름 표시
"새 업무" → "[프로젝트명]의 새 업무" — 홈 화면 카드 옆 추가 버튼, 프로젝트 상세 화면 "+ 업무 추가" 버튼 둘 다 적용. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -45,5 +45,5 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<script src="/static/project.js?v=20260916l" defer></script>
|
<script src="/static/project.js?v=20260916m" defer></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -376,5 +376,5 @@
|
|||||||
<script>
|
<script>
|
||||||
window.PJ_COLORS = {{ ["#4573d2","#37a3a3","#62a420","#e8a33d","#e8384f","#aa62e3","#f06a6a","#5a6772"] | tojson }};
|
window.PJ_COLORS = {{ ["#4573d2","#37a3a3","#62a420","#e8a33d","#e8384f","#aa62e3","#f06a6a","#5a6772"] | tojson }};
|
||||||
</script>
|
</script>
|
||||||
<script src="/static/project.js?v=20260916l" defer></script>
|
<script src="/static/project.js?v=20260916m" defer></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -383,5 +383,5 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script src="/static/vendor/vis-timeline/vis-timeline-graph2d.min.js"></script>
|
<script src="/static/vendor/vis-timeline/vis-timeline-graph2d.min.js"></script>
|
||||||
<script src="/static/project.js?v=20260916l" defer></script>
|
<script src="/static/project.js?v=20260916m" defer></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
@@ -366,8 +366,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 카드 이름 옆 "업무 추가" 버튼 — 같은 모달을 새 업무 작성용으로 초기화해 연다.
|
// 카드 이름 옆 "업무 추가" 버튼 — 같은 모달을 새 업무 작성용으로 초기화해 연다.
|
||||||
async function openHomeNewTaskModal(projectId) {
|
async function openHomeNewTaskModal(projectId, projectName) {
|
||||||
el("pj-task-modal-title").textContent = "새 업무 추가";
|
el("pj-task-modal-title").textContent = "[" + (projectName || "") + "]의 새 업무";
|
||||||
el("pj-t-id").value = "";
|
el("pj-t-id").value = "";
|
||||||
el("pj-t-project-id").value = projectId;
|
el("pj-t-project-id").value = projectId;
|
||||||
el("pj-t-title").value = "";
|
el("pj-t-title").value = "";
|
||||||
@@ -406,7 +406,8 @@
|
|||||||
document.querySelectorAll(".pj-card-addtask").forEach(function (btn) {
|
document.querySelectorAll(".pj-card-addtask").forEach(function (btn) {
|
||||||
btn.addEventListener("click", function (e) {
|
btn.addEventListener("click", function (e) {
|
||||||
e.preventDefault(); e.stopPropagation();
|
e.preventDefault(); e.stopPropagation();
|
||||||
openHomeNewTaskModal(btn.dataset.projectId);
|
const card = btn.closest(".pj-project-card");
|
||||||
|
openHomeNewTaskModal(btn.dataset.projectId, card ? card.dataset.name : "");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -605,6 +606,7 @@
|
|||||||
|
|
||||||
const dataEl = el("pj-data");
|
const dataEl = el("pj-data");
|
||||||
const data = JSON.parse(dataEl.textContent);
|
const data = JSON.parse(dataEl.textContent);
|
||||||
|
const currentProject = data.project || {};
|
||||||
let stages = data.stages || [];
|
let stages = data.stages || [];
|
||||||
let tasks = data.tasks || [];
|
let tasks = data.tasks || [];
|
||||||
const members = data.members || [];
|
const members = data.members || [];
|
||||||
@@ -1630,7 +1632,9 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
function openTaskModal(task) {
|
function openTaskModal(task) {
|
||||||
el("pj-task-modal-title").textContent = task ? "업무 편집" : "새 업무";
|
el("pj-task-modal-title").textContent = task
|
||||||
|
? "업무 편집"
|
||||||
|
: "[" + (currentProject.name || "") + "]의 새 업무";
|
||||||
el("pj-t-id").value = task ? task.id : "";
|
el("pj-t-id").value = task ? task.id : "";
|
||||||
el("pj-t-title").value = task ? task.title : "";
|
el("pj-t-title").value = task ? task.title : "";
|
||||||
if (descEditor) { descEditor.setTaskId(task ? task.id : null); descEditor.setHtml(task ? (task.description || "") : ""); }
|
if (descEditor) { descEditor.setTaskId(task ? task.id : null); descEditor.setHtml(task ? (task.description || "") : ""); }
|
||||||
|
|||||||
Reference in New Issue
Block a user