diff --git a/templates/index.html.ep b/templates/index.html.ep
index 45d0624..85c7024 100644
--- a/templates/index.html.ep
+++ b/templates/index.html.ep
@@ -131,243 +131,4 @@
-%= javascript begin
- function link(url, dl, token, modify) {
- if (token !== undefined) {
- if (modify !== undefined && modify === true) {
- return '<%== url_for('/m/')->to_abs() %>'+url+'/'+token;
- } else {
- url = 'd/'+url+'/'+token;
- }
- } else if (dl !== '') {
- url = url+'?'+dl;
- }
- return '<%== url_for('/')->to_abs() %>'+url+'';
- }
- function share(url) {
- console.log(url);
- new MozActivity({
- name: "share",
- data: {
- type: "url",
- number: 1,
- url: url
- }
- });
- }
- function tw_url(url) {
- var btn = ' ';
- if (navigator.mozSetMessageHandler !== undefined) {
- btn = btn+' ';
- }
- return btn
- }
- function modify(url, short) {
- $.ajax({
- url : url,
- type : "POST",
- data : {
- 'image_url' : '<%== url_for('/')->to_abs() %>'+short,
- 'format' : 'json',
- 'first-view' : ($("#first-view-"+short).prop('checked')) ? 1 : 0,
- 'delete-day' : $("#day-"+short).val()
- },
- success: function(data) {
- alert(data.msg);
- },
- error: function() {
- alert('<%= l('Error while trying to modify the image.') %>');
- }
- });
- }
- function build_message(success, msg) {
- if(success) {
- var thumb = (msg.thumb !== null) ? '
' : ''
- return '
'
- +thumb
- +'
'
- +msg.filename
- +''
- +tw_url(msg.short)
- +'
- '
- +link(msg.short, '')
- +'
- '
- +link(msg.short, 'dl')
- +'
- '
- +link(msg.short, 't')
- +'
- '
- +link(msg.real_short, '', msg.token)
- +'
'
- +'
';
- } else {
- return '
<%= l('Something bad happened') %>
'
- +msg.filename
- +"
"
- +msg.msg
- +'
';
- }
- }
- function bindddz(firstview, deleteday) {
- $('#drag-and-drop-zone').dmUploader({
- url: '<%== url_for('/') %>',
- dataType: 'json',
- allowedTypes: 'image/*',
- maxFileSize: <%= $max_file_size %>,
- onNewFile: function(id, file){
- $(".messages").append('
');
- },
- onUploadProgress: function(id, percent){
- var percentStr = ' '+percent+'%';
- $('#'+id).prop('aria-valuenow', percent);
- $('#'+id).prop('style', 'width: '+percent+'%;');
- $('#'+id+'-text').html(percentStr);
- },
- onUploadSuccess: function(id, data){
- $('#'+id+'-div').remove();
- $(".messages").append(build_message(data.success, data.msg));
- },
- onUploadError: function(id, message){
- $(".messages").append(build_message(false, ''));
- },
- onFileSizeError: function(file){
- $(".messages").append(build_message(false, { filename: file.name, msg: '<%= l('The file exceed the size limit (%1)', $max_file_size) %>'}));
- }
- });
- }
-
- function upload_url() {
- var val = $("#lutim-file-url").val();
- if (val !== undefined && val !== "") {
- $("#lutim-file-url").prop('disabled', 'disabled');
- $(".hidden-spin").css('display', 'block');
- console.log(val);
- $.ajax({
- url : '<%== url_for('/') %>',
- type : "POST",
- data : {
- 'lutim-file-url' : val,
- 'format' : 'json',
- 'first-view' : ($("#first-view").prop('checked')) ? 1 : 0,
- 'crypt' : ($("#crypt").prop('checked')) ? 1 : 0,
- 'delete-day' : $("#delete-day").val()
- },
- success: function(data) {
- $(".messages").append(build_message(data.success, data.msg));
- if (data.success) {
- $("#lutim-file-url").val('');
- }
- },
- error: function() {
- $(".messages").append(build_message(false, ''));
- },
- complete: function() {
- $("#lutim-file-url").prop('disabled', '');
- $(".hidden-spin").css('display', 'none');
- }
- });
- } else {
- console.log("fhdsjnf");
- }
- }
-
- function fileUpload(file) {
- var fd = new FormData();
- fd.append('file', file);
-
- fd.append('format', 'json');
- fd.append('first-view', ($("#first-view").prop('checked')) ? 1 : 0);
- fd.append('crypt', ($("#crypt").prop('checked')) ? 1 : 0);
- fd.append('delete-day', ($("#delete-day").val()));
-
- $(".messages").append('
');
- // Ajax Submit
- $.ajax({
- url: '<%== url_for('/') %>',
- type: 'POST',
- dataType: 'json',
- data: fd,
- cache: false,
- contentType: false,
- processData: false,
- forceSync: false,
- xhr: function(){
- var xhrobj = $.ajaxSettings.xhr();
- if(xhrobj.upload){
- xhrobj.upload.addEventListener('progress', function(event) {
- var percent = 0;
- var position = event.loaded || event.position;
- var total = event.total || e.totalSize;
- if(event.lengthComputable){
- percent = Math.ceil(position / total * 100);
- }
-
- var percentStr = ' '+percent+'%';
- $('#1').prop('aria-valuenow', percent);
- $('#1').prop('style', 'width: '+percent+'%;');
- $('#1-text').html(percentStr);
- }, false);
- }
-
- return xhrobj;
- },
- success: function (data, message, xhr){
- $('#1-div').remove();
- $(".messages").append(build_message(data.success, data.msg));
- },
- error: function (xhr, status, errMsg){
- $(".messages").append(build_message(false, ''));
- },
- });
- }
- window.onload = function() {
- if (navigator.mozSetMessageHandler !== undefined) {
- navigator.mozSetMessageHandler('activity', function handler(activityRequest) {
- var activityName = activityRequest.source.name;
- if (activityName == 'share') {
- activity = activityRequest;
- blob = activity.source.data.blobs[0];
- fileUpload(blob);
- }
- });
- }
- };
- $('document').ready(function() {
- var firstview = ($("#first-view").prop('checked')) ? 1 : 0;
- var deleteday = ($("#delete-day").prop('checked')) ? 1 : 0;
-
- bindddz(firstview, deleteday);
-
- $("#file-url-button").on("click", upload_url);
- $('#lutim-file-url').keydown( function(e) {
- var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
- if(key == 13) {
- e.preventDefault();
- upload_url();
- }
- });
- });
-% end
+%= include 'partial/lutim', format => 'js', d => \%d
diff --git a/templates/partial/lutim.js.ep b/templates/partial/lutim.js.ep
new file mode 100644
index 0000000..cb4e4d9
--- /dev/null
+++ b/templates/partial/lutim.js.ep
@@ -0,0 +1,241 @@
+% # vim:set sw=4 ts=4 sts=4 ft=javascript expandtab:
+%= javascript begin
+ function link(url, dl, token, modify) {
+ if (token !== undefined) {
+ if (modify !== undefined && modify === true) {
+ return '<%== url_for('/m/')->to_abs() %>'+url+'/'+token;
+ } else {
+ url = 'd/'+url+'/'+token;
+ }
+ } else if (dl !== '') {
+ url = url+'?'+dl;
+ }
+ return '
<%== url_for('/')->to_abs() %>'+url+'';
+ }
+ function share(url) {
+ console.log(url);
+ new MozActivity({
+ name: "share",
+ data: {
+ type: "url",
+ number: 1,
+ url: url
+ }
+ });
+ }
+ function tw_url(url) {
+ var btn = '
';
+ if (navigator.mozSetMessageHandler !== undefined) {
+ btn = btn+'
';
+ }
+ return btn
+ }
+ function modify(url, short) {
+ $.ajax({
+ url : url,
+ type : "POST",
+ data : {
+ 'image_url' : '<%== url_for('/')->to_abs() %>'+short,
+ 'format' : 'json',
+ 'first-view' : ($("#first-view-"+short).prop('checked')) ? 1 : 0,
+ 'delete-day' : $("#day-"+short).val()
+ },
+ success: function(data) {
+ alert(data.msg);
+ },
+ error: function() {
+ alert('<%= l('Error while trying to modify the image.') %>');
+ }
+ });
+ }
+ function build_message(success, msg) {
+ if(success) {
+ var thumb = (msg.thumb !== null) ? '

' : ''
+ return '
'
+ +thumb
+ +'
'
+ +msg.filename
+ +''
+ +tw_url(msg.short)
+ +'
- '
+ +link(msg.short, '')
+ +'
- '
+ +link(msg.short, 'dl')
+ +'
- '
+ +link(msg.short, 't')
+ +'
- '
+ +link(msg.real_short, '', msg.token)
+ +'
'
+ +'
';
+ } else {
+ return '
<%= l('Something bad happened') %>
'
+ +msg.filename
+ +"
"
+ +msg.msg
+ +'
';
+ }
+ }
+ function bindddz(firstview, deleteday) {
+ $('#drag-and-drop-zone').dmUploader({
+ url: '<%== url_for('/') %>',
+ dataType: 'json',
+ allowedTypes: 'image/*',
+ maxFileSize: <%= $max_file_size %>,
+ onNewFile: function(id, file){
+ $(".messages").append('
');
+ },
+ onUploadProgress: function(id, percent){
+ var percentStr = ' '+percent+'%';
+ $('#'+id).prop('aria-valuenow', percent);
+ $('#'+id).prop('style', 'width: '+percent+'%;');
+ $('#'+id+'-text').html(percentStr);
+ },
+ onUploadSuccess: function(id, data){
+ $('#'+id+'-div').remove();
+ $(".messages").append(build_message(data.success, data.msg));
+ },
+ onUploadError: function(id, message){
+ $(".messages").append(build_message(false, ''));
+ },
+ onFileSizeError: function(file){
+ $(".messages").append(build_message(false, { filename: file.name, msg: '<%= l('The file exceed the size limit (%1)', $max_file_size) %>'}));
+ }
+ });
+ }
+
+ function upload_url() {
+ var val = $("#lutim-file-url").val();
+ if (val !== undefined && val !== "") {
+ $("#lutim-file-url").prop('disabled', 'disabled');
+ $(".hidden-spin").css('display', 'block');
+ console.log(val);
+ $.ajax({
+ url : '<%== url_for('/') %>',
+ type : "POST",
+ data : {
+ 'lutim-file-url' : val,
+ 'format' : 'json',
+ 'first-view' : ($("#first-view").prop('checked')) ? 1 : 0,
+ 'crypt' : ($("#crypt").prop('checked')) ? 1 : 0,
+ 'delete-day' : $("#delete-day").val()
+ },
+ success: function(data) {
+ $(".messages").append(build_message(data.success, data.msg));
+ if (data.success) {
+ $("#lutim-file-url").val('');
+ }
+ },
+ error: function() {
+ $(".messages").append(build_message(false, ''));
+ },
+ complete: function() {
+ $("#lutim-file-url").prop('disabled', '');
+ $(".hidden-spin").css('display', 'none');
+ }
+ });
+ } else {
+ console.log("fhdsjnf");
+ }
+ }
+
+ function fileUpload(file) {
+ var fd = new FormData();
+ fd.append('file', file);
+
+ fd.append('format', 'json');
+ fd.append('first-view', ($("#first-view").prop('checked')) ? 1 : 0);
+ fd.append('crypt', ($("#crypt").prop('checked')) ? 1 : 0);
+ fd.append('delete-day', ($("#delete-day").val()));
+
+ $(".messages").append('
');
+ // Ajax Submit
+ $.ajax({
+ url: '<%== url_for('/') %>',
+ type: 'POST',
+ dataType: 'json',
+ data: fd,
+ cache: false,
+ contentType: false,
+ processData: false,
+ forceSync: false,
+ xhr: function(){
+ var xhrobj = $.ajaxSettings.xhr();
+ if(xhrobj.upload){
+ xhrobj.upload.addEventListener('progress', function(event) {
+ var percent = 0;
+ var position = event.loaded || event.position;
+ var total = event.total || e.totalSize;
+ if(event.lengthComputable){
+ percent = Math.ceil(position / total * 100);
+ }
+
+ var percentStr = ' '+percent+'%';
+ $('#1').prop('aria-valuenow', percent);
+ $('#1').prop('style', 'width: '+percent+'%;');
+ $('#1-text').html(percentStr);
+ }, false);
+ }
+
+ return xhrobj;
+ },
+ success: function (data, message, xhr){
+ $('#1-div').remove();
+ $(".messages").append(build_message(data.success, data.msg));
+ },
+ error: function (xhr, status, errMsg){
+ $(".messages").append(build_message(false, ''));
+ },
+ });
+ }
+ window.onload = function() {
+ if (navigator.mozSetMessageHandler !== undefined) {
+ navigator.mozSetMessageHandler('activity', function handler(activityRequest) {
+ var activityName = activityRequest.source.name;
+ if (activityName == 'share') {
+ activity = activityRequest;
+ blob = activity.source.data.blobs[0];
+ fileUpload(blob);
+ }
+ });
+ }
+ };
+ $('document').ready(function() {
+ var firstview = ($("#first-view").prop('checked')) ? 1 : 0;
+ var deleteday = ($("#delete-day").prop('checked')) ? 1 : 0;
+
+ bindddz(firstview, deleteday);
+
+ $("#file-url-button").on("click", upload_url);
+ $('#lutim-file-url').keydown( function(e) {
+ var key = e.charCode ? e.charCode : e.keyCode ? e.keyCode : 0;
+ if(key == 13) {
+ e.preventDefault();
+ upload_url();
+ }
+ });
+ });
+% end