2015-12-08 06:30:52 +08:00
|
|
|
{{/*
|
|
|
|
<html>
|
|
|
|
<body>
|
|
|
|
<div>
|
|
|
|
*/}}
|
2018-01-02 18:32:41 +08:00
|
|
|
|
|
|
|
{{template "custom/body_inner_post" .}}
|
|
|
|
|
2015-03-08 04:12:13 +08:00
|
|
|
</div>
|
2018-01-02 18:32:41 +08:00
|
|
|
|
|
|
|
{{template "custom/body_outer_post" .}}
|
|
|
|
|
2018-09-07 10:59:06 +08:00
|
|
|
{{template "base/footer_content" .}}
|
|
|
|
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/jquery/jquery.min.js"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/jquery.areyousure/jquery.are-you-sure.js"></script>
|
2017-01-25 23:15:25 +08:00
|
|
|
{{if .RequireSimpleMDE}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/simplemde/simplemde.min.js"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/codemirror/addon/mode/loadmode.js"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/codemirror/mode/meta.js"></script>
|
2017-01-25 23:15:25 +08:00
|
|
|
<script>
|
2017-08-23 22:58:05 +08:00
|
|
|
CodeMirror.modeURL = "{{AppSubUrl}}/vendor/plugins/codemirror/mode/%N/%N.js";
|
2017-01-25 23:15:25 +08:00
|
|
|
</script>
|
|
|
|
{{end}}
|
|
|
|
{{if .RequireGitGraph}}
|
|
|
|
<!-- graph -->
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/gitgraph/gitgraph.js"></script>
|
2017-01-25 23:15:25 +08:00
|
|
|
<script src="{{AppSubUrl}}/js/draw.js"></script>
|
|
|
|
{{end}}
|
|
|
|
|
2015-12-08 06:30:52 +08:00
|
|
|
<!-- Third-party libraries -->
|
|
|
|
{{if .RequireHighlightJS}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/highlight/highlight.pack.js"></script>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
|
|
|
{{if .RequireMinicolors}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/jquery.minicolors/jquery.minicolors.min.js"></script>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
|
|
|
{{if .RequireDatetimepicker}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/jquery.datetimepicker/jquery.datetimepicker.js"></script>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
|
|
|
{{if .RequireDropzone}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/dropzone/dropzone.js"></script>
|
2017-12-11 14:03:04 +08:00
|
|
|
{{end}}
|
2018-05-19 22:12:37 +08:00
|
|
|
{{if .RequireU2F}}
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/u2f/index.js"></script>
|
|
|
|
{{end}}
|
2018-07-05 12:13:05 +08:00
|
|
|
{{if .EnableCaptcha}}
|
|
|
|
{{if eq .CaptchaType "recaptcha"}}
|
|
|
|
<script src="https://www.google.com/recaptcha/api.js" async></script>
|
|
|
|
{{end}}
|
|
|
|
{{end}}
|
2018-10-23 10:57:42 +08:00
|
|
|
{{if .EnableHeatmap}}
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/moment/moment.min.js" charset="utf-8"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/d3/d3.v4.min.js" charset="utf-8"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/calendar-heatmap/calendar-heatmap.js" charset="utf-8"></script>
|
|
|
|
<script type="text/javascript">
|
|
|
|
$.get( '{{AppSubUrl}}/api/v1/users/{{.HeatmapUser}}/heatmap', function( chartRawData ) {
|
|
|
|
var chartData = [];
|
|
|
|
for (var i = 0; i < chartRawData.length; i++) {
|
|
|
|
chartData[i] = {date: new Date(chartRawData[i].timestamp * 1000), count: chartRawData[i].contributions};
|
|
|
|
}
|
|
|
|
|
|
|
|
$('#loading-heatmap').removeClass('active');
|
|
|
|
|
|
|
|
var heatmap = calendarHeatmap()
|
|
|
|
.data(chartData)
|
|
|
|
.selector('#user-heatmap')
|
2018-10-24 22:38:04 +08:00
|
|
|
.colorRange({{SafeJS HeatmapColorRange}})
|
2018-10-23 10:57:42 +08:00
|
|
|
.tooltipEnabled(true);
|
|
|
|
heatmap();
|
|
|
|
});
|
|
|
|
</script>
|
|
|
|
{{end}}
|
2017-12-11 14:03:04 +08:00
|
|
|
{{if .RequireTribute}}
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/tribute/tribute.min.js"></script>
|
|
|
|
|
|
|
|
{{if .Assignees}}
|
|
|
|
<script>
|
|
|
|
var issuesTribute = new Tribute({
|
|
|
|
values: [
|
|
|
|
{{ range .Assignees }}
|
|
|
|
{key: '{{.Name}} {{.FullName}}', value: '{{.Name}}',
|
|
|
|
name: '{{.Name}}', fullname: '{{.FullName}}', avatar: '{{.RelAvatarLink}}'},
|
|
|
|
{{ end }}
|
|
|
|
],
|
|
|
|
noMatchTemplate: function () { return null },
|
|
|
|
menuItemTemplate: function (item) {
|
|
|
|
var user = item.original;
|
|
|
|
var itemStr = '<img src="' + user.avatar + '"/><span class="name">' + user.name + '</span>';
|
|
|
|
if (user.fullname && user.fullname != '') {
|
|
|
|
itemStr += '<span class="fullname">' + user.fullname + '</span>';
|
|
|
|
}
|
|
|
|
return itemStr;
|
|
|
|
}
|
|
|
|
})
|
|
|
|
issuesTribute.attach(document.getElementById('content'))
|
|
|
|
</script>
|
|
|
|
{{end}}
|
2018-02-03 16:09:35 +08:00
|
|
|
<script>
|
|
|
|
var emojiTribute = new Tribute({
|
|
|
|
collection: [{
|
|
|
|
trigger: ':',
|
|
|
|
requireLeadingSpace: true,
|
|
|
|
values: function (text, cb) {
|
|
|
|
var array = emojify.emojiNames;
|
|
|
|
var data = [];
|
|
|
|
for(var j=0; j<array.length; j++) {
|
|
|
|
if(array[j].indexOf(text) !== -1) {
|
|
|
|
data.push(array[j]);
|
|
|
|
if(data.length > 5) {
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
cb(data);
|
|
|
|
},
|
|
|
|
lookup: function (item) {
|
|
|
|
return item;
|
|
|
|
},
|
|
|
|
selectTemplate: function (item) {
|
|
|
|
if (typeof item === 'undefinied') return null;
|
|
|
|
return ':' + item.original + ':';
|
|
|
|
},
|
|
|
|
menuItemTemplate: function (item) {
|
|
|
|
return '<img class="emoji" src="{{AppSubUrl}}/vendor/plugins/emojify/images/' + item.original + '.png"/>' + item.original;
|
|
|
|
}
|
|
|
|
}]
|
|
|
|
});
|
|
|
|
emojiTribute.attach(document.getElementById('content'))
|
|
|
|
</script>
|
2015-12-08 06:30:52 +08:00
|
|
|
{{end}}
|
2017-08-23 22:58:05 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/emojify/emojify.min.js"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/clipboard/clipboard.min.js"></script>
|
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/vue/vue.min.js"></script>
|
2017-08-17 09:31:34 +08:00
|
|
|
|
|
|
|
<!-- JavaScript -->
|
2017-09-16 17:04:27 +08:00
|
|
|
<script src="{{AppSubUrl}}/vendor/plugins/semantic/semantic.min.js"></script>
|
|
|
|
<script src="{{AppSubUrl}}/js/index.js?v={{MD5 AppVer}}"></script>
|
2017-12-03 08:26:06 +08:00
|
|
|
{{template "custom/footer" .}}
|
2017-01-25 23:15:25 +08:00
|
|
|
</body>
|
2017-09-16 17:04:27 +08:00
|
|
|
</html>
|