// ==UserScript== // @name CHH一键评分 // @namespace https://reeye.cn/ // @version 0.2.1 // @description 摆脱散分时的痛苦 // @author Reeye // @match https://www.chiphell.com/thread-*.html // @match https://www.chiphell.com/forum.php?mod=viewthread&tid=* // @grant none // @downloadURL none // ==/UserScript== (function() { 'use strict'; let body = document.getElementsByTagName('body')[0] let scoreScript = document.createElement('script') scoreScript.innerHTML = `function oneKeyScore() { let $$ = window.jQuery; let currentUser = $$('#um .vwmy>a').text(); let args = { ghost: $$('#reeye_ghost').is(":checked"), angel: $$('#reeye_angel').is(":checked"), demon: $$('#reeye_demon').is(":checked"), score: $$('#reeye_score').val(), reason: $$('#reeye_reason').val(), sendreasonpm: $$('#reeye_sendreasonpm').is(":checked"), }; let matcher = window.location.href.match(/thread-(\\d*)-(\\d*)/) || window.location.href.match(/tid=(\\d*)&page=(\\d*)/); let tid = matcher[1]; let page = matcher[2]; let array = []; let postlist = $$('#postlist>div[id^="post_"]'); for (let i = 0; i < postlist.length; i++) { let post = postlist[i]; let pid = $$(post).attr('id').match(/post_(\\d*)/)[1]; let postUser = { id: $$('#favatar' + pid + '>.pi>.authi>a').text(), level: $$('#favatar' + pid + ' a[href^="home.php?mod=spacecp&ac=usergroup&gid="]').text() }; if (array.indexOf(postUser.id) === -1) { array.push(postUser.id); } else { continue; } if (((args.ghost && postUser.level === '亡灵') || (args.angel && postUser.level.indexOf('天使') > -1) || (args.ghost && args.angel && args.demon)) && postUser.id != currentUser) { $$('#result').show(); $$.ajax({ type: 'GET', url: 'https://www.chiphell.com/forum.php?mod=misc&action=rate&tid=' + tid + '&pid=' + pid + '&infloat=yes&handlekey=rate&t=' + new Date().getTime() + '&inajax=1&ajaxtarget=fwin_content_rate', dataType: 'text', success: function(data) { let formhash = data.match(/name="formhash"\\s+value="(\\w+)"/)[1]; $$.ajax({ type: 'GET', url: 'https://www.chiphell.com/forum.php?mod=misc&action=viewratings&tid=' + tid + '&pid=' + pid + '&infloat=yes&handlekey=viewratings&inajax=1&ajaxtarget=fwin_content_viewratings', dataType: 'text', success: function(data) { if (data.indexOf(currentUser) === -1) { $$.ajax({ type: 'POST', url: 'https://www.chiphell.com/forum.php?mod=misc&action=rate&ratesubmit=yes&infloat=yes&inajax=1', dataType: 'text', data: { formhash: formhash, tid: tid, pid: pid, referer: 'https://www.chiphell.com/forum.php?mod=viewthread&tid=' + tid + '&page=' + page + '#pid' + pid, score1: args.score, reason: args.reason, sendreasonpm: args.sendreasonpm ? 'on' : '' }, success: function(data) { if (data.indexOf('感谢') > -1) { $$('#result').append('' + postUser.id + ' '); } }, error: function(error) { console.log(error); } }) } }, error: function(error) { console.log(error); } }); }, error: function(error) { console.log(error); } }); } } }` body.appendChild(scoreScript) let $$ = window.jQuery let canScore = $$('#ak_rate') ? true : false if (canScore) { let scoreBtn = '' $$('#scrolltop').append(scoreBtn) $$('#scoreSpan').hover(function() { $$('#scoreSpan>a').css('filter', 'none') }, function() { $$('#scoreSpan>a').css('filter', 'grayscale(1)') }) $$('#scoreSpan').click(function() { }) $$('#scoreSpan').click(function() { if ($$('#fwin_rate').length > 0) { $$('#fwin_rate').remove() } else { $$('#append_parent').append(`
`) $$('#fwin_rate').css('left', (window.innerWidth - $$('#fwin_rate').width()) / 2 + 'px').css('top', (window.innerHeight - $$('#fwin_rate').height()) / 2 + 'px') } }) } })();