! function(e, n) { "function" == typeof define && (define.amd || define.cmd) ? define(function() { return n(e) }) : n(e, !0) }(this, function(o, e) { if (!o.jWeixin) { var n, c = { config: "preVerifyJSAPI", onMenuShareTimeline: "menu:share:timeline", onMenuShareAppMessage: "menu:share:appmessage", onMenuShareQQ: "menu:share:qq", onMenuShareWeibo: "menu:share:weiboApp", onMenuShareQZone: "menu:share:QZone", previewImage: "imagePreview", getLocation: "geoLocation", openProductSpecificView: "openProductViewWithPid", addCard: "batchAddCard", openCard: "batchViewCard", chooseWXPay: "getBrandWCPayRequest", openEnterpriseRedPacket: "getRecevieBizHongBaoRequest", startSearchBeacons: "startMonitoringBeacons", stopSearchBeacons: "stopMonitoringBeacons", onSearchBeacons: "onBeaconsInRange", consumeAndShareCard: "consumedShareCard", openAddress: "editAddress" }, a = function() { var e = {}; for (var n in c) e[c[n]] = n; return e }(), i = o.document, t = i.title, r = navigator.userAgent.toLowerCase(), s = navigator.platform.toLowerCase(), d = !(!s.match("mac") && !s.match("win")), u = -1 != r.indexOf("wxdebugger"), l = -1 != r.indexOf("micromessenger"), p = -1 != r.indexOf("android"), f = -1 != r.indexOf("iphone") || -1 != r.indexOf("ipad"), m = (n = r.match(/micromessenger\/(\d+\.\d+\.\d+)/) || r.match(/micromessenger\/(\d+\.\d+)/)) ? n[1] : "", g = { initStartTime: L(), initEndTime: 0, preVerifyStartTime: 0, preVerifyEndTime: 0 }, h = { version: 1, appId: "", initTime: 0, preVerifyTime: 0, networkType: "", isPreVerifyOk: 1, systemType: f ? 1 : p ? 2 : -1, clientVersion: m, url: encodeURIComponent(location.href) }, v = {}, S = { _completes: [] }, y = { state: 0, data: {} }; O(function() { g.initEndTime = L() }); var I = !1, _ = [], w = { config: function(e) { B("config", v = e); var t = !1 !== v.check; O(function() { if (t) M(c.config, { verifyJsApiList: C(v.jsApiList), verifyOpenTagList: C(v.openTagList) }, function() { S._complete = function(e) { g.preVerifyEndTime = L(), y.state = 1, y.data = e }, S.success = function(e) { h.isPreVerifyOk = 0 }, S.fail = function(e) { S._fail ? S._fail(e) : y.state = -1 }; var t = S._completes; return t.push(function() { ! function() { if (!(d || u || v.debug || m < "6.0.2" || h.systemType < 0)) { var i = new Image; h.appId = v.appId, h.initTime = g.initEndTime - g.initStartTime, h.preVerifyTime = g.preVerifyEndTime - g.preVerifyStartTime, w.getNetworkType({ isInnerInvoke: !0, success: function(e) { h.networkType = e.networkType; var n = "https://open.weixin.qq.com/sdk/report?v=" + h.version + "&o=" + h.isPreVerifyOk + "&s=" + h.systemType + "&c=" + h.clientVersion + "&a=" + h.appId + "&n=" + h.networkType + "&i=" + h.initTime + "&p=" + h.preVerifyTime + "&u=" + h.url; i.src = n } }) } }() }), S.complete = function(e) { for (var n = 0, i = t.length; n < i; ++n) t[n](); S._completes = [] }, S }()), g.preVerifyStartTime = L(); else { y.state = 1; for (var e = S._completes, n = 0, i = e.length; n < i; ++n) e[n](); S._completes = [] } }), w.invoke || (w.invoke = function(e, n, i) { o.WeixinJSBridge && WeixinJSBridge.invoke(e, x(n), i) }, w.on = function(e, n) { o.WeixinJSBridge && WeixinJSBridge.on(e, n) }) }, ready: function(e) { 0 != y.state ? e() : (S._completes.push(e), !l && v.debug && e()) }, error: function(e) { m < "6.0.2" || (-1 == y.state ? e(y.data) : S._fail = e) }, checkJsApi: function(e) { M("checkJsApi", { jsApiList: C(e.jsApiList) }, (e._complete = function(e) { if (p) { var n = e.checkResult; n && (e.checkResult = JSON.parse(n)) } e = function(e) { var n = e.checkResult; for (var i in n) { var t = a[i]; t && (n[t] = n[i], delete n[i]) } return e }(e) }, e)) }, onMenuShareTimeline: function(e) { P(c.onMenuShareTimeline, { complete: function() { M("shareTimeline", { title: e.title || t, desc: e.title || t, img_url: e.imgUrl || "", link: e.link || location.href, type: e.type || "link", data_url: e.dataUrl || "" }, e) } }, e) }, onMenuShareAppMessage: function(n) { P(c.onMenuShareAppMessage, { complete: function(e) { "favorite" === e.scene ? M("sendAppMessage", { title: n.title || t, desc: n.desc || "", link: n.link || location.href, img_url: n.imgUrl || "", type: n.type || "link", data_url: n.dataUrl || "" }) : M("sendAppMessage", { title: n.title || t, desc: n.desc || "", link: n.link || location.href, img_url: n.imgUrl || "", type: n.type || "link", data_url: n.dataUrl || "" }, n) } }, n) }, onMenuShareQQ: function(e) { P(c.onMenuShareQQ, { complete: function() { M("shareQQ", { title: e.title || t, desc: e.desc || "", img_url: e.imgUrl || "", link: e.link || location.href }, e) } }, e) }, onMenuShareWeibo: function(e) { P(c.onMenuShareWeibo, { complete: function() { M("shareWeiboApp", { title: e.title || t, desc: e.desc || "", img_url: e.imgUrl || "", link: e.link || location.href }, e) } }, e) }, onMenuShareQZone: function(e) { P(c.onMenuShareQZone, { complete: function() { M("shareQZone", { title: e.title || t, desc: e.desc || "", img_url: e.imgUrl || "", link: e.link || location.href }, e) } }, e) }, updateTimelineShareData: function(e) { M("updateTimelineShareData", { title: e.title, link: e.link, imgUrl: e.imgUrl }, e) }, updateAppMessageShareData: function(e) { M("updateAppMessageShareData", { title: e.title, desc: e.desc, link: e.link, imgUrl: e.imgUrl }, e) }, startRecord: function(e) { M("startRecord", {}, e) }, stopRecord: function(e) { M("stopRecord", {}, e) }, onVoiceRecordEnd: function(e) { P("onVoiceRecordEnd", e) }, playVoice: function(e) { M("playVoice", { localId: e.localId }, e) }, pauseVoice: function(e) { M("pauseVoice", { localId: e.localId }, e) }, stopVoice: function(e) { M("stopVoice", { localId: e.localId }, e) }, onVoicePlayEnd: function(e) { P("onVoicePlayEnd", e) }, uploadVoice: function(e) { M("uploadVoice", { localId: e.localId, isShowProgressTips: 0 == e.isShowProgressTips ? 0 : 1 }, e) }, downloadVoice: function(e) { M("downloadVoice", { serverId: e.serverId, isShowProgressTips: 0 == e.isShowProgressTips ? 0 : 1 }, e) }, translateVoice: function(e) { M("translateVoice", { localId: e.localId, isShowProgressTips: 0 == e.isShowProgressTips ? 0 : 1 }, e) }, chooseImage: function(e) { M("chooseImage", { scene: "1|2", count: e.count || 9, sizeType: e.sizeType || ["original", "compressed"], sourceType: e.sourceType || ["album", "camera"] }, (e._complete = function(e) { if (p) { var n = e.localIds; try { n && (e.localIds = JSON.parse(n)) } catch (e) {} } }, e)) }, getLocation: function(e) {}, previewImage: function(e) { M(c.previewImage, { current: e.current, urls: e.urls }, e) }, uploadImage: function(e) { M("uploadImage", { localId: e.localId, isShowProgressTips: 0 == e.isShowProgressTips ? 0 : 1 }, e) }, downloadImage: function(e) { M("downloadImage", { serverId: e.serverId, isShowProgressTips: 0 == e.isShowProgressTips ? 0 : 1 }, e) }, getLocalImgData: function(e) { !1 === I ? (I = !0, M("getLocalImgData", { localId: e.localId }, (e._complete = function(e) { if (I = !1, 0 < _.length) { var n = _.shift(); wx.getLocalImgData(n) } }, e))) : _.push(e) }, getNetworkType: function(e) { M("getNetworkType", {}, (e._complete = function(e) { e = function(e) { var n = e.errMsg; e.errMsg = "getNetworkType:ok"; var i = e.subtype; if (delete e.subtype, i) e.networkType = i; else { var t = n.indexOf(":"), o = n.substring(t + 1); switch (o) { case "wifi": case "edge": case "wwan": e.networkType = o; break; default: e.errMsg = "getNetworkType:fail" } } return e }(e) }, e)) }, openLocation: function(e) { M("openLocation", { latitude: e.latitude, longitude: e.longitude, name: e.name || "", address: e.address || "", scale: e.scale || 28, infoUrl: e.infoUrl || "" }, e) }, getLocation: function(e) { M(c.getLocation, { type: (e = e || {}).type || "wgs84" }, (e._complete = function(e) { delete e.type }, e)) }, hideOptionMenu: function(e) { M("hideOptionMenu", {}, e) }, showOptionMenu: function(e) { M("showOptionMenu", {}, e) }, closeWindow: function(e) { M("closeWindow", {}, e = e || {}) }, hideMenuItems: function(e) { M("hideMenuItems", { menuList: e.menuList }, e) }, showMenuItems: function(e) { M("showMenuItems", { menuList: e.menuList }, e) }, hideAllNonBaseMenuItem: function(e) { M("hideAllNonBaseMenuItem", {}, e) }, showAllNonBaseMenuItem: function(e) { M("showAllNonBaseMenuItem", {}, e) }, scanQRCode: function(e) { M("scanQRCode", { needResult: (e = e || {}).needResult || 0, scanType: e.scanType || ["qrCode", "barCode"] }, (e._complete = function(e) { if (f) { var n = e.resultStr; if (n) { var i = JSON.parse(n); e.resultStr = i && i.scan_code && i.scan_code.scan_result } } }, e)) }, openAddress: function(e) { M(c.openAddress, {}, (e._complete = function(e) { e = function(e) { return e.postalCode = e.addressPostalCode, delete e.addressPostalCode, e.provinceName = e.proviceFirstStageName, delete e.proviceFirstStageName, e.cityName = e.addressCitySecondStageName, delete e.addressCitySecondStageName, e.countryName = e.addressCountiesThirdStageName, delete e.addressCountiesThirdStageName, e.detailInfo = e .addressDetailInfo, delete e.addressDetailInfo, e }(e) }, e)) }, openProductSpecificView: function(e) { M(c.openProductSpecificView, { pid: e.productId, view_type: e.viewType || 0, ext_info: e.extInfo }, e) }, addCard: function(e) { for (var n = e.cardList, i = [], t = 0, o = n.length; t < o; ++t) { var r = n[t], a = { card_id: r.cardId, card_ext: r.cardExt }; i.push(a) } M(c.addCard, { card_list: i }, (e._complete = function(e) { var n = e.card_list; if (n) { for (var i = 0, t = (n = JSON.parse(n)).length; i < t; ++i) { var o = n[i]; o.cardId = o.card_id, o.cardExt = o.card_ext, o.isSuccess = !!o.is_succ, delete o.card_id, delete o.card_ext, delete o.is_succ } e.cardList = n, delete e.card_list } }, e)) }, chooseCard: function(e) { M("chooseCard", { app_id: v.appId, location_id: e.shopId || "", sign_type: e.signType || "SHA1", card_id: e.cardId || "", card_type: e.cardType || "", card_sign: e.cardSign, time_stamp: e.timestamp + "", nonce_str: e.nonceStr }, (e._complete = function(e) { e.cardList = e.choose_card_info, delete e.choose_card_info }, e)) }, openCard: function(e) { for (var n = e.cardList, i = [], t = 0, o = n.length; t < o; ++t) { var r = n[t], a = { card_id: r.cardId, code: r.code }; i.push(a) } M(c.openCard, { card_list: i }, e) }, consumeAndShareCard: function(e) { M(c.consumeAndShareCard, { consumedCardId: e.cardId, consumedCode: e.code }, e) }, chooseWXPay: function(e) { M(c.chooseWXPay, V(e), e) }, openEnterpriseRedPacket: function(e) { M(c.openEnterpriseRedPacket, V(e), e) }, startSearchBeacons: function(e) { M(c.startSearchBeacons, { ticket: e.ticket }, e) }, stopSearchBeacons: function(e) { M(c.stopSearchBeacons, {}, e) }, onSearchBeacons: function(e) { P(c.onSearchBeacons, e) }, openEnterpriseChat: function(e) { M("openEnterpriseChat", { useridlist: e.userIds, chatname: e.groupName }, e) }, launchMiniProgram: function(e) { M("launchMiniProgram", { targetAppId: e.targetAppId, path: function(e) { if ("string" == typeof e && 0 < e.length) { var n = e.split("?")[0], i = e.split("?")[1]; return n += ".html", void 0 !== i ? n + "?" + i : n } }(e.path), envVersion: e.envVersion }, e) }, openBusinessView: function(e) { M("openBusinessView", { businessType: e.businessType, queryString: e.queryString || "", envVersion: e.envVersion }, (e._complete = function(n) { if (p) { var e = n.extraData; if (e) try { n.extraData = JSON.parse(e) } catch (e) { n.extraData = {} } } }, e)) }, miniProgram: { navigateBack: function(e) { e = e || {}, O(function() { M("invokeMiniProgramAPI", { name: "navigateBack", arg: { delta: e.delta || 1 } }, e) }) }, navigateTo: function(e) { O(function() { M("invokeMiniProgramAPI", { name: "navigateTo", arg: { url: e.url } }, e) }) }, redirectTo: function(e) { O(function() { M("invokeMiniProgramAPI", { name: "redirectTo", arg: { url: e.url } }, e) }) }, switchTab: function(e) { O(function() { M("invokeMiniProgramAPI", { name: "switchTab", arg: { url: e.url } }, e) }) }, reLaunch: function(e) { O(function() { M("invokeMiniProgramAPI", { name: "reLaunch", arg: { url: e.url } }, e) }) }, postMessage: function(e) { O(function() { M("invokeMiniProgramAPI", { name: "postMessage", arg: e.data || {} }, e) }) }, getEnv: function(e) { O(function() { e({ miniprogram: "miniprogram" === o.__wxjs_environment }) }) } } }, T = 1, k = {}; return i.addEventListener("error", function(e) { if (!p) { var n = e.target, i = n.tagName, t = n.src; if ("IMG" == i || "VIDEO" == i || "AUDIO" == i || "SOURCE" == i) if (-1 != t.indexOf("wxlocalresource://")) { e.preventDefault(), e.stopPropagation(); var o = n["wx-id"]; if (o || (o = T++, n["wx-id"] = o), k[o]) return; k[o] = !0, wx.ready(function() { wx.getLocalImgData({ localId: t, success: function(e) { n.src = e.localData } }) }) } } }, !0), i.addEventListener("load", function(e) { if (!p) { var n = e.target, i = n.tagName; n.src; if ("IMG" == i || "VIDEO" == i || "AUDIO" == i || "SOURCE" == i) { var t = n["wx-id"]; t && (k[t] = !1) } } }, !0), e && (o.wx = o.jWeixin = w), w } function M(n, e, i) { o.WeixinJSBridge ? WeixinJSBridge.invoke(n, x(e), function(e) { A(n, e, i) }) : B(n, i) } function P(n, i, t) { o.WeixinJSBridge ? WeixinJSBridge.on(n, function(e) { t && t.trigger && t.trigger(e), A(n, e, i) }) : B(n, t || i) } function x(e) { return (e = e || {}).appId = v.appId, e.verifyAppId = v.appId, e.verifySignType = "sha1", e.verifyTimestamp = v.timestamp + "", e.verifyNonceStr = v.nonceStr, e.verifySignature = v.signature, e } function V(e) { return { timeStamp: e.timestamp + "", nonceStr: e.nonceStr, package: e.package, paySign: e.paySign, signType: e.signType || "SHA1" } } function A(e, n, i) { "openEnterpriseChat" != e && "openBusinessView" !== e || (n.errCode = n.err_code), delete n.err_code, delete n.err_desc, delete n.err_detail; var t = n.errMsg; t || (t = n.err_msg, delete n.err_msg, t = function(e, n) { var i = e, t = a[i]; t && (i = t); var o = "ok"; if (n) { var r = n.indexOf(":"); "confirm" == (o = n.substring(r + 1)) && (o = "ok"), "failed" == o && (o = "fail"), -1 != o.indexOf("failed_") && (o = o.substring(7)), -1 != o.indexOf("fail_") && (o = o.substring(5)), "access denied" != (o = (o = o.replace( /_/g, " ")).toLowerCase()) && "no permission to execute" != o || (o = "permission denied"), "config" == i && "function not exist" == o && (o = "ok"), "" == o && (o = "fail") } return n = i + ":" + o }(e, t), n.errMsg = t), (i = i || {})._complete && (i._complete(n), delete i._complete), t = n.errMsg || "", v.debug && !i.isInnerInvoke && alert(JSON.stringify(n)); var o = t.indexOf(":"); switch (t.substring(o + 1)) { case "ok": i.success && i.success(n); break; case "cancel": i.cancel && i.cancel(n); break; default: i.fail && i.fail(n) } i.complete && i.complete(n) } function C(e) { if (e) { for (var n = 0, i = e.length; n < i; ++n) { var t = e[n], o = c[t]; o && (e[n] = o) } return e } } function B(e, n) { if (!(!v.debug || n && n.isInnerInvoke)) { var i = a[e]; i && (e = i), n && n._complete && delete n._complete, console.log('"' + e + '",', n || "") } } function L() { return (new Date).getTime() } function O(e) { l && (o.WeixinJSBridge ? e() : i.addEventListener && i.addEventListener("WeixinJSBridgeReady", e, !1)) } });