<%inherit file="base.mako"/>
<%namespace name="base" file="base.mako"/>

## EMAIL SUBJECT
<%def name="subject()" filter="n,trim,whitespace_filter">
<%
data = {
    'user': '@'+h.person(user),
    'repo_name': repo_name,
    'status': status_change,
    'comment_file': comment_file,
    'comment_line': comment_line,
    'comment_type': comment_type,
    'comment_id': comment_id,

    'pr_title': pull_request.title_safe,
    'pr_id': pull_request.pull_request_id,
    'mention_prefix': '[mention] ' if mention else '',
}

if comment_file:
    subject_template = email_pr_comment_file_subject_template or \
    _('{mention_prefix}{user} left a {comment_type} on file `{comment_file}` in pull request !{pr_id}: "{pr_title}"').format(**data)
else:
    if status_change:
        subject_template = email_pr_comment_status_change_subject_template or \
        _('{mention_prefix}[status: {status}] {user} left a {comment_type} on pull request !{pr_id}: "{pr_title}"').format(**data)
    else:
        subject_template = email_pr_comment_subject_template or \
        _('{mention_prefix}{user} left a {comment_type} on pull request !{pr_id}: "{pr_title}"').format(**data)
%>

${subject_template.format(**data) |n}
</%def>

## PLAINTEXT VERSION OF BODY
<%def name="body_plaintext()" filter="n,trim">
<%
data = {
    'user': h.person(user),
    'repo_name': repo_name,
    'status': status_change,
    'comment_file': comment_file,
    'comment_line': comment_line,
    'comment_type': comment_type,
    'comment_id': comment_id,

    'pr_title': pull_request.title_safe,
    'pr_id': pull_request.pull_request_id,
    'source_ref_type': pull_request.source_ref_parts.type,
    'source_ref_name': pull_request.source_ref_parts.name,
    'target_ref_type': pull_request.target_ref_parts.type,
    'target_ref_name': pull_request.target_ref_parts.name,
    'source_repo': pull_request_source_repo.repo_name,
    'target_repo': pull_request_target_repo.repo_name,
    'source_repo_url': pull_request_source_repo_url,
    'target_repo_url': pull_request_target_repo_url,
}
%>

* ${_('Comment link')}: ${pr_comment_url}

* ${_('Pull Request')}: !${pull_request.pull_request_id}

* ${h.literal(_('Commit flow: {source_ref_type}:{source_ref_name} of {source_repo_url} into {target_ref_type}:{target_ref_name} of {target_repo_url}').format(**data))}

%if status_change and not closing_pr:
* ${_('{user} submitted pull request !{pr_id} status: *{status}*').format(**data)}

%elif status_change and closing_pr:
* ${_('{user} submitted pull request !{pr_id} status: *{status} and closed*').format(**data)}

%endif
%if comment_file:
* ${_('File: {comment_file} on line {comment_line}').format(**data)}

%endif
% if comment_type == 'todo':
${('Inline' if comment_file else 'General')} ${_('`TODO` number')} ${comment_id}:
% else:
${('Inline' if comment_file else 'General')} ${_('`Note` number')} ${comment_id}:
% endif

${comment_body |n, trim}

---
${self.plaintext_footer()}
</%def>


<%
data = {
    'user': h.person(user),
    'comment_file': comment_file,
    'comment_line': comment_line,
    'comment_type': comment_type,
    'comment_id': comment_id,
    'renderer_type': renderer_type or 'plain',

    'pr_title': pull_request.title_safe,
    'pr_id': pull_request.pull_request_id,
    'status': status_change,
    'source_ref_type': pull_request.source_ref_parts.type,
    'source_ref_name': pull_request.source_ref_parts.name,
    'target_ref_type': pull_request.target_ref_parts.type,
    'target_ref_name': pull_request.target_ref_parts.name,
    'source_repo': pull_request_source_repo.repo_name,
    'target_repo': pull_request_target_repo.repo_name,
    'source_repo_url': h.link_to(pull_request_source_repo.repo_name, pull_request_source_repo_url),
    'target_repo_url': h.link_to(pull_request_target_repo.repo_name, pull_request_target_repo_url),
}
%>

## header
<table style="text-align:left;vertical-align:middle;width: 100%">
    <tr>
    <td style="width:100%;border-bottom:1px solid #dbd9da;">

        <div style="margin: 0; font-weight: bold">
            <div class="clear-both" style="margin-bottom: 4px">
                <span style="color:#7E7F7F">@${h.person(user.username)}</span>
                ${_('left a')}
                <a href="${pr_comment_url}" style="${base.link_css()}">
                    % if comment_file:
                        ${_('{comment_type} on file `{comment_file}` in pull request.').format(**data)}
                    % else:
                        ${_('{comment_type} on pull request.').format(**data) |n}
                    % endif
                </a>
            </div>
            <div style="margin-top: 10px"></div>
            ${_('Pull request')} <code>!${data['pr_id']}: ${data['pr_title']}</code>
        </div>

    </td>
    </tr>

</table>
<div class="clear-both"></div>
## main body
<table style="text-align:left;vertical-align:middle;width: 100%">

    ## spacing def
    <tr>
        <td style="width: 130px"></td>
        <td></td>
    </tr>

    % if status_change:
    <tr>
        <td style="padding-right:20px;">${_('Review Status')}:</td>
        <td>
            % if closing_pr:
               ${_('Closed pull request with status')}: ${base.status_text(status_change, tag_type=status_change_type)}
            % else:
               ${_('Submitted review status')}: ${base.status_text(status_change, tag_type=status_change_type)}
            % endif
        </td>
    </tr>
    % endif
    <tr>
        <td style="padding-right:20px;">${_('Pull request')}:</td>
        <td>
            <a href="${pull_request_url}" style="${base.link_css()}">
            !${pull_request.pull_request_id}
            </a>
        </td>
    </tr>

    <tr>
        <td style="padding-right:20px;line-height:20px;">${_('Commit Flow')}:</td>
        <td style="line-height:20px;">
            <code>${data['source_ref_type']}:${pull_request.source_ref_parts.name}</code> ${_('of')} ${data['source_repo_url']}
            &rarr;
            <code>${data['target_ref_type']}:${pull_request.target_ref_parts.name}</code> ${_('of')}  ${data['target_repo_url']}
        </td>
    </tr>

    % if comment_file:
        <tr>
            <td style="padding-right:20px;">${_('File')}:</td>
            <td><a href="${pr_comment_url}" style="${base.link_css()}">${_('`{comment_file}` on line {comment_line}').format(**data)}</a></td>
        </tr>
    % endif

    <tr style="border-bottom:1px solid #dbd9da;">
        <td colspan="2" style="padding-right:20px;">
            % if comment_type == 'todo':
                ${('Inline' if comment_file else 'General')} ${_('`TODO` number')} ${comment_id}:
            % else:
                ${('Inline' if comment_file else 'General')} ${_('`Note` number')} ${comment_id}:
            % endif
        </td>
    </tr>

    <tr>
        <td colspan="2" style="background: #F7F7F7">${h.render(comment_body, renderer=data['renderer_type'], mentions=True)}</td>
    </tr>

    <tr>
        <td><a href="${pr_comment_reply_url}">${_('Reply')}</a></td>
        <td></td>
    </tr>
</table>
