<div class="{{TabSizeClass .Editorconfig .FileName}} non-diff-file-content"> <h4 class="file-header ui top attached header"> <div class="file-header-left"> {{if .ReadmeInList}} <i class="book icon"></i> <strong>{{.FileName}}</strong> {{else}} <div class="file-info text grey normal mono"> {{if .NumLines}} <div class="file-info-entry"> {{.NumLines}} {{.i18n.Tr (TrN .i18n.Lang .NumLines "repo.line" "repo.lines") }} </div> {{end}} {{if .FileSize}} <div class="file-info-entry"> {{FileSize .FileSize}}{{if .IsLFSFile}} ({{.i18n.Tr "repo.stored_lfs"}}){{end}} </div> {{end}} </div> {{end}} </div> {{if not .ReadmeInList}} <div class="file-header-right"> <div class="ui right file-actions"> <div class="ui buttons"> <a class="ui button" href="{{EscapePound $.RawFileLink}}">{{.i18n.Tr "repo.file_raw"}}</a> {{if not .IsViewCommit}} <a class="ui button" href="{{.RepoLink}}/src/commit/{{.CommitID}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_permalink"}}</a> {{end}} {{if .IsTextFile}} <a class="ui button" href="{{.RepoLink}}/blame/{{EscapePound .BranchNameSubURL}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.blame"}}</a> {{end}} <a class="ui button" href="{{.RepoLink}}/commits/{{EscapePound .BranchNameSubURL}}/{{EscapePound .TreePath}}">{{.i18n.Tr "repo.file_history"}}</a> </div> {{if .Repository.CanEnableEditor}} {{if .CanEditFile}} <a href="{{.RepoLink}}/_edit/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-pencil btn-octicon poping up" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a> {{else}} <i class="octicon octicon-pencil btn-octicon poping up disabled" data-content="{{.EditFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i> {{end}} {{if .CanDeleteFile}} <a href="{{.RepoLink}}/_delete/{{EscapePound .BranchName}}/{{EscapePound .TreePath}}"><i class="octicon octicon-trashcan btn-octicon btn-octicon-danger poping up" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i></a> {{else}} <i class="octicon octicon-trashcan btn-octicon poping up disabled" data-content="{{.DeleteFileTooltip}}" data-position="bottom center" data-variation="tiny inverted"></i> {{end}} {{end}} </div> </div> {{end}} </h4> <div class="ui attached table unstackable segment"> <div class="file-view {{if .IsMarkup}}{{.MarkupType}} markdown{{else if .IsRenderedHTML}}plain-text{{else if .IsTextFile}}code-view{{end}} has-emoji"> {{if .IsMarkup}} {{if .FileContent}}{{.FileContent | Safe}}{{end}} {{else if .IsRenderedHTML}} <pre>{{if .FileContent}}{{.FileContent | Str2html}}{{end}}</pre> {{else if not .IsTextFile}} <div class="view-raw ui center"> {{if .IsImageFile}} <img src="{{EscapePound $.RawFileLink}}"> {{else if .IsVideoFile}} <video controls src="{{EscapePound $.RawFileLink}}"> <strong>{{.i18n.Tr "repo.video_not_supported_in_browser"}}</strong> </video> {{else if .IsAudioFile}} <audio controls src="{{EscapePound $.RawFileLink}}"> <strong>{{.i18n.Tr "repo.audio_not_supported_in_browser"}}</strong> </audio> {{else if .IsPDFFile}} <iframe width="100%" height="600px" src="{{StaticUrlPrefix}}/vendor/plugins/pdfjs/web/viewer.html?file={{EscapePound $.RawFileLink}}"></iframe> {{else}} <a href="{{EscapePound $.RawFileLink}}" rel="nofollow" class="btn btn-gray btn-radius">{{.i18n.Tr "repo.file_view_raw"}}</a> {{end}} </div> {{else if .FileSize}} <table> <tbody> <tr> {{if .IsFileTooLarge}} <td><strong>{{.i18n.Tr "repo.file_too_large"}}</strong></td> {{else}} <td class="lines-num">{{.LineNums}}</td> <td class="lines-code"><pre><code class="{{.HighlightClass}}"><ol class="linenums">{{.FileContent}}</ol></code></pre></td> {{end}} </tr> </tbody> </table> {{end}} </div> </div> </div> <script> function submitDeleteForm() { var message = prompt("{{.i18n.Tr "repo.delete_confirm_message"}}\n\n{{.i18n.Tr "repo.delete_commit_summary"}}", "Delete '{{.TreeName}}'"); if (message != null) { $("#delete-message").val(message); $("#delete-file-form").submit() } } </script>