diff options
author | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2019-09-10 23:03:14 +0300 |
---|---|---|
committer | Douglas Barbosa Alexandre <dbalexandre@gmail.com> | 2019-09-10 23:03:14 +0300 |
commit | cfe77ce4a3494b9c1516fe7e915f76b21a68e763 (patch) | |
tree | cef43c4d6c2fdee57ad19ab6815e41617eace2f2 /app | |
parent | 934d4925d85f22c67e7ad57f607e8fe430a9ea92 (diff) | |
parent | 95d16dc007f3fe8831f2baa511bbb7bd708baff0 (diff) |
Merge remote-tracking branch 'origin/master' into camilstaps/gitlab-ce-new-66023-public-private-fork-counts
Diffstat (limited to 'app')
31 files changed, 208 insertions, 92 deletions
diff --git a/app/assets/javascripts/analytics/cycle_analytics/mixins/add_stage_mixin.js b/app/assets/javascripts/analytics/cycle_analytics/mixins/add_stage_mixin.js new file mode 100644 index 00000000000..6a40f1cbc5e --- /dev/null +++ b/app/assets/javascripts/analytics/cycle_analytics/mixins/add_stage_mixin.js @@ -0,0 +1,11 @@ +export default { + data() { + return { + isCustomStageForm: false, + }; + }, + methods: { + showAddStageForm: () => {}, + hideAddStageForm: () => {}, + }, +}; diff --git a/app/assets/javascripts/cycle_analytics/components/stage_card_list_item.vue b/app/assets/javascripts/cycle_analytics/components/stage_card_list_item.vue index d946594a069..63549596fac 100644 --- a/app/assets/javascripts/cycle_analytics/components/stage_card_list_item.vue +++ b/app/assets/javascripts/cycle_analytics/components/stage_card_list_item.vue @@ -23,7 +23,10 @@ export default { </script> <template> - <div :class="{ active: isActive }" class="stage-nav-item d-flex pl-4 pr-4 m-0 mb-1 ml-2 rounded"> + <div + :class="{ active: isActive }" + class="stage-nav-item d-flex pl-4 pr-4 m-0 mb-1 ml-2 rounded border-color-default border-style-solid border-width-1px" + > <slot></slot> <div v-if="canEdit" class="dropdown"> <gl-button diff --git a/app/assets/javascripts/cycle_analytics/cycle_analytics_bundle.js b/app/assets/javascripts/cycle_analytics/cycle_analytics_bundle.js index b3ae47af750..c9a6b10b2f3 100644 --- a/app/assets/javascripts/cycle_analytics/cycle_analytics_bundle.js +++ b/app/assets/javascripts/cycle_analytics/cycle_analytics_bundle.js @@ -3,6 +3,7 @@ import Vue from 'vue'; import Cookies from 'js-cookie'; import { GlEmptyState } from '@gitlab/ui'; import filterMixins from 'ee_else_ce/analytics/cycle_analytics/mixins/filter_mixins'; +import addStageMixin from 'ee_else_ce/analytics/cycle_analytics/mixins/add_stage_mixin'; import Flash from '../flash'; import { __ } from '~/locale'; import Translate from '../vue_shared/translate'; @@ -43,8 +44,12 @@ export default () => { DateRangeDropdown: () => import('ee_component/analytics/shared/components/date_range_dropdown.vue'), 'stage-nav-item': stageNavItem, + CustomStageForm: () => + import('ee_component/analytics/cycle_analytics/components/custom_stage_form.vue'), + AddStageButton: () => + import('ee_component/analytics/cycle_analytics/components/add_stage_button.vue'), }, - mixins: [filterMixins], + mixins: [filterMixins, addStageMixin], data() { return { store: CycleAnalyticsStore, @@ -124,6 +129,7 @@ export default () => { return; } + this.hideAddStageForm(); this.isLoadingStage = true; this.store.setStageEvents([], stage); this.store.setActiveStage(stage); diff --git a/app/assets/javascripts/monitoring/components/graph_group.vue b/app/assets/javascripts/monitoring/components/graph_group.vue index 0f5c5b3d60f..72ddd8d4fcf 100644 --- a/app/assets/javascripts/monitoring/components/graph_group.vue +++ b/app/assets/javascripts/monitoring/components/graph_group.vue @@ -1,5 +1,10 @@ <script> +import Icon from '~/vue_shared/components/icon.vue'; + export default { + components: { + Icon, + }, props: { name: { type: String, @@ -15,15 +20,42 @@ export default { required: true, }, }, + data() { + return { + showGroup: true, + }; + }, + computed: { + caretIcon() { + return this.collapseGroup && this.showGroup ? 'angle-down' : 'angle-right'; + }, + }, + created() { + this.showGroup = this.collapseGroup; + }, + methods: { + collapse() { + this.showGroup = !this.showGroup; + }, + }, }; </script> <template> <div v-if="showPanels" class="card prometheus-panel"> - <div class="card-header"> - <h4>{{ name }}</h4> + <div class="card-header d-flex align-items-center"> + <h4 class="flex-grow-1">{{ name }}</h4> + <a role="button" @click="collapse"> + <icon :size="16" :aria-label="__('Toggle collapse')" :name="caretIcon" /> + </a> + </div> + <div + v-if="collapseGroup" + v-show="collapseGroup && showGroup" + class="card-body prometheus-graph-group" + > + <slot></slot> </div> - <div v-if="collapseGroup" class="card-body prometheus-graph-group"><slot></slot></div> </div> <div v-else class="prometheus-graph-group"><slot></slot></div> </template> diff --git a/app/assets/javascripts/sidebar/components/assignees/sidebar_assignees.vue b/app/assets/javascripts/sidebar/components/assignees/sidebar_assignees.vue index c6cc04a139f..ce592720531 100644 --- a/app/assets/javascripts/sidebar/components/assignees/sidebar_assignees.vue +++ b/app/assets/javascripts/sidebar/components/assignees/sidebar_assignees.vue @@ -67,18 +67,14 @@ export default { saveAssignees() { this.loading = true; - function setLoadingFalse() { - this.loading = false; - } - this.mediator .saveAssignees(this.field) - .then(setLoadingFalse.bind(this)) .then(() => { + this.loading = false; refreshUserMergeRequestCounts(); }) .catch(() => { - setLoadingFalse(); + this.loading = false; return new Flash(__('Error occurred when saving assignees')); }); }, diff --git a/app/assets/javascripts/sidebar/services/sidebar_service.js b/app/assets/javascripts/sidebar/services/sidebar_service.js index cbe20f761ff..feb08e3acaf 100644 --- a/app/assets/javascripts/sidebar/services/sidebar_service.js +++ b/app/assets/javascripts/sidebar/services/sidebar_service.js @@ -1,7 +1,4 @@ -import Vue from 'vue'; -import VueResource from 'vue-resource'; - -Vue.use(VueResource); +import axios from '~/lib/utils/axios_utils'; export default class SidebarService { constructor(endpointMap) { @@ -18,23 +15,15 @@ export default class SidebarService { } get() { - return Vue.http.get(this.endpoint); + return axios.get(this.endpoint); } update(key, data) { - return Vue.http.put( - this.endpoint, - { - [key]: data, - }, - { - emulateJSON: true, - }, - ); + return axios.put(this.endpoint, { [key]: data }); } getProjectsAutocomplete(searchTerm) { - return Vue.http.get(this.projectsAutocompleteEndpoint, { + return axios.get(this.projectsAutocompleteEndpoint, { params: { search: searchTerm, }, @@ -42,11 +31,11 @@ export default class SidebarService { } toggleSubscription() { - return Vue.http.post(this.toggleSubscriptionEndpoint); + return axios.post(this.toggleSubscriptionEndpoint); } moveIssue(moveToProjectId) { - return Vue.http.post(this.moveIssueEndpoint, { + return axios.post(this.moveIssueEndpoint, { move_to_project_id: moveToProjectId, }); } diff --git a/app/assets/javascripts/sidebar/sidebar_mediator.js b/app/assets/javascripts/sidebar/sidebar_mediator.js index 643fe6c00b6..4a7000cbbda 100644 --- a/app/assets/javascripts/sidebar/sidebar_mediator.js +++ b/app/assets/javascripts/sidebar/sidebar_mediator.js @@ -32,7 +32,10 @@ export default class SidebarMediator { // If there are no ids, that means we have to unassign (which is id = 0) // And it only accepts an array, hence [0] - return this.service.update(field, selected.length === 0 ? [0] : selected); + const assignees = selected.length === 0 ? [0] : selected; + const data = { assignee_ids: assignees }; + + return this.service.update(field, data); } setMoveToProjectId(projectId) { @@ -42,8 +45,7 @@ export default class SidebarMediator { fetch() { return this.service .get() - .then(response => response.json()) - .then(data => { + .then(({ data }) => { this.processFetchedData(data); }) .catch(() => new Flash(__('Error occurred when fetching sidebar data'))); @@ -71,23 +73,17 @@ export default class SidebarMediator { } fetchAutocompleteProjects(searchTerm) { - return this.service - .getProjectsAutocomplete(searchTerm) - .then(response => response.json()) - .then(data => { - this.store.setAutocompleteProjects(data); - return this.store.autocompleteProjects; - }); + return this.service.getProjectsAutocomplete(searchTerm).then(({ data }) => { + this.store.setAutocompleteProjects(data); + return this.store.autocompleteProjects; + }); } moveIssue() { - return this.service - .moveIssue(this.store.moveToProjectId) - .then(response => response.json()) - .then(data => { - if (window.location.pathname !== data.web_url) { - visitUrl(data.web_url); - } - }); + return this.service.moveIssue(this.store.moveToProjectId).then(({ data }) => { + if (window.location.pathname !== data.web_url) { + visitUrl(data.web_url); + } + }); } } diff --git a/app/assets/stylesheets/framework/typography.scss b/app/assets/stylesheets/framework/typography.scss index 33caac4d725..ba123ff9a67 100644 --- a/app/assets/stylesheets/framework/typography.scss +++ b/app/assets/stylesheets/framework/typography.scss @@ -67,6 +67,18 @@ max-height: calc(100vh - 100px); } + details { + margin-bottom: $gl-padding; + + summary { + margin-bottom: $gl-padding; + } + + *:first-child:not(summary) { + margin-top: $gl-padding; + } + } + // Single code lines should wrap code { font-family: $monospace-font; diff --git a/app/assets/stylesheets/pages/cycle_analytics.scss b/app/assets/stylesheets/pages/cycle_analytics.scss index d80155a416d..e20711a193d 100644 --- a/app/assets/stylesheets/pages/cycle_analytics.scss +++ b/app/assets/stylesheets/pages/cycle_analytics.scss @@ -41,7 +41,6 @@ width: 20%; } - .fa { color: $cycle-analytics-light-gray; @@ -146,7 +145,6 @@ .stage-nav-item { line-height: 65px; - border: 1px solid $border-color; &.active { background: $blue-50; diff --git a/app/assets/stylesheets/pages/settings.scss b/app/assets/stylesheets/pages/settings.scss index 79de1d78a6e..416537ef763 100644 --- a/app/assets/stylesheets/pages/settings.scss +++ b/app/assets/stylesheets/pages/settings.scss @@ -24,12 +24,16 @@ .settings { // border-top for each item except the top one - + .settings { - border-top: 1px solid $border-color; - } + border-top: 1px solid $border-color; &:first-of-type { margin-top: 10px; + border: 0; + } + + + div .settings:first-of-type { + margin-top: 0; + border-top: 1px solid $border-color; } &.animating { diff --git a/app/assets/stylesheets/utilities.scss b/app/assets/stylesheets/utilities.scss index 3648ec5e239..d2906ce0780 100644 --- a/app/assets/stylesheets/utilities.scss +++ b/app/assets/stylesheets/utilities.scss @@ -15,3 +15,9 @@ font-size: $size; } } + +.border-width-1px { border-width: 1px; } +.border-style-dashed { border-style: dashed; } +.border-style-solid { border-style: solid; } +.border-color-blue-300 { border-color: $blue-300; } +.border-color-default { border-color: $border-color; } diff --git a/app/helpers/events_helper.rb b/app/helpers/events_helper.rb index e990e425cb6..09866ca75ff 100644 --- a/app/helpers/events_helper.rb +++ b/app/helpers/events_helper.rb @@ -103,7 +103,7 @@ module EventsHelper words << "at" end - words << event.project_name + words << event.resource_parent_name words.join(" ") end @@ -223,3 +223,5 @@ module EventsHelper end end end + +EventsHelper.prepend_if_ee('EE::EventsHelper') diff --git a/app/helpers/releases_helper.rb b/app/helpers/releases_helper.rb new file mode 100644 index 00000000000..4d9fe345edf --- /dev/null +++ b/app/helpers/releases_helper.rb @@ -0,0 +1,38 @@ +# frozen_string_literal: true + +module ReleasesHelper + IMAGE_PATH = 'illustrations/releases.svg' + DOCUMENTATION_PATH = 'user/project/releases/index' + + def illustration + image_path(IMAGE_PATH) + end + + def help_page + help_page_path(DOCUMENTATION_PATH) + end + + def url_for_merge_requests + project_merge_requests_url(@project, params_for_issue_and_mr_paths) + end + + def url_for_issues + project_issues_url(@project, params_for_issue_and_mr_paths) + end + + def data_for_releases_page + { + project_id: @project.id, + illustration_path: illustration, + documentation_path: help_page, + merge_requests_url: url_for_merge_requests, + issues_url: url_for_issues + } + end + + private + + def params_for_issue_and_mr_paths + { scope: 'all', state: 'opened' } + end +end diff --git a/app/models/application_setting.rb b/app/models/application_setting.rb index e39d655325f..a2cf081375e 100644 --- a/app/models/application_setting.rb +++ b/app/models/application_setting.rb @@ -31,15 +31,6 @@ class ApplicationSetting < ApplicationRecord serialize :repository_storages # rubocop:disable Cop/ActiveRecordSerialize serialize :asset_proxy_whitelist, Array # rubocop:disable Cop/ActiveRecordSerialize - self.ignored_columns += %i[ - clientside_sentry_dsn - clientside_sentry_enabled - koding_enabled - koding_url - sentry_dsn - sentry_enabled - ] - cache_markdown_field :sign_in_text cache_markdown_field :help_page_text cache_markdown_field :shared_runners_text, pipeline: :plain_markdown diff --git a/app/models/event.rb b/app/models/event.rb index 52d54be39a9..580bb770599 100644 --- a/app/models/event.rb +++ b/app/models/event.rb @@ -3,6 +3,8 @@ class Event < ApplicationRecord include Sortable include FromUnion + include Presentable + default_scope { reorder(nil) } CREATED = 1 @@ -135,6 +137,10 @@ class Event < ApplicationRecord end end + def present + super(presenter_class: ::EventPresenter) + end + # rubocop:disable Metrics/CyclomaticComplexity # rubocop:disable Metrics/PerceivedComplexity def visible_to_user?(user = nil) @@ -161,12 +167,8 @@ class Event < ApplicationRecord # rubocop:enable Metrics/PerceivedComplexity # rubocop:enable Metrics/CyclomaticComplexity - def project_name - if project - project.full_name - else - "(deleted project)" - end + def resource_parent + project || group end def target_title diff --git a/app/models/note.rb b/app/models/note.rb index 5bd3a7f969a..62b3f47fadd 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -33,8 +33,6 @@ class Note < ApplicationRecord end end - self.ignored_columns += %i[original_discussion_id] - cache_markdown_field :note, pipeline: :note, issuable_state_filter_enabled: true redact_field :note diff --git a/app/models/notification_setting.rb b/app/models/notification_setting.rb index 637c017a342..bf2aec74ec8 100644 --- a/app/models/notification_setting.rb +++ b/app/models/notification_setting.rb @@ -1,8 +1,6 @@ # frozen_string_literal: true class NotificationSetting < ApplicationRecord - self.ignored_columns += %i[events] - enum level: { global: 3, watch: 2, participating: 1, mention: 4, disabled: 0, custom: 5 } default_value_for :level, NotificationSetting.levels[:global] diff --git a/app/models/repository.rb b/app/models/repository.rb index 5cb4b56a114..e5a83366776 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -1134,6 +1134,10 @@ class Repository @cache ||= Gitlab::RepositoryCache.new(self) end + def redis_set_cache + @redis_set_cache ||= Gitlab::RepositorySetCache.new(self) + end + def request_store_cache @request_store_cache ||= Gitlab::RepositoryCache.new(self, backend: Gitlab::SafeRequestStore) end diff --git a/app/models/user.rb b/app/models/user.rb index 5f109feb96a..9ca01715578 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -23,12 +23,6 @@ class User < ApplicationRecord DEFAULT_NOTIFICATION_LEVEL = :participating - self.ignored_columns += %i[ - authentication_token - email_provider - external_email - ] - add_authentication_token_field :incoming_email_token, token_generator: -> { SecureRandom.hex.to_i(16).to_s(36) } add_authentication_token_field :feed_token diff --git a/app/presenters/event_presenter.rb b/app/presenters/event_presenter.rb new file mode 100644 index 00000000000..f31d362d5fa --- /dev/null +++ b/app/presenters/event_presenter.rb @@ -0,0 +1,20 @@ +# frozen_string_literal: true + +class EventPresenter < Gitlab::View::Presenter::Delegated + presents :event + + def resource_parent_name + resource_parent&.full_name || '' + end + + def target_link_options + case resource_parent + when Group + [event.group, event.target] + when Project + [event.project.namespace.becomes(Namespace), event.project, event.target] + else + '' + end + end +end diff --git a/app/services/merge_requests/build_service.rb b/app/services/merge_requests/build_service.rb index 308a3a10d1a..88ed0c3ef4c 100644 --- a/app/services/merge_requests/build_service.rb +++ b/app/services/merge_requests/build_service.rb @@ -33,7 +33,8 @@ module MergeRequests merge_request.assign_attributes(params.to_h.compact) merge_request.compare_commits = [] - merge_request.target_branch = find_target_branch + set_merge_request_target_branch + merge_request.can_be_created = projects_and_branches_valid? # compare branches only if branches are valid, otherwise @@ -93,8 +94,12 @@ module MergeRequests project_from_params end - def find_target_branch - target_branch || target_project.default_branch + def set_merge_request_target_branch + if source_branch_default? && !target_branch_specified? + merge_request.target_branch = nil + else + merge_request.target_branch ||= target_project.default_branch + end end def source_branch_specified? @@ -149,7 +154,15 @@ module MergeRequests end def same_source_and_target? - source_project == target_project && target_branch == source_branch + same_source_and_target_project? && target_branch == source_branch + end + + def source_branch_default? + same_source_and_target_project? && source_branch == target_project.default_branch + end + + def same_source_and_target_project? + source_project == target_project end def source_branch_exists? diff --git a/app/views/events/_event.atom.builder b/app/views/events/_event.atom.builder index d56234e6c1a..406e8a93194 100644 --- a/app/views/events/_event.atom.builder +++ b/app/views/events/_event.atom.builder @@ -1,5 +1,7 @@ return unless event.visible_to_user?(current_user) +event = event.present + xml.entry do xml.id "tag:#{request.host},#{event.created_at.strftime("%Y-%m-%d")}:#{event.id}" xml.link href: event_feed_url(event) diff --git a/app/views/events/_event.html.haml b/app/views/events/_event.html.haml index 222175c818a..647f0597adb 100644 --- a/app/views/events/_event.html.haml +++ b/app/views/events/_event.html.haml @@ -1,3 +1,5 @@ +- event = event.present + - if event.visible_to_user?(current_user) .event-item .event-item-timestamp diff --git a/app/views/events/_event_scope.html.haml b/app/views/events/_event_scope.html.haml index 98941722434..67e4c538b4a 100644 --- a/app/views/events/_event_scope.html.haml +++ b/app/views/events/_event_scope.html.haml @@ -2,6 +2,5 @@ = event_preposition(event) - if event.project = link_to_project(event.project) - - else - = event.project_name - + - elsif event.group + = link_to event.resource_parent_name, group_path(event.group) diff --git a/app/views/events/event/_common.html.haml b/app/views/events/event/_common.html.haml index b02fdb4b638..50c5885c648 100644 --- a/app/views/events/event/_common.html.haml +++ b/app/views/events/event/_common.html.haml @@ -8,7 +8,7 @@ %span.event-type.d-inline-block.append-right-4{ class: event.action_name } = event.action_name %span.event-target-type.append-right-4= event.target_type.titleize.downcase - = link_to [event.project.namespace.becomes(Namespace), event.project, event.target], class: 'has-tooltip event-target-link append-right-4', title: event.target_title do + = link_to event.target_link_options, class: 'has-tooltip event-target-link append-right-4', title: event.target_title do = event.target.reference_link_text - unless event.milestone? %span.event-target-title.append-right-4{ dir: "auto" } @@ -17,4 +17,4 @@ %span.event-type.d-inline-block.append-right-4{ class: event.action_name } = event_action_name(event) - = render "events/event_scope", event: event + = render "events/event_scope", event: event if event.resource_parent.present? diff --git a/app/views/events/event/_created_project.html.haml b/app/views/events/event/_created_project.html.haml index 2f156603414..606b0febb57 100644 --- a/app/views/events/event/_created_project.html.haml +++ b/app/views/events/event/_created_project.html.haml @@ -10,4 +10,4 @@ - if event.project = link_to_project(event.project) - else - = event.project_name + = event.resource_parent_name diff --git a/app/views/projects/merge_requests/creations/_new_compare.html.haml b/app/views/projects/merge_requests/creations/_new_compare.html.haml index be01905dd35..c6615b26bc0 100644 --- a/app/views/projects/merge_requests/creations/_new_compare.html.haml +++ b/app/views/projects/merge_requests/creations/_new_compare.html.haml @@ -51,7 +51,7 @@ selected: f.object.target_project_id .merge-request-select.dropdown = f.hidden_field :target_branch - = dropdown_toggle f.object.target_branch, { toggle: "dropdown", 'field-name': "#{f.object_name}[target_branch]", 'refs-url': refs_project_path(f.object.target_project), selected: f.object.target_branch }, { toggle_class: "js-compare-dropdown js-target-branch monospace" } + = dropdown_toggle f.object.target_branch || _("Select target branch"), { toggle: "dropdown", 'field-name': "#{f.object_name}[target_branch]", 'refs-url': refs_project_path(f.object.target_project), selected: f.object.target_branch }, { toggle_class: "js-compare-dropdown js-target-branch monospace" } .dropdown-menu.dropdown-menu-selectable.js-target-branch-dropdown.git-revision-dropdown = dropdown_title(_("Select target branch")) = dropdown_filter(_("Search branches")) diff --git a/app/views/projects/releases/index.html.haml b/app/views/projects/releases/index.html.haml index 326b83c856e..4d5b8cc80f7 100644 --- a/app/views/projects/releases/index.html.haml +++ b/app/views/projects/releases/index.html.haml @@ -1,3 +1,3 @@ - page_title _('Releases') -#js-releases-page{ data: { project_id: @project.id, illustration_path: image_path('illustrations/releases.svg'), documentation_path: help_page_path('user/project/releases/index') } } +#js-releases-page{ data: data_for_releases_page } diff --git a/app/views/shared/issuable/_sidebar.html.haml b/app/views/shared/issuable/_sidebar.html.haml index 837707707a9..3b26b8df8a1 100644 --- a/app/views/shared/issuable/_sidebar.html.haml +++ b/app/views/shared/issuable/_sidebar.html.haml @@ -41,7 +41,7 @@ = link_to _('Edit'), '#', class: 'js-sidebar-dropdown-toggle edit-link float-right', data: { track_label: "right_sidebar", track_property: "milestone", track_event: "click_edit_button", track_value: "" } .value.hide-collapsed - if milestone.present? - = link_to milestone[:title], milestone[:web_url], class: "bold has-tooltip", title: sidebar_milestone_remaining_days(milestone), data: { container: "body", html: 'true', boundary: 'viewport' } + = link_to milestone[:title], milestone[:web_url], class: "bold has-tooltip", title: sidebar_milestone_remaining_days(milestone), data: { container: "body", html: 'true', boundary: 'viewport', qa_selector: 'milestone_link' } - else %span.no-value = _('None') diff --git a/app/views/shared/issuable/_sidebar_assignees.html.haml b/app/views/shared/issuable/_sidebar_assignees.html.haml index 1dc538826dc..dfb0e7ed297 100644 --- a/app/views/shared/issuable/_sidebar_assignees.html.haml +++ b/app/views/shared/issuable/_sidebar_assignees.html.haml @@ -1,7 +1,7 @@ - issuable_type = issuable_sidebar[:type] - signed_in = !!issuable_sidebar.dig(:current_user, :id) -#js-vue-sidebar-assignees{ data: { field: "#{issuable_type}[assignee_ids]", signed_in: signed_in } } +#js-vue-sidebar-assignees{ data: { field: "#{issuable_type}", signed_in: signed_in } } .title.hide-collapsed = _('Assignee') = icon('spinner spin') diff --git a/app/views/users/calendar_activities.html.haml b/app/views/users/calendar_activities.html.haml index 3191eaa1e2c..7516dfe1602 100644 --- a/app/views/users/calendar_activities.html.haml +++ b/app/views/users/calendar_activities.html.haml @@ -27,7 +27,7 @@ - if event.project = link_to_project(event.project) - else - = event.project_name + = event.resource_parent_name - else made a private contribution - else |