When trying to use this component, I wanted to use the input scheme
that I copied from elsewhere in the code. At first I was surprised that
the lookbook didn't yet contain a playground, where I could try this style out.
After adding it, I was surprised that it didn't look like an input at all and learned
that this scheme does not even exist... But it was already used multiple times :O
We were already using a few configuration values that work on the 2.x line
of the omniauth-saml gem, but not on version 1.10, which is the one we are still
using.
Since we totally want to migrate to the 2.x line going foward (once we can use omniauth 2.x),
I changed the built configuration to be compatible to both versions of the gem at once,
so that a future upgrade is hopefully smoother.
This allows them to see the sidebar that's regularly part of the
show view and only hidden during the initial creation of a provider.
For that we needed to change the show action to not render a turbostream
response anymore. This behaviour is now consistent with the OpenID Connect
provider controller again.
Also here (similar to OIDC), the old terminology was rather confusing,
because this mode was exclusively set from the #new action, but it was never
set during editing of a provider at a later point.
It's now called external and can only switch between external and non-external links.
This does not only affect the link target, but additionally also adds a trailing visual icon
as it is suggested by our Lookbook.
Since this made me go through all calls of link_translate, I took the opportunity to also replace
occurences of manual calls to OpenProject::Static::Links with the new abbreviated call syntax.
This is making the interface of BaseCallable more consistent.
Previously it was unclear, whether the params passed to perform
should be used to reference parameters or whether the attribute accessor
should be used. Different code used different approaches.
To apply this change more consistently, BaseContracted also removed
params from the methods called inside its own perform method, e.g.
before_perform or after_validate.
At a later point we might consider removing this argument from other large
inheritors as well, for example `BaseServices::SetAttributes#set_attributes`.
Diff was achieved by running
rubocop -A --only Style/FrozenStringLiteralComment,Layout/EmptyLineAfterMagicComment,Style/RedundantFreeze
for the module folders of the affected modules.
This change is part of the effort to slowly roll out frozen
string literals across the entire application.
Including basic services to manipulate them. The
service account is managed as part of the ScimClient's lifecycle.
After creation there is no way to change the chosen authentication method.
This is a simplification for us, since we do not need to care about revoking
earlier ways of authentication etc.
Once the XML contains multiple certificates, the metadata hash
has a nil idp_cert. The idp_cert_multi key is always populated. However,
we never tried parsing data from there, so it was lost.
The way that the Saml::Provider right now represents multiple certificates
is to concatenate them inside the idp_cert, so the metadata parsing
has been adapted to use that.
As far as I can tell from existing code and forms, we only want to use
the fingerprint as a fallback and not as a primary means of authentication.
However, the HashBuilder would have only returned the fingerprint, if both
a fingerprint and a certificate were present, which sadly always seems to be
the case, because even when creating a new provider, we fill the fingerprint
from the provided certificate.
Since the omniauth configuration happens from the provider hash, this means
that we so far only ever used the fingerprint for validation.
* add a new helper for breadcrumb in wiki page
* set page header in destroy page
* set page header in edit page
* set page header in history and rename and edit parent pages
* change toolbar items into page header items
* add new wiki action to sub header
* remove version edit page which is not in use any more
* add export as a menu item of the header
* fix rubocup errors
* fix failing tests
* replace page header in annotate page
* replace page header in diff page
* add page header in select menu page
* fix rubocup errors
* fix errors on rename test
* fix errors on selecting items from toolbar
* fix errors on tests for child pages
* set correct permission for configure menu item
* replace page header in summary page
* replace page header in summary details page
* edit docs of sub header
* add page header in wiki new page
* remove controller and a route for edit method
* undo changes for docs of sub header
* extract header in show page into a new component
* use helper method in header component
* add wiki module to the breadcrumb
* rename page header component for wiki page
* simplify how lock and lock implemented
* extract sub header
* remove wiki title from header of history page
* fix page header in new page
* use page.find_test_selector in test
* fix failing test for summary page
* fix failing test for wiki child pages
* change the summary test
* use test selector for page header title
* undo changes for activate user in admin
* use test selector in adding editing history test
* use test selector in attachment upload test
* use test selector in child pages tests
* use test selector in wiki menu items tests
* change test selector for breadcrumbs
* extract conditions to show edit button into a method
* extract conditions to show rollback action menu item into a method
* extract conditions to show create button into a method
* fix duplicated code in test
* Remove outdated `show_local_breadcrumb` method which is replaced by the Primer::PageHeader breadcrumb
* Remove `default_breadcrumb` method as it serves no prupose any more
* Remove the old breadcrumb and its hook completely
* remove breadcrumbs path from rename
* fix translations errors in storages
* undo changes on translations
* remove default breadcrumbs in time tracking controller
---------
Co-authored-by: Behrokh Satarnejad <b.satarnejad@openproject.com>
Co-authored-by: Behrokh Satarnejad <62008897+bsatarnejad@users.noreply.github.com>
This effectively removes the year from a bunch of copyright headers.
We stopped indicating a specific year at some point, but
didn't propagate this change to every file yet.
* Start implementing mobile behavior for border-box table
* Auto column
* Allow labels
* Hide rows on mobile
* Change order of project and start time
* Add implementation for oidc
* Reimplement wide columns
* Documentation
* Remove custom mobile labels
* Extract heading class
* Fix spacing between rows in mobile BorderBoxTable
* Remove doubled code block
---------
Co-authored-by: Henriette Darge <h.darge@openproject.com>