安全设置
This commit is contained in:
parent
0cae922bf1
commit
f653d694d6
|
|
@ -336,6 +336,7 @@ class AccountController < ApplicationController
|
|||
type = params[:type].to_i
|
||||
req = Hash.new(false)
|
||||
req[:status] = 0
|
||||
req[:msg] = ''
|
||||
if type == 1
|
||||
if User.where(:phone => params[:value]).count > 0
|
||||
req[:status] = 2 #已注册
|
||||
|
|
@ -392,14 +393,15 @@ class AccountController < ApplicationController
|
|||
if params[:value] =~ /^[a-zA-Z0-9]+([._\\]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/
|
||||
if User.where(:mail => params[:value]).count > 0
|
||||
req[:status] = 2 #已绑定
|
||||
req[:msg] = '该邮箱已被绑定'
|
||||
else
|
||||
begin
|
||||
verification_code = code.sample(6).join
|
||||
user = User.where(:mail => params[:value]).first
|
||||
user = User.current
|
||||
token = Token.new(:user => user, :action => "bind")
|
||||
if token.save
|
||||
Mailer.run.bind_email(token, verification_code)
|
||||
VerificationCode.create(:email => params[:value], :status => 1, :code_type => 4, :code => verification_code)
|
||||
VerificationCode.create(:email => params[:value], :status => 1, :code_type => 5, :code => verification_code)
|
||||
end
|
||||
rescue => e
|
||||
Rails.logger.error "发送验证码出错: #{e}"
|
||||
|
|
@ -410,12 +412,13 @@ class AccountController < ApplicationController
|
|||
elsif params[:value] =~ /^1\d{10}$/
|
||||
if User.where(:phone => params[:value]).count > 0
|
||||
req[:status] = 2
|
||||
req[:msg] = '该手机号已被绑定'
|
||||
else
|
||||
begin
|
||||
verification_code = code.sample(6).join
|
||||
status = Trustie::Sms.send(mobile: params[:value], code: verification_code)
|
||||
if status
|
||||
VerificationCode.create(:phone => params[:value], :status => 1, :code_type => 5, :code => verification_code)
|
||||
VerificationCode.create(:phone => params[:value], :status => 1, :code_type => 4, :code => verification_code)
|
||||
end
|
||||
rescue => e
|
||||
Rails.logger.error "发送验证码出错: #{e}"
|
||||
|
|
@ -467,6 +470,7 @@ class AccountController < ApplicationController
|
|||
else
|
||||
@user.update_attributes(:mail => params[:value])
|
||||
end
|
||||
redirect_to security_settings_path
|
||||
end
|
||||
|
||||
def wechat_bind
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<div class="panel-user-right-con clearfix">
|
||||
<div class="panel-user-test mt30">
|
||||
<input type="hidden" id="change_type" value="<%= @type %>">
|
||||
<%= form_tag(bind_email_or_phone_path, :id => 'bind_email_or_phone_form') do %>
|
||||
<input type="hidden" name="type" id="change_type" value="<%= @type %>">
|
||||
<% if @type == 'phone' %>
|
||||
<h3 class="mb20 font-20"><i class="fa fa-mobile color-light-grey font-24 mr5"></i>手机绑定</h3>
|
||||
|
||||
|
|
@ -13,7 +13,7 @@
|
|||
<div class="new_login_form">
|
||||
<ul>
|
||||
<li class="new_loggin_users">
|
||||
<input type="text" id="user_phone_num" class="new_loggin_input" autocomplete="off" placeholder="请输入真实有效的11位手机号码">
|
||||
<input type="text" id="user_phone_num" name="value" class="new_loggin_input" autocomplete="off" placeholder="请输入真实有效的11位手机号码">
|
||||
<i class="fa font-16 mr5" id="user_phone_check"></i>
|
||||
<div class="new-login-error" style="display: none;">
|
||||
<p id="user_phone_notice"></p>
|
||||
|
|
@ -26,14 +26,15 @@
|
|||
</div>
|
||||
</li>
|
||||
<li class="pr">
|
||||
<input type="text" id="phone_verification_code" class="new_loggin_input_test fl" placeholder="输入短信验证码">
|
||||
<input type="text" id="phone_verification_code" class="new_loggin_input_test fl" placeholder="输入短信验证码">
|
||||
<a href="javascript:void(0);" class="fr task-btn-ver" id="get_verification_code">获取验证码</a>
|
||||
<div class="new-login-error" style="display: none;">
|
||||
<p id="phone_verification_code_notice"></p>
|
||||
</div>
|
||||
<div class="cl"></div>
|
||||
</li>
|
||||
<li><a href="javascript:void(0);" class="new-user-submit">保存</a></li>
|
||||
<p id="send_success_notice" class="none" style="margin-top: -15px; margin-bottom: 10px;"></p>
|
||||
<li><a href="javascript:void(0);" class="new-user-submit" id="bind_email_or_phone_form_submit">保存</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
|
@ -48,14 +49,20 @@
|
|||
<div class="new_login_form">
|
||||
<ul>
|
||||
<li class="new_loggin_users ">
|
||||
<input type="text" id="user_email_addr" class="new_loggin_input" placeholder="请输入真实有效的邮箱">
|
||||
<input type="text" id="user_email_addr" name="value" class="new_loggin_input" placeholder="请输入真实有效的邮箱">
|
||||
<i class="fa font-16 mr5" id="user_email_check"></i>
|
||||
<div class="new-login-error" style="display: none;">
|
||||
<p id="user_email_addr_notice"></p>
|
||||
<p id="user_phone_notice"></p>
|
||||
</div>
|
||||
</li>
|
||||
<li class=" ">
|
||||
<input type="text" class="new_loggin_input_test fl" placeholder="输入邮箱验证码">
|
||||
<li class="pr">
|
||||
<div id="drag" class="drag_slider"></div>
|
||||
<div class="new-login-error" style="display: none;">
|
||||
<p id="user_verification_notice"></p>
|
||||
</div>
|
||||
</li>
|
||||
<li class="pr">
|
||||
<input type="text" id="phone_verification_code" class="new_loggin_input_test fl" placeholder="输入邮箱验证码">
|
||||
<a href="javascript:void(0);" class="fr task-btn-ver" id="get_verification_code">获取验证码</a>
|
||||
<div class="new-login-error" style="display: none;">
|
||||
<p id="phone_verification_code_notice"></p>
|
||||
|
|
@ -63,7 +70,7 @@
|
|||
<div class="cl"></div>
|
||||
</li>
|
||||
<p id="send_success_notice" class="none" style="margin-top: -15px; margin-bottom: 10px;"></p>
|
||||
<li><a href="javascript:void(0);" class="new-user-submit">保存</a></li>
|
||||
<li><a href="javascript:void(0);" class="new-user-submit" id="bind_email_or_phone_form_submit">保存</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -16,11 +16,11 @@
|
|||
<% if @user.mail.blank? %>
|
||||
<li class="font-14 mt10 color-grey"><i class="fa fa-exclamation-circle color-orange mr5"></i>未绑定</li>
|
||||
<li class="font-14 mt10"> </li>
|
||||
<li><a href="<%= change_or_bind_path(:type => 'phone') %>" class="task-btn task-btn-blue">绑定</a></li>\
|
||||
<li><a href="<%= change_or_bind_path(:type => 'mail') %>" class="task-btn task-btn-blue">绑定</a></li>\
|
||||
<% else %>
|
||||
<li class="font-14 mt10 color-grey"><i class="fa fa-check-circle color-green mr5"></i>已绑定</li>
|
||||
<li class="font-14 mt10 t_l color-grey">您绑定的邮箱:<%= @user.user_mail %></li>
|
||||
<li><a href="<%= change_or_bind_path(:type => 'phone') %>" class="task-btn">更改</a></li>
|
||||
<li><a href="<%= change_or_bind_path(:type => 'mail') %>" class="task-btn">更改</a></li>
|
||||
<% end %>
|
||||
</ul>
|
||||
<!--<ul class="panel-user-setting-ul clearfix">-->
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
<h3 class="mb15 ml15 mt15">账户管理</h3>
|
||||
<li><a href="<%= my_account_path %>" id="account_setting_1">基本资料</a></li>
|
||||
<li><a href="<%= avatar_account_path %>" id="account_setting_2">修改头像</a></li>
|
||||
<li><a href="<%= authentication_account_path %>" id="account_setting_3">身份认证</a></li>
|
||||
<!--<li><a href="<%#= authentication_account_path %>" id="account_setting_3">身份认证</a></li>-->
|
||||
<li><a href="<%= security_settings_path %>" id="account_setting_4">安全设置</a></li>
|
||||
<li><a href="<%= change_psd_path %>" id="account_setting_5">修改密码</a></li>
|
||||
</ul>
|
||||
|
|
|
|||
|
|
@ -7,10 +7,10 @@
|
|||
<meta name="keywords" content="issue,bug,tracker" />
|
||||
<%= csrf_meta_tag %>
|
||||
<%= favicon %>
|
||||
<%= stylesheet_link_tag 'css/bigdata-showpage', 'css/font-awesome', 'css/bigdata-common', 'css/bigdata-login', 'css/bigdata-popup' %>
|
||||
<%= stylesheet_link_tag 'css/bigdata-showpage', 'css/font-awesome', 'css/bigdata-common', 'css/bigdata-login', 'css/bigdata-public', 'css/bigdata-popup' %>
|
||||
<%#= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %>
|
||||
<%= javascript_heads %>
|
||||
<%= javascript_include_tag "bootstrap", "bigdata" %>
|
||||
<%= javascript_include_tag "bootstrap", "bigdata", 'bigdata/application' %>
|
||||
</head>
|
||||
<body>
|
||||
<% if @welcome %>
|
||||
|
|
|
|||
|
|
@ -0,0 +1,2 @@
|
|||
<%= l(:mail_subject_bind_mail) %>
|
||||
<%= @url %>
|
||||
|
|
@ -139,7 +139,7 @@ function lost_psd_next(){
|
|||
if($lost_psd_valid){
|
||||
if($('.drag_text').html() == "验证通过"){
|
||||
if($("#psd_verification_code").val().trim() == ""){
|
||||
$("#psd_verification_code").html("请输入验证码");
|
||||
$("#phone_verification_code_notice").html("请输入验证码");
|
||||
$("#phone_verification_code_notice").parent().show();
|
||||
} else{
|
||||
$("#phone_verification_code_notice").html("");
|
||||
|
|
@ -264,60 +264,4 @@ function email_register(){
|
|||
$('#user_email_addr').blur();
|
||||
$('#user_password_2').blur();
|
||||
}
|
||||
}
|
||||
|
||||
(function($){
|
||||
$.fn.drag = function(options){
|
||||
var x, drag = this, isMove = false, defaults = {
|
||||
};
|
||||
var options = $.extend(defaults, options);
|
||||
//添加背景,文字,滑块
|
||||
var html = '<div class="drag_bg"></div>'+
|
||||
'<div class="drag_text" onselectstart="return false;" unselectable="on">拖动滑块验证</div>'+
|
||||
'<div class="handler handler_bg"></div>';
|
||||
this.append(html);
|
||||
|
||||
var handler = drag.find('.handler');
|
||||
var drag_bg = drag.find('.drag_bg');
|
||||
var text = drag.find('.drag_text');
|
||||
var maxWidth = drag.width() - handler.width(); //能滑动的最大间距
|
||||
|
||||
//鼠标按下时候的x轴的位置
|
||||
handler.mousedown(function(e){
|
||||
isMove = true;
|
||||
x = e.pageX - parseInt(handler.css('left'), 10);
|
||||
});
|
||||
|
||||
//鼠标指针在上下文移动时,移动距离大于0小于最大间距,滑块x轴位置等于鼠标移动距离
|
||||
$(document).mousemove(function(e){
|
||||
var _x = e.pageX - x;
|
||||
if(isMove){
|
||||
if(_x > 0 && _x <= maxWidth){
|
||||
handler.css({'left': _x});
|
||||
drag_bg.css({'width': _x});
|
||||
}else if(_x > maxWidth){ //鼠标指针移动距离达到最大时清空事件
|
||||
dragOk();
|
||||
}
|
||||
}
|
||||
}).mouseup(function(e){
|
||||
isMove = false;
|
||||
var _x = e.pageX - x;
|
||||
if(_x < maxWidth){ //鼠标松开时,如果没有达到最大距离位置,滑块就返回初始位置
|
||||
handler.css({'left': 0});
|
||||
drag_bg.css({'width': 0});
|
||||
}
|
||||
});
|
||||
|
||||
//清空事件
|
||||
function dragOk(){
|
||||
handler.removeClass('handler_bg').addClass('handler_ok_bg');
|
||||
text.text('验证通过');
|
||||
drag.css({'color': '#fff'});
|
||||
handler.unbind('mousedown');
|
||||
$(document).unbind('mousemove');
|
||||
$(document).unbind('mouseup');
|
||||
$("#user_verification_notice").html("");
|
||||
$('#user_verification_notice').parent().hide();
|
||||
}
|
||||
};
|
||||
})(jQuery);
|
||||
}
|
||||
|
|
@ -62,6 +62,7 @@ $(function(){
|
|||
$(function(){
|
||||
var $phone_correct = false;
|
||||
var $mail_correct = false;
|
||||
var lost_psd_time = 60;
|
||||
$("#user_phone_num").blur(function (event) {
|
||||
if ($(this).is('#user_phone_num')) {
|
||||
if (/^1\d{10}$/.test(this.value) == false){
|
||||
|
|
@ -72,7 +73,7 @@ $(function(){
|
|||
}
|
||||
else{
|
||||
$.get(
|
||||
'<%=account_valid_ajax_path%>',
|
||||
'/account/valid_ajax',
|
||||
{ valid: "phone",
|
||||
value: this.value },
|
||||
function (data) {
|
||||
|
|
@ -91,4 +92,150 @@ $(function(){
|
|||
}
|
||||
}
|
||||
});
|
||||
|
||||
$("#user_email_addr").blur(function (event) {
|
||||
if (/^[a-zA-Z0-9]+([._\\]*[a-z0-9])*@([a-z0-9]+[-a-z0-9]*[a-z0-9]+.){1,63}[a-z0-9]+$/.test(this.value) == false){
|
||||
$('#user_phone_notice').html('邮箱地址格式不对');
|
||||
$('#user_phone_notice').parent().show();
|
||||
$("#user_email_check").removeClass("fa-check").removeClass("color-light-green").addClass("fa-times-circle").addClass("color-orange");
|
||||
$mail_correct = false;
|
||||
return ;
|
||||
}
|
||||
if ($(this).is('#user_email_addr')) {
|
||||
$.get('/account/valid_ajax',
|
||||
{ valid: "mail",
|
||||
value: this.value },
|
||||
function (data) {
|
||||
if (data.valid) {
|
||||
$('#user_phone_notice').html('');
|
||||
$('#user_phone_notice').parent().hide();
|
||||
$("#user_email_check").removeClass("fa-times-circle").removeClass("color-orange").addClass("fa-check").addClass("color-light-green");
|
||||
$mail_correct = true;
|
||||
} else {
|
||||
$('#user_phone_notice').html('该邮箱已被绑定');
|
||||
$('#user_phone_notice').parent().show();
|
||||
$("#user_email_check").removeClass("fa-check").removeClass("color-light-green").addClass("fa-times-circle").addClass("color-orange");
|
||||
$mail_correct = false;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
$("#get_verification_code").on('click', function(){
|
||||
btn = this;
|
||||
if($mail_correct || $phone_correct){
|
||||
if($('.drag_text').html() == "验证通过") {
|
||||
btn.setAttribute("disabled", "disabled");
|
||||
var val = '';
|
||||
var type = 4;
|
||||
if($mail_correct){
|
||||
val = $("#user_email_addr").val().trim();
|
||||
type = 5;
|
||||
} else if($phone_correct){
|
||||
val = $("#user_phone_num").val().trim();
|
||||
type = 4;
|
||||
}
|
||||
|
||||
$.get(
|
||||
'/account/get_verification_code',
|
||||
{ value: val,
|
||||
type: type},
|
||||
function (data) {
|
||||
if (data.status == "2") {
|
||||
$('#user_phone_notice').html(data.msg);
|
||||
$('#user_phone_notice').parent().show();
|
||||
btn.removeAttribute("disabled");
|
||||
} else {
|
||||
$('#user_phone_notice').html('');
|
||||
$('#user_phone_notice').parent().hide();
|
||||
settime(btn);
|
||||
if(data.status == "3"){
|
||||
$("#ver_code_type").val(3);
|
||||
$("#send_success_notice").html("验证码已发送到您的邮箱,去<a href='http://mail." + data.link + "' style='color: #6a8abe; text-decoration: underline;' target='_blank'>查收</a>");
|
||||
$("#send_success_notice").show();
|
||||
} else{
|
||||
$("#ver_code_type").val(2);
|
||||
$("#send_success_notice").html("验证码已发送到您的手机,请注意查收");
|
||||
$("#send_success_notice").show();
|
||||
}
|
||||
}
|
||||
});
|
||||
} else{
|
||||
$("#user_verification_notice").html("请先拖动滑块完成验证");
|
||||
$('#user_verification_notice').parent().show();
|
||||
}
|
||||
} else{
|
||||
$('#user_phone_num').blur();
|
||||
$('#user_email_addr').blur();
|
||||
}
|
||||
});
|
||||
|
||||
$("#bind_email_or_phone_form_submit").on('click', function(){
|
||||
if($("#bind_email_or_phone_form_submit").hasClass('new_login_submit_disable')){
|
||||
console.log(1111);
|
||||
return;
|
||||
}
|
||||
console.log($mail_correct || $phone_correct);
|
||||
if($mail_correct || $phone_correct){
|
||||
if($('.drag_text').html() == "验证通过"){
|
||||
if($("#phone_verification_code").val().trim() == ""){
|
||||
$("#phone_verification_code_notice").html("请输入验证码");
|
||||
$("#phone_verification_code_notice").parent().show();
|
||||
} else{
|
||||
$("#phone_verification_code_notice").html("");
|
||||
$("#phone_verification_code_notice").parent().hide();
|
||||
var val = '';
|
||||
var type = 4;
|
||||
if($mail_correct){
|
||||
val = $("#user_email_addr").val().trim();
|
||||
type = 5;
|
||||
} else if($phone_correct){
|
||||
val = $("#user_phone_num").val().trim();
|
||||
type = 4;
|
||||
}
|
||||
$.get(
|
||||
'/account/valid_verification_code',
|
||||
{ phone: val,
|
||||
code: $("#phone_verification_code").val().trim(),
|
||||
type: type},
|
||||
function (data) {
|
||||
if (data.valid) {
|
||||
$("#phone_verification_code_notice").html("");
|
||||
$("#phone_verification_code_notice").parent().hide();
|
||||
$("#bind_email_or_phone_form_submit").addClass("new_login_submit_disable");
|
||||
$("#bind_email_or_phone_form").submit();
|
||||
} else {
|
||||
$("#phone_verification_code_notice").html("验证码错误或过期");
|
||||
$("#phone_verification_code_notice").parent().show();
|
||||
}
|
||||
});
|
||||
}
|
||||
} else{
|
||||
$("#user_verification_notice").html("请先拖动滑块完成验证");
|
||||
$('#user_verification_notice').parent().show();
|
||||
}
|
||||
} else{
|
||||
$('#user_phone_num').blur();
|
||||
$('#user_email_addr').blur();
|
||||
}
|
||||
});
|
||||
|
||||
function settime(btn){
|
||||
if (lost_psd_time==0) {
|
||||
$(btn).removeClass("rest-btn-ver");
|
||||
btn.removeAttribute("disabled");
|
||||
btn.innerHTML = "获取验证码";
|
||||
lost_psd_time = 60;
|
||||
return;
|
||||
}else{
|
||||
$(btn).addClass("rest-btn-ver");
|
||||
btn.setAttribute("disabled", "disabled");
|
||||
btn.innerHTML = lost_psd_time + "s后重试";
|
||||
lost_psd_time--;
|
||||
}
|
||||
setTimeout(function(){
|
||||
settime(btn);
|
||||
},1000);
|
||||
}
|
||||
|
||||
});
|
||||
|
|
@ -187,3 +187,59 @@ $(function(){
|
|||
$(".task-close").parent().remove();
|
||||
});
|
||||
});
|
||||
|
||||
(function($){
|
||||
$.fn.drag = function(options){
|
||||
var x, drag = this, isMove = false, defaults = {
|
||||
};
|
||||
var options = $.extend(defaults, options);
|
||||
//添加背景,文字,滑块
|
||||
var html = '<div class="drag_bg"></div>'+
|
||||
'<div class="drag_text" onselectstart="return false;" unselectable="on">拖动滑块验证</div>'+
|
||||
'<div class="handler handler_bg"></div>';
|
||||
this.append(html);
|
||||
|
||||
var handler = drag.find('.handler');
|
||||
var drag_bg = drag.find('.drag_bg');
|
||||
var text = drag.find('.drag_text');
|
||||
var maxWidth = drag.width() - handler.width(); //能滑动的最大间距
|
||||
|
||||
//鼠标按下时候的x轴的位置
|
||||
handler.mousedown(function(e){
|
||||
isMove = true;
|
||||
x = e.pageX - parseInt(handler.css('left'), 10);
|
||||
});
|
||||
|
||||
//鼠标指针在上下文移动时,移动距离大于0小于最大间距,滑块x轴位置等于鼠标移动距离
|
||||
$(document).mousemove(function(e){
|
||||
var _x = e.pageX - x;
|
||||
if(isMove){
|
||||
if(_x > 0 && _x <= maxWidth){
|
||||
handler.css({'left': _x});
|
||||
drag_bg.css({'width': _x});
|
||||
}else if(_x > maxWidth){ //鼠标指针移动距离达到最大时清空事件
|
||||
dragOk();
|
||||
}
|
||||
}
|
||||
}).mouseup(function(e){
|
||||
isMove = false;
|
||||
var _x = e.pageX - x;
|
||||
if(_x < maxWidth){ //鼠标松开时,如果没有达到最大距离位置,滑块就返回初始位置
|
||||
handler.css({'left': 0});
|
||||
drag_bg.css({'width': 0});
|
||||
}
|
||||
});
|
||||
|
||||
//清空事件
|
||||
function dragOk(){
|
||||
handler.removeClass('handler_bg').addClass('handler_ok_bg');
|
||||
text.text('验证通过');
|
||||
drag.css({'color': '#fff'});
|
||||
handler.unbind('mousedown');
|
||||
$(document).unbind('mousemove');
|
||||
$(document).unbind('mouseup');
|
||||
$("#user_verification_notice").html("");
|
||||
$('#user_verification_notice').parent().hide();
|
||||
}
|
||||
};
|
||||
})(jQuery);
|
||||
|
|
|
|||
|
|
@ -98,7 +98,8 @@ a.task-btn-ver-line{height:43px; line-height: 43px; border-radius:5px; font-siz
|
|||
a:hover.task-btn-ver-line{ border:1px solid #29bd8b;}
|
||||
a:hover.task-btn-ver{background:#5f7cab;}
|
||||
.new_login_submit_disable{ width:265px; height:40px; line-height: 40px; background:#ccc; color:#fff; font-size:14px; border-radius:5px; border:none; text-align:center; cursor:pointer; vertical-align: middle;}
|
||||
.new_login_submit{ width:100%; height:45px; line-height: 45px; background:#29bd8b; color:#fff; font-size:14px; border-radius:5px; border:none; text-align:center; cursor:pointer; vertical-align: middle;}
|
||||
.new_login_submit,a.new_login_submit{ display: block; text-decoration: none !important; width:100%; height:45px; line-height: 45px; background:#29bd8b; color:#fff !important; font-size:14px; border-radius:5px; border:none; text-align:center; cursor:pointer; vertical-align: middle;}
|
||||
.new_login_submit a{ color:#fff !important; text-decoration: none;}
|
||||
.new_login_submit:hover{background: #19b17e;}
|
||||
/*提示条*/
|
||||
.alert{ padding:10px;border: 1px solid transparent; text-align: center;}
|
||||
|
|
@ -126,4 +127,5 @@ a:hover.task-btn-ver{background:#5f7cab;}
|
|||
.break_word{word-break: break-all;word-wrap: break-word;}
|
||||
.break_word_firefox{white-space: pre-wrap !important;word-break: break-all;}
|
||||
|
||||
.pr {position:relative;}
|
||||
|
||||
|
|
|
|||
|
|
@ -139,10 +139,3 @@ a.shadowbox_news_all{ display:block; width:305px; height:40px; line-height:40px;
|
|||
.task-img-weixin{ width: 50px; height: 50px; border-radius:100px; background:#ccc; }
|
||||
.task-img-weixin:hover{ background:#86c610;}
|
||||
.new-login-success{ text-align: center;}
|
||||
|
||||
.drag_slider{ position: relative; background-color: #e8e8e8; width: 350px; height: 45px; line-height: 45px; text-align: center;}
|
||||
.drag_slider .handler{ position: absolute; top: 0px; left: 0px; width: 50px; height: 43px; border: 1px solid #ccc; cursor: move;}
|
||||
.handler_bg{ background: #fff url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTEyNTVEMURGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTEyNTVEMUNGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MTc5NzNmZS02OTQxLTQyOTYtYTIwNi02NDI2YTNkOWU5YmUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+YiRG4AAAALFJREFUeNpi/P//PwMlgImBQkA9A+bOnfsIiBOxKcInh+yCaCDuByoswaIOpxwjciACFegBqZ1AvBSIS5OTk/8TkmNEjwWgQiUgtQuIjwAxUF3yX3xyGIEIFLwHpKyAWB+I1xGSwxULIGf9A7mQkBwTlhBXAFLHgPgqEAcTkmNCU6AL9d8WII4HOvk3ITkWJAXWUMlOoGQHmsE45ViQ2KuBuASoYC4Wf+OUYxz6mQkgwAAN9mIrUReCXgAAAABJRU5ErkJggg==") no-repeat center;}
|
||||
.handler_ok_bg{ background: #fff url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDlBRDI3NjVGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDlBRDI3NjRGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDphNWEzMWNhMC1hYmViLTQxNWEtYTEwZS04Y2U5NzRlN2Q4YTEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+k+sHwwAAASZJREFUeNpi/P//PwMyKD8uZw+kUoDYEYgloMIvgHg/EM/ptHx0EFk9I8wAoEZ+IDUPiIMY8IN1QJwENOgj3ACo5gNAbMBAHLgAxA4gQ5igAnNJ0MwAVTsX7IKyY7L2UNuJAf+AmAmJ78AEDTBiwGYg5gbifCSxFCZoaBMCy4A4GOjnH0D6DpK4IxNSVIHAfSDOAeLraJrjgJp/AwPbHMhejiQnwYRmUzNQ4VQgDQqXK0ia/0I17wJiPmQNTNBEAgMlQIWiQA2vgWw7QppBekGxsAjIiEUSBNnsBDWEAY9mEFgMMgBk00E0iZtA7AHEctDQ58MRuA6wlLgGFMoMpIG1QFeGwAIxGZo8GUhIysmwQGSAZgwHaEZhICIzOaBkJkqyM0CAAQDGx279Jf50AAAAAABJRU5ErkJggg==") no-repeat center;}
|
||||
.drag_slider .drag_bg{ background-color: #29bd8b; height: 45px; width: 0px;}
|
||||
.drag_slider .drag_text{ position: absolute; top: 0px; width: 350px; -moz-user-select: none; -webkit-user-select: none; user-select: none; -o-user-select:none; -ms-user-select:none;}
|
||||
|
|
|
|||
|
|
@ -189,4 +189,12 @@ input.task-height-150,textarea.task-height-150,.task-height-100{height:100px;}
|
|||
.my_account_info li a{ color: #888;}
|
||||
.my_account_info font{ border: 1px solid #dddddd; display: block; border-width: 8px; position: absolute; top: -15px;left: 140px; border-style:solid; border-color: transparent transparent #fff transparent;font-size: 0;line-height: 0; box-shadow:2px rgba(146, 153, 169, 0.5); }
|
||||
.my_account_info li{ padding-left: 5px; line-height: 1.5;}
|
||||
.li_bottom_border{ border-bottom:1px solid #eee;}
|
||||
.li_bottom_border{ border-bottom:1px solid #eee;}
|
||||
|
||||
/*滑块验证*/
|
||||
.drag_slider{ position: relative; background-color: #e8e8e8; width: 350px; height: 45px; line-height: 45px; text-align: center;}
|
||||
.drag_slider .handler{ position: absolute; top: 0px; left: 0px; width: 50px; height: 43px; border: 1px solid #ccc; cursor: move;}
|
||||
.handler_bg{ background: #fff url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTEyNTVEMURGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTEyNTVEMUNGMkVFMTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2MTc5NzNmZS02OTQxLTQyOTYtYTIwNi02NDI2YTNkOWU5YmUiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+YiRG4AAAALFJREFUeNpi/P//PwMlgImBQkA9A+bOnfsIiBOxKcInh+yCaCDuByoswaIOpxwjciACFegBqZ1AvBSIS5OTk/8TkmNEjwWgQiUgtQuIjwAxUF3yX3xyGIEIFLwHpKyAWB+I1xGSwxULIGf9A7mQkBwTlhBXAFLHgPgqEAcTkmNCU6AL9d8WII4HOvk3ITkWJAXWUMlOoGQHmsE45ViQ2KuBuASoYC4Wf+OUYxz6mQkgwAAN9mIrUReCXgAAAABJRU5ErkJggg==") no-repeat center;}
|
||||
.handler_ok_bg{ background: #fff url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA3hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNS1jMDIxIDc5LjE1NTc3MiwgMjAxNC8wMS8xMy0xOTo0NDowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo0ZDhlNWY5My05NmI0LTRlNWQtOGFjYi03ZTY4OGYyMTU2ZTYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDlBRDI3NjVGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDlBRDI3NjRGMkQ2MTFFNEI5NDBCMjQ2M0ExMDQ1OUYiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTQgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDphNWEzMWNhMC1hYmViLTQxNWEtYTEwZS04Y2U5NzRlN2Q4YTEiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NGQ4ZTVmOTMtOTZiNC00ZTVkLThhY2ItN2U2ODhmMjE1NmU2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+k+sHwwAAASZJREFUeNpi/P//PwMyKD8uZw+kUoDYEYgloMIvgHg/EM/ptHx0EFk9I8wAoEZ+IDUPiIMY8IN1QJwENOgj3ACo5gNAbMBAHLgAxA4gQ5igAnNJ0MwAVTsX7IKyY7L2UNuJAf+AmAmJ78AEDTBiwGYg5gbifCSxFCZoaBMCy4A4GOjnH0D6DpK4IxNSVIHAfSDOAeLraJrjgJp/AwPbHMhejiQnwYRmUzNQ4VQgDQqXK0ia/0I17wJiPmQNTNBEAgMlQIWiQA2vgWw7QppBekGxsAjIiEUSBNnsBDWEAY9mEFgMMgBk00E0iZtA7AHEctDQ58MRuA6wlLgGFMoMpIG1QFeGwAIxGZo8GUhIysmwQGSAZgwHaEZhICIzOaBkJkqyM0CAAQDGx279Jf50AAAAAABJRU5ErkJggg==") no-repeat center;}
|
||||
.drag_slider .drag_bg{ background-color: #29bd8b; height: 45px; width: 0px;}
|
||||
.drag_slider .drag_text{ position: absolute; top: 0px; width: 350px; -moz-user-select: none; -webkit-user-select: none; user-select: none; -o-user-select:none; -ms-user-select:none;}
|
||||
|
|
|
|||
|
|
@ -124,7 +124,7 @@
|
|||
.-task-desc div{position: absolute;top: 10px;right: -7px;}
|
||||
|
||||
/* 个人资料 20170324byLB */
|
||||
.panel-user-left{ width:20%; min-width:240px; background:#eaebec; height:90%;}
|
||||
.panel-user-left{ width:20%; min-width:240px; background:#eaebec; height:600px;}
|
||||
.panel-user-right{width:80%; background:#fff;}
|
||||
.panel-user-info{ width:100%; height:240px; }
|
||||
.panel-user-img img{ display: block; width:240px; height:240px;}
|
||||
|
|
|
|||
Loading…
Reference in New Issue