Merge branch 'yuanke_org' into develop
Conflicts: db/schema.rb
This commit is contained in:
commit
dfd381fc99
7
Gemfile
7
Gemfile
|
@ -9,12 +9,11 @@ unless RUBY_PLATFORM =~ /w32/
|
||||||
gem "rmagick", "= 2.13.1" ## centos yum install ImageMagick-devel
|
gem "rmagick", "= 2.13.1" ## centos yum install ImageMagick-devel
|
||||||
end
|
end
|
||||||
gem 'certified'
|
gem 'certified'
|
||||||
|
gem 'net-ssh', '2.9.1'
|
||||||
|
gem 'jenkins_api_client'
|
||||||
|
gem 'nokogiri'
|
||||||
end
|
end
|
||||||
|
|
||||||
gem 'net-ssh', '2.9.1'
|
|
||||||
gem 'jenkins_api_client'
|
|
||||||
gem 'nokogiri'
|
|
||||||
|
|
||||||
gem 'wechat',path: 'lib/wechat'
|
gem 'wechat',path: 'lib/wechat'
|
||||||
gem 'grack', path:'lib/grack'
|
gem 'grack', path:'lib/grack'
|
||||||
gem 'gitlab', path: 'lib/gitlab-cli'
|
gem 'gitlab', path: 'lib/gitlab-cli'
|
||||||
|
|
|
@ -239,14 +239,22 @@ class AccountController < ApplicationController
|
||||||
|
|
||||||
end
|
end
|
||||||
def resendmail
|
def resendmail
|
||||||
|
status = 1
|
||||||
user = User.find(params[:user]) if params[:user]
|
user = User.find(params[:user]) if params[:user]
|
||||||
token = Token.new(:user => user, :action => "register")
|
token = Token.new(:user => user, :action => "register")
|
||||||
if token.save
|
if token.save
|
||||||
Mailer.run.register(token)
|
# Mailer.run.register(token)
|
||||||
|
Mailer.register(token).deliver
|
||||||
else
|
else
|
||||||
yield if block_given?
|
yield if block_given?
|
||||||
|
status = 0
|
||||||
end
|
end
|
||||||
|
render :json => status
|
||||||
|
end
|
||||||
|
|
||||||
|
def email_activation
|
||||||
|
|
||||||
|
|
||||||
end
|
end
|
||||||
private
|
private
|
||||||
|
|
||||||
|
@ -264,6 +272,7 @@ class AccountController < ApplicationController
|
||||||
if user.nil?
|
if user.nil?
|
||||||
invalid_credentials
|
invalid_credentials
|
||||||
elsif user.status == 2
|
elsif user.status == 2
|
||||||
|
@user = user
|
||||||
invalid_credentials_new
|
invalid_credentials_new
|
||||||
elsif user.new_record?
|
elsif user.new_record?
|
||||||
onthefly_creation_failed(user, {:login => user.login, :auth_source_id => user.auth_source_id })
|
onthefly_creation_failed(user, {:login => user.login, :auth_source_id => user.auth_source_id })
|
||||||
|
@ -375,8 +384,9 @@ class AccountController < ApplicationController
|
||||||
|
|
||||||
def invalid_credentials_new
|
def invalid_credentials_new
|
||||||
logger.warn "Failed login for '#{params[:username]}' from #{request.remote_ip} at #{Time.now.utc}"
|
logger.warn "Failed login for '#{params[:username]}' from #{request.remote_ip} at #{Time.now.utc}"
|
||||||
flash[:error] = l(:notice_account_invalid_creditentials_new)
|
# flash[:error] = l(:notice_account_invalid_creditentials_new)
|
||||||
render signin_path(:login=>true)
|
# render signin_path(:login=>true)
|
||||||
|
render :action => 'email_activation'
|
||||||
end
|
end
|
||||||
|
|
||||||
# Register a user for email activation.
|
# Register a user for email activation.
|
||||||
|
|
|
@ -127,12 +127,14 @@ class MyController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
@user.safe_attributes = params[:user]
|
@user.safe_attributes = params[:user]
|
||||||
|
@user.lastname = params[:lastname]
|
||||||
|
@user.firstname = ""
|
||||||
@user.pref.attributes = params[:pref]
|
@user.pref.attributes = params[:pref]
|
||||||
@user.pref[:no_self_notified] = (params[:no_self_notified] == '1')
|
@user.pref[:no_self_notified] = (params[:no_self_notified] == '1')
|
||||||
#@user.login = params[:login]
|
#@user.login = params[:login]
|
||||||
unless @user.user_extensions.nil?
|
unless @user.user_extensions.nil?
|
||||||
if @user.user_extensions.identity == 2
|
if @user.user_extensions.identity == 2
|
||||||
@user.firstname = params[:enterprise_name]
|
# @user.firstname = params[:enterprise_name]
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -144,7 +146,7 @@ class MyController < ApplicationController
|
||||||
# end
|
# end
|
||||||
@se.school_id = params[:occupation]
|
@se.school_id = params[:occupation]
|
||||||
|
|
||||||
@se.gender = params[:gender]
|
@se.gender = params[:sex]
|
||||||
@se.location = params[:province] if params[:province]
|
@se.location = params[:province] if params[:province]
|
||||||
@se.location_city = params[:city] if params[:city]
|
@se.location_city = params[:city] if params[:city]
|
||||||
@se.identity = params[:identity].to_i if params[:identity]
|
@se.identity = params[:identity].to_i if params[:identity]
|
||||||
|
|
|
@ -150,4 +150,55 @@ class SchoolController < ApplicationController
|
||||||
format.js
|
format.js
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#申请高校(单位) name:名称 province:省 city:市 address:地址 remarks:备注
|
||||||
|
def apply_add_school
|
||||||
|
|
||||||
|
data = {result:0,name:params[:name],school_id:0}
|
||||||
|
#0 成功 1参数错误 2名称已存在
|
||||||
|
data[:result] = 0
|
||||||
|
|
||||||
|
#检验参数
|
||||||
|
if params[:name] == "" || params[:province] == "" || params[:city] == "" || params[:address] == ""
|
||||||
|
data[:result] = 1
|
||||||
|
else
|
||||||
|
school_id = School.find_by_sql("select id from schools where name='#{params[:name]}'").first
|
||||||
|
if school_id
|
||||||
|
data[:result] = 2
|
||||||
|
else
|
||||||
|
school = School.new
|
||||||
|
school.name = params[:name].strip
|
||||||
|
school.pinyin = Pinyin.t(params[:name].strip, splitter: '')
|
||||||
|
school.save
|
||||||
|
|
||||||
|
#status 0未处理 1通过 2拒绝
|
||||||
|
applyschool = ApplyAddSchools.new
|
||||||
|
applyschool.school_id = school.id
|
||||||
|
applyschool.name = school.name
|
||||||
|
applyschool.province = params[:province]
|
||||||
|
applyschool.city = params[:city]
|
||||||
|
applyschool.address = params[:address]
|
||||||
|
applyschool.remarks = params[:remarks]
|
||||||
|
applyschool.save
|
||||||
|
|
||||||
|
data[:school_id] = school.id
|
||||||
|
end
|
||||||
|
end
|
||||||
|
render :json =>data
|
||||||
|
end
|
||||||
|
|
||||||
|
def search_repeat_schoolname
|
||||||
|
status = 0
|
||||||
|
name = params[:name]
|
||||||
|
|
||||||
|
if name
|
||||||
|
school_id = School.find_by_sql("select id from schools where name='#{name}'").first
|
||||||
|
|
||||||
|
if school_id
|
||||||
|
status = 1
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
render :json =>status
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -1248,6 +1248,12 @@ class UsersController < ApplicationController
|
||||||
render :layout=>'new_base_user'
|
render :layout=>'new_base_user'
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#给某人留言
|
||||||
|
def feedBackTo
|
||||||
|
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
def user_comments
|
def user_comments
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
|
@ -338,6 +338,27 @@ class WordsController < ApplicationController
|
||||||
redirect_to user_url(user.id)
|
redirect_to user_url(user.id)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
#邮箱激活问题留言 留言成功给出提示框
|
||||||
|
def leave_email_activation_message
|
||||||
|
status = 1 #成功
|
||||||
|
me = User.find(params[:user])
|
||||||
|
if me
|
||||||
|
#课程使者id=1
|
||||||
|
@user = User.find(1)
|
||||||
|
if params[:text].size>0 && @user
|
||||||
|
# @user.add_jour(me, params[:text])
|
||||||
|
#私信
|
||||||
|
message = "<span style='color:red;'>【未收到激活邮件的用户反馈,用户邮箱:"+me.mail+"】</span><br>"+params[:text]
|
||||||
|
@user.journals_for_messages << JournalsForMessage.new(:user_id => me.id, :notes => message, :reply_id => 0, :status => true, :is_readed => false, :private => 1)
|
||||||
|
else
|
||||||
|
status = 0
|
||||||
|
end
|
||||||
|
render :json => status
|
||||||
|
else
|
||||||
|
render_403
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
def find_user
|
def find_user
|
||||||
|
|
|
@ -0,0 +1,3 @@
|
||||||
|
class ApplyAddSchools < ActiveRecord::Base
|
||||||
|
attr_accessible :address, :city, :name, :province, :remarks, :school_id, :status
|
||||||
|
end
|
|
@ -0,0 +1,52 @@
|
||||||
|
<div class="new_content">
|
||||||
|
<div class="email_verify">
|
||||||
|
<p class="email_verify_prompt"><span class="icons_email_prompt"></span>您的账号尚未激活,请先进入您的注册邮箱,激活您的账号。</p>
|
||||||
|
<button class="email_verify_btn mt30 ml30" onclick = "resendMail('<%= resendmail_path(@user) %>','<%= @user.id %>');">重新发送激活邮件</button>
|
||||||
|
<%#= link_to l(:label_mail_resend), { :controller => 'account', :action => 'resendmail',:user => @user}, :class=>"email_verify_btn mt30 ml30", :remote => true, :method => 'get' %>
|
||||||
|
<ul class="email_prompt_txt ml30 mt30">
|
||||||
|
<p class="email_prompt_p">如果您尚未收到激活邮件,请按照以下步骤操作:</p>
|
||||||
|
<li>检查邮箱的“订阅邮件”、“垃圾邮件”,可能会发现激活邮件。 </li>
|
||||||
|
<li>如果激活邮件已无效,请点击重新发送激活邮件按钮。</li>
|
||||||
|
<li>如果您无法收到激活邮件,请您直接给我们管理员留言:</li>
|
||||||
|
<div class=" mt10">
|
||||||
|
<textarea style="resize: none;" class="email_prompt_mes" placeholder="请管理员尽快帮我解决邮箱激活问题"></textarea>
|
||||||
|
<button class="email_sub_btn fr" onclick="leave_email_activation_message('<%= leave_email_activation_message_path(1)%>','<%= @user.id %>');">确定</button>
|
||||||
|
<div class="cl"></div>
|
||||||
|
</div>
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script type="text/javascript">
|
||||||
|
function resendMail(url,id)
|
||||||
|
{
|
||||||
|
$.get(
|
||||||
|
url,
|
||||||
|
{user: id },
|
||||||
|
function (data) {
|
||||||
|
console.log("1111111111");
|
||||||
|
console.log(data);
|
||||||
|
$(".email_verify_btn").replaceWith("<p class='email_verify_p mt30 ml30'>激活邮件已发送至您的注册邮箱,请及时登录邮箱进行验证。</p>");
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
function leave_email_activation_message(url,user)
|
||||||
|
{
|
||||||
|
if ($(".email_prompt_mes").val().length == 0){
|
||||||
|
//弹框请他输入文字
|
||||||
|
var htmlvalue = "</br><div style='width:550px;text-align:center'>您的留言不能为空</div></br><div style='width:67px; margin:0 auto; text-align:center'><a href='javascript:void(0);' class='Blue-btn' onclick='hideModal()'>确定</a></div>";
|
||||||
|
pop_up_box(htmlvalue,580,30,50);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
$.get(
|
||||||
|
url,
|
||||||
|
{user:user,text:$(".email_prompt_mes").val() },
|
||||||
|
function (data) {
|
||||||
|
console.log("2222222");
|
||||||
|
console.log(data);
|
||||||
|
var htmlvalue = "<div class='email_tancon'><h2 class='email_tan_title'>您的留言已发送</h2><p class='email_tan_p'>我们将尽快处理好,并通过邮件通知您。感谢您的反馈!</p></div>"
|
||||||
|
pop_up_box(htmlvalue,580,30,50);
|
||||||
|
$(".email_prompt_mes").val("");
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -1,127 +0,0 @@
|
||||||
<% @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%>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- end -->
|
|
||||||
|
|
||||||
<h3><%= l(:label_register) %> <%= link_to l(:label_login_with_open_id_option), signin_url if Setting.openid? %></h3>
|
|
||||||
|
|
||||||
<%= labelled_form_for @user, :url => register_path do |f| %>
|
|
||||||
<%= error_messages_for 'user' %>
|
|
||||||
<div class="box tabular">
|
|
||||||
|
|
||||||
<% if @user.auth_source_id.nil? %>
|
|
||||||
<p><%= f.text_field :login, :size => 25, :required => true %><span id="valid_user_login"></span>
|
|
||||||
<em class="info" style="color: #acaeb1"><%= l(:label_max_number) %></em>
|
|
||||||
</p>
|
|
||||||
<p><%= f.password_field :password, :size => 25, :required => true %><span id="valid_user_password"></span>
|
|
||||||
<em class="info" style="color: #acaeb1"><%= l(:text_caracters_minimum, :count => Setting.password_min_length) %></em>
|
|
||||||
</p>
|
|
||||||
<p><%= f.password_field :password_confirmation, :size => 25, :required => true %><span id="valid_password" style="padding-left: 10px;"></span></p>
|
|
||||||
<% end %>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<%= f.text_field :mail,:size => 25, :required => true %>
|
|
||||||
<span id="valid_user_mail" ></span>
|
|
||||||
</p>
|
|
||||||
<p>
|
|
||||||
<em class="info" style="color: #acaeb1">
|
|
||||||
<p><%= "#{l(:label_mail_attention)} " %></p>
|
|
||||||
<p><%= "#{l(:label_mail_attention1)} " %></p>
|
|
||||||
</em>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- end -->
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
<table>
|
|
||||||
<tr>
|
|
||||||
<td><%= submit_tag l(:button_submit) %></td>
|
|
||||||
</tr>
|
|
||||||
</table>
|
|
||||||
</p>
|
|
||||||
<% end %>
|
|
||||||
<% if Setting.openid? %>
|
|
||||||
<p><%= f.text_field :identity_url %></p>
|
|
||||||
<% end %>
|
|
||||||
<% @user.custom_field_values.select { |v| v.editable? || v.required? }.each do |value| %>
|
|
||||||
<p><%= custom_field_tag_with_label :user, value %></p>
|
|
||||||
<% end %>
|
|
||||||
</div>
|
|
||||||
<% password_min_length = Setting.password_min_length %>
|
|
||||||
<script type="text/javascript">
|
|
||||||
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) {
|
|
||||||
$('#valid_user_login').html('<span class="green">' + data.message + "</span>");
|
|
||||||
} else {
|
|
||||||
$('#valid_user_login').html('<span class="red">' + data.message + "</span>");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
;
|
|
||||||
});
|
|
||||||
|
|
||||||
$mail.blur(function (event) {
|
|
||||||
if ($(this).is('#user_mail')) {
|
|
||||||
$.get('<%=account_valid_ajax_path%>',
|
|
||||||
{ valid: "mail",
|
|
||||||
value: this.value },
|
|
||||||
function (data) {
|
|
||||||
if (data.valid) {
|
|
||||||
$('#valid_user_mail').html('<span class="green">' + data.message + "</span>");
|
|
||||||
} else {
|
|
||||||
$('#valid_user_mail').html('<span class="red">' + data.message + "</span>");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
;
|
|
||||||
});
|
|
||||||
$password.blur(function () {
|
|
||||||
var pas1 = document.getElementById("user_password").value;
|
|
||||||
var password_min_length = <%= password_min_length %>
|
|
||||||
if (pas1.length >= password_min_length) {
|
|
||||||
|
|
||||||
$('#valid_user_password').html('<span class="green">'+ "</span>");
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$('#valid_user_password').html('<span class="red">' + "<%= l(:setting_password_min_length_limit, :count => password_min_length) %>" + "</span>");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
|
||||||
$password_confirmation.blur(function () {
|
|
||||||
var password_min_length = <%= password_min_length %>
|
|
||||||
var pas1 = document.getElementById("user_password").value;
|
|
||||||
var pas2 = document.getElementById("user_password_confirmation").value;
|
|
||||||
if (pas1.length >= password_min_length && pas1 == pas2 ) {
|
|
||||||
$('#valid_password').html('<span class="green">' + "<%= l(:setting_password_success) %>"+ "</span>");
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$('#valid_password').html('<span class="red">' + "<%= l(:setting_password_error) %>" + "</span>");
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
</script>
|
|
|
@ -91,9 +91,10 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="postDetailDate mb5"><%= format_time( @article.created_on)%></div>
|
<div class="postDetailDate mb5"><%= format_time( @article.created_on)%></div>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div class="homepagePostIntro memo-content upload_img break_word" id="message_description_<%= @article.id %>" style="word-break: break-all; word-wrap:break-word;margin-bottom: 0px !important;" >
|
<!--<div class="homepagePostIntro memo-content upload_img break_word" id="message_description_<%= @article.id %>" style="word-break: break-all; word-wrap:break-word;margin-bottom: 0px !important;" >-->
|
||||||
<%= @article.content.html_safe%>
|
<!--<%#= @article.content.html_safe%>-->
|
||||||
</div>
|
<!--</div>-->
|
||||||
|
<%=render :partial =>"users/intro_content", :locals=>{:user_activity_id =>@article.id, :content=>@article.content} %>
|
||||||
<div class="cl"></div>
|
<div class="cl"></div>
|
||||||
<div class=" fl" style="width: 600px">
|
<div class=" fl" style="width: 600px">
|
||||||
<%#= link_to_attachments_course @topic, :author => false %>
|
<%#= link_to_attachments_course @topic, :author => false %>
|
||||||
|
@ -192,12 +193,12 @@
|
||||||
</div>
|
</div>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
$(function(){
|
$(function(){
|
||||||
var postContent = $("#message_description_<%= @article.id %>").html();
|
// var postContent = $("#message_description_<%#= @article.id %>").html();
|
||||||
postContent = postContent.replace(/ /g," ");
|
// postContent = postContent.replace(/ /g," ");
|
||||||
postContent= postContent.replace(/ {2}/g," ");
|
// postContent= postContent.replace(/ {2}/g," ");
|
||||||
postContent=postContent.replace(/ /g," ");
|
// postContent=postContent.replace(/ /g," ");
|
||||||
postContent=postContent.replace(/ /g," ");
|
// postContent=postContent.replace(/ /g," ");
|
||||||
$("#message_description_<%= @article.id %>").html(postContent);
|
// $("#message_description_<%#= @article.id %>").html(postContent);
|
||||||
autoUrl('message_description_<%= @article.id %>');
|
// autoUrl('message_description_<%#= @article.id %>');
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
<%= f.text_area :subject, :id=>"subject", :class => "opnionText", :placeholder => l(:label_feedback_tips) %>
|
<%= f.text_area :subject, :id=>"subject", :class => "opnionText", :placeholder => l(:label_feedback_tips) %>
|
||||||
<%= f.hidden_field :content,:id => 'hidden', :required => true , :value => l(:label_feedback_value) %>
|
<%= f.hidden_field :content,:id => 'hidden', :required => true , :value => l(:label_feedback_value) %>
|
||||||
<label class="c_grey">您还能输入<span id="textCount" class="c_orange">50</span>个字符</label>
|
<label class="c_grey">您还能输入<span id="textCount" class="c_orange">50</span>个字符</label>
|
||||||
<a href="javascript:void(0);" class="opnionButton" style=" color:#fff;" id="" onclick="f_submit();">
|
<a href="javascript:void(0);" class="opnionButton" style=" color:#fff;height:21px" id="" onclick="f_submit();">
|
||||||
<%= l(:label_submit)%>
|
<%= l(:label_submit)%>
|
||||||
</a>
|
</a>
|
||||||
<% end %>
|
<% end %>
|
||||||
|
@ -25,7 +25,9 @@
|
||||||
<!--<a target="hiddentab" href="http://wpa.qq.com/msgrd?v=1&uin=1554253403&site=qq&menu=yes" style="color: #269ac9;">-->
|
<!--<a target="hiddentab" href="http://wpa.qq.com/msgrd?v=1&uin=1554253403&site=qq&menu=yes" style="color: #269ac9;">-->
|
||||||
<%#= l(:label_technical_support) %>
|
<%#= l(:label_technical_support) %>
|
||||||
<!--白 羽</a> http://shang.qq.com/wpa/qunwpa?idkey=4fe2d63a4527cddce038f04f0b1d728a62082074fb4a74870a5444ee1a6910ad-->
|
<!--白 羽</a> http://shang.qq.com/wpa/qunwpa?idkey=4fe2d63a4527cddce038f04f0b1d728a62082074fb4a74870a5444ee1a6910ad-->
|
||||||
<p style="text-align: center"> 请加入师姐师兄答疑群</p> <p style="text-align: center">QQ群号:173184401</p>
|
<!--<p style="text-align: center"> 请加入师姐师兄答疑群</p> <p style="text-align: center"></p>-->
|
||||||
|
<!--<a href="mqqapi://card/show_pslcard?src_type=internal&version=1&uin=173184401&card_type=group&source=qrcode">QQ群号:173184401</a>-->
|
||||||
|
<a target="_blank" href="http://shang.qq.com/wpa/qunwpa?idkey=fb938b1f6f991fc100f3d32b6ef38b7888dd4097c71d0eb8b239eaa8749a6afd"><img border="0" src="http://pub.idqqimg.com/wpa/images/group.png" alt="Trustie师姐师兄答疑群" title="Trustie师姐师兄答疑群"></a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="side_bottom"></div>
|
<div class="side_bottom"></div>
|
||||||
|
|
|
@ -1,2 +1,6 @@
|
||||||
<p><%= l(:mail_body_register) %><br />
|
<p><%= l(:mail_body_register) %><br />
|
||||||
<%= link_to h(@url), @url %></p>
|
<%= link_to h(@url), @url %></p>
|
||||||
|
<p>如果点击链接无效请复制该链接到浏览器中打开</p>
|
||||||
|
<br>
|
||||||
|
<p>感谢您的使用!</p>
|
||||||
|
<p>Trustie团队</p><p></p>
|
||||||
|
|
|
@ -0,0 +1,337 @@
|
||||||
|
<h2 class="winbox_h2">添加新的高校(单位)</h2>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<ul class="winbox_edit_new">
|
||||||
|
<li>
|
||||||
|
<label class="fl"><span class="c_red mr5">*</span>名称:</label>
|
||||||
|
<input id = "schoolname" type="text" class="winbox_input fl" onBlur = 'ifNameRepeat()' onFocus = '$("#schoolrepeatnotice").text("");$("#schoolrepeatnotice").attr("value",1);$("#schoolrepeatnotice").hide(); '/>
|
||||||
|
<span class="ml2" id="schoolrepeatnotice" style="color:red;" display="none"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label class="fl"> </label>
|
||||||
|
<span class="fl">例如:</span><span class="icons_right fl mt5 "></span><span class="fl">国防科学技术大学</span>
|
||||||
|
<span class="icons_error fl mt5 ml10"></span><span class="fl">国防科大计算机1班</span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label class="fl"><span class="c_red mr5">*</span>地区:</label>
|
||||||
|
<select onchange="showcity(this.value, document.getElementById('schoolCity'));" name="province" id="schollProvince" class="winbox_select fl" style="height:28px;margin-left:2px;">
|
||||||
|
<option value="">--请选择省份--</option>
|
||||||
|
<option value="北京">北京</option>
|
||||||
|
<option value="上海">上海</option>
|
||||||
|
<option value="广东">广东</option>
|
||||||
|
<option value="江苏">江苏</option>
|
||||||
|
<option value="浙江">浙江</option>
|
||||||
|
<option value="重庆">重庆</option>
|
||||||
|
<option value="安徽">安徽</option>
|
||||||
|
<option value="福建">福建</option>
|
||||||
|
<option value="甘肃">甘肃</option>
|
||||||
|
<option value="广西">广西</option>
|
||||||
|
<option value="贵州">贵州</option>
|
||||||
|
<option value="海南">海南</option>
|
||||||
|
<option value="河北">河北</option>
|
||||||
|
<option value="黑龙江">黑龙江</option>
|
||||||
|
<option value="河南">河南</option>
|
||||||
|
<option value="湖北">湖北</option>
|
||||||
|
<option value="湖南">湖南</option>
|
||||||
|
<option value="江西">江西</option>
|
||||||
|
<option value="吉林">吉林</option>
|
||||||
|
<option value="辽宁">辽宁</option>
|
||||||
|
<option value="内蒙古">内蒙古</option>
|
||||||
|
<option value="宁夏">宁夏</option>
|
||||||
|
<option value="青海">青海</option>
|
||||||
|
<option value="山东">山东</option>
|
||||||
|
<option value="山西">山西</option>
|
||||||
|
<option value="陕西">陕西</option>
|
||||||
|
<option value="四川">四川</option>
|
||||||
|
<option value="天津">天津</option>
|
||||||
|
<option value="新疆">新疆</option>
|
||||||
|
<option value="西藏">西藏</option>
|
||||||
|
<option value="云南">云南</option>
|
||||||
|
<option value="香港">香港特别行政区</option>
|
||||||
|
<option value="澳门">澳门特别行政区</option>
|
||||||
|
<option value="台湾">台湾</option>
|
||||||
|
<option value="海外">海外</option>
|
||||||
|
</select>
|
||||||
|
<select name="city" id="schoolCity" class="winbox_select fl ml5" style="height:28px;"></select>
|
||||||
|
<span class="ml2" id="provincenotice" style="color:red;" display="none"></span>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<label class="fl"><span class="c_red mr5">*</span>详细地址:</label><input id="address" type="text" class="winbox_input fl" />
|
||||||
|
<span class="ml2" id="addressnotice" style="color:red;" display="none"></span>
|
||||||
|
</li>
|
||||||
|
<li><label class="fl">说明:</label><textarea id = "remarks" class="winbox_textarea fl" placeholder="如果您有特别需要说明的内容请填入"></textarea></li>
|
||||||
|
<div class="cl"></div>
|
||||||
|
<li><label class="fl"> </label><button class="fl winbox_btn_blue mt10" onclick = "commit_add_school();">确定</button></li>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
function commit_add_school(){
|
||||||
|
var name,province,city,address,remarks;
|
||||||
|
|
||||||
|
name = $("#schoolname").val();
|
||||||
|
province = $("#schollProvince").val();
|
||||||
|
address = $("#address").val();
|
||||||
|
|
||||||
|
if(name == ""){
|
||||||
|
$("#schoolname").focus();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if($("#schoolrepeatnotice").attr("value") == "1"){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(province == ""){
|
||||||
|
$("#provincenotice").text("请选择");
|
||||||
|
$("#provincenotice").show();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
city = $("#schoolCity").val();
|
||||||
|
if(city == ""){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(address == ""){
|
||||||
|
$("#address").focus();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
remarks = $("#remarks").val();
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: '/school/apply_add_school',
|
||||||
|
type: 'get',
|
||||||
|
data: {name:name,province:province,city:city,address:address,remarks:remarks},
|
||||||
|
success: function(data){
|
||||||
|
if(data.result == 0){
|
||||||
|
$("input[name='province']").val(data.name);
|
||||||
|
$("input[name='occupation']").val(data.school_id);
|
||||||
|
|
||||||
|
var htmlvalue = "</br><div style='width:550px;text-align:center'>添加成功!您可以继续使用了。</div></br><div style='width:550px;text-align:center'>后续我们将对您的高校(单位)进行审核,如有问题我们再联系您。</div></br><div style='width:67px; margin:0 auto; text-align:center'></div>";
|
||||||
|
pop_up_box(htmlvalue,500,30,50);
|
||||||
|
}
|
||||||
|
else if (data.result == 1){
|
||||||
|
}
|
||||||
|
else if (data.result == 2){
|
||||||
|
$("#schoolrepeatnotice").text("名称已存在");
|
||||||
|
$("#schoolrepeatnotice").show();
|
||||||
|
$("#schoolrepeatnotice").attr("value",1);
|
||||||
|
$("#schoolrepeatnotice").attr("style","color:red");
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function showcity(province, cityField) {
|
||||||
|
$("#provincenotice").hide();
|
||||||
|
switch (province) {
|
||||||
|
case "北京" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"东城", "西城", "朝阳", "丰台", "石景山", "海淀", "门头沟",
|
||||||
|
"房山", "通州", "顺义", "昌平", "大兴", "平谷", "怀柔", "密云", "延庆");
|
||||||
|
break;
|
||||||
|
case "上海" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"崇明", "黄浦", "卢湾", "徐汇", "长宁", "静安", "普陀", "闸北", "虹口", "杨浦", "闵行",
|
||||||
|
"宝山", "嘉定", "浦东", "金山", "松江", "青浦", "南汇", "奉贤");
|
||||||
|
break;
|
||||||
|
case "广东" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"广州", "深圳", "珠海", "东莞", "中山", "佛山", "惠州", "河源", "潮州", "江门", "揭阳", "茂名",
|
||||||
|
"梅州", "清远", "汕头", "汕尾", "韶关", "顺德", "阳江", "云浮", "湛江", "肇庆");
|
||||||
|
break;
|
||||||
|
case "江苏" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"南京", "常熟", "常州", "海门", "淮安", "江都", "江阴", "昆山", "连云港", "南通",
|
||||||
|
"启东", "沭阳", "宿迁", "苏州", "太仓", "泰州", "同里", "无锡", "徐州", "盐城",
|
||||||
|
"扬州", "宜兴", "仪征", "张家港", "镇江", "周庄");
|
||||||
|
break;
|
||||||
|
case "重庆" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"万州", "涪陵", "渝中", "大渡口", "江北", "沙坪坝", "九龙坡", "南岸", "北碚", "万盛",
|
||||||
|
"双挢", "渝北", "巴南", "黔江", "长寿", "綦江", "潼南", "铜梁", "大足", "荣昌", "壁山",
|
||||||
|
"梁平", "城口", "丰都", "垫江", "武隆", "忠县", "开县", "云阳", "奉节", "巫山", "巫溪",
|
||||||
|
"石柱", "秀山", "酉阳", "彭水", "江津", "合川", "永川", "南川");
|
||||||
|
break;
|
||||||
|
case "安徽" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"合肥", "安庆", "蚌埠", "亳州", "巢湖", "滁州", "阜阳", "贵池", "淮北", "淮化", "淮南",
|
||||||
|
"黄山", "九华山", "六安", "马鞍山", "宿州", "铜陵", "屯溪", "芜湖", "宣城");
|
||||||
|
break;
|
||||||
|
case "福建" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"福州", "厦门", "泉州", "漳州", "龙岩", "南平", "宁德", "莆田", "三明");
|
||||||
|
break;
|
||||||
|
case "甘肃" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"兰州", "白银", "定西", "敦煌", "甘南", "金昌", "酒泉", "临夏", "平凉", "天水",
|
||||||
|
"武都", "武威", "西峰", "张掖");
|
||||||
|
break;
|
||||||
|
case "广西" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"南宁", "百色", "北海", "桂林", "防城港", "贵港", "河池", "贺州", "柳州", "钦州", "梧州", "玉林");
|
||||||
|
break;
|
||||||
|
case "贵州" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"贵阳", "安顺", "毕节", "都匀", "凯里", "六盘水", "铜仁", "兴义", "玉屏", "遵义");
|
||||||
|
break;
|
||||||
|
case "海南" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"海口", "儋县", "陵水", "琼海", "三亚", "通什", "万宁");
|
||||||
|
break;
|
||||||
|
case "河北" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"石家庄", "保定", "北戴河", "沧州", "承德", "丰润", "邯郸", "衡水", "廊坊", "南戴河", "秦皇岛",
|
||||||
|
"唐山", "新城", "邢台", "张家口");
|
||||||
|
break;
|
||||||
|
case "黑龙江" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"哈尔滨", "北安", "大庆", "大兴安岭", "鹤岗", "黑河", "佳木斯", "鸡西", "牡丹江", "齐齐哈尔",
|
||||||
|
"七台河", "双鸭山", "绥化", "伊春");
|
||||||
|
break;
|
||||||
|
case "河南" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"郑州", "安阳", "鹤壁", "潢川", "焦作", "济源", "开封", "漯河", "洛阳", "南阳", "平顶山",
|
||||||
|
"濮阳", "三门峡", "商丘", "新乡", "信阳", "许昌", "周口", "驻马店");
|
||||||
|
break;
|
||||||
|
case "香港" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"香港", "九龙", "新界");
|
||||||
|
break;
|
||||||
|
case "湖北" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"武汉", "恩施", "鄂州", "黄冈", "黄石", "荆门", "荆州", "潜江", "十堰", "随州", "武穴",
|
||||||
|
"仙桃", "咸宁", "襄阳", "襄樊", "孝感", "宜昌");
|
||||||
|
break;
|
||||||
|
case "湖南" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"长沙", "常德", "郴州", "衡阳", "怀化", "吉首", "娄底", "邵阳", "湘潭", "益阳", "岳阳",
|
||||||
|
"永州", "张家界", "株洲");
|
||||||
|
break;
|
||||||
|
case "江西" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"南昌", "抚州", "赣州", "吉安", "景德镇", "井冈山", "九江", "庐山", "萍乡",
|
||||||
|
"上饶", "新余", "宜春", "鹰潭");
|
||||||
|
break;
|
||||||
|
case "吉林" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"长春", "吉林", "白城", "白山", "珲春", "辽源", "梅河", "四平", "松原", "通化", "延吉");
|
||||||
|
break;
|
||||||
|
case "辽宁" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"沈阳", "鞍山", "本溪", "朝阳", "大连", "丹东", "抚顺", "阜新", "葫芦岛", "锦州",
|
||||||
|
"辽阳", "盘锦", "铁岭", "营口");
|
||||||
|
break;
|
||||||
|
case "澳门" :
|
||||||
|
var cityOptions = new Array("澳门");
|
||||||
|
break;
|
||||||
|
case "内蒙古" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"呼和浩特", "阿拉善盟", "包头", "赤峰", "东胜", "海拉尔", "集宁", "临河", "通辽", "乌海",
|
||||||
|
"乌兰浩特", "锡林浩特");
|
||||||
|
break;
|
||||||
|
case "宁夏" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"银川", "固源", "石嘴山", "吴忠");
|
||||||
|
break;
|
||||||
|
case "青海" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"西宁", "德令哈", "格尔木", "共和", "海东", "海晏", "玛沁", "同仁", "玉树");
|
||||||
|
break;
|
||||||
|
case "山东" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"济南", "滨州", "兖州", "德州", "东营", "菏泽", "济宁", "莱芜", "聊城", "临沂",
|
||||||
|
"蓬莱", "青岛", "曲阜", "日照", "泰安", "潍坊", "威海", "烟台", "枣庄", "淄博");
|
||||||
|
break;
|
||||||
|
case "山西" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"太原", "长治", "大同", "候马", "晋城", "离石", "临汾", "宁武", "朔州", "忻州",
|
||||||
|
"阳泉", "榆次", "运城");
|
||||||
|
break;
|
||||||
|
case "陕西" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"西安", "安康", "宝鸡", "汉中", "渭南", "商州", "绥德", "铜川", "咸阳", "延安", "榆林");
|
||||||
|
break;
|
||||||
|
case "四川" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"成都", "巴中", "达川", "德阳", "都江堰", "峨眉山", "涪陵", "广安", "广元", "九寨沟",
|
||||||
|
"康定", "乐山", "泸州", "马尔康", "绵阳", "眉山", "南充", "内江", "攀枝花", "遂宁",
|
||||||
|
"汶川", "西昌", "雅安", "宜宾", "自贡", "资阳");
|
||||||
|
break;
|
||||||
|
case "台湾" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"台北", "基隆", "台南", "台中", "高雄", "屏东", "南投", "云林", "新竹", "彰化", "苗栗",
|
||||||
|
"嘉义", "花莲", "桃园", "宜兰", "台东", "金门", "马祖", "澎湖");
|
||||||
|
break;
|
||||||
|
case "天津" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"天津", "和平", "东丽", "河东", "西青", "河西", "津南", "南开", "北辰", "河北", "武清", "红挢",
|
||||||
|
"塘沽", "汉沽", "大港", "宁河", "静海", "宝坻", "蓟县");
|
||||||
|
break;
|
||||||
|
case "新疆" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"乌鲁木齐", "阿克苏", "阿勒泰", "阿图什", "博乐", "昌吉", "东山", "哈密", "和田", "喀什",
|
||||||
|
"克拉玛依", "库车", "库尔勒", "奎屯", "石河子", "塔城", "吐鲁番", "伊宁");
|
||||||
|
break;
|
||||||
|
case "西藏" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"拉萨", "阿里", "昌都", "林芝", "那曲", "日喀则", "山南");
|
||||||
|
break;
|
||||||
|
case "云南" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"昆明", "大理", "保山", "楚雄", "大理", "东川", "个旧", "景洪", "开远", "临沧", "丽江",
|
||||||
|
"六库", "潞西", "曲靖", "思茅", "文山", "西双版纳", "玉溪", "中甸", "昭通");
|
||||||
|
break;
|
||||||
|
case "浙江" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"杭州", "安吉", "慈溪", "定海", "奉化", "海盐", "黄岩", "湖州", "嘉兴", "金华", "临安",
|
||||||
|
"临海", "丽水", "宁波", "瓯海", "平湖", "千岛湖", "衢州", "江山", "瑞安", "绍兴", "嵊州",
|
||||||
|
"台州", "温岭", "温州", "余姚", "舟山");
|
||||||
|
break;
|
||||||
|
case "海外" :
|
||||||
|
var cityOptions = new Array(
|
||||||
|
"美国", "日本", "英国", "法国", "德国", "其他");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
var cityOptions = new Array("");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
cityField.options.length = 0;
|
||||||
|
for (var i = 0; i < cityOptions.length; i++) {
|
||||||
|
cityField.options[i] = new Option(cityOptions[i], cityOptions[i]);
|
||||||
|
/*
|
||||||
|
if (cityField.options[i].value==city)
|
||||||
|
{
|
||||||
|
//alert("here put City ok!");
|
||||||
|
document.oblogform["city"].selectedIndex = i;
|
||||||
|
}*/
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function ifNameRepeat(){
|
||||||
|
|
||||||
|
//名称不能为空也不能重复
|
||||||
|
if($("#schoolname").val() == ""){
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: '/school/search_repeat_schoolname',
|
||||||
|
type: 'get',
|
||||||
|
data: {name:$("#schoolname").val()},
|
||||||
|
success: function(data){
|
||||||
|
if (data == 1){
|
||||||
|
$("#schoolrepeatnotice").text("名称已存在");
|
||||||
|
$("#schoolrepeatnotice").show();
|
||||||
|
$("#schoolrepeatnotice").attr("value",1);
|
||||||
|
$("#schoolrepeatnotice").attr("style","color:red");
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$("#schoolrepeatnotice").text("可用");
|
||||||
|
$("#schoolrepeatnotice").show();
|
||||||
|
$("#schoolrepeatnotice").attr("value",0);
|
||||||
|
$("#schoolrepeatnotice").attr("style","color:green");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
</script>
|
|
@ -15,14 +15,13 @@
|
||||||
<%= error_messages_for 'user',@user.user_extensions %>
|
<%= error_messages_for 'user',@user.user_extensions %>
|
||||||
<% end %>
|
<% end %>
|
||||||
<ul class="setting_left">
|
<ul class="setting_left">
|
||||||
<li>登录名 : <span style="color:red;">*</span></li>
|
<li><span style="color:red;">*</span> 登录名 : </li>
|
||||||
<li>邮箱 : <span style="color:red;">*</span></li>
|
<li><span style="color:red;">*</span> 邮箱 : </li>
|
||||||
<li>身份 : <span style="color:red;">*</span></li>
|
<li><span style="color:red;">*</span> 职业 : </li>
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">姓(Last Name) : <span style="color:red;">*</span></li>
|
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;"><span style="color:red;">*</span> 姓名 : </li>
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">名(First Name) : <span style="color:red;">*</span></li>
|
|
||||||
<li nhname="tag" nh_tag_2="true" style="display:none;">组织名 : <span style="color:red;">*</span></li>
|
<li nhname="tag" nh_tag_2="true" style="display:none;">组织名 : <span style="color:red;">*</span></li>
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">性别 : </li>
|
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;"><span style="color:red;">*</span> 性别 : </li>
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">工作单位 : </li>
|
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;" ><span style="color:red;">*</span> 单位名称 : </li>
|
||||||
<li>地区 : </li>
|
<li>地区 : </li>
|
||||||
<li>邮件通知 : </li>
|
<li>邮件通知 : </li>
|
||||||
<!--<li>个人签名 : </li>-->
|
<!--<li>个人签名 : </li>-->
|
||||||
|
@ -65,34 +64,50 @@
|
||||||
<span id="identity_hint" style="display: none"></span>
|
<span id="identity_hint" style="display: none"></span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;"><%= f.text_field :lastname,:no_label=>true, :required => true,:nh_required=>"1",:class=>"w210" %>
|
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;"><%= text_field_tag :lastname,@user.lastname+@user.firstname,:no_label=>true, :required => true,:nh_required=>"1",:class=>"w210" %>
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;"><%= f.text_field :firstname,:no_label=>true, :required => true,:nh_required=>"1",:class=>"w210" %>
|
|
||||||
<li nhname="tag" nh_tag_2="true" style="display:none;"><%= text_field_tag :enterprise_name,@user.firstname,:no_label=>true, :required => true,:nh_required=>"1",:class=>"w210" %>
|
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">
|
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">
|
||||||
<select class="w70" style="height:28px;margin-left:2px;" id="gender" name="gender"><option value="0">男</option><option value="1">女</option></select>
|
<% if User.current.user_extensions && User.current.user_extensions.gender && User.current.user_extensions.gender == 1 %>
|
||||||
|
<input type="radio" id="sex" value="0" name="sex" class="fl "><label class="fl mr10">男</label> <input type="radio" id="sex" value="1" name="sex" checked="checked" class="fl "><label class="fl ">女</label>
|
||||||
|
<% else %>
|
||||||
|
<input type="radio" id="sex" value="0" name="sex" checked="checked" class="fl "><label class="fl mr10">男</label> <input type="radio" id="sex" value="1" name="sex" class="fl "><label class="fl ">女</label>
|
||||||
|
<% end %>
|
||||||
|
<select style = "display: none;" class="w70" style="height:28px;margin-left:2px;" id="gender" name="gender"><option value="0">男</option><option value="1">女</option></select>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">
|
<li nhname="tag" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" style="display:none;">
|
||||||
<% if User.current.user_extensions.nil? %>
|
<% if User.current.user_extensions.nil? %>
|
||||||
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" id="province" name="province" style="display: none;" class="w210" type="text" >
|
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" id="province" name="province" style="display: none;" class="w210 fl" type="text" placeholder="--请搜索您所在的高校(单位)--" >
|
||||||
<input nhname="tag" nh_tag_3="true" id="occupation" name="occupation" style="display: none;" class="w210" type="text" value="" />
|
<input nhname="tag" nh_tag_4="true" id="occupation" name="occupation" style="display: none;" class="w210" type="text" value="" placeholder=" --请选择您所属的单位--"/>
|
||||||
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
<p class="fl ml10">
|
||||||
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" readonly/>-->
|
<span id="errortip" class="icons_warning fl mt5" style="display: none;"></span>
|
||||||
|
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
||||||
|
</p>
|
||||||
|
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" readonly/>-->
|
||||||
<% elsif User.current.user_extensions.identity == 3 || User.current.user_extensions.identity == 2 %>
|
<% elsif User.current.user_extensions.identity == 3 || User.current.user_extensions.identity == 2 %>
|
||||||
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" id="province" name="province" style="display: none;" class="w210" type="text" >
|
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" id="province" name="province" style="display: none;" class="w210 fl" type="text" placeholder="--请搜索您所在的高校(单位)--" >
|
||||||
<input nhname="tag" nh_tag_3="true" id="occupation" name="occupation" style="display: none;" class="w210" type="text" value="<%= @user.user_extensions.occupation %>" />
|
<input nhname="tag" nh_tag_4="true" id="occupation" name="occupation" style="display: none;" class="w210" type="text" value="<%= @user.user_extensions.occupation %>" />
|
||||||
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
<p class="fl ml10">
|
||||||
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" readonly/>-->
|
<span id="errortip" class="icons_warning fl mt5" style="display: none;"></span>
|
||||||
|
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
||||||
|
</p>
|
||||||
|
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" readonly/>-->
|
||||||
<% elsif User.current.user_extensions.school.nil? %>
|
<% elsif User.current.user_extensions.school.nil? %>
|
||||||
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" id="province" name="province" style="display: none;" class="w210" type="text" >
|
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" id="province" name="province" style="display: none;" class="w210 fl" type="text" placeholder="--请搜索您所在的高校(单位)--" >
|
||||||
<input nhname="tag" nh_tag_3="true" id="occupation" name="occupation" style="display: none;" class="w210" type="text" />
|
<input nhname="tag" nh_tag_4="true" id="occupation" name="occupation" style="display: none;" class="w210" type="text" placeholder=" --请选择您所属的单位--" />
|
||||||
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
<p class="fl ml10">
|
||||||
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" readonly/>-->
|
<span id="errortip" class="icons_warning fl mt5" style="display: none;"></span>
|
||||||
|
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
||||||
|
</p>
|
||||||
|
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" readonly/>-->
|
||||||
<% else %>
|
<% else %>
|
||||||
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" id="province" name="province" style="display: none;" class="w210" type="text" value="<%= User.current.user_extensions.school %>" />
|
<input nhname="tag" autocomplete="off" maxlength="36" nh_tag_0="true" nh_tag_1="true" nh_tag_3="true" id="province" name="province" style="display: none;" class="w210 fl" type="text" value="<%= User.current.user_extensions.school %>" />
|
||||||
<input nhname="tag" nh_tag_3="true" id="occupation" name="occupation" type="text" style="display: none;" class="w210" value="<%= User.current.user_extensions.school.id %>"/>
|
<input nhname="tag" nh_tag_4="true" id="occupation" name="occupation" type="text" style="display: none;" class="w210" value="<%= User.current.user_extensions.school.id %>"/>
|
||||||
<span id="hint" style="color: #7f7f7f;display: none" >平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
<p class="fl ml10">
|
||||||
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" value="<%#= User.current.user_extensions.school.name %>" readonly="true" style="background-color: #E2E2E2;"/>-->
|
<span id="errortip" class="icons_warning fl mt5" style="display: none;"></span>
|
||||||
|
<span id="hint" style="color: #7f7f7f;display: none">平台找到了<a id="school_num" href="javascript:void(0)" style="color: red" >0</a>个包含<a id="search_condition" href="javascript:void(0)">"国防"</a>的高校</span>
|
||||||
|
</p>
|
||||||
|
<!--<input nhname="tag" nh_tag_0="true" nh_tag_1="true" id="occupation_name" type="text" style="display: none;width:117px;" value="<%#= User.current.user_extensions.school.name %>" readonly="true" style="background-color: #E2E2E2;"/>-->
|
||||||
<% end %>
|
<% end %>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
@ -140,13 +155,13 @@
|
||||||
|
|
||||||
<li>
|
<li>
|
||||||
<%= select_tag( 'user[mail_notification]', options_for_select( user_mail_notification_options(@user), @user.mail_notification) ) %>
|
<%= select_tag( 'user[mail_notification]', options_for_select( user_mail_notification_options(@user), @user.mail_notification) ) %>
|
||||||
<label>不要发送对我自己提交的修改的通知<%= check_box_tag 'no_self_notified', 1, @user.pref[:no_self_notified],:style=>"height:14px;" %></label>
|
<label class="ml10"><%= check_box_tag 'no_self_notified', 1, @user.pref[:no_self_notified],:style=>"height:14px;" %>不要发送对我自己提交的修改的通知</label>
|
||||||
</li>
|
</li>
|
||||||
<!--<li><input name="brief_introduction" class="w450" type="text" maxlength="255" value="<%#= (@user.user_extensions.nil?) ? '' : @user.user_extensions.brief_introduction %>"></li>-->
|
<!--<li><input name="brief_introduction" class="w450" type="text" maxlength="255" value="<%#= (@user.user_extensions.nil?) ? '' : @user.user_extensions.brief_introduction %>"></li>-->
|
||||||
<li style="height:auto;"><textarea name="description" class="w450 h200" maxlength="255" style="resize:none;"><%= (@user.user_extensions.nil?) ? '' : @user.user_extensions.description %></textarea></li>
|
<li style="height:auto;"><textarea name="description" class="w450 h200" maxlength="255" style="resize:none;"><%= (@user.user_extensions.nil?) ? '' : @user.user_extensions.description %></textarea></li>
|
||||||
<li style="display:none;"><%= f.select :language, :Chinese => :zh, :English => :en %></li>
|
<li style="display:none;"><%= f.select :language, :Chinese => :zh, :English => :en %></li>
|
||||||
<li class="ml2">
|
<li class="ml2">
|
||||||
<a href="javascript:void(0);" id="my_account_form_link" class="blue_btn fl">确认</a>
|
<a href="javascript:void(0);" id="my_account_form_link" class="blue_btn fl" style="background: #3b94d6; padding: 0 25px;">确定</a>
|
||||||
<input type="submit" id="my_account_form_btn" style="display:none;"/>
|
<input type="submit" id="my_account_form_btn" style="display:none;"/>
|
||||||
<!--<a href="javascript:void(0);" class="grey_btn ml10 fl">取消</a>-->
|
<!--<a href="javascript:void(0);" class="grey_btn ml10 fl">取消</a>-->
|
||||||
</li>
|
</li>
|
||||||
|
@ -429,6 +444,7 @@
|
||||||
$("*[nh_required='1']",$(this)).attr("required",true);
|
$("*[nh_required='1']",$(this)).attr("required",true);
|
||||||
$(this).show()
|
$(this).show()
|
||||||
});
|
});
|
||||||
|
$("#identity_hint").hide();
|
||||||
}
|
}
|
||||||
function init_identity_and_title(pField, identity, cField, title, language) {
|
function init_identity_and_title(pField, identity, cField, title, language) {
|
||||||
for (var i = 0; i < pField.options.length; i++) {
|
for (var i = 0; i < pField.options.length; i++) {
|
||||||
|
@ -533,6 +549,14 @@
|
||||||
$("input[name='occupation']").val(data);
|
$("input[name='occupation']").val(data);
|
||||||
$("#search_school_result_list").hide();
|
$("#search_school_result_list").hide();
|
||||||
$("#hint").hide();
|
$("#hint").hide();
|
||||||
|
$("#errortip").hide();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function apply_add_school(){
|
||||||
|
var htmlvalue = "<%= escape_javascript( render :partial => 'my/apply_add_school' )%>";
|
||||||
|
pop_up_box(htmlvalue,580,20,48);
|
||||||
|
|
||||||
}
|
}
|
||||||
function add_school(name){
|
function add_school(name){
|
||||||
$.ajax({
|
$.ajax({
|
||||||
|
@ -619,16 +643,19 @@
|
||||||
$("#search_school_result_list").show();
|
$("#search_school_result_list").show();
|
||||||
if($(e.target).val().trim() != '') {
|
if($(e.target).val().trim() != '') {
|
||||||
str = e.target.value.length > 8 ? e.target.value.substr(0, 6)+"..." : e.target.value;
|
str = e.target.value.length > 8 ? e.target.value.substr(0, 6)+"..." : e.target.value;
|
||||||
$("#hint").html('找到了' + count + '个包含"' + str + '"的高校');
|
$("#hint").html('找到了' + count + '个包含"' + str + '"的高校(单位)');
|
||||||
$("#hint").show();
|
$("#hint").show();
|
||||||
|
$("#errortip").hide();
|
||||||
}else{
|
}else{
|
||||||
$("#hint").hide();
|
$("#hint").hide();
|
||||||
|
$("#errortip").hide();
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
$("#search_school_result_list").html('');
|
$("#search_school_result_list").html('');
|
||||||
str = e.target.value.length > 4 ? e.target.value.substr(0, 4)+"..." : e.target.value;
|
str = e.target.value.length > 4 ? e.target.value.substr(0, 4)+"..." : e.target.value;
|
||||||
$("#hint").html('没有找到包含"'+str+'"的高校,<a style="color:#64bdd9" onclick="add_school(\''+ e.target.value+'\');" href="javascript:void(0);">创建高校</a>');
|
$("#hint").html('您输入的名称尚不存在,<a style="color:#64bdd9" onclick="apply_add_school();" href="javascript:void(0);">申请添加</a>');
|
||||||
$("#hint").show();
|
$("#hint").show();
|
||||||
|
$("#errortip").show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -638,6 +665,7 @@
|
||||||
{
|
{
|
||||||
$("#search_school_result_list").hide();
|
$("#search_school_result_list").hide();
|
||||||
$("#hint").hide();
|
$("#hint").hide();
|
||||||
|
$("#errortip").hide();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
$("input[name='province']").on('focus', function (e) {
|
$("input[name='province']").on('focus', function (e) {
|
||||||
|
@ -665,16 +693,19 @@
|
||||||
$("#search_school_result_list").show();
|
$("#search_school_result_list").show();
|
||||||
if($(e.target).val().trim() != '') {
|
if($(e.target).val().trim() != '') {
|
||||||
str = e.target.value.length > 8 ? e.target.value.substr(0, 6)+"..." : e.target.value;
|
str = e.target.value.length > 8 ? e.target.value.substr(0, 6)+"..." : e.target.value;
|
||||||
$("#hint").html('找到了' + count + '个包含"' + str + '"的高校');
|
$("#hint").html('找到了' + count + '个包含"' + str + '"的高校(单位)');
|
||||||
$("#hint").show();
|
$("#hint").show();
|
||||||
|
$("#errortip").hide();
|
||||||
}else{
|
}else{
|
||||||
$("#hint").hide();
|
$("#hint").hide();
|
||||||
|
$("#errortip").hide();
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
$("#search_school_result_list").html('');
|
$("#search_school_result_list").html('');
|
||||||
str = e.target.value.length > 4 ? e.target.value.substr(0, 4)+"..." : e.target.value;
|
str = e.target.value.length > 4 ? e.target.value.substr(0, 4)+"..." : e.target.value;
|
||||||
$("#hint").html('没有找到包含"'+str+'"的高校,<a style="color:#64bdd9" onclick="add_school(\''+ e.target.value+'\');" href="javascript:void(0);">创建高校</a>');
|
$("#hint").html('您输入的名称尚不存在,<a style="color:#64bdd9" onclick="apply_add_school();" href="javascript:void(0);">申请添加</a>');
|
||||||
$("#hint").show();
|
$("#hint").show();
|
||||||
|
$("#errortip").show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
@ -702,19 +733,41 @@
|
||||||
<% if( !@act.nil? && @act == 'password') %>
|
<% if( !@act.nil? && @act == 'password') %>
|
||||||
$("#users_tb_2").click();
|
$("#users_tb_2").click();
|
||||||
<% end %>
|
<% end %>
|
||||||
$('#my_account_form_link').click(function(e){
|
|
||||||
|
$('#my_account_form_link').on("click",(function(e){
|
||||||
|
//$('#my_account_form_link').click(function(e){
|
||||||
if($("#userIdentity").val() == -1 ) {
|
if($("#userIdentity").val() == -1 ) {
|
||||||
$("#identity_hint").html('<span style="color:red">请选择身份</span>').show();
|
$("#identity_hint").html('<span style="color:red">请选择身份</span>').show();
|
||||||
e.stopImmediatePropagation();
|
e.stopImmediatePropagation();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if( $("input[name='province']").val().trim() != '' && $("input[name='occupation']").val().trim() == ''){ //学校名字和id不对的话
|
if( $("input[name='province']").val().trim() != '' && $("input[name='occupation']").val().trim() == ''){ //学校名字和id不对的话
|
||||||
$("#hint").html('<span style="color:red">学校必须是从下拉列表中选择的,不能手动修改</span>').show();
|
$("#hint").html('<span style="color:red">单位名称必须是从下拉列表中选择的,不能手动修改</span>').show();
|
||||||
e.stopImmediatePropagation();
|
e.stopImmediatePropagation();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//姓名不能为空
|
||||||
|
if( $("#lastname").val() == '' ){
|
||||||
|
$("#lastname").focus();
|
||||||
|
e.stopImmediatePropagation();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( $("input[name='province']").val().trim() == '' ){ //学校名字必须填写
|
||||||
|
$("#hint").html('<span style="color:red">高校(单位)名称不能为空</span>').show();
|
||||||
|
e.stopImmediatePropagation();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if($("#no").is(":visible") == true && $("#no").val() == ""){
|
||||||
|
$("#no").focus();
|
||||||
|
e.stopImmediatePropagation();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
$('#my_account_form_btn').click();
|
$('#my_account_form_btn').click();
|
||||||
});
|
}));
|
||||||
$('#my_password_form_link').click(function(){
|
$('#my_password_form_link').click(function(){
|
||||||
$('#my_password_form_btn').click();
|
$('#my_password_form_btn').click();
|
||||||
});
|
});
|
||||||
|
|
|
@ -28,7 +28,7 @@ zh:
|
||||||
label_account_identity_choose: --请选择身份--
|
label_account_identity_choose: --请选择身份--
|
||||||
label_account_identity_teacher: 教师
|
label_account_identity_teacher: 教师
|
||||||
label_account_identity_student: 学生
|
label_account_identity_student: 学生
|
||||||
label_account_identity_developer: 开发者
|
label_account_identity_developer: 从业者
|
||||||
label_account_identity_enterprise: 组织
|
label_account_identity_enterprise: 组织
|
||||||
label_account_identity_studentID: 请输入学号
|
label_account_identity_studentID: 请输入学号
|
||||||
|
|
||||||
|
|
|
@ -1665,7 +1665,7 @@ zh:
|
||||||
#add by men
|
#add by men
|
||||||
label_account_identity_teacher: 教师
|
label_account_identity_teacher: 教师
|
||||||
label_account_identity_student: 学生
|
label_account_identity_student: 学生
|
||||||
label_account_identity_developer: 开发者
|
label_account_identity_developer: 从业者
|
||||||
label_account_identity_enterprise: 组织
|
label_account_identity_enterprise: 组织
|
||||||
|
|
||||||
label_teaching_course: 我执教的课程
|
label_teaching_course: 我执教的课程
|
||||||
|
|
|
@ -213,7 +213,8 @@ RedmineApp::Application.routes.draw do
|
||||||
|
|
||||||
resources :school, :except => [:show] do
|
resources :school, :except => [:show] do
|
||||||
collection do
|
collection do
|
||||||
|
get 'apply_add_school'
|
||||||
|
get 'search_repeat_schoolname'
|
||||||
end
|
end
|
||||||
|
|
||||||
member do
|
member do
|
||||||
|
@ -485,15 +486,18 @@ RedmineApp::Application.routes.draw do
|
||||||
match 'logout', :to => 'account#logout', :as => 'signout', :via => [:get, :post]
|
match 'logout', :to => 'account#logout', :as => 'signout', :via => [:get, :post]
|
||||||
match 'agreement',:to => 'account#agreement',:as => 'agreement',:via=>[:get]
|
match 'agreement',:to => 'account#agreement',:as => 'agreement',:via=>[:get]
|
||||||
match 'about_us',:to=>'account#about_us',:as=>'about_us',:via=>[:get]
|
match 'about_us',:to=>'account#about_us',:as=>'about_us',:via=>[:get]
|
||||||
match 'account/register', :via => [:get, :post], :as => 'register'
|
match 'account/register',:to=>'account#register', :via => [:get, :post], :as => 'register'
|
||||||
match 'account/lost_password', :via => [:get, :post], :as => 'lost_password'
|
match 'account/lost_password', :via => [:get, :post], :as => 'lost_password'
|
||||||
match 'account/activate', :via => :get
|
match 'account/activate', :via => :get
|
||||||
match 'account/valid_ajax', :via => :get
|
match 'account/valid_ajax', :via => :get
|
||||||
match 'account/email_valid', :to => 'account#email_valid', :via => :get
|
match 'account/email_valid', :to => 'account#email_valid', :via => :get
|
||||||
match 'account/resendmail', :to => 'account#resendmail', :via=> :get
|
match 'account/resendmail', :to => 'account#resendmail', :via=> :get, :as => 'resendmail'
|
||||||
match 'projects/:id/wiki', :to => 'wikis#edit', :via => :post
|
match 'projects/:id/wiki', :to => 'wikis#edit', :via => :post
|
||||||
match 'projects/:id/wiki/destroy', :to => 'wikis#destroy', :via => [:get, :post]
|
match 'projects/:id/wiki/destroy', :to => 'wikis#destroy', :via => [:get, :post]
|
||||||
|
|
||||||
|
#激活邮箱反馈问题
|
||||||
|
match 'users/:id/leave_email_activation_message', :to => 'words#leave_email_activation_message', :via => :get, :as => "leave_email_activation_message"
|
||||||
|
|
||||||
# boards
|
# boards
|
||||||
match 'boards/:board_id/topics/new', :to => 'messages#new', :via => [:get, :post], :as => 'new_board_message'
|
match 'boards/:board_id/topics/new', :to => 'messages#new', :via => [:get, :post], :as => 'new_board_message'
|
||||||
match 'boards/:id/join_to_org_subfields', :to => 'boards#join_to_org_subfields'
|
match 'boards/:id/join_to_org_subfields', :to => 'boards#join_to_org_subfields'
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
class AddSchoolTypeToSchools < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
add_column :schools, :school_type, :integer, :default => false
|
||||||
|
end
|
||||||
|
end
|
|
@ -0,0 +1,15 @@
|
||||||
|
class CreateApplyAddSchools < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
create_table :apply_add_schools do |t|
|
||||||
|
t.string :name
|
||||||
|
t.string :province
|
||||||
|
t.string :city
|
||||||
|
t.string :address
|
||||||
|
t.string :remarks
|
||||||
|
t.integer :school_id
|
||||||
|
t.integer :status, :default => false
|
||||||
|
|
||||||
|
t.timestamps
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
|
@ -152,6 +152,7 @@ a.postTypeGrey:hover {color:#269ac9;}
|
||||||
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
|
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
|
||||||
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
|
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
|
||||||
.homepagePostIntro a{color: #136ec2;}
|
.homepagePostIntro a{color: #136ec2;}
|
||||||
|
.homepagePostIntro p{line-height: 1;}
|
||||||
.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;}
|
.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;}
|
||||||
.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;}
|
.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;}
|
||||||
.homepagePostReply {width:710px; margin:0px auto; background-color:#f1f1f1; margin-top:10px;}
|
.homepagePostReply {width:710px; margin:0px auto; background-color:#f1f1f1; margin-top:10px;}
|
||||||
|
|
|
@ -117,3 +117,179 @@ a.f_grey:hover {color:#000000 !important;}
|
||||||
#loginInButton {height:54px; padding-left:10px; padding-right:10px; text-align:center; line-height:54px; vertical-align:middle; color:#ffffff; font-size:16px;}
|
#loginInButton {height:54px; padding-left:10px; padding-right:10px; text-align:center; line-height:54px; vertical-align:middle; color:#ffffff; font-size:16px;}
|
||||||
#loginSignButton:hover {background-color:#297fb8;}
|
#loginSignButton:hover {background-color:#297fb8;}
|
||||||
#loginInButton:hover {background-color:#297fb8;}
|
#loginInButton:hover {background-color:#297fb8;}
|
||||||
|
|
||||||
|
/* 邮箱验证 */
|
||||||
|
.email_verify body,h1,h2,h3,h4,h5,h6,hr,p,blockquote,dl,dt,dd,ul,ol,li,pre,form,fieldset,legend,button,input,textarea,th,td{ margin:0; padding:0;}
|
||||||
|
.mt30{ margin-top:30px;}
|
||||||
|
.ml30{ margin-left:30px;}
|
||||||
|
.new_content{
|
||||||
|
width:1000px;
|
||||||
|
margin:10px auto;
|
||||||
|
padding:30px 0;
|
||||||
|
background-color:#fff;
|
||||||
|
}
|
||||||
|
.email_verify{
|
||||||
|
width:720px;
|
||||||
|
margin:0px auto;
|
||||||
|
}
|
||||||
|
.email_verify_prompt{
|
||||||
|
border:2px solid #dd0000;
|
||||||
|
background:#ffe3e3 url(../images/icons_prompt.png) 25px 10px no-repeat;;
|
||||||
|
height:35px;
|
||||||
|
line-height:35px;
|
||||||
|
padding-left:45px;
|
||||||
|
color:#8b0000;
|
||||||
|
font-size:14px;
|
||||||
|
}
|
||||||
|
.email_verify_btn{
|
||||||
|
border-style:none;
|
||||||
|
height:35px;
|
||||||
|
padding:0 15px;
|
||||||
|
line-height:35px;
|
||||||
|
color:#fff;
|
||||||
|
background:#3a95d7;
|
||||||
|
text-align:center;
|
||||||
|
-webkit-border-radius:5px;
|
||||||
|
-moz-border-radius:5px;
|
||||||
|
-o-border-radius:5px;
|
||||||
|
border-radius:5px;
|
||||||
|
font-size:14px;
|
||||||
|
}
|
||||||
|
.email_verify_btn:hover{
|
||||||
|
background:#017bd3;
|
||||||
|
}
|
||||||
|
.email_sub_btn{
|
||||||
|
border-style:none;
|
||||||
|
height:30px;
|
||||||
|
padding:0 25px;
|
||||||
|
line-height:30px;
|
||||||
|
color:#fff;
|
||||||
|
background:#3a95d7;
|
||||||
|
text-align:center;
|
||||||
|
-webkit-border-radius:5px;
|
||||||
|
-moz-border-radius:5px;
|
||||||
|
-o-border-radius:5px;
|
||||||
|
border-radius:5px;
|
||||||
|
font-size:14px;
|
||||||
|
}
|
||||||
|
.email_sub_btn:hover{
|
||||||
|
background:#017bd3;
|
||||||
|
}
|
||||||
|
.email_prompt_p{
|
||||||
|
font-size:14px;
|
||||||
|
color:#000;
|
||||||
|
margin-bottom:10px;
|
||||||
|
}
|
||||||
|
.email_prompt_txt{ width:480px;}
|
||||||
|
.email_prompt_txt li{
|
||||||
|
margin-left:15px;
|
||||||
|
list-style-type: disc;
|
||||||
|
color:#777;
|
||||||
|
line-height:1.9;
|
||||||
|
font-size:14px;
|
||||||
|
}
|
||||||
|
.email_prompt_mes{
|
||||||
|
border:1px solid #ccc;
|
||||||
|
-webkit-border-radius:5px;
|
||||||
|
-moz-border-radius:5px;
|
||||||
|
-o-border-radius:5px;
|
||||||
|
border-radius:5px;
|
||||||
|
width:468px;
|
||||||
|
height:60px;
|
||||||
|
background:#fff;
|
||||||
|
padding:5px;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
}
|
||||||
|
.email_tanbox{
|
||||||
|
border:2px solid #3a95d7;
|
||||||
|
background:#fff;
|
||||||
|
width:480px;
|
||||||
|
|
||||||
|
}
|
||||||
|
.email_tancon{
|
||||||
|
width:420px;
|
||||||
|
margin:0 auto;
|
||||||
|
text-align:center;
|
||||||
|
padding:20px 30px;
|
||||||
|
background:#fff;
|
||||||
|
}
|
||||||
|
.email_tan_title{
|
||||||
|
font-size:18px;
|
||||||
|
color:#3a95d7;
|
||||||
|
font-weight:normal;
|
||||||
|
margin-bottom:5px;
|
||||||
|
}
|
||||||
|
.email_tan_p{
|
||||||
|
font-size:14px;
|
||||||
|
color:#4c4c4c;
|
||||||
|
|
||||||
|
}
|
||||||
|
.email_verify_p{
|
||||||
|
font-size:14px;
|
||||||
|
color:#3a95d7;
|
||||||
|
}
|
||||||
|
|
||||||
|
/***** Ajax indicator ******/
|
||||||
|
/*-------resendmail---------*/
|
||||||
|
#ajax-indicator {
|
||||||
|
position: absolute; /* fixed not supported by IE */
|
||||||
|
background-color:#eee;
|
||||||
|
border: 1px solid #bbb;
|
||||||
|
top:35%;
|
||||||
|
left:40%;
|
||||||
|
width:20%;
|
||||||
|
font-weight:bold;
|
||||||
|
text-align:center;
|
||||||
|
padding:0.6em;
|
||||||
|
z-index:100000;
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
html>body #ajax-indicator { position: fixed; }
|
||||||
|
|
||||||
|
#ajax-indicator span {
|
||||||
|
background-position: 0% 40%;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
background-image: url(../images/loading.gif);
|
||||||
|
padding-left: 26px;
|
||||||
|
vertical-align: bottom;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.modal {
|
||||||
|
border-radius: 5px;
|
||||||
|
background: #fff;
|
||||||
|
z-index: 50;
|
||||||
|
padding: 4px;
|
||||||
|
}
|
||||||
|
.ui-widget-content {
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
color: #333;
|
||||||
|
}
|
||||||
|
.ui-widget {
|
||||||
|
font-family: Verdana, sans-serif;
|
||||||
|
font-size: 1.1em;
|
||||||
|
}
|
||||||
|
.ui-dialog .ui-dialog-content {
|
||||||
|
position: relative;
|
||||||
|
border: 0;
|
||||||
|
padding: .5em 1em;
|
||||||
|
background: none;
|
||||||
|
overflow: auto;
|
||||||
|
zoom: 1;
|
||||||
|
}
|
||||||
|
.ui-widget-overlay {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.ui-widget-overlay {
|
||||||
|
background: #666 url(http://forge.trustie.net/stylesheets/jquery/images/xui-bg_diagonals-thick_20_666666_40x40.png.pagespeed.ic.9mfuw_R0z1.png) 50% 50% repeat;
|
||||||
|
opacity: .5;
|
||||||
|
filter: Alpha(Opacity=50);
|
||||||
|
}
|
||||||
|
.resourceUploadPopup {width:400px; height:auto; border:3px solid #269ac9 !important; padding-left:16px; padding-bottom:16px; background-color:#ffffff; position:absolute; top:50%; left:50%; margin-left:-200px; z-index:1000;}
|
||||||
|
a.Blue-btn{ display:block; margin-right:15px;width:65px; height:22px; background-color:#ffffff; line-height:24px; vertical-align:middle; text-align:center; border:1px solid #3598db; color:#3598db; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px;}
|
||||||
|
a:hover.Blue-btn{ background:#3598db; color:#fff;}
|
||||||
|
/***** end Ajax indicator ******/
|
|
@ -683,6 +683,7 @@ a.postTypeGrey:hover {color:#269ac9;}
|
||||||
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
|
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
|
||||||
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
|
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
|
||||||
.homepagePostIntro a{color: #136ec2;}
|
.homepagePostIntro a{color: #136ec2;}
|
||||||
|
.homepagePostIntro p{line-height: 1;}
|
||||||
.homepagePostReplyBanner {width:718px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888; position: relative;}
|
.homepagePostReplyBanner {width:718px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888; position: relative;}
|
||||||
.borderBottomNone {border-bottom:none !important;}
|
.borderBottomNone {border-bottom:none !important;}
|
||||||
.homepagePostReplyBanner {width:718px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888;}
|
.homepagePostReplyBanner {width:718px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888;}
|
||||||
|
@ -1803,3 +1804,98 @@ input.new_loggin_input{
|
||||||
.W420 {width:420px;}
|
.W420 {width:420px;}
|
||||||
.W300 {width:300px !important;}
|
.W300 {width:300px !important;}
|
||||||
.W600{ width:600px;}
|
.W600{ width:600px;}
|
||||||
|
|
||||||
|
/* 个人资料修改弹框 */
|
||||||
|
.winbox{
|
||||||
|
background-color: #fff;
|
||||||
|
padding: 20px;
|
||||||
|
width:480px;
|
||||||
|
-webkit-border-radius:5px;
|
||||||
|
-moz-border-radius:5px;
|
||||||
|
-o-border-radius:5px;
|
||||||
|
border-radius:5px;
|
||||||
|
border:none;
|
||||||
|
position: fixed;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
transform: translate(-50%,-50%);
|
||||||
|
}
|
||||||
|
.winbox_h2{
|
||||||
|
font-size: 14px;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #333;
|
||||||
|
border-bottom: 1px solid #ccc;
|
||||||
|
height: 28px;
|
||||||
|
}
|
||||||
|
.winbox_edit_new{
|
||||||
|
/*width: 425px;*/
|
||||||
|
margin: 28px 0;
|
||||||
|
}
|
||||||
|
.winbox_edit_new li{
|
||||||
|
height: 45px;
|
||||||
|
line-height: 30px;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
.winbox_edit_new label{
|
||||||
|
width: 80px;
|
||||||
|
text-align: right;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.winbox_input{
|
||||||
|
width: 330px;
|
||||||
|
height: 28px;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
padding: 0 5px;
|
||||||
|
color: #888;
|
||||||
|
}
|
||||||
|
.winbox_select{
|
||||||
|
height: 28px;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
color: #888;
|
||||||
|
}
|
||||||
|
.winbox_textarea{
|
||||||
|
width: 330px;
|
||||||
|
height: 50px;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
padding: 5px;
|
||||||
|
color: #888;
|
||||||
|
}
|
||||||
|
.winbox_btn_blue{
|
||||||
|
padding: 5px 25px;
|
||||||
|
color: #fff;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #3b94d6;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
.winbox_btn_blue:hover{
|
||||||
|
background-color: #2e83c2;
|
||||||
|
}
|
||||||
|
.icons_warning{
|
||||||
|
display: block;
|
||||||
|
width:20px;
|
||||||
|
height:20px;
|
||||||
|
background:url(../images/icons_ziliao.png) 0 2px no-repeat;
|
||||||
|
}
|
||||||
|
.icons_right{
|
||||||
|
display: block;
|
||||||
|
width:20px;
|
||||||
|
height:20px;
|
||||||
|
background:url(../images/icons_ziliao.png) 0 -25px no-repeat;
|
||||||
|
}
|
||||||
|
.icons_error{
|
||||||
|
display: block;
|
||||||
|
width:20px;
|
||||||
|
height:20px;
|
||||||
|
background:url(../images/icons_ziliao.png) 0 -52px no-repeat;
|
||||||
|
}
|
||||||
|
a.winbox_btn_close{
|
||||||
|
color: #3b94d6;
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
.winbox_p{
|
||||||
|
font-size: 14px;
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -969,6 +969,7 @@ a:hover.Reply_pic{border:1px solid #64bdd9;}
|
||||||
color: #484848;
|
color: #484848;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
|
.homepagePostIntro p{line-height: 1;}
|
||||||
.homepagePostReply {
|
.homepagePostReply {
|
||||||
width: 710px;
|
width: 710px;
|
||||||
margin: 10px auto 0px;
|
margin: 10px auto 0px;
|
||||||
|
|
|
@ -633,6 +633,7 @@ a.postTypeGrey:hover {color:#269ac9;}
|
||||||
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
|
.homepagePostIntro ul li{list-style-type: disc;margin-left: 40px;}
|
||||||
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
|
.homepagePostIntro td,.homepagePostIntro tr {border: 1px solid; border-color: inherit;}
|
||||||
.homepagePostIntro a{color: #136ec2;}
|
.homepagePostIntro a{color: #136ec2;}
|
||||||
|
.homepagePostIntro p{line-height: 1;}
|
||||||
.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;}
|
.homepagePostDeadline {font-size:12px; color:#888888; float:left; margin-top: 2px;}
|
||||||
.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;}
|
.homepagePostDate {font-size:12px; color:#888888;margin-bottom: 5px;}
|
||||||
.homepagePostReplyBanner {width:708px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888; position: relative;}
|
.homepagePostReplyBanner {width:708px; height:33px; border:1px solid #e4e4e4; line-height:33px; vertical-align:middle; font-size:12px; color:#888888; position: relative;}
|
||||||
|
|
|
@ -86,7 +86,7 @@ a.select_btn_select{ background:#64bddb; color:#fff;}
|
||||||
.users_ctt{ font-size:14px; color:#666; margin-top:10px;}
|
.users_ctt{ font-size:14px; color:#666; margin-top:10px;}
|
||||||
.setting_left{ width:115px; text-align:right; float:left;}
|
.setting_left{ width:115px; text-align:right; float:left;}
|
||||||
.setting_left li{ height:28px;line-height:28px;}
|
.setting_left li{ height:28px;line-height:28px;}
|
||||||
.setting_right{width:500px; text-align:left; float:left; margin-left:8px;}
|
.setting_right{width:600px; text-align:left; float:left; margin-left:8px;}
|
||||||
.setting_right li{ height:28px;line-height:28px;}
|
.setting_right li{ height:28px;line-height:28px;}
|
||||||
.users_ctt ul li{ margin-bottom:10px;}
|
.users_ctt ul li{ margin-bottom:10px;}
|
||||||
.users_ctt input,.users_ctt select,.users_ctt textarea{ border:1px solid #CCC;}
|
.users_ctt input,.users_ctt select,.users_ctt textarea{ border:1px solid #CCC;}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
FactoryGirl.define do
|
||||||
|
factory :apply_add_school, :class => 'ApplyAddSchools' do
|
||||||
|
name "MyString"
|
||||||
|
province "MyString"
|
||||||
|
city "MyString"
|
||||||
|
address "MyString"
|
||||||
|
remarks "MyString"
|
||||||
|
school_id 1
|
||||||
|
status 1
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
|
@ -0,0 +1,5 @@
|
||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe ApplyAddSchools, :type => :model do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
Loading…
Reference in New Issue