Lidarr/UI/Shared/TemplateHelpers.js

44 lines
1.5 KiB
JavaScript
Raw Normal View History

2013-06-22 06:24:24 +00:00
'use strict';
2013-06-07 02:39:12 +00:00
2013-06-21 01:43:58 +00:00
define(['app','handlebars','Shared/FormatHelpers'], function (App,Handlebars) {
2013-06-07 02:39:12 +00:00
Handlebars.registerHelper('partial', function (templateName) {
//TODO: We should be able to pass in the context, either an object or a property
var templateFunction = Marionette.TemplateCache.get(templateName);
return new Handlebars.SafeString(templateFunction(this));
});
2013-06-22 06:24:24 +00:00
Handlebars.registerHelper('debug', function (optionalValue) {
console.log('Current Context');
console.log('====================');
2013-06-07 02:39:12 +00:00
console.log(this);
if (optionalValue) {
2013-06-22 06:24:24 +00:00
console.log('Value');
console.log('====================');
2013-06-07 02:39:12 +00:00
console.log(optionalValue);
}
});
2013-06-22 06:24:24 +00:00
Handlebars.registerHelper('fileSize', function (size) {
2013-06-07 14:34:54 +00:00
return new Handlebars.SafeString(NzbDrone.Shared.FormatHelpers.FileSizeHelper(size));
2013-06-07 02:39:12 +00:00
});
2013-06-22 06:24:24 +00:00
Handlebars.registerHelper('date', function (date) {
2013-06-07 02:39:12 +00:00
//TODO: show actual date in tooltip
if (!date) {
return '';
}
var shortDate = Date.create(date).short();
var formattedDate = NzbDrone.Shared.FormatHelpers.DateHelper(date);
2013-06-22 06:24:24 +00:00
var result = '<span title='' + shortDate + ''>' + formattedDate + '</span>';
2013-06-07 02:39:12 +00:00
return new Handlebars.SafeString(result);
});
Handlebars.registerHelper('defaultImg', function () {
2013-06-22 06:24:24 +00:00
return new Handlebars.SafeString('onerror='this.src=\'/content/images/poster-dark.jpg\';'');
});
});