Merge branch 'develop' of http://git.trustie.net/jasder/forgeplus into develop

This commit is contained in:
Jasder 2020-04-16 09:43:02 +08:00
commit d27af59a76
11 changed files with 62 additions and 39 deletions

View File

@ -52,7 +52,6 @@ class AccountsController < ApplicationController
u.login = user_params["login"] if user_params["login"]
u.mail = user_params["mail"] if user_params["mail"]
u.lastname = user_params["lastname"] if user_params["lastname"]
u.password = user_params["password"] if user_params["password"]
ue.gender = user_extension_params["gender"]
ue.school_id = user_extension_params["school_id"]
@ -96,6 +95,17 @@ class AccountsController < ApplicationController
end
end
#修改密码
def remote_password
@user = User.find_by(login: params[:login])
if @user && @user.update_attribute(:password, params[:password])
render_ok({})
else
render_error("更新失败")
end
end
# 用户注册
@ -253,6 +263,7 @@ class AccountsController < ApplicationController
# end
def logout
Rails.logger.info("########___logout_current_user____________########{current_user.try(:id)}")
UserAction.create(action_id: User.current.id, action_type: "Logout", user_id: User.current.id, :ip => request.remote_ip)
logout_user
render :json => {status: 1, message: "退出成功!"}

View File

@ -44,21 +44,16 @@ module LoginHelper
end
def logout_user
Rails.logger.info("####################__11111______######")
Rails.logger.info("####################__User.current_id______######{current_user.try(:id)}###___#{current_user&.logged?}")
if User.current.logged?
Rails.logger.info("####################__2222_______######")
if autologin = cookies.delete(autologin_cookie_name)
Rails.logger.info("####################__33333______######")
User.current.delete_autologin_token(autologin)
end
Rails.logger.info("####################__4444444______######")
User.current.delete_session_token(session[:tk])
self.logged_user = nil
end
Rails.logger.info("####################__55555______######")
# 云上实验室退出清理当前session
laboratory ||= (Laboratory.find_by_subdomain(request.subdomain) || Laboratory.find(1))

View File

@ -111,7 +111,7 @@ class PullRequestsController < ApplicationController
if pull_issue.save!
local_requests = PullRequest.new(local_params.merge(user_id: current_user.try(:id), project_id: @project.id, issue_id: pull_issue.id))
if local_requests.save
gitea_request = Gitea::PullRequest::CreateService.new(current_user, @repository.try(:identifier), requests_params).call
gitea_request = Gitea::PullRequest::CreateService.new(current_user.try(:gitea_token), @project.owner, @repository.try(:identifier), requests_params).call
if gitea_request && local_requests.update_attributes(gpid: gitea_request["number"])
if params[:issue_tag_ids].present?
params[:issue_tag_ids].each do |tag|

View File

@ -90,7 +90,7 @@ class RepositoriesController < ApplicationController
if pull_issue.save!
local_requests = PullRequest.new(local_params.merge(user_id: current_user.try(:id), project_id: @project.id, issue_id: pull_issue.id))
if local_requests.save
gitea_request = Gitea::PullRequest::CreateService.new(current_user, @project.try(:identifier), requests_params).call
gitea_request = Gitea::PullRequest::CreateService.new(current_user.try(:gitea_token), @project.owner, @project.try(:identifier), requests_params).call
if gitea_request && local_requests.update_attributes(gpid: gitea_request["number"])
local_requests.project_trends.create(user_id: current_user.id, project_id: @project.id, action_type: "create")
end

View File

@ -1,4 +1,5 @@
class SettingsController < ApplicationController
def show
end
end

View File

@ -61,13 +61,12 @@ class LaboratorySetting < ApplicationRecord
{
name: nil,
navbar: [
{ 'name' => '实践课程', 'link' => '/paths', 'hidden' => false },
{ 'name' => '翻转课堂', 'link' => '/courses', 'hidden' => false },
{ 'name' => '实训项目', 'link' => '/shixuns', 'hidden' => false },
{ 'name' => '在线竞赛', 'link' => '/competitions', 'hidden' => false },
{ 'name' => '教学案例', 'link' => '/moop_cases', 'hidden' => false },
{ 'name' => '交流问答', 'link' => '/forums', 'hidden' => false },
{ 'name' => '开发者社区', 'link' => '/problems', 'hidden' => false },
{ 'name' => '首页', 'link' => '/projects', 'hidden' => false },
{ 'name' => '课程', 'link' => '/courses', 'hidden' => false },
{ 'name' => '项目', 'link' => '/projects', 'hidden' => false },
{ 'name' => '数据', 'link' => '/datas', 'hidden' => false },
{ 'name' => '竞赛', 'link' => '/competitions', 'hidden' => false },
{ 'name' => '问吧', 'link' => '/forums', 'hidden' => false },
],
footer: nil
}

View File

@ -591,8 +591,8 @@ class User < ApplicationRecord
def self.anonymous
anonymous_user = AnonymousUser.unscoped.take
if anonymous_user.nil?
anonymous_user = AnonymousUser.unscoped.create(lastname: 'Anonymous', firstname: '', login: '',
mail: '358551897@qq.com', phone: '13333333333', status: 0, platform: User.platform[:forge])
# anonymous_user = AnonymousUser.unscoped.create(lastname: 'Anonymous', firstname: '', login: '', mail: '358551897@qq.com', phone: '13333333333', status: 0, platform: User.platform[:forge])
anonymous_user = User.find(2)
raise "Unable to create the anonymous user error_info:#{anonymous_user.errors.messages}" if anonymous_user.new_record?
end
anonymous_user

View File

@ -1,6 +1,6 @@
class Gitea::PullRequest::CreateService < Gitea::ClientService
attr_reader :user, :repo, :params
attr_reader :token, :user, :repo, :params
# params ex:
# {
@ -11,13 +11,15 @@ class Gitea::PullRequest::CreateService < Gitea::ClientService
# }
# 以上列子说明从develop分支合并到master分支
# repo: 仓库名称
def initialize(user, repo, params={})
def initialize(token, user, repo, params={})
@token = token
@user = user
@repo = repo
@params = params
end
def call
Rails.logger.info("######_____pr_url______#########{url}")
post(url, request_params)
end
@ -29,6 +31,6 @@ class Gitea::PullRequest::CreateService < Gitea::ClientService
end
def request_params
Hash.new.merge(token: @user.gitea_token, data: @params)
Hash.new.merge(token: token, data: @params)
end
end

View File

@ -1,23 +1,40 @@
json.setting do
if @laboratory.present?
setting = @laboratory.laboratory_setting
json.name setting.name || default_setting.name
json.nav_logo_url (setting.nav_logo_url || default_setting.nav_logo_url)&.[](1..-1)
json.login_logo_url (setting.login_logo_url || default_setting.login_logo_url)&.[](1..-1)
json.tab_logo_url (setting.tab_logo_url || default_setting.tab_logo_url)&.[](1..-1)
# if @laboratory.present?
# setting = @laboratory.laboratory_setting
# json.name setting.name || default_setting.name
# json.nav_logo_url (setting.nav_logo_url || default_setting.nav_logo_url)&.[](1..-1)
# json.login_logo_url (setting.login_logo_url || default_setting.login_logo_url)&.[](1..-1)
# json.tab_logo_url (setting.tab_logo_url || default_setting.tab_logo_url)&.[](1..-1)
#
# json.subject_banner_url (setting.subject_banner_url || default_setting.subject_banner_url)&.[](1..-1)
# json.course_banner_url (setting.course_banner_url || default_setting.course_banner_url)&.[](1..-1)
# json.competition_banner_url (setting.competition_banner_url || default_setting.competition_banner_url)&.[](1..-1)
# json.moop_cases_banner_url (setting.moop_cases_banner_url || default_setting.moop_cases_banner_url)&.[](1..-1)
# json.oj_banner_url (setting.oj_banner_url || default_setting.oj_banner_url)&.[](1..-1)
#
# json.navbar setting.navbar || default_setting.navbar
#
# json.footer setting.footer || default_setting.footer
#
# json.main_site current_laboratory.main_site?
# end
json.subject_banner_url (setting.subject_banner_url || default_setting.subject_banner_url)&.[](1..-1)
json.course_banner_url (setting.course_banner_url || default_setting.course_banner_url)&.[](1..-1)
json.competition_banner_url (setting.competition_banner_url || default_setting.competition_banner_url)&.[](1..-1)
json.moop_cases_banner_url (setting.moop_cases_banner_url || default_setting.moop_cases_banner_url)&.[](1..-1)
json.oj_banner_url (setting.oj_banner_url || default_setting.oj_banner_url)&.[](1..-1)
json.name default_setting.name
json.nav_logo_url default_setting.nav_logo_url&.[](1..-1)
json.login_logo_url default_setting.login_logo_url&.[](1..-1)
json.tab_logo_url default_setting.tab_logo_url&.[](1..-1)
json.navbar setting.navbar || default_setting.navbar
json.subject_banner_url default_setting.subject_banner_url&.[](1..-1)
json.course_banner_url default_setting.course_banner_url&.[](1..-1)
json.competition_banner_url default_setting.competition_banner_url&.[](1..-1)
json.moop_cases_banner_url default_setting.moop_cases_banner_url&.[](1..-1)
json.oj_banner_url default_setting.oj_banner_url&.[](1..-1)
json.footer setting.footer || default_setting.footer
json.navbar default_setting.navbar
json.main_site current_laboratory.main_site?
end
json.footer default_setting.footer
json.main_site current_laboratory.main_site?
end

View File

@ -33,9 +33,6 @@ module Educoderplus
provider :cas, url: 'https://urp.tfswufe.edu.cn/cas'
end
# config.middleware.use ActionDispatch::Cookies
# config.middleware.use ActionDispatch::Session::CookieStore
config.middleware.insert_before 0, Rack::Cors do
allow do
origins '*'

View File

@ -124,6 +124,7 @@ Rails.application.routes.draw do
post :remote_register
post :remote_update
post :remote_login
post :remote_password
end
end