add main login
This commit is contained in:
parent
be8503946f
commit
0ca9c2a7e9
|
@ -26,4 +26,3 @@ class UserForm(forms.Form):
|
||||||
#headimgurl = forms.CharField(label="头像", max_length=200, required=False, widget=forms.TextInput(attrs={'class': 'form-control'}))
|
#headimgurl = forms.CharField(label="头像", max_length=200, required=False, widget=forms.TextInput(attrs={'class': 'form-control'}))
|
||||||
usecomp = forms.ModelChoiceField(label="所属公司", queryset=s_models.Partment.objects.all(), widget=forms.Select(attrs={'class': 'form-control'}))
|
usecomp = forms.ModelChoiceField(label="所属公司", queryset=s_models.Partment.objects.all(), widget=forms.Select(attrs={'class': 'form-control'}))
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -87,8 +87,9 @@ def company_userdetail(request, uid):
|
||||||
except s_models.User.DoesNotExist:
|
except s_models.User.DoesNotExist:
|
||||||
raise Http404("User does not exist")
|
raise Http404("User does not exist")
|
||||||
|
|
||||||
#UserForm.set_usecomp(s_models.Partment.objects.all())
|
#UserForm.set_usecomp(s_models.Partment.objects.filter(group__id=1))
|
||||||
user_form = UserForm(model_to_dict(user))
|
user_form = UserForm(model_to_dict(user))
|
||||||
|
|
||||||
return render(request, 'groups/company_userdetail.html', locals())
|
return render(request, 'groups/company_userdetail.html', locals())
|
||||||
|
|
||||||
def groups_userupdate(request):
|
def groups_userupdate(request):
|
||||||
|
|
|
@ -1,23 +1,25 @@
|
||||||
from django import forms
|
from django import forms
|
||||||
|
from captcha.fields import CaptchaField
|
||||||
class UserForm(forms.Form):
|
|
||||||
username = forms.CharField(max_length=30)
|
class UserForm(forms.Form):
|
||||||
password = forms.CharField(max_length=30)
|
#username = forms.CharField(max_length=30)
|
||||||
|
#password = forms.CharField(max_length=30)
|
||||||
class CompanyInfoForm(forms.Form):
|
captcha = CaptchaField(label='验证码', error_messages={"invalid": "验证码错误"})
|
||||||
company_nature = (
|
|
||||||
(0, '国企'),
|
class CompanyInfoForm(forms.Form):
|
||||||
(1, '私企'),
|
company_nature = (
|
||||||
)
|
(0, '国企'),
|
||||||
name = forms.CharField(max_length=64, label='公司名称', widget=forms.TextInput(attrs={'size': '50'}))
|
(1, '私企'),
|
||||||
nature = forms.ChoiceField(choices=company_nature, label='企业性质')
|
)
|
||||||
address = forms.CharField(max_length=128, label='公司地址', widget=forms.TextInput(attrs={'size': '50'}))
|
name = forms.CharField(max_length=64, label='公司名称', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
fixed_assets = forms.IntegerField(label='固定资产', widget=forms.TextInput(attrs={'size': '50'}))
|
nature = forms.ChoiceField(choices=company_nature, label='企业性质')
|
||||||
website = forms.CharField(max_length=64, label='公司网址', widget=forms.TextInput(attrs={'size': '50'}))
|
address = forms.CharField(max_length=128, label='公司地址', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
peoplenum = forms.IntegerField(label='公司人数', widget=forms.TextInput(attrs={'size': '50'}))
|
fixed_assets = forms.IntegerField(label='固定资产', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
legalperson = forms.CharField(max_length=24, label='法人代表', widget=forms.TextInput(attrs={'size': '50'}))
|
website = forms.CharField(max_length=64, label='公司网址', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
legalperson_phone = forms.CharField(max_length=24, label='法人电话', widget=forms.TextInput(attrs={'size': '50'}))
|
peoplenum = forms.IntegerField(label='公司人数', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
liaison = forms.CharField(max_length=24, label='联系人', widget=forms.TextInput(attrs={'size': '50'}))
|
legalperson = forms.CharField(max_length=24, label='法人代表', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
liaison_phone = forms.CharField(max_length=24, label='联系人电话', widget=forms.TextInput(attrs={'size': '50'}))
|
legalperson_phone = forms.CharField(max_length=24, label='法人电话', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
introduce = forms.CharField(label='公司概况', widget=forms.Textarea)
|
liaison = forms.CharField(max_length=24, label='联系人', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
|
liaison_phone = forms.CharField(max_length=24, label='联系人电话', widget=forms.TextInput(attrs={'size': '50'}))
|
||||||
|
introduce = forms.CharField(label='公司概况', widget=forms.Textarea)
|
||||||
|
|
||||||
|
|
|
@ -1,233 +1,256 @@
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>安全生产管理系统</title>
|
<title>安全生产管理系统</title>
|
||||||
<link rel="icon" href="/static/safesite/favicon.ico" type="image/x-icon" />
|
<link rel="icon" href="/static/safesite/favicon.ico" type="image/x-icon" />
|
||||||
<meta name="description" content="particles.js is a lightweight JavaScript library for creating particles.">
|
<meta name="description" content="particles.js is a lightweight JavaScript library for creating particles.">
|
||||||
<meta name="author" content="Vincent Garreau" />
|
<meta name="author" content="Vincent Garreau" />
|
||||||
<meta name="viewport"
|
<meta name="viewport"
|
||||||
content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
||||||
<link rel="stylesheet" media="screen" href="/static/safesite/mystatic/css/style.css">
|
<link rel="stylesheet" media="screen" href="/static/safesite/mystatic/css/style.css">
|
||||||
<link rel="stylesheet" type="text/css" href="/static/safesite/mystatic/css/reset.css" />
|
<link rel="stylesheet" type="text/css" href="/static/safesite/mystatic/css/reset.css" />
|
||||||
<script type="text/javascript" src="/static/safesite/easyui/jquery.min.js"></script>
|
<script type="text/javascript" src="/static/safesite/easyui/jquery.min.js"></script>
|
||||||
<style>
|
<style>
|
||||||
.login_qrcode {
|
.login_qrcode {
|
||||||
display: none;
|
display: none;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 218px;
|
top: 218px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
z-index: 9999;
|
z-index: 9999;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_qrcode .txt_scan {
|
.login_qrcode .txt_scan {
|
||||||
color: #454545;
|
color: #454545;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
left: 18px;
|
left: 18px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 11px;
|
top: 11px;
|
||||||
left: 25%;
|
left: 25%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_qrcode .login_close {
|
.login_qrcode .login_close {
|
||||||
background: url("../images/login_close.png") no-repeat;
|
background: url("../images/login_close.png") no-repeat;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
height: 12px;
|
height: 12px;
|
||||||
left: 216px;
|
left: 216px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 15px;
|
top: 15px;
|
||||||
width: 12px;
|
width: 12px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_qrcode .gzcode {
|
.login_qrcode .gzcode {
|
||||||
height: 200px;
|
height: 200px;
|
||||||
left: 23px;
|
left: 23px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 36px;
|
top: 36px;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_qrcode .gzcode2 {
|
.login_qrcode .gzcode2 {
|
||||||
height: 200px;
|
height: 200px;
|
||||||
left: 223px;
|
left: 223px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 36px;
|
top: 36px;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_qrcode p {
|
.login_qrcode p {
|
||||||
color: #454545;
|
color: #454545;
|
||||||
font-size: 12px;
|
font-size: 12px;
|
||||||
left: 21px;
|
left: 21px;
|
||||||
line-height: 14px;
|
line-height: 14px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 245px;
|
top: 245px;
|
||||||
left: 25%;
|
left: 25%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_qrcode_container {
|
.login_qrcode_container {
|
||||||
height: 297px;
|
height: 297px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 460px;
|
width: 460px;
|
||||||
background: #FFFFFF;
|
background: #FFFFFF;
|
||||||
box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
|
box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.2);
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.login_mask {
|
.login_mask {
|
||||||
background: rgba(0, 0, 0, 0.4);
|
background: rgba(0, 0, 0, 0.4);
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
display: none;
|
display: none;
|
||||||
left: 0;
|
left: 0;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
right: 0;
|
right: 0;
|
||||||
top: 0;
|
top: 0;
|
||||||
z-index: 999;
|
z-index: 999;
|
||||||
}
|
}
|
||||||
|
|
||||||
.guanzhu {
|
.guanzhu {
|
||||||
background: url(/static/safesite/mystatic/images/wechat.png) no-repeat;
|
background: url(/static/safesite/mystatic/images/wechat.png) no-repeat;
|
||||||
color: #1486c4;
|
color: #1486c4;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding-left: 40px;
|
padding-left: 40px;
|
||||||
padding-top: 10px;
|
padding-top: 10px;
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
margin-left: 50px;
|
margin-left: 50px;
|
||||||
margin-top: 40px;
|
margin-top: 40px;
|
||||||
height: 50px;
|
height: 50px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.wchatClose {
|
.wchatClose {
|
||||||
background: url(/static/safesite/mystatic/images/login_close.png) no-repeat;
|
background: url(/static/safesite/mystatic/images/login_close.png) no-repeat;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
height: 12px;
|
height: 12px;
|
||||||
left: 436px;
|
left: 436px;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
top: 15px;
|
top: 15px;
|
||||||
width: 12px;
|
width: 12px;
|
||||||
}
|
}
|
||||||
</style>
|
#id_captcha_1{
|
||||||
</head>
|
width:60%;
|
||||||
|
}
|
||||||
<body>
|
</style>
|
||||||
|
</head>
|
||||||
<div id="particles-js" style="margin-top: 0px;">
|
|
||||||
|
<body>
|
||||||
<div class="login" style="right:10%">
|
|
||||||
<div class="login-top">
|
<div id="particles-js" style="margin-top: 0px;">
|
||||||
企业安全生产管理系统
|
|
||||||
</div>
|
<div class="login" style="right:10%">
|
||||||
<form id="dlform" action="{% url 'login' %}" method="post">
|
<div class="login-top">
|
||||||
{% csrf_token %}
|
企业安全生产管理系统
|
||||||
<div class="login-center clearfix">
|
</div>
|
||||||
<div class="login-center-img"><img src="/static/safesite/mystatic/images/name.png" /></div>
|
<form id="dlform" action="{% url 'login' %}" method="post">
|
||||||
<div class="login-center-input">
|
{% csrf_token %}
|
||||||
<input type="text" name="username" value="" placeholder="请输入您的用户名" onfocus="this.placeholder=''"
|
<div class="login-center clearfix">
|
||||||
onblur="this.placeholder='请输入您的用户名'" />
|
<div class="login-center-img"><img src="/static/safesite/mystatic/images/name.png" /></div>
|
||||||
<div class="login-center-input-text">用户名</div>
|
<div class="login-center-input">
|
||||||
</div>
|
<input type="text" name="username" value="" placeholder="请输入您的用户名" onfocus="this.placeholder=''"
|
||||||
</div>
|
onblur="this.placeholder='请输入您的用户名'" />
|
||||||
<div class="login-center clearfix">
|
<div class="login-center-input-text">用户名</div>
|
||||||
<div class="login-center-img"><img src="/static/safesite/mystatic/images/password.png" /></div>
|
</div>
|
||||||
<div class="login-center-input">
|
</div>
|
||||||
<input type="password" name="password" value="" placeholder="请输入您的密码"
|
<div class="login-center clearfix">
|
||||||
onfocus="this.placeholder=''" onblur="this.placeholder='请输入您的密码'" />
|
<div class="login-center-img"><img src="/static/safesite/mystatic/images/password.png" /></div>
|
||||||
<div class="login-center-input-text">密码</div>
|
<div class="login-center-input">
|
||||||
</div>
|
<input type="password" name="password" value="" placeholder="请输入您的密码"
|
||||||
</div>
|
onfocus="this.placeholder=''" onblur="this.placeholder='请输入您的密码'" />
|
||||||
<p style="color:red;text-align: center">{{msg}}</p>
|
<div class="login-center-input-text">密码</div>
|
||||||
<div class="login-button">
|
</div>
|
||||||
登录
|
</div>
|
||||||
</div>
|
<p style="color:red;text-align: center">{{msg}}</p>
|
||||||
</form>
|
<div class="login-center clearfix">
|
||||||
<div style="width: 100%;height: 100px;">
|
<div class="login-center-input">
|
||||||
<a href="javascript:;" onclick="showWechatQRcode();" class="guanzhu" title="关注微信公众号">关注微信公众号---打开小程序</a>
|
{{ user_form.captcha }}
|
||||||
</div>
|
</div>
|
||||||
<div class="sk-rotating-plane"></div>
|
</div>
|
||||||
</div>
|
<div class="login-button">
|
||||||
|
登录
|
||||||
|
</div>
|
||||||
</div>
|
</form>
|
||||||
|
<div style="width: 100%;height: 100px;">
|
||||||
|
<a href="javascript:;" onclick="showWechatQRcode();" class="guanzhu" title="关注微信公众号">关注微信公众号---打开小程序</a>
|
||||||
|
</div>
|
||||||
<div class="login_qrcode" id="J_login_qrcode">
|
<div class="sk-rotating-plane"></div>
|
||||||
<div class="login_qrcode_container">
|
</div>
|
||||||
<span class="txt_scan">扫码关注微信公众号、小程序</span> <span onclick="hideWechatQRcode();" class="wchatClose"></span>
|
|
||||||
<img class='gzcode' src="/static/safesite/mystatic/images/weixin.jpg">
|
|
||||||
<img class="gzcode2" src="/static/safesite/mystatic/images/weixinmp.jpg">
|
</div>
|
||||||
<p>
|
|
||||||
请点开微信,扫码,关注公众号、小程序
|
|
||||||
</p>
|
|
||||||
</div>
|
<div class="login_qrcode" id="J_login_qrcode">
|
||||||
</div>
|
<div class="login_qrcode_container">
|
||||||
<div class="login_mask" id="J_login_mask"></div>
|
<span class="txt_scan">扫码关注微信公众号、小程序</span> <span onclick="hideWechatQRcode();" class="wchatClose"></span>
|
||||||
<script src="/static/safesite/mystatic/js/particles.min.js"></script>
|
<img class='gzcode' src="/static/safesite/mystatic/images/weixin.jpg">
|
||||||
<script src="/static/safesite/mystatic/js/app.js"></script>
|
<img class="gzcode2" src="/static/safesite/mystatic/images/weixinmp.jpg">
|
||||||
<script type="text/javascript">
|
<p>
|
||||||
document.onkeydown = function (e) {
|
请点开微信,扫码,关注公众号、小程序
|
||||||
if (!e) e = window.event;//考虑浏览器兼容性
|
</p>
|
||||||
if ((e.keyCode || e.which) == 13) {
|
</div>
|
||||||
document.querySelector(".login-button").click()
|
</div>
|
||||||
}
|
<div class="login_mask" id="J_login_mask"></div>
|
||||||
|
<script src="/static/safesite/mystatic/js/particles.min.js"></script>
|
||||||
}
|
<script src="/static/safesite/mystatic/js/app.js"></script>
|
||||||
function showWechatQRcode() {
|
<script type="text/javascript">
|
||||||
$("#J_login_qrcode").show();
|
document.onkeydown = function (e) {
|
||||||
$("#J_login_mask").show();
|
if (!e) e = window.event;//考虑浏览器兼容性
|
||||||
}
|
if ((e.keyCode || e.which) == 13) {
|
||||||
function hideWechatQRcode() {
|
document.querySelector(".login-button").click()
|
||||||
$("#J_login_qrcode").hide();
|
}
|
||||||
$("#J_login_mask").hide();
|
|
||||||
}
|
}
|
||||||
function showHelpCon() {
|
function showWechatQRcode() {
|
||||||
$("#J_login_helpcon").show();
|
$("#J_login_qrcode").show();
|
||||||
$("#J_login_mask").show();
|
$("#J_login_mask").show();
|
||||||
}
|
}
|
||||||
function hideHelpCon() {
|
function hideWechatQRcode() {
|
||||||
$("#J_login_helpcon").hide();
|
$("#J_login_qrcode").hide();
|
||||||
$("#J_login_mask").hide();
|
$("#J_login_mask").hide();
|
||||||
}
|
}
|
||||||
function hasClass(elem, cls) {
|
function showHelpCon() {
|
||||||
cls = cls || '';
|
$("#J_login_helpcon").show();
|
||||||
if (cls.replace(/\s/g, '').length == 0) return false; //当cls没有参数时,返回false
|
$("#J_login_mask").show();
|
||||||
return new RegExp(' ' + cls + ' ').test(' ' + elem.className + ' ');
|
}
|
||||||
}
|
function hideHelpCon() {
|
||||||
|
$("#J_login_helpcon").hide();
|
||||||
function addClass(ele, cls) {
|
$("#J_login_mask").hide();
|
||||||
if (!hasClass(ele, cls)) {
|
}
|
||||||
ele.className = ele.className == '' ? cls : ele.className + ' ' + cls;
|
function hasClass(elem, cls) {
|
||||||
}
|
cls = cls || '';
|
||||||
}
|
if (cls.replace(/\s/g, '').length == 0) return false; //当cls没有参数时,返回false
|
||||||
|
return new RegExp(' ' + cls + ' ').test(' ' + elem.className + ' ');
|
||||||
function removeClass(ele, cls) {
|
}
|
||||||
if (hasClass(ele, cls)) {
|
|
||||||
var newClass = ' ' + ele.className.replace(/[\t\r\n]/g, '') + ' ';
|
function addClass(ele, cls) {
|
||||||
while (newClass.indexOf(' ' + cls + ' ') >= 0) {
|
if (!hasClass(ele, cls)) {
|
||||||
newClass = newClass.replace(' ' + cls + ' ', ' ');
|
ele.className = ele.className == '' ? cls : ele.className + ' ' + cls;
|
||||||
}
|
}
|
||||||
ele.className = newClass.replace(/^\s+|\s+$/g, '');
|
}
|
||||||
}
|
|
||||||
}
|
function removeClass(ele, cls) {
|
||||||
document.querySelector(".login-button").onclick = function () {
|
if (hasClass(ele, cls)) {
|
||||||
addClass(document.querySelector(".login"), "active")
|
var newClass = ' ' + ele.className.replace(/[\t\r\n]/g, '') + ' ';
|
||||||
setTimeout(function () {
|
while (newClass.indexOf(' ' + cls + ' ') >= 0) {
|
||||||
addClass(document.querySelector(".sk-rotating-plane"), "active")
|
newClass = newClass.replace(' ' + cls + ' ', ' ');
|
||||||
document.querySelector(".login").style.display = "none"
|
}
|
||||||
}, 800)
|
ele.className = newClass.replace(/^\s+|\s+$/g, '');
|
||||||
$("#dlform").submit();
|
}
|
||||||
// setTimeout(function(){
|
}
|
||||||
// removeClass(document.querySelector(".login"), "active")
|
document.querySelector(".login-button").onclick = function () {
|
||||||
// removeClass(document.querySelector(".sk-rotating-plane"), "active")
|
addClass(document.querySelector(".login"), "active")
|
||||||
// document.querySelector(".login").style.display = "block"
|
setTimeout(function () {
|
||||||
// alert("登录成功")
|
addClass(document.querySelector(".sk-rotating-plane"), "active")
|
||||||
// },5000)
|
document.querySelector(".login").style.display = "none"
|
||||||
}
|
}, 800)
|
||||||
</script>
|
$("#dlform").submit();
|
||||||
</body>
|
// setTimeout(function(){
|
||||||
|
// removeClass(document.querySelector(".login"), "active")
|
||||||
|
// removeClass(document.querySelector(".sk-rotating-plane"), "active")
|
||||||
|
// document.querySelector(".login").style.display = "block"
|
||||||
|
// alert("登录成功")
|
||||||
|
// },5000)
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
$(function () {
|
||||||
|
$('input').iCheck({
|
||||||
|
checkboxClass: 'icheckbox_square-blue',
|
||||||
|
radioClass: 'iradio_square-blue',
|
||||||
|
increaseArea: '20%' /* optional */
|
||||||
|
});
|
||||||
|
});
|
||||||
|
$('.captcha').click(function () {
|
||||||
|
$.getJSON("/groups/refresh_captcha/", function (result) {
|
||||||
|
$('.captcha').attr('src', result['image_url']);
|
||||||
|
$('#id_captcha_0').val(result['key'])
|
||||||
|
});
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
</html>
|
</html>
|
|
@ -5,6 +5,7 @@ from .models import User,Trouble,Dickey,Partment,Dicclass,Train,Drill,TroubleAcc
|
||||||
from django.template import RequestContext
|
from django.template import RequestContext
|
||||||
from django.views.decorators.csrf import csrf_exempt
|
from django.views.decorators.csrf import csrf_exempt
|
||||||
from django.core import serializers
|
from django.core import serializers
|
||||||
|
from .forms import UserForm
|
||||||
import json
|
import json
|
||||||
from uuid import UUID
|
from uuid import UUID
|
||||||
import os
|
import os
|
||||||
|
@ -286,19 +287,27 @@ def upfile(req):
|
||||||
def login(req):
|
def login(req):
|
||||||
if req.session.get('userid', None):
|
if req.session.get('userid', None):
|
||||||
return redirect('index')
|
return redirect('index')
|
||||||
|
|
||||||
if req.method == 'POST':
|
if req.method == 'POST':
|
||||||
|
user_form = UserForm(req.POST)
|
||||||
username = req.POST.get('username')
|
username = req.POST.get('username')
|
||||||
password = req.POST.get('password')
|
password = req.POST.get('password')
|
||||||
user = User.objects.filter(username__exact = username, password__exact = password,deletemark=1)
|
user = User.objects.filter(username__exact = username, password__exact = password,deletemark=1)
|
||||||
if user:
|
if user:
|
||||||
#比较成功,跳转index
|
if user_form.is_valid():
|
||||||
req.session['userid'] = user[0].userid
|
# 比较成功,跳转index
|
||||||
# req.session.set_expiry(60*30)
|
req.session['userid'] = user[0].userid
|
||||||
return redirect('index')
|
# req.session.set_expiry(60*30)
|
||||||
|
return redirect('index')
|
||||||
|
else:
|
||||||
|
msg = '验证码错误'
|
||||||
|
return render(req, 'login.html', locals())
|
||||||
else:
|
else:
|
||||||
return render(req,'login.html',{'msg':'用户名或密码错误!'})
|
msg = '用户名或密码错误'
|
||||||
|
return render(req,'login.html', locals())
|
||||||
else:
|
else:
|
||||||
return render(req,'login.html')
|
user_form = UserForm()
|
||||||
|
return render(req,'login.html', locals())
|
||||||
|
|
||||||
def index(req):
|
def index(req):
|
||||||
if not req.session.get('userid', None):
|
if not req.session.get('userid', None):
|
||||||
|
@ -6021,6 +6030,13 @@ def companyinfo(req):
|
||||||
return render(req, 'companyinfo.html',
|
return render(req, 'companyinfo.html',
|
||||||
{'companyinfo': companyinfo_form})
|
{'companyinfo': companyinfo_form})
|
||||||
|
|
||||||
|
import json
|
||||||
|
from captcha.models import CaptchaStore
|
||||||
|
from captcha.helpers import captcha_image_url
|
||||||
|
def refresh_captcha(request):
|
||||||
|
hashkey = CaptchaStore.generate_key()
|
||||||
|
image_url = captcha_image_url(hashkey)
|
||||||
|
return HttpResponse(json.dumps({'key': hashkey, 'image_url': image_url}), content_type='application/json')
|
||||||
|
|
||||||
def dump(obj):
|
def dump(obj):
|
||||||
print('\n'.join(['%s:%s' % item for item in obj.__dict__.items()]))
|
print('\n'.join(['%s:%s' % item for item in obj.__dict__.items()]))
|
Loading…
Reference in New Issue