修复因为数据库索引导致签到功能异常的问题

master
落雨楓 2 years ago
parent e7ce4d04c9
commit d39a4861c4

@ -24,6 +24,8 @@ class Hooks {
} }
public static function onBeforePageDisplay(OutputPage $out, Skin $skin) { public static function onBeforePageDisplay(OutputPage $out, Skin $skin) {
$user = $out->getUser();
$config = MediaWikiServices::getInstance()->getMainConfig(); $config = MediaWikiServices::getInstance()->getMainConfig();
$out->addModuleStyles(['ext.isekai.userpoints.base']); $out->addModuleStyles(['ext.isekai.userpoints.base']);

@ -1,6 +1,7 @@
<?php <?php
namespace Isekai\UserPoints\Service; namespace Isekai\UserPoints\Service;
use Isekai\UserPoints\Utils;
use User; use User;
use stdClass; use stdClass;
use MediaWiki\MediaWikiServices; use MediaWiki\MediaWikiServices;
@ -376,6 +377,13 @@ class IsekaiUserPoints {
return true; return true;
} }
public function getPointInfo() {
return [
'name' => Utils::getPointName($this->type),
'icon' => Utils::getPointIcon($this->type),
];
}
/** /**
* Save point data * Save point data
*/ */

@ -1,4 +1,5 @@
$(function() { $(function() {
if (!mw.user.isAnon()) {
const storeKey = 'isekai-userpoints-dailysign-lastSignDate'; const storeKey = 'isekai-userpoints-dailysign-lastSignDate';
const lastSignDate = localStorage.getItem(storeKey); const lastSignDate = localStorage.getItem(storeKey);
const today = new Date().toLocaleDateString(); const today = new Date().toLocaleDateString();
@ -40,4 +41,5 @@ $(function() {
} }
}); });
} }
}
}); });

@ -4,7 +4,7 @@ CREATE TABLE /*_*/isekai_user_daily_sign_log (
`month` INT UNSIGNED NOT NULL, `month` INT UNSIGNED NOT NULL,
`sign_log` LONGTEXT NOT NULL `sign_log` LONGTEXT NOT NULL
) /*$wgDBTableOptions*/; ) /*$wgDBTableOptions*/;
ALTER TABLE /*_*/isekai_user_daily_sign_log ADD PRIMARY KEY (`user_id`); ALTER TABLE /*_*/isekai_user_daily_sign_log ADD PRIMARY KEY (`user_id`, `year`, `month`);
ALTER TABLE /*_*/isekai_user_daily_sign_log ADD INDEX(`user_id`, `year`, `month`); ALTER TABLE /*_*/isekai_user_daily_sign_log ADD INDEX(`user_id`);
ALTER TABLE /*_*/isekai_user_daily_sign_log ADD INDEX(`year`); ALTER TABLE /*_*/isekai_user_daily_sign_log ADD INDEX(`year`);
ALTER TABLE /*_*/isekai_user_daily_sign_log ADD INDEX(`month`); ALTER TABLE /*_*/isekai_user_daily_sign_log ADD INDEX(`month`);

@ -4,7 +4,7 @@ CREATE TABLE isekai_user_daily_sign_log (
month INT NOT NULL, month INT NOT NULL,
sign_log JSON NOT NULL sign_log JSON NOT NULL
); );
ALTER TABLE isekai_user_daily_sign_log ADD PRIMARY KEY (user_id); ALTER TABLE isekai_user_daily_sign_log ADD PRIMARY KEY (user_id, year, month);
ALTER TABLE isekai_user_daily_sign_log ADD INDEX(user_id, year, month); ALTER TABLE isekai_user_daily_sign_log ADD INDEX(user_id);
ALTER TABLE isekai_user_daily_sign_log ADD INDEX(year); ALTER TABLE isekai_user_daily_sign_log ADD INDEX(year);
ALTER TABLE isekai_user_daily_sign_log ADD INDEX(month); ALTER TABLE isekai_user_daily_sign_log ADD INDEX(month);
Loading…
Cancel
Save