Use relative _path helper URLs in the GitLab UI
Fix https://gitlab.com/gitlab-org/gitlab-ce/issues/40825
This commit is contained in:
parent
9dffd0ab6b
commit
e6ac6734c2
11 changed files with 31 additions and 14 deletions
|
@ -9,7 +9,7 @@ export default class Job {
|
|||
this.state = null;
|
||||
this.options = options || $('.js-build-options').data();
|
||||
|
||||
this.pageUrl = this.options.pageUrl;
|
||||
this.pagePath = this.options.pagePath;
|
||||
this.buildStatus = this.options.buildStatus;
|
||||
this.state = this.options.logState;
|
||||
this.buildStage = this.options.buildStage;
|
||||
|
@ -167,11 +167,11 @@ export default class Job {
|
|||
|
||||
getBuildTrace() {
|
||||
return $.ajax({
|
||||
url: `${this.pageUrl}/trace.json`,
|
||||
url: `${this.pagePath}/trace.json`,
|
||||
data: { state: this.state },
|
||||
})
|
||||
.done((log) => {
|
||||
setCiStatusFavicon(`${this.pageUrl}/status.json`);
|
||||
setCiStatusFavicon(`${this.pagePath}/status.json`);
|
||||
|
||||
if (log.state) {
|
||||
this.state = log.state;
|
||||
|
@ -209,7 +209,7 @@ export default class Job {
|
|||
}
|
||||
|
||||
if (log.status !== this.buildStatus) {
|
||||
gl.utils.visitUrl(this.pageUrl);
|
||||
gl.utils.visitUrl(this.pagePath);
|
||||
}
|
||||
})
|
||||
.fail(() => {
|
||||
|
|
|
@ -8,10 +8,18 @@ document.addEventListener('DOMContentLoaded', () => new Vue({
|
|||
},
|
||||
data() {
|
||||
const notesDataset = document.getElementById('js-vue-notes').dataset;
|
||||
const parsedUserData = JSON.parse(notesDataset.currentUserData);
|
||||
const currentUserData = parsedUserData ? {
|
||||
id: parsedUserData.id,
|
||||
name: parsedUserData.name,
|
||||
username: parsedUserData.username,
|
||||
avatar_url: parsedUserData.avatar_path || parsedUserData.avatar_url,
|
||||
path: parsedUserData.path,
|
||||
} : {};
|
||||
|
||||
return {
|
||||
noteableData: JSON.parse(notesDataset.noteableData),
|
||||
currentUserData: JSON.parse(notesDataset.currentUserData),
|
||||
currentUserData,
|
||||
notesData: {
|
||||
lastFetchedAt: notesDataset.lastFetchedAt,
|
||||
discussionsPath: notesDataset.discussionsPath,
|
||||
|
|
|
@ -20,8 +20,7 @@ module BuildsHelper
|
|||
|
||||
def javascript_build_options
|
||||
{
|
||||
page_url: project_job_url(@project, @build),
|
||||
build_url: project_job_url(@project, @build, :json),
|
||||
page_path: project_job_path(@project, @build),
|
||||
build_status: @build.status,
|
||||
build_stage: @build.stage,
|
||||
log_state: ''
|
||||
|
|
|
@ -13,7 +13,14 @@
|
|||
.location-badge= label
|
||||
.search-input-wrap
|
||||
.dropdown{ data: { url: search_autocomplete_path } }
|
||||
= search_field_tag 'search', nil, placeholder: 'Search', class: 'search-input dropdown-menu-toggle no-outline js-search-dashboard-options', spellcheck: false, tabindex: '1', autocomplete: 'off', data: { issues_path: issues_dashboard_url, mr_path: merge_requests_dashboard_url }, aria: { label: 'Search' }
|
||||
= search_field_tag 'search', nil, placeholder: 'Search',
|
||||
class: 'search-input dropdown-menu-toggle no-outline js-search-dashboard-options',
|
||||
spellcheck: false,
|
||||
tabindex: '1',
|
||||
autocomplete: 'off',
|
||||
data: { issues_path: issues_dashboard_path,
|
||||
mr_path: merge_requests_dashboard_path },
|
||||
aria: { label: 'Search' }
|
||||
%button.hidden.js-dropdown-search-toggle{ type: 'button', data: { toggle: 'dropdown' } }
|
||||
.dropdown-menu.dropdown-select
|
||||
= dropdown_content do
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
|
||||
%td.branch-commit
|
||||
- if can?(current_user, :read_build, job)
|
||||
= link_to project_job_url(job.project, job) do
|
||||
= link_to project_job_path(job.project, job) do
|
||||
%span.build-link ##{job.id}
|
||||
- else
|
||||
%span.build-link ##{job.id}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
- page_title _("Commits"), @ref
|
||||
= content_for :meta_tags do
|
||||
= auto_discovery_link_tag(:atom, project_commits_url(@project, @ref, rss_url_options), title: "#{@project.name}:#{@ref} commits")
|
||||
= auto_discovery_link_tag(:atom, project_commits_path(@project, @ref, rss_url_options), title: "#{@project.name}:#{@ref} commits")
|
||||
|
||||
.js-project-commits-show{ 'data-commits-limit' => @limit }
|
||||
%div{ class: container_class }
|
||||
|
|
|
@ -14,4 +14,4 @@
|
|||
notes_path: notes_url,
|
||||
last_fetched_at: Time.now.to_i,
|
||||
noteable_data: serialize_issuable(@issue),
|
||||
current_user_data: UserSerializer.new.represent(current_user).to_json } }
|
||||
current_user_data: UserSerializer.new.represent(current_user, only_path: true).to_json } }
|
||||
|
|
|
@ -86,7 +86,7 @@
|
|||
= icon('bug', text: 'Fogbugz')
|
||||
%div
|
||||
- if gitea_import_enabled?
|
||||
= link_to new_import_gitea_url, class: 'btn import_gitea' do
|
||||
= link_to new_import_gitea_path, class: 'btn import_gitea' do
|
||||
= custom_icon('go_logo')
|
||||
Gitea
|
||||
%div
|
||||
|
|
|
@ -4,5 +4,5 @@
|
|||
GitLab may not work properly because you are using an outdated web browser.
|
||||
%br
|
||||
Please install a
|
||||
= link_to 'supported web browser', help_page_url('install/requirements', anchor: 'supported-web-browsers')
|
||||
= link_to 'supported web browser', help_page_path('install/requirements', anchor: 'supported-web-browsers')
|
||||
for a better experience.
|
||||
|
|
|
@ -16,10 +16,13 @@ module API
|
|||
|
||||
class UserBasic < UserSafe
|
||||
expose :state
|
||||
|
||||
expose :avatar_url do |user, options|
|
||||
user.avatar_url(only_path: false)
|
||||
end
|
||||
|
||||
expose :avatar_path, if: ->(user, options) { options.fetch(:only_path, false) && user.avatar_path }
|
||||
|
||||
expose :web_url do |user, options|
|
||||
Gitlab::Routing.url_helpers.user_url(user)
|
||||
end
|
||||
|
|
|
@ -28,7 +28,7 @@ describe('Job', () => {
|
|||
});
|
||||
|
||||
it('copies build options', function () {
|
||||
expect(this.job.pageUrl).toBe(JOB_URL);
|
||||
expect(this.job.pagePath).toBe(JOB_URL);
|
||||
expect(this.job.buildStatus).toBe('success');
|
||||
expect(this.job.buildStage).toBe('test');
|
||||
expect(this.job.state).toBe('');
|
||||
|
|
Loading…
Reference in a new issue