Refactor JS.

This commit is contained in:
Lars Jung 2014-06-21 00:36:44 +02:00
parent 922f83357f
commit 2caaccabc0
8 changed files with 48 additions and 72 deletions

View file

@ -1,10 +1,13 @@
modulejs.define('ext/custom', ['_', '$', 'core/settings', 'core/server', 'core/event', 'core/resource'], function (_, $, allsettings, server, event, resource) {
modulejs.define('ext/custom', ['_', '$', 'markdown', 'core/settings', 'core/server', 'core/event', 'core/resource'], function (_, $, markdown, allsettings, server, event, resource) {
var settings = _.extend({
enabled: false
}, allsettings.custom),
$header, $footer,
duration = 200,
onLocationChanged = function (item) {
server.request({action: 'get', custom: true, customHref: item.absHref}, function (response) {
@ -12,35 +15,32 @@ modulejs.define('ext/custom', ['_', '$', 'core/settings', 'core/server', 'core/e
var has_header, has_footer, data, content;
if (response) {
resource.ensureMarkdown(function (md) {
data = response.custom;
data = response.custom;
if (data.header) {
content = data.header;
if (md && data.header_type === 'md') {
content = md.toHTML(content);
}
$('#content-header').html(content).stop().slideDown(200);
has_header = true;
if (data.header) {
content = data.header;
if (data.header_type === 'md') {
content = markdown.toHTML(content);
}
$header.html(content).stop().slideDown(duration);
has_header = true;
}
if (data.footer) {
content = data.footer;
if (md && data.footer_type === 'md') {
content = md.toHTML(content);
}
$('#content-footer').html(content).stop().slideDown(200);
has_footer = true;
if (data.footer) {
content = data.footer;
if (data.footer_type === 'md') {
content = markdown.toHTML(content);
}
});
$footer.html(content).stop().slideDown(duration);
has_footer = true;
}
}
if (!has_header) {
$('#content-header').stop().slideUp(200);
$header.stop().slideUp(duration);
}
if (!has_footer) {
$('#content-footer').stop().slideUp(200);
$footer.stop().slideUp(duration);
}
});
},
@ -51,8 +51,8 @@ modulejs.define('ext/custom', ['_', '$', 'core/settings', 'core/server', 'core/e
return;
}
$('<div id="content-header"/>').hide().prependTo('#content');
$('<div id="content-footer"/>').hide().appendTo('#content');
$header = $('<div id="content-header"/>').hide().prependTo('#content');
$footer = $('<div id="content-footer"/>').hide().appendTo('#content');
event.sub('location.changed', onLocationChanged);
};

View file

@ -1,5 +1,5 @@
modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'core/resource', 'ext/preview'], function (_, $, allsettings, event, resource, preview) {
modulejs.define('ext/preview-txt', ['_', '$', 'markdown', 'core/settings', 'core/event', 'core/resource', 'ext/preview'], function (_, $, markdown, allsettings, event, resource, preview) {
var settings = _.extend({
enabled: false,
@ -106,14 +106,7 @@ modulejs.define('ext/preview-txt', ['_', '$', 'core/settings', 'core/event', 'co
} else if (settings.types[currentItem.type] === 'markdown') {
$text = $(templateMarkdown).text(textContent);
resource.ensureMarkdown(function (md) {
if (md) {
$text.html(md.toHTML(textContent));
}
});
$text = $(templateMarkdown).html(markdown.toHTML(textContent));
} else {
$text = $(templateText).text(textContent);

View file

@ -1,5 +1,5 @@
modulejs.define('ext/qrcode', ['_', '$', 'modernizr', 'core/settings', 'core/event', 'core/resource'], function (_, $, modernizr, allsettings, event, resource) {
modulejs.define('ext/qrcode', ['_', '$', 'modernizr', 'core/settings', 'core/event'], function (_, $, modernizr, allsettings, event) {
var settings = _.extend({
enabled: false,
@ -12,15 +12,13 @@ modulejs.define('ext/qrcode', ['_', '$', 'modernizr', 'core/settings', 'core/eve
update = function (item) {
resource.ensureQRCode(function () {
$qrcode.empty().qrcode({
render: modernizr.canvas ? 'canvas' : 'div',
width: settings.size,
height: settings.size,
color: '#333',
bgColor: '#fff',
text: window.location.protocol + '//' + window.location.host + item.absHref
});
$qrcode.empty().qrcode({
render: modernizr.canvas ? 'canvas' : 'div',
width: settings.size,
height: settings.size,
color: '#333',
bgColor: '#fff',
text: window.location.protocol + '//' + window.location.host + item.absHref
});
},