diff --git a/public/src/components.js b/public/src/components.js index fe3fcec1fa..550ef1e539 100644 --- a/public/src/components.js +++ b/public/src/components.js @@ -4,23 +4,26 @@ var components = components || {}; (function() { components.core = { + 'post': function(name, value) { + return $('[data-' + name + '="' + value + '"]'); + }, 'post/content': function(pid) { - var el = $('[data-pid="' + pid + '"]').find('[component="post/content"]'); + var el = components.core.post('pid', pid).find('[component="post/content"]'); return el.length ? el : $('#content_' + pid); // deprecated after 0.7x }, 'post/header': function(pid) { - var el = $('[data-pid="' + pid + '"]').find('[component="post/header"]'); + var el = components.core.post('pid', pid).find('[component="post/header"]'); return el.length ? el : $('#topic_title_' + pid); // deprecated after 0.7x }, - 'post/anchor': function(pid) { - var el = $('[data-pid="' + pid + '"]').find('[component="post/anchor"]'); - return el.length ? el : $('#post_anchor_' + pid); // deprecated after 0.7x + 'post/anchor': function(index) { + var el = components.core.post('index', index).find('[component="post/anchor"]'); + return el.length ? el : $('#post_anchor_' + index); // deprecated after 0.7x } }; components.get = function() { var args = Array.prototype.slice.call(arguments, 1); - + if (components.core[arguments[0]]) { return components.core[arguments[0]].apply(this, args); } else {