Commit af868d14 authored by wangwenbing's avatar wangwenbing
Browse files

Revert "微信修改"

This reverts commit 0871b95a
parent 0871b95a
.ms-register {
background-color: #f3f5f7;
display:none;
.ms-health{
margin: 0 auto;
margin-top: 1em;
.iconfont{
font-size: inherit;
}
}
.ms-valiDateCode{
border: 1px;
height: 2em;
border-color: #000000;
}
.ms-login-form {
margin-top: 1.6em;
}
.ms-logBtn {
background-color: #f23030;
border-color: #ff9793;
margin: 0 auto;
margin-top: 10%;
width: 100%;
}
input {
border-color: #d9dbda;
}
.ms-input-bgcolor{
background-color: #fff;
}
}
\ No newline at end of file
<!doctype html>
<html class="no-js">
<head>
<meta charset="utf-8">
<title>登录</title>
<#include "/head-file.htm" />
</head>
<body style="background-color: #f3f5f7;">
<!--头部导航条-->
<div class="ms-people-heard">
<ul class="am-list admin-sidebar-list ms-admin-sidebar-list" id="collapase-nav-1">
<li class="am-panel">
<div data-am-widget="titlebar" class="am-titlebar am-titlebar-default ms-header">
<h2 class="iconfont" onclick="javascript:history.back(-1);">&#xe80d;</h2>
<nav class="am-titlebar-nav ms-titlebar-nav">
<p class="">登录</p>
</nav>
<h2 class="iconfont"></h2>
</div>
</li>
</ul>
</div>
<!--头部导航条end-->
<div class="ms-login" id="vue-ms-login">
<form class="am-form ms-login-form">
<fieldset>
<div class="am-form-group">
<input type="text" v-model="peopleName" name="peopleName" class="am-form-field am-radius" placeholder="用户名/已绑定邮箱" v-on:input="active" maxlength="30">
</div>
<div class="am-form-group">
<input type="password" v-model="peoplePassword" name="peoplePassword" class="am-form-field am-radius" placeholder="请输入密码" v-on:input="active" maxlength="20">
</div>
<div class="am-form-group am-input-group">
<input type="text" v-model="rand_code" name="rand_code" class=" am-form-field am-radius" placeholder="必填,4个字符" v-on:input="active" maxlength="4">
<span class="am-input-group-label ms-input-label">
<img src="" v-on:click="code" class="ms-valiDateCode am-fr" id="codeImg"/>
</span>
</div>
<v-touch type="button" v-on:tap="login" v-bind:class="{'am-disabled':isActive}" class="am-btn am-btn-danger am-radius ms-logBtn" data-am-loading="{loadingText: '登录中...'}">登 录</v-touch>
<div class="ms-health">
<div>
<a href="#">
<i class="iconfont">&#xe98d;</i>找回密码
</a>
<a href="{ms:global.host/}/register.do" class="am-fr">
<i class="iconfont">&#xe683;</i>快速注册
</a>
</div>
</div>
</fieldset>
</form>
</div>
<script type="text/javascript">
//vue文档:https://cn.vuejs.org/v2/guide/
//touch文档:https://github.com/vuejs/vue-touch/tree/next
ms.load(["ms","ms.people","ms.mweixin"],function(ms,mpeople,mweixin){
var vm = new Vue({
el: '#vue-ms-login',
data:{
isActive:true, //设置一个状态 为true的时候 登录按钮禁用,false时按钮启用
peopleName:'', //定义登录表单的model值,便于获取表单元素值进行操作
peoplePassword:'',
rand_code:'',
},
created: function () { //在vue创建后显示整个登录页面内容
$(".ms-login").show();
},
methods:{
active: function(){
//判断用户名、密码、验证码都输入后才启动登录按钮
if (!validator.isNull(this.rand_code) && !validator.isNull(this.peoplePassword) && !validator.isNull(this.peopleName)){
this.isActive = false;
}else{
this.isActive = true;
}
},
//调用登录接口
login: function (){
var _obj = this
var $this = event.target;
$($this).button('loading');
_obj.isActive = true;
//验证用户名
if (!validator.isLength(_obj.peopleName,{min:3,max:30})){
alert("用户名为3~30个字符");
_obj.isActive = false;
$($this).button('reset');
return;
}else{
if(_obj.peopleName.indexOf(" ") >=0){
alert("用户名不能包含空格");
_obj.isActive = false;
$($this).button('reset');
return;
}
}
//验证密码
if (!validator.isLength(_obj.peoplePassword,{min:6,max:20})){
alert("密码为6~20个字符");
_obj.isActive = false;
$($this).button('reset');
return;
}
//验证验证码
if (_obj.rand_code.length !== 4){
alert("验证码为4位字符");
_obj.isActive = false;
$($this).button('reset');
return;
}
//判断登录表信息是否填入正确 并返回相应的参数
mpeople.checkLogin($(".ms-login-form").serialize(),function(json){
if (json.result) {
location.href='{ms:global.host/}/people/center.do'
}else{
alert(json.resultMsg);
vm.code();
}
_obj.isActive = false;
$($this).button('reset');
});
},
//点击更换验证码
code: function (event) {
ms.code("codeImg");
},
//如果已登录则跳转到个人中心
center:function(){
mpeople.checkLoginStatus(function(json) {
if(mweixin.isWeixin()) {
if(json.result) {
location.href='{ms:global.host/}/people/center.do'
}else{
location.href=mweixin.authLink({link:location.href,appId:"wx7cce6e06b8270c8a"});
}
}else{
if(json.result) {
location.href='{ms:global.host/}/people/center.do'
}
}
})
}
}
})
vm.code();
vm.center();
})
</script>
<!--[if (gte IE 9)|!(IE)]><!-->
<!--<![endif]-->
<!--[if lte IE 8 ]>
<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
<script src="http://cdn.staticfile.org/modernizr/2.8.3/modernizr.js"></script>
<script src="assets/js/amazeui.ie8polyfill.min.js"></script>
<![endif]-->
<script src="{ms:global.host/}/plugins/AmazeUI/2.7.2/js/amazeui.min.js"></script>
</body>
</html>
\ No newline at end of file
<!doctype html>
<html class="no-js">
<head>
<meta charset="utf-8">
<title>修改密码</title>
<#include "/head-file.htm" />
</head>
<body style="background-color:#f3f5f7;">
<div class="ms-password-change" id="vue-ms-password-change">
<!--头部导航条-->
<#include "/head.htm" />
<!--添加收获地址列表-->
<form class="am-form ms-form">
<div class="am-form-group">
<label for="doc-ipt-email-1" class="ms-text">请填写旧密码</label>
<input type="password" v-model="peopleOldPassword" v-on:input="active" name="peopleOldPassword" class="ms-text" id="doc-ipt-email-1" placeholder="请填写旧密码">
</div>
<div class="am-form-group">
<label for="doc-ipt-pwd-1" class="ms-text">请填写新密码</label>
<input type="password" v-model="peoplePassword" v-on:input="active" name="peoplePassword" class="ms-text" id="doc-ipt-pwd-1" placeholder="6-20位,不能与旧密码相同">
</div>
<v-touch type="button" v-on:tap="changePassword" v-bind:class="{'am-disabled':isActive}" class="am-btn am-btn-danger am-radius am-btn-block" id='ms-password'>确认</v-touch>
</form>
<div>
<script type="text/javascript">
ms.load(["ms","ms.people"],function(ms,mpeople){
var vu = new Vue({
el: '#vue-ms-password-change',
data:{
title:'修改密码',
backBtn:"javascript:history.back()",
isActive:true,
peopleOldPassword:"",
peoplePassword:"",
},
methods: {
active: function(){
//判断用户名、密码、验证码都输入后才启动登录按钮
if (!validator.isNull(this.peopleOldPassword) && !validator.isNull(this.peoplePassword)){
this.isActive = false;
}else{
this.isActive = true;
}
},
changePassword: function(event){
if(!validator.isLength(this.peopleOldPassword,{min:6,max:20})){
alert("旧密码为6-20个字符");
return;
}
if(!validator.isLength(this.peoplePassword,{min:6,max:20})){
alert("新密码为6-20个字符");
return;
}
if(this.peoplePassword.indexOf(" ") >=0){
alert("新密码不能包含空格");
return;
}
if(this.peopleOldPassword == this.peoplePassword){
alert("新密码不能与旧密码相同");
}else{
ms.people.changePassword($("form").serialize(),function(returnJson){
if(returnJson.result){
alert("密码修改成功,请重新登录")
$.ajax({
type: "POST",
url: "{ms:global.host/}/people/quit.do",
success: function(msg) {
}
})
location.href="{ms:global.host/}/login.do";
}else{
alert("旧密码错误");
};
})
}
}
}
});
});
</script>
<!--[if (gte IE 9)|!(IE)]><!-->
<!--<![endif]-->
<!--[if lte IE 8 ]>
<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
<script src="http://cdn.staticfile.org/modernizr/2.8.3/modernizr.js"></script>
<script src="assets/js/amazeui.ie8polyfill.min.js"></script>
<![endif]-->
<script src="{ms:global.host/}/plugins/AmazeUI/2.7.2/js/amazeui.min.js"></script>
</body>
</html>
\ No newline at end of file
<!doctype html>
<html class="no-js">
<head>
<meta charset="utf-8">
<title>注册</title>
<#include "/head-file.htm" />
</head>
<body style="background-color:#f3f5f7;">
<!--头部导航条-->
<div class="ms-people-heard">
<ul class="am-list admin-sidebar-list ms-admin-sidebar-list" id="collapase-nav-1">
<li class="am-panel">
<div data-am-widget="titlebar" class="am-titlebar am-titlebar-default ms-header">
<h2 class="iconfont" onclick="javascript:history.back(-1);">&#xe80d;</h2>
<nav class="am-titlebar-nav ms-titlebar-nav">
<p class="">注册</p>
</nav>
<h2 class="iconfont"></h2>
</div>
</li>
</ul>
</div>
<!--头部导航条end-->
<div class="ms-register" id="vue-ms-register">
<form class="am-form ms-login-form">
<fieldset>
<div class="am-form-group">
<input type="text" name="peopleName" v-model="peopleName" class="am-form-field am-radius" placeholder="用户名3-30位字符" v-on:input="active" maxlength="30">
</div>
<div class="am-form-group">
<input type="password" name="peoplePassword" v-model="peoplePassword" class="am-form-field am-radius" placeholder="请设置6-20登录密码" v-on:input="active" maxlength="20">
</div>
<div class="am-form-group">
<input type="password" name="rePassword" v-model="rePassword" class="am-form-field am-radius" placeholder="确认密码" v-on:input="active" maxlength="20">
</div>
<!--div class="am-form-group">
<input type="email" name="peopleMail" v-model="peopleMail" class="am-form-field am-radius" placeholder="输入常用邮箱" v-on:input="active">
</div-->
<div class="am-form-group am-input-group">
<input type="text" name="rand_code" v-model="rand_code" class="am-form-field am-radius" placeholder="请输入验证码" v-on:input="active" maxlength="4">
<v-touch v-on:tap="randCode" class="am-input-group-label ms-input-bgcolor">
<img id="picCode" class="ms-valiDateCode am-fr"/>
</v-touch>
</div>
<p>
<v-touch type="button" v-on:tap="register" v-bind:class="{'am-disabled':isActive}" class="am-btn am-btn-danger am-radius ms-logBtn" data-am-loading="{loadingText: '注册中...'}">注册</v-touch>
</p>
<small>注意:邮箱仅由于保存,注册成功后可到会员中心绑定邮箱,绑定成功后可用邮箱登录</small>
</fieldset>
</form>
</div>
<script type="text/javascript">
ms.load(["ms","ms.people","ms.mweixin"],function(ms,mpeople,mweixin){
if(mweixin.isWeixin()) {
location.href=mweixin.authLink({link:location.href,appId:"wx7cce6e06b8270c8a"});
}
var vue = new Vue({
el: '#vue-ms-register',
data:{
peopleName:'', //定义注册表单的model值,便于获取表单元素值进行操作
peoplePassword:'',
rePassword:'',
peopleMail:'',
rand_code:'',
isActive:true, //设置一个状态 为true的时候 注册按钮禁用,false时按钮启用
},
created: function () { //在vue创建后显示整个注册页面内容
$(".ms-register").show();
},
methods: {
active: function(){
//判断用户名、密码、确认密码、邮箱、验证码都输入后才启动登录按钮
if (!validator.isNull(this.peopleName) && !validator.isNull(this.peoplePassword) && !validator.isNull(this.rePassword) && !validator.isNull(this.rand_code)){
this.isActive = false;
}else{
this.isActive = true;
}
},
//注册
register: function(){
var _obj = this;
var $this = event.target;
$($this).button('loading');
_obj.isActive = true;
var pattern=new RegExp("[^a-zA-Z0-9\_\u4e00-\u9fa5]","i");
//验证用户名
if (!validator.isLength(this.peopleName,{min:3,max:30})){
alert("用户名为3-30个字符");
_obj.isActive = false;
$($this).button('reset');
return;
}else{
if(this.peopleName.indexOf(" ") >=0){
alert("用户名不能包含空格");
_obj.isActive = false;
$($this).button('reset');
return;
}
if(pattern.test(this.peopleName)){
alert("用户名不能包含特殊字符");
_obj.isActive = false;
$($this).button('reset');
return;
}
}
//验证密码
if (!validator.isLength(this.peoplePassword,{min:6,max:20})){
alert("密码为6~20个字符");
_obj.isActive = false;
$($this).button('reset');
return;
}else{
if(this.peoplePassword.indexOf(" ") >=0){
alert("密码不能包含空格");
_obj.isActive = false;
$($this).button('reset');
return;
}
}
//确认密码
if (!validator.isLength(this.peoplePassword,{min:6,max:20})){
alert("密码为6~20个字符");
_obj.isActive = false;
$($this).button('reset');
return;
}else if(this.peoplePassword != this.rePassword){
alert(" 两次密码输入不一致");
_obj.isActive = false;
$($this).button('reset');
return;
}
//邮箱验证
/*if (!validator.isEmail(this.peopleMail)){
alert("请输入正确的邮箱");
_obj.isActive = false;
$($this).button('reset');
return;
}*/
//验证验证码
if (this.rand_code.length !== 4){
alert("验证码为4位字符");
_obj.isActive = false;
$($this).button('reset');
return;
}
//接口调用
mpeople.register($("form").serialize(),function(returnJson){
if(returnJson.result) {
alert('注册成功');
location.href='{ms:global.host/}/login.do';
}else{
alert(returnJson.resultMsg);
_obj.isActive = false;
$($this).button('reset');
vue.randCode();
}
})
},
randCode: function(){
//验证码加载与点击刷新
ms.code("picCode");
},
//如果已登录则跳转到个人中心
center:function(){
mpeople.checkLoginStatus(function(json) {
if(json.result) {
location.href='{ms:global.host/}/people/center.do'
}
})
}
}
})
vue.randCode();
vm.center();
})
</script>
<!--[if (gte IE 9)|!(IE)]><!-->
<script src="{ms:global.host/}/plugins/jquery/1.9.1/jquery-1.9.1.js"></script>
<!--<![endif]-->
<!--[if lte IE 8 ]>
<script src="http://libs.baidu.com/jquery/1.11.3/jquery.min.js"></script>
<script src="http://cdn.staticfile.org/modernizr/2.8.3/modernizr.js"></script>
<script src="assets/js/amazeui.ie8polyfill.min.js"></script>
<![endif]-->
<script src="{ms:global.host/}/plugins/AmazeUI/2.7.2/js/amazeui.min.js"></script>
</body>
</html>
\ No newline at end of file
<div class="ms-content-left">
<div class="ms-content-left-title">走进铭飞</div>
<ul class="ms-content-left-ul">
<a target="_blank" href='{ms:global.url/}/53/index.html'>
<li>关于我们<span class="ms-content-left-li-more">></span></li>
</a>
<a target="_blank" href='{ms:global.url/}/59/index.html'>
<li>公司动态<span class="ms-content-left-li-more">></span></li>
</a>
<a target="_blank" href='http://mingsoft.net/html/1//5527/index.html#faz'>
<li>发展历程<span class="ms-content-left-li-more">></span></li>
</a>
<a target="_blank" href='http://mingsoft.net/html/1//5527/index.html#lianx'>
<li>加入我们<span class="ms-content-left-li-more">></span></li>
</a>
<a target="_blank" href={ms:global.url/}/19/141/index.html>
<li>联系我们<span class="ms-content-left-li-more">></span></li>
</a>
</ul>
</div>
<script>
$(function(){
var r=location.href;
if(r.match("53")){
$(".ms-content-left-ul a").removeClass("ms-content-left-li-first");
$(".ms-content-left-ul a").eq(0).addClass("ms-content-left-li-first");
}else if(r.match("19")){
$(".ms-content-left-ul a").removeClass("ms-content-left-li-first");
$(".ms-content-left-ul a").eq(4).addClass("ms-content-left-li-first");
}else if(r.match("59")){
$(".ms-content-left-ul a").removeClass("ms-content-left-li-first");
$(".ms-content-left-ul a").eq(1).addClass("ms-content-left-li-first");
}
})
</script>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<#include "head-file.htm"/>
</head>
<body>
<#include "head.htm"/>
<div class="ms-banner" style="background:url({ms:global.host/}/{ms:global.style/}/images/our_company.jpeg) no-repeat center;">
<p class="banner_tit_other animated fadeInLeft">公司动态</p>
<p class="banner_tit_other_des animated fadeInRight">Our company</p>
</div>
<div class="ms-content">
<div class="ms-content-new-list">
<#include "menu-left.htm"/>
<div class="ms-content-right-position">
<a href="{ms:global.host/}">首页</a>
<span>></span>
<a href="{ms:field.typelink/}">{ms:field.typetitle/}</a>
</div>
<div class="ms-content-main-list">
<div class="ms-content-main-div">
<ul class="ms-content-main-ul">
{ms:arclist size=10 ispaging=true}
<li>
<a href="{ms:global.url/}[field.link/]">
<!-- <span class="ms-content-main-li-span">·</span> -->
<span class="ms-content-main-li-title">[field.title/]</span>
<span class="ms-content-main-li-time">[field.date?string("yyyy-MM-dd")/]</span>
</a>
</li>
{/ms:arclist}
</ul>
</div>
</div>
</div>
<div class="ms-content-main-page">
<a class="ms-content-main-page-first" href="{ms:global.url/}{ms:page.index/}">首页</a>
<a class="ms-content-main-page-upper" href="{ms:global.url/}{ms:page.pre/}">上一页</a>
<a class="ms-content-main-page-next" href="{ms:global.url/}{ms:page.next/}">下一页</a>
<a class="ms-content-main-page-last" href="{ms:global.url/}{ms:page.last/}">末页</a>
</div>
</div>
<#include "footer.htm"/>
</body>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<#include "head-file.htm">
<link rel="stylesheet" type="text/css" href="{ms:global.host/}/{ms:global.style/}/css/jquery.sinaemotion.css" />
<script type="text/javascript" src="{ms:global.host/}/{ms:global.style/}/js/jquery.sinaEmotion.js"></script>
</head>
<body>
<#include "head.htm">
<div class="ms-banner" style="background:url({ms:global.host/}/{ms:global.style/}/images/news2.png) no-repeat center;">
<p class="banner_tit_other animated fadeInLeft">公司动态</p>
<p class="banner_tit_other_des animated fadeInRight">Our company</p>
</div>
<div class="ms-content-about" id="news-show-vue">
<div class="ms-content-main">
<#include "menu-left.htm">
<div class="ms-content-right">
<div class="ms-content-right-position">
<a href="{ms:global.host/}">首页</a>
<span>></span>
<a href="{ms:field.typelink/}">{ms:field.typetitle/}</a>
</div>
<div class="ms-content-right-main">
<div class="ms-content-right-main-title" id="ms-content-right-main-title">
<div class="ms-content-right-main-title-div">{ms:field.title/}</div>
<div class="ms-content-right-main-icon">
<div class="ms-content-icon-left">
<div class="ms-content-right-main-icon-source">来源:{ms:field.source/}
<span class="ms-content-right-vertical">|</span>
</div>
<div class="ms-content-right-main-icon-time">时间:{ms:field.date?string("yyyy-MM-dd")/}</div>
</div>
<div class="ms-content-icon-right">
<div class="ms-content-right-main-icon-clicks"></div>
<div class="ms-content-right-main-icon-num">{ms:field.hit/}
<span class="ms-content-right-vertical">|</span>
</div>
<div class="ms-content-right-main-icon-comment"></div>
<div class="ms-content-right-main-icon-num">
<span style="margin: 0;" v-text="commentsList.length"></span>
<span class="ms-content-right-vertical">|</span>
</div>
<div class="ms-content-right-main-icon-Fabulous"></div>
<div class="ms-content-right-main-icon-num" v-text="attentionNum"></div>
</div>
</div>
</div>
<div class="ms-content-right-main-content">
<p>{ms:field.content/}</p><br/>
</div>
<div class="metfield">
<p>上一篇:<a href="{ms:global.url/}{ms:pre.link/}">{ms:pre.title/}</a></p>
<p>下一篇:<a href="{ms:global.url/}{ms:next.link/}">{ms:next.title/}</a></p>
</div>
</div>
<div class="ms-content-right-main-content-Fabulous">
<div class="ms-content-right-main-content-icon" @click="attentionNews" :class="{'ms-is-attention':isAttention}"></div>
</div>
<div class="ms-content-right-comment">
<div class="ms-content-right-comment-input">
<textarea v-model='isButAttention' class="emotion" type="text" name="comments" placeholder="我有话说..."></textarea>
<div class="ms-content-right-comment-button">
<div class="ms-content-right-comment-expression" id="ms-face"></div>
<div class="ms-content-right-comment-submit" :class="{'ms-submit-comments-css':isButAttention.length>0}" @click="submitComments">提交</div>
</div>
</div>
<div class="ms-content-right-comment-list">
<div class="ms-content-right-comment-list-no-comment" style="display: none;" v-show="commentsList.length == 0">
<img src="{ms:global.host/}/{ms:global.style/}/images/no-comment.png">
</div>
<template v-for="(comments,index) in commentsList">
<div class="ms-content-right-comment-list-div" v-if="index <= listNum">
<div class="ms-content-right-comment-list-left">
<div class="ms-content-right-comment-list-portrait">
<img :src="'{ms:global.host/}'+ comments.puIcon" onerror="this.src='http://cdn.mingsoft.net/global/images/msheader.png'">
</div>
<div class="ms-content-right-comment-list-content">
<div class="ms-content-right-comment-list-name" v-text="comments.puNickname"></div>
<div class="ms-content-right-comment-list-comment" v-html="vueAnalyticEmotion(comments.commentContent)"></div>
</div>
</div>
<!--<div class="ms-content-right-comment-list-right">
<div class="ms-content-right-main-icon-comment"></div>
<div class="ms-content-right-main-icon-Fabulous"></div>
<div class="ms-content-right-main-icon-num">28</div>
</div>-->
</div>
</template>
<div class="ms-content-right-comment-list-div ms-content-right-active">
<div class="ms-content-right-comment-list-div-more" @click="listNum = listNum +4" v-show="listNum < commentsList.length">
查看更多评论
</div>
<div class="ms-content-right-comment-list-div-no" v-show="listNum >= commentsList.length && commentsList.length != 0">
没有更多评论
</div>
<div class="ms-content-right-comment-list-div-load" style="display: none;">
<img src="{ms:global.host/}/{ms:global.style/}/images/loading.gif">
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<#include "footer.htm">
</body>
<script>
var newsShowVue = new Vue({
el: "#news-show-vue",
data: {
commentsList: [], //评论列表
attentionNum: 0, //点赞数
isAttention: false, //点赞状态
isButAttention: '', //按钮状态
listNum: 4, //列表数
loginStatus: '', //登录状态
vueAnalyticEmotion: function(val) {
return AnalyticEmotion(val);
},
},
methods: {
//关注或者取消
attentionNews: function() {
var obj = this;
if(this.loginStatus != true) {
alert("请先登录后重试");
return;
}
if(obj.isAttention == false) {
$.ajax({
type: "POST",
data: "basicAttentionBasicId={ms:field.id/}&basicAttentionType=2",
url: "{ms:global.host/}/people/attention/save.do",
success: function(msg) {
if(msg.result) {
obj.attentionNum++;
obj.isAttention = true;
}
},
error: function() {
alert("操作失败,请检查是否已经安装关注插件");
}
})
} else {
$.ajax({
type: "POST",
data: "basicId={ms:field.id/}&basicAttentionType=2",
url: "{ms:global.host/}/people/attention/delete.do",
success: function(msg) {
if(msg.result) {
obj.attentionNum--;
obj.isAttention = false;
}
},
error: function() {
alert("操作失败,请检查是否已经安装关注插件");
}
})
}
},
//关注
list: function() {
var obj = this;
$.ajax({
type: "POST",
data: "commentBasicId={ms:field.id/}",
url: "{ms:global.host/}/comment/list.do",
success: function(msg) {
obj.commentsList = msg.list;
}
})
},
//提交
submitComments: function() {
if(this.isButAttention == '') {
return;
}
if(this.loginStatus != true) {
alert("请先登录后重试");
return;
}
var obj = this;
$.ajax({
type: "POST",
data: "commentContent=" + $("textarea[name=comments]").val() + "&isCode=false&commentBasicId={ms:field.id/}",
url: "{ms:global.host/}/people/comment/save.do",
success: function(msg) {
if(msg.result) {
alert("评论成功");
obj.list();
} else {
alert(msg.resultMsg);
}
obj.isButAttention = '';
},
error: function() {
alert("评论失败,请检查是否已经安装评论插件");
},
})
}
},
mounted: function() {
$('#ms-face').SinaEmotion($('.emotion'));
var obj = this;
//登录状态
$.ajax({
type: "POST",
url: "{ms:global.host/}/checkLoginStatus.do",
success: function(msg) {
obj.loginStatus = msg.result;
}
})
//关注数
$.ajax({
type: "POST",
data: "basicAttentionBasicId={ms:field.id/}&basicAttentionType=2",
url: "{ms:global.host/}/attention/count.do",
success: function(msg) {
obj.attentionNum = msg;
}
})
//是否关注了
$.ajax({
type: "POST",
data: "basicAttentionBasicId={ms:field.id/}&basicAttentionType=2",
url: "{ms:global.host/}/people/attention/isExists.do",
success: function(msg) {
obj.isAttention = msg.result;
}
})
},
beforeCreate: function() {
var obj = this;
var app_id = '1362404091';
$.ajax({
async: true,
dataType: 'jsonp',
url: 'https://api.weibo.com/2/emotions.json?source=' + app_id,
success: function(response) {
var data = response.data;
for(var i in data) {
if(data[i].category == '') {
data[i].category = '默认';
}
if(emotions[data[i].category] == undefined) {
emotions[data[i].category] = new Array();
categorys.push(data[i].category);
}
emotions[data[i].category].push({
name: data[i].phrase,
icon: data[i].icon
});
uSinaEmotionsHt.put(data[i].phrase, data[i].icon);
}
obj.list();
}
});
},
})
</script>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<#include "/head-file.htm" />
</head>
<body>
<#include "/head.htm" />
<div class="ms-content" id="center-vue">
<div class="ms-content-main">
<div class="ms-content-left">
<div class="ms-content-left-info">
<el-upload class="avatar-uploader" action="{ms:global.host/}/file/upload.do" :show-file-list="false"
:on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload">
</el-upload>
<img :src="'{ms:global.host/}/'+peopleInfo.puIcon"
onerror='this.src="http://cdn.mingsoft.net/global/images/msheader.png"'>
<div style="display: none;" v-show="peopleInfo.puNickname!='' && peopleInfo.puNickname != undefined"
v-if="peopleInfo.puNickname!='' && peopleInfo.puNickname != undefined"
v-text="peopleInfo.puNickname"></div>
<div v-else v-text="'暂无昵称'"></div>
</div>
<div class="ms-content-left-list">
<div class="ms-content-left-list-info">
<a class='active' href="{ms:global.host/}/people/center.do">基本资料</a>
</div>
<div class="ms-content-left-list-pass">
<a href="{ms:global.host/}/people/password-change.do">修改密码</a>
</div>
</div>
</div>
<div class="ms-content-right">
<div class="ms-content-right-title">基本资料</div>
<div id="form" style="padding-top: 30px;width: 60%;">
<el-form :model="peopleInfo" :rules="rules" ref="peopleInfo" label-width="100px"
class="demo-peopleInfo" status-icon>
<el-form-item label="手机号" prop="peoplePhone">
<el-input v-model="peopleInfo.peoplePhone" placeholder="请输入 11 位手机号码" @blur="validate"></el-input>
</el-form-item>
<el-form-item label="昵称" prop="puNickname">
<el-input v-model="peopleInfo.puNickname" placeholder="输入昵称,3~5位字符" @blur="validate"></el-input>
</el-form-item>
<el-form-item label="邮箱" prop="peopleMail">
<el-input v-model="peopleInfo.peopleMail" placeholder="输入昵称,3~请输入您的邮箱" @blur="validate"></el-input>
</el-form-item>
<el-button style="margin-left: 100px;" type="primary" @click="updateInfo('peopleInfo')" :disabled="flag" v-text="submit">
</el-button>
</el-form>
</div>
</div>
</div>
</div>
</div>
<#include "/footer.htm" />
</body>
</html>
<script type="text/javascript">
new Vue({
el: '#center-vue',
data: {
peopleInfo: "",
submit:"确认",
flag:true,
rules: {
peoplePhone: [{
required: true,
message: '请输入手机号码',
trigger: 'blur'
},
{
pattern: /^1[34578]\d{9}$/,
message: '请输入正确的手机号码',
trigger: 'blur'
}
],
puNickname: [{
required: true,
message: '请输入昵称',
trigger: 'blur'
},
{
min: 3,
max: 5,
message: '长度在 3 到 5 个字符',
trigger: 'blur'
}
],
peopleMail: [{
required: true,
message: '请输入邮箱',
trigger: 'blur'
},
{
pattern: /^[A-Za-z\d]+([-_.][A-Za-z\d]+)*@([A-Za-z\d]+[-.])+[A-Za-z\d]{2,4}$/,
message: '请输入正确的邮箱',
trigger: 'blur'
}
],
},
},
methods: {
updateInfo: function (formName) {
this.submit="提交中...";
var params = {
peoplePhone: this.peopleInfo.peoplePhone,
puNickname: this.peopleInfo.puNickname,
peopleMail: this.peopleInfo.peopleMail,
puIcon: this.peopleInfo.puIcon
}
ms.people.user.update(params, function (returnJson) {
//更新用户信息
if (returnJson.result) {
alert("修改成功");
location.reload();
} else {
alert(returnJson.resultMsg);
this.flag=true;
}
});
},
validate() {
this.$refs.peopleInfo.validate((valid) => {
if (valid) {
this.flag=false;
}
else{
this.flag=true;
}
});
},
submitForm(formName) {
this.$refs[formName].validate((valid) => {
if (!valid) {
console.log('error submit!!');
die;
}
});
},
resetForm(formName) {
this.$refs[formName].resetFields();
},
//获取个人信息
getPeopleInfo: function () {
var target = this;
ms.people.user.info(function (returnJson) {
target.peopleInfo = returnJson;
})
},
//上传头像成功后,更新用户信息
handleAvatarSuccess(res, file) {
this.peopleInfo.puIcon = file.response;
var params = {
peopleMail: this.peopleInfo.peopleMail,
puIcon: this.peopleInfo.puIcon
}
ms.people.user.update(params, function (returnJson) {
//更新用户信息
if (returnJson.result) {
alert("头像修改成功");
location.reload();
} else {
alert(returnJson.resultMsg);
}
});
},
beforeAvatarUpload(file) {
const isJPG = file.type === 'image/jpeg';
const isLt2M = file.size / 1024 / 1024 < 2;
if (!isJPG) {
this.$message.error('上传头像图片只能是 JPG 格式!');
}
if (!isLt2M) {
this.$message.error('上传头像图片大小不能超过 2MB!');
}
return isJPG && isLt2M;
}
},
mounted: function () {
this.getPeopleInfo();
var target = this;
}
})
</script>
<style type="text/css">
.avatar-uploader .el-upload {
border: none !important;
cursor: pointer;
position: absolute;
z-index: 100;
width: 100px;
height: 100px;
padding: 0 !important;
left: 29%;
top: calc(50% - 10px);
transform: translateY(-50%);
}
.ms-content-left-info {
position: relative;
}
</style>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<title>登录</title>
<meta charset="utf-8">
<link rel="stylesheet/less" type="text/css" href="{ms:global.host/}/{ms:global.style/}/less/login.less">
<link rel="stylesheet/less" type="text/css" href="{ms:global.host/}/{ms:global.style/}/less/base.less">
<script src="{ms:global.host/}/plugins/jquery/1.9.1/jquery-1.9.1.js"></script>
<script src="{ms:global.host/}/static/plugins/vue/2.3.3/vue.min.js"></script>
<script src="{ms:global.host/}/static/plugins/validator/5.5.0/validator.min.js"></script>
<script src="{ms:global.host/}/static/plugins/less/3.9.0/less.min.js"></script>
</head>
<body>
<div id="login">
<div class="ms-head">
<a href="{ms:global.host/}"><img src="{ms:global.host/}/{ms:global.style/}/images/logo.png" /></a>
<span class="ms-head-line"></span>
<span class="ms-head-welcome-login">欢迎登录</span>
</div>
<div class="ms-content">
<div class="ms-content-form" :class="{'ms-none':show == 'weixin'}">
<div class="ms-login-title">
<span class="ms-login-chinese-title">账号登录 /</span>
<span class="ms-login-english-title">User login</span>
</div>
<div class="ms-login-error-text">
<img src="{ms:global.host/}/{ms:global.style/}/images/error.png" style="display: none;"
v-show="errorText != ''" />
<span v-text="errorText" v-show="errorText != ''"></span>
</div>
<form id="ms-login-form">
<input @keyup="chanageBackgroundColor" maxlength="20" @keyup.enter="login" type="text"
class="ms-login-people-name" :class="{'ms-error':error == 'peopleName'}" name="peopleName"
v-model="peopleName" placeholder="必填,6-20个字符" @blur="checkPeopleName" />
<input @keyup="chanageBackgroundColor" maxlength="20" @keyup.enter="login" type="password"
class="ms-login-people-name" :class="{'ms-error':error == 'peoplePassword'}"
name="peoplePassword" v-model="peoplePassword" placeholder="必填,6-20个字符"
@blur="checkPeoplePassword" />
<div class="login-code">
<input @keyup="chanageBackgroundColor" maxlength="4" @keyup.enter="login" type="text"
class="login-code-input ms-login-float" name="rand_code" placeholder="必填,4个字符"
v-model="peopleCode" :class="{'ms-error':error == 'peopleCode'}" @blur="checkPeopleCode" />
<img src="{ms:global.host/}/{ms:global.style/}/images/code.jpg"
class="login-code-img ms-login-float" @click="code">
<p class="ms-login-float login-code-text">
<span class="login-code-rompt">看不清?</span>
<br />
<spna class="login-code-change" @click="code">换一张</span>
</p>
</div>
<div class="ms-login-button" @click="login" :disabled="butState != '登录'"
:class="{'ms-but-disabled':butState != '登录'}" v-text="butState"></div>
</form>
</div>
</div>
<div class="ms-footer">
<p>
<span>
<a href='{ms:global.url/}/53/index.html'>关于我们</a>
</span>
<span>|</span>
<span>
<a target="_blank" href='http://mingsoft.net/html/1//5527/index.html#faz'>发展历程</a>
</span>
<span>|</span>
<span>
<a target="_blank" href='{ms:global.url/}/19/index.html'>联系我们</a>
</span>
</p>
<p>版权所有 @铭飞科技有限公司2012-2018保留一切权利</p>
</div>
</div>
</body>
<script>
var loginVue = new Vue({
el: '#login',
data: {
show: "form", //切换显示的内容
errorText: "", //错误提示
error: "", //输入框错误的显示
peopleName: "", //用户名输入框
peoplePassword: "", //密码输入框
peopleCode: "", //验证码输入框
butState: "登录", //按钮文字
},
watch: {
peopleName: function () {
var pattern = /[^\w\u4E00-\u9FA5]/ig;
if (!validator.isNull(this.peopleName) && this.peopleName.indexOf(" ") < 0 && validator
.isLength(this.peopleName, {
min: 6,
max: 20
}) && pattern.test(this.peopleName) == false && this.error == 'peopleName') {
this.errorText = "";
this.error = "";
}
},
peoplePassword: function () {
if (!validator.isNull(this.peoplePassword) && this.peoplePassword.indexOf(" ") < 0 &&
validator.isLength(this.peoplePassword, {
min: 6,
max: 20
}) && this.error == 'peoplePassword') {
this.errorText = "";
this.error = "";
}
},
peopleCode: function () {
if (!validator.isNull(this.peopleCode) && this.peopleCode.indexOf(" ") < 0 && this
.peopleCode != 4 && this.error == 'peopleCode') {
this.errorText = "";
this.error = "";
}
},
},
methods: {
errorShow: function (msg, type) {
this.errorText = msg;
this.error = type;
},
//判断用户名
checkPeopleName: function () {
var pattern = /[^\w\u4E00-\u9FA5]/ig;
if (validator.isNull(this.peopleName)) {
this.errorShow("用户名不能为空", 'peopleName');
return false;
} else if (this.peopleName.indexOf(" ") >= 0) {
this.errorShow("用户名不能包含空格", 'peopleName');
return false;
} else if (!validator.isLength(this.peopleName, {
min: 6,
max: 20
})) {
this.errorShow("用户名为6~20个字符", 'peopleName');
return false;
} else if (pattern.test(this.peopleName)) {
this.errorShow("用户名不能包含特殊字符", 'peopleName');
return false;
}
return true;
},
//判断密码
checkPeoplePassword: function () {
if (validator.isNull(this.peoplePassword)) {
this.errorShow("密码不能为空", 'peoplePassword');
return false;
} else if (!validator.isLength(this.peoplePassword, {
min: 6,
max: 20
})) {
this.errorShow("密码长度在6~20位之间!", 'peoplePassword');
return;
} else if (this.peoplePassword.indexOf(" ") >= 0) {
this.errorShow("密码是不能包含空格", 'peoplePassword');
return false;
}
return true;
},
//判断验证码
checkPeopleCode: function () {
if (validator.isNull(this.peopleCode)) {
this.errorShow("验证码不能为空", 'peopleCode');
return false;
} else if (this.peopleCode.length != 4) {
this.errorShow("验证码为4位字符", 'peopleCode');
return false;
} else if (this.peopleCode.indexOf(" ") >= 0) {
this.errorShow("验证码不能包括空格", 'peopleCode');
return false;
}
return true;
},
//登录
login: function () {
var target = this;
if (this.checkPeoplePassword() && this.checkPeopleName() && this.checkPeopleCode) {
target.butState = '登录中...';
$.ajax({
type: "post",
data: $("#ms-login-form").serialize(),
url: "{ms:global.host/}/checkLogin.do",
success: function (msg) {
if (msg.result != true) {
alert(msg.resultMsg);
target.code();
} else {
$("body").append(
"<form action='{ms:global.host/}/people/center.do' id='goForm'></form>"
);
$("#goForm").submit();
}
target.butState = '登录';
}
})
}
},
code: function () {
$(".login-code-img").attr("src", "{ms:global.host/}/code?t=" + (new Date).getTime())
},
chanageBackgroundColor: function () {
if ($('input[name="peopleName"]').val().length >= 6 && $('input[name="peoplePassword"]')
.val().length >= 6 && $('input[name="rand_code"]').val().length == 4) {
$('.ms-login-button').css("background-color", "#009aff");
$('.ms-login-button').css("pointer-events", 'visible');
$('.ms-login-button').css("color", "#fff");
} else {
$('.ms-login-button').css("background-color", "#fafafa");
$('.ms-login-button').css('pointer-events', "none");
$('.ms-login-button').css("color", "#ddd");
}
},
},
mounted: function () {
$(".login-code-img").attr("src", "{ms:global.host/}/code?t=" + (new Date).getTime())
if (document.referrer == "http://localhost:8282/people/password-change.do") {
history.pushState(null, null, document.URL);
window.addEventListener('popstate', function () {
history.pushState(null, null, document.URL);
});
}
}
})
</script>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<#include "/head-file.htm" />
</head>
<body>
<#include "/head.htm" />
<div class="ms-content" id="pa-change-vue">
<div class="ms-content-main">
<div class="ms-content-left">
<div class="ms-content-left-info">
<el-upload class="avatar-uploader" action="{ms:global.host/}/file/upload.do" :show-file-list="false"
:on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload">
</el-upload>
<img :src="'{ms:global.host/}/'+peopleInfo.puIcon"
onerror='this.src="http://cdn.mingsoft.net/global/images/msheader.png"'>
<div style="display: none;" v-show="peopleInfo.puNickname!='' && peopleInfo.puNickname != undefined"
v-if="peopleInfo.puNickname!='' && peopleInfo.puNickname != undefined"
v-text="peopleInfo.puNickname"></div>
<div v-else v-text="'暂无昵称'"></div>
</div>
<div class="ms-content-left-list">
<div class="ms-content-left-list-info">
<a href="{ms:global.host/}/people/center.do">基本资料</a>
</div>
<div class="ms-content-left-list-pass">
<a class='active' href="{ms:global.host/}/people/password-change.do">修改密码</a>
</div>
</div>
</div>
<div class="ms-content-right">
<div class="ms-content-right-title">修改密码</div>
<div class="ms-content-right-form" style="width: 60%;padding-top: 30px;">
<el-form :model="form" :rules="rules" ref="form" label-width="100px"
class="demo-form" status-icon style="margin-left: 15px;">
<el-form-item label="当前密码" prop="peopleOldPassword">
<el-input v-model="form.peopleOldPassword" placeholder="必填,6~20位字符" @blur="validate">
</el-input>
</el-form-item>
<el-form-item label="新密码" prop="peoplePassword">
<el-input v-model="form.peoplePassword" placeholder="必填,6~20位字符" @blur="validate">
</el-input>
</el-form-item>
<el-form-item label="确认密码" prop="rePeoplePassword">
<el-input v-model="form.rePeoplePassword" placeholder="请再次输入新密码" @blur="validate">
</el-input>
</el-form-item>
<el-form-item label="验证码" prop="rand_code" style="position: relative;">
<el-input v-model="form.rand_code" placeholder="必填,4位字符" @blur="validate"></el-input>
<div id="code">
<img :src="codeSrc" class="login-code-img" @click="code" />
<div>
<span>看不清?</span>
<span class="img-code" @click="code" ref="imgCode">换一张</span>
</div>
</div>
</el-form-item>
<el-button style="margin-left: 100px;" type="primary" @click="changePassword('form')"
:disabled="flag" v-text="submit">
</el-button>
</el-form>
</div>
</div>
</div>
</div>
<#include "/footer.htm" />
</body>
</html>
<script type="text/javascript">
var validatePass2 = (rule, value, callback) => {
if (value === '') {
callback(new Error('请再次输入密码'));
} else if (value !== V.form.peoplePassword) {
callback(new Error('两次输入密码不一致!'));
} else {
callback();
}
};
var V = new Vue({
el: "#pa-change-vue",
data: {
// 用户信息
peopleInfo:"",
//提交信息
form: {
peopleOldPassword: "", //用户旧密码
peoplePassword: "", //用户密码
rePeoplePassword: "", //确认密码
rand_code: ""
},
flag: true,
submit: "确认",
codeSrc:"{ms:global.host/}/code",
rules: {
peopleOldPassword: [{
required: true,
message: '请输入旧密码',
trigger: 'blur'
},
{
min: 6,
max: 20,
message: '密码长度在 6 到 20 个字符',
trigger: 'blur'
}
],
peoplePassword: [{
required: true,
message: '请输入新密码',
trigger: 'blur'
},
{
min: 6,
max: 20,
message: '密码长度在 6 到 20 个字符',
trigger: 'blur'
}
],
rePeoplePassword: [{
required: true,
message: '请输入新密码',
trigger: 'blur'
},
{
validator: validatePass2,
trigger: 'blur'
}
],
rand_code: [{
required: true,
message: '请输入验证码',
trigger: 'blur'
},
{
min: 4,
max: 4,
message: '输入验证码位数错误',
trigger: 'blur'
}
]
},
},
methods: {
test: function () {
alert(1);
},
//更改验证码
code: function () {
this.codeSrc="{ms:global.host/}/code?t=" + (new Date).getTime();
},
//修改密码
changePassword: function (formName) {
this.submitForm(formName);
var target = this;
var params = {
peopleOldPassword: this.form.peopleOldPassword,
peoplePassword: this.form.peoplePassword,
rePeoplePassword: this.form.rePeoplePassword,
rand_code: this.form.rand_code
}
ms.people.changePassword(params, function (returnJson) {
if (returnJson.result) {
target.submit = "提交中..."
setTimeout(function () {
alert("密码修改成功,请重新登录")
http.post("{ms:global.host/}/people/quit.do")
location.href = "{ms:global.host/}/mcms/login.do";
}, 500)
} else if (returnJson.resultMsg == "密码错误!") {
alert('原密码错误!');
this.flag = true;
} else if (returnJson.resultMsg == "验证码错误!") {
alert("验证码错误!");
target.$refs.imgCode.click();
target.form.rand_code="",
this.flag = true;
}
})
},
submitForm(formName) {
this.$refs[formName].validate((valid) => {
if (!valid) {
console.log('error submit!!');
die;
}
});
},
validate() {
this.$refs.form.validate((valid) => {
if (valid) {
this.flag = false;
} else {
this.flag = true;
}
});
},
handleAvatarSuccess(res, file) {
this.peopleInfo.puIcon = file.response;
var params = {
peopleMail: this.peopleInfo.peopleMail,
puIcon: this.peopleInfo.puIcon,
}
ms.people.user.update(params, function (returnJson) {
//更新用户信息
if (returnJson.result) {
alert("头像修改成功");
location.reload();
} else {
alert(returnJson.resultMsg);
}
});
},
beforeAvatarUpload(file) {
const isJPG = file.type === 'image/jpeg';
const isLt2M = file.size / 1024 / 1024 < 2;
if (!isJPG) {
this.$message.error('上传头像图片只能是 JPG 格式!');
}
if (!isLt2M) {
this.$message.error('上传头像图片大小不能超过 2MB!');
}
return isJPG && isLt2M;
}
},
mounted: function () {
//获取个人信息
var target = this;
ms.people.user.info(function (returnJson) {
target.peopleInfo = returnJson;
})
}
})
</script>
<style type="text/css">
#code {
position: absolute;
right: -150px;
top: 0;
height: 40px;
}
#code>.login-code-img {
height: 40px;
}
#code>div {
font-size: 15px;
display: inline-block;
vertical-align: top;
}
#code>div>span {
display: block;
line-height: 1.4;
}
#code>div>.img-code {
cursor: pointer;
color: #00A5FF;
}
.avatar-uploader .el-upload {
border: none !important;
cursor: pointer;
position: absolute;
z-index: 100;
width: 100px;
height: 100px;
padding: 0 !important;
left: 29%;
top: calc(50% - 10px);
transform: translateY(-50%);
}
.ms-content-left-info {
position: relative;
}
</style>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<title>注册</title>
<meta charset="utf-8">
<link rel="stylesheet/less" type="text/css" href="{ms:global.host/}/{ms:global.style/}/less/login.less">
<link rel="stylesheet/less" type="text/css" href="{ms:global.host/}/{ms:global.style/}/less/base.less">
<script src="{ms:global.host/}/static/plugins/jquery/1.9.1/jquery-1.9.1.js"></script>
<script src="{ms:global.host/}/static/plugins/vue/2.3.3/vue.min.js"></script>
<script src="{ms:global.host/}/static/plugins/validator/5.5.0/validator.min.js"></script>
<script src="{ms:global.host/}/static/plugins/less/3.9.0/less.min.js"></script>
</head>
<body>
<div id="login">
<div class="ms-head">
<a href="{ms:global.host/}"><img src="{ms:global.host/}/{ms:global.style/}/images/logo.png" /></a>
<span class="ms-head-line"></span>
<span class="ms-head-welcome-login">欢迎登录</span>
</div>
<div class="ms-content">
<div class="ms-content-form" id="ms-content-form-register" :class="{'ms-none':show == 'weixin'}">
<div class="ms-login-title">
<span class="ms-login-chinese-title">账号登录 /</span>
<span class="ms-login-english-title">User Register</span>
</div>
<div class="ms-login-error-text">
<img src="{ms:global.host/}/{ms:global.style/}/images/error.png" style="display: none;" v-show="errorText != ''" />
<span v-text="errorText" v-show="errorText != ''"></span>
</div>
<form id="ms-login-form">
<input @keyup="chanageBackgroundColor" maxlength="20" @keyup.enter="login" type="text" class="ms-login-people-name" :class="{'ms-error':error == 'peopleName'}" name="peopleName" v-model="peopleName" placeholder="必填,6-20个字符" @blur="checkPeopleName" />
<input @keyup="chanageBackgroundColor" maxlength="20" @keyup.enter="login" type="password" class="ms-login-people-name" :class="{'ms-error':error == 'peoplePassword'}" name="peoplePassword" v-model="peoplePassword" placeholder="必填,6-20个字符" @blur="checkPeoplePassword" />
<input @keyup="chanageBackgroundColor" maxlength="20" @keyup.enter="login" type="password" name="rePassword" class="ms-login-people-name" :class="{'ms-error':error == 'rePeoplePassword'}" v-model="rePeoplePassword" placeholder="必填,6-20个字符,与密码一致" @blur="checkPeopleRePassword">
<div class="login-code">
<input @keyup="chanageBackgroundColor" maxlength="4" @keyup.enter="login" type="text" class="login-code-input ms-login-float" name="rand_code" placeholder="必填,4个字符" v-model="peopleCode" :class="{'ms-error':error == 'peopleCode'}" @blur="checkPeopleCode" />
<img src="{ms:global.host/}/{ms:global.style/}/images/code.jpg" class="login-code-img ms-login-float" @click="code">
<p class="ms-login-float login-code-text">
<span class="login-code-rompt">看不清?</span>
<br/>
<spna class="login-code-change" @click="code">换一张</span>
</p>
</div>
<div class="ms-login-button" @click="login" :disabled="butState != '注册'" :class="{'ms-but-disabled':butState != '注册'}" v-text="butState">注册</div>
</form>
</div>
</div>
<div class="ms-footer">
<p>
<span>
<a href='{ms:global.url/}/53/index.html'>关于我们</a>
</span>
<span>|</span>
<span>
<a target="_blank" href='http://mingsoft.net/html/1//5527/index.html#faz'>发展历程</a>
</span>
<span>|</span>
<span>
<a target="_blank" href='{ms:global.url/}/19/index.html'>联系我们</a>
</span>
</p>
<p>版权所有 @铭飞科技有限公司2012-2018保留一切权利</p>
</div>
</div>
</body>
<script>
new Vue({
el: '#login',
data: {
show: "form", //切换显示的内容
errorText: "", //错误提示
error: "", //输入框错误的显示
peopleName: "", //用户名输入框
peoplePassword: "", //密码输入框
rePeoplePassword:"",//确定密码输入框
peopleCode:"",//验证码输入框
butState:"注册",//注册按钮
},
watch: {
peopleName: function() {
var pattern = /[^\w\u4E00-\u9FA5]/ig;
if(!validator.isNull(this.peopleName) && this.peopleName.indexOf(" ") < 0 && validator.isLength(this.peopleName, {
min: 6,
max: 20
}) && pattern.test(this.peopleName) == false && this.error == 'peopleName') {
this.errorText = "";
this.error = "";
}
},
peoplePassword: function() {
if(!validator.isNull(this.peoplePassword) && this.peoplePassword.indexOf(" ") < 0 && validator.isLength(this.peoplePassword, {
min: 6,
max: 20
}) && this.error == 'peoplePassword') {
this.errorText = "";
this.error = "";
}
},
rePeoplePassword: function() {
if(!validator.isNull(this.rePeoplePassword) && this.rePeoplePassword.indexOf(" ") < 0 && validator.isLength(this.rePeoplePassword, {
min: 6,
max: 20
}) && this.error == 'rePeoplePassword' && this.rePeoplePassword == this.peoplePassword) {
this.errorText = "";
this.error = "";
}
},
peopleCode: function() {
if(!validator.isNull(this.peopleCode) && this.peopleCode.indexOf(" ") < 0 && this.peopleCode != 4 && this.error == 'peopleCode') {
this.errorText = "";
this.error = "";
}
},
},
methods: {
errorShow: function(msg, type) {
this.errorText = msg;
this.error = type;
},
//判断用户名
checkPeopleName: function() {
var pattern = /[^\w\u4E00-\u9FA5]/ig;
if(validator.isNull(this.peopleName)) {
this.errorShow("用户名不能为空", 'peopleName');
return false;
} else if(this.peopleName.indexOf(" ") >= 0) {
this.errorShow("用户名不能包含空格", 'peopleName');
return false;
} else if(!validator.isLength(this.peopleName, {
min: 6,
max: 20
})) {
this.errorShow("用户名为6~20个字符", 'peopleName');
return false;
} else if(pattern.test(this.peopleName)) {
this.errorShow("用户名不能包含特殊字符", 'peopleName');
return false;
}
return true;
},
//判断密码
checkPeoplePassword: function() {
if(validator.isNull(this.peoplePassword)) {
this.errorShow("密码不能为空", 'peoplePassword');
return false;
} else if(!validator.isLength(this.peoplePassword, {
min: 6,
max: 20
})) {
this.errorShow("密码长度在6~20位之间!", 'peoplePassword');
return false;
} else if(this.peoplePassword.indexOf(" ") >= 0) {
this.errorShow("密码是不能包含空格", 'peoplePassword');
return false;
}
return true;
},
//判断确定密码
checkPeopleRePassword: function() {
if(validator.isNull(this.rePeoplePassword)) {
this.errorShow("确定密码不能为空", 'rePeoplePassword');
return false;
} else if(!validator.isLength(this.rePeoplePassword, {
min: 6,
max: 20
})) {
this.errorShow("确定密码长度在6~20位之间!", 'rePeoplePassword');
return false;
} else if(this.rePeoplePassword.indexOf(" ") >= 0) {
this.errorShow("确定密码是不能包含空格", 'rePeoplePassword');
return false;
} else if(this.rePeoplePassword != this.peoplePassword){
this.errorShow("确定密码和密码不一致", 'rePeoplePassword');
return false;
}
return true;
},
//判断验证码
checkPeopleCode: function() {
if(validator.isNull(this.peopleCode)) {
this.errorShow("验证码不能为空", 'peopleCode');
return false;
} else if(this.peopleCode.length != 4) {
this.errorShow("验证码为4位字符", 'peopleCode');
return false;
} else if(this.peopleCode.indexOf(" ") >= 0) {
this.errorShow("验证码不能包括空格", 'peopleCode');
return false;
}
return true;
},
//登录
login: function() {
var target = this;
if(this.checkPeoplePassword() && this.checkPeopleName() && this.checkPeopleRePassword() && this.checkPeopleCode()) {
target.butState = '注册中...';
$.ajax({
type: "post",
data: $("#ms-login-form").serialize(),
url: "{ms:global.host/}/register.do",
success: function(msg) {
if(msg.result != true) {
alert(msg.resultMsg);
target.code();
} else {
alert("注册成功!");
$("body").append("<form action='{ms:global.host/}/mcms/login.do' id='goForm'></form>");
$("#goForm").submit();
}
target.butState = '注册';
}
})
}
},
code: function() {
$(".login-code-img").attr("src", "{ms:global.host/}/code?t=" + (new Date).getTime())
},
chanageBackgroundColor: function(){
if($('input[name="peopleName"]').val().length >= 6 && $('input[name="peoplePassword"]').val().length >= 6 && $('input[name="rePassword"]').val().length >= 6 && $('input[name="rand_code"]').val().length == 4){
$('.ms-login-button').css("background-color", "#009aff");
$('.ms-login-button').css("pointer-events", 'visible');
$('.ms-login-button').css("color", "#fff");
}else{
$('.ms-login-button').css("background-color", "#fafafa");
$('.ms-login-button').css('pointer-events', "none");
$('.ms-login-button').css("color", "#ddd");
}
},
},
mounted: function() {
$(".login-code-img").attr("src", "{ms:global.host/}/code?t=" + (new Date).getTime())
}
})
</script>
</html>
\ No newline at end of file
<!DOCTYPE html>
<html>
<head>
<#include "head-file.htm"/>
</head>
<body>
<#include "head.htm"/>
<div class="ms-banner">
<img src="{ms:global.host/}/{ms:global.style/}/images/search.jpg">
</div>
<div class="ms-content" id="body">
<div class="ms-content-main-list" id="ms-content-search">
<div class="ms-content-main-div">
<div class="ms-content-main-div-prompt">您搜索的关键字
<span>{ms:search.basic_title/}</span>
<!-- 共7个结果 -->
</div>
<ul class="ms-content-main-ul">
{ms:arclist size=10 ispaging=true}
<li>
<a href="{ms:global.url/}/[field.link/]">
[field.title/]
<span class="ms-content-main-li-time">[field.date?string("yyyy-MM-dd")/]</span>
</a>
</li>
{/ms:arclist}
</ul>
</div>
<div class="ms-content-main-page">
<a class="ms-content-main-page-first" href="{ms:page.index/}">首页</a>
<a class="ms-content-main-page-upper" href="{ms:page.pre/}">上一页</a>
<a class="ms-content-main-page-next" href="{ms:page.next/}">下一页</a>
<a class="ms-content-main-page-last" href="{ms:page.last/}">末页</a>
</div>
</div>
</div>
<#include "footer.htm"/>
</body>
</html>
<script>
new Vue({
el: "#body",
data: {
title: '',
list: [],
},
methods: {
//上下页
search:function(flag){
var pageNo = {ms:search.pageNo/};
var total = {ms:page.total/};
if(flag){
pageNo = pageNo==total ? total : pageNo +1;//下一页
}else{
pageNo = pageNo -1==0 ? 1 : pageNo-1;//上一页
}
window.location.href="{ms:global.host/}/cms/1/search.do?basic_title={ms:search.basic_title/}&pageNo="+pageNo;
window.event.returnValue=false;
},
//首页和尾页
indexAndLast:function(pageNo){
window.location.href="{ms:global.host/}/cms/1/search.do?basic_title={ms:search.basic_title/}&pageNo="+pageNo;
window.event.returnValue=false;
},
},
})
if($('.ms-content-main-ul li').length <= 0) {
$('.ms-content-main-page').remove();
$('.ms-content-main-ul').before("<div class='ms-content-main-div-nothing'>没找到相关记录</div>")
}
</script>
\ No newline at end of file
package net.mingsoft.mcms;//package net.mingsoft.mcms;
//package net.mingsoft.mcms;
//
//import org.junit.Test;
//import org.junit.runner.RunWith;
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment