MCPcopy Index your code
hub / github.com/hoothin/UserScripts / getRule

Method getRule

Pagetual/pagetual.user.js:5271–5455  ·  view source on GitHub ↗
(callback)

Source from the content-addressed store, hash-verified

5269 }
5270
5271 async getRule(callback) {
5272 var href = location.href.slice(0, 500);
5273 if (noRuleTest) {
5274 this.curSiteRule = {};
5275 this.curSiteRule.url = href;
5276 this.curSiteRule.smart = true;
5277 callback();
5278 return;
5279 }
5280 if (_unsafeWindow.pagetualRule) {
5281 this.curSiteRule = _unsafeWindow.pagetualRule;
5282 if (!this.curSiteRule.url) this.curSiteRule.url = ".";
5283 this.curSiteRule.isScript = true;
5284 }
5285 if (this.curSiteRule && this.curSiteRule.url && !this.curSiteRule.smart) {
5286 let urlReg = new RegExp(this.curSiteRule.url, "i");
5287 if (urlReg.test(href) && this.ruleMatch(this.curSiteRule)) {
5288 return callback();
5289 }
5290 }
5291 if (this.possibleRule) {
5292 let urlReg = new RegExp(this.possibleRule.url, "i");
5293 if (urlReg.test(href) && this.ruleMatch(this.possibleRule)) {
5294 this.curSiteRule = this.possibleRule;
5295 debug(this.curSiteRule, 'Match');
5296 return callback();
5297 }
5298 }
5299 this.curSiteRule = {};
5300 var self = this;
5301
5302 function setRule(r) {
5303 if (self.preSiteRule) {
5304 href = location.href.slice(0, 500);
5305 let urlReg = new RegExp(self.preSiteRule.url, "i");
5306 if (urlReg.test(href) && self.ruleMatch(self.preSiteRule)) {
5307 self.curSiteRule = self.preSiteRule;
5308 return callback();
5309 }
5310 }
5311 if (r.from === 2) {
5312 delete r.autoLoadNum;
5313 delete r.history;
5314 delete r.sideController;
5315 if (r.pageBar === 0) delete r.pageBar;
5316 }
5317 if (!r.smart) {
5318 self.insert = null;
5319 self.curSiteRule = r;
5320 self.preSiteRule = r;
5321 if (r.enable !== 0) debug(r, 'Match');
5322 } else if (!self.curSiteRule || !self.curSiteRule.smart) self.curSiteRule = r;
5323 callback();
5324 }
5325
5326 function checkRule(r) {
5327 if (r.from === 1 && r.url.length <= 13) return false;
5328 let urlReg = new RegExp(r.url, "i");

Callers 1

initPageMethod · 0.95

Calls 4

ruleMatchMethod · 0.95
debugFunction · 0.85
sleepFunction · 0.70
searchByTimeFunction · 0.50

Tested by

no test coverage detected