PageSourceSearch

http://xiahaimiao.com/scripts/xhm.js?v=20221001

js xiahaimiao.com collected 2026-10-02 18:50:20 UTC 5,364 bytes, 128 lines download raw bytes

1//  <script src="/scripts/xhm.js?v=20221001" type="text/javascript"></script>
2var Base64 = {
3    _keyStr: "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",
4    encode: function (e) {
5        var t = ""; var n, r, i, s, o, u, a; var f = 0; e = Base64._utf8_encode(e); while (f < e.length) { n = e.charCodeAt(f++); r = e.charCodeAt(f++); i = e.charCodeAt(f++); s = n >> 2; o = (n & 3) << 4 | r >> 4; u = (r & 15) << 2 | i >> 6; a = i & 63; if (isNaN(r)) { u = a = 64 } else if (isNaN(i)) { a = 64 } t = t + this._keyStr.charAt(s) + this._keyStr.charAt(o) + this._keyStr.charAt(u) + this._keyStr.charAt(a) } return t
6    },
7    decode: function (e) {
8        var t = ""; var n, r, i; var s, o, u, a; var f = 0; e = e.replace(/[^A-Za-z0-9\+\/\=]/g, ""); while (f < e.length) { s = this._keyStr.indexOf(e.charAt(f++)); o = this._keyStr.indexOf(e.charAt(f++)); u = this._keyStr.indexOf(e.charAt(f++)); a = this._keyStr.indexOf(e.charAt(f++)); n = s << 2 | o >> 4; r = (o & 15) << 4 | u >> 2; i = (u & 3) << 6 | a; t = t + String.fromCharCode(n); if (u != 64) { t = t + String.fromCharCode(r) } if (a != 64) { t = t + String.fromCharCode(i) } } t = Base64._utf8_decode(t); return t
9    },
10    _utf8_encode: function (e) {
11        e = e.replace(/\r\n/g, "\n"); var t = ""; for (var n = 0; n < e.length; n++) { var r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r) } else if (r > 127 && r < 2048) { t += String.fromCharCode(r >> 6 | 192); t += String.fromCharCode(r & 63 | 128) } else { t += String.fromCharCode(r >> 12 | 224); t += String.fromCharCode(r >> 6 & 63 | 128); t += String.fromCharCode(r & 63 | 128) } } return t
12    },
13    _utf8_decode: function (e) {
14        var t = ""; var n = 0; var r = c1 = c2 = 0; while (n < e.length) { r = e.charCodeAt(n); if (r < 128) { t += String.fromCharCode(r); n++ } else if (r > 191 && r < 224) { c2 = e.charCodeAt(n + 1); t += String.fromCharCode((r & 31) << 6 | c2 & 63); n += 2 } else { c2 = e.charCodeAt(n + 1); c3 = e.charCodeAt(n + 2); t += String.fromCharCode((r & 15) << 12 | (c2 & 63) << 6 | c3 & 63); n += 3 } } return t
15    }
16};
17function getResCodeAttFiles(resCode, rids) {    //  'r_Site_xl_att', var[1,2,3]
18    var result = null;
19    var JsonObj =
20    {
21        Code: 'VDS0000048',
22        KV: {
23            ResCode: resCode,
24            Rid: rids
25        }
26    };
27    var postData = {
28        Module: "syspc",
29        Action: "VDS",
30        JsonText: Base64.encode(JSON.stringify(JsonObj))
31    };
32    $.ajaxSetup({ async: false });
33    $.post(g.tokenlogin, JSON.stringify(postData), function (data) {
34        var o = $.parseJSON(data);
35        result = $.parseJSON(o.Data);
36    });
37    $.ajaxSetup({ async: true });
38    return result;
39}
40function QueryString(name) {
41    var reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)');
42    var r = window.location.search.substr(1).match(reg);
43    if (r != null) return unescape(r[2]); return null;
44}
45function getVDEData(jsonObj) {
46    var rd = {};
47    var postData = {
48        Module: "syspc",
49        Action: "VDE",
50        JsonText: Base64.encode(JSON.stringify(jsonObj))
51    };
52    $.ajaxSetup({ async: false });
53    $.post(g.tokenlogin, JSON.stringify(postData), function (data) {
54        rd = $.parseJSON(data);
55    });
56    $.ajaxSetup({ async: true });
57    return rd;
58}
59function LoadVDPInfo(Code) {
60    var jsonObj = {
61        ResCode: "r_VDP",
62        Top: 1,
63        Orderby: 1,
64        Where: [{
65            Bracket: -1,
66            LogicalRelationship: -1,
67            FieldName: 'Code',
68            Type: 1,
69            Operator: 4,
70            FieldValue: Code
71        }]
72    };
73    var vdeResult = getVDEData(jsonObj);
74    var vdeRows = $.parseJSON(vdeResult.Data);
75    LoadPageInfo(vdeRows[0]);
76}
77function LoadPageInfo(vDR) {
78    var js = '\r\n' + Base64.decode(vDR.JS) + '\r\n';
79    loadscript(js);
80}
81function loadscript(js) {
82    var thisNode = p.body.getElementsByTagName('script');
83    if (thisNode.length != 0) p.body.removeChild(thisNode[0]);
84
85    var script = document.createElement('script');
86    script.innerHTML = js + '\r\n';
87    p.body.appendChild(script);
88}
89var p = {};
90var g = {};
91$(document).ready(function () {
92    p.body = $('html').find('body')[0];
93    p.head = $('html').find('head')[0];
94
95    g.tokenlogin = '/service/portal.ashx?token=AccessTokenShareLinks';
96    var pathname = window.location.pathname.toLowerCase();
97    console.log(pathname);
98    $('body').css('display', 'none');
99    var vdp = getVDPInfo(pathname);
100    console.log(vdp);
101    document.title = '上海下海庙';
102    if (vdp != null) {
103        document.title = vdp.Title;
104        LoadVDPInfo(vdp.VdpCode);
105    }
106    $('body').css('display', '');
107});
108function getVDPInfo(uri) {
109    var JsonObj =
110    {
111        Code: 'VDS0000038',
112        KV: { Uri: uri }
113    };
114    var postData = {
115        Module: "syspc",
116        Action: "VDS",
117        JsonText: Base64.encode(JSON.stringify(JsonObj))
118    };
119    var result = null;
120    $.ajaxSetup({ async: false });
121    $.post(g.tokenlogin, JSON.stringify(postData), function (data) {
122        var o = $.parseJSON(data);
123        var oData = $.parseJSON(o.Data);
124        if (oData.length != 0) result = oData[0];
125    });
126    $.ajaxSetup({ async: true });
127    return result;
128}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.