{%extends "change_base.html"%}
{%block title1%}Publish Comments &amp; Approvals -{%endblock%}
{%block change_body%}
<h2>Publish Comments &amp; Approvals</h2>

<div>
  <form action="{%url codereview.views.publish change.key.id%}"
        method="post" id="publish-form">

{{form.xsrf}}
{%if form.xsrf.errors%}
<ul>
  {%for e in form.xsrf.errors%}
    <li>{{e}}</li>
  {%endfor%}
</ul>
{%endif%}

  <table class="publish_table">
  
  <tr class="first"><th>Reviewers</th><td>{{form.reviewers}}</td></tr>
  <tr><th>CC</th><td>{{form.cc}}
    {%for e in form.cc.errors %}<br/><font color=red>{{e}}</font>{%endfor%}
  </td></tr>

  <tr><th>Message</th><td>{{form.message}}</td></tr>
  <tr><th>Code Review</th><td>{{form.lgtm}}</td></tr>
  {%if form.verified %}
  <tr><th></th>
    <td>{{form.verified}}<label for="id_verified"> Verified</label></td></tr>
  {%endif%}
  <tr class="last"><th></th><td>
    {%if form.abandoned %}
      {{form.abandoned}}<label for="id_abandoned"> Abandoned</label>
    {%else%}
      <input disabled type="checkbox" {%if form.is_abandoned %}checked{%endif%}/>
      <font class="disabled"> Abandoned</font>
    {%endif%}
  </td> </tr>
  <tr class="buttons"><td></td>
    <td>
      <input type="submit" value="Publish Comments &amp; Approvals">
      &nbsp;
      {{form.send_mail}} Send mail</td>
    </td>
  </tr>
  </table>
  </form>

  <a id="resizer" style="display:none;cursor:pointer">
  <img src="/static/zippyplus.gif"></a>
  <script language="JavaScript" type="text/javascript"><!--
  M_addTextResizer_(document.getElementById("publish-form"));
  --></script>

</div>
{%if preview%}
<div style="margin-top: 3em;">
  <h3>Unpublished Drafts:</h3>
  <pre class="description">{{preview|wordwrap:"80"|urlize}}</pre>
</div>
{%endif%}
<div style="clear:both"></div>

{%endblock%}
