Skip to content

Commit

Permalink
Merge pull request #15835 from saraycp/private_after_private_keyword
Browse files Browse the repository at this point in the history
Move private methods after private keyword
  • Loading branch information
hennevogel committed Mar 19, 2024
2 parents 070c21c + 31cabcc commit fa16c3b
Show file tree
Hide file tree
Showing 3 changed files with 75 additions and 84 deletions.
47 changes: 21 additions & 26 deletions src/api/app/controllers/person_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -220,6 +220,27 @@ def internal_register
raise e
end

def change_my_password
authorize @user, :update?
# FIXME3.0: remove this function
xml = REXML::Document.new(request.raw_post)

logger.debug("changepasswd XML: #{request.raw_post}")

login = xml.elements['/userchangepasswd/login'].text
password = xml.elements['/userchangepasswd/password'].text
login = CGI.unescape(login)

change_password(login, CGI.unescape(password))
render_ok
end

private

def set_user
@user = User.find_by(login: params[:login])
end

def update_watchlist(user, xml)
if xml.get('watchlist').empty?
projects = [xml.get('project')].flatten
Expand All @@ -241,8 +262,6 @@ def update_watchlist(user, xml)
end
end

private :update_watchlist

def update_globalroles(user, xml)
new_globalroles = []
xml.elements('globalrole') do |e|
Expand All @@ -252,23 +271,6 @@ def update_globalroles(user, xml)
user.update_globalroles(Role.global.where(title: new_globalroles))
end

private :update_globalroles

def change_my_password
authorize @user, :update?
# FIXME3.0: remove this function
xml = REXML::Document.new(request.raw_post)

logger.debug("changepasswd XML: #{request.raw_post}")

login = xml.elements['/userchangepasswd/login'].text
password = xml.elements['/userchangepasswd/password'].text
login = CGI.unescape(login)

change_password(login, CGI.unescape(password))
render_ok
end

def change_password(login, password)
unless User.session!
logger.debug 'No user logged in, permission to changing password denied'
Expand All @@ -295,11 +297,4 @@ def change_password(login, password)
@user.password = password
@user.save!
end
private :change_password

private

def set_user
@user = User.find_by(login: params[:login])
end
end
45 changes: 22 additions & 23 deletions src/api/app/controllers/source_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1039,29 +1039,6 @@ def package_command_release
render_ok
end

def _package_command_release_manual_target(pkg, multibuild_container, time_now)
verify_can_modify_target!

targetrepo = Repository.find_by_project_and_name(@target_project_name, params[:target_repository])
raise UnknownRepository, "Repository does not exist #{params[:target_repository]}" unless targetrepo

repo = pkg.project.repositories.where(name: params[:repository])
raise UnknownRepository, "Repository does not exist #{params[:repository]}" unless repo.count.positive?

repo = repo.first

release_package(pkg,
targetrepo,
pkg.release_target_name(targetrepo, time_now),
{ filter_source_repository: repo,
multibuild_container: multibuild_container,
filter_architecture: params[:arch],
setrelease: params[:setrelease],
manual: true,
comment: "Releasing package #{pkg.name}" })
end
private :_package_command_release_manual_target

# POST /source/<project>/<package>?cmd=waitservice
def package_command_waitservice
path = request.path_info
Expand Down Expand Up @@ -1253,4 +1230,26 @@ def validate_xml_content(rdata_field, object, error_status, error_message)
rdata_field,
object)
end

def _package_command_release_manual_target(pkg, multibuild_container, time_now)
verify_can_modify_target!

targetrepo = Repository.find_by_project_and_name(@target_project_name, params[:target_repository])
raise UnknownRepository, "Repository does not exist #{params[:target_repository]}" unless targetrepo

repo = pkg.project.repositories.where(name: params[:repository])
raise UnknownRepository, "Repository does not exist #{params[:repository]}" unless repo.count.positive?

repo = repo.first

release_package(pkg,
targetrepo,
pkg.release_target_name(targetrepo, time_now),
{ filter_source_repository: repo,
multibuild_container: multibuild_container,
filter_architecture: params[:arch],
setrelease: params[:setrelease],
manual: true,
comment: "Releasing package #{pkg.name}" })
end
end
67 changes: 32 additions & 35 deletions src/api/app/models/bs_request.rb
Original file line number Diff line number Diff line change
Expand Up @@ -625,22 +625,6 @@ def assignreview(opts = {})
end
end

def approval_handling(new_approver, opts)
raise InvalidStateError, 'request is not in review state' unless state == :review

# check if User.session! is allowed to potentially accept the request
# (note: setting the :force key to true will skip some checks but
# none of them is supposed to be crucial wrt. permission checking)
my_opts = opts.merge(newstate: 'accepted', force: true)
checker = BsRequestPermissionCheck.new(self, my_opts)
checker.cmd_changestate_permissions(my_opts)
check_bs_request_actions!(skip_source: true)

self.approver = new_approver
save!
end
private :approval_handling

def approve(opts)
raise InvalidStateError, "already approved by #{approver}" if approver

Expand Down Expand Up @@ -724,25 +708,6 @@ def check_if_valid_review!(opts)
raise InvalidReview
end

def create_new_review(opts)
newreview = reviews.create(
reason: opts[:comment],
by_user: opts[:by_user],
by_group: opts[:by_group],
by_project: opts[:by_project],
by_package: opts[:by_package],
creator: User.session!.login,
reviewer: User.session!.login
)
return newreview if newreview.valid?

newreview.check_reviewer!

raise InvalidReview, "Review invalid: #{newreview.errors.full_messages.join("\n")}"
end

private :create_new_review

def addreview(opts)
with_lock do
permission_check_addreview!
Expand Down Expand Up @@ -1221,6 +1186,38 @@ def _assignreview_update_reviews(reviewer, opts, new_review = nil)
def update_cache
BsRequestCleanTasksCacheJob.perform_later(id)
end

def approval_handling(new_approver, opts)
raise InvalidStateError, 'request is not in review state' unless state == :review

# check if User.session! is allowed to potentially accept the request
# (note: setting the :force key to true will skip some checks but
# none of them is supposed to be crucial wrt. permission checking)
my_opts = opts.merge(newstate: 'accepted', force: true)
checker = BsRequestPermissionCheck.new(self, my_opts)
checker.cmd_changestate_permissions(my_opts)
check_bs_request_actions!(skip_source: true)

self.approver = new_approver
save!
end

def create_new_review(opts)
newreview = reviews.create(
reason: opts[:comment],
by_user: opts[:by_user],
by_group: opts[:by_group],
by_project: opts[:by_project],
by_package: opts[:by_package],
creator: User.session!.login,
reviewer: User.session!.login
)
return newreview if newreview.valid?

newreview.check_reviewer!

raise InvalidReview, "Review invalid: #{newreview.errors.full_messages.join("\n")}"
end
end

# rubocop: enable Metrics/ClassLength
Expand Down

0 comments on commit fa16c3b

Please sign in to comment.