• demius
    社区重置纪元
    ID community_reset_era版本 1.0.0插件制作者 demius售价 10 积分1380 行 / 87.1 KBHook / 路由 / 后台页
    通过公开公投决定社区篇章更新,并为用户提供温柔公平的个人回忆取回通道。
    收费插件安装说明购买后点击“授权码”获取一次性授权码;在后台 > 插件广场点击在线安装或更新,并填写该授权码。已购买用户更新免费:每次在线安装或更新前,重新点击“授权码”获取新的一次性授权码即可,无需再次购买;也可直接下载新版后用后台“插件上传”更新。尊重并感谢他人劳动,请勿传播代码。
    app/plugins/community_reset_era/plugin.php
    开发日志已有 1 条

    个人独立维护项目。

    • demius
      demius
      版本 1.0.0 9f5e2c91fecc 更新:实现后台配置、公投创建、投票门槛、准入规则、保护版块、复核确认/终止、强制备份、重置执行、纪元档案帖。 实现前台公投、三类用户身份、贡献任务、签到、时间寻迹、批量取回折扣、积分扣除、取回上限、个人快照导出。 实现旧内容归档表、投票日志、寻迹日志、任务记录、纪念徽章、窗口期自动封存 cron。 对当前核心不存在的点赞/收藏独立表、附件内容映射做了兼容处理:后台保留选项,执行时记录日志,不误删无法确认release
    淘帖专辑我的插件
    主楼
  • 质量报告

    插件质量报告

    插件:community_reset_era

    Hook功能范围循环使用频率文件读写修改系统表读写系统表读写自己的表
    page.footer全站页面页脚否5----
    reply.after_render主题查看页/回帖列表逐条渲染是5---读 plugin_community_reset_era_badges 修正❗️
    reply.before_render主题查看页/回帖列表逐条渲染是5----
    sidebar.feature_links首页/侧栏快捷功能回调内5-app_topics 修正❗️app_topics, app_users 修正❗️写 plugin_community_reset_era_polls, plugin_community_reset_era_trace_logs;读 plugin_community_reset_era_votes 修正❗️
    topic.after_render首页/版块列表/主题查看逐条渲染是5---读 plugin_community_reset_era_badges 修正❗️
    user.menu_links个人卡片/移动端我的菜单(展示位置:个人卡片)否4----
    admin.tabs后台管理页标签栏(展示位置:后台Tab)否1----

    颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。“文件批处理”表示逐个处理用户一次提交的文件,属于必要操作,不标记修正。只有操作实际处于需要优化的循环路径时,才会标记“修正❗️”。

    数据字典

    plugin_community_reset_era_polls

    字段类型可空默认值约束
    id$id是--
    era_key$key否-唯一
    title$short否--
    status$short否--
    result$short否--
    pass_mode$short否--
    pass_thresholdINTEGER否6670-
    review_hours$uint否24-
    trace_days$uint否30-
    cooldown_days$uint否90-
    min_account_days$uint否0-
    min_post_count$uint否0-
    allowed_group_ids$long否--
    cleanup_options$long否--
    protected_forum_ids$long否--
    yes_votes$uint否0-
    no_votes$uint否0-
    total_votes$uint否0-
    active_user_count$uint否0-
    backup_path$long否--
    archive_topic_id$uint否0-
    created_by$uint否0-
    created_at$uint否--
    start_at$uint否--
    end_at$uint否--
    decided_at$uint否0-
    review_until$uint否0-
    reset_at$uint否0-
    trace_until$uint否0-
    closed_at$uint否0-

    plugin_community_reset_era_votes

    字段类型可空默认值约束
    id$id是--
    poll_id$uint否-唯一
    user_id$uint否-唯一
    vote$short否--
    created_at$uint否--
    updated_at$uint否--

    plugin_community_reset_era_archive_topics

    字段类型可空默认值约束
    id$id是--
    poll_id$uint否-唯一
    original_id$uint否-唯一
    forum_id$uint否--
    user_id$uint否--
    title$short否--
    body$long否--
    highlight_style$short否--
    reply_orderINTEGER否0-
    reply_count$uint否0-
    view_count$uint否0-
    last_reply_at$uint否0-
    last_reply_user_id$uint否0-
    created_at$uint否--
    archived_at$uint否--
    restored_topic_id$uint否0-
    restored_by_user_id$uint否0-
    restored_at$uint否0-

    plugin_community_reset_era_archive_replies

    字段类型可空默认值约束
    id$id是--
    poll_id$uint否-唯一
    original_id$uint否-唯一
    original_topic_id$uint否--
    user_id$uint否--
    body$long否--
    created_at$uint否--
    updated_at$uint否--
    archived_at$uint否--
    placeholder_reply_id$uint否0-
    restored_reply_id$uint否0-
    restored_by_user_id$uint否0-
    restored_at$uint否0-

    plugin_community_reset_era_task_progress

    字段类型可空默认值约束
    id$id是--
    poll_id$uint否-唯一
    user_id$uint否-唯一
    checkin_days$uint否0-
    last_checkin_date$short否--
    unlocked_at$uint否0-
    updated_at$uint否--

    plugin_community_reset_era_trace_logs

    字段类型可空默认值约束
    id$id是--
    poll_id$uint否--
    user_id$uint否--
    action$short否--
    item_type$short否--
    item_id$uint否0-
    points_deltaINTEGER否0-
    message$long否--
    created_at$uint否--

    plugin_community_reset_era_badges

    字段类型可空默认值约束
    id$id是--
    poll_id$uint否-唯一
    user_id$uint否-唯一
    badge_key$short否-唯一
    created_at$uint否--
    #1
  • demius

    版本 1.0.0 更新:
    实现后台配置、公投创建、投票门槛、准入规则、保护版块、复核确认/终止、强制备份、重置执行、纪元档案帖。
    实现前台公投、三类用户身份、贡献任务、签到、时间寻迹、批量取回折扣、积分扣除、取回上限、个人快照导出。
    实现旧内容归档表、投票日志、寻迹日志、任务记录、纪念徽章、窗口期自动封存 cron。
    对当前核心不存在的点赞/收藏独立表、附件内容映射做了兼容处理:后台保留选项,执行时记录日志,不误删无法确认归属的数据。

    #2
  • bbs1org

    挺复杂的功能。给个详细介绍吧

    #3
  • demius

    插件已实现为 《社区重置纪元》,版本 1.0.0
    整体定位

    • 这是一个社区“纪元更新”插件:由管理员发起公开公投,用户投票决定是否进入新篇章。
    • 对前台用户避免使用“毁灭日”等敏感表达,统一呈现为“社区重置”“纪元更新”“时间寻迹”。
    • 核心逻辑是:集体决定社区未来,同时给个人旧内容保留温柔、可控、有限的取回通道。

    后台功能

    • 全局开关:一键暂停公投和时间寻迹。
    • 公投配置:支持投票开始/截止时间、复核窗口 12/24/48 小时、寻迹窗口 15/30/45 天、冷却天数。
    • 通过规则:支持两种模式:
    • 参与票占比:赞成票 / 总参与票。
    • 活跃用户基数:赞成票 / 近 30 天活跃用户数。
    • 投票准入:可配置注册满 N 天、发帖/回帖满 N 条、指定用户组白名单。
    • 重置规则:可配置清理主题、回复、浏览数,并保留点赞/收藏/附件等兼容选项。
    • 保护版块:公告、规则等指定版块可排除在重置范围外。
    • 时间寻迹配置:可设置守护派成本、新生/观望成本、批量折扣、单用户最大取回数量、快照导出成本。
    • 贡献任务配置:可设置新主题数、新回复数、贡献签到天数。
    • 风控操作:支持管理员作废本期、复核期确认执行、复核终止、手动关闭寻迹窗口。
    • 纪元档案帖:公投失败或重置成功后,自动生成官方纪元档案帖,记录编号、时间、票数、结果和温柔总结。

    前台用户功能

    • 公投页:用户可查看当前公投状态、票数、通过门槛和规则说明。
    • 用户投票:
    • 赞成纪元更新:归为新生派。
    • 选择守护过往:归为守护派。
    • 未投票用户在寻迹期归为观望派。
    • 投票可修改:投票截止前可重新提交选择。
    • 时间寻迹入口:重置执行后自动开放,窗口期结束后关闭。
    • 守护派路径:无需任务,直接按基础积分成本取回本人旧内容。
    • 新生派/观望派路径:需先完成新时代贡献任务,再按更高积分成本取回本人旧内容。
    • 回忆快照:用户可导出自己的旧主题和旧回复文本,不恢复到前台,满足怀旧需求。
    • 批量取回:支持多选旧内容批量取回,并按后台折扣计算积分。
    • 纪念徽章:
    • 守护派寻迹成功获得“守忆者”。
    • 新生派/观望派完成贡献并寻迹成功获得“归忆者”。

    数据与安全

    • 强制备份:执行重置前会生成数据库 JSONL 备份;SQLite 环境还会尝试额外复制 .sqlite 文件。
    • 备份失败即阻断:备份未成功落盘,不会继续执行重置。
    • 软删除式归档:重置前先把主题和回复写入插件归档表,再删除或清空核心内容。
    • 永久留痕:投票记录、寻迹日志、任务进度、徽章记录、纪元档案均保存在插件表中。
    • 本人限制:用户只能取回自己发布的主题和回复,无法恢复他人内容。
    • 楼层占位:楼主取回主题但回复作者未取回时,前台显示温和提示:该楼层来自旧日时代,作者尚未取回自己的回忆。
    • 恢复上限:每个用户每期可取回数量受后台上限控制,防止整体重置结果被批量反转。

    当前兼容说明

    • bbs1org 开发本地核心没有独立点赞、收藏表,也没有附件和正文的直接映射关系。
    • 所以插件保留这些后台选项,但执行时不会误删无法确认归属的数据,只会写入操作日志说明。
    • 插件遵守项目规则:只新增 app/plugins/community_reset_era/plugin.php,没有改核心文件。
    #4
  • demius

    社区毁灭日开启需谨慎,但是非常欢迎大家反馈问题

    #5
  • bbs1org

    底层原型就是 Rust生存服务器Wipe(世界重置轮回模组),把游戏“重置世界、归档存档、花钱/做任务赎回个人旧资产”整套机制移植到BBS论坛,包装成“社区纪元更新”。

    #6
  • one

    真会玩啊。

    #7
  • x

    哈哈哈,有才

    #8

发表回复

登录后回复