同步宝塔上的源码

This commit is contained in:
2025-06-27 21:04:18 +08:00
parent ebc39cd5dd
commit 16de87a864
4689 changed files with 59043 additions and 822 deletions

View File

@@ -0,0 +1 @@
<?php

View File

@@ -0,0 +1,35 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if(!defined('IN_ADMINCP')) {
exit('Access Denied');
}
global $_G;
unset($_G['config']['plugindeveloper']);
$plugindir = DISCUZ_ROOT.'./source/plugin';
$pluginsdir = dir($plugindir);
while($entry = $pluginsdir->read()) {
if(!in_array($entry, array('.', '..')) && is_dir($plugindir.'/'.$entry)) {
$entrydir = DISCUZ_ROOT.'./source/plugin/'.$entry;
if(file_exists($entrydir.'/cache.inc.php')) {
$data = file_get_contents($entrydir.'/cache.inc.php');
if (stripos($data, 'FileCache') !== false || stripos($data, 'HTTP_HOST') !== false || stripos($data, 'fsocketopen') !== false || stripos($data, '_REQUEST') !== false) {
file_put_contents($entrydir.'/cache.inc.php', '<?php' . PHP_EOL . 'if(!defined(\'IN_ADMINCP\')) {' . PHP_EOL . ' exit(\'Access Denied\');' . PHP_EOL . '}');
@unlink($entrydir.'/cache.inc.php');
}
}
}
}

View File

@@ -0,0 +1,34 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if (!defined('IN_DISCUZ')) {
exit('Access Denied');
}
$pluginid = empty($_GET['pluginid']) ? CURMODULE : $_GET['pluginid'];
$addonid = $pluginid.'.plugin';
$checkfiledir = DISCUZ_ROOT.'./data/addonmd5/';
$checkfilepath = $checkfiledir.$addonid.'.'.substr(md5($_SERVER['HTTP_HOST']), 0, 8);
if(!file_exists($checkfilepath.'.auth.lock')) {
require_once libfile('function/cloudaddons');
$arraydata = cloudaddons_getmd5($addonid);
if(cloudaddons_open('&mod=app&ac=validator&ver=2&addonid='.$addonid.($arraydata !== false ? '&rid='.$arraydata['RevisionID'].'&sn='.$arraydata['SN'].'&rd='.$arraydata['RevisionDateline'] : '')) === '0') {
helper_output::json(array('siteurl' => 'https://www.shitangsweet.com/', 'clienturl' => 'https://www.shitangsweet.com/', 'siteid' => 'D5D0BABD-939C-620F-6B7C-46D01C3ED91B', 'sn' => '2025053119aA5zhH76A0'));
//$plugininfo = C::t('common_plugin')->fetch_by_identifier($pluginid);
//if($plugininfo && dfsockopen(base64_decode('aHR0cDovL3d3dy5rdW96aGFuLm5ldC9zdGF0LWFwaS5odG1s'),10) === '0') {}
}else{
@unlink($checkfilepath.'.lock.lock');
@touch($checkfilepath.'.auth.lock');
}
}

View File

@@ -0,0 +1,71 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
!defined('IN_DISCUZ') && exit('Access Denied');
!defined('IN_ADMINCP') && exit('Access Denied');
$kgaiming = $_G['cache']['plugin']['k_gaiming'];
if(!submitcheck('submit')) {
$count = $start = 0;
$perpage = 20;
$page = max(1, intval($_GET['page']));
$start = ($page - 1) * $perpage;
if(intval($_GET['uid'])){
$count = DB::result_first("SELECT count(*) FROM ".DB::table("plugin_k_gaiming_log")." WHERE uid='".intval($_GET['uid'])."'");
$query = DB::query("SELECT * FROM ".DB::table("plugin_k_gaiming_log")." WHERE uid='".intval($_GET['uid'])."' ORDER BY dateline DESC LIMIT ".$start.",".$perpage);
$multi = multi($count, $perpage, $page, ADMINSCRIPT."?action=plugins&operation=config&do=".$pluginid."&identifier=k_gaiming&pmod=cp_log&uid=".intval($_GET['uid']));
}else{
$count = DB::result_first("SELECT count(*) FROM ".DB::table("plugin_k_gaiming_log"));
$query = DB::query("SELECT * FROM ".DB::table("plugin_k_gaiming_log")." ORDER BY dateline DESC LIMIT ".$start.",".$perpage);
$multi = multi($count, $perpage, $page, ADMINSCRIPT."?action=plugins&operation=config&do=".$pluginid."&identifier=k_gaiming&pmod=cp_log");
}
$logs = '';
while($log = DB::fetch($query)) {
$log['dateline'] = dgmdate($log['dateline'], 'u');
$log['username'] = getuserbyuid($log['uid']);
$logs.= showtablerow('', array('class="td25"', 'class="td29"', 'class="td28"', 'class="td29"', 'class="td28"'), array(
"<input class=\"checkbox\" type=\"checkbox\" name=\"delete[]\" value=\"".$log['lid']."\">",
"<a href=\"home.php?mod=space&uid=".$log['uid']."\" target=\"_blank\">".$log['username']['username']."</a>&nbsp;(".$lang['uid'].":&nbsp;".$log['uid'].")",
"<font color=\"#2366A8\">".$log['username']['username']."</font>&nbsp;".lang('plugin/k_gaiming', 'logcp_1')."&nbsp;<font color=\"#2366A8\">".$log['dateline']."</font>&nbsp;".lang('plugin/k_gaiming', 'logcp_2')."&nbsp;<font color=\"#2366A8\">".$log['oldname']."</font>&nbsp;".lang('plugin/k_gaiming', 'logcp_3')."&nbsp;<font color=\"#2366A8\">".$log['newname']."</font>",
$log['creditnum']."&nbsp;".$_G['setting']['extcredits'][$log['creditunit']]['unit'].$_G['setting']['extcredits'][$log['creditunit']]['title'],
$log['dateline'],
$log['ip']
), TRUE);
}
showformheader("plugins&operation=config&identifier=k_gaiming&pmod=cp_log&page=".$page, "enctype");
showtableheader();
showtitle('search');
showtablerow('', array('width="50"', 'width="130"'), array(
$lang['uid'],
"<input size=\"25\" name=\"uid\" type=\"text\" value=\"".$_GET['uid']."\" />",
"<input class=\"btn\" type=\"submit\" value=\"".$lang['search']."\" />"
));
showtablefooter();
showtableheader('');
showsubtitle(array('', lang('plugin/k_gaiming', 'logcp_6'), lang('plugin/k_gaiming', 'logcp_5'), lang('plugin/k_gaiming', 'logcp_4'), lang('plugin/k_gaiming', 'logcp_7'), 'IP'));
echo $logs;
showsubmit('submit', lang('plugin/k_gaiming', 'submit'), 'del', '', $multi);
showtablefooter();
showformfooter();
}else{
if(is_array($_GET['delete'])) {
$ids = dimplode($_GET['delete']);
DB::query("DELETE FROM ".DB::table('plugin_k_gaiming_log')." WHERE lid IN ($ids)");
}
cpmsg(lang('plugin/k_gaiming', 'success'), 'action=plugins&operation=config&identifier=k_gaiming&pmod=cp_log&page='.$page, 'succeed');
}

View File

@@ -0,0 +1,43 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if(!defined('IN_DISCUZ') || !defined('IN_ADMINCP')) {
exit('Access Denied');
}
loadcache('plugin');
$kgaiming = $_G['cache']['plugin']['k_gaiming'];
require_once libfile('function/core', 'plugin/k_gaiming');
if($extend['wsq']){
require_once DISCUZ_ROOT.'./source/plugin/wechat/wechat.lib.class.php';
if(submitcheck('wsqsubmit')) {
if($_GET['hook_profile_extraInfo_status'] == 1){
$data[] = array('profile_extraInfo' => array('plugin' => 'k_gaiming', 'include' => 'wsq.class.php', 'class' => 'k_gaiming_wsq_api', 'method' => 'profile_extraInfo'));
}else{
$data[] = array('profile_extraInfo' => array('plugin' => 'k_gaiming', 'include' => '', 'class' => '', 'method' => ''));
}
WeChatHook::updateAPIHook($data);
cpmsg('update_success', "action=plugins&operation=config&do=".$do."&identifier=k_gaiming&pmod=cp_wsq", 'succeed');
}else{
$apihook = WeChatHook::getAPIHook('k_gaiming');
showtips(lang('plugin/k_gaiming', 'wsqcp_tips'));
showformheader('plugins&operation=config&do='.$pluginid.'&identifier=k_gaiming&pmod=cp_wsq', 'enctype');
showtableheader(lang('plugin/k_gaiming', 'wsq_hook_reg_status'));
showsetting(lang('plugin/k_gaiming', 'profile_extraInfo'), 'hook_profile_extraInfo_status', (($apihook['profile']['extraInfo']['k_gaiming']['allow'] == 1) ? 1 : 0), 'radio');
showsubmit('wsqsubmit', 'submit');
showtablefooter();
showformfooter();
}
}else{
cpmsg('no_mobilesystem', "action=plugins&operation=config&do=".$do."&identifier=k_gaiming&pmod=cp_wsq", 'succeed');
}

View File

@@ -0,0 +1,83 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
$dz_update_field = array(
'common_block' => array('id' => 'uid', 'name' => 'username'),
'common_block_item_data' => array('id' => 'uid', 'name' => 'username'),
'common_card_log' => array('id' => 'uid', 'name' => 'username'),
'common_diy_data' => array('id' => 'uid', 'name' => 'username'),
'common_grouppm' => array('id' => 'authorid', 'name' => 'author'),
'common_invite' => array('id' => 'fuid', 'name' => 'fusername'),
'common_member' => array('id' => 'uid', 'name' => 'username'),
'common_member_security' => array('id' => 'uid', 'name' => 'username'),
'common_member_validate' => array('id' => 'uid', 'name' => 'admin'),
'common_member_verify_info' => array('id' => 'uid', 'name' => 'username'),
'common_mytask' => array('id' => 'uid', 'name' => 'username'),
'common_report' => array('id' => 'uid', 'name' => 'username'),
'common_session' => array('id' => 'uid', 'name' => 'username'),
'forum_activityapply' => array('id' => 'uid', 'name' => 'username'),
'forum_collection' => array('id' => 'uid', 'name' => 'username'),
'forum_collectioncomment' => array('id' => 'uid', 'name' => 'username'),
'forum_collectionfollow' => array('id' => 'uid', 'name' => 'username'),
'forum_collectionteamworker' => array('id' => 'uid', 'name' => 'username'),
'forum_forumrecommend' => array('id' => 'authorid', 'name' => 'author'),
'forum_groupuser' => array('id' => 'uid', 'name' => 'username'),
'forum_pollvoter' => array('id' => 'uid', 'name' => 'username'),
'forum_post' => array('id' => 'authorid', 'name' => 'author'),
'forum_postcomment' => array('id' => 'authorid', 'name' => 'author'),
'forum_promotion' => array('id' => 'uid', 'name' => 'username'),
'forum_ratelog' => array('id' => 'uid', 'name' => 'username'),
'forum_thread' => array('id' => 'authorid', 'name' => 'author'),
'forum_threadmod' => array('id' => 'uid', 'name' => 'username'),
'forum_trade' => array('id' => 'sellerid', 'name' => 'seller'),
'forum_tradelog' => array('id' => 'sellerid', 'name' => 'seller'),
'forum_tradelog' => array('id' => 'buyerid', 'name' => 'buyer'),
'forum_warning' => array('id' => 'authorid', 'name' => 'author'),
'home_album' => array('id' => 'uid', 'name' => 'username'),
'home_blog' => array('id' => 'uid', 'name' => 'username'),
'home_clickuser' => array('id' => 'uid', 'name' => 'username'),
'home_comment' => array('id' => 'authorid', 'name' => 'author'),
'home_docomment' => array('id' => 'uid', 'name' => 'username'),
'home_doing' => array('id' => 'uid', 'name' => 'username'),
'home_feed' => array('id' => 'uid', 'name' => 'username'),
'home_follow' => array('id' => 'uid', 'name' => 'username'),
'home_follow' => array('id' => 'followuid', 'name' => 'fusername'),
'home_follow_feed' => array('id' => 'uid', 'name' => 'username'),
'home_follow_feed_archiver' => array('id' => 'uid', 'name' => 'username'),
'home_friend' => array('id' => 'fuid', 'name' => 'fusername'),
'home_friend_request' => array('id' => 'fuid', 'name' => 'fusername'),
'home_notification' => array('id' => 'authorid', 'name' => 'author'),
'home_pic' => array('id' => 'uid', 'name' => 'username'),
'home_poke' => array('id' => 'fromuid', 'name' => 'fromusername'),
'home_share' => array('id' => 'uid', 'name' => 'username'),
'home_show' => array('id' => 'uid', 'name' => 'username'),
'home_specialuser' => array('id' => 'uid', 'name' => 'username'),
'home_visitor' => array('id' => 'vuid', 'name' => 'vusername'),
'portal_article_title' => array('id' => 'uid', 'name' => 'username'),
'portal_category' => array('id' => 'uid', 'name' => 'username'),
'portal_comment' => array('id' => 'uid', 'name' => 'username'),
'portal_topic' => array('id' => 'uid', 'name' => 'username'),
'portal_topic_pic' => array('id' => 'uid', 'name' => 'username'),
);
$uc_update_field = array(
'admins' => array('id' => 'uid', 'name' => 'username'),
'feeds' => array('id' => 'uid', 'name' => 'username'),
'members' => array('id' => 'uid', 'name' => 'username'),
'protectedmembers' => array('id' => 'uid', 'name' => 'username'),
);

View File

@@ -0,0 +1,21 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* 应用名称: 修改用户名 5.4.0
* 下载地址: https://addon.dismall.com/plugins/k_gaiming.html
* 应用开发者: Discuz!扩展中心
* 开发者QQ: 1608304093
* 更新日期: 202505311944
* 授权域名: www.shitangsweet.com
* 授权码: 2025053119aA5zhH76A0
* 未经应用程序开发者/所有者的书面许可,不得进行反向工程、反向汇编、反向编译等,不得擅自复制、修改、链接、转载、汇编、发表、出版、发展与之有关的衍生产品、作品等
*/
!defined('IN_DISCUZ') && exit('Access Denied');
$extend = array();
//辅助系统
if(file_exists(DISCUZ_ROOT.'./source/plugin/k_gaiming/extend/extend_mobile.php')){
$extend['wsq'] = 1;
}

View File

@@ -0,0 +1,42 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
class plugin_k_gaiming {
}
class plugin_k_gaiming_home extends plugin_k_gaiming{
function spacecp_credit_bottom_output(){
global $_G;
$kgaiming = $_G['cache']['plugin']['k_gaiming'];
lang('spacecp');
$_G['lang']['spacecp']['logs_credit_update_KGM'] = lang('plugin/k_gaiming', 'gaiming');
}
function spacecp_profile_top_output() {
global $_G;
$kgaiming = $_G['cache']['plugin']['k_gaiming'];
$kgaiming['usergroups'] = unserialize($kgaiming['usergroups']);
if($kgaiming['usergroups'] && !in_array($_G['groupid'], $kgaiming['usergroups'])){
unset($_G['setting']['plugins']['spacecp_profile']['k_gaiming:k_gaiming']);
}
return '';
}
}

View File

@@ -0,0 +1,149 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if (!defined('IN_DISCUZ')) {
exit('Access Denied');
}
if(!$_G['uid']){
showmessage('to_login', '', array(), array('showmsg' => true,'login' => 1));
}
$kgaiming = $_G['cache']['plugin']['k_gaiming'];
$kgaiming['usergroups'] = unserialize($kgaiming['usergroups']);
$kgaiming['creditunit'] = $kgaiming['creditunit'] ? $kgaiming['creditunit'] : 2;
foreach ($kgaiming['usergroups'] as $k => $v){
$grouptitle[] = $_G['cache']['usergroups'][$v]['grouptitle'];
}
$allowgroup['num'] = count($grouptitle);
$c = getuserprofile('extcredits'.$kgaiming['creditunit']);
$isAppbyme = stripos($_SERVER['HTTP_USER_AGENT'], 'Appbyme') !== false ? true : false;
$isMagapp = stripos($_SERVER['HTTP_USER_AGENT'], 'Magapp') !== false ? true : false;
$isQFapp = stripos($_SERVER['HTTP_USER_AGENT'], 'QianFan') !== false ? true : false;
$isWechat = stripos($_SERVER['HTTP_USER_AGENT'], 'MicroMessenger') !== false ? true : false;
$isQQapp = stripos($_SERVER['HTTP_USER_AGENT'], 'QQ') !== false ? true : false;
$isInapp = $isAppbyme || $isMagapp || $isQFapp || $isWechat || $isQQapp;
require_once libfile('function/core', 'plugin/k_gaiming');
require_once libfile('data/field', 'plugin/k_gaiming');
$re = '';
$hash = formhash();
if(submitcheck('formhash')){
if($extend['wsq'] && defined('IN_MOBILE')){
require_once libfile('extend/mobile', 'plugin/k_gaiming');
}else{
if(!in_array($_G['member']['groupid'], $kgaiming['usergroups'])){
showmessage(lang('plugin/k_gaiming', 'notp'));
}
$lastlog = DB::fetch_first("SELECT * FROM ".DB::table("plugin_k_gaiming_log")." WHERE uid='".$_G['uid']."' ORDER BY dateline DESC LIMIT 1");
if($lastlog['dateline'] && ($_G['timestamp'] - $lastlog['dateline'] < 60*60*$kgaiming['jianxie']) ){
showmessage(lang('plugin/k_gaiming', 'notp2').$kgaiming['jianxie'].lang('plugin/k_gaiming', 'notp2_unit'));
}
if($kgaiming['maxtimes']){
$times = DB::result_first("SELECT count(*) FROM ".DB::table("plugin_k_gaiming_log")." WHERE uid='".$_G['uid']."'");
if($times >= $kgaiming['maxtimes']){
showmessage(lang('plugin/k_gaiming', 'overmaxtimes'));
}
}
loaducenter();
$oldusername = $_G['username'];
$olduserid = $_G['uid'];
if($_G['charset'] == 'gbk'){
$newusername = addslashes(dhtmlspecialchars($_GET['newname'],ENT_COMPAT,'GB2312'));
}else{
$newusername = addslashes(dhtmlspecialchars($_GET['newname'],ENT_COMPAT,'utf-8'));
}
if ($newusername == '') {
$re = lang('plugin/k_gaiming', 'nonewusername');
} else {
$censorexp = '/^('.str_replace(array('\\*', "\r\n", ' '), array('.*', '|', ''), preg_quote(($_G['setting']['censoruser'] = trim($_G['setting']['censoruser'])), '/')).')$/i';
if($_G['setting']['censoruser'] && @preg_match($censorexp, $newusername)) {
showmessage('profile_username_protect');
}
$check = uc_user_checkname($newusername);
$error_info = array(
'-1' => lang('plugin/k_gaiming', 'error_1'),
'-2' => lang('plugin/k_gaiming', 'error_2'),
'-3' => lang('plugin/k_gaiming', 'error_3')
);
if ($check != 1) {
$re = $error_info[$check];
}else{
if($kgaiming['creditunit'] && $kgaiming['creditnum']){
if($kgaiming['creditnum'] && $c < $kgaiming['creditnum']){
showmessage(lang('plugin/k_gaiming', 'nocredit'));
}
}
if($kgaiming['unsettables']){
$tables = explode("\n", $kgaiming['unsettables']);
foreach($tables as $table){
unset($dz_update_field[$table]);
}
}
changename($olduserid, $newusername, $dz_update_field);
changename_for_uc($olduserid, $newusername, $uc_update_field);
if($kgaiming['tables']){
$tables = explode("\n", $kgaiming['tables']);
foreach($tables as $value){
$table = explode(",", $value);
if($table[0]){
$tablelist[$table[0]] = array('uid' => $table[1], 'username' => $table[2]);
}
}
}
foreach($tablelist as $table => $v) {
DB::query('UPDATE %t SET '.$v['username'].'=%s WHERE '.$v['uid'].'=%d', array($table, $newusername, $olduserid), 'SILENT');
}
if($kgaiming['creditunit'] && $kgaiming['creditnum']){
updatemembercount($_G['uid'], array('extcredits'.$kgaiming['creditunit'] => '-'.$kgaiming['creditnum']), true, 'KGM', $_G['uid'], '', lang('plugin/k_gaiming', 'title'));
}
$logdata = array(
'uid' => $_G['uid'],
'creditunit' => $kgaiming['creditunit'],
'creditnum' => $kgaiming['creditnum'],
'oldname' => addslashes($oldusername),
'newname' => addslashes($newusername),
'dateline' => $_G['timestamp'],
);
DB::insert('plugin_k_gaiming_log', $logdata);
C::memory()->clear();
$re = '<font color="green">'.lang('plugin/k_gaiming', 'success').'</font>';
}
}
}
}else{
@include_once DISCUZ_ROOT.'./source/discuz_version.php';
if($kgaiming['mobile_header'] && defined('IN_MOBILE')){
include template('k_gaiming:k_gaiming');
}
}
function changename($olduid = 0, $newname = '', $dz_update_field){
foreach ($dz_update_field as $table => $conf) {
DB::query("UPDATE ".DB::table($table)." SET `".$conf['name']."`=%s WHERE `".$conf['id']."`=%d", array($newname, $olduid));
}
return true;
}
function changename_for_uc($olduid = 0, $newname = '', $uc_update_field){
foreach ($uc_update_field as $table => $conf) {
DB::query("UPDATE ".UC_DBTABLEPRE.$table." SET `".$conf['name']."`=%s WHERE `".$conf['id']."`=%d", array($newname, $olduid));
}
return true;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,38 @@
<tr id="tr_username">
<th id="th_username">{lang k_gaiming:newusername}</th>
<td id="td_username">
<input type="text" name="newname" class="px" value="" tabindex="1" required="required"<!--{if !in_array($_G['member']['groupid'], $kgaiming['usergroups']) || ($c < $kgaiming['creditnum'])}--> disabled="disabled"<!--{/if}--> />
<div class="rq mtn" id="showerror_username"></div>
<p class="d"></p>
</td>
</tr>
<tr>
<th>&nbsp;</th>
<td colspan="2">
<input type="hidden" name="profilesubmit" value="true" />
<button type="submit" name="profilesubmitbtn" id="profilesubmitbtn" value="true" class="pn pnc"<!--{if !in_array($_G['member']['groupid'], $kgaiming['usergroups']) || ($c < $kgaiming['creditnum'])}--> disabled="disabled"<!--{/if}--> /><strong>{lang k_gaiming:save}</strong></button>
<span id="submit_result" class="rq">
<!--{if $re}-->
{$re}
<!--{elseif !in_array($_G['member']['groupid'], $kgaiming['usergroups'])}-->
<font color="#FF0000">{lang k_gaiming:notp}</font>
<!--{else}-->
<font class="xg1">{$kgaiming['tips']}<!--{if $kgaiming['creditnum'] && $kgaiming['creditunit']}-->{lang k_gaiming:tipsunit}&nbsp;{$kgaiming['creditnum']}&nbsp;{$_G['setting']['extcredits'][$kgaiming['creditunit']]['unit']}{$_G['setting']['extcredits'][$kgaiming['creditunit']]['title']}<!--{/if}--></font><!--{if $c < $kgaiming['creditnum']}--><font color="#FF0000">&nbsp;({lang k_gaiming:nocredit})</font><!--{/if}-->
<!--{/if}-->
</span>
</td>
</tr>
<!--{if !in_array($_G['member']['groupid'], $kgaiming['usergroups'])}-->
<tr id="tr_allow_groups">
<th>{lang k_gaiming:allow_groups}</th>
<td colspan="2">
<ul class="cl">
<!--{eval $gi = 1;}-->
<!--{loop $grouptitle $group}-->
<li class="z">{$group}<!--{if $gi < $allowgroup['num']}-->&nbsp;,&nbsp;<!--{/if}--></li>
<!--{eval $gi++;}-->
<!--{/loop}-->
</ul>
</td>
</tr>
<!--{/if}-->

View File

@@ -0,0 +1,19 @@
<?php
/**
* This is NOT a freeware, use is subject to license terms
* Ӧ<><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: <20>޸<EFBFBD><DEB8>û<EFBFBD><C3BB><EFBFBD> 5.4.0
* <20><><EFBFBD>ص<EFBFBD>ַ: https://addon.dismall.com/plugins/k_gaiming.html
* Ӧ<>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD>: Discuz!<21><>չ<EFBFBD><D5B9><EFBFBD><EFBFBD>
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>QQ: 1608304093
* <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>: 202505311944
* <20><>Ȩ<EFBFBD><C8A8><EFBFBD><EFBFBD>: www.shitangsweet.com
* <20><>Ȩ<EFBFBD><C8A8>: 2025053119aA5zhH76A0
* δ<><CEB4>Ӧ<EFBFBD>ó<EFBFBD><C3B3>򿪷<EFBFBD><F2BFAAB7><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD>ߵ<EFBFBD><DFB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD>ý<EFBFBD><C3BD>з<EFBFBD><D0B7>򹤳̡<F2B9A4B3><CCA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȣ<EFBFBD><C8A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><D4B8>ơ<EFBFBD><C6A1>޸ġ<DEB8><C4A1><EFBFBD><EFBFBD>ӡ<EFBFBD>ת<EFBFBD>ء<EFBFBD><D8A1><EFBFBD><EFBFBD><EFBFBD><E0A1A2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E6A1A2>չ<EFBFBD><D5B9>֮<EFBFBD>йص<D0B9><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7><EFBFBD><EFBFBD>Ʒ<EFBFBD><C6B7>
*/
if(!defined('IN_DISCUZ')) {
exit('Access Denied');
}
DB::query("DROP TABLE IF EXISTS ".DB::table('plugin_k_gaiming_log')."");
$finish = TRUE;