diff options
Diffstat (limited to 'src/public/js')
-rw-r--r-- | src/public/js/lib.js | 16 | ||||
-rw-r--r-- | src/public/js/post.js | 21 |
2 files changed, 35 insertions, 2 deletions
diff --git a/src/public/js/lib.js b/src/public/js/lib.js index 19019ad..95f83b7 100644 --- a/src/public/js/lib.js +++ b/src/public/js/lib.js @@ -13,7 +13,8 @@ var $$ = (selector) => { 'click', 'submit', 'each', - 'error' + 'error', + 'one' ]; let vtable = {}; @@ -46,9 +47,9 @@ var $$ = (selector) => { let config = { childList: true, subtree: true }; let MutationObserver = window.MutationObserver; let observer = new MutationObserver(onMutate); + observer.observe(document.body, config); }); - }; } @@ -121,3 +122,14 @@ $.ajaxSetup({ })(), error: errorToastAjax }) + +var onImgLoad = function(me) { + me.parentElement.classList.remove('image-loading'); + me.parentElement.classList.add('image-loaded'); +} + +var onImgError = function(me) { + me.parentElement.classList.remove('image-loading'); + me.parentElement.classList.add('image-loaded'); + me.remove(); +} diff --git a/src/public/js/post.js b/src/public/js/post.js index 38bbb78..3c03bae 100644 --- a/src/public/js/post.js +++ b/src/public/js/post.js @@ -45,8 +45,15 @@ $$('#action-load-posts').on('click', function() { let pageSize = Number(me.attr('pageSize')); let postCount = Number(me.attr('postCount')); let postMax = Number(me.attr('postMax')); + let filterUid = me.attr('userId'); let url = '/_util/post/posts?page=' + page + '&max=' + postMax; + + if (!isNaN(filterUid)) { + console.log(filterUid); + url += '&user_id=' + filterUid; + } + $.get(url, function (data) { if (data === '') { me.remove(); @@ -101,13 +108,27 @@ $$('.action-like').on('click', function() { let like_id = me.attr('likeId'); let post_id = me.attr('postId'); + const updateLiked = (liked) => { + let post = me.closest('.post'); + let likes = post.find('.likes'); + let count = likes.find('.count'); + + let c = Number(count[0].textContent); + c += liked ? 1 : -1; + count[0].textContent = c; + } + const onPatch = () => { + let liked = me.hasClass('btn-blue'); me.toggleClass('btn-blue'); + updateLiked(!liked); } const onPost = (data) => { + let liked = me.hasClass('btn-blue'); me.attr('likeId', data[0].id + ''); me.toggleClass('btn-blue'); + updateLiked(!liked); } if (like_id) { |