diff --git a/Application/Sdk/Controller/Ipa365Controller.class.php b/Application/Sdk/Controller/Ipa365Controller.class.php index 7e1cf3c2f..c76fafed1 100644 --- a/Application/Sdk/Controller/Ipa365Controller.class.php +++ b/Application/Sdk/Controller/Ipa365Controller.class.php @@ -141,7 +141,12 @@ class Ipa365Controller extends BaseController{ $this->display(); } - + + public function paytip($jump_url){ + $this->assign("jump_url",$jump_url); + $this->display(); + } + /** * 下载页面 判断订单是否支付成功 */ diff --git a/Application/Sdk/View/default/Ipa365/pay.html b/Application/Sdk/View/default/Ipa365/pay.html index ef5f9e940..db46e5396 100644 --- a/Application/Sdk/View/default/Ipa365/pay.html +++ b/Application/Sdk/View/default/Ipa365/pay.html @@ -15,7 +15,7 @@ - + @@ -69,7 +69,7 @@ {$price}元
支付宝 @@ -86,6 +86,13 @@
+ +
@@ -26,10 +45,10 @@ diff --git a/Public/Mobile/js/ssg/common.js b/Public/Mobile/js/ssg/common.js index 86337c7c6..f667e86f2 100644 --- a/Public/Mobile/js/ssg/common.js +++ b/Public/Mobile/js/ssg/common.js @@ -1,86 +1,99 @@ $(function() { - remInit(100, 375); - selectProductInit(); - copyInit(); + remInit(100, 375); + selectProductInit(); + copyInit(); + close_page(); }); -function remInit(screenSize, picSize) { - $(window) - .on("resize", function(e) { - var $body = $("body"); - var browser_width = $body.width(); - var browser_height = $body.height(); - var htmlWidth = picSize; - var remResize; - if (browser_width > browser_height) { - remResize = - document.documentElement.clientHeight || document.body.clientHeight; - //$uiBox.addClass("horizontal"); - } else { - remResize = - document.documentElement.clientWidth || document.body.clientWidth; - //$uiBox.removeClass("horizontal"); - } - var size = ((remResize < 768 ? remResize : 768) / htmlWidth) * screenSize; - $("html").css("font-size", size + "px"); - }) - .trigger("resize"); +function close_page(){ + window.onbeforeunload = onbeforeunload_handler; + //window.onunload = onunload_handler; } -function selectProductInit() { - var selectFlag = true; - var $selectProduct = $(".select-product"); - if ($selectProduct.length > 0) { - if ($selectProduct.find("li").length <= 0) { - $selectProduct.addClass("no-item"); - $selectProduct.find(".title-2 span").text("暂无产品"); - } else { - $selectProduct.find("li").on("click", function() { - var $this = $(this); - if ($this.find(".select-btn a").hasClass("current")) { - $this.find(".select-btn a").removeClass("current"); - } else { - $selectProduct.find(".select-btn a").removeClass("current"); - $this.find(".select-btn a").addClass("current"); - } - }); - $selectProduct.find(".title-2 a").on("click", function() { - if (selectFlag) { - $selectProduct.find(".title-2 span").addClass("current"); - $selectProduct.find("li").each(function() { - var $this = $(this); - if ($this.find(".select-btn a").hasClass("current")) { - $this.show(); +function onbeforeunload_handler(){ + sessionStorage.clear(); + //alert("确认关闭www.someabcd.com?"); + //你的业务操作。。。。 +} + + +function remInit(screenSize, picSize) { + $(window) + .on("resize", function(e) { + var $body = $("body"); + var browser_width = $body.width(); + var browser_height = $body.height(); + var htmlWidth = picSize; + var remResize; + if (browser_width > browser_height) { + remResize = + document.documentElement.clientHeight || document.body.clientHeight; + //$uiBox.addClass("horizontal"); } else { - $this.hide(); + remResize = + document.documentElement.clientWidth || document.body.clientWidth; + //$uiBox.removeClass("horizontal"); } - }); + var size = ((remResize < 768 ? remResize : 768) / htmlWidth) * screenSize; + $("html").css("font-size", size + "px"); + }) + .trigger("resize"); +} + +function selectProductInit() { + var selectFlag = true; + var $selectProduct = $(".select-product"); + if ($selectProduct.length > 0) { + if ($selectProduct.find("li").length <= 0) { + $selectProduct.addClass("no-item"); + $selectProduct.find(".title-2 span").text("暂无产品"); } else { - $selectProduct.find(".title-2 span").removeClass("current"); - $selectProduct.find("li").show(); + $selectProduct.find("li").on("click", function() { + var $this = $(this); + if ($this.find(".select-btn a").hasClass("current")) { + $this.find(".select-btn a").removeClass("current"); + } else { + $selectProduct.find(".select-btn a").removeClass("current"); + $this.find(".select-btn a").addClass("current"); + } + }); + $selectProduct.find(".title-2 a").on("click", function() { + if (selectFlag) { + $selectProduct.find(".title-2 span").addClass("current"); + $selectProduct.find("li").each(function() { + var $this = $(this); + if ($this.find(".select-btn a").hasClass("current")) { + $this.show(); + } else { + $this.hide(); + } + }); + } else { + $selectProduct.find(".title-2 span").removeClass("current"); + $selectProduct.find("li").show(); + } + selectFlag = !selectFlag; + }); } - selectFlag = !selectFlag; - }); } - } } function copyInit() { - if ($(".vip-download").length > 0) { - $(".gift-list li").each(function() { - var $this = $(this); - var thisCopyBtn = $this.find(".gift-code a").attr("class"); - var clipboard = new ClipboardJS("." + thisCopyBtn); - clipboard.on('success', function (e) { - alert("复制成功"); - }); - clipboard.on('error', function (e) { - var ua = navigator.userAgent; - var isIOS = !!ua.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); - if (isIOS && ua.match(/os\s+(\d+)/i)[1] - 0 < 10) { - alert("您的系统版本过低,请手动复制下方地址"); - } + if ($(".vip-download").length > 0) { + $(".gift-list li").each(function() { + var $this = $(this); + var thisCopyBtn = $this.find(".gift-code a").attr("class"); + var clipboard = new ClipboardJS("." + thisCopyBtn); + clipboard.on('success', function (e) { + alert("复制成功"); + }); + clipboard.on('error', function (e) { + var ua = navigator.userAgent; + var isIOS = !!ua.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); + if (isIOS && ua.match(/os\s+(\d+)/i)[1] - 0 < 10) { + alert("您的系统版本过低,请手动复制下方地址"); + } + }); }); - }); - } + } } diff --git a/Public/Sdk/js/jquery.base64.js b/Public/Sdk/js/jquery.base64.js new file mode 100644 index 000000000..96b36f0d8 --- /dev/null +++ b/Public/Sdk/js/jquery.base64.js @@ -0,0 +1,122 @@ +/*! + * jquery.base64.js 0.1 - https://github.com/yckart/jquery.base64.js + * Makes Base64 en & -decoding simpler as it is. + * + * Based upon: https://gist.github.com/Yaffle/1284012 + * + * Copyright (c) 2012 Yannick Albert (http://yckart.com) + * Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php). + * 2013/02/10 + **/ +;(function($) { + + var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/", + a256 = '', + r64 = [256], + r256 = [256], + i = 0; + + var UTF8 = { + + /** + * Encode multi-byte Unicode string into utf-8 multiple single-byte characters + * (BMP / basic multilingual plane only) + * + * Chars in range U+0080 - U+07FF are encoded in 2 chars, U+0800 - U+FFFF in 3 chars + * + * @param {String} strUni Unicode string to be encoded as UTF-8 + * @returns {String} encoded string + */ + encode: function(strUni) { + // use regular expressions & String.replace callback function for better efficiency + // than procedural approaches + var strUtf = strUni.replace(/[\u0080-\u07ff]/g, // U+0080 - U+07FF => 2 bytes 110yyyyy, 10zzzzzz + function(c) { + var cc = c.charCodeAt(0); + return String.fromCharCode(0xc0 | cc >> 6, 0x80 | cc & 0x3f); + }) + .replace(/[\u0800-\uffff]/g, // U+0800 - U+FFFF => 3 bytes 1110xxxx, 10yyyyyy, 10zzzzzz + function(c) { + var cc = c.charCodeAt(0); + return String.fromCharCode(0xe0 | cc >> 12, 0x80 | cc >> 6 & 0x3F, 0x80 | cc & 0x3f); + }); + return strUtf; + }, + + /** + * Decode utf-8 encoded string back into multi-byte Unicode characters + * + * @param {String} strUtf UTF-8 string to be decoded back to Unicode + * @returns {String} decoded string + */ + decode: function(strUtf) { + // note: decode 3-byte chars first as decoded 2-byte strings could appear to be 3-byte char! + var strUni = strUtf.replace(/[\u00e0-\u00ef][\u0080-\u00bf][\u0080-\u00bf]/g, // 3-byte chars + function(c) { // (note parentheses for precence) + var cc = ((c.charCodeAt(0) & 0x0f) << 12) | ((c.charCodeAt(1) & 0x3f) << 6) | (c.charCodeAt(2) & 0x3f); + return String.fromCharCode(cc); + }) + .replace(/[\u00c0-\u00df][\u0080-\u00bf]/g, // 2-byte chars + function(c) { // (note parentheses for precence) + var cc = (c.charCodeAt(0) & 0x1f) << 6 | c.charCodeAt(1) & 0x3f; + return String.fromCharCode(cc); + }); + return strUni; + } + }; + + while(i < 256) { + var c = String.fromCharCode(i); + a256 += c; + r256[i] = i; + r64[i] = b64.indexOf(c); + ++i; + } + + function code(s, discard, alpha, beta, w1, w2) { + s = String(s); + var buffer = 0, + i = 0, + length = s.length, + result = '', + bitsInBuffer = 0; + + while(i < length) { + var c = s.charCodeAt(i); + c = c < 256 ? alpha[c] : -1; + + buffer = (buffer << w1) + c; + bitsInBuffer += w1; + + while(bitsInBuffer >= w2) { + bitsInBuffer -= w2; + var tmp = buffer >> bitsInBuffer; + result += beta.charAt(tmp); + buffer ^= tmp << bitsInBuffer; + } + ++i; + } + if(!discard && bitsInBuffer > 0) result += beta.charAt(buffer << (w2 - bitsInBuffer)); + return result; + } + + var Plugin = $.base64 = function(dir, input, encode) { + return input ? Plugin[dir](input, encode) : dir ? null : this; + }; + + Plugin.btoa = Plugin.encode = function(plain, utf8encode) { + plain = Plugin.raw === false || Plugin.utf8encode || utf8encode ? UTF8.encode(plain) : plain; + plain = code(plain, false, r256, b64, 8, 6); + return plain + '===='.slice((plain.length % 4) || 4); + }; + + Plugin.atob = Plugin.decode = function(coded, utf8decode) { + coded = String(coded).split('='); + var i = coded.length; + do {--i; + coded[i] = code(coded[i], true, r64, a256, 6, 8); + } while (i > 0); + coded = coded.join(''); + return Plugin.raw === false || Plugin.utf8decode || utf8decode ? UTF8.decode(coded) : coded; + }; +}(jQuery)); \ No newline at end of file