/**
* @title userPM
* @author 邦邦
* @note 可以一键安装或停用主题下所有JS代码块或者CSS代码块
* @time 2021-08-18
* @version 1.0
*/
pluginManager.register("userPm",{
after_docmenu_run()
{
plugin.menu.addItems("doc",{
enableAllPlg: {
label:"安装全部代码块",
icon:"cogs",
action(){
debugger
if(!this.nv.hasChild())return jWarn("当前节点下没有子节点!");
const childs01=plugin.memory.getChild(this.nv.ky);
for(let item01 of childs01){
//console.log(item.ky)
const childs=plugin.memory.getChild(item01.ky);
for(const item of childs){
if(item.codeBlockMode==="css"){
item.cssRunnable=true;
plugin.inodeModel.save(item);
if(plugin.config.cssInstalled&&!item.ky in plugin.config.cssInstalled){
plugin.config.cssInstalled[item.ky]=item.codeBlockText;
plugin.config.$save("cssInstalled");
}
} else if(item.codeBlockMode==="javascript"){
item.jsRunnable=true;
plugin.inodeModel.save(item);
if(plugin.config.jsInstalled&&!item.ky in plugin.config.jsInstalled){
plugin.config.jsInstalled[item.ky]=item.codeBlockText;
plugin.config.$save("jsInstalled");
}
}
}
}
jConfirm("所有JS/CSS代码均已安装,请刷新页面", (()=>{
location.reload();
}));
}
},
disableAllPlg: {
label:"停用全部代码块",
icon:"cogs",
action(){
if(!this.nv.hasChild())return jWarn("当前节点下没有子节点!");
const childs01=plugin.memory.getChild(this.nv.ky);
for(let item01 of childs01){
const childs=plugin.memory.getChild(item01.ky);
for(const item of childs){
if(item.codeBlockMode==="css"){
item.cssRunnable=false;
plugin.inodeModel.save(item);
if(plugin.config.cssInstalled&&item.ky in plugin.config.cssInstalled){
delete plugin.config.cssInstalled[item.ky];
plugin.config.$save("cssInstalled");
}
} else if(item.codeBlockMode==="javascript"){
item.jsRunnable=false;
plugin.inodeModel.save(item);
if(plugin.config.jsInstalled&&item.ky in plugin.config.jsInstalled){
delete plugin.config.jsInstalled[item.ky];
plugin.config.$save("jsInstalled");
}
}
}
}
jConfirm("所有JS/CSS代码均已停用,请刷新页面", (()=>{
location.reload();
}));
}
}
});
}
});
这个功能对于偶尔代码块失效后,挺方便的,我不再用一个个去点安装了。
感谢@邦邦
