Giter Club home page Giter Club logo

ctfd_chinese_cn's Introduction

汉化迁移

中文已在官方仓库进行支持,感谢大家一路的关注和支持。
后续的更新将在这里继续,并会合并到CTFd仓库,此仓库将会封存。

CTFd_chinese_CN

Time-Line:

  • 对CTFd平台的汉化,并可通过主题切换用户界面的中英文,同时集成CTFd-V2.1.4版本
  • 更新CTFd-V3.0.2版本汉化
  • 更新CTFd-V3.1.0版本汉化,同时主题上优化了大陆上访问CTFd资源无法加载导致的卡顿问题
  • 更新CTFd-V3.1.1版本汉化
  • 更新CTFd-V3.1.1版本汉化独立包
  • 更新CTFd-V3.4.0版本汉化包(admin/core), 同时优化大陆访问字体资源导致的卡顿问题 此次的汉化文件以调整V3.4.0/CTFd-3.4.0/CTFd_old文件夹
  • 更新CTFd V3.4.0版本汉化包本次更新基于代码层面进行了汉化,优化了卡顿,个人模式汉化覆盖率99%,团队模式汉化覆盖率95%
  • 更新CTFd V3.4.1版本汉化包本次更新基于代码层面进行了汉化,个人模式汉化覆盖率99%,团队模式汉化覆盖率95%

文件解读:

最新版请访问: https://github.com/CTFd/CTFd
官方请访问:https://ctfd.io/
Live Demo 预览演示请访问: https://demo.ctfd.io/

V2.1.4

CTFd-原版V2.1.4/CTFd :文件为开源V2.1.4版本原有的文件,未作任何修改。
core_chinese :此文件为汉化的用户界面,不包括管理界面(一般仅用此文件即可)
core_english :此文件为原版英文用户界面
themes :此文件为汉化的用户及管理界面

V3.0.2

CTFd-master-V3.0.2:直接将themes下的admin和core进行替换即可,未增加core_chinese文件

V3.1.0

CTFd-V3.1.0:直接将themes下的admin和core进行替换即可,未增加core_chinese文件
预发行汉化版本,目前未发现兼容性问题,但无法保证部分位置汉化不兼容

V3.1.1

CTFd-V3.1.1:与CTFd-V3.1.0通用
CTFd-V3.1.1:直接进行覆盖即可(修改了CDN优化国内访问)
与上一版本通用,目前未发现兼容性问题,但无法保证部分位置汉化
感谢mlzxgzy提供此版本汉化文件

V3.4.0

CTFd-V3.4.0:直接进行覆盖即可(修改了CDN优化国内访问)
截至到readme更新时间,汉化未进行至100%,主要位置已汉化完成,经测试不影响正常使用
感谢mcyydscc提供此版本汉化文件
通过review上个版本汉化,对汉化内容做了调整
最新汉化文件所在GitHub中的目录为V3.4.0/CTFd-3.4.0/CTFd,上一版本已调整为CTFd_old 本次更新为基于代码层面汉化,个人模式汉化覆盖率99%,团队模式汉化覆盖率95%,并做了CDN优化

V3.4.1

最新汉化文件所在GitHub中的目录为V3.4.1/CTFd-3.4.1/CTFd 本次更新为基于代码层面汉化,个人模式汉化覆盖率99%,团队模式汉化覆盖率95%

使用方法:

V3.4.1版本使用方法:

方法同V3.4.0,请参考V3.4.0

V3.4.0版本使用方法:

由于该版本汉化调整了python代码,来达到99%的汉化覆盖率,因此需要将整个CTFd文件进行覆盖
将GitHub中的目录为V3.4.0/CTFd-3.4.0/CTFd内所有文件覆盖到<ctfd_project>/CTFd文件即可
建议下载release的zip包,来减少冗余代码的下载,提高速度。release的zip包,只包含CTFd文件。

下面两个方法为V3.4.0版本之前的方法,之后的请参考上方

方法一:

将core_chinese文件直接放入 CTFd\CTFd\themes目录即可在更换主题处找到该中文主题
core_english文件同理

方法二(推荐):

themes文件直接替换CTFd\CTFd目录下的themes内的所有文件即可完成汉化

效果预览:

img

img

img

img

img

img

img

img

ctfd_chinese_cn's People

Contributors

gu-f avatar mlzxgzy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

ctfd_chinese_cn's Issues

3.4.0 submissions 页面不显示 user challenge

将submissions.html内容替换

{% extends "admin/base.html" %}

{% block stylesheets %}
{% endblock %}

{% block content %}

<div class="jumbotron">
	<div class="container">
		<h1>{% if type %}{{ type|title }} {% endif %}提交记录</h1>
	</div>
</div>

<div class="container">

	<div class="row">
		<div class="col-md-12">
			{% if q and field %}
			<h5 class="text-muted text-center">
				搜索 <strong>{{ field }}</strong> matching <strong>{{ q }}</strong>的记录
			</h5>
			<h6 class="text-muted text-center pb-3">
				Page {{ submissions.page }} of {{ submissions.total }} results
			</h6>
			{% endif %}

			{% with form = Forms.submissions.SubmissionSearchForm(field=field, q=q) %}
			<form method="GET" class="form-inline">
				<div class="form-group col-md-2 pr-0">
					{{ form.field(class="form-control custom-select w-100") }}
				</div>
				<div class="form-group col-md-8">
					{{ form.q(class="form-control w-100", placeholder="搜索...") }}
				</div>
				<div class="form-group col-md-2">
					<button type="submit" class="btn btn-primary w-100">
						<i class="fas fa-search" aria-hidden="true"></i>
					</button>
				</div>
			</form>
			{% endwith %}
		</div>
	</div>

	<hr>

	<div class="row">
		<div class="col-md-12">
			<div class="float-right pb-3">
				<div class="btn-group" role="group">
					<button type="button" class="btn btn-outline-danger" id="submission-delete-button">
						<i class="btn-fa fas fa-trash-alt"></i>
					</button>
				</div>
			</div>
		</div>
	</div>
	<div class="row">
		<div class="col-md-12">
			{% set mode = Configs.user_mode %}
			<table id="teamsboard" class="table table-striped border">
				<thead>
					<tr>
						<th class="border-right" data-checkbox>
							<div class="form-check text-center">
								<input type="checkbox" class="form-check-input" data-checkbox-all>&nbsp;
							</div>
						</th>
						<th class="text-center sort-col"><b>ID</b></th>
						{% if mode == UserModeTypes.TEAMS %}
						<th class="sort-col"><b>User</b></th>
						{% endif %}
						<th class="sort-col"><b>{{ get_mode_as_word(capitalize=True) }}</b></th>
						<th class="sort-col"><b>挑战</b></th>
						<th class="sort-col"><b>状态</b></th>
						<th class="sort-col"><b>提交归属</b></th>
						<th class="text-center sort-col"><b>时间</b></th>
					</tr>
				</thead>
				<tbody>
					{% for sub in submissions.items %}
					<tr>
						<td class="border-right" data-checkbox>
							<div class="form-check text-center">
								<input type="checkbox" class="form-check-input" value="{{ sub.id }}" data-submission-id="{{ sub.id }}">&nbsp;
							</div>
						</td>
						<td class="text-center" id="{{ sub.id }}">
							{{ sub.id }}
						</td>
						{% if mode == UserModeTypes.TEAMS %}
						<td>
							<a href="{{ url_for('admin.users_detail', user_id=sub.user_id) }}">
								{{ sub.user.name }}
							</a>
						</td>
						{% endif %}
						<td class="team" id="{{ sub.account_id }}">
							<a href="{{ generate_account_url(sub.account_id, admin=True) }}">
								{{ sub.account.name }}
							</a>
						</td>
						<td class="chal" id="{{ sub.challenge_id }}">
							<a href="{{ url_for('admin.challenges_detail', challenge_id=sub.challenge_id) }}">
								{{ sub.challenge.name }}
							</a>
						</td>
						<td>
							{{ sub.type }}
						</td>
						<td class="flag" id="{{ sub.id }}">
							<pre class="mb-0">{{ sub.provided }}</pre>
						</td>
						<td class="text-center solve-time">
							<span data-time="{{ sub.date | isoformat }}"></span>
						</td>
					</tr>
					{% endfor %}
				</tbody>
			</table>
			{% if submissions.pages > 1 %}
			<div class="text-center">页码
				<br>
				{% if submissions.page != 1 %}
					<a href="{{ prev_page }}">&lt;&lt;&lt;</a>
				{% endif %}
				<select class="page-select">
					{% for page in range(1, submissions.pages + 1) %}
					<option {% if submissions.page == page %}selected{% endif %}>{{ page }}</option>
					{% endfor %}
				</select>
				{% if submissions.next_num %}
					<a href="{{ next_page }}">&gt;&gt;&gt;</a>
				{% endif %}
			</div>
			{% endif %}
		</div>
	</div>
</div>
{% endblock %}

{% block scripts %}
{% endblock %}

{% block entrypoint %}
	<script defer src="{{ url_for('views.themes', theme='admin', path='js/pages/submissions.js') }}"></script>
{% endblock %}

建议去官方CTFd库去Fork一个然后提交一个requests

建议去官方CTFd库去Fork一个然后将主题文件放上去,再提交一个requests,让官方使用本库中的中文主题,这样你相当于对CTFd这样的大项目有了贡献,可以成为你的简历的,同时也方便我们国内的使用

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.