mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-26 16:34:46 +00:00
WIP Collaborative Project Management first commit
This commit is contained in:
149
erpnext/templates/pages/task_info.html
Normal file
149
erpnext/templates/pages/task_info.html
Normal file
@@ -0,0 +1,149 @@
|
||||
{% extends "templates/web.html" %}
|
||||
{% block title %} {{ doc.name }} {% endblock %}
|
||||
{% block breadcrumbs %}
|
||||
<div class="page-breadcrumbs" data-html-block="breadcrumbs">
|
||||
<ul class="breadcrumb">
|
||||
<li>
|
||||
<span class="icon icon-angle-left"></span>
|
||||
<a href="/projects?project={{ doc.project }}">{{ doc.project }}</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
{% endblock %}
|
||||
{% block page_content %}
|
||||
<div class="row">
|
||||
<div class=" col-sm-8 ">
|
||||
<h1> {{ doc.subject }} </h1>
|
||||
</div>
|
||||
|
||||
<div class="col-sm-4">
|
||||
<div class="page-header-actions-block" data-html-block="header-actions">
|
||||
<button type="submit" class="btn btn-primary btn-sm btn-form-submit">
|
||||
Update</button>
|
||||
<a href="tasks" class="btn btn-default btn-sm">
|
||||
Cancel</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="page-content-block">
|
||||
<form role="form" data-web-form="tasks">
|
||||
|
||||
<input type="hidden" name="web_form" value="tasks">
|
||||
<input type="hidden" name="doctype" value="Task">
|
||||
<input type="hidden" name="name" value="TASK00056">
|
||||
|
||||
<div class="row">
|
||||
<div class="col-sm-12" style="max-width: 500px;">
|
||||
<div class="form-group">
|
||||
<label for="project" class="control-label text-muted small">Project</label>
|
||||
<input type="text" class="form-control" name="project" readonly value= "{{ doc.project }}">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="subject" class="control-label text-muted small">Subject</label>
|
||||
<input type="text" class="form-control" name="subject" readonly value="{{ doc.subject }}">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="description" class="control-label text-muted small">Details</label>
|
||||
<textarea class="form-control" style="height: 200px;" name="description">{{ doc.description }}</textarea>
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="priority" class="control-label text-muted small">Priority</label>
|
||||
<input type="text" class="form-control" name="priority" readonly value="{{ doc.priority }}">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="exp_start_date" class="control-label text-muted small">Expected Start Date</label>
|
||||
<input type="text" class="form-control hasDatepicker" name="exp_start_date" readonly value="{{ doc.exp_start_date }}">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="exp_end_date" class="control-label text-muted small">Expected End Date</label>
|
||||
<input type="text" class="form-control hasDatepicker" name="exp_end_date" readonly value="{{ doc.exp_end_date }}">
|
||||
</div>
|
||||
|
||||
<div class="form-group">
|
||||
<label for="status" class="control-label text-muted small">Status</label>
|
||||
<select class="form-control" name="status" id="status" data-label="Status" data-fieldtype="Select">
|
||||
<option value="Open" selected="selected">
|
||||
Open</option><option value="Working">
|
||||
Working</option><option value="Pending Review">
|
||||
Pending Review</option><option value="Overdue">
|
||||
Overdue</option><option value="Closed">
|
||||
Closed</option><option value="Cancelled">
|
||||
Cancelled</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<div class="comments">
|
||||
<h3>Comments</h3>
|
||||
<div class="no-comment">
|
||||
{% for comment in comments %}
|
||||
<p class="text-muted">{{comment.sender_full_name}} : {{comment.subject}} on {{comment.communication_date.strftime('%Y-%m-%d')}}</p>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class="comment-form-wrapper">
|
||||
<a class="add-comment btn btn-default btn-sm">Add Comment</a>
|
||||
<div style="display: none;" id="comment-form">
|
||||
<p>Add Comment</p>
|
||||
<form>
|
||||
<fieldset>
|
||||
<textarea class="form-control" name="comment" rows="5" placeholder="Comment"></textarea>
|
||||
<p>
|
||||
<button class="btn btn-primary btn-sm" id="submit-comment">Submit</button>
|
||||
</p>
|
||||
</fieldset>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<script>
|
||||
frappe.ready(function() {
|
||||
var n_comments = $(".comment-row").length;
|
||||
$(".add-comment").click(function() {
|
||||
$(this).toggle(false);
|
||||
$("#comment-form").toggle();
|
||||
$("#comment-form textarea").val("");
|
||||
})
|
||||
$("#submit-comment").click(function() {
|
||||
var args = {
|
||||
comment_by_fullname: "test",
|
||||
comment_by: "admin@localhost.com",
|
||||
comment: $("[name='comment']").val(),
|
||||
reference_doctype: "Task",
|
||||
reference_name: "TASK00069",
|
||||
comment_type: "Comment",
|
||||
page_name: "tasks",
|
||||
}
|
||||
|
||||
frappe.call({
|
||||
btn: this,
|
||||
type: "POST",
|
||||
method: "frappe.templates.includes.comments.comments.add_comment",
|
||||
args: args,
|
||||
callback: function(r) {
|
||||
if(r.exc) {
|
||||
if(r._server_messages)
|
||||
frappe.msgprint(r._server_messages);
|
||||
} else {
|
||||
$(r.message).appendTo("#comment-list");
|
||||
$(".no-comment, .add-comment").toggle(false);
|
||||
$("#comment-form")
|
||||
.replaceWith('<div class="text-muted">Thank you for your comment!</div>')
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
return false;
|
||||
})
|
||||
});
|
||||
</script>
|
||||
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user