新建主题完善

This commit is contained in:
2020-07-17 17:46:52 +08:00
parent 06c48f8606
commit 1c1cd6edb3
11 changed files with 835 additions and 889 deletions
@@ -69,7 +69,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
.loginProcessingUrl("/login") //登录POST请求路径 .loginProcessingUrl("/login") //登录POST请求路径
.usernameParameter("username") //登录用户名参数 .usernameParameter("username") //登录用户名参数
.passwordParameter("password") //登录密码参数 .passwordParameter("password") //登录密码参数
.defaultSuccessUrl("/") //默认登录成功页面 .defaultSuccessUrl("/main") //默认登录成功页面
.and() .and()
.exceptionHandling() .exceptionHandling()
.accessDeniedHandler(customAccessDeniedHandler) //无权限处理器 .accessDeniedHandler(customAccessDeniedHandler) //无权限处理器
@@ -22,7 +22,6 @@ public class TestController {
@RequestMapping("/world") @RequestMapping("/world")
public String world(Map<String, Object> model) { public String world(Map<String, Object> model) {
model.put("data","2019"); model.put("data","2019");
// request.setAttribute("name", "xxxxxxxxx"); // request.setAttribute("name", "xxxxxxxxx");
@@ -48,11 +48,7 @@ public class UserSystemController extends BaseController {
List<Users> useral2 = usersService.getAllList(); List<Users> useral2 = usersService.getAllList();
logger.info(">>> 第二遍的全部用户:"+useral2); logger.info(">>> 第二遍的全部用户:"+useral2);
String username ="";
//分页获取主题帖子 //分页获取主题帖子
// List<Discussions> allDiscussions = discussionsService.getAllList();
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20); Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
List<Discussions> allDiscussions =allDiscussionsPage.getContent(); List<Discussions> allDiscussions =allDiscussionsPage.getContent();
@@ -80,6 +76,38 @@ public class UserSystemController extends BaseController {
} }
//首页main
@RequestMapping("/main")
public String homePage(HttpServletRequest request, ModelMap map) {
logger.info(">>> index");
//分页获取主题帖子
Page<Discussions> allDiscussionsPage = discussionsService.queryAllDiscussionsList(0,20);
List<Discussions> allDiscussions =allDiscussionsPage.getContent();
logger.info("全部主题==>{}",allDiscussions);
//获取主题帖子的分页数据
List<String> pageNumList = getPageNumList(allDiscussionsPage.getTotalPages());
//获取所有标签(以后尝试去缓存中取)
List<Tags> allTags = tagsService.getAllList();
logger.info("全部标签==>{}",allTags);
map.put("data", "Jiscuss 用户");
map.put("allDiscussions", allDiscussions);
map.put("pageDiscussions", pageNumList);
map.put("allTags", allTags);
UserInfo user = getUserInfo(request);
if(user != null){
map.put("username", user.getUsername());
map.put("data", "Jiscuss 用户:" + user.getUsername());
}
return "index";
}
private List<String> getPageNumList(int size) { private List<String> getPageNumList(int size) {
List<String> pageNumList = new ArrayList<String>(); List<String> pageNumList = new ArrayList<String>();
if(size>5) { if(size>5) {
@@ -4,51 +4,3 @@ function setusername(name) {
console.log('已经登陆:'+name); console.log('已经登陆:'+name);
username = name; // name username = name; // name
} }
$("#loginBtn").click(function(){
$.ajax({
type: "POST",
url: "/login",
data: $("#loginForm").serialize(),
dataType: "JSON",
success: function (data) {
console.log(data);
if(data.flag){
username = data.username;
$('#userlogin').html('');
$('#userlogin').html(data.username + '<a href="javascript:void(0);" onclick="loginOut(this)" id="loginOut">注销</a>');
// window.alert(data.username + ',登录成功!');
$('.ui.modal.login').modal('hide');
console.log($('.ui.modal.login'));
}else{
window.alert(data.msg);
return false;
}
}
});
});
function loginOut() {
console.log('loginOut');
$.ajax({
type: "POST",
url: "/loginout",
dataType: "JSON",
success: function (data) {
console.log(data);
if(data.flag){
$('#userlogin').html('');
$('#userlogin').html('<a href="/login" id="loginmodel">登录 & 注册</a>');
window.alert(username + data.msg);
username = null;
}else{
window.alert('用户退出失败!');
return false;
}
}
});
}
+20 -12
View File
@@ -1,25 +1,28 @@
$("#createNewDiccuss").click(function () { $("#createNewDiccuss").click(function () {
console.log("dianji createNewDiccuss"); console.log("点击 createNewDiccuss");
console.log(username); console.log(username);
if(username&&username!=null){
if(username && username!=null){
$('.ui.modal.createNewDiccuss') $('.ui.modal.createNewDiccuss')
.modal('show') .modal('show')
; ;
tinymce.init({ tinymce.init({
selector: '#discussionscontent', selector: '#discussionscontent',
}); });
}else{ }else{
window.alert('您未登录,请先登录!'); massage('您未登录,请先登录!','');
} }
}); });
$("#newdiscussions").click(function(){ $("#newdiscussions").click(function(){
var token = $("meta[name='_csrf']").attr("content");
var header = $("meta[name='_csrf_header']").attr("content");
console.warn(header)
console.warn(token)
var title = $("#discussionstitle").val(); var title = $("#discussionstitle").val();
// $("#discussionscontent").val(); // $("#discussionscontent").val();
console.log(tinyMCE.editors[0].getContent()); console.log(tinyMCE.editors[0].getContent());
@@ -34,6 +37,9 @@ $("#newdiscussions").click(function(){
content: content content: content
}), }),
contentType: 'application/json', contentType: 'application/json',
beforeSend: function(request) {
request.setRequestHeader(header, token); // 添加 CSRF Token
},
dataType: "JSON", dataType: "JSON",
success: function (data) { success: function (data) {
console.log(data); console.log(data);
@@ -49,20 +55,19 @@ $("#newdiscussions").click(function(){
}); });
$("#newtags").click(function(){ $("#newtags").click(function(){
$('#createNewtagsdiv').show(); $('#createNewtagsDiv').show();
$('#createNewtagsBtn').show();
return false; return false;
}); });
$("#commitnewtags").click(function(){ $("#commitnewtags").click(function(){
var name = $("#tagsname").val(); var header = $("meta[name='_csrf_header']").attr("content");
var token =$("meta[name='_csrf']").attr("content");
var name = $("#tagsname").val();
console.log(name); console.log(name);
$.ajax({ $.ajax({
type: "POST", type: "POST",
@@ -71,6 +76,9 @@ $("#commitnewtags").click(function(){
name: name, name: name,
}), }),
contentType: 'application/json', contentType: 'application/json',
beforeSend : function(xhr) {
xhr.setRequestHeader(header, token);
},
dataType: "JSON", dataType: "JSON",
success: function (data) { success: function (data) {
console.log(data); console.log(data);
+92 -168
View File
@@ -2,135 +2,62 @@
<html> <html>
<title>主题详情页</title> <title>主题详情页</title>
<head> <head>
<!-- <link rel="stylesheet" type="text/css" href="static/semanticui/semantic.css"> --> <!-- <link rel="stylesheet" type="text/css" href="static/semanticui/semantic.css"> -->
<!-- <script src="static/jquery/jquery-3.4.1.min.js"></script> --> <!-- <script src="static/jquery/jquery-3.4.1.min.js"></script> -->
<!-- <script src="static/semanticui/semantic.min.js"></script> --> <!-- <script src="static/semanticui/semantic.min.js"></script> -->
<link crossorigin="anonymous" integrity="sha384-ATvSpJEmy1egycrmomcFxVn4Z0A6rfjwlzDQrts/1QRerQhR9EEpEYtdysLpQPuQ" href="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.css" rel="stylesheet"> <!-- default header name is X-CSRF-TOKEN -->
<link rel="stylesheet" type="text/css" href="/static/semanticui/my.css"> <meta name="_csrf" content="${_csrf.token}"/>
<meta name="_csrf_header" content="${_csrf.headerName}"/>
<script crossorigin="anonymous" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh" src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script> <link crossorigin="anonymous" integrity="sha384-ATvSpJEmy1egycrmomcFxVn4Z0A6rfjwlzDQrts/1QRerQhR9EEpEYtdysLpQPuQ"
<script crossorigin="anonymous" integrity="sha384-6urqf2sgCGDfIXcoxTUOVIoQV+jFr/Zuc4O2wCRS6Rnd8w0OJ17C4Oo3PuXu8ZtF" src="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.js"></script> href="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/static/semanticui/my.css">
<script crossorigin="anonymous" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh"
src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script>
<script crossorigin="anonymous" integrity="sha384-6urqf2sgCGDfIXcoxTUOVIoQV+jFr/Zuc4O2wCRS6Rnd8w0OJ17C4Oo3PuXu8ZtF"
src="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.js"></script>
</head> </head>
<body> <body>
<div class="ui main menu" id="menu"> <#include "header.ftl"/>
<div class="ui container">
<div href="#" class="header borderless item">
<img class="logo" src="static/assets/images/logo.png">
&nbsp;Jiscuss
</div>
<a class=" item borderless">首页</a>
<a class="active borderless item">论坛</a>
<div class="ui dropdown item borderless" tabindex="0">
更多
<i class="dropdown icon"></i>
<div class="menu transition hidden" tabindex="-1">
<div class="item">行为</div>
<div class="item">另一个行为</div>
<div class="item">其他东西</div>
<div class="divider"></div>
<div class="item">分割链接</div>
<div class="divider"></div>
<div class="item">另一个分割链接</div>
</div>
</div>
<div class="right menu">
<div class="item">
<div class="ui transparent icon input">
<i class="search icon"></i>
<input type="text" placeholder="搜索">
</div>
</div>
<div class="item" id="userlogin">
<#if username??>
${username} <a href="javascript:void(0);" onclick="loginOut(this)" id="loginOut">注销</a>
<#else>
<a href="javascript:void(0);" onclick="loginmodel(this)" id="loginmodel">登录 & 注册</a>
</#if>
</div>
</div>
</div>
<div class="ui mini modal login">
<i class="close icon"></i>
<div class=" content">
<div class="ui middle aligned center aligned grid">
<div class="column">
<h2 class="ui blue image header">
<img src="static/assets/images/logo.png" class="image">
<div class="content">
登录到账号
</div>
</h2>
<form class="ui large form" id="loginForm">
<div class="ui stacked segment">
<div class="field">
<div class="ui left icon input">
<i class="user icon"></i>
<input type="text" name="username" placeholder="用户名">
</div>
</div>
<div class="field">
<div class="ui left icon input">
<i class="lock icon"></i>
<input type="password" name="password" placeholder="密码">
</div>
</div>
<div class="ui fluid large blue button" id="loginBtn">登录</div>
</div>
<div class="ui error message"></div>
</form>
<div class="ui message">
新用户? <a href="l#">注册</a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="ui container" id="container"> <div class="ui container" id="container">
<div class="ui info message"> <div class="ui info message">
<i class="close icon"></i> <i class="close icon"></i>
<div class="header">欢迎来到这里</div> <div class="header">欢迎来到这里</div>
<ul class="list"> <ul class="list">
<li>JAVA + DISCUSS = JISCUSS 。</li> <li>JAVA + DISCUSS = JISCUSS 。</li>
<li>简单的,易用的JAVA论坛。</li> <li>简单的,易用的JAVA论坛。</li>
<li>请享受发帖回帖带来的乐趣吧!</li> <li>请享受发帖回帖带来的乐趣吧!</li>
</ul> </ul>
</div> </div>
<h3 class="ui center aligned header"></h3> <h3 class="ui center aligned header"></h3>
<div class="ui four column grid"> <div class="ui four column grid">
<div <div
class="widescreen large screen computer tablet only twelve wide column"> class="widescreen large screen computer tablet only twelve wide column">
<div id="context2"> <div id="context2">
<h2 class="ui header"> <h2 class="ui header">
<i class="settings icon"></i> <i class="settings icon"></i>
<div class="content"> <div class="content">
${discussions.title} ${discussions.title}
<div class="sub header">某某标签分类</div> <div class="sub header">某某标签分类</div>
</div> </div>
</h2> </h2>
<div class="ui main text container"> <div class="ui main text container">
${discussions.content} ${discussions.content}
</div> </div>
<div class="ui feed"> <div class="ui feed">
<div class="event"> <div class="event">
<div class="label"> <div class="label">
<img src="/static/assets/images/logo.png"> <img src="/static/assets/images/logo.png">
@@ -149,11 +76,10 @@ class="widescreen large screen computer tablet only twelve wide column">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="ui minimal comments">
<div class="ui minimal comments">
<h3 class="ui dividing header">评论区</h3> <h3 class="ui dividing header">评论区</h3>
<div class="comment"> <div class="comment">
<a class="avatar"> <a class="avatar">
@@ -257,30 +183,28 @@ class="widescreen large screen computer tablet only twelve wide column">
<i class="icon edit"></i> 添加评论 <i class="icon edit"></i> 添加评论
</div> </div>
</form> </form>
</div> </div>
</div>
</div>
<div
class="widescreen large screen computer tablet only four wide column">
</div> <div class="ui fluid action input">
</div> <input type="text" placeholder="搜索...">
<div class="ui button">搜索</div>
</div>
<div <div class="ui section divider"></div>
class="widescreen large screen computer tablet only four wide column">
<div class="ui card">
<div class="ui fluid action input"> <div class="content">
<input type="text" placeholder="搜索...">
<div class="ui button">搜索</div>
</div>
<div class="ui section divider"></div>
<div class="ui card">
<div class="content">
<div class="header">预留功能</div> <div class="header">预留功能</div>
</div> </div>
<div class="content"> <div class="content">
<h4 class="ui sub header">Jiscuss</h4> <h4 class="ui sub header">Jiscuss</h4>
<div class="ui small feed"> <div class="ui small feed">
<div class="event"> <div class="event">
@@ -299,24 +223,24 @@ class="widescreen large screen computer tablet only four wide column">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="extra content"> <div class="extra content">
<button class="ui button">预留按钮</button> <button class="ui button">预留按钮</button>
</div> </div>
</div> </div>
<div class="ui card">
<div class="ui card"> <div class="content">
<div class="content">
<img class="right floated mini ui image" <img class="right floated mini ui image"
src="static/assets/images/logo.png"> src="static/assets/images/logo.png">
<div class="header">Jiscuss Demo</div> <div class="header">Jiscuss Demo</div>
<div class="meta">简单、易用、开源</div> <div class="meta">简单、易用、开源</div>
<div class="description">一款基于JAVA的开源论坛 框架采用:Spring Boot + H2 <div class="description">一款基于JAVA的开源论坛 框架采用:Spring Boot + H2
+ Semantic UI</div> + Semantic UI
</div> </div>
<div class="extra content"> </div>
<div class="extra content">
<div class="ui two buttons"> <div class="ui two buttons">
<div class="ui basic red button"> <div class="ui basic red button">
<div class="ui mini statistic"> <div class="ui mini statistic">
@@ -332,52 +256,52 @@ class="widescreen large screen computer tablet only four wide column">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="mobile only sixteen wide column"> <div class="mobile only sixteen wide column">
<div class="ui segment">Jiscuss手机可见,内容正在编写中,pc端可正常访问</div> <div class="ui segment">Jiscuss手机可见,内容正在编写中,pc端可正常访问</div>
<div class="ui pagination menu"> <div class="ui pagination menu">
<a class="icon item"> <a class="icon item">
<i class="left chevron icon"></i> <i class="left chevron icon"></i>
</a> </a>
<a class="item"> <a class="item">
1 1
</a> </a>
<a class="item"> <a class="item">
2 2
</a> </a>
<div class="disabled item"> <div class="disabled item">
... ...
</div> </div>
<a class="item"> <a class="item">
10 10
</a> </a>
<a class="item"> <a class="item">
11 11
</a> </a>
<a class="icon item"> <i class="right chevron icon"></i> <a class="icon item"> <i class="right chevron icon"></i>
</a> </a>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<#include "footer.ftl"/> <#include "footer.ftl"/>
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function() { $(document).ready(function () {
<#if username??> <#if username??>
console.log('已经登陆:'+username); console.log('已经登陆:' + username);
</#if> </#if>
}); });
</script> </script>
+39 -40
View File
@@ -1,47 +1,46 @@
<div class="ui section divider"></div> <div class="ui section divider"></div>
<div class="ui vertical footer segment"> <div class="ui vertical footer segment">
<div class="ui center aligned container"> <div class="ui center aligned container">
<div class="ui stackable divided grid"> <div class="ui stackable divided grid">
<div class="three wide column"> <div class="three wide column">
<h4 class="ui header">关于遥远</h4> <h4 class="ui header">关于遥远</h4>
<div class="ui link list"> <div class="ui link list">
<a href="http://yaoyuan.io" class="item">Yaoyuan.io</a> <a href="http://yaoyuan.io" class="item">Yaoyuan.io</a>
<a href="http://cyy.im" class="item">CYY.IM</a> <a href="http://cyy.im" class="item">CYY.IM</a>
</div> </div>
</div> </div>
<div class="three wide column"> <div class="three wide column">
<h4 class="ui header">底层</h4> <h4 class="ui header">底层</h4>
<div class="ui link list"> <div class="ui link list">
<a href="#" class="item">JAVA</a> <a href="#" class="item">JAVA</a>
<a href="#" class="item">H2 Database</a> <a href="#" class="item">H2 Database</a>
</div> </div>
</div> </div>
<div class="three wide column"> <div class="three wide column">
<h4 class="ui header">框架</h4> <h4 class="ui header">框架</h4>
<div class="ui link list"> <div class="ui link list">
<a href="#" class="item">Spring Boot</a> <a href="#" class="item">Spring Boot</a>
<a href="#" class="item">Semantic UI</a> <a href="#" class="item">Semantic UI</a>
</div> </div>
</div> </div>
<div class="seven wide column"> <div class="seven wide column">
<h4 class="ui header">这里是页脚预留信息</h4> <h4 class="ui header">这里是页脚预留信息</h4>
<p>This is about Jiscuus Page <p>This is about Jiscuus Page
.</p> .</p>
</div> </div>
</div> </div>
<div class="ui section divider"></div> <div class="ui section divider"></div>
<img src="static/assets/images/logo.png" class="ui centered mini image"> <img src="static/assets/images/logo.png" class="ui centered mini image">
@ 2019-2020 &nbsp; @ 2019-2020 &nbsp;
<div class="ui horizontal small divided link list"> <div class="ui horizontal small divided link list">
<a class="item" href="fixed.php#">站点地图</a> <a class="item" href="fixed.php#">站点地图</a>
<a class="item" href="fixed.php#">关于这里</a> <a class="item" href="fixed.php#">关于这里</a>
<a class="item" href="fixed.php#">团队介绍</a> <a class="item" href="fixed.php#">团队介绍</a>
<a class="item" href="fixed.php#">隐私政策</a> <a class="item" href="fixed.php#">隐私政策</a>
</div> </div>
</div> </div>
</div> </div>
+3 -3
View File
@@ -1,4 +1,4 @@
<div class="ui main menu" id="menu"> <div class="ui main menu" id="menu">
<div class="ui container"> <div class="ui container">
<div href="#" class="header borderless item"> <div href="#" class="header borderless item">
<img class="logo" src="static/assets/images/logo.png"> <img class="logo" src="static/assets/images/logo.png">
@@ -28,14 +28,14 @@
</div> </div>
<div class="item" id="userlogin"> <div class="item" id="userlogin">
<#if username??> <#if username??>
${username} <a href="javascript:void(0);" onclick="loginOut(this)" id="loginOut">注销</a> ${username} <a href="/logout" id="loginOut">注销</a>
<#else> <#else>
<a href="/login" id="loginmodel">登录 & 注册</a> <a href="/login" id="loginmodel">登录 & 注册</a>
</#if> </#if>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<script type="text/javascript" charset="UTF-8" src="/static/js/user/header.js"></script> <script type="text/javascript" charset="UTF-8" src="/static/js/user/header.js"></script>
+133 -111
View File
@@ -2,48 +2,60 @@
<html> <html>
<title>Jiscuss Demo</title> <title>Jiscuss Demo</title>
<head> <head>
<!-- <link rel="stylesheet" type="text/css" href="static/semanticui/semantic.css"> --> <!-- <link rel="stylesheet" type="text/css" href="static/semanticui/semantic.css"> -->
<!-- <script src="static/jquery/jquery-3.4.1.min.js"></script> --> <!-- <script src="static/jquery/jquery-3.4.1.min.js"></script> -->
<!-- <script src="static/semanticui/semantic.min.js"></script> --> <!-- <script src="static/semanticui/semantic.min.js"></script> -->
<link crossorigin="anonymous" integrity="sha384-ATvSpJEmy1egycrmomcFxVn4Z0A6rfjwlzDQrts/1QRerQhR9EEpEYtdysLpQPuQ" href="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.css" rel="stylesheet"> <!-- default header name is X-CSRF-TOKEN -->
<link rel="stylesheet" type="text/css" href="/static/semanticui/my.css"> <meta name="_csrf" content="${_csrf.token}"/>
<meta name="_csrf_header" content="${_csrf.headerName}"/>
<script crossorigin="anonymous" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh" src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script> <script crossorigin="anonymous" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh"
<script crossorigin="anonymous" integrity="sha384-6urqf2sgCGDfIXcoxTUOVIoQV+jFr/Zuc4O2wCRS6Rnd8w0OJ17C4Oo3PuXu8ZtF" src="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.js"></script> src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script>
<#--semantic-->
<link crossorigin="anonymous" integrity="sha384-ATvSpJEmy1egycrmomcFxVn4Z0A6rfjwlzDQrts/1QRerQhR9EEpEYtdysLpQPuQ"
href="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/static/semanticui/my.css">
<script crossorigin="anonymous" integrity="sha384-6urqf2sgCGDfIXcoxTUOVIoQV+jFr/Zuc4O2wCRS6Rnd8w0OJ17C4Oo3PuXu8ZtF"
src="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.js"></script>
<script crossorigin="anonymous" integrity="sha384-CpsBIlOAWHuSRRN235sCBzEeKN6hLT6SpOGRkGadKpYj0gDP7+s3Q8pC38z8uGHH" src="https://lib.baomitu.com/tinymce/5.1.1/tinymce.min.js"></script> <#--tinymce-->
<script crossorigin="anonymous" integrity="sha384-CpsBIlOAWHuSRRN235sCBzEeKN6hLT6SpOGRkGadKpYj0gDP7+s3Q8pC38z8uGHH"
src="https://lib.baomitu.com/tinymce/5.1.1/tinymce.min.js"></script>
<#--jquery-cookie-->
<script src="https://cdn.bootcdn.net/ajax/libs/jquery-cookie/1.4.1/jquery.cookie.js"></script>
</head> </head>
<body> <body>
<#include "header.ftl"/> <#include "header.ftl"/>
<div class="ui container" id="container"> <div class="ui container" id="container">
<div class="ui info message"> <div class="ui info message">
<i class="close icon"></i> <i class="close icon"></i>
<div class="header">欢迎来到这里,${data},主题数: ${allDiscussions?size} ,主题页数:${pageDiscussions?size},标签数 ${allTags?size} </div> <div class="header">欢迎来到这里,${data},主题数: ${allDiscussions?size} ,主题页数:${pageDiscussions?size}
<ul class="list"> ,标签数 ${allTags?size} </div>
<li>JAVA + DISCUSS = JISCUSS 。</li> <ul class="list">
<li>简单的,易用的JAVA论坛。</li> <li>JAVA + DISCUSS = JISCUSS 。</li>
<li>请享受发帖回帖带来的乐趣吧!</li> <li>简单的,易用的JAVA论坛。</li>
</ul> <li>请享受发帖回帖带来的乐趣吧!</li>
</div> </ul>
</div>
<h3 class="ui center aligned header"></h3> <h3 class="ui center aligned header"></h3>
<div class="ui four column grid"> <div class="ui four column grid">
<div <div
class="widescreen large screen computer tablet only four wide column"> class="widescreen large screen computer tablet only four wide column">
<div class="fluid ui animated fade primary button" tabindex="0" id='createNewDiccuss'> <div class="fluid ui animated fade primary button" tabindex="0" id='createNewDiccuss'>
<div class="visible content"> <div class="visible content">
<i class="pen square icon"></i>创建新帖 <i class="pen square icon"></i>创建新帖
</div> </div>
<div class="hidden content"> <div class="hidden content">
您是最棒的<i class="thumbs up icon"></i> 您是最棒的<i class="thumbs up icon"></i>
</div> </div>
</div> </div>
<div class="ui modal createNewDiccuss"> <div class="ui modal createNewDiccuss">
<i class="close icon"></i> <i class="close icon"></i>
<div class="header"> <div class="header">
创建新帖 创建新帖
@@ -53,7 +65,7 @@ class="widescreen large screen computer tablet only four wide column">
<div class="field"> <div class="field">
<label>标题</label> <label>标题</label>
<input type="text" placeholder="标题" id ="discussionstitle" > <input type="text" placeholder="标题" id="discussionstitle">
</div> </div>
<div class="field"> <div class="field">
<label>选择标签</label> <label>选择标签</label>
@@ -68,35 +80,37 @@ class="widescreen large screen computer tablet only four wide column">
</div> </div>
<div class="field"> <div class="field">
<button class="ui teal button" id = "newtags">新增标签</button> <button class="ui teal button" id="newtags">新增标签</button>
</div> </div>
<div class="field" id= "createNewtagsdiv" style="display:none"> <div class="field" id="createNewtagsDiv" style="display:none">
<label>标签名</label> <label>标签名</label>
<input type="text" placeholder="标签名" id ="tagsname" > <input type="text" placeholder="标签名" id="tagsname">
<button class="ui teal button" id = "commitnewtags">保存</button> </div>
<div class="field" id="createNewtagsBtn" style="display:none">
<button class="ui teal button" id="commitnewtags">保存</button>
</div> </div>
<div class="field"> <div class="field">
<label>内容</label> <label>内容</label>
<textarea id ="discussionscontent" ></textarea> <textarea id="discussionscontent"></textarea>
</div> </div>
<div class="ui fluid large blue button" id="newdiscussions">提交内容</div> <div class="ui fluid large blue button" id="newdiscussions">提交内容</div>
</form> </form>
</div> </div>
</div> </div>
<div class="ui list"> <div class="ui list">
<div class="item">下面这个按钮可以过滤帖子呦</div> <div class="item">下面这个按钮可以过滤帖子呦</div>
</div> </div>
<div class="fluid ui floating dropdown labeled icon orange button"> <div class="fluid ui floating dropdown labeled icon orange button">
<i class="filter icon"></i> <span class="text">过滤帖子标签</span> <i class="filter icon"></i> <span class="text">过滤帖子标签</span>
<div class="menu"> <div class="menu">
<div class="ui icon search input"> <div class="ui icon search input">
<i class="search icon"></i> <input type="text" <i class="search icon"></i> <input type="text"
placeholder="搜索标签..."> placeholder="搜索标签...">
@@ -143,22 +157,22 @@ class="widescreen large screen computer tablet only four wide column">
讨论 讨论
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="ui section divider"></div> <div class="ui section divider"></div>
<div class="ui fluid action input"> <div class="ui fluid action input">
<input type="text" placeholder="搜索..."> <input type="text" placeholder="搜索...">
<div class="ui button">搜索</div> <div class="ui button">搜索</div>
</div> </div>
<div class="ui card"> <div class="ui card">
<div class="content"> <div class="content">
<div class="header">预留功能</div> <div class="header">预留功能</div>
</div> </div>
<div class="content"> <div class="content">
<h4 class="ui sub header">Jiscuss</h4> <h4 class="ui sub header">Jiscuss</h4>
<div class="ui small feed"> <div class="ui small feed">
<div class="event"> <div class="event">
@@ -177,24 +191,24 @@ class="widescreen large screen computer tablet only four wide column">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="extra content"> <div class="extra content">
<button class="ui button">预留按钮</button> <button class="ui button">预留按钮</button>
</div> </div>
</div> </div>
<div class="ui card">
<div class="ui card"> <div class="content">
<div class="content">
<img class="right floated mini ui image" <img class="right floated mini ui image"
src="static/assets/images/logo.png"> src="static/assets/images/logo.png">
<div class="header">Jiscuss Demo</div> <div class="header">Jiscuss Demo</div>
<div class="meta">简单、易用、开源</div> <div class="meta">简单、易用、开源</div>
<div class="description">一款基于JAVA的开源论坛 框架采用:Spring Boot + H2 <div class="description">一款基于JAVA的开源论坛 框架采用:Spring Boot + H2
+ Semantic UI</div> + Semantic UI
</div> </div>
<div class="extra content"> </div>
<div class="extra content">
<div class="ui two buttons"> <div class="ui two buttons">
<div class="ui basic red button"> <div class="ui basic red button">
<div class="ui mini statistic"> <div class="ui mini statistic">
@@ -210,21 +224,22 @@ class="widescreen large screen computer tablet only four wide column">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div <div
class="widescreen large screen computer tablet only twelve wide column"> class="widescreen large screen computer tablet only twelve wide column">
<div id="context2"> <div id="context2">
<div class="ui secondary menu"> <div class="ui secondary menu">
<a class="item active" data-tab="fourth"> <i class="icon mail"></i> <a class="item active" data-tab="fourth"> <i class="icon mail"></i>
最新回复 最新回复
<div class="floating ui red label">22</div></a> <a class="item " <div class="floating ui red label">22</div>
</a> <a class="item "
data-tab="fifth">热门</a> <a class="item " data-tab="sixth">新帖</a> data-tab="fifth">热门</a> <a class="item " data-tab="sixth">新帖</a>
</div> </div>
<div class="ui active tab segment" data-tab="fourth"> <div class="ui active tab segment" data-tab="fourth">
<div class="ui large feed"> <div class="ui large feed">
<#list allDiscussions as discussions> <#list allDiscussions as discussions>
@@ -250,11 +265,15 @@ class="widescreen large screen computer tablet only twelve wide column">
</a> </a>
</div> </div>
</div> </div>
<div class="extra text" style="width: 300px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;"> <div class="extra text"
style="width: 300px;overflow: hidden;white-space: nowrap;text-overflow: ellipsis;">
${discussions.content} ${discussions.content}
</div> </div>
<div class="meta"> <div class="meta">
<div class=" description "><i class="edit icon"></i> <a><b>用户1</b></a>&nbsp;&nbsp;•&nbsp;&nbsp; <i class="reply icon"></i>最后由 <a><b>${discussions.last_user_id}</b></a> 回复于10 hours ago.</div> <div class=" description "><i class="edit icon"></i> <a><b>用户1</b></a>&nbsp;&nbsp;•&nbsp;&nbsp;
<i class="reply icon"></i>最后由 <a><b>${discussions.last_user_id}</b></a>
回复于10 hours ago.
</div>
</div> </div>
<div class="nullright meta"> <div class="nullright meta">
<a class="like "> <a class="like ">
@@ -271,9 +290,9 @@ class="widescreen large screen computer tablet only twelve wide column">
</div> </div>
</div> </div>
<div class="ui tab segment" data-tab="fifth"> <div class="ui tab segment" data-tab="fifth">
<div class="ui divided items"> <div class="ui divided items">
<div class="item"> <div class="item">
<div class="ui tiny image"> <div class="ui tiny image">
@@ -352,9 +371,9 @@ class="widescreen large screen computer tablet only twelve wide column">
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="ui tab segment" data-tab="sixth">6</div> <div class="ui tab segment" data-tab="sixth">6</div>
</div> </div>
<div class="ui borderless menu"> <div class="ui borderless menu">
@@ -370,60 +389,63 @@ class="widescreen large screen computer tablet only twelve wide column">
</a> </a>
</div> </div>
</div> </div>
<div class="mobile only sixteen wide column"> <div class="mobile only sixteen wide column">
<div class="ui segment">Jiscuss手机可见,内容正在编写中,pc端可正常访问</div> <div class="ui segment">Jiscuss手机可见,内容正在编写中,pc端可正常访问</div>
<div class="ui borderless menu"> <div class="ui borderless menu">
<a class="icon item"> <a class="icon item">
<i class="left chevron icon"></i> <i class="left chevron icon"></i>
</a> </a>
<a class="item"> <a class="item">
1 1
</a> </a>
<a class="item"> <a class="item">
2 2
</a> </a>
<div class="disabled item"> <div class="disabled item">
... ...
</div> </div>
<a class="item"> <a class="item">
10 10
</a> </a>
<a class="item"> <a class="item">
11 11
</a> </a>
<a class="icon item"> <i class="right chevron icon"></i> <a class="icon item"> <i class="right chevron icon"></i>
</a> </a>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div class="ui button" data-tooltip="预留" data-position="top center"> <div class="ui button" data-tooltip="预留" data-position="top center">
预留 预留
</div> </div>
<#include "footer.ftl"/> <#include "footer.ftl"/>
<script type="text/javascript"> <script type="text/javascript">
$(document).ready(function() { $(document).ready(function () {
<#if username??> <#if username??>
setusername('${username}'); setusername('${username}');
console.log('已经登陆:'+username); console.log('已经登陆:' + username);
</#if> </#if>
});
var token = $("meta[name='_csrf']").attr("content");
if(token == '' && username && username != null){
console.log('因为默认页没有_csrf_token,跳页');
location.href="/main";
}
});
function massage(msg,type){
window.alert(msg);
}
</script> </script>
<script type="text/javascript" charset="UTF-8" src="/static/js/user/system.js"></script> <script type="text/javascript" charset="UTF-8" src="/static/js/user/system.js"></script>
+18 -5
View File
@@ -5,22 +5,27 @@
<!-- <link rel="stylesheet" type="text/css" href="static/semanticui/semantic.css"> --> <!-- <link rel="stylesheet" type="text/css" href="static/semanticui/semantic.css"> -->
<!-- <script src="static/jquery/jquery-3.4.1.min.js"></script> --> <!-- <script src="static/jquery/jquery-3.4.1.min.js"></script> -->
<!-- <script src="static/semanticui/semantic.min.js"></script> --> <!-- <script src="static/semanticui/semantic.min.js"></script> -->
<link crossorigin="anonymous" integrity="sha384-ATvSpJEmy1egycrmomcFxVn4Z0A6rfjwlzDQrts/1QRerQhR9EEpEYtdysLpQPuQ" href="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.css" rel="stylesheet"> <link crossorigin="anonymous" integrity="sha384-ATvSpJEmy1egycrmomcFxVn4Z0A6rfjwlzDQrts/1QRerQhR9EEpEYtdysLpQPuQ"
href="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="/static/semanticui/my.css"> <link rel="stylesheet" type="text/css" href="/static/semanticui/my.css">
<script crossorigin="anonymous" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh" src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script> <script crossorigin="anonymous" integrity="sha384-vk5WoKIaW/vJyUAd9n/wmopsmNhiy+L2Z+SBxGYnUkunIxVxAv/UtMOhba/xskxh"
<script crossorigin="anonymous" integrity="sha384-6urqf2sgCGDfIXcoxTUOVIoQV+jFr/Zuc4O2wCRS6Rnd8w0OJ17C4Oo3PuXu8ZtF" src="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.js"></script> src="https://lib.baomitu.com/jquery/3.4.1/jquery.min.js"></script>
<script crossorigin="anonymous" integrity="sha384-CpsBIlOAWHuSRRN235sCBzEeKN6hLT6SpOGRkGadKpYj0gDP7+s3Q8pC38z8uGHH" src="https://lib.baomitu.com/tinymce/5.1.1/tinymce.min.js"></script> <script crossorigin="anonymous" integrity="sha384-6urqf2sgCGDfIXcoxTUOVIoQV+jFr/Zuc4O2wCRS6Rnd8w0OJ17C4Oo3PuXu8ZtF"
src="https://lib.baomitu.com/semantic-ui/2.4.1/semantic.min.js"></script>
<style type="text/css"> <style type="text/css">
body { body {
background-color: #DADADA; background-color: #DADADA;
} }
body > .grid { body > .grid {
height: 100%; height: 100%;
} }
.image { .image {
margin-top: -100px; margin-top: -100px;
} }
.column { .column {
max-width: 450px; max-width: 450px;
} }
@@ -51,7 +56,7 @@
<input type="password" name="password" placeholder="密码"> <input type="password" name="password" placeholder="密码">
</div> </div>
</div> </div>
<div class="field"> <div class="field" id="msgId" style="display:none">
<div class="ui pointing red basic label"> <div class="ui pointing red basic label">
${msg} ${msg}
</div> </div>
@@ -68,8 +73,16 @@
</div> </div>
</div> </div>
</div> </div>
<script type="text/javascript">
$(document).ready(function () {
<#if msg??>
$('#msgId').show();
</#if>
});
</script>
</body> </body>
</html> </html>
+6 -5
View File
@@ -1,6 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<head lang="en"> <head lang="en">
<meta charset="UTF-8" /> <meta charset="UTF-8"/>
<title></title> <title></title>
</head> </head>
<body> <body>
@@ -8,12 +8,13 @@
123123123123 123123123123
123132666 123132666
<br/> <br/>
<p> <p>
welcome ${data} to freemarker! welcome ${data} to freemarker!
</p> </p>
123132666 123132666
<p> <p>
welcome ${msg} to freemarker! welcome ${msg} to freemarker!
</p> </p>
</body> </body>
</html> </html>