mirror of
https://github.com/opf/openproject.git
synced 2026-06-13 19:20:00 +00:00
Use quick filter slot for meetings filter
This commit is contained in:
@@ -430,4 +430,4 @@ end
|
||||
|
||||
gem "openproject-octicons", "~>19.34.0"
|
||||
gem "openproject-octicons_helper", "~>19.34.0"
|
||||
gem "openproject-primer_view_components", "~>0.84.5"
|
||||
gem "openproject-primer_view_components", "~>0.85.0"
|
||||
|
||||
+3
-3
@@ -911,7 +911,7 @@ GEM
|
||||
actionview
|
||||
openproject-octicons (= 19.34.0)
|
||||
railties
|
||||
openproject-primer_view_components (0.84.5)
|
||||
openproject-primer_view_components (0.85.0)
|
||||
actionview (>= 7.2.0)
|
||||
activesupport (>= 7.2.0)
|
||||
openproject-octicons (>= 19.34.0)
|
||||
@@ -1689,7 +1689,7 @@ DEPENDENCIES
|
||||
openproject-octicons (~> 19.34.0)
|
||||
openproject-octicons_helper (~> 19.34.0)
|
||||
openproject-openid_connect!
|
||||
openproject-primer_view_components (~> 0.84.5)
|
||||
openproject-primer_view_components (~> 0.85.0)
|
||||
openproject-recaptcha!
|
||||
openproject-reporting!
|
||||
openproject-resource_management!
|
||||
@@ -2071,7 +2071,7 @@ CHECKSUMS
|
||||
openproject-octicons (19.34.0) sha256=4efe8a58a2d8051b79c94b37e9a7f04fd242a4da12b50f027c3c7f441a042adc
|
||||
openproject-octicons_helper (19.34.0) sha256=12eb7af2214e21631369c76464ebaa30de788e1074c4b3bd0fcef7e74cb9edb4
|
||||
openproject-openid_connect (1.0.0)
|
||||
openproject-primer_view_components (0.84.5) sha256=307ad2135cfb283b2d1da354e545bd3e3f1dda43158f020c89ff4641e441fe86
|
||||
openproject-primer_view_components (0.85.0) sha256=16bc8358ef600f0465488a2e3c86991a9c69ed84580bd450c2dbec6f268eeaca
|
||||
openproject-recaptcha (1.0.0)
|
||||
openproject-reporting (1.0.0)
|
||||
openproject-resource_management (1.0.0)
|
||||
|
||||
Generated
+14
-14
@@ -57,12 +57,12 @@
|
||||
"@ng-select/ng-select": "^21.8.0",
|
||||
"@ngneat/content-loader": "^7.0.0",
|
||||
"@openproject/octicons-angular": "^19.34.0",
|
||||
"@openproject/primer-view-components": "^0.84.5",
|
||||
"@openproject/primer-view-components": "^0.85.0",
|
||||
"@openproject/reactivestates": "^3.0.1",
|
||||
"@primer/css": "^22.1.0",
|
||||
"@primer/live-region-element": "^0.8.0",
|
||||
"@primer/primitives": "^11.5.1",
|
||||
"@primer/view-components": "npm:@openproject/primer-view-components@^0.84.5",
|
||||
"@primer/view-components": "npm:@openproject/primer-view-components@^0.85.0",
|
||||
"@rails/request.js": "^0.0.13",
|
||||
"@stimulus-components/auto-submit": "^6.0.0",
|
||||
"@stimulus-components/reveal": "^5.0.0",
|
||||
@@ -7494,9 +7494,9 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@openproject/primer-view-components": {
|
||||
"version": "0.84.5",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.84.5.tgz",
|
||||
"integrity": "sha512-Q2rliK0PC37nku6blaRvlqGuh3WJS5hr7sqdHDvdzUUBoerigRHrNsg3kNy4tUEduAcEaRpsGRGkF1z0LLo2Gw==",
|
||||
"version": "0.85.0",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.85.0.tgz",
|
||||
"integrity": "sha512-W/MUtfOQnkYzPMF6unyVJ6U53epCfpXwP2DcEc3YVzEK6XIaPCSS9a86dK714Na8ysOSL6j9OGgsThyfvToJKw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@github/auto-check-element": "^6.0.0",
|
||||
@@ -8045,9 +8045,9 @@
|
||||
},
|
||||
"node_modules/@primer/view-components": {
|
||||
"name": "@openproject/primer-view-components",
|
||||
"version": "0.84.5",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.84.5.tgz",
|
||||
"integrity": "sha512-Q2rliK0PC37nku6blaRvlqGuh3WJS5hr7sqdHDvdzUUBoerigRHrNsg3kNy4tUEduAcEaRpsGRGkF1z0LLo2Gw==",
|
||||
"version": "0.85.0",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.85.0.tgz",
|
||||
"integrity": "sha512-W/MUtfOQnkYzPMF6unyVJ6U53epCfpXwP2DcEc3YVzEK6XIaPCSS9a86dK714Na8ysOSL6j9OGgsThyfvToJKw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@github/auto-check-element": "^6.0.0",
|
||||
@@ -30526,9 +30526,9 @@
|
||||
}
|
||||
},
|
||||
"@openproject/primer-view-components": {
|
||||
"version": "0.84.5",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.84.5.tgz",
|
||||
"integrity": "sha512-Q2rliK0PC37nku6blaRvlqGuh3WJS5hr7sqdHDvdzUUBoerigRHrNsg3kNy4tUEduAcEaRpsGRGkF1z0LLo2Gw==",
|
||||
"version": "0.85.0",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.85.0.tgz",
|
||||
"integrity": "sha512-W/MUtfOQnkYzPMF6unyVJ6U53epCfpXwP2DcEc3YVzEK6XIaPCSS9a86dK714Na8ysOSL6j9OGgsThyfvToJKw==",
|
||||
"requires": {
|
||||
"@github/auto-check-element": "^6.0.0",
|
||||
"@github/auto-complete-element": "^3.8.0",
|
||||
@@ -30866,9 +30866,9 @@
|
||||
"integrity": "sha512-NB9uYfJ01FVY6zp+33EoUbJ0paS3JrWY+PqdHPebTvyRtQgL3sX8//3jWqjt3/jL81UMEulJRM2A0hPj0/vFpQ=="
|
||||
},
|
||||
"@primer/view-components": {
|
||||
"version": "npm:@openproject/primer-view-components@0.84.5",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.84.5.tgz",
|
||||
"integrity": "sha512-Q2rliK0PC37nku6blaRvlqGuh3WJS5hr7sqdHDvdzUUBoerigRHrNsg3kNy4tUEduAcEaRpsGRGkF1z0LLo2Gw==",
|
||||
"version": "npm:@openproject/primer-view-components@0.85.0",
|
||||
"resolved": "https://registry.npmjs.org/@openproject/primer-view-components/-/primer-view-components-0.85.0.tgz",
|
||||
"integrity": "sha512-W/MUtfOQnkYzPMF6unyVJ6U53epCfpXwP2DcEc3YVzEK6XIaPCSS9a86dK714Na8ysOSL6j9OGgsThyfvToJKw==",
|
||||
"requires": {
|
||||
"@github/auto-check-element": "^6.0.0",
|
||||
"@github/auto-complete-element": "^3.8.0",
|
||||
|
||||
@@ -112,12 +112,12 @@
|
||||
"@ng-select/ng-select": "^21.8.0",
|
||||
"@ngneat/content-loader": "^7.0.0",
|
||||
"@openproject/octicons-angular": "^19.34.0",
|
||||
"@openproject/primer-view-components": "^0.84.5",
|
||||
"@openproject/primer-view-components": "^0.85.0",
|
||||
"@openproject/reactivestates": "^3.0.1",
|
||||
"@primer/css": "^22.1.0",
|
||||
"@primer/live-region-element": "^0.8.0",
|
||||
"@primer/primitives": "^11.5.1",
|
||||
"@primer/view-components": "npm:@openproject/primer-view-components@^0.84.5",
|
||||
"@primer/view-components": "npm:@openproject/primer-view-components@^0.85.0",
|
||||
"@rails/request.js": "^0.0.13",
|
||||
"@stimulus-components/auto-submit": "^6.0.0",
|
||||
"@stimulus-components/reveal": "^5.0.0",
|
||||
|
||||
@@ -8,13 +8,23 @@
|
||||
}
|
||||
)
|
||||
) do |subheader|
|
||||
subheader.with_filter_component do
|
||||
subheader.with_quick_filter do
|
||||
render(
|
||||
Meetings::MeetingFilterContainerComponent.new(
|
||||
OpPrimer::QuickFilter::SegmentedComponent.new(
|
||||
name: I18n.t(:label_meeting_date_time),
|
||||
query: @query,
|
||||
project: @project
|
||||
filter_key: :time,
|
||||
orders: { "future" => { start_time: :asc }, "past" => { start_time: :desc } },
|
||||
path_args: [@project, :meetings]
|
||||
)
|
||||
)
|
||||
) do |component|
|
||||
component.with_item(label: I18n.t(:label_upcoming_meetings_short), value: "future")
|
||||
component.with_item(label: I18n.t(:label_past_meetings_short), value: "past")
|
||||
end
|
||||
end
|
||||
|
||||
subheader.with_filter_component do
|
||||
render(Meetings::MeetingFilterButtonComponent.new(query: @query, project: @project))
|
||||
end
|
||||
|
||||
if render_create_button?
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
<%#-- copyright
|
||||
OpenProject is an open source project management software.
|
||||
Copyright (C) the OpenProject GmbH
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License version 3.
|
||||
|
||||
OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
|
||||
Copyright (C) 2006-2013 Jean-Philippe Lang
|
||||
Copyright (C) 2010-2013 the ChiliProject Team
|
||||
|
||||
This program is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License
|
||||
as published by the Free Software Foundation; either version 2
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
|
||||
See COPYRIGHT and LICENSE files for more details.
|
||||
|
||||
++#%>
|
||||
|
||||
<%= render(Primer::OpenProject::FlexLayout.new(align_items: :center)) do |flex| %>
|
||||
<% flex.with_column(mr: 2) do %>
|
||||
<%= render(Meetings::MeetingFilterButtonComponent.new(query: @query, project: @project)) %>
|
||||
<% end %>
|
||||
<% flex.with_column do %>
|
||||
<%= render(
|
||||
OpPrimer::QuickFilter::SegmentedComponent.new(
|
||||
name: I18n.t(:label_meeting_date_time),
|
||||
query: @query,
|
||||
filter_key: :time,
|
||||
orders: { "future" => { start_time: :asc }, "past" => { start_time: :desc } },
|
||||
path_args: [@project, :meetings]
|
||||
)
|
||||
) do |component|
|
||||
component.with_item(label: I18n.t(:label_upcoming_meetings_short), value: "future")
|
||||
component.with_item(label: I18n.t(:label_past_meetings_short), value: "past")
|
||||
end %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
@@ -1,39 +0,0 @@
|
||||
# frozen_string_literal: true
|
||||
|
||||
# -- copyright
|
||||
# OpenProject is an open source project management software.
|
||||
# Copyright (C) the OpenProject GmbH
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License version 3.
|
||||
#
|
||||
# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
|
||||
# Copyright (C) 2006-2013 Jean-Philippe Lang
|
||||
# Copyright (C) 2010-2013 the ChiliProject Team
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# See COPYRIGHT and LICENSE files for more details.
|
||||
# ++
|
||||
|
||||
module Meetings
|
||||
class MeetingFilterContainerComponent < ApplicationComponent
|
||||
def initialize(query:, project: nil)
|
||||
super
|
||||
@query = query
|
||||
@project = project
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user