包含:登录失败锁定、90天密码有效期、30分钟会话超时、 强制改密、登录审计日志、屏幕水印、企业背景图、 备案信息固定底部、favicon、登录页JS修复等全部改动
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# Make mrbs_entry.repeat_id a foreign key
|
||||
|
||||
# Previously repeat_id was set to zero if there was no repeat.
|
||||
# However this breaks our foreign key constraint so we have to modify
|
||||
# the repeat_id column before we can create the foreign key.
|
||||
|
||||
/* Temporary copy of timestamp column */
|
||||
ALTER TABLE %DB_TBL_PREFIX%entry
|
||||
ADD COLUMN saved_ts DATETIME;
|
||||
UPDATE %DB_TBL_PREFIX%entry SET saved_ts=timestamp;
|
||||
|
||||
ALTER TABLE %DB_TBL_PREFIX%entry
|
||||
MODIFY COLUMN repeat_id int DEFAULT NULL;
|
||||
|
||||
UPDATE %DB_TBL_PREFIX%entry
|
||||
SET repeat_id=NULL WHERE repeat_id=0;
|
||||
|
||||
# Tidy up the database getting rid of any zombie rows which would prevent
|
||||
# the foreign key being created. Note that these rows will not be visible to users
|
||||
# and admins through MRBS. They have most likely been created when a row has been
|
||||
# deleted from a table using a database admin tool, rather than through MRBS. Of course,
|
||||
# foreign keys will stop this happening in the future.
|
||||
|
||||
DELETE FROM %DB_TBL_PREFIX%entry
|
||||
WHERE repeat_id IS NOT NULL
|
||||
AND repeat_id NOT IN (SELECT id FROM %DB_TBL_PREFIX%repeat);
|
||||
|
||||
DELETE FROM %DB_TBL_PREFIX%repeat
|
||||
WHERE id NOT IN (SELECT repeat_id FROM %DB_TBL_PREFIX%entry WHERE repeat_id IS NOT NULL);
|
||||
|
||||
|
||||
ALTER TABLE %DB_TBL_PREFIX%entry
|
||||
ADD FOREIGN KEY (repeat_id)
|
||||
REFERENCES %DB_TBL_PREFIX%repeat(id)
|
||||
ON UPDATE CASCADE
|
||||
ON DELETE CASCADE;
|
||||
|
||||
/* Put the table back to how it was */
|
||||
UPDATE %DB_TBL_PREFIX%entry SET timestamp=saved_ts;
|
||||
ALTER TABLE %DB_TBL_PREFIX%entry
|
||||
DROP COLUMN saved_ts;
|
||||
@@ -0,0 +1,35 @@
|
||||
-- Make mrbs_entry.repeat_id a foreign key
|
||||
-- Previously repeat_id was set to zero if there was no repeat.
|
||||
-- However this breaks our foreign key constraint so we have to modify
|
||||
-- the repeat_id column before we can create the foreign key.
|
||||
|
||||
ALTER TABLE %DB_TBL_PREFIX%entry
|
||||
ALTER COLUMN repeat_id DROP DEFAULT,
|
||||
ALTER COLUMN repeat_id DROP NOT NULL,
|
||||
ALTER COLUMN repeat_id SET DEFAULT NULL;
|
||||
|
||||
UPDATE %DB_TBL_PREFIX%entry
|
||||
SET repeat_id=NULL WHERE repeat_id=0;
|
||||
|
||||
-- Tidy up the database getting rid of any zombie rows which would prevent
|
||||
-- the foreign key being created. Note that these rows will not be visible to users
|
||||
-- and admins through MRBS. They have most likely been created when a row has been
|
||||
-- deleted from a table using a database admin tool, rather than through MRBS. Of course,
|
||||
-- foreign keys will stop this happening in the future.
|
||||
|
||||
DELETE FROM %DB_TBL_PREFIX%entry
|
||||
WHERE repeat_id IS NOT NULL
|
||||
AND repeat_id NOT IN (SELECT id FROM %DB_TBL_PREFIX%repeat);
|
||||
|
||||
-- Also, while we're at it, get rid of any redundant entries in the repeat table, ie rows
|
||||
-- that are not referenced by a row in the entry table.
|
||||
DELETE FROM %DB_TBL_PREFIX%repeat
|
||||
WHERE id NOT IN (SELECT repeat_id FROM %DB_TBL_PREFIX%entry WHERE repeat_id IS NOT NULL);
|
||||
|
||||
|
||||
ALTER TABLE %DB_TBL_PREFIX%entry
|
||||
ADD FOREIGN KEY (repeat_id)
|
||||
REFERENCES %DB_TBL_PREFIX%repeat(id)
|
||||
ON UPDATE CASCADE
|
||||
ON DELETE CASCADE;
|
||||
|
||||
Reference in New Issue
Block a user