仅管理员可查看本文章
[content_hide]
2025年9月30日对kissacg网站的维护记录
一.对支付插件jnpar_pay的维护
(如果需要卸载保留数据请在插件目录文件夹删除这个插件相关的所有文件或者只删除uninstall.php和upgrade.php文件后去discuz管理员后台卸载插件即可保留数据)
1.修改人民币为虚拟币
①文件地址:网站目录/source/plugin/jnpar_pay
文件discuz_plugin_jnpar_pay_SC_UTF8.xml
搜索
1人民币替换
1虚拟币②搜索
人民币替换
虚拟币③搜索
1元替换
1个④搜索
更多技能趴精品插件替换
更多插件⑤搜索
技术支持:discuz.jnpar.com替换为
技术支持:www.kissacg.org⑥192行
搜索
jnpar_pay_win1然后替换
dtpaytip⑦将191到193行的代码
替换为
				<item id="s10"><![CDATA[您好,您还没有登录,不能进行此操作。]]></item>
				<item id="s11"><![CDATA[您可以 <a href="member.php?mod=logging&action=login&referer=plugin.php?id=jnpar_pay:jn_pay" onclick="showWindow('dtpaytip',this.href,'get',0)">点击此处</a> 进行登录<br/>]]></item>
				<item id="s12"><![CDATA[如果您还没有账号,可以先进行注册<br/><br/>完成注册后请尽快绑定快捷登录或邮箱防止忘记密码]]></item>
2.游客状态购买弹窗浏览器控制台报错解决
文件地址:/source/plugin/jnpar_pay/template
文件名selectpay.htm
修改代码为
文件名selectpay.htm
修改代码为
<!--{template common/header_ajax}-->
<script>
function isnull(){
	var Reg,Str;
	if (document.selectpay.paytype.value==""){
		alert("{lang jnpar_pay:s1}");
		return false;
	}
	<!--{if ($_GET["buykey"]==2) and $inv_mailsend}-->
	if (document.selectpay.remarks.value==""){
		alert("{lang jnpar_pay:s2}");
		return false;
	}
	Reg=/^[a-zA-Z0-9][\w\.\-]{2,17}\@[a-zA-Z0-9]+(?:\.[a-zA-Z0-9]+)+$/gi;
	Str=document.getElementById("remarks").value;
	if(Str!=="")
	{
		if(!Reg.test(Str))
		{
			alert("{lang jnpar_pay:s3}");
			return false;
		}
	}
	<!--{/if}-->
	
}
</script>
<style>
.fatherdiv1{
	BACKGROUND-COLOR:#FFFFD6;
	border:1px solid #FFE36B;
	padding:5px;color:#8C1800; 
	line-height:25px; 
	text-align:center; 
	padding:10px;
	}
.orgBtn {
    background: #f60;
    border: 1px solid #ef6000;
    max-width: 250px;
    margin: 5px auto;
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    height: 43px;
    line-height: 43px;
    text-align: center;
    color: #fff !important;
    border-radius: 5px;
    font-size: 18px;
	cursor: pointer;
}
.qdRadio{
	width: 112px;
    height: 32px;
    line-height: 32px;
    color: #707070;
    border: 5px solid #fff;
    cursor: pointer;
	margin:12px;
	}
.qdRadioSel{
    cursor: default;
    background-position: 0 -32px;
	}
.qdRadio i {
    margin-right: 10px;
    background: url(source/plugin/jnpar_pay/images/circle.jpg) no-repeat left top;
    width: 20px;
    height: 32px;
    display: block;
}
.qdRadioSel i {
    background-position: 0 -32px;
}
em, cite, i {
    font-style: normal;
}
.conTable .bank {
    padding-top: 15px;
    padding-right: 80px;
    width: 604px;
    position: relative;
}
.conTable td {
    width: 754px;
    text-align: left;
    line-height: 65px;
    font-size: 14px;
}
</style>
<script reload=1>
function CheckBank(way) {
    var obj = '';
    var paycount = '';
    var spanpay = '';
    var paysrc = '';
    {loop $pay_bank1 $key $v}
    if (way == "{$v}") {
        obj = '{$key}';
        <!--{if $pay_bank1[alipay]}-->
        document.getElementById("alipay").className = 'qdRadio';
        <!--{/if}-->
        <!--{if $pay_bank1[wechat]}-->
        document.getElementById("wechat").className = 'qdRadio';
        <!--{/if}-->
        <!--{if $pay_bank1[credit]}-->
        document.getElementById("credit").className = 'qdRadio';
        <!--{/if}-->
    }
    {/loop}
    if (way == 3) {
        document.getElementById('credittip').style.display = 'block';
    } else {
        document.getElementById('credittip').style.display = 'none';
    }
    document.getElementById("paytype").value = way;
    document.getElementById(obj).className = 'qdRadio qdRadioSel';
}
// 确保元素存在后再调用 CheckBank 函数
document.addEventListener('DOMContentLoaded', function() {
    // 检查元素是否存在
    if (document.getElementById('alipay') && document.getElementById('wechat') && document.getElementById('credit')) {
        // 默认选择第一个支付方式
        <!--{if $pay_bank1[alipay]}-->
        CheckBank(1);
        <!--{elseif $pay_bank1[wechat]}-->
        CheckBank(2);
        <!--{elseif $pay_bank1[credit]}-->
        CheckBank(3);
        <!--{/if}-->
    } else {
        console.error('支付方式元素未找到');
    }
});
</script>
<div class="fcontent cl">
        <h3 class="float_ctrl" style="margin-top:10px;">
                <em id="return_$handlekey" style="padding:15px;">{lang jnpar_pay:s6}</em>
                <span style="float:right; padding-right:15px;">
                        <a href="javascript:;" onClick="hideWindow('jnpar_pay_win1');" class="float_close" title="{lang jnpar_pay:s7}">{lang jnpar_pay:s7}</a>
                </span>
        </h3>
        <div class="postbox" style=" min-width:350px;">
                
            <!--------------===================================--------------->
            <div class="fatherdiv1" style=" margin:10px; margin-bottom:20px; display:block;">
            <!--{if $allow_guestpay  or $_G[uid]}-->
              <form action="plugin.php?id=jnpar_pay:jn_pay" method="post" name="selectpay" id="selectpay">
				  <input type="hidden" name="buykey" id="buykey" value="{$_GET['buykey']}">
				  <input type="hidden" name="buyid" id="buyid" value="{$_GET['buyid']}">
				  <input type="hidden" name="appid" id="appid" value="{$_GET['appid']}">
				  <input type="hidden" name="para" id="para" value="{$_GET['para']}">
				  <input type="hidden" name="formhash" id="formhash" value="{FORMHASH}">
				<!--{if ($_GET["buykey"]==2 and $inv_mailsend)}-->
				  <div style="height: 50px;text-align: center;line-height: 50px;">{lang jnpar_pay:s8}
                      <input name="remarks" type="text" id="remarks" size="20" maxlength="30" />
				  </div>
				<!--{/if}-->
				  <div style="font-size: 16px;font-weight: bold;color: #7D0204;display: none;" id="credittip">{lang jnpar_pay:add5}</div>
				  <div style="text-align: center;width: {$selwidth}px;display: flex;margin: 10px auto;" class="cl">
				  <input id="paytype" name="paytype" value="" type="hidden">
				  {loop $pay_bank1 $key $v}
					<a id="{$key}" style="background: url('source/plugin/jnpar_pay/images/{$key}.jpg') no-repeat scroll right top;border: 1px solid #CCC;flex: 1;" href="javascript:CheckBank({$v});" class="qdRadio"><i></i></a>
					{/loop}
				  </div>
				  {if in_array(3,$pay_bank1)}
				  <div>{lang jnpar_pay:add6}</div>
				  {/if}
				  <div style="text-align: center;padding: 10px;line-height: 30px;"><input type="submit" class="orgBtn" name="button" id="button" value="{lang jnpar_pay:s9}" onClick="return isnull();"></div>
              </form>
          <!--{else}-->
				<div style="padding: 10px; font-size: 14px;line-height: 25px;">
					{lang jnpar_pay:s10}<br/>
					您可以 <a href="member.php?mod=logging&action=login" onclick="showWindow('jnpar_pay_win1',this.href,'get',0)">点击此处</a> 进行登录<br/>
					{lang jnpar_pay:s12}
				
				</div>
          
		  <!--{/if}-->
            </div>
            
            <!--------------===================================---------------> 
        </div>
</div>
<!--{template common/footer_ajax}-->3.游客状态下的支付弹窗关闭按钮失效问题
文件地址:网站/source/plugin/jnpar_pay/template
selectpay.htm文件
搜索
jnpar_pay_win1然后替换
dtpaytip搜索
float_close然后替换为
flbc4.其他和去广告
文件地址:网站/source/plugin/jnpar_pay
文件:gongdan.inc.php和jnpar.inc.php
将
dheader('Location:'.'htt'.'ps:'.'//dis'.'cuz'.'.jn'.'par'.'.com'.'/for'.'um-'.'36'.'-1.'.'ht'.'ml?sn='.SN);和
dheader('Location:'.'https://dis'.'cuz.jn'.'par.com/forum.php?gid='.'41');替换为
dheader('Location:'.'https://www.kissacg.org/');
二、对下载付费插件jnpar_downtable的修改
(如果需要卸载保留数据请在插件目录文件夹删除这个插件相关的所有文件或者只删除uninstall.php和upgrade.php文件后去discuz管理员后台卸载插件即可保留数据)
1.修改购买记录高度
文件目录
网站/source/plugin/jnpar_downtable/template
文件paylog.htm
第一行代码
<style>
	.paylog {
    width: 600px;
    margin: 10px;替换为
<style>
	.paylog {
    width: 600px;
    margin: 10px;
    max-height: 500px; /* 设置最大高度 */
    overflow-y: auto; /* 添加滚动条 */
}2.修改购买记录弹窗的数据限制前200条可展示
if (!defined('IN_DISCUZ')) {
    exit('Access Denied');
}
global $_G;
$tid = intval($_GET['tid']);
$pid = intval($_GET['pid']);
$uid = $_G['uid'] ? $_G['uid'] : 0;
if (!$uid) showmessage('to_login', NULL, array(), array('login' => 1));
if (empty($_G['cache']['plugin'])) {
    loadcache('plugin');
}
$var = $_G['cache']['plugin']['jnpar_downtable'];
$credittitle = $_G['setting']['extcredits'][$var['down_credit']]['title'];
$downinfo = DB::fetch_first('SELECT * FROM '.DB::table('jnpar_downtable_tlog')." WHERE tid='$tid' LIMIT 200"); // 添加 LIMIT 200 限制返回的记录数
$needpay = $downinfo['needmoney'];
$paytitle = $needpay . $credittitle;
// 使用 LIMIT 子句获取前 200 条购买记录并按购买时间降序排列
$logs = DB::fetch_all("SELECT * FROM ".DB::table('jnpar_downtable_buylog')." WHERE tid='$tid' ORDER BY buytime DESC LIMIT 200"); 
$allcount = sizeof($logs); // 此处的 $allcount 将只反映查询返回的记录数,不会超过 200
include template('jnpar_downtable:paylog');
3.其他和去广告
文件地址:网站/source/plugin/jnpar_downtable
文件:gongdan.inc.php和jnpar.inc.php
将
dheader('Location:'.'htt'.'ps:'.'//dis'.'cuz'.'.jn'.'par'.'.com'.'/for'.'um-'.'36'.'-1.'.'ht'.'ml');和
dheader('Location:'.'https://dis'.'cuz.jn'.'par.com/forum.php?gid='.'41');替换为
dheader('Location:'.'https://www.kissacg.org/');
[/content_hide]
THE END
    
