12 |
13 |
14 |
15 |
16 |
19 |
20 |
25 |
26 |
27 |
28 |
29 | WebChat主要使用SSM框架,即Spring + Spring MVC + Mybatis
30 | 通讯使用的是websocket
31 | 数据库使用的是Mysql
32 | 前端框架采用的是Amaze UI,弹窗控件和分页控件采用的是Layer和Laypage
33 |
34 |
35 |
36 |
42 |
43 |
49 |
50 |
51 |
52 |
53 |
56 |
57 |
58 |
59 |
--------------------------------------------------------------------------------
/src/main/webapp/errorinfo.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
WebChat | 个人信息
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
${userid}的个人信息 / info
18 |
19 |
20 |
23 |
24 |
25 |
26 |
昵称:保密
27 |
28 |

29 |
30 |
31 |
性别:保密
32 |
年龄:保密
33 |
简介:保密
34 |
注册时间:保密
35 |
最后登录:保密
36 |
37 |
38 |
39 |
40 |
41 |
42 |
45 |
46 |
47 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/aopalliance-1.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/aopalliance-1.0.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-beanutils-1.9.2.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-beanutils-1.9.2.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-codec-1.10.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-codec-1.10.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-collections-3.2.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-collections-3.2.1.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-dbcp-1.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-dbcp-1.4.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-fileupload-1.3.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-fileupload-1.3.1.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-io-2.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-io-2.4.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-lang-2.6.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-lang-2.6.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-lang3-3.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-lang3-3.4.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-logging-1.1.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-logging-1.1.1.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/commons-pool-1.5.4.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/commons-pool-1.5.4.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/fastjson-1.2.7.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/fastjson-1.2.7.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/hamcrest-core-1.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/hamcrest-core-1.3.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jackson-annotations-2.2.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jackson-annotations-2.2.3.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jackson-core-2.2.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jackson-core-2.2.3.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jackson-core-asl-1.9.13.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jackson-core-asl-1.9.13.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jackson-databind-2.2.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jackson-databind-2.2.3.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jackson-mapper-asl-1.9.13.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jackson-mapper-asl-1.9.13.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jcl-over-slf4j-1.7.21.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jcl-over-slf4j-1.7.21.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/json-20150729.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/json-20150729.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jstl-1.2.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jstl-1.2.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/jul-to-slf4j-1.7.21.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/jul-to-slf4j-1.7.21.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/junit-4.11.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/junit-4.11.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/log4j-api-2.5.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/log4j-api-2.5.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/log4j-core-2.5.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/log4j-core-2.5.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/log4j-jul-2.5.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/log4j-jul-2.5.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/log4j-slf4j-impl-2.5.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/log4j-slf4j-impl-2.5.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/log4j-web-2.5.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/log4j-web-2.5.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/mybatis-3.2.6.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/mybatis-3.2.6.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/mybatis-spring-1.2.3.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/mybatis-spring-1.2.3.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/mysql-connector-java-5.1.25.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/mysql-connector-java-5.1.25.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/ojdbc6-10.2.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/ojdbc6-10.2.0.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/slf4j-api-1.7.21.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/slf4j-api-1.7.21.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-aop-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-aop-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-beans-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-beans-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-context-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-context-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-context-support-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-context-support-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-core-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-core-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-data-commons-core-1.4.1.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-data-commons-core-1.4.1.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-expression-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-expression-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-jdbc-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-jdbc-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-messaging-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-messaging-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-oxm-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-oxm-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-test-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-test-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-tx-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-tx-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-web-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-web-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-webmvc-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-webmvc-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/jar/spring-websocket-4.2.4.RELEASE.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/jar/spring-websocket-4.2.4.RELEASE.jar
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/five_chess.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/five_chess.png
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/index.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/index.png
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/info.png
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/log.png
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/login.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/login.png
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/setting.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/setting.png
--------------------------------------------------------------------------------
/src/main/webapp/file/photo/sysset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/file/photo/sysset.png
--------------------------------------------------------------------------------
/src/main/webapp/file/sql/webchat.sql:
--------------------------------------------------------------------------------
1 | /*
2 | Navicat MySQL Data Transfer
3 |
4 | Source Server : Amayadream
5 | Source Server Version : 50713
6 | Source Host : localhost:3306
7 | Source Database : webchat
8 |
9 | Target Server Type : MYSQL
10 | Target Server Version : 50713
11 | File Encoding : 65001
12 |
13 | Date: 2017-01-11 19:26:11
14 | */
15 |
16 | SET FOREIGN_KEY_CHECKS=0;
17 |
18 | -- ----------------------------
19 | -- Table structure for log
20 | -- ----------------------------
21 | DROP TABLE IF EXISTS `log`;
22 | CREATE TABLE `log` (
23 | `id` INTEGER PRIMARY KEY AUTO_INCREMENT ,
24 | `userid` varchar(255) DEFAULT NULL COMMENT '用户名',
25 | `time` varchar(255) DEFAULT NULL COMMENT '操作时间',
26 | `type` varchar(255) DEFAULT NULL COMMENT '操作类型',
27 | `detail` varchar(255) DEFAULT NULL COMMENT '详情',
28 | `ip` varchar(255) DEFAULT NULL COMMENT 'ip',
29 | KEY `fk_log_userid` (`userid`),
30 | CONSTRAINT `fk_log_userid` FOREIGN KEY (`userid`) REFERENCES `user` (`userid`)
31 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
32 |
33 | -- ----------------------------
34 | -- Records of log
35 | -- ----------------------------
36 | <<<<<<< HEAD
37 | INSERT INTO `log` VALUES (1, 'SiceNovember', '2017-01-11 19:20:43', '登陆', '用户登陆', null);
38 | =======
39 | INSERT INTO `log` VALUES (1, 'SinceNovember', '2017-01-11 19:20:43', '登陆', '用户登陆', null);
40 | >>>>>>> first commit
41 |
42 |
43 | -- ----------------------------
44 | -- Table structure for user
45 | -- ----------------------------
46 | DROP TABLE IF EXISTS `user`;
47 | CREATE TABLE `user` (
48 | `userid` varchar(255) DEFAULT NULL COMMENT '用户名',
49 | `password` varchar(255) DEFAULT NULL COMMENT '密码',
50 | `nickname` varchar(255) DEFAULT NULL COMMENT '昵称',
51 | `sex` int(1) DEFAULT NULL COMMENT '性别',
52 | `age` int(5) DEFAULT NULL COMMENT '年龄',
53 | `profilehead` varchar(255) DEFAULT NULL COMMENT '头像',
54 | `profile` varchar(255) DEFAULT NULL COMMENT '简介',
55 | `firsttime` varchar(255) DEFAULT NULL COMMENT '注册时间',
56 | `lasttime` varchar(255) DEFAULT NULL COMMENT '最后登录时间',
57 | `status` int(1) DEFAULT NULL COMMENT '隐私(1可查看 -1静止查看)',
58 | KEY `userid` (`userid`)
59 | ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
60 |
61 | -- ----------------------------
62 | -- Records of user
63 | -- ----------------------------
64 | <<<<<<< HEAD
65 | INSERT INTO `user` VALUES ('SinceNovember', '123456', 'SiceNovember', '1', '23', 'upload/Amayadream/Amayadream.jpg', '没有', '2017-01-11 19:22:21', '2017-01-11 19:22:21', '1');
66 | =======
67 | INSERT INTO `user` VALUES ('SinceNovember', '123456', 'SinceNovember', '1', '23', 'upload/Amayadream/Amayadream.jpg', '没有', '2017-01-11 19:22:21', '2017-01-11 19:22:21', '1');
68 | >>>>>>> first commit
69 | INSERT INTO `user` VALUES ('admin', 'admin', 'admin', '1', '23', 'upload/admin/admin.jpg', 'i\'m admin', '2017-01-11 19:22:21', '2017-01-11 19:23:20', '1');
70 |
--------------------------------------------------------------------------------
/src/main/webapp/five-chess.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
7 |
8 |
9 |
人工智能五子棋
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
人人对战五子棋
20 |
21 |
22 |
23 |
在线列表 []
24 |
25 |
27 |
28 |
29 |
30 |
33 |
34 |
35 |
36 |
405 |
406 |
--------------------------------------------------------------------------------
/src/main/webapp/help.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
WebChat | 帮助
7 |
8 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
36 |
39 |
40 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/src/main/webapp/index.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
WebChat | 聊天 ${message }
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
在线列表 []
43 |
44 |
47 |
49 |
50 |
51 |
52 |
54 |
55 |
274 |
275 |
--------------------------------------------------------------------------------
/src/main/webapp/info-setting.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
WebChat | 个人设置
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
20 |
21 |
22 |
27 |
28 |
29 |
82 |
83 |
84 |
107 |
108 |
109 |
110 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
147 |
148 |
176 |
177 |
178 |
--------------------------------------------------------------------------------
/src/main/webapp/information.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
WebChat | 个人信息
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
${userid}的个人信息 / info
18 |
19 |
20 |
23 |
24 |
25 |
26 |
27 |
昵称:
28 |
29 | ${user.nickname}
30 |
31 |
32 |

33 |
34 |
35 |
性别:
36 |
37 | 未知
38 |
39 | 男
40 | 女
41 | 保密
42 |
43 |
44 |
年龄:
45 |
46 | 未知
47 | ${user.age}
48 |
49 |
简介:
50 |
51 |
52 | 这个人很懒,什么都没有留下!
53 |
54 |
55 | ${user.profile}
56 |
57 |
58 |
注册时间
59 |
${user.firsttime}
60 |
最后登录
61 |
${user.lasttime}
62 |
63 |
64 |
65 |
66 |
67 |
68 |
71 |
72 |
73 |
85 |
86 |
87 |
--------------------------------------------------------------------------------
/src/main/webapp/log.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
WebChat | 系统日志
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
19 |
20 |
21 |
22 |
23 | # |
24 | 用户名 |
25 | 时间 |
26 | 类型 |
27 | 详情 |
28 | IP |
29 |
30 |
31 |
32 |
33 |
34 | ${status.index + 1} |
35 | ${log.userid} |
36 | ${log.time} |
37 | ${log.type} |
38 | ${log.detail} |
39 | ${log.ip} |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
52 |
53 |
54 |
73 |
74 |
75 |
--------------------------------------------------------------------------------
/src/main/webapp/login.jsp:
--------------------------------------------------------------------------------
1 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
2 | <%@ page contentType="text/html;charset=UTF-8" language="java" %>
3 | <%String path = request.getContextPath();%>
4 |
5 |
6 |
7 |
WebChat | 登陆
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
WebChat
16 |
39 |
40 |
117 |
118 |
--------------------------------------------------------------------------------
/src/main/webapp/main.jsp:
--------------------------------------------------------------------------------
1 | <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
2 | pageEncoding="ISO-8859-1"%>
3 |
4 |
5 |
6 |
7 |
Insert title here
8 |
9 |
10 | 111
11 |
12 |
--------------------------------------------------------------------------------
/src/main/webapp/register.jsp:
--------------------------------------------------------------------------------
1 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
2 | <%@ page contentType="text/html;charset=UTF-8" language="java" %>
3 | <%String path = request.getContextPath();%>
4 |
5 |
6 |
7 |
WebChat | 登陆
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
WebChat注册
16 |
38 |
39 |
112 |
113 |
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/css/admin.css:
--------------------------------------------------------------------------------
1 | /**
2 | * admin.css
3 | */
4 |
5 | ul {
6 | margin-top: 0;
7 | }
8 |
9 | .admin-icon-yellow {
10 | color: #ffbe40;
11 | }
12 |
13 | .admin-header {
14 | font-size: 1.4rem;
15 | margin-bottom: 0;
16 | }
17 |
18 | .admin-header-list a:hover :after {
19 | content: none;
20 | }
21 |
22 | .admin-main {
23 | background: #f3f3f3;
24 | }
25 |
26 | .admin-menu {
27 | position: fixed;
28 | z-index: 10;
29 | bottom: 30px;
30 | right: 20px;
31 | }
32 |
33 | .admin-sidebar {
34 | width: 260px;
35 | min-height: 100%;
36 | float: left;
37 | border-right: 1px solid #cecece;
38 | }
39 |
40 | .admin-sidebar-list {
41 | margin-bottom: 0;
42 | }
43 |
44 | .admin-sidebar-list li a {
45 | color: #5c5c5c;
46 | padding-left: 24px;
47 | }
48 |
49 | .admin-sidebar-list li:first-child {
50 | border-top: none;
51 | }
52 |
53 | .admin-sidebar-sub {
54 | margin-top: 0;
55 | margin-bottom: 0;
56 | box-shadow: 0 16px 8px -15px #e2e2e2 inset;
57 | background: #ececec;
58 | padding-left: 24px;
59 | }
60 |
61 | .admin-sidebar-sub li:first-child {
62 | border-top: 1px solid #dedede;
63 | }
64 |
65 | .admin-sidebar-panel {
66 | margin: 10px;
67 | }
68 |
69 | .admin-content {
70 | width: auto;
71 | overflow: hidden;
72 | height: 100%;
73 | background: #fff;
74 | }
75 |
76 | .admin-content-list {
77 | border: 1px solid #e9ecf1;
78 | margin-top: 0;
79 | }
80 |
81 | .admin-content-list li {
82 | border: 1px solid #e9ecf1;
83 | border-width: 0 1px;
84 | margin-left: -1px;
85 | }
86 |
87 | .admin-content-list li:first-child {
88 | border-left: none;
89 | }
90 |
91 | .admin-content-list li:last-child {
92 | border-right: none;
93 | }
94 |
95 | .admin-content-table a {
96 | color: #535353;
97 | }
98 | .admin-content-file {
99 | margin-bottom: 0;
100 | color: #666;
101 | }
102 |
103 | .admin-content-file p {
104 | margin: 0 0 5px 0;
105 | font-size: 1.4rem;
106 | }
107 |
108 | .admin-content-file li {
109 | padding: 10px 0;
110 | }
111 |
112 | .admin-content-file li:first-child {
113 | border-top: none;
114 | }
115 |
116 | .admin-content-file li:last-child {
117 | border-bottom: none;
118 | }
119 |
120 | .admin-content-file li .am-progress {
121 | margin-bottom: 4px;
122 | }
123 |
124 | .admin-content-file li .am-progress-bar {
125 | line-height: 14px;
126 | }
127 |
128 | .admin-content-task {
129 | margin-bottom: 0;
130 | }
131 |
132 | .admin-content-task li {
133 | padding: 5px 0;
134 | border-color: #eee;
135 | }
136 |
137 | .admin-content-task li:first-child {
138 | border-top: none;
139 | }
140 |
141 | .admin-content-task li:last-child {
142 | border-bottom: none;
143 | }
144 |
145 | .admin-task-meta {
146 | font-size: 1.2rem;
147 | color: #999;
148 | }
149 |
150 | .admin-task-bd {
151 | font-size: 1.4rem;
152 | margin-bottom: 5px;
153 | }
154 |
155 | .admin-content-comment {
156 | margin-bottom: 0;
157 | }
158 |
159 | .admin-content-comment .am-comment-bd {
160 | font-size: 1.4rem;
161 | }
162 |
163 | .admin-content-pagination {
164 | margin-bottom: 0;
165 | }
166 | .admin-content-pagination li a {
167 | padding: 4px 8px;
168 | }
169 |
170 | @media only screen and (min-width: 641px) {
171 | .admin-sidebar {
172 | display: block;
173 | position: static;
174 | background: none;
175 | }
176 |
177 | .admin-offcanvas-bar {
178 | position: static;
179 | width: auto;
180 | background: none;
181 | -webkit-transform: translate3d(0, 0, 0);
182 | -ms-transform: translate3d(0, 0, 0);
183 | transform: translate3d(0, 0, 0);
184 | }
185 | .admin-offcanvas-bar:after {
186 | content: none;
187 | }
188 | }
189 |
190 | @media only screen and (max-width: 640px) {
191 | .admin-sidebar {
192 | width: inherit;
193 | }
194 |
195 | .admin-offcanvas-bar {
196 | background: #f3f3f3;
197 | }
198 |
199 | .admin-offcanvas-bar:after {
200 | background: #BABABA;
201 | }
202 |
203 | .admin-sidebar-list a:hover, .admin-sidebar-list a:active{
204 | -webkit-transition: background-color .3s ease;
205 | -moz-transition: background-color .3s ease;
206 | -ms-transition: background-color .3s ease;
207 | -o-transition: background-color .3s ease;
208 | transition: background-color .3s ease;
209 | background: #E4E4E4;
210 | }
211 |
212 | .admin-content-list li {
213 | padding: 10px;
214 | border-width: 1px 0;
215 | margin-top: -1px;
216 | }
217 |
218 | .admin-content-list li:first-child {
219 | border-top: none;
220 | }
221 |
222 | .admin-content-list li:last-child {
223 | border-bottom: none;
224 | }
225 |
226 | .admin-form-text {
227 | text-align: left !important;
228 | }
229 |
230 | }
231 |
232 | /*
233 | * user.html css
234 | */
235 | .user-info {
236 | margin-bottom: 15px;
237 | }
238 |
239 | .user-info .am-progress {
240 | margin-bottom: 4px;
241 | }
242 |
243 | .user-info p {
244 | margin: 5px;
245 | }
246 |
247 | .user-info-order {
248 | font-size: 1.4rem;
249 | }
250 |
251 | /*
252 | * errorLog.html css
253 | */
254 |
255 | .error-log .am-pre-scrollable {
256 | max-height: 40rem;
257 | }
258 |
259 | /*
260 | * table.html css
261 | */
262 |
263 | .table-main {
264 | font-size: 1.4rem;
265 | padding: .5rem;
266 | }
267 |
268 | .table-main button {
269 | background: #fff;
270 | }
271 |
272 | .table-check {
273 | width: 30px;
274 | }
275 |
276 | .table-id {
277 | width: 50px;
278 | }
279 |
280 | @media only screen and (max-width: 640px) {
281 | .table-select {
282 | margin-top: 10px;
283 | margin-left: 5px;
284 | }
285 | }
286 |
287 | /*
288 | gallery.html css
289 | */
290 |
291 | .gallery-list li {
292 | padding: 10px;
293 | }
294 |
295 | .gallery-list a {
296 | color: #666;
297 | }
298 |
299 | .gallery-list a:hover {
300 | color: #3bb4f2;
301 | }
302 |
303 | .gallery-title {
304 | margin-top: 6px;
305 | font-size: 1.4rem;
306 | }
307 |
308 | .gallery-desc {
309 | font-size: 1.2rem;
310 | margin-top: 4px;
311 | }
312 |
313 | /*
314 | 404.html css
315 | */
316 |
317 | .page-404 {
318 | background: #fff;
319 | border: none;
320 | width: 200px;
321 | margin: 0 auto;
322 | }
323 |
324 |
325 | /*
326 | fixed-layout 固定头部和边栏布局
327 | */
328 |
329 | .fixed-layout,
330 | .fixed-layout body {
331 | height: 100%;
332 | overflow: hidden;
333 | }
334 |
335 | .fixed-layout .admin-header {
336 | position: fixed;
337 | top: 0;
338 | left: 0;
339 | right: 0;
340 | z-index: 1500;
341 | }
342 |
343 | .fixed-layout .admin-main {
344 | position: relative;
345 | height: 100%;
346 | padding-top: 51px;
347 | }
348 |
349 | .fixed-layout .admin-content,
350 | .fixed-layout .admin-sidebar {
351 | height: 100%;
352 | overflow-x: hidden;
353 | overflow-y: scroll;
354 | }
355 |
356 | .fixed-layout .admin-sidebar.am-active {
357 | z-index: 1600;
358 | }
359 |
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/css/app.css:
--------------------------------------------------------------------------------
1 | /* Write your styles */
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/fonts/FontAwesome.otf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/fonts/FontAwesome.otf
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.eot
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.ttf
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.woff
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/app-icon72x72@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/app-icon72x72@2x.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/admin-chrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/admin-chrome.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/admin-firefox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/admin-firefox.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/admin-ie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/admin-ie.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/admin-opera.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/admin-opera.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/admin-safari.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/admin-safari.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/adminPage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/adminPage.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/blogPage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/blogPage.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/landing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/landing.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/landingPage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/landingPage.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/loginPage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/loginPage.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/examples/sidebarPage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/examples/sidebarPage.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/favicon.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/i/startup-640x1096.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/amaze/i/startup-640x1096.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/amaze/js/app.js:
--------------------------------------------------------------------------------
1 | (function($) {
2 | 'use strict';
3 |
4 | $(function() {
5 | var $fullText = $('.admin-fullText');
6 | $('#admin-fullscreen').on('click', function() {
7 | $.AMUI.fullscreen.toggle();
8 | });
9 |
10 | $(document).on($.AMUI.fullscreen.raw.fullscreenchange, function() {
11 | $fullText.text($.AMUI.fullscreen.isFullscreen ? '退出全屏' : '开启全屏');
12 | });
13 | });
14 | })(jQuery);
15 |
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/contextjs/css/context.standalone.css:
--------------------------------------------------------------------------------
1 | /**
2 | * ContextJS Styles
3 | * For use WITHOUT Twitters Bootstrap CSS
4 | */
5 |
6 | .nav-header {
7 | display: block;
8 | padding: 3px 15px;
9 | font-size: 11px;
10 | font-weight: bold;
11 | line-height: 20px;
12 | color: #999;
13 | text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
14 | text-transform: uppercase;
15 | }
16 | .dropdown-menu {
17 | position: absolute;
18 | top: 100%;
19 | left: 0;
20 | z-index: 1000;
21 | display: none;
22 | float: left;
23 | min-width: 160px;
24 | padding: 5px 0;
25 | margin: 2px 0 0;
26 | list-style: none;
27 | background-color: #ffffff;
28 | border: 1px solid #ccc;
29 | border: 1px solid rgba(0, 0, 0, 0.2);
30 | font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
31 | font-size: 14px;
32 | *border-right-width: 2px;
33 | *border-bottom-width: 2px;
34 | -webkit-border-radius: 6px;
35 | -moz-border-radius: 6px;
36 | border-radius: 6px;
37 | -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
38 | -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
39 | box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
40 | -webkit-background-clip: padding-box;
41 | -moz-background-clip: padding;
42 | background-clip: padding-box;
43 | text-align:left;
44 | }
45 | .dropdown-menu.pull-right {
46 | right: 0;
47 | left: auto;
48 | }
49 | .dropdown-menu .divider {
50 | *width: 100%;
51 | height: 1px;
52 | margin: 9px 1px;
53 | *margin: -5px 0 5px;
54 | overflow: hidden;
55 | background-color: #e5e5e5;
56 | border-bottom: 1px solid #ffffff;
57 | }
58 | .dropdown-menu a {
59 | display: block;
60 | padding: 3px 20px;
61 | clear: both;
62 | font-weight: normal;
63 | line-height: 20px;
64 | color: #333333;
65 | white-space: nowrap;
66 | text-decoration: none;
67 | }
68 | .dropdown-menu li > a:hover, .dropdown-menu li > a:focus, .dropdown-submenu:hover > a {
69 | color: #ffffff;
70 | text-decoration: none;
71 | background-color: #0088cc;
72 | background-color: #0081c2;
73 | background-image: -moz-linear-gradient(top, #0088cc, #0077b3);
74 | background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));
75 | background-image: -webkit-linear-gradient(top, #0088cc, #0077b3);
76 | background-image: -o-linear-gradient(top, #0088cc, #0077b3);
77 | background-image: linear-gradient(to bottom, #0088cc, #0077b3);
78 | background-repeat: repeat-x;
79 | filter: progid: dximagetransform.microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0);
80 | }
81 | .dropdown-menu .active > a, .dropdown-menu .active > a:hover {
82 | color: #ffffff;
83 | text-decoration: none;
84 | background-color: #0088cc;
85 | background-color: #0081c2;
86 | background-image: linear-gradient(to bottom, #0088cc, #0077b3);
87 | background-image: -moz-linear-gradient(top, #0088cc, #0077b3);
88 | background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));
89 | background-image: -webkit-linear-gradient(top, #0088cc, #0077b3);
90 | background-image: -o-linear-gradient(top, #0088cc, #0077b3);
91 | background-repeat: repeat-x;
92 | outline: 0;
93 | filter: progid
94 | : dximagetransform.microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0);
95 | }
96 | .dropdown-menu .disabled > a, .dropdown-menu .disabled > a:hover {
97 | color: #999999;
98 | }
99 | .dropdown-menu .disabled > a:hover {
100 | text-decoration: none;
101 | cursor: default;
102 | background-color: transparent;
103 | }
104 | .open {
105 | *z-index: 1000;
106 | }
107 | .open > .dropdown-menu {
108 | display: block;
109 | }
110 | .pull-right > .dropdown-menu {
111 | right: 0;
112 | left: auto;
113 | }
114 | .dropup .caret, .navbar-fixed-bottom .dropdown .caret {
115 | border-top: 0;
116 | border-bottom: 4px solid #000000;
117 | content: "\2191";
118 | }
119 | .dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu {
120 | top: auto;
121 | bottom: 100%;
122 | margin-bottom: 1px;
123 | }
124 | .dropdown-submenu {
125 | position: relative;
126 | }
127 | .dropdown-submenu > .dropdown-menu {
128 | top: 0;
129 | left: 100%;
130 | margin-top: -6px;
131 | margin-left: -1px;
132 | -webkit-border-radius: 0 6px 6px 6px;
133 | -moz-border-radius: 0 6px 6px 6px;
134 | border-radius: 0 6px 6px 6px;
135 | }
136 | .dropdown-submenu > .dropdown-menu.drop-left{
137 | left:-100%;
138 | }
139 | .dropdown-submenu:hover .dropdown-menu {
140 | display: block;
141 | }
142 | .dropdown-submenu > a:after {
143 | display: block;
144 | float: right;
145 | width: 0;
146 | height: 0;
147 | margin-top: 5px;
148 | margin-right: -10px;
149 | border-color: transparent;
150 | border-left-color: #cccccc;
151 | border-style: solid;
152 | border-width: 5px 0 5px 5px;
153 | content: " ";
154 | }
155 | .dropdown-submenu:hover > a:after {
156 | border-left-color: #ffffff;
157 | }
158 | .dropdown .dropdown-menu .nav-header {
159 | padding-right: 20px;
160 | padding-left: 20px;
161 | }
162 | /**
163 | * Context Styles
164 | */
165 |
166 | .dropdown-context .nav-header {
167 | cursor: default;
168 | }
169 | .dropdown-context:before, .dropdown-context-up:before {
170 | position: absolute;
171 | top: -7px;
172 | left: 9px;
173 | display: inline-block;
174 | border-right: 7px solid transparent;
175 | border-bottom: 7px solid #ccc;
176 | border-left: 7px solid transparent;
177 | border-bottom-color: rgba(0, 0, 0, 0.2);
178 | content: '';
179 | }
180 | .dropdown-context:after, .dropdown-context-up:after {
181 | position: absolute;
182 | top: -6px;
183 | left: 10px;
184 | display: inline-block;
185 | border-right: 6px solid transparent;
186 | border-bottom: 6px solid #ffffff;
187 | border-left: 6px solid transparent;
188 | content: '';
189 | }
190 | .dropdown-context-up:before, .dropdown-context-up:after {
191 | top: auto;
192 | bottom: -7px;
193 | z-index: 9999;
194 | }
195 | .dropdown-context-up:before {
196 | border-right: 7px solid transparent;
197 | border-top: 7px solid #ccc;
198 | border-bottom: none;
199 | border-left: 7px solid transparent;
200 | }
201 | .dropdown-context-up:after {
202 | border-right: 6px solid transparent;
203 | border-top: 6px solid #ffffff;
204 | border-left: 6px solid transparent;
205 | border-bottom: none;
206 | }
207 | .dropdown-context-sub:before, .dropdown-context-sub:after {
208 | display: none;
209 | }
210 | .dropdown-context .dropdown-submenu:hover .dropdown-menu {
211 | display: none;
212 | }
213 | .dropdown-context .dropdown-submenu:hover > .dropdown-menu {
214 | display: block;
215 | }
216 |
217 | .compressed-context a{
218 | padding-left: 14px;
219 | padding-top: 0;
220 | padding-bottom: 0;
221 | font-size: 13px;
222 | }
223 | .compressed-context .divider{
224 | margin: 5px 1px;
225 | }
226 | .compressed-context .nav-header{
227 | padding:1px 13px;
228 | }
229 |
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/contextjs/js/context.js:
--------------------------------------------------------------------------------
1 | /*
2 | * Context.js
3 | * Copyright Jacob Kelley
4 | * MIT License
5 | */
6 |
7 | var context = context || (function () {
8 |
9 | var options = {
10 | fadeSpeed: 100,
11 | filter: function ($obj) {
12 | // Modify $obj, Do not return
13 | },
14 | above: 'auto',
15 | preventDoubleContext: true,
16 | compress: false
17 | };
18 |
19 | function initialize(opts) {
20 |
21 | options = $.extend({}, options, opts);
22 |
23 | $(document).on('click', 'html', function () {
24 | $('.dropdown-context').fadeOut(options.fadeSpeed, function(){
25 | $('.dropdown-context').css({display:''}).find('.drop-left').removeClass('drop-left');
26 | });
27 | });
28 | if(options.preventDoubleContext){
29 | $(document).on('contextmenu', '.dropdown-context', function (e) {
30 | e.preventDefault();
31 | });
32 | }
33 | $(document).on('mouseenter', '.dropdown-submenu', function(){
34 | var $sub = $(this).find('.dropdown-context-sub:first'),
35 | subWidth = $sub.width(),
36 | subLeft = $sub.offset().left,
37 | collision = (subWidth+subLeft) > window.innerWidth;
38 | if(collision){
39 | $sub.addClass('drop-left');
40 | }
41 | });
42 |
43 | }
44 |
45 | function updateOptions(opts){
46 | options = $.extend({}, options, opts);
47 | }
48 |
49 | function buildMenu(data, id, subMenu) {
50 | var subClass = (subMenu) ? ' dropdown-context-sub' : '',
51 | compressed = options.compress ? ' compressed-context' : '',
52 | $menu = $('');
53 | var i = 0, linkTarget = '';
54 | for(i; i
');
57 | } else if (typeof data[i].header !== 'undefined') {
58 | $menu.append('');
59 | } else {
60 | if (typeof data[i].href == 'undefined') {
61 | data[i].href = '#';
62 | }
63 | if (typeof data[i].target !== 'undefined') {
64 | linkTarget = ' target="'+data[i].target+'"';
65 | }
66 | if (typeof data[i].subMenu !== 'undefined') {
67 | $sub = ('');
68 | } else {
69 | $sub = $('' + data[i].text + '');
70 | }
71 | if (typeof data[i].action !== 'undefined') {
72 | var actiond = new Date(),
73 | actionID = 'event-' + actiond.getTime() * Math.floor(Math.random()*100000),
74 | eventAction = data[i].action;
75 | $sub.find('a').attr('id', actionID);
76 | $('#' + actionID).addClass('context-event');
77 | $(document).on('click', '#' + actionID, eventAction);
78 | }
79 | $menu.append($sub);
80 | if (typeof data[i].subMenu != 'undefined') {
81 | var subMenuData = buildMenu(data[i].subMenu, id, true);
82 | $menu.find('li:last').append(subMenuData);
83 | }
84 | }
85 | if (typeof options.filter == 'function') {
86 | options.filter($menu.find('li:last'));
87 | }
88 | }
89 | return $menu;
90 | }
91 |
92 | function addContext(selector, data) {
93 |
94 | var d = new Date(),
95 | id = d.getTime(),
96 | $menu = buildMenu(data, id);
97 |
98 | $('body').append($menu);
99 |
100 |
101 | $(document).on('contextmenu', selector, function (e) {
102 | e.preventDefault();
103 | e.stopPropagation();
104 |
105 | $('.dropdown-context:not(.dropdown-context-sub)').hide();
106 |
107 | $dd = $('#dropdown-' + id);
108 | if (typeof options.above == 'boolean' && options.above) {
109 | $dd.addClass('dropdown-context-up').css({
110 | top: e.pageY - 20 - $('#dropdown-' + id).height(),
111 | left: e.pageX - 13
112 | }).fadeIn(options.fadeSpeed);
113 | } else if (typeof options.above == 'string' && options.above == 'auto') {
114 | $dd.removeClass('dropdown-context-up');
115 | var autoH = $dd.height() + 12;
116 | if ((e.pageY + autoH) > $('html').height()) {
117 | $dd.addClass('dropdown-context-up').css({
118 | top: e.pageY - 20 - autoH,
119 | left: e.pageX - 13
120 | }).fadeIn(options.fadeSpeed);
121 | } else {
122 | $dd.css({
123 | top: e.pageY + 10,
124 | left: e.pageX - 13
125 | }).fadeIn(options.fadeSpeed);
126 | }
127 | }
128 | });
129 | }
130 |
131 | function hideContext(){
132 | $('.dropdown-context:not(.dropdown-context-sub)').hide();
133 | }
134 |
135 | function destroyContext(selector) {
136 | $(document).off('contextmenu', selector).off('click', '.context-event');
137 | }
138 |
139 | return {
140 | init: initialize,
141 | settings: updateOptions,
142 | attach: addContext,
143 | destroy: destroyContext,
144 | hide : hideContext
145 | };
146 | })();
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/extend/layer.ext.js:
--------------------------------------------------------------------------------
1 | /*! layer弹层组件拓展类 */
2 | ;!function(){layer.use("skin/layer.ext.css",function(){layer.layui_layer_extendlayerextjs=!0});var a=layer.cache||{},b=function(b){return a.skin?" "+a.skin+" "+a.skin+"-"+b:""};layer.prompt=function(a,c){a=a||{},"function"==typeof a&&(c=a);var d,e=2==a.formType?'":function(){return''}();return layer.open($.extend({btn:["确定","取消"],content:e,skin:"layui-layer-prompt"+b("prompt"),success:function(a){d=a.find(".layui-layer-input"),d.focus()},yes:function(b){var e=d.val();""===e?d.focus():e.length>(a.maxlength||500)?layer.tips("最多输入"+(a.maxlength||500)+"个字数",d,{tips:1}):c&&c(e,b,d)}},a))},layer.tab=function(a){a=a||{};var c=a.tab||{};return layer.open($.extend({type:1,skin:"layui-layer-tab"+b("tab"),title:function(){var a=c.length,b=1,d="";if(a>0)for(d=''+c[0].title+"";a>b;b++)d+=""+c[b].title+"";return d}(),content:''+function(){var a=c.length,b=1,d="";if(a>0)for(d='- '+(c[0].content||"no content")+"
";a>b;b++)d+='- '+(c[b].content||"no content")+"
";return d}()+"
",success:function(a){var b=a.find(".layui-layer-title").children(),c=a.find(".layui-layer-tabmain").children();b.on("mousedown",function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0;var b=$(this),d=b.index();b.addClass("layui-layer-tabnow").siblings().removeClass("layui-layer-tabnow"),c.eq(d).show().siblings().hide()})}},a))},layer.photos=function(a,c,d){function e(a,b,c){var d=new Image;d.onload=function(){d.onload=null,b(d)},d.onerror=function(a){d.onerror=null,c(a)},d.src=a}var f={};if(a=a||{},a.photos){var g=a.photos.constructor===Object,h=g?a.photos:{},i=h.data||[],j=h.start||0;if(f.imgIndex=j+1,g){if(0===i.length)return void layer.msg("没有图片")}else{var k=$(a.photos),l=k.find(a.img||"img");if(0===l.length)return;if(c||k.find(h.img||"img").each(function(b){var c=$(this);i.push({alt:c.attr("alt"),pid:c.attr("layer-pid"),src:c.attr("layer-src")||c.attr("src"),thumb:c.attr("src")}),c.on("click",function(){layer.photos($.extend(a,{photos:{start:b,data:i,tab:a.tab},full:a.full}),!0)})}),!c)return}f.imgprev=function(a){f.imgIndex--,f.imgIndex<1&&(f.imgIndex=i.length),f.tabimg(a)},f.imgnext=function(a,b){f.imgIndex++,f.imgIndex>i.length&&(f.imgIndex=1,b)||f.tabimg(a)},f.keyup=function(a){if(!f.end){var b=a.keyCode;a.preventDefault(),37===b?f.imgprev(!0):39===b?f.imgnext(!0):27===b&&layer.close(f.index)}},f.tabimg=function(b){i.length<=1||(h.start=f.imgIndex-1,layer.close(f.index),layer.photos(a,!0,b))},f.event=function(){f.bigimg.hover(function(){f.imgsee.show()},function(){f.imgsee.hide()}),f.bigimg.find(".layui-layer-imgprev").on("click",function(a){a.preventDefault(),f.imgprev()}),f.bigimg.find(".layui-layer-imgnext").on("click",function(a){a.preventDefault(),f.imgnext()}),$(document).on("keyup",f.keyup)},f.loadi=layer.load(1,{shade:"shade"in a?!1:.9,scrollbar:!1}),e(i[j].src,function(c){layer.close(f.loadi),f.index=layer.open($.extend({type:1,area:function(){var b=[c.width,c.height],d=[$(window).width()-100,$(window).height()-100];return!a.full&&b[0]>d[0]&&(b[0]=d[0],b[1]=b[0]*d[1]/b[0]),[b[0]+"px",b[1]+"px"]}(),title:!1,shade:.9,shadeClose:!0,closeBtn:!1,move:".layui-layer-phimg img",moveType:1,scrollbar:!1,moveOut:!0,shift:5*Math.random()|0,skin:"layui-layer-photos"+b("photos"),content:'",success:function(b,c){f.bigimg=b.find(".layui-layer-phimg"),f.imgsee=b.find(".layui-layer-imguide,.layui-layer-imgbar"),f.event(b),a.tab&&a.tab(i[j],b)},end:function(){f.end=!0,$(document).off("keyup",f.keyup)}},a))},function(){layer.close(f.loadi),layer.msg("当前图片地址异常
是否继续查看下一张?",{time:3e4,btn:["下一张","不看了"],yes:function(){i.length>1&&f.imgnext(!0,!0)}})})}}}();
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/default/icon-ext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/layer/skin/default/icon-ext.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/default/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/layer/skin/default/icon.png
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/default/loading-0.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/layer/skin/default/loading-0.gif
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/default/loading-1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/layer/skin/default/loading-1.gif
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/default/loading-2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/plugins/layer/skin/default/loading-2.gif
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/layer.css:
--------------------------------------------------------------------------------
1 | /*!
2 |
3 | @Name: layer's style
4 | @Author: 贤心
5 | @Blog: sentsin.com
6 |
7 | */*html{background-image:url(about:blank);background-attachment:fixed}html #layui_layer_skinlayercss{display:none;position:absolute;width:1989px}.layui-layer,.layui-layer-shade{position:fixed;_position:absolute;pointer-events:auto}.layui-layer-shade{top:0;left:0;width:100%;height:100%;_height:expression(document.body.offsetHeight+"px")}.layui-layer{top:150px;left:50%;margin:0;padding:0;background-color:#fff;-webkit-background-clip:content;box-shadow:1px 1px 50px rgba(0,0,0,.3);border-radius:2px;-webkit-animation-fill-mode:both;animation-fill-mode:both;-webkit-animation-duration:.3s;animation-duration:.3s}.layui-layer-close{position:absolute}.layui-layer-content{position:relative}.layui-layer-border{border:1px solid #B2B2B2;border:1px solid rgba(0,0,0,.3);box-shadow:1px 1px 5px rgba(0,0,0,.2)}.layui-layer-moves{position:absolute;border:3px solid #666;border:3px solid rgba(0,0,0,.5);cursor:move;background-color:#fff;background-color:rgba(255,255,255,.3);filter:alpha(opacity=50)}.layui-layer-load{background:url(default/loading-0.gif) center center no-repeat #fff}.layui-layer-ico{background:url(default/icon.png) no-repeat}.layui-layer-btn a,.layui-layer-dialog .layui-layer-ico,.layui-layer-setwin a{display:inline-block;*display:inline;*zoom:1;vertical-align:top}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.5);-ms-transform:scale(.5);transform:scale(.5)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layui-anim{-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceOut{100%{opacity:0;-webkit-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.03);transform:scale(1.03)}0%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceOut{100%{opacity:0;-webkit-transform:scale(.7);-ms-transform:scale(.7);transform:scale(.7)}30%{-webkit-transform:scale(1.03);-ms-transform:scale(1.03);transform:scale(1.03)}0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.layui-anim-close{-webkit-animation-name:bounceOut;animation-name:bounceOut;-webkit-animation-duration:.2s;animation-duration:.2s}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layui-anim-01{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.layui-anim-02{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.layui-anim-03{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0) rotate(0);-ms-transform:translateX(0) rotate(0);transform:translateX(0) rotate(0)}}.layui-anim-04{-webkit-animation-name:rollIn;animation-name:rollIn}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-anim-05{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.layui-anim-06{-webkit-animation-name:shake;animation-name:shake}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.layui-layer-title{padding:0 80px 0 20px;height:42px;line-height:42px;border-bottom:1px solid #eee;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background-color:#F8F8F8;border-radius:2px 2px 0 0}.layui-layer-setwin{position:absolute;right:15px;*right:0;top:15px;font-size:0;line-height:initial}.layui-layer-setwin a{position:relative;width:16px;height:16px;margin-left:10px;font-size:12px;_overflow:hidden}.layui-layer-setwin .layui-layer-min cite{position:absolute;width:14px;height:2px;left:0;top:50%;margin-top:-1px;background-color:#2E2D3C;cursor:pointer;_overflow:hidden}.layui-layer-setwin .layui-layer-min:hover cite{background-color:#2D93CA}.layui-layer-setwin .layui-layer-max{background-position:-32px -40px}.layui-layer-setwin .layui-layer-max:hover{background-position:-16px -40px}.layui-layer-setwin .layui-layer-maxmin{background-position:-65px -40px}.layui-layer-setwin .layui-layer-maxmin:hover{background-position:-49px -40px}.layui-layer-setwin .layui-layer-close1{background-position:0 -40px;cursor:pointer}.layui-layer-setwin .layui-layer-close1:hover{opacity:.7}.layui-layer-setwin .layui-layer-close2{position:absolute;right:-28px;top:-28px;width:30px;height:30px;margin-left:0;background-position:-149px -31px;*right:-18px;_display:none}.layui-layer-setwin .layui-layer-close2:hover{background-position:-180px -31px}.layui-layer-btn{text-align:right;padding:0 10px 12px;pointer-events:auto}.layui-layer-btn a{height:28px;line-height:28px;margin:0 6px;padding:0 15px;border:1px solid #dedede;background-color:#f1f1f1;color:#333;border-radius:2px;font-weight:400;cursor:pointer;text-decoration:none}.layui-layer-btn a:hover{opacity:.9;text-decoration:none}.layui-layer-btn a:active{opacity:.7}.layui-layer-btn .layui-layer-btn0{border-color:#4898d5;background-color:#2e8ded;color:#fff}.layui-layer-dialog{min-width:260px}.layui-layer-dialog .layui-layer-content{position:relative;padding:20px;line-height:24px;word-break:break-all;font-size:14px;overflow:auto}.layui-layer-dialog .layui-layer-content .layui-layer-ico{position:absolute;top:16px;left:15px;_left:-40px;width:30px;height:30px}.layui-layer-ico1{background-position:-30px 0}.layui-layer-ico2{background-position:-60px 0}.layui-layer-ico3{background-position:-90px 0}.layui-layer-ico4{background-position:-120px 0}.layui-layer-ico5{background-position:-150px 0}.layui-layer-ico6{background-position:-180px 0}.layui-layer-rim{border:6px solid #8D8D8D;border:6px solid rgba(0,0,0,.3);border-radius:5px;box-shadow:none}.layui-layer-msg{min-width:180px;border:1px solid #D3D4D3;box-shadow:none}.layui-layer-hui{min-width:100px;background-color:#000;filter:alpha(opacity=60);background-color:rgba(0,0,0,.6);color:#fff;border:none}.layui-layer-hui .layui-layer-content{padding:12px 25px;text-align:center}.layui-layer-dialog .layui-layer-padding{padding:20px 20px 20px 55px;text-align:left}.layui-layer-page .layui-layer-content{position:relative;overflow:auto}.layui-layer-iframe .layui-layer-btn,.layui-layer-page .layui-layer-btn{padding-top:10px}.layui-layer-nobg{background:0 0}.layui-layer-iframe .layui-layer-content{overflow:hidden}.layui-layer-iframe iframe{display:block;width:100%}.layui-layer-loading{border-radius:100%;background:0 0;box-shadow:none;border:none}.layui-layer-loading .layui-layer-content{width:60px;height:24px;background:url(default/loading-0.gif) no-repeat}.layui-layer-loading .layui-layer-loading1{width:37px;height:37px;background:url(default/loading-1.gif) no-repeat}.layui-layer-ico16,.layui-layer-loading .layui-layer-loading2{width:32px;height:32px;background:url(default/loading-2.gif) no-repeat}.layui-layer-tips{background:0 0;box-shadow:none;border:none}.layui-layer-tips .layui-layer-content{position:relative;line-height:22px;min-width:12px;padding:5px 10px;font-size:12px;_float:left;border-radius:3px;box-shadow:1px 1px 3px rgba(0,0,0,.3);background-color:#F90;color:#fff}.layui-layer-tips .layui-layer-close{right:-2px;top:-1px}.layui-layer-tips i.layui-layer-TipsG{position:absolute;width:0;height:0;border-width:8px;border-color:transparent;border-style:dashed;*overflow:hidden}.layui-layer-tips i.layui-layer-TipsB,.layui-layer-tips i.layui-layer-TipsT{left:5px;border-right-style:solid;border-right-color:#F90}.layui-layer-tips i.layui-layer-TipsT{bottom:-8px}.layui-layer-tips i.layui-layer-TipsB{top:-8px}.layui-layer-tips i.layui-layer-TipsL,.layui-layer-tips i.layui-layer-TipsR{top:1px;border-bottom-style:solid;border-bottom-color:#F90}.layui-layer-tips i.layui-layer-TipsR{left:-8px}.layui-layer-tips i.layui-layer-TipsL{right:-8px}.layui-layer-lan[type=dialog]{min-width:280px}.layui-layer-lan .layui-layer-title{background:#4476A7;color:#fff;border:none}.layui-layer-lan .layui-layer-lan .layui-layer-btn{padding:10px;text-align:right;border-top:1px solid #E9E7E7}.layui-layer-lan .layui-layer-btn a{background:#BBB5B5;border:none}.layui-layer-lan .layui-layer-btn .layui-layer-btn1{background:#C9C5C5}.layui-layer-molv .layui-layer-title{background:#009f95;color:#fff;border:none}.layui-layer-molv .layui-layer-btn a{background:#009f95}.layui-layer-molv .layui-layer-btn .layui-layer-btn1{background:#92B8B1}
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/layer/skin/layer.ext.css:
--------------------------------------------------------------------------------
1 | /*!
2 |
3 | @Name: layer拓展样式
4 | @Date: 2012.12.13
5 | @Author: 贤心
6 | @blog: sentsin.com
7 |
8 | */.layui-layer-imgbar,.layui-layer-imgtit a,.layui-layer-tab .layui-layer-title span{text-overflow:ellipsis;white-space:nowrap}.layui-layer-iconext{background:url(default/icon-ext.png) no-repeat}html #layui_layer_skinlayerextcss{display:none;position:absolute;width:1989px}.layui-layer-prompt .layui-layer-input{display:block;width:220px;height:30px;margin:0 auto;line-height:30px;padding:0 5px;border:1px solid #ccc;box-shadow:1px 1px 5px rgba(0,0,0,.1) inset;color:#333}.layui-layer-prompt textarea.layui-layer-input{width:300px;height:100px;line-height:20px}.layui-layer-tab{box-shadow:1px 1px 50px rgba(0,0,0,.4)}.layui-layer-tab .layui-layer-title{padding-left:0;border-bottom:1px solid #ccc;background-color:#eee;overflow:visible}.layui-layer-tab .layui-layer-title span{position:relative;float:left;min-width:80px;max-width:260px;padding:0 20px;text-align:center;cursor:default;overflow:hidden}.layui-layer-tab .layui-layer-title span.layui-layer-tabnow{height:43px;border-left:1px solid #ccc;border-right:1px solid #ccc;background-color:#fff;z-index:10}.layui-layer-tab .layui-layer-title span:first-child{border-left:none}.layui-layer-tabmain{line-height:24px;clear:both}.layui-layer-tabmain .layui-layer-tabli{display:none}.layui-layer-tabmain .layui-layer-tabli.xubox_tab_layer{display:block}.xubox_tabclose{position:absolute;right:10px;top:5px;cursor:pointer}.layui-layer-photos{-webkit-animation-duration:1s;animation-duration:1s;}.layui-layer-photos .layui-layer-content{overflow:hidden;text-align:center}.layui-layer-photos .layui-layer-phimg img{position:relative;width:100%;display:inline-block;*display:inline;*zoom:1;vertical-align:top}.layui-layer-imgbar,.layui-layer-imguide{display:none}.layui-layer-imgnext,.layui-layer-imgprev{position:absolute;top:50%;width:27px;_width:44px;height:44px;margin-top:-22px;outline:0;blr:expression(this.onFocus=this.blur())}.layui-layer-imgprev{left:10px;background-position:-5px -5px;_background-position:-70px -5px}.layui-layer-imgprev:hover{background-position:-33px -5px;_background-position:-120px -5px}.layui-layer-imgnext{right:10px;_right:8px;background-position:-5px -50px;_background-position:-70px -50px}.layui-layer-imgnext:hover{background-position:-33px -50px;_background-position:-120px -50px}.layui-layer-imgbar{position:absolute;left:0;bottom:0;width:100%;height:32px;line-height:32px;background-color:rgba(0,0,0,.8);background-color:#000\9;filter:Alpha(opacity=80);color:#fff;overflow:hidden;font-size:0}.layui-layer-imgtit *{display:inline-block;*display:inline;*zoom:1;vertical-align:top;font-size:12px}.layui-layer-imgtit a{max-width:65%;overflow:hidden;color:#fff}.layui-layer-imgtit a:hover{color:#fff;text-decoration:underline}.layui-layer-imgtit em{padding-left:10px;font-style:normal}
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/laypage/laypage.js:
--------------------------------------------------------------------------------
1 | /*! layPage-v1.3.0 分页组件 License MIT http://laypage.layui.com/ By 贤心 */
2 | ;!function(){"use strict";function a(d){var e="laypagecss";a.dir="dir"in a?a.dir:f.getpath+"/skin/laypage.css",new f(d),a.dir&&!b[c](e)&&f.use(a.dir,e)}a.v="1.3";var b=document,c="getElementById",d="getElementsByTagName",e=0,f=function(a){var b=this,c=b.config=a||{};c.item=e++,b.render(!0)};f.on=function(a,b,c){return a.attachEvent?a.attachEvent("on"+b,function(){c.call(a,window.even)}):a.addEventListener(b,c,!1),f},f.getpath=function(){var a=document.scripts,b=a[a.length-1].src;return b.substring(0,b.lastIndexOf("/")+1)}(),f.use=function(c,e){var f=b.createElement("link");f.type="text/css",f.rel="stylesheet",f.href=a.dir,e&&(f.id=e),b[d]("head")[0].appendChild(f),f=null},f.prototype.type=function(){var a=this.config;return"object"==typeof a.cont?void 0===a.cont.length?2:3:void 0},f.prototype.view=function(){var b=this,c=b.config,d=[],e={};if(c.pages=0|c.pages,c.curr=0|c.curr||1,c.groups="groups"in c?0|c.groups:5,c.first="first"in c?c.first:"首页",c.last="last"in c?c.last:"尾页",c.prev="prev"in c?c.prev:"上一页",c.next="next"in c?c.next:"下一页",c.pages<=1)return"";for(c.groups>c.pages&&(c.groups=c.pages),e.index=Math.ceil((c.curr+(c.groups>1&&c.groups!==c.pages?1:0))/(0===c.groups?1:c.groups)),c.curr>1&&c.prev&&d.push(''+c.prev+""),e.index>1&&c.first&&0!==c.groups&&d.push(''+c.first+"…"),e.poor=Math.floor((c.groups-1)/2),e.start=e.index>1?c.curr-e.poor:1,e.end=e.index>1?function(){var a=c.curr+(c.groups-e.poor-1);return a>c.pages?c.pages:a}():c.groups,e.end-e.start"+e.start+""):d.push(''+e.start+"");return c.pages>c.groups&&e.end…'+c.last+""),e.flow=!c.prev&&0===c.groups,(c.curr!==c.pages&&c.next||e.flow)&&d.push(function(){return e.flow&&c.curr===c.pages?''+c.next+"":''+c.next+""}()),''+d.join("")+function(){return c.skip?'':""}()+"
"},f.prototype.jump=function(a){if(a){for(var b=this,c=b.config,e=a.children,g=a[d]("button")[0],h=a[d]("input")[0],i=0,j=e.length;j>i;i++)"a"===e[i].nodeName.toLowerCase()&&f.on(e[i],"click",function(){var a=0|this.getAttribute("data-page");c.curr=a,b.render()});g&&f.on(g,"click",function(){var a=0|h.value.replace(/\s|\D/g,"");a&&a<=c.pages&&(c.curr=a,b.render())})}},f.prototype.render=function(a){var d=this,e=d.config,f=d.type(),g=d.view();2===f?e.cont.innerHTML=g:3===f?e.cont.html(g):b[c](e.cont).innerHTML=g,e.jump&&e.jump(e,a),d.jump(b[c]("laypage_"+e.item)),e.hash&&!a&&(location.hash="!"+e.hash+"="+e.curr)},"function"==typeof define?define(function(){return a}):"undefined"!=typeof exports?module.exports=a:window.laypage=a}();
--------------------------------------------------------------------------------
/src/main/webapp/static/plugins/laypage/skin/laypage.css:
--------------------------------------------------------------------------------
1 | /*!
2 | laypage默认样式
3 | */.laypage_main a,.laypage_main input,.laypage_main span{height:26px;line-height:26px}.laypage_main button,.laypage_main input,.laypageskin_default a{border:1px solid #ccc;background-color:#fff}.laypage_main{font-size:0;clear:both;color:#666}.laypage_main *{display:inline-block;vertical-align:top;font-size:12px}.laypage_main a{text-decoration:none;color:#666}.laypage_main a,.laypage_main span{margin:0 3px 6px;padding:0 10px}.laypage_main input{width:40px;margin:0 5px;padding:0 5px}.laypage_main button{height:28px;line-height:28px;margin-left:5px;padding:0 10px;color:#666}.laypageskin_default span{height:28px;line-height:28px;color:#999}.laypageskin_default .laypage_curr{font-weight:700;color:#666}.laypageskin_molv a,.laypageskin_molv span{padding:0 12px;border-radius:2px}.laypageskin_molv a{background-color:#f1eff0}.laypageskin_molv .laypage_curr{background-color:#00AA91;color:#fff}.laypageskin_molv input{height:24px;line-height:24px}.laypageskin_molv button{height:26px;line-height:26px}.laypageskin_yahei{color:#333}.laypageskin_yahei a,.laypageskin_yahei span{padding:0 13px;border-radius:2px;color:#333}.laypageskin_yahei .laypage_curr{background-color:#333;color:#fff}.laypageskin_flow{text-align:center}.laypageskin_flow .page_nomore{color:#999}
--------------------------------------------------------------------------------
/src/main/webapp/static/source/css/chess.css:
--------------------------------------------------------------------------------
1 | *{
2 | margin:0;
3 | padding:0;
4 | }
5 | canvas
6 | {
7 | margin:100px auto;
8 | display:block;
9 | box-shadow:0px 0px 10px #000;
10 | border:1px solid #000;
11 | position:absolute;
12 | left:350;
13 | }
14 |
15 | #sp
16 | {
17 | color:#123456;
18 | font-family:"Times New Roman",Times,serif;
19 | font-size:30px;
20 | text-shadow:5px 5px 5px #321456;
21 | position:absolute;
22 | left:430px;
23 | top:50px;
24 | }
25 | .button2 {
26 | display: inline-block;
27 | zoom: 1; /* zoom and *display = ie7 hack for display:inline-block */
28 | *display: inline;
29 | vertical-align: baseline;
30 | margin: 0 2px;
31 | outline: none;
32 | cursor: pointer;
33 | text-align: center;
34 | text-decoration: none;
35 | font: 14px/100% Arial, Helvetica, sans-serif;
36 | padding: .5em 2em .55em;
37 | text-shadow: 0 1px 1px rgba(0,0,0,.3);
38 | -webkit-border-radius: .5em;
39 | -moz-border-radius: .5em;
40 | border-radius: .5em;
41 | -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.2);
42 | -moz-box-shadow: 0 1px 2px rgba(0,0,0,.2);
43 | box-shadow: 0 1px 2px rgba(0,0,0,.2);
44 | position:relative;
45 | left:800px;
46 | top:500px;
47 | }
48 |
49 | .online
50 | {
51 | position:absolute;
52 | left:600px;
53 | top:260px;
54 |
55 | }
56 | .canvasplace
57 | {
58 | position:absolute;
59 | left:550px;
60 | top:150px;
61 | }
62 | .biaoti
63 | {
64 | position:absolute;
65 | left:660px;
66 | top:190px;
67 | }
--------------------------------------------------------------------------------
/src/main/webapp/static/source/css/login.css:
--------------------------------------------------------------------------------
1 | /*--
2 | Author: W3layouts
3 | Author URL: http://w3layouts.com
4 | License: Creative Commons Attribution 3.0 Unported
5 | License URL: http://creativecommons.org/licenses/by/3.0/
6 | --*/
7 | /* reset */
8 | html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,dl,dt,dd,ol,nav ul,nav li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;}
9 | article, aside, details, figcaption, figure,footer, header, hgroup, menu, nav, section {display: block;}
10 | ol,ul{list-style:none;margin:0px;padding:0px;}
11 | blockquote,q{quotes:none;}
12 | blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
13 | table{border-collapse:collapse;border-spacing:0;}
14 | /* start editing from here */
15 | a{text-decoration:none;}
16 | .txt-rt{text-align:right;}/* text align right */
17 | .txt-lt{text-align:left;}/* text align left */
18 | .txt-center{text-align:center;}/* text align center */
19 | .float-rt{float:right;}/* float right */
20 | .float-lt{float:left;}/* float left */
21 | .clear{clear:both;}/* clear float */
22 | .pos-relative{position:relative;}/* Position Relative */
23 | .pos-absolute{position:absolute;}/* Position Absolute */
24 | .vertical-base{ vertical-align:baseline;}/* vertical align baseline */
25 | .vertical-top{ vertical-align:top;}/* vertical align top */
26 | nav.vertical ul li{ display:block;}/* vertical menu */
27 | nav.horizontal ul li{ display: inline-block;}/* horizontal menu */
28 | img{max-width:100%;}
29 | /*end reset*/
30 | /****-----start-body----****/
31 | body{
32 | background: url(../img/bizhi.jpg) no-repeat 0px 0px;
33 | font-family: 'Open Sans', sans-serif;
34 | background-size:cover;
35 | -webkit-background-size:cover;
36 | -moz-background-size:cover;
37 | -o-background-size:cover;
38 | /*min-height:1050px;*/
39 | }
40 | .wrap{
41 | margin: 0 auto;
42 | width: 80%;
43 | }
44 | body a,form li,input[type="submit"],input[type="text"],.sixth-login input[type="submit"],.third-login input[type="submit"]{
45 | transition: 0.1s all;
46 | -webkit-transition: 0.1s all;
47 | -moz-transition: 0.1s all;
48 | -o-transition: 0.1s all;
49 | }
50 | /*--close--*/
51 | .close{
52 | background: url('../img/close.png') no-repeat 0px 0px;
53 | cursor: pointer;
54 | width: 20px;
55 | height: 20px;
56 | position: absolute;
57 | left: 20px;
58 | top: 20px;
59 | -webkit-transition: color 0.2s ease-in-out;
60 | -moz-transition: color 0.2s ease-in-out;
61 | -o-transition: color 0.2s ease-in-out;
62 | transition: color 0.2s ease-in-out;
63 | }
64 | /*--/close--*/
65 | h1 {
66 | font-family: 'Exo 2', sans-serif;
67 | text-align: center;
68 | padding-top: 4em;
69 | font-weight: 400;
70 | color: #2B2B36;
71 | font-size: 2em;
72 | }
73 | .login-form {
74 | background: #2b2b36;
75 | position: relative;
76 | width: 30%;
77 | margin: 3% auto 0 auto;
78 | text-align: center;
79 | border-radius: 15px;
80 | -webkit-border-radius: 15px;
81 | -moz-border-radius: 15px;
82 | -o-border-radius: 15px;
83 | }
84 | .head img {
85 | width: 100%;
86 | }
87 | .avtar img {
88 | margin: 2em 0 0;
89 | }
90 | .head-info {
91 | padding: 5px 0;
92 | text-align: center;
93 | font-weight: 600;
94 | font-size: 2em;
95 | color: #fff;
96 | background: #23232e;
97 | height: 50px;
98 | border-top-left-radius: 10px;
99 | -webkit-border-top-left-radius: 10px;
100 | -moz-border-top-left-radius: 10px;
101 | -o-border-top-left-radius: 10px;
102 | border-top-right-radius: 10px;
103 | -webkit-border-top-right-radius: 10px;
104 | -moz-border-top-right-radius: 10px;
105 | -o-border-top-right-radius: 10p
106 | }
107 | input[type="text"] {
108 | width: 70%;
109 | padding: 1em 2em 1em 3em;
110 | color: #9199aa;
111 | font-size: 18px;
112 | outline: none;
113 | background: url(../img/adm.png) no-repeat 10px 15px;
114 | border: none;
115 | font-weight: 100;
116 | border-bottom: 1px solid#484856;
117 | margin-top: 2em;
118 | }
119 | input[type="password"]{
120 | width: 70%;
121 | padding: 1em 2em 1em 3em;
122 | color: #dd3e3e;
123 | font-size: 18px;
124 | outline: none;
125 | background: url(../img/key.png) no-repeat 10px 23px;
126 | border: none;
127 | font-weight: 100;
128 | border-bottom: 1px solid#484856;
129 | margin-bottom: 3em;
130 | }
131 | input[type="submit"]{
132 | font-size: 30px;
133 | color: #fff;
134 | outline: none;
135 | border: none;
136 | background: #3ea751;
137 | width: 100%;
138 | padding: 18px 0;
139 | border-bottom-left-radius: 15px;
140 | -webkit-border-bottom-left-radius: 15px;
141 | -moz-border-bottom-left-radius: 15px;
142 | -o-border-bottom-left-radius: 15px;
143 | border-bottom-right-radius: 15px;
144 | -webkit-border-bottom-right-radius: 15px;
145 | -moz-border-bottom-right-radius: 15px;
146 | -o-border-bottom-right-radius: 15px;
147 | cursor: pointer;
148 | }
149 | input[type="submit"]:hover {
150 | background: #ff2775;
151 | border-bottom-left-radius: 15px;
152 | -webkit-border-bottom-left-radius: 15px;
153 | -moz-border-bottom-left-radius: 15px;
154 | -o-border-bottom-left-radius: 15px;
155 | border-bottom-right-radius: 15px;
156 | -webkit-border-bottom-right-radius: 15px;
157 | -moz-border-bottom-right-radius: 15px;
158 | -o-border-bottom-right-radius: 15px;
159 | transition: 1s all;
160 | -webkit-transition: 1s all;
161 | -moz-transition: 1s all;
162 | -o-transition: 1s all;
163 | }
164 | label.lbl-1 {
165 | background: #6756ea;
166 | width: 20px;
167 | height: 20px;
168 | display: block;
169 | float: right;
170 | border-radius: 50%;
171 | margin: 16px 10px 0px 0px;
172 | }
173 | label.lbl-2 {
174 | background: #ea569a;
175 | width: 20px;
176 | height: 20px;
177 | display: block;
178 | float: right;
179 | border-radius: 50%;
180 | margin: 16px 10px 0px 0px;
181 | }
182 | label.lbl-3 {
183 | background: #f1c85f;
184 | width: 20px;
185 | height: 20px;
186 | display: block;
187 | float: right;
188 | border-radius: 50%;
189 | margin: 16px 10px 0px 0px;
190 | }
191 | /*--copyrights--*/
192 | .copy-rights{
193 | text-align: center;
194 | margin-top: 8em;
195 | }
196 | .copy-rights p{
197 | color:#FFF;
198 | font-size: 1em;
199 | line-height:1.8em;
200 | }
201 | .copy-rights p a{
202 | color:#ff2a75;
203 | -webkit-transition: all 0.3s ease-out;
204 | -moz-transition: all 0.3s ease-out;
205 | -ms-transition: all 0.3s ease-out;
206 | -o-transition: all 0.3s ease-out;
207 | transition: all 0.3s ease-out;
208 | text-decoration:none;
209 | }
210 | .copy-rights p a:hover{
211 | color:#3faa53;
212 | text-decoration:none;
213 | transition: 0.1s all;
214 | -webkit-transition: 0.1s all;
215 | -moz-transition: 0.1s all;
216 | -o-transition: 0.1s all;
217 | }
218 | /*--/copyrights--*/
219 | /*--start-responsive-design--*/
220 | @media (max-width:1440px){
221 | body {
222 | min-height: 811px;
223 | }
224 | }
225 | @media (max-width:1366px){
226 | .copy-rights {
227 | margin-top: 3em;
228 | }
229 | body {
230 | min-height: 768px;
231 | }
232 | }
233 | @media (max-width:1280px){
234 | body {
235 | min-height: 711px;
236 | }
237 | .copy-rights {
238 | margin-top: 0.5em;
239 | }
240 | }
241 | @media (max-width:1024px){
242 | .login-form {
243 | width: 37%;
244 | }
245 | .copy-rights {
246 | margin-top: 3em;
247 | }
248 | h1 {
249 | padding-top: 2em;
250 | }
251 | body {
252 | min-height: 675px;
253 | }
254 | }
255 | @media (max-width:768px){
256 | .login-form {
257 | width: 50%;
258 | margin: 12% auto 0 auto;
259 | }
260 | body {
261 | min-height: 929px;
262 | }
263 | }
264 | @media (max-width:640px){
265 | .login-form {
266 | width: 60%;
267 | margin: 20% auto 0 auto;
268 | }
269 | }
270 | @media (max-width:480px){
271 | .login-form {
272 | width: 80%;
273 | }
274 | }
275 | @media (max-width:320px){
276 | h1 {
277 | padding-top: 1em;
278 | font-size: 1.5em;
279 | }
280 | .login-form {
281 | width: 90%;
282 | margin: 10% auto 0 auto;
283 | }
284 | input[type="text"] {
285 | width: 62%;
286 | padding: 1.2em 2em .5em 2.5em;
287 | font-size: 17px;
288 | margin-top: .5em;
289 | }
290 | input[type="password"] {
291 | width: 62%;
292 | padding: 1.2em 2em .5em 2.5em;
293 | font-size: 17px;
294 | margin-top: .5em;
295 | margin-bottom: 2em;
296 | background: url(../img/key.png) no-repeat 8px 23px;
297 | }
298 | .avtar img {
299 | margin: 1.1em 0 0;
300 | }
301 | .head-info {
302 | height: 35px;
303 | }
304 | label.lbl-1 {
305 | margin: 8px 10px 0px 0px;
306 | }
307 | label.lbl-2 {
308 | margin: 8px 10px 0px 0px;
309 | }
310 | label.lbl-3 {
311 | margin: 8px 10px 0px 0px;
312 | }
313 | .close {
314 | left: 16px;
315 | top: 13px;
316 | }
317 | .copy-rights {
318 | margin-top: 2em;
319 | }
320 | body {
321 | min-height: 504px;
322 | }
323 | input[type="submit"] {
324 | font-size: 28px;
325 | padding: 10px 0;
326 | }
327 | .register1
328 | {
329 | position:relative;
330 | left:-10px;
331 | color:red;
332 | }
333 | /*--end-responsive-design--*/
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/adm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/adm.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/avtar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/avtar.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/baizi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/baizi.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bg1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bg1.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bg2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bg2.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bg3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bg3.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bg4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bg4.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bg5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bg5.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bizhi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bizhi.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/bizhi1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/bizhi1.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/close.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/close.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/default_head.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/default_head.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/heizi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/heizi.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/key.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/key.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/ricepaper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/ricepaper.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/robot.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/robot.jpg
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/touxiang.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/touxiang.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/img/touxiang1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/SinceNovember/websocketchat/385b32ef7d49f2238680d7a599d2958305232c51/src/main/webapp/static/source/img/touxiang1.png
--------------------------------------------------------------------------------
/src/main/webapp/static/source/js/ai2.min.js:
--------------------------------------------------------------------------------
1 | var INFINITE=999999;var PD={A1:0,D2:1,D3:2,D4:3,A2:4,A3:5,A2_A2:6,A3_A3:7,D4_A3:8,D4_D4:9,A4:10,A5:11};var PV=[0,1,2,4,8,16,32,64,128,256,512,1024];var FS=[[0,0,"A1"],[1,5,"D2"],[1,5,"D3"],[1,5,"D4"],[3,10,"A2"],[3,15,"A3"],[4,30,"A2_A2"],[14,500,"A3_A3"],[18,1500,"D4_A3"],[19,2000,"D4_D4"],[20,2000,"A4"],[22,INFINITE,"A5"]];var LS=[[0,0,"A1"],[1,5,"D2"],[1,5,"D3"],[1,14000,"D4"],[3,10,"A2"],[3,1000,"A3"],[3,30,"A2_A2"],[13,1200,"A3_A3"],[15,15000,"D4_A3"],[16,20000,"D4_D4"],[17,20000,"A4"],[21,INFINITE]];function Brain(){var q=6;var k=10;var t;var n;var l,a;var b=false;var c=false;var e=false;this.setLevel=function(u){if(u==1){b=c=e=false}else{if(u==2){c=true;b=false;e=false}else{if(u==3){c=true;b=true;e=false}else{if(u==4){c=true;b=true;e=true}}}}};var d=function(y){var v=(t[y]>0)?1:-1;for(var w=-2;w<=2;++w){for(var u=-2;u<=2;++u){var x=y+w+u*(BS+2);if(x>=0&&x=0){n[x]+=v}}}};var p=function(C,x,N,M){var L=PD.A1;var E=1;var R=0,P=0;var w=0,v=0;for(var T=1;T<=4;++T){var O=C+(-T)*N+(-T)*M*(BS+2);if(t[O]<0){break}var z=t[O];if(z==x){R=w=-T;++E}else{if(z==0){w=-T}else{break}}}for(var T=1;T<=4;++T){var O=C+T*N+T*M*(BS+2);if(t[O]<0){break}var z=t[O];if(z==x){P=v=T;++E}else{if(z==0){v=T}else{break}}}var D=v-w+1;if(D>=5&&E>1){if(P-R>4){var K=0;var I,G;for(var T=R;T<=P-4;++T){var F=1,A,y;var B=true;for(var S=T;S<=T+4;++S){var O=C+S*N+S*M*(BS+2);if(t[O]==x){++F;if(B){y=A=S;B=false}else{y=S}}}if(A>0){A=0}if(y<0){y=0}if(F>K){K=F;I=A;G=y}else{if(F==K){if(y-A0){R=0}if(P<0){P=0}}var Q=P-R+1;var u=false;var J=C+(R-1)*N+(R-1)*M*(BS+2);var H=C+(P+1)*N+(P+1)*M*(BS+2);if(t[J]>=0&&t[H]>=0){u=(t[J]==0||t[J]==x)&&(t[H]==0||t[H]==x)}switch(E){case 5:L=PD.A5;break;case 4:L=(D>5&&Q==4&&u)?PD.A4:PD.D4;break;case 3:L=(D>5&&Q<=4&&u)?PD.A3:PD.D3;break;case 2:if(D>5){if(Q==2&&u){L=PD.A2}else{if(Q==3){L=PD.D2}}}break}}return L};var j=function(y,A){var C=new Array(12);for(var x=0;x<12;++x){C[x]=0}C[p(y,A,1,0)]++;C[p(y,A,0,1)]++;C[p(y,A,1,1)]++;C[p(y,A,1,-1)]++;var u=C[PD.A3];var B=C[PD.D4];if(C[PD.A2]>=2){C[PD.A2_A2]++}if(u>=2){C[PD.A3_A3]++}if(B>=2){C[PD.D4_D4]++}else{if(B>=1&&u>=1){C[PD.D4_A3]++}}var v=0;var z=0;for(var w=11;w>=0;--w){if(C[w]!=0){v|=PV[w];if(z==0){z=w}}}return[z,v]};var h=function(u){var v=function(x,w){for(var z=1;z<=4;++z){var y=u+z*x+z*w*(BS+2);if(y>=0&&y0){a[y]=j(y,1);l[y]=j(y,2)}else{a[y]=l[y]=-1}}}};v(1,0);v(-1,0);v(0,1);v(0,-1);v(1,1);v(-1,-1);v(1,-1);v(-1,1)};var g=function(v,w){var u=w[0]+w[1]*(BS+2);t[u]=v;a[u]=l[u]=-1;d(u);h(u)};var f=function(v){var u=v[0]+v[1]*(BS+2);t[u]=0;d(u);if(n[u]>0){a[u]=j(u,1);l[u]=j(u,2)}else{a[u]=l[u]=-1}h(u)};this.scan=function(A){t=A.getData();n=new Array(DS);l=new Array(DS);a=new Array(DS);for(var z=0;z0){d(w)}}}for(var u=1;u<=BS;++u){for(var B=1;B<=BS;++B){var w=u+B*(BS+2);var v=t[w];if(v==0&&n[w]>0){a[w]=j(w,1);l[w]=j(w,2)}}}return[n,a,l]};var m=function(J){var z=(J==BLACK)?a:l;var D=(J==BLACK)?l:a;var u=(J==BLACK);var w=-1;var F=[];var A={};var B=true;for(var G=1;G<=BS;++G){for(var E=1;E<=BS;++E){var C=G+E*(BS+2);if(z[C]!=-1&&D[C]!=-1){var I=FS[z[C][0]][0];var H=LS[D[C][0]][0];if(I<13&&u){++I}if(H<13&&(!u)){++H}var K=I>H?I:H;var v=[G,E];if(K>w){w=K;F=[v];A={};A[v]=I+H;B=(I>H)}else{if(K==w){F.push(v);A[v]=I+H}}}}}if(F.length>1){F.sort(function(y,x){var L=0.5;if(A[y]A[x]){deta=0.2}}return Math.random()-L})}return[w,F,B]};var r=function(z,A){var w=(z==BLACK)?l:a;var v=[];var u=A[0];var C=A[1];var B=function(y,x){for(var E=1;E<=4;++E){var H=u+E*y;var G=C+E*x;var D=H+G*(BS+2);if(t[D]<0){break}if(t[D]==0){var F=w[D][1];if(F&PV[PD.A5]){v=[[H,G]];return false}if(F&PV[PD.A4]){v.push([H,G])}}}return true};if(B(1,0)&&B(-1,0)&&B(0,1)&&B(0,-1)&&B(1,1)&&B(-1,-1)&&B(1,-1)&&B(-1,1)){}return v};var i=function(O,U,I,W){if(U>=q){return false}var S=(O==BLACK)?a:l;var V=(O==BLACK)?l:a;var R=[];var B=-1;var T=-1;var v=[];for(var F=1;F<=BS;++F){for(var D=1;D<=BS;++D){var C=F+D*(BS+2);if(S[C]!=-1){var M=S[C][1];if((M&PV[PD.D4])||(M&PV[PD.A4])||(M&PV[PD.A3])){R.push([F,D])}var G=FS[S[C][0]][0];var E=LS[V[C][0]][0];if(G>B){v=[F,D];B=G}if(E>T){T=E}}}}if(B>T&&B>=13){I.push(v);return true}else{if(B13){return false}}for(var Q=0;QH?J:H;if(w>6){continue}}g(O,A);var L=r(3-O,A);var K=false;var u;for(var P=0;PE?F:E;if(v>6){continue}}g(I,z);var w=r(3-I,z)[0];g(3-I,w);var G=o(I,M+1,D,z);f(w);f(z);if(G){D.push(z);return true}}return false};var s=function(A){var z=(A==BLACK)?a:l;var v=[];var C={};for(var u=1;u<=BS;++u){for(var D=1;D<=BS;++D){var w=u+D*(BS+2);if(z[w]!=-1&&n[w]>0){var B=z[w][0];if(B==PD.A2_A2||B==PD.A2||B==PD.D3||B==PD.A2){v.push([u,D])}}}}v.sort(function(E,x){var F=E[0]+E[1]*(BS+2);var y=x[0]+x[1]*(BS+2);return n[F]-n[y]});return v};this.findBestStep=function(y){var x=(new Date()).getTime();this.scan(y);var C=y.getPlayer();var F=m(C);var D=F[0];var w=F[1];var v=F[2];var B=[];while(c||b){var z;if(D>=18){B=w[0];break}z=[];if(c&&o(C,0,z)&&z.length>0){console.debug("VCF detected,result:"+z);B=z[z.length-1];break}z=[];if(c&&o(3-C,0,z)&&z.length>0){console.debug("VCF detected for opp,result:"+z);var E=false;var u;while(z.length>0&&!E){u=z.pop();console.debug("try to defend vcf at step:"+u);g(C,u);if(!o(3-C,0,[])){B=u;if(!i(3-C,0,[])){E=true}}f(u)}if(B.length==0){B=w[0]}break}if(D>=14){B=w[0];break}z=[];if(b&&i(C,0,z)&&z.length>0){console.debug("VCT detected,result:"+z);B=z[z.length-1];break}z=[];if(b&&i(3-C,0,z)&&z.length>0){console.debug("VCT detected for opp,result:"+z);var E=false;while(z.length>0&&!E){B=z.pop();console.debug("try to defend vct at step:"+B);g(C,B);if(!i(3-C,0,[])){E=true}f(B)}if(!E){B=w[0]}break}if(e){z=s(BLACK);var E=false;while(z.length>0&&!E&&(((new Date()).getTime()-x)<=5000)){var u=z.pop();g(BLACK,u);if(o(BLACK,0,[])||i(BLACK,0,[])){console.debug("VC2 detected,step:"+u);B=u;E=true}f(u)}}break}if(B.length==0){if(w.length>1){var A=Math.floor((Math.random()*w.length));B=w[A]}else{B=w[0]}}x=(new Date()).getTime()-x;console.debug("best step:"+B+" ,costs:"+x+" ms");return B}};
--------------------------------------------------------------------------------
/src/main/webapp/static/source/js/board.js:
--------------------------------------------------------------------------------
1 | var BS = 15; //BOARD SIZE
2 | var BT = 17;
3 | var DS = 289; //17*17
4 | var CENTER = 8;
5 | var BLACK = 1;
6 | var WHITE = 2;
7 | var BORDER = -1;
8 |
9 | function pos(x,y){
10 | return x+y*17;
11 | }
12 |
13 | function Board(){
14 | var data = new Array(DS);
15 | var currentPlayer = 0;
16 | var history = [];
17 |
18 | var trogglePlayer = function(){
19 | currentPlayer = 3 - currentPlayer;
20 | };
21 |
22 | this.init = function(){
23 | for(var i=0;iBS || y<1 || y>BS){
52 | break;
53 | }
54 | if(data[pos(x,y)]==chess){
55 | ++result;
56 | }
57 | else{
58 | break;
59 | }
60 | }
61 | return result;
62 | };
63 |
64 | this.isGameOver = function(){
65 | if(history.length>0){
66 | var chess = (history.length%2==1)?WHITE:BLACK;
67 | var laststep = history[history.length-1];
68 | var x = laststep[0];
69 | var y = laststep[1];
70 | if(check(x,y,1,0,chess)+check(x,y,-1,0,chess)>=4){
71 | return chess;
72 | }
73 | if(check(x,y,0,1,chess)+check(x,y,0,-1,chess)>=4){
74 | return chess;
75 | }
76 | if(check(x,y,1,1,chess)+check(x,y,-1,-1,chess)>=4){
77 | return chess;
78 | }
79 | if(check(x,y,1,-1,chess)+check(x,y,-1,1,chess)>=4){
80 | return chess;
81 | }
82 | }
83 | for(var i=0;i0){
107 | var step = history.pop();
108 | data[pos(step[0],step[1])] = 0;
109 | currentPlayer = (history.length%2==1)?BLACK:WHITE;
110 | return true;
111 | }
112 | return false;
113 | };
114 |
115 | this.getHistory = function(){
116 | return history.slice(0);
117 | }
118 |
119 | this.getData = function(){
120 | return data.slice(0);
121 | }
122 |
123 | this.init();
124 | }
125 |
--------------------------------------------------------------------------------
/src/main/webapp/system-setting.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 | WebChat | 系统设置
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
20 |
21 |
22 |
27 |
28 |
29 |
68 |
69 |
70 |
71 |
94 |
95 |
96 |
124 |
125 |
126 |
127 |
130 |
131 |
144 |
145 |
146 |
--------------------------------------------------------------------------------
/src/main/webapp/view/include/commonfile.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/main/webapp/view/include/footer.jsp:
--------------------------------------------------------------------------------
1 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
2 |
--------------------------------------------------------------------------------
/src/main/webapp/view/include/header.jsp:
--------------------------------------------------------------------------------
1 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
2 | <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
3 |
4 |
--------------------------------------------------------------------------------
/src/main/webapp/view/include/sidebar.jsp:
--------------------------------------------------------------------------------
1 | <%@ page contentType="text/html;charset=UTF-8" language="java" pageEncoding="utf-8" %>
2 | <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
3 |
4 |
5 |
37 |
--------------------------------------------------------------------------------