|
|
$('input[name=image]').wrap($('<div class="file_wrap"></div>'));
|
|
|
|
|
|
$('body').on('change', 'input[name=image]', function(event) {
|
|
|
var file = event.target.files[0];
|
|
|
|
|
|
if(file.type.match('image.*')) {
|
|
|
var fileReader = new FileReader();
|
|
|
|
|
|
fileReader.addEventListener("load", function(event) {
|
|
|
var wrapper = $('.file_wrap');
|
|
|
|
|
|
wrapper.find('.file-thumb').remove();
|
|
|
wrapper.append(
|
|
|
$('<div class="file-thumb" style="background-image: url('+event.target.result+')"></div>')
|
|
|
);
|
|
|
});
|
|
|
|
|
|
fileReader.readAsDataURL(file);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
var form = $('#form');
|
|
|
$('textarea').keypress(function(event) {
|
|
|
if (event.which == 13 && event.ctrlKey) {
|
|
|
form.find('input[type=submit]').click();
|
|
|
}
|
|
|
});
|
|
|
|
|
|
$('#preview-button').click(function() {
|
|
|
var data = {
|
|
|
raw_text: $('textarea').val()
|
|
|
}
|
|
|
|
|
|
var diffUrl = '/api/preview/';
|
|
|
|
|
|
$.post(diffUrl,
|
|
|
data,
|
|
|
function(data) {
|
|
|
var previewTextBlock = $('#preview-text');
|
|
|
previewTextBlock.html(data);
|
|
|
previewTextBlock.show();
|
|
|
})
|
|
|
});
|
|
|
|
|
|
/**
|
|
|
* Show text in the errors row of the form.
|
|
|
* @param form
|
|
|
* @param text
|
|
|
*/
|
|
|
function showAsErrors(form, text) {
|
|
|
form.children('.form-errors').remove();
|
|
|
|
|
|
if (text.length > 0) {
|
|
|
var errorList = $('<div class="form-errors">' + text + '<div>');
|
|
|
errorList.appendTo(form);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
function addHiddenInput(form, name, value) {
|
|
|
form.find('input[name=' + name + ']').val(value);
|
|
|
}
|
|
|
|
|
|
$(document).ready(function() {
|
|
|
var powDifficulty = parseInt($('body').attr('data-pow-difficulty'));
|
|
|
if (powDifficulty > 0) {
|
|
|
var worker = new Worker($('#powScript').attr('src'));
|
|
|
worker.onmessage = function(e) {
|
|
|
var form = $('#form');
|
|
|
addHiddenInput(form, 'timestamp', e.data.timestamp);
|
|
|
addHiddenInput(form, 'iteration', e.data.iteration);
|
|
|
addHiddenInput(form, 'guess', e.data.guess);
|
|
|
|
|
|
form.submit();
|
|
|
form.find('input[type=submit]').toggle();
|
|
|
};
|
|
|
|
|
|
var form = $('#form');
|
|
|
var submitButton = form.find('input[type=submit]');
|
|
|
submitButton.click(function() {
|
|
|
showAsErrors(form, gettext('Computing PoW...'));
|
|
|
submitButton.toggle();
|
|
|
|
|
|
var msg = $('textarea').val().trim();
|
|
|
|
|
|
var data = {
|
|
|
msg: msg,
|
|
|
difficulty: parseInt($('body').attr('data-pow-difficulty')),
|
|
|
hasher: $('#sha256Script').attr('src')
|
|
|
};
|
|
|
worker.postMessage(data);
|
|
|
|
|
|
return false;
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
|