# -*- coding: utf-8 -*-
# coding:utf-8

__author__d = 'lancelrq'

ACTION_GOBACK = ['']
errors = dict()


def generator(code, message, action=ACTION_GOBACK):
    errors[code] = [message, action]


generator(0, '未知错误')
generator(1, '系统调用接口参数错误')
generator(2, '系统调用接口参数不符合约束')
generator(3, '请选择要上传的文件')
generator(4, '上传文件类型不符合要求')
generator(5, '上传文件大小不符合要求')
generator(6, '文件内容为空')
generator(7, '请先阅读并同意协议')
generator(8, '会话信息异常，请刷新页面后重试...')
generator(100, '子账户系统传参数错误')

# ========== 用户会话类 ==========
#
generator(1000, '用户账户信息不存在')
generator(1001, '用户名或密码为空')
generator(1002, '用户名或密码错误')
generator(1003, '用户被锁定，请与管理员联系')
generator(1004, '登录尝试次数过多，如果遗忘密码请使用【忘记密码】功能或者联系管理员')
generator(1005, '用户登录名称为空')
generator(1006, '用户密码为空')
generator(1007, '密码和重复密码不匹配')
generator(1008, '用户重复密码为空')
generator(1010, '您没有登录，无法进行操作！', ['login_req'])
generator(1011, '关联登录操作出错！可能是由于账户被退出或者不存在账户关联。')

generator(1100, '您不可以修改别人的用户账户信息')
generator(1101, '登录名不能为空')
generator(1102, '用户昵称不能为空')
generator(1103, '登录用户名已经存在，请更换')
generator(1104, '账户登录密码错误')
generator(1105, '新密码和重复新密码不匹配')
generator(1106, '邮箱地址为空')
generator(1107, '文件格式不正确，只支持jpeg/png')
generator(1108, '用户昵称已经存在，请更换')

generator(1900, '(教务验证)用户名或密码不正确')
generator(1901, '(教务验证)因验证接口密码错误限制，请5分钟以后再试')
generator(1902, '(教务验证)登录教务系统失败')
generator(1903, '(教务验证)未知错误')
generator(1904, '(教务验证)请输入学号')
generator(1905, '(教务验证)请输入密码')
generator(1906, '(教务验证)您的账号已经存在')


# ========== 题目库类 ==========
generator(2000, '找不到题目集信息')
generator(2001, '找不到题目信息')
generator(2002, '不支持的评测语言')
generator(2003, '提交代码至少要输入20个字符')
generator(2004, '找不到评测状态信息')
generator(2005, '如要提交评测，请将题目发布到题库并且从题库中进入')
generator(2006, '当前题目的评测已暂停，请稍后重试！')
generator(2007, '读取评测结果详情失败！')
generator(2008, '您不能查看别人的评测数据')
generator(2010, 'Java类名称错误，请确认你的代码是否存在“public class 类名”，是否拼写错误，或者不是合法的Java标识符。')
generator(2011, '请输入您的代码再保存草稿')
generator(2012, '草稿箱功能需要登录WeJudge主账户')

generator(2100, '您没有访问这个隐藏题目集的权限')
generator(2101, '您没有建立和管理题目集的权限')
generator(2102, '您没有推送这个题目的权限')
generator(2103, '请输入题目集的标题')
generator(2104, '题目集封面请上传小于1M的图片')
generator(2107, '目标题库设置为私有发布模式，除其管理员外不允许发布/推送题目')
generator(2105, '当前题库已拥有这个题目')
generator(2106, '你没有删除题目关联的权限')


generator(2200, '您没有创建题目的权限')
generator(2201, '您没有对这个题目的访问或操作权限，或权限为只读')
generator(2202, '请输入题目标题')
generator(2203, '请输入题目正文')
generator(2204, '找不到对应的测试数据')
generator(2205, '测试数据占分比例应该不超过100%')
generator(2206, '测试数据大小超出1MB，请使用上传功能')
generator(2207, '请先添加测试数据，才能启动评测')
generator(2208, '测试数据生成器不支持运行“交互评测模式”下的题目')
generator(2209, '当前语言对应的参考代码不存在，请添加')

generator(2300, '分类信息不存在')
generator(2301, '请输入分类名称')
generator(2302, '根分类不能编辑')




# ========== 教学系统类 ==========

generator(3000, '学校信息不存在')
generator(3001, '您当前的角色没有访问权限')
generator(3002, '学校信息不存在')
generator(3003, '学期信息不存在')
generator(3004, '课程信息不存在')
generator(3005, '教学账户不存在')
generator(3006, '学院信息不存在')
generator(3007, '当前学校没有设置学期信息，无法操作')
generator(3010, '您没有登录，无法进行操作！', ['login_req'])
generator(3011, '登录名称已经存在')
generator(3012, '您不能修改自己的账户角色')
generator(3013, '不能锁定自己的账户')
generator(3014, '不能对自己执行删除操作')
generator(3015, '上课时间数据错误')
generator(3016, '请输入学校名称')
generator(3017, '请输入学校英文缩写')
generator(3018, '请选择学年学期，如果没有请添加')
generator(3019, '请设置正确的学期最大周数')
generator(3020, '您的账号已经绑定过WeJudge主账户，不能更换绑定')
generator(3021, '当前账号已经被其他用户绑定过，不能执行绑定')
generator(3022, '请输入用户的登录名称')
generator(3023, '请输入用户昵称')
generator(3024, '请输入用户真实姓名')
generator(3025, '由于登录模块的机制，用户名称不能以学校的英文缩写开头')

generator(3101, '您没有访问当前作业的权限')
generator(3102, '未能找到有效的实验报告信息')
generator(3103, '您不能查看他人的实验报告')
generator(3104, '实验感想不可为空')
generator(3105, '未能查询到排课信息，无法生成实验报告')
generator(3106, '老师没有设置公开本次作业的参考答案')
generator(3107, '您的作业已经被老师批改，无法编辑实验报告')
generator(3110, '您不能查看别人的评测数据')
generator(3111, '不存在的评测信号')
generator(3112, '作业还没有开始！')
generator(3120, '您没有当前项目的管理的权限')
generator(3150, '题目分值超出作业预设分值，请修改')
generator(3151, '题目分值数值非法')
generator(3152, '错答时最高可得分数值非法')
generator(3160, '请输入作业名称')
generator(3161, '作业最高分数数值错误')
generator(3162, '答案公开日期数值错误')
generator(3163, '排课设置日期数值错误')
generator(3164, '分值信息错误！')
generator(3165, '请选择目标排课信息！')
generator(3166, '当前学生已经存在调课信息，请删除后再操作！')
generator(3167, '找不到调课信息！')
generator(3195, '当前作业还未开始！')
generator(3196, '当前作业正在运行中！')
generator(3197, '当前作业已经截止！')
generator(3198, '需要有作业管理权限！')
generator(3199, '归档状态，禁止更新数据！')


generator(3200, '找不到排课信息')
generator(3201, '该学生已经存在于当前排课')
generator(3202, '该学生未能在当前排课找到')
generator(3203, '该学生已经是当前课程的助教了')
generator(3204, '该学生不是当前课程的助教')
generator(3205, '您没有管理该课程的权限')
generator(3206, '只有创建课程的老师或者教务才有权限管理')
generator(3207, '该教师已经是当前课程的教师了')
generator(3208, '该教师不是当前课程的教师')
generator(3209, '不能删除创建该课程的老师')
generator(3210, '课程名称不能为空！')
generator(3211, '请先填写要用于操作的用户！')
generator(3215, '您没有访问该课程的权限')


generator(3300, '找不到题目信息')
generator(3301, '找不到评测状态信息')

generator(3400, '找不到教学资料仓库信息')
generator(3401, '你没有此教学资料仓库的访问权限')
generator(3402, '你没有此教学资料仓库的管理权限')
generator(3403, '请输入教学资料仓库的名称')
generator(3450, '【文件系统】文件夹不存在')
generator(3451, '【文件系统】文件或文件夹不存在')
generator(3452, '【文件系统】文件不存在')
generator(3453, '【文件系统】不能操作根目录')
generator(3454, '【文件系统】不明确的或是敏感的文件路径')

generator(3999, '请登录后再使用本功能')

# ========== 比赛系统类 ==========

generator(5000, '找不到比赛信息')
generator(5001, '您当前的角色没有访问权限')
generator(5002, '当前时间不允许进行此操作')
generator(5003, '比赛还没有开始')
generator(5004, '比赛还没有开始或已经结束')
generator(5005, '（操作保护）比赛已经开始，您不能进行这个操作')
generator(5006, '实时查重信息将在比赛结束后展示')
generator(5007, '封榜功能已生效，正在等待后台生成排行榜快照')
generator(5008, '排行榜快照加载失败')
generator(5009, '您没有启用滚榜功能')
generator(5010, '您没有登录，无法进行操作')
generator(5011, '您已经登录，无法进行操作')
generator(5012, '非法调用注册接口')
generator(5013, '请先在WeJudge主系统登录')
generator(5014, '用户名已经存在，请更换')
generator(5015, '此主账号已经关联本次比赛的账号，无法再次注册')

generator(5200, '找不到题目信息')
# generator(5201, '您没有权限操作题目')
generator(5202, '找不到评测记录')
generator(5203, '您不能查看别人的评测数据')
generator(5210, '找不到FAQ信息')
generator(5211, '您没有权限执行此操作')
generator(5212, '请填写回复内容')
generator(5213, '请填写提问主题')
generator(5214, '找不到公告信息')
generator(5215, '请输入公告内容')
generator(5216, '找不到查重信息')
generator(5217, '查重信息暂不公开')
generator(5218, '数据令牌错误')
generator(5219, '请输入或选择需要打印的内容')
generator(5220, '你不能打印别人的代码')
generator(5221, '打印记录不存在')

generator(5250, '题目序号应该从1开始')
generator(5251, '请输入比赛名称')
generator(5252, '请输入比赛开始时间')
generator(5253, '请输入比赛结束时间')
generator(5254, '时间信息不符合标准')
generator(5255, '比赛错题罚时不符合要求')
generator(5256, '查重阈值错误')
generator(5257, '请输入用户的登录名称')
generator(5258, '请输入队伍名称')
generator(5259, '请输入队伍成员')
generator(5260, '用户名已经存在')
generator(5261, '您不能修改自己的账户角色')
generator(5262, '你傻逼啊你自己删你自己？')
generator(5263, '题目已经存在!')
generator(5264, '根据题目设置，评测结果不可改!')
generator(5265, '不存在的评测信号')

generator(5999, '您没有权限创建比赛')


# ========== HTTP 405 ==========
generator(40500, '请求方式错误，要求GET方法')
generator(40501, '请求方式错误，要求POST方法')

