/** * @file modules/board/js/board.js * @author NHN (developers@xpressengine.com) * @brief board 모듈의 javascript **/ /* complete tp insert document */ function completeDocumentInserted(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; var mid = ret_obj.mid; var document_srl = ret_obj.document_srl; var category_srl = ret_obj.category_srl; if (ret_obj.redirect_url) { redirect(ret_obj.redirect_url); } else { var url; if(!document_srl) { url = current_url.setQuery('mid',mid).setQuery('act',''); } else { url = current_url.setQuery('mid',mid).setQuery('document_srl',document_srl).setQuery('act',''); } if(category_srl) url = url.setQuery('category',category_srl); redirect(url); } } /* delete the document */ function completeDeleteDocument(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; var mid = ret_obj.mid; var page = ret_obj.page; var url = current_url.setQuery('mid',mid).setQuery('act','').setQuery('document_srl',''); if(page) url = url.setQuery('page',page); redirect(url); } /* document search */ function completeSearch(ret_obj, response_tags, params, fo_obj) { fo_obj.submit(); } function completeVote(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; redirect(window.location.href); } // current page reload function completeReload(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; redirect(window.location.href); } /* complete to insert comment*/ function completeInsertComment(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; var mid = ret_obj.mid; var document_srl = ret_obj.document_srl; var comment_srl = ret_obj.comment_srl; if (ret_obj.redirect_url) { redirect(ret_obj.redirect_url); } else { var url = current_url.setQuery('mid',mid).setQuery('document_srl',document_srl).setQuery('act',''); if (comment_srl) url = url.setQuery('comment_srl',comment_srl)+"#comment_"+comment_srl; redirect(url); } } /* delete the comment */ function completeDeleteComment(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; var mid = ret_obj.mid; var document_srl = ret_obj.document_srl; var page = ret_obj.page; if (ret_obj.redirect_url) { redirect(ret_obj.redirect_url); } else { var url = current_url.setQuery('mid',mid).setQuery('document_srl',document_srl).setQuery('act',''); if (page) url = url.setQuery('page',page); redirect(url); } } /* delete the trackback */ function completeDeleteTrackback(ret_obj) { var error = ret_obj.error; var message = ret_obj.message; var mid = ret_obj.mid; var document_srl = ret_obj.document_srl; var page = ret_obj.page; if (ret_obj.redirect_url) { redirect(ret_obj.redirect_url); } else { var url = current_url.setQuery('mid',mid).setQuery('document_srl',document_srl).setQuery('act',''); if (page) url = url.setQuery('page',page); redirect(url); } } /* change category */ function doChangeCategory() { var category_srl = jQuery('#board_category option:selected').val(); location.href = decodeURI(current_url).setQuery('category',category_srl).setQuery('page', ''); } /* scrap */ function doScrap(document_srl) { var params = []; params.document_srl = document_srl; jQuery.exec_json('member.procMemberScrapDocument', params); } jQuery(function($){ /* remove comment_srl and unnecessary page number from short URL */ var match = location.pathname.match(/\/([a-zA-Z0-9_]+)\/([0-9]+)\/(comment|page)\/([0-9]+)$/); if (match && match[1] === window.current_mid) { var newpath = location.pathname.replace(/\/(comment|page)\/([0-9]+)$/, ''); if (location.hash && location.hash !== '#') { newpath += location.hash; } if (history.replaceState) { history.replaceState({ rx_replaced: true, prev: location.pathname, }, '', newpath); } } $(document.body).click(function(e){ var t = $(e.target), act, params = {}; if(t.parents('.layer_voted_member').length === 0 && !t.is('.layer_voted_member')){ $('.layer_voted_member').hide().remove(); } if(!t.is('a[class^=voted_member_]')) return; var srl = parseInt(t.attr('class').replace(/[^0-9]/g,'')); if(!srl) return; if(t.hasClass('comment')){ act = 'comment.getCommentVotedMemberList'; params = {'comment_srl':srl,'point':(t.hasClass('votedup')?1:-1)}; }else{ act = 'document.getDocumentVotedMemberList'; params = {'document_srl':srl,'point':(t.hasClass('votedup')?1:-1)}; } $.exec_json(act, params, function(data){ var l = data.voted_member_list; var ul = []; if(!l || l.length === 0) return; $.each(l,function(){ ul.push(this.nick_name); }); t.after($('