Newer
Older
GitBucket / src / main / twirl / gitbucket / core / helper / preview.scala.html
@KOUNOIKE Yuusuke KOUNOIKE Yuusuke on 13 Mar 2017 2 KB Add query parameter for cache control.
@(repository: gitbucket.core.service.RepositoryService.RepositoryInfo,
  content: String,
  enableWikiLink: Boolean,
  enableRefsLink: Boolean,
  enableLineBreaks: Boolean,
  enableTaskList: Boolean,
  hasWritePermission: Boolean,
  completionContext: String,
  style: String = "",
  styleClass: String = "",
  placeholder: String = "Leave a comment",
  elastic: Boolean = false,
  tabIndex: Int = -2,
  uid: Long = new java.util.Date().getTime())(implicit context: gitbucket.core.controller.Context)
@import gitbucket.core.view.helpers
<div class="tabbable">
  <ul class="nav nav-tabs fill-width" style="margin-bottom: 10px;">
    <li class="active"><a href="#tab@uid" data-toggle="tab">Write</a></li>
    <li><a href="#tab@(uid+1)" data-toggle="tab" id="preview@uid">Preview</a></li>
  </ul>
  <div class="tab-content">
    <div class="tab-pane active" style="margin-top: 4px;" id="tab@uid">
      <span id="error-content" class="error"></span>
      @textarea = {
        <textarea id="content@uid" class="form-control" name="content" placeholder="@placeholder" style="resize: vertical; @style"
          @if(tabIndex > -2){ tabindex="@tabIndex"}
          @if(styleClass.nonEmpty){ class="@styleClass" }>@content</textarea>
      }
      @gitbucket.core.helper.html.attached(
        repository        = repository,
        completionContext = completionContext,
        generateScript    = !enableWikiLink
      )(textarea)
    </div>
    <div class="tab-pane" id="tab@(uid+1)">
      <div class="markdown-body" id="preview-area@uid">
      </div>
    </div>
  </div>
</div>
<link  href="@helpers.assets("/vendors/google-code-prettify/prettify.css")" type="text/css" rel="stylesheet"/>
<script src="@helpers.assets("/vendors/google-code-prettify/prettify.js")"></script>
<script>
$(function(){
  @if(elastic){
    $('#content@uid').elastic();
  }

  $('#preview@uid').click(function(){
    $('#preview-area@uid').html('<img src="@helpers.assets("/common/images/indicator.gif")"> Previewing...');
    $.post('@helpers.url(repository)/_preview', {
      content          : $('#content@uid').val(),
      enableWikiLink   : @enableWikiLink,
      enableRefsLink   : @enableRefsLink,
      enableLineBreaks : @enableLineBreaks,
      enableTaskList   : @enableTaskList
    }, function(data){
      $('#preview-area@uid').html(data);
      prettyPrint();
    });
  });
});
</script>