From d25971f546b4a2c7b731d9d0bc71b929f2a15aa6 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 25 Aug 2015 14:24:20 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E7=99=BB=E9=99=86=E7=95=8C=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/controllers/account_controller.rb | 9 +- app/views/account/login.html.erb | 321 +++++++++++++++++++------- app/views/layouts/login.html.erb | 151 ++---------- public/stylesheets/new_public.css | 5 +- 4 files changed, 268 insertions(+), 218 deletions(-) diff --git a/app/controllers/account_controller.rb b/app/controllers/account_controller.rb index 0e2f9569c..02736346c 100644 --- a/app/controllers/account_controller.rb +++ b/app/controllers/account_controller.rb @@ -27,8 +27,9 @@ class AccountController < ApplicationController if request.get? if User.current.logged? redirect_to home_url + else + render :layout => 'login' end - # render :layout => 'login' else authenticate_user end @@ -129,10 +130,12 @@ class AccountController < ApplicationController end when '3' #register_automatically(@user) - unless @user.new_record? + if !@user.new_record? self.logged_user = @user flash[:notice] = l(:notice_account_activated) redirect_to my_account_url + else + redirect_to signin_path end else #register_manually_by_administrator(@user) @@ -355,11 +358,13 @@ class AccountController < ApplicationController def invalid_credentials logger.warn "Failed login for '#{params[:username]}' from #{request.remote_ip} at #{Time.now.utc}" flash.now[:error] = l(:notice_account_invalid_creditentials) + render :layout => 'login' end def invalid_credentials_new logger.warn "Failed login for '#{params[:username]}' from #{request.remote_ip} at #{Time.now.utc}" flash.now[:error] = l(:notice_account_invalid_creditentials_new) + render :layout => 'login' end # Register a user for email activation. diff --git a/app/views/account/login.html.erb b/app/views/account/login.html.erb index bb289eb03..93ac9fba7 100644 --- a/app/views/account/login.html.erb +++ b/app/views/account/login.html.erb @@ -1,17 +1,49 @@ -<% @nav_dispaly_home_path_label = 1 - @nav_dispaly_main_course_label = 1 - @nav_dispaly_main_project_label = 1 - @nav_dispaly_main_contest_label = 1 %> -<% @nav_dispaly_forum_label = 1%> -<%= call_hook :view_account_login_top %> +<%= stylesheet_link_tag 'new_public'%> +<%= stylesheet_link_tag 'leftside'%> - - - - - -
-<%= form_tag(signin_path) do %> -<%= back_url_hidden_field_tag %> - - - - - - - - - -<% if Setting.openid? %> - - - - -<% end %> - - - - - - - -
- - - <%= text_field_tag 'username', params[:username], :tabindex => '1' , :value => "#{l(:label_login_prompt)}", - :onfocus => "clearInfo('username','#{l(:label_login_prompt)}')", - :onblur => "showInfo('username','#{l(:label_login_prompt)}')", - :style => "resize: none;font-size: 12px;color: #818283;"%> -
- - - <%= password_field_tag 'password', nil, :tabindex => '2' %> -
- - - <%= text_field_tag "openid_url", nil, :tabindex => '3' %> -
- <% if Setting.autologin? %> - - <% end %> -
- - - <% if Setting.lost_password? %> - <%= link_to l(:label_password_lost), lost_password_path %> - <% end %> - - - -
-<% end %> -
-<%= call_hook :view_account_login_bottom %> -<% if params[:username].present? %> -<%= javascript_tag "$('#password').focus();" %> -<% else %> -<%= javascript_tag "$('#username').focus();" %> -<% end %> + function login(){ + $('#main_login_form').submit(); //表单提交没有任何反应的原因:js冲突 + } + + function register(){ + if($login_correct && $mail_correct && $passwd_correct && $passwd_comfirm_correct){ + $("#main_reg_form").submit(); + }else{ + $('#user_login').blur(); + $('#user_mail').blur(); + $('#user_password').blur(); + $('#user_password_confirmation').blur(); + } + } + var $login_correct = false; + var $mail_correct = false; + var $passwd_correct = false; + var $passwd_comfirm_correct = false; + jQuery(document).ready(function () { + var $login = $('#user_login') + var $mail = $('#user_mail') + var $password = $('#user_password') + var $password_confirmation = $('#user_password_confirmation') + $login.blur(function (event) { + if ($(this).is('#user_login')) { + $.get( + '<%=account_valid_ajax_path%>', + { valid: "login", + value: this.value }, + function (data) { + if (data.valid) { + $('#login_req').html(''+data.message+''); + $login_correct = true; + } else { + $('#login_req').html( ''+data.message+''); + $login_correct = false; + } + $('#login_req').css('display','block'); + }); + } + ; + }); + + $mail.blur(function (event) { + if ($(this).is('#user_mail')) { + $.get('<%=account_valid_ajax_path%>', + { valid: "mail", + value: this.value }, + function (data) { + if (data.valid) { + $('#mail_req').html( ''+data.message+'' ); + $mail_correct = true; + } else { + $('#mail_req').html( ''+data.message+'' ); + $mail_correct = false; + } + $('#mail_req').css('display','block'); + }); + } + ; + }); + $password.blur(function () { + var pas1 = document.getElementById("user_password").value; + var password_min_length = <%= Setting.password_min_length.to_i %> + if (pas1.length >= password_min_length) { + $('#passwd_req').html(''); + $passwd_correct = true; + } + else { + $('#passwd_req').html( ''+'<%= l(:setting_password_min_length_limit, :count => Setting.password_min_length.to_i) %>'+''); + $passwd_correct = false; + } + $('#passwd_req').css('display','block'); + + + }); + $password_confirmation.blur(function () { + var password_min_length = <%= Setting.password_min_length.to_i %> + var pas1 = document.getElementById("user_password").value; + var pas2 = document.getElementById("user_password_confirmation").value; + if (pas1.length >= password_min_length && pas1 == pas2 ) { + $('#confirm_req').html(''+'<%= l(:setting_password_success) %>'+''); + $passwd_comfirm_correct = true; + } + else { + $('#confirm_req').html(''+'<%= l(:setting_password_error) %>'+''); + $passwd_comfirm_correct = false; + + } + $('#confirm_req').css('display','block'); + + + + }); + }); + +
+
+
+ +
欢迎加入Trustie高校创新实践社区,老师、学生和科研人员可以在此开展各种在线协同学习、协同作业、协同开发等活动。Trustie是在中国推行大规模开放在线研究模式(MOORE)的支撑平台。
+
+
+
+
+
    +
  • 登陆
  • +
  • +
+
+ +
+ <%= form_tag(signin_path,:id=>'main_login_form',:method=>'post') do %> + <%= back_url_hidden_field_tag %> +
+ <%= text_field_tag 'username', params[:username], :tabindex => '1' , + :class=>'loginSignBox',:placeholder=>'请输入邮箱地址或昵称'%> + +
+ <% if Setting.openid? %> +
+ <%= text_field_tag "openid_url", nil, :tabindex => '3',:placeholder=>'请输入OpenId URL' %> +
+ <% end %> +
+ + <%= password_field_tag 'password', nil, :tabindex => '2',:class=>'loginSignBox' ,:placeholder=>'请输密码'%> +
+
+ <% if Setting.autologin? %> +
+ <%= check_box_tag 'autologin', 1, true, :tabindex => 4 %> +
+ <%= l(:label_stay_logged_in) %> + <% end %> + + <% if Setting.lost_password? %> + 忘记密码? + <% end %> +
+ <% end %> +
+ 登陆 +
+ +
+ +
+
+
+
    +
  • 注册<%= link_to l(:label_login_with_open_id_option), signin_url if Setting.openid? %> +
  • +
+
+
+ <%= form_for :user, :url => register_path,:method=>'post',:html=>{:id=>'main_reg_form'} do |f| %> + <%= error_messages_for 'user' %> +
+ + <%= f.text_field :mail,:size => 25, :class=>'loginSignBox' ,:placeholder=>"请输入邮箱地址"%> + +
+
+ + <%= f.password_field :password, :size => 25,:placeholder=>"请输入密码",:class=>'loginSignBox' %> + +
+
+ + <%= f.password_field :password_confirmation, :size => 25,:placeholder=>"请再次输入密码",:class=>'loginSignBox' %> + +
+
+ + <%= f.text_field :login, :size => 25,:placeholder=>"请输入用户昵称",:class=>'loginSignBox'%> + +
+
+ 注册 + +
+ <% end %> +
+
+
+
+
+
diff --git a/app/views/layouts/login.html.erb b/app/views/layouts/login.html.erb index a0e7f909c..e766b27d0 100644 --- a/app/views/layouts/login.html.erb +++ b/app/views/layouts/login.html.erb @@ -1,131 +1,28 @@ - <%= stylesheet_link_tag 'new_public'%> - <%= stylesheet_link_tag 'leftside'%> + + + + + <%= h html_title %> + + + <%= csrf_meta_tag %> + <%= favicon %> + <%= stylesheet_link_tag 'jquery/jquery-ui-1.9.2', 'new_public', 'user_leftside', :media => 'all' %> + <%= stylesheet_link_tag 'rtl', :media => 'all' if l(:direction) == 'rtl' %> <%= javascript_heads %> - <%= javascript_include_tag 'javascripts/jquery-1.3.2' %> - <%= javascript_include_tag 'bootstrap' %> - + <%= javascript_include_tag "bootstrap","avatars","new_user"%> + <%= heads_for_theme %> + <%= call_hook :view_layouts_base_html_head %> + <%= yield :header_tags -%> + -
-
-
- -
欢迎加入Trustie高校创新实践社区,老师、学生和科研人员可以在此开展各种在线协同学习、协同作业、协同开发等活动。Trustie是在中国推行大规模开放在线研究模式(MOORE)的支撑平台。
-
-
-
-
-
    -
  • 登陆
  • -
  • -
-
-
-
- -
-
- -
- - -
-
-
-
-
    -
  • 注册 -
  • -
-
-
-
- -
请输入有效邮箱地址
-
-
- -
至少需要 6 个字符
-
-
- -
-
- -
用户昵称为2-18个中英文,数字或下划线
-
- -
-
-
-
-
+ <% is_current_user = User.current.logged? && User.current == @user%> + <% if User.current.logged? %> + <%= render :partial => 'layouts/logined_header' %> + <% else%> + <%= render :partial => 'layouts/unlogin_header' %> + <% end%>
+<%= render_flash_messages %> +<%= yield %> diff --git a/public/stylesheets/new_public.css b/public/stylesheets/new_public.css index c2cc7d719..7878f5bb0 100644 --- a/public/stylesheets/new_public.css +++ b/public/stylesheets/new_public.css @@ -124,6 +124,7 @@ a.c_blue{ color:#15bccf;} a.c_dblue{ color:#09658c;} a:hover.c_dblue{ color:#15bccf;} a.c_white{ color:#fff;} +input.c_white { color:#fff} a.c_dorange{ color:#fd6e2a;} a.c_dark{color: #3e4040;} a:hover.c_dark{color: #3ca5c6;} @@ -612,7 +613,9 @@ a.loginChooseTab {color:#484848; height:30px; display:block;} .loginSignBox {width:308px; height:38px; margin-left:46px; border:1px solid #98a1a6; outline:none;} .loginSignOption {margin-left:46px; margin-top:15px;} .loginIn {width:405px; background-color:#ffffff; padding-bottom:30px;} -.loginSignAlert {font-size:12px; color:#fc0000; margin-left:60px;} +.loginSignAlert {font-size:12px; margin-left:60px;} +.loginSignRow {height:60px; min-height:60px;} + From 725143b89455678845e9f7c7e9dc87ab780f9431 Mon Sep 17 00:00:00 2001 From: lizanle <491823689@qq.com> Date: Tue, 25 Aug 2015 14:51:07 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E7=99=BB=E9=99=86=E7=95=8C=E9=9D=A2=20?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E4=BF=A1=E6=81=AF=E6=8F=90=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/views/account/login.html.erb | 5 ++++- app/views/layouts/login.html.erb | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/app/views/account/login.html.erb b/app/views/account/login.html.erb index 93ac9fba7..4b822a616 100644 --- a/app/views/account/login.html.erb +++ b/app/views/account/login.html.erb @@ -157,13 +157,16 @@
+
  • 登陆
- +
<%= flash.empty? ? "" : flash[:error].html_safe %>
+
+ <%= form_tag(signin_path,:id=>'main_login_form',:method=>'post') do %> <%= back_url_hidden_field_tag %>
diff --git a/app/views/layouts/login.html.erb b/app/views/layouts/login.html.erb index e766b27d0..0349caf13 100644 --- a/app/views/layouts/login.html.erb +++ b/app/views/layouts/login.html.erb @@ -24,5 +24,5 @@ <%= render :partial => 'layouts/unlogin_header' %> <% end%>
-<%= render_flash_messages %> + <%= yield %>