1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
function fixedEncodeURIComponent (str) {
return encodeURIComponent(str).replace(/[!'()]/g, escape).replace(/\*/g, "%2A");
}
(function($) {
$(function() {
$(window).bind('hashchange', function(e) {
var hash = window.location.hash;
$('#highlight_line').remove();
if (hash.match(/^#n\d+$/) === null) {
return;
}
var link = $(hash);
$('<div id="highlight_line" />').prependTo('.highlight').css({
top: link.get(0).offsetTop - 10 + parseInt(link.css("padding-top")) + 'px'
});
});
$(window).trigger('hashchange');
var lexer_source = [];
for (var key in window.lexers) {
lexer_source.push({ label: window.lexers[key], value: key });
}
$('#language').autocomplete({
source: lexer_source,
select: function(event, ui) {
window.location = window.paste_base + '/' + fixedEncodeURIComponent(ui.item.value);
}
});
$('#language-toggle').click(function() {
setTimeout(function() {
$('#language').focus();
}, 0);
});
$('[rel="tooltip"]').tooltip({
placement: 'bottom'
});
$('#history-all').bind('change', function() {
$('.delete-history').prop('checked', $(this).is(':checked'));
});
$('.modal').on('shown', function(e) {
var modal = $(this);
modal.css('margin-top', (modal.outerHeight() / 2) * -1)
.css('margin-left', (modal.outerWidth() / 2) * -1);
return this;
});
window.lines_wrapped = false;
$('#linewrap').click(function() {
if (window.lines_wrapped == true) {
$(".content .numbers").show();
$(".content .code > .highlight > pre").css("white-space", "pre");
} else {
$(".content .numbers").hide();
$(".content .code > .highlight > pre").css("white-space", "pre-wrap");
}
window.lines_wrapped = !window.lines_wrapped;
});
// check file size before uploading if browser support html5
if (window.File && window.FileList) {
function checkFileUpload(evt) {
var sum = 0;
var files = evt.target.files;
// TODO: check all forms, not only the one we are called from
for (var i = 0; i < files.length; i++) {
var f = evt.target.files[i];
sum += f.size;
}
if (sum > max_upload_size) {
document.getElementById('upload_button').innerHTML = "File(s) too big";
document.getElementById('upload_button').disabled = true;
} else {
document.getElementById('upload_button').innerHTML = "Upload it!";
document.getElementById('upload_button').disabled = false;
}
}
$('.file-upload').bind('change', checkFileUpload);
}
$('.text-upload').css('height', '100px');
$('.text-upload').bind('blur', function() {
$('.text-upload').animate({height: "100px"}, 300);
});
$('.text-upload').bind('focus', function() {
$('.text-upload').animate({height: "300px"}, 300);
});
// work around to submit the form if the click causes the
// textarea to shrink and you can't relase the mouse fast enough
// so mouseup will be outside the button area and not trigger
// submission properly
$('.text-upload-form :submit').bind('mousedown', function() {
$(this).click();
});
});
})(jQuery);
|