夜间模式,显示当前Cookie,Po主变色等
// ==UserScript==
// @name A岛-PLUS adnmb
// @namespace adplus_ccq
// @version 0.6.5
// @description 夜间模式,显示当前Cookie,Po主变色等
// @author ccq
// @match https://adnmb*.com/t/*
// @match https://adnmb*.com/f/*
// @include http*://adnmb*.com/*
// @match https://adnmb.com/
// @match https://adnmb*.com/Member/User/Cookie/index.html
// @match https://adnmb3.com/t/*
// @match https://adnmb3.com/f/*
// @match https://adnmb3.com/Forum
// @match https://adnmb3.com/Member/User/Cookie/index.html
// @grant GM_setValue
// @grant GM_getValue
// @note https://github.com/chucongqing/greasy_scripts/edit/master/adplus.js
// ==/UserScript==
'use strict';
var darkCfg ={
bodyBg:'#1d1f21',
textAreaBg: '#282a2e',
fontColor: '#c5c8c6',
centreBg: '#2B2B2B',
threadPoBg:'#323237' //"#3A3A42"
}
var defaultCfg = {
}
const Theme = {
Default : 0,
Dark : 1
}
let theme = Theme.Default
function dark_mode(){
var config = darkCfg
var cfg = {}
cfg.html_bg = config.bodyBg
cfg.html_color = config.fontColor
cfg.h_threads_item_bg = config.bodyBg // $('.h-threads-item').css("background",config.bodyBg)
cfg.h_threads_content_color = config.fontColor//$('.h-threads-content').css("color",config.fontColor)
cfg.htirm_bg = config.centreBg //$(".h-threads-item-reply-main").css("background",config.centreBg)
cfg.hpft_bg = config.bodyBg //$('.h-post-form-title').css("background",config.bodyBg)
cfg.ht_color =config.fontColor // $(".h-title").css("color",config.fontColor)
cfg.left_menu_bg = config.bodyBg
cfg.left_menu_font = "grey"
setcss(cfg)
}
function default_mode() {
setcss(defaultCfg)
}
function setcss(config){
$('html').css("background",config.html_bg)
$('html').css("color",config.html_color)
$('.h-threads-item').css("background",config.h_threads_item_bg)
$('.h-threads-content').css("color",config.h_threads_content_color)
$(".h-threads-item-reply-main").css("background",config.htirm_bg)
$('.h-post-form-title').css("background",config.hpft_bg)
$(".h-title").css("color",config.hpft_bg)
// $('.h-ref-view').css("background",config.centreBg)
// $("#h-ref-view").css("background",config.h_threads_item_bg)
$("font[color='#789922']").filter(function () {
return /^((>>No\.)|(>>)|(>))\d+$/.test($(this).text());
})
.on("mouseenter",(e)=>{
console.log("hello")
let intv = setInterval(()=>{
$("#h-ref-view").find(".h-threads-item-reply-main").css("background",config.htirm_bg)
$("#h-ref-view").find(".h-threads-content").css("color",config.h_threads_content_color)
$("#h-ref-view").find(".h-threads-item").css("background",config.h_threads_item_bg)
},100)
setTimeout( ()=>{
clearInterval(intv)
}, 500)
})
//left menu bar
$("#h-menu").css("background",config.left_menu_bg)
$("#h-menu a").css("color", config.left_menu_font)
$("#h-bottom-nav").css("background",config.left_menu_bg)
$('#h-bottom-nav a').css('color', config.left_menu_font)
}
function t_func() {
// Your code here...
let mainThread = $(".h-threads-item-main")
let poerId = mainThread.find(".h-threads-info-uid").text();
console.log(`poerId > ${poerId}`)
let replys = $(".h-threads-item-reply")
for(let i = 0; i < replys.length; i++){
var reply = $(replys[i])
var repId = reply.find(".h-threads-info-uid").text()
if(repId === poerId){
//reply.css("background-color","#55ee66")
let color = ""
if(theme === Theme.Dark)
{
color= darkCfg.threadPoBg
}
else{
color = "rgb(255,237,191)"
}
reply.find(".h-threads-item-reply-main").css("background",color)
}
}
$(".h-threads-info-id").css("font-size","19px")
}
function f_func() {
var cl = $(".h-threads-list")
var d = cl.children("div")
console.log("begin replace reply " + `d length = ${d.length}`)
for(var i = 0 ; i < d.length; i++ ) {
var aa = $(d[i])
//console.log(`id = ${ aa.attr("data-threads-id")}`)
let wt = aa.find("span.warn_txt2")
var rep = aa.find("span.h-threads-info-reply-btn")
if(!wt || !rep)
{
console.error(`the wt= ${wt} rep=${rep}`)
continue;
}
let href = rep.children("a").attr("href")
var wttxt = wt.text()
wt.text("")
wt.append(`<a href="${href}">${wttxt}</a>`)
}
}
function OnChangeTheme(){
if(theme == Theme.Dark)
{
dark_mode()
}
else{
default_mode()
}
var pathname = window.location.pathname;
if(pathname.indexOf("/f/") >= 0 ) {
f_func()
}
else if(pathname.indexOf("/timeline/") >= 0){
f_func()
}
else if( pathname.indexOf("/t/") >= 0 ) {
t_func()
}
}
function exfunc(){
let menu = $("#h-menu-content")
let c = $("<li class=\"h-nav-item\"> <a> Dark Mode </a></li>")
c.children("a").click(()=>{
if(theme == 0)
{
theme =1 }
else if( theme == 1) {
theme = 0
}
else{
theme = 0
}
GM_setValue("theme",theme)
OnChangeTheme()
})
menu.append(c)
}
function backupdefault(){
defaultCfg.html_bg = $('html').css("background")
defaultCfg.html_color = $('html').css("color")
defaultCfg.h_threads_item_bg = $('.h-threads-item').css("background")
defaultCfg.h_threads_content_color = $('.h-threads-content').css("color")
defaultCfg.htirm_bg = $(".h-threads-item-reply-main").css("background")
defaultCfg.hpft_bg = $('.h-post-form-title').css("background")
defaultCfg.ht_color = $(".h-title").css("color")
defaultCfg.left_menu_bg = $("#h-menu").css("background")
defaultCfg.left_menu_font = $("#h-menu a").css("color")
//$('.h-ref-view').css("background",config.centreBg)
}
function CookieManage(){
let trs = $($("tbody").children())
console.log("trs length > " + trs.length)
for(let i = 0; i < trs.length; i++)
{
let tds = $(trs[i])
let cookie = tds.children().eq(2).text()
let aa = $(tds.find(" div div a:first"))
let href = aa.attr("href")
console.log("href=" + href)
aa.removeAttr("href")
aa.click( ()=>{
console.log("Set Cookie=" + cookie)
GM_setValue("cookie",cookie)
alert("set cookie ok")
window.location.href=href
})
}
}
(function() {
//console.log(window.location.pathname)
if (window.location.pathname === "/Member/User/Cookie/index.html")
{
console.log("cookie manage")
CookieManage();
return;
}
let cookie = GM_getValue("cookie","0")
if (cookie === "0") {
console.log("还没捕获饼干设置")
}
else{
let cstr = `当前饼干:${cookie}`
// console.log(cstr)
let form = $("#h-post-form form")
form.prepend($(`<div>${cstr}</div>`))
/*
let dd = $("#h-post-form form div div:eq(2)")
dd.clone
if( dd.length == 1){
dd.text(`当前饼干:${cookie}\n${dd.text()}`)
}
*/
}
theme = GM_getValue("theme",Theme.Default)
backupdefault();
console.log("current theme = " + theme)
OnChangeTheme();
exfunc()
})();