0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-03-11 02:12:21 -05:00

Merge branch 'ffc-fix' into version-0.2.0

This commit is contained in:
Hannah Wolfe 2013-07-07 19:41:28 +01:00
commit 605cd85f0b
2 changed files with 33 additions and 21 deletions

View file

@ -1,16 +1,11 @@
var _ = require('underscore');
var fancyFirstChar; var fancyFirstChar;
fancyFirstChar = { function fancify(originalContent) {
init: function (ghost) { var newContent,
ghost.registerFilter('prePostsRender', function (posts) {
var post,
originalContent,
newContent,
firstCharIndex = 0; firstCharIndex = 0;
for (post in posts) {
if (posts.hasOwnProperty(post)) {
originalContent = posts[post].content_html;
if (originalContent.substr(0, 1) === '<') { if (originalContent.substr(0, 1) === '<') {
firstCharIndex = originalContent.indexOf('>') + 1; firstCharIndex = originalContent.indexOf('>') + 1;
} }
@ -21,9 +16,21 @@ fancyFirstChar = {
newContent += '</span>'; newContent += '</span>';
newContent += originalContent.substr(firstCharIndex + 1, originalContent.length - firstCharIndex - 1); newContent += originalContent.substr(firstCharIndex + 1, originalContent.length - firstCharIndex - 1);
posts[post].content_html = newContent; return newContent;
} }
fancyFirstChar = {
init: function (ghost) {
ghost.registerFilter('prePostsRender', function (posts) {
if (_.isArray(posts)) {
_.each(posts, function (post) {
post.content_html = fancify(post.content_html);
});
} else if (posts.hasOwnProperty('content_html')) {
posts.content_html = fancify(posts.content_html);
} }
return posts; return posts;
}); });
}, },

View file

@ -234,7 +234,12 @@ Ghost.prototype.doFilter = function (name, args, callback) {
// Call each handler for this priority level // Call each handler for this priority level
_.each(callbacks[priority], function (filterHandler) { _.each(callbacks[priority], function (filterHandler) {
try {
args = filterHandler(args); args = filterHandler(args);
} catch (e) {
// If a filter causes an error, we log it so that it can be debugged, but do not throw the error
errors.logError(e);
}
}); });
}); });