1
0
Fork 0
mirror of https://github.com/yunluo/gdk.git synced 2024-05-12 19:26:51 +02:00

很多更新

This commit is contained in:
云落 2020-02-06 02:44:30 +08:00
parent 7c6ee11ab4
commit d4fa9ef86d
12 changed files with 434 additions and 126 deletions

View file

@ -17,7 +17,11 @@ add_action('admin_enqueue_scripts', 'gdk_admin_enqueue_script');
function gdk_enqueue_script_frontend() {
if (!is_admin()) {
//wp_enqueue_style( 'pure_css', GDK_BASE_URL.'assets/css/pure.css', [], GDK_PLUGIN_VER, 'all' );
wp_enqueue_style( 'milligram_css', GDK_BASE_URL.'assets/css/milligram.min.css', [], GDK_PLUGIN_VER, 'all' );
wp_enqueue_style( 'gdk_css', GDK_BASE_URL.'assets/css/gdk.css', [], GDK_PLUGIN_VER, 'all' );
wp_deregister_script('jquery');
wp_enqueue_script('jquery', GDK_BASE_URL.'assets/js/jQuery.min.js', false, GDK_PLUGIN_VER, true);//加载自定义jQuery2.0.3
wp_enqueue_script('code_prettify_js', GDK_BASE_URL.'assets/js/prettify.min.js', array('jquery'), GDK_PLUGIN_VER, true);
wp_enqueue_script('fancybox_js', GDK_BASE_URL.'assets/js/fancybox.min.js', array('jquery'), GDK_PLUGIN_VER, true);
wp_enqueue_script('lazyload_js', GDK_BASE_URL.'assets/js/lazyload.min.js', array('jquery'), GDK_PLUGIN_VER, true);
@ -25,7 +29,8 @@ function gdk_enqueue_script_frontend() {
wp_enqueue_script('gdk_js', GDK_BASE_URL.'assets/js/gdk.js', array('jquery'), GDK_PLUGIN_VER, true);
wp_localize_script('gdk_js', 'ajax', [
'url'=> admin_url('admin-ajax.php'),
'pass_nonce' => wp_create_nonce('pass_nonce')
'pass_nonce' => wp_create_nonce('pass_nonce'),
'pay_points' => wp_create_nonce('pay_points')
]);

File diff suppressed because one or more lines are too long

11
assets/css/milligram.min.css vendored Normal file

File diff suppressed because one or more lines are too long

124
assets/css/pure.css Normal file
View file

@ -0,0 +1,124 @@
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{margin:.67em 0;font-size:2em}hr{overflow:visible;box-sizing:content-box;height:0}pre{font-size:1em;font-family:monospace}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-size:1em;font-family:monospace}small{font-size:80%}sub,sup{position:relative;vertical-align:baseline;font-size:75%;line-height:0}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{margin:0;font-size:100%;font-family:inherit;line-height:1.15}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{padding:0;border-style:none}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{display:table;box-sizing:border-box;padding:0;max-width:100%;color:inherit;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}details{display:block}summary{display:list-item}[hidden],template{display:none}
/*pure css*/
/*csslint important:false*/
/*基础*/
.hidden,[hidden]{display:none!important}
.pure-img{display:block;height:auto;max-width:100%}
/*按钮*/
.pure-button{display:inline-block;box-sizing:border-box;vertical-align:middle;text-align:center;white-space:nowrap;line-height:normal;cursor:pointer;zoom:1;-webkit-user-drag:none;user-select:none}
.pure-button::-moz-focus-inner{padding:0;border:0}
.pure-button-group{letter-spacing:-.31em;text-rendering:optimizespeed}
.opera-only :-o-prefocus,.pure-button-group{word-spacing:-.43em}
.pure-button-group .pure-button{vertical-align:top;word-spacing:normal;letter-spacing:normal;text-rendering:auto}
.pure-button{padding:.5em 1em;border:1px solid #999;border:none transparent;border-radius:2px;background-color:#e6e6e6;color:#444;color:rgba(0,0,0,.8);text-decoration:none;font-size:100%;font-family:inherit}
.pure-button-hover,.pure-button:focus,.pure-button:hover{background-image:linear-gradient(transparent,rgba(0,0,0,.05) 40%,rgba(0,0,0,.1))}
.pure-button:focus{outline:0}
.pure-button-active,.pure-button:active{border-color:#000;box-shadow:0 0 0 1px rgba(0,0,0,.15) inset,0 0 6px rgba(0,0,0,.2) inset}
.pure-button-disabled,.pure-button-disabled:active,.pure-button-disabled:focus,.pure-button-disabled:hover,.pure-button[disabled]{border:none;background-image:none;box-shadow:none;opacity:.4;cursor:not-allowed;pointer-events:none}
.pure-button-hidden{display:none}
.pure-button-primary,.pure-button-selected,a.pure-button-primary,a.pure-button-selected{background-color:#0078e7;color:#fff}
.pure-button-group .pure-button{margin:0;border-right:1px solid #111;border-right:1px solid rgba(0,0,0,.2);border-radius:0}
.pure-button-group .pure-button:first-child{border-bottom-left-radius:2px;border-top-left-radius:2px}
.pure-button-group .pure-button:last-child{border-right:none;border-top-right-radius:2px;border-bottom-right-radius:2px}
/*表单*/
.pure-form input[type=color],.pure-form input[type=date],.pure-form input[type=datetime-local],.pure-form input[type=datetime],.pure-form input[type=email],.pure-form input[type=month],.pure-form input[type=number],.pure-form input[type=password],.pure-form input[type=search],.pure-form input[type=tel],.pure-form input[type=text],.pure-form input[type=time],.pure-form input[type=url],.pure-form input[type=week],.pure-form select,.pure-form textarea{display:inline-block;box-sizing:border-box;padding:.5em .6em;border:1px solid #ccc;border-radius:4px;box-shadow:inset 0 1px 3px #ddd;vertical-align:middle}
.pure-form input:not([type]){display:inline-block;box-sizing:border-box;padding:.5em .6em;border:1px solid #ccc;border-radius:4px;box-shadow:inset 0 1px 3px #ddd}
.pure-form input[type=color]{padding:.2em .5em}
.pure-form input:not([type]):focus,.pure-form input[type=color]:focus,.pure-form input[type=date]:focus,.pure-form input[type=datetime-local]:focus,.pure-form input[type=datetime]:focus,.pure-form input[type=email]:focus,.pure-form input[type=month]:focus,.pure-form input[type=number]:focus,.pure-form input[type=password]:focus,.pure-form input[type=search]:focus,.pure-form input[type=tel]:focus,.pure-form input[type=text]:focus,.pure-form input[type=time]:focus,.pure-form input[type=url]:focus,.pure-form input[type=week]:focus,.pure-form select:focus,.pure-form textarea:focus{outline:0;border-color:#129fea}
.pure-form input[type=checkbox]:focus,.pure-form input[type=file]:focus,.pure-form input[type=radio]:focus{outline:thin solid #129fea;outline:1px auto #129fea}
.pure-form .pure-checkbox,.pure-form .pure-radio{display:block;margin:.5em 0}
.pure-form input:not([type])[disabled],.pure-form input[type=color][disabled],.pure-form input[type=date][disabled],.pure-form input[type=datetime-local][disabled],.pure-form input[type=datetime][disabled],.pure-form input[type=email][disabled],.pure-form input[type=month][disabled],.pure-form input[type=number][disabled],.pure-form input[type=password][disabled],.pure-form input[type=search][disabled],.pure-form input[type=tel][disabled],.pure-form input[type=text][disabled],.pure-form input[type=time][disabled],.pure-form input[type=url][disabled],.pure-form input[type=week][disabled],.pure-form select[disabled],.pure-form textarea[disabled]{background-color:#eaeded;color:#cad2d3;cursor:not-allowed}
.pure-form input[readonly],.pure-form select[readonly],.pure-form textarea[readonly]{border-color:#ccc;background-color:#eee;color:#777}
.pure-form input:focus:invalid,.pure-form select:focus:invalid,.pure-form textarea:focus:invalid{border-color:#e9322d;color:#b94a48}
.pure-form input[type=checkbox]:focus:invalid:focus,.pure-form input[type=file]:focus:invalid:focus,.pure-form input[type=radio]:focus:invalid:focus{outline-color:#e9322d}
.pure-form select{height:2.25em;border:1px solid #ccc;background-color:#fff}
.pure-form select[multiple]{height:auto}
.pure-form label{margin:.5em 0 .2em}
.pure-form fieldset{margin:0;padding:.35em 0 .75em;border:0}
.pure-form legend{display:block;margin-bottom:.3em;padding:.3em 0;width:100%;border-bottom:1px solid #e5e5e5;color:#333}
.pure-form-stacked input:not([type]),.pure-form-stacked input[type=color],.pure-form-stacked input[type=date],.pure-form-stacked input[type=datetime-local],.pure-form-stacked input[type=datetime],.pure-form-stacked input[type=email],.pure-form-stacked input[type=file],.pure-form-stacked input[type=month],.pure-form-stacked input[type=number],.pure-form-stacked input[type=password],.pure-form-stacked input[type=search],.pure-form-stacked input[type=tel],.pure-form-stacked input[type=text],.pure-form-stacked input[type=time],.pure-form-stacked input[type=url],.pure-form-stacked input[type=week],.pure-form-stacked label,.pure-form-stacked select,.pure-form-stacked textarea{display:block;margin:.25em 0}
.pure-form-aligned .pure-help-inline,.pure-form-aligned input,.pure-form-aligned select,.pure-form-aligned textarea,.pure-form-message-inline{display:inline-block;vertical-align:middle}
.pure-form-aligned textarea{vertical-align:top}
.pure-form-aligned .pure-control-group{margin-bottom:.5em}
.pure-form-aligned .pure-control-group label{display:inline-block;margin:0 1em 0 0;width:10em;vertical-align:middle;text-align:right}
.pure-form-aligned .pure-controls{margin:1.5em 0 0 11em}
.pure-form .pure-input-rounded,.pure-form input.pure-input-rounded{padding:.5em 1em;border-radius:2em}
.pure-form .pure-group fieldset{margin-bottom:10px}
.pure-form .pure-group input,.pure-form .pure-group textarea{position:relative;top:-1px;display:block;margin:0 0 -1px;padding:10px;border-radius:0}
.pure-form .pure-group input:focus,.pure-form .pure-group textarea:focus{z-index:3}
.pure-form .pure-group input:first-child,.pure-form .pure-group textarea:first-child{top:1px;margin:0;border-radius:4px 4px 0 0}
.pure-form .pure-group input:first-child:last-child,.pure-form .pure-group textarea:first-child:last-child{top:1px;margin:0;border-radius:4px}
.pure-form .pure-group input:last-child,.pure-form .pure-group textarea:last-child{top:-2px;margin:0;border-radius:0 0 4px 4px}
.pure-form .pure-group button{margin:.35em 0}
.pure-form .pure-input-1{width:100%}
.pure-form .pure-input-3-4{width:75%}
.pure-form .pure-input-2-3{width:66%}
.pure-form .pure-input-1-2{width:50%}
.pure-form .pure-input-1-3{width:33%}
.pure-form .pure-input-1-4{width:25%}
.pure-form .pure-help-inline,.pure-form-message-inline{display:inline-block;padding-left:.3em;color:#666;vertical-align:middle;font-size:.875em}
.pure-form-message{display:block;color:#666;font-size:.875em}
@media only screen and (max-width:480px){.pure-form button[type=submit]{margin:.7em 0 0}
.pure-form input:not([type]),.pure-form input[type=color],.pure-form input[type=date],.pure-form input[type=datetime-local],.pure-form input[type=datetime],.pure-form input[type=email],.pure-form input[type=month],.pure-form input[type=number],.pure-form input[type=password],.pure-form input[type=search],.pure-form input[type=tel],.pure-form input[type=text],.pure-form input[type=time],.pure-form input[type=url],.pure-form input[type=week],.pure-form label{display:block;margin-bottom:.3em}
.pure-group input:not([type]),.pure-group input[type=color],.pure-group input[type=date],.pure-group input[type=datetime-local],.pure-group input[type=datetime],.pure-group input[type=email],.pure-group input[type=month],.pure-group input[type=number],.pure-group input[type=password],.pure-group input[type=search],.pure-group input[type=tel],.pure-group input[type=text],.pure-group input[type=time],.pure-group input[type=url],.pure-group input[type=week]{margin-bottom:0}
.pure-form-aligned .pure-control-group label{display:block;margin-bottom:.3em;width:100%;text-align:left}
.pure-form-aligned .pure-controls{margin:1.5em 0 0}
.pure-form .pure-help-inline,.pure-form-message,.pure-form-message-inline{display:block;padding:.2em 0 .8em;font-size:.75em}
}
/*栅格*/
.pure-g{display:flex;letter-spacing:-.31em;text-rendering:optimizespeed;font-family:FreeSans,Arimo,Droid Sans,Helvetica,Arial,sans-serif;flex-flow:row wrap;align-content:flex-start}
.opera-only :-o-prefocus,.pure-g{word-spacing:-.43em}
.pure-u{display:inline-block;vertical-align:top;word-spacing:normal;letter-spacing:normal;zoom:1;text-rendering:auto}
.pure-g [class*=pure-u]{font-family:sans-serif}
/*菜单*/
.pure-menu{box-sizing:border-box}
.pure-menu-fixed{position:fixed;top:0;left:0;z-index:3}
.pure-menu-item,.pure-menu-list{position:relative}
.pure-menu-list{margin:0;padding:0;list-style:none}
.pure-menu-item{margin:0;padding:0;height:100%}
.pure-menu-heading,.pure-menu-link{display:block;text-decoration:none;white-space:nowrap}
.pure-menu-item .pure-menu-item{display:block}
.pure-menu-children{position:absolute;top:0;left:100%;z-index:3;display:none;margin:0;padding:0}
.pure-menu-horizontal .pure-menu-children{top:auto;left:0;width:inherit}
.pure-menu-active>.pure-menu-children,.pure-menu-allow-hover:hover>.pure-menu-children{position:absolute;display:block}
.pure-menu-has-children>.pure-menu-link:after{padding-left:.5em;content:"\25B8";font-size:small}
.pure-menu-horizontal .pure-menu-has-children>.pure-menu-link:after{content:"\25BE"}
.pure-menu-horizontal{width:100%;white-space:nowrap}
.pure-menu-horizontal .pure-menu-list{display:inline-block}
.pure-menu-horizontal .pure-menu-heading,.pure-menu-horizontal .pure-menu-item,.pure-menu-horizontal .pure-menu-separator{display:inline-block;vertical-align:middle;zoom:1}
.pure-menu-scrollable{overflow-x:hidden;overflow-y:scroll}
.pure-menu-scrollable .pure-menu-list{display:block}
.pure-menu-horizontal.pure-menu-scrollable .pure-menu-list{display:inline-block}
.pure-menu-horizontal.pure-menu-scrollable{overflow-x:auto;overflow-y:hidden;padding:.5em 0;white-space:nowrap;-webkit-overflow-scrolling:touch}
.pure-menu-horizontal .pure-menu-children .pure-menu-separator,.pure-menu-separator{margin:.3em 0;height:1px;background-color:#ccc}
.pure-menu-horizontal .pure-menu-separator{margin:0 .3em;width:1px;height:1.3em}
.pure-menu-horizontal .pure-menu-children .pure-menu-separator{display:block;width:auto}
.pure-menu-heading{color:#565d64;text-transform:uppercase}
.pure-menu-link{color:#777}
.pure-menu-children{background-color:#fff}
.pure-menu-disabled,.pure-menu-heading,.pure-menu-link{padding:.5em 1em}
.pure-menu-disabled{opacity:.5}
.pure-menu-disabled .pure-menu-link:hover{background-color:transparent}
.pure-menu-active>.pure-menu-link,.pure-menu-link:focus,.pure-menu-link:hover{background-color:#eee}
.pure-menu-selected>.pure-menu-link,.pure-menu-selected>.pure-menu-link:visited{color:#000}
/*表格*/
.pure-table{border-collapse:collapse;border-spacing:0;empty-cells:show;border:1px solid #cbcbcb}
.pure-table caption{color:#000;font:italic 85%/1 arial,sans-serif;padding:1em 0;text-align:center}
.pure-table td,.pure-table th{border-left:1px solid #cbcbcb;border-width:0 0 0 1px;font-size:inherit;margin:0;overflow:visible;padding:.5em 1em}
.pure-table thead{background-color:#e0e0e0;color:#000;text-align:left;vertical-align:bottom}
.pure-table td{background-color:transparent}
.pure-table-odd td,.pure-table-striped tr:nth-child(2n-1) td{background-color:#f2f2f2}
.pure-table-bordered td{border-bottom:1px solid #cbcbcb}
.pure-table-bordered tbody>tr:last-child>td{border-bottom-width:0}
.pure-table-horizontal td,.pure-table-horizontal th{border-width:0 0 1px;border-bottom:1px solid #cbcbcb}
.pure-table-horizontal tbody>tr:last-child>td{border-bottom-width:0}

View file

@ -1,5 +1,6 @@
jQuery(function($) {/**声明加载jQuery */
/**点击开启密码可见 */
$("#start_view").click(function() {
var ajax_data = {
@ -9,15 +10,15 @@ jQuery(function($) {/**声明加载jQuery */
pass: $('#pass_view').val()
};
$.post(ajax.url, ajax_data, function(c) {
c = c.replace(/\s/g, '');/**Ajax返回有空行,这里处理一下.妈的花了老子3个小时 */
if (c != '0') {
c = $.trim(c);/**Ajax返回有空行,这里处理一下.妈的花了老子3个小时 */
if (c != '400') {
$(".pass_viewbox").hide();
$(".pass_viewbox").after("<div class='content-hide-tips'><span class='rate label label-warning'>隐藏内容:</span><p>" + c + "</p></div>");
localStorage.setItem('gdk_pass_' + ajax_data['id'], c);/**隐藏内容直接存入浏览器缓存,下次直接读取 */
} else {
swal("查看失败", "您的密码错误,请重试", "error");
}
});gdk_
});
});
/**已经密码可见的自动从浏览器读取内容并显示,这里加个延时处理 */
@ -37,7 +38,121 @@ if ( $("#start_view").length > 0 ) {/**如果网站有密码可见,就执行 */
}
/**密码可见end */
/**数据验证 数据,验证模式*/
function check_data(a,b){/**1=数字,2=邮箱,3=网址,4= 到时候再写 */
a = $.trim(a);
if(a==null || a=="" || a=='undefined') return false;
var numRegex = /^[1-9][0-9]*$/i,
emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,
urlRegex = /^((http|https):\/\/(\w+:{0,1}\w*@)?(\S+)|)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?$/,
ipRegex = /^((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){3}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})$/i,
chineseReg = /^[\u4e00-\u9fa5]{0,}$/;
switch(b) {
case 1:
return numRegex.test(a);
break;
case 2:
return emailRegex.test(a);
break;
case 3:
return urlRegex.test(a);
break;
default:
return false;
}
}
$("#submit_pay").click(function() {
var money = $("#money").val(),
pay_way = $("input[name='pay_way']:checked").val(),
user_id = $('#submit_pay').data('id'),
action = $('#submit_pay').data('action');
/**检查服务器是否有订单 */
function checkpayjs(a, b) { //ID订单号
var ajax_data = {
action: 'checkpayjs',
id: a,
orderid: b,
};
$.post(ajax.url, ajax_data,
function(c) {
if (c == '1') {
swal("支付成功!", "为了方便您后续再次查看,建议您输入您的常用邮箱作为提取码", "info", {
dangerMode: true,
closeOnClickOutside: false,
content: "input",
})
.then((d) => {
getcontent(a);
addcode(a, `${d}`);
}); //ok
} else {
swal("查看失败", "您的支付没有成功,请重试", "error");
}
});
}
/** 生成支付二维码money , pay_way ,user_id*/
function get_payjs_qr(a , b ,c){
var ajax_data = {
pay_points: ajax.pay_points,
action: action,
money: a,
way: b,
id: c
};
$.post(ajax.url, ajax_data,
function(d) {
if (d !== '400') {
var f = document.createElement("img"),
e = d.split('|');
f.id = 'pqrious';
console.log(e[3]);
swal("支付金额:" + e[0] + "元", {
content: f,
closeOnClickOutside: false,
button: "支付已完成",
})
.then((value) => {
checkpayjs(c, e[1]);/**用户id,订单号 */
});
new QRious({
element: document.getElementById("pqrious"),
size: 300,
value: e[3]
});
}else{
swal("充值发生错误", "哦嚯,好像发生了什么错误", "error");
}
});
}
/**生成二维码结束 */
if(check_data(money,1)){
//swal("充值金额", "充值金额为:"+money+";支付方式为:"+pay_way, "success");//开始支付
get_payjs_qr(money , pay_way ,user_id);
}else{
swal("充值金额不正确", "请输入正确的充值金额", "error");
}
});

6
assets/js/jQuery.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,6 @@
<?php
class GDK_Payjs
class Payjs
{
private $mchid;
private $key;

View file

@ -342,7 +342,8 @@ jQuery(function ($) {
var ajax_data = { action: 'gdk_test_email' };
$.post(ajaxurl, ajax_data,
function(a) {
if (a == '1') {
a = $.trim(a);
if (a == '200') {
alert("测试成功", "您的SMTP邮箱邮件发送已成功,Enjoy it");
}else{
swal("测试失败", "您的SMTP邮箱邮件响应失败,请重试", "error");

View file

@ -4,12 +4,18 @@
*Ajax操作文件
*/
/**
* 200 ok
* 400 fail
*/
//后台邮箱检测
function gdk_test_email() {
$is_error = !wp_mail('donotreply@mywpku.com', '测试发信', 'WP 积木测试发信');
if ($is_error) {
exit('0');
exit('500');
}else{
exit('1');
exit('200');
}
}
add_action('wp_ajax_nopriv_gdk_test_email', 'gdk_test_email');
@ -18,7 +24,7 @@ add_action('wp_ajax_gdk_test_email', 'gdk_test_email');
//粘贴上传图片
function gdk_pasteup_imag() {
if( !isset( $_POST['pui_nonce'] ) || !wp_verify_nonce($_POST['pui_nonce'], 'pui-nonce') ) exit('Permissions check failed');
if( !isset( $_POST['pui_nonce'] ) || !wp_verify_nonce($_POST['pui_nonce'], 'pui-nonce') ) exit('400');
if($_FILES) {
global $post;
$post_ID = $post->ID;
@ -47,11 +53,11 @@ function gdk_pasteup_imag() {
$attach_data = wp_generate_attachment_metadata( $attach_id, $file_path );
wp_update_attachment_metadata( $attach_id, $attach_data );
}
$result['success']= true;
$result['message']= $file_url;
$result['success'] = true;
$result['message'] = $file_url;
}
} else {
$result['message']="Invalid file";
$result['message'] = "400";
}
echo(json_encode($result));
exit();
@ -60,23 +66,73 @@ function gdk_pasteup_imag() {
add_action('wp_ajax_nopriv_gdk_pasteup_imag', 'gdk_pasteup_imag');
add_action('wp_ajax_gdk_pasteup_imag', 'gdk_pasteup_imag');
//密码可见
function gdk_pass_view() {
if( !isset( $_POST['pass_nonce'] ) || !wp_verify_nonce($_POST['pass_nonce'], 'pass_nonce') ) return;
if( !isset( $_POST['pass_nonce'] ) || !wp_verify_nonce($_POST['pass_nonce'], 'pass_nonce') ) exit('400');
$action = $_POST['action'];
$post_id = $_POST['id'];
$pass = $_POST['pass'];
if(!isset( $action ) || !isset( $post_id ) || !isset( $pass ) ) return;
if(!isset( $action ) || !isset( $post_id ) || !isset( $pass ) ) exit('400');
if($pass == '2233') {
$pass_content = get_post_meta($post_id, '_pass_content')[0];
exit($pass_content);
}else{
exit('0');
exit('400');
}
}
add_action('wp_ajax_nopriv_gdk_pass_view', 'gdk_pass_view');
add_action('wp_ajax_gdk_pass_view', 'gdk_pass_view');
//在线充值
function pay_points() {
if( !isset( $_POST['pay_points'] ) || !wp_verify_nonce($_POST['pay_points'], 'pay_points') ) exit('400');
if (!isset($_POST['money']) || !isset($_POST['way'])) exit('400');
if (isset($_POST['id']) && $_POST['action'] == 'pay_points') {
$config = [
'mchid' => gdk_option('gdk_payjs_id'), // 配置商户号
'key' => gdk_option('gdk_payjs_key'), // 配置通信密钥
];
// 初始化
$payjs = new Payjs($config);
$data = [
'body' => '积分充值', // 订单标题
'attach' => $_POST['id'], // 订单备注
'out_trade_no' => gdk_order_id(), // 订单号
'total_fee' => intval($_POST['money'])*100, // 金额,单位:分
'notify_url' => GDK_BASE_URL.'/public/push.php',
'hide' => '1'
];
$result['money'] = intval($_POST['money']);//rmb金额
$result['trade_no'] = $data['out_trade_no'];
if( $_POST['way'] == 'alipay' ) {
$data['type'] = 'alipay';
$result['way'] = '支付宝';
} else {
$result['way'] = '微信';
}
if(gdk_is_mobile()) {
$rst = $payjs->cashier($data);//手机使用
$result['img'] = $rst;
} else {
$rst = $payjs->native($data);//电脑使用
$result['img'] = $rst['code_url'];
}
exit(implode('|',$result));
}
}
add_action( 'wp_ajax_pay_points', 'pay_points' );
add_action( 'wp_ajax_nopriv_pay_points', 'pay_points' );
/**END */
//weauth自动登录
function bind_email_check(){
$mail = isset($_POST['email']) ? $_POST['email'] : false;
@ -236,44 +292,10 @@ add_action( 'wp_ajax_nopriv_addcode', 'addcode' );
/*免登陆购买结束*/
//在线充值
function pay_chongzhi() {
if (isset($_POST['jine']) && $_POST['action'] == 'pay_chongzhi') {
$config = [
'mchid' => gdk_option('gdk_payjs_id'), // 配置商户号
'key' => gdk_option('gdk_payjs_secret'), // 配置通信密钥
];
// 初始化
$payjs = new Payjs($config);
$data = [
'body' => '积分充值', // 订单标题
'attach' => get_current_user_id(), // 订单备注
'out_trade_no' => gdk_order_id(), // 订单号
'total_fee' => intval($_POST['jine'])*100, // 金额,单位:分
'notify_url' => GDK_BASE_URL.'/public/push.php',
'hide' => '1'
];
$result_money = intval($_POST['jine']);
$result_trade_no = $data['out_trade_no'];
if( gdk_option('gdk_payjs_alipay') && $_POST['way'] =='alipay' ) {
$data['type'] = 'alipay';
$result_way = '支付宝';
} else {
$result_way = '微信';
}
if(gdk_is_mobile()) {
$rst = $payjs->cashier($data);//手机使用
$result_img = $rst;
} else {
$rst = $payjs->native($data);//电脑使用
$result_img = $rst['code_url'];
}
$result = $result_money.'|'.$result_way.'|'. $result_img.'|'. $result_trade_no;
exit($result);
}
}
add_action( 'wp_ajax_pay_chongzhi', 'pay_chongzhi' );
add_action( 'wp_ajax_nopriv_pay_chongzhi', 'pay_chongzhi' );
//检查付款情况
function payrest(){

View file

@ -1019,4 +1019,42 @@ function get_link_items() {
$result = get_the_link_items();
}
return $result;
}
//充值按钮
function buy_points(){
if(is_user_logged_in()) {//logined
$result = '
<a data-fancybox="pay_fancybox" data-src="#pay_fancybox" href="javascript:;" class="button">点击充值</a>
<form id="pay_fancybox" name="pay_form" style="display: none; width: 100%; max-width: 500px;" class="pure-form">
<h2 class="mb-3">积分充值</h2>
<p>请在下面输入充值金额以及支付工具,微信支付宝都可以,如果下面选项中有支付宝一般建议支付宝</p>
<label for="money">支付金额</label>
<input name="money" id="money" min="1" value="2" type="number" required>
<br /><label for="pay_way">支付方式</label>';
if( gdk_option('gdk_payjs_alipay')){
$result .= '
<label><input name="pay_way" type="radio" value = "alipay" checked/> 支付宝</label> &nbsp;&nbsp;&nbsp;&nbsp;<label><input name="pay_way" type="radio" value = "wechat" /> 微信</label>';
}else{
$result .= '<br /><label> 微信</label>';
}
$result .= '
<p class="mb-0 text-right">
<input data-fancybox-close type="button" id="submit_pay" data-action="pay_points" data-id="'.get_current_user_id().'" class="pure-button pure-button-primary" value="提交">
</p>
</form>';
wp_enqueue_script('qrious', 'https://cdn.bootcss.com/qrious/4.0.2/qrious.min.js', array('jquery'), GDK_PLUGIN_VER, true);
}else{// no login
$result = '<div class=\'alert info\'>本页面需要您登录才可以操作,请先 <a target="_blank" href="'.esc_url( wp_login_url( get_permalink() ) ).'">点击登录</a> 或者<a href="'.esc_url( wp_registration_url() ).'">立即注册</a></div>';
}
return $result;
}

View file

@ -6,6 +6,12 @@
add_filter( 'widget_text', 'shortcode_unautop' );
add_filter( 'widget_text', 'do_shortcode' );
//积分充值短代码
function gdk_potin() {
return buy_points();
}
add_shortcode('gdk_potin_btn', 'gdk_potin');
//添加钮Download
function DownloadUrl($atts, $content = null) {
extract(shortcode_atts(array(

View file

@ -1,6 +1,4 @@
<?php
$t_url = preg_replace('/^url=(.*)$/i','$1',$_SERVER["QUERY_STRING"]);
if(!empty($t_url)) {
preg_match('/(http|https):\/\//',$t_url,$matches);
@ -20,75 +18,53 @@ if(!empty($t_url)) {
<meta http-equiv="refresh" content="1;url='<?php echo $url;?>';">
<title><?php echo $title;?></title>
<style type="text/css">
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline
}
body {
background: #3498db;
}
#loader-container {
width: 188px;
height: 188px;
color: white;
margin: 0 auto;
position: absolute;
top: 50%;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%);
border: 5px solid #3498db;
border-radius: 50%;
-webkit-animation: borderScale 1s infinite ease-in-out;
animation: borderScale 1s infinite ease-in-out;
}
#loadingText {
font-family: 'Raleway', sans-serif;
font-size: 1.4em;
position: absolute;
top: 50%;
left: 50%;
margin-right: -50%;
transform: translate(-50%, -50%);
}
@-webkit-keyframes borderScale {
0% {
border: 5px solid white;
}
50% {
border: 25px solid #3498db;
}
100% {
border: 5px solid white;
}
}
@keyframes borderScale {
0% {
border: 5px solid white;
}
50% {
border: 25px solid #3498db;
}
100% {
border: 5px solid white;
}
}
body{background:#F5F7FA;margin:0}
.loader{-webkit-animation:fadein 2s;-moz-animation:fadein 2s;-o-animation:fadein 2s;animation:fadein 2s;position:absolute;top:0;left:0;right:0;bottom:0;background-color:#F5F7FA}
@-moz-keyframes fadein{from{opacity:0}
to{opacity:1}
}@-webkit-keyframes fadein{from{opacity:0}
to{opacity:1}
}@-o-keyframes fadein{from{opacity:0}
to{opacity:1}
}@keyframes fadein{from{opacity:0}
to{opacity:1}
}.loader-inner{position:absolute;z-index:300;top:40%;left:50%;-webkit-transform:translate(-50%,-50%);-moz-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);-o-transform:translate(-50%,-50%);transform:translate(-50%,-50%)}
@-webkit-keyframes rotate_pacman_half_up{0%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}
50%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
100%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}
}@keyframes rotate_pacman_half_up{0%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}
50%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}
100%{-webkit-transform:rotate(270deg);transform:rotate(270deg)}
}@-webkit-keyframes rotate_pacman_half_down{0%{-webkit-transform:rotate(90deg);transform:rotate(90deg)}
50%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}
100%{-webkit-transform:rotate(90deg);transform:rotate(90deg)}
}@keyframes rotate_pacman_half_down{0%{-webkit-transform:rotate(90deg);transform:rotate(90deg)}
50%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}
100%{-webkit-transform:rotate(90deg);transform:rotate(90deg)}
}@-webkit-keyframes pacman-balls{75%{opacity:.7}
100%{-webkit-transform:translate(-100px,-6.25px);transform:translate(-100px,-6.25px)}
}@keyframes pacman-balls{75%{opacity:.7}
100%{-webkit-transform:translate(-100px,-6.25px);transform:translate(-100px,-6.25px)}
}.pacman>div:nth-child(2){-webkit-animation:pacman-balls 1s 0s infinite linear;animation:pacman-balls 1s 0s infinite linear}
.pacman>div:nth-child(3){-webkit-animation:pacman-balls 1s .33s infinite linear;animation:pacman-balls 1s .33s infinite linear}
.pacman>div:nth-child(4){-webkit-animation:pacman-balls 1s .66s infinite linear;animation:pacman-balls 1s .66s infinite linear}
.pacman>div:nth-child(5){-webkit-animation:pacman-balls 1s .99s infinite linear;animation:pacman-balls 1s .99s infinite linear}
.pacman>div:first-of-type{width:0;height:0;border-right:25px solid transparent;border-top:25px solid #7A57D1;border-left:25px solid #7A57D1;border-bottom:25px solid #7A57D1;border-radius:25px;-webkit-animation:rotate_pacman_half_up .5s 0s infinite;animation:rotate_pacman_half_up .5s 0s infinite}
.pacman>div:nth-child(2){width:0;height:0;border-right:25px solid transparent;border-top:25px solid #7A57D1;border-left:25px solid #7A57D1;border-bottom:25px solid #7A57D1;border-radius:25px;-webkit-animation:rotate_pacman_half_down .5s 0s infinite;animation:rotate_pacman_half_down .5s 0s infinite;margin-top:-50px}
.pacman>div:nth-child(3),.pacman>div:nth-child(4),.pacman>div:nth-child(5),.pacman>div:nth-child(6){background-color:#7A57D1;width:15px;height:15px;border-radius:100%;margin:2px;width:10px;height:10px;position:absolute;-webkit-transform:translate(0,-6.25px);-ms-transform:translate(0,-6.25px);transform:translate(0,-6.25px);top:25px;left:100px}
.loader-text{margin:20px 0 0 -16px;display:block;font-size:18px}
</style>
</head>
<body>
<div id="loader-container"><p id="loadingText">页面加载中...</p></div>
<div class="loader">
<div class="loader-inner pacman">
<div></div>
<div></div>
<div></div>
<div></div>
<div></div>
<span class="loader-text">页面跳转中, 请稍候…</span>
</div>
</div>
</body>
</html>