Commit Graph
198 Commits
Author SHA1 Message Date
Ana Krivokapic 2d86d7d85a Make Expression field required when adding automember condition
https://fedorahosted.org/freeipa/ticket/4053
2013-11-27 16:56:59 +01:00
Ana Krivokapic afbf528a83 WebUI: Add userClass attribute to user and host pages
Add userClass attribute to:
- user and host adder dialogs
- user and host detail facets

Design page: http://www.freeipa.org/page/V3/Integration_with_a_provisioning_systems
https://fedorahosted.org/freeipa/ticket/3590
2013-11-19 14:27:50 +01:00
Ana Krivokapic b7c7eaf8d9 Add automember rebuild command to the web UI
Design: http://www.freeipa.org/page/V3/Automember_rebuild_membership
https://fedorahosted.org/freeipa/ticket/3928
2013-11-15 13:28:16 +01:00
Sumit Bose b5e60c2020 Remove AllowLMhash from the allowed IPA config strings
Fixes https://fedorahosted.org/freeipa/ticket/3795
2013-11-01 09:28:35 +01:00
Petr Vobornik e3d56597cd Fix password expiration notification
- was broken by navigation and application controller refactoring

https://fedorahosted.org/freeipa/ticket/4003
2013-10-30 13:31:12 +01:00
Petr Vobornik efafd7fe87 Web UI source code annotation
Part of ongoing Web UI documentation effort. Source code is annotated in a way that it can be processed by documentation generator.
2013-10-16 18:08:17 +02:00
Petr Vobornik 3fa304d95e Removal of unused code 2013-10-16 18:08:16 +02:00
Petr Vobornik b4fc6f4ba8 Load updated Web UI files after server upgrade
Issue:
* There was no caching policy specified.
* -> Browsers use their own default policy.
* -> After upgrade, some Web UI files might have been actualized some not.
* -> With schema change may result into weird bugs in Web UI

Solution considerations:

1. Detect server version change and hard-reload at runtime
Detection is easy. Problem is the reload. Obvious candidate 'window.location.reload(true)' works in Firefox but not in Chrome because expected behavior when parameter is used is not in standard and therefore Chromium/WebKit authors did not implement it.

2. Application Cache
HTML 5 technology which lets web apps to run offline. Besides weird issues with event handlers which I encountered, this would be an ideal candidate. Simple change of manifest file would lead to reload of all files (requires reload of page to used the new files).

Showstopper was usage with untrusted certificate. If user did not add exception for the cert or its CA and would visit the page for a second time, all AJAX calls would fail.

3. Set Expires to now() for everything
Web UI rarely changes so this is an overkill. Setting it to different value is not a solution either. We can't predict when the upgrade will happen and when new Web UI will be needed.

Solution:
* Implemented a mini loader which loads basic resources. Dojo loader takes action after Dojo is loaded.
* The loader adds a version parameter (?v=__NUM_VERSION__) to all requests.
* Version is defined in the loader. It's set to current in `make version-update`.
* All static pages use this loader to fetch their resources.
* Version is also passed to dojo loader as cache-bust for the same effect.
* Expire header was set to 'access time plus 1 year' for /ui folder. Exceptions are HTML files and loader (set to immediate expiration).

Possible issues:
* Images are cached but not requested with version param.
  * Images with version and without are considered different
  * -> We would have to attach version to all URIs - in CSS and in JS. But we should avoid changing jQuery UI CSS.
  * Proposed solution is to change image name when changing image. Image change is done rarely.
* Version is set by build and therefore updated just on server update. It might cause trouble with different update schedule of plugins.
  * No action taken to address this issue yet.
  * We might leave it on plugin devs (own .conf in /etc/httpd/conf.d/)
  * or set expires to now for all plugins
* running `make version-update` is required in order to use static version of UI for testing

https://fedorahosted.org/freeipa/ticket/3798
2013-10-16 18:06:30 +02:00
Petr Vobornik 6a124160a5 Fix enablement of automount map type selector
Map type radio used old way of defining that its value should not be used in add command.  Recent patch related to 'enable' attribute hardened/fixed the behavior of radio widgets so they are disabled in UI as well when enabled==false. Automount did not reflect this change.

https://fedorahosted.org/freeipa/ticket/3954
2013-10-03 09:13:45 +02:00
Petr Vobornik edf0719409 Allow edit of ipakrbokasdelegate in Web UI when attrlevelrights are unknown
Old host entries are missing object class with krbticketflags attribute. Therefore UI does not receive attrlevelrights for it. This OC is added when ipakrbokasdelegate is set.

This patch adds the usual hack for such cases.

https://fedorahosted.org/freeipa/ticket/3940
2013-09-26 10:24:14 +02:00
Petr Vobornik 5c4a72de59 Fix redirection on deletion of last dns record entry
https://fedorahosted.org/freeipa/ticket/3907
2013-09-16 13:56:25 +02:00
Petr Vobornik 92569b712c Update idrange search facet after trust creation
Adding a trust creates a range -> range search facet should be marked as expired.

https://fedorahosted.org/freeipa/ticket/3874
2013-08-28 14:23:42 +02:00
Petr Vobornik 34342b9a97 Show human-readable error name in error dialog title
Fixes RPC server's JSON encoding of exception's name.

It allows to show the name in Web UI's error dialog title.
2013-08-26 13:05:36 +02:00
Petr Vobornik e61c2e3441 Hide 'New Certificate' action on CA-less install
This action calls cert-request command which is not available on CA-less installs. Thus this action won't be enabled and therefore there is no reason to keep it visible.

https://fedorahosted.org/freeipa/ticket/3363
2013-08-22 15:23:56 +02:00
Petr Vobornik ca0d959df8 Add base-id, range-size and range-type options to trust-add dialog
https://fedorahosted.org/freeipa/ticket/3049
2013-08-22 15:23:56 +02:00
Petr Vobornik 006c4eabd9 Hide delete button in multivalued widget if attr is not writable
https://fedorahosted.org/freeipa/ticket/3799
2013-08-13 12:42:09 +02:00
Petr Vobornik ff6f958d96 Make ssh_widget not-editable if attr is readonly
https://fedorahosted.org/freeipa/ticket/3800
2013-08-13 12:41:48 +02:00
Tomas Babej 69394bab5a Remove support for IPA deployments with no persistent search
Drops the code from ipa-server-install, ipa-dns-install and the
BindInstance itself. Also changed ipa-upgradeconfig script so
that it does not set zone_refresh to 0 on upgrades, as the option
is deprecated.

https://fedorahosted.org/freeipa/ticket/3632
2013-08-09 12:14:42 +02:00
Ana Krivokapic 69bcfa49d4 Expose ipaRangeType in Web UI
https://fedorahosted.org/freeipa/ticket/3759
2013-07-29 10:38:03 +02:00
Ana Krivokapic 2ca280c56d Honor 'enabled' option for widgets.
https://fedorahosted.org/freeipa/ticket/3793
2013-07-26 16:32:47 +02:00
Petr Vobornik 881290b010 Web UI search optimization
This patch optimizes options used in commands executed by search pages.

1) Removed --all from _find and _show commands used by search pages. All displayed attributes should be already included in default attributes.

2) Removed search_all_attributes - Not needed since introduction of paging.

3) Added --no-members options to search _show commmands. Members are not displayed on search pages and such change drastically improves performance. It reduces computations on server and amount of data transferred to Web UI.

https://fedorahosted.org/freeipa/ticket/3706
2013-07-23 13:14:02 +02:00
Petr Vobornik e3cddab940 Fix container element in adder dialogs
Host and DNS adder dialogs used span element as container for block elements. It's not valid nor consistent with other forms.

'span' was replaced by 'div'

https://fedorahosted.org/freeipa/ticket/3744
2013-07-16 13:15:51 +02:00
Petr Vobornik a83e879e18 Better automated test support
1. add class to active facet instead of using direct style modification for hiding/showing
2. add name attribute to tables and dialog buttons and error dialog

https://fedorahosted.org/freeipa/ticket/3744
2013-07-16 13:15:47 +02:00
Petr Vobornik 9f223871a7 Disable checkboxes and radios for readonly attributes
https://fedorahosted.org/freeipa/ticket/3764
2013-07-09 11:48:19 -04:00
Martin Kosek 77ae4da706 Remove entitlement support
Entitlements code was not tested nor supported upstream since
version 3.0. Remove the associated code.

https://fedorahosted.org/freeipa/ticket/3739
2013-06-26 14:11:42 +02:00
Petr Vobornik ac2263d64c Fix default value selection in radio widget
https://fedorahosted.org/freeipa/ticket/3718
2013-06-24 16:58:15 +02:00
Ana Krivokapic 851b091832 Fix displaying of success message
Make sure that the success message is properly populated with actual number of
items that were successfully added/removed.

https://fedorahosted.org/freeipa/ticket/3708
2013-06-13 17:42:46 +02:00
Petr Vobornik daa9b4e348 Regression fix: rule table with ext. member support doesn't offer any items
There is a JS error.

Rule tables with external member has more than one column and therefore exclude parameter for adder dialog is not array of strings but array of objects. normalize_values function can't work with it and causes JS error.

This patch creates proper exclude array before passing it to adder dialog.

https://fedorahosted.org/freeipa/ticket/3711
2013-06-13 17:42:30 +02:00
Petr Vobornik fae658f505 Fix regression: missing facet tab group labels
Currently there is only empty space between facet tabs and facet title.

It's a regression caused by recent refactoring.

https://fedorahosted.org/freeipa/ticket/3688
2013-06-05 14:51:45 +02:00
Petr Vobornik ec41744e76 Regression fix: missing control buttons in nested search facets
Regression introduced by 6e90920233 - 'Move spec modifications from facet factories to pre_ops'.

https://fedorahosted.org/freeipa/ticket/3605
2013-06-03 09:23:24 +02:00
Petr Vobornik 89be148580 Web UI: move ./_base/metadata_provider.js to ./metadata.js
Metadata provider is IPA specific object, not a framework object, so it should not be in _base directory.

https://fedorahosted.org/freeipa/ticket/3604
2013-05-17 12:32:24 +02:00
Petr Vobornik 17caa5dd5a Unite and move facet pre_ops to related modules
Facet pre_ops defined in ./facet module were moved to modules where facet are actually defined. Moved pre_ops were united with the ones defined for the facets in these modules.

The move simplifies module dependencies - there is no reason to have general facet module dependent on specialized facet modules.

Pre_ops uniting makes the code simpler.

https://fedorahosted.org/freeipa/ticket/3605
2013-05-17 12:32:16 +02:00
Petr Vobornik 6e90920233 Move spec modifications from facet factories to pre_ops
Spec modifications in factories makes inheritance and extensibility more difficult.

Moving them to pre_ops allows modification of their output by other pre_ops.

https://fedorahosted.org/freeipa/ticket/3605
2013-05-17 12:32:06 +02:00
Ana Krivokapic 8d07054e1b Do not display success message on failure in web UI
https://fedorahosted.org/freeipa/ticket/3591
2013-05-17 12:31:14 +02:00
Ana Krivokapic c5bfeb1ed0 Prompt for nameserver IP address in dnszone-add
Prompt for nameserver IP address in interactive mode of dnszone-add.

Add a corresponding field to dnszone creation dialog in the web UI.

This parameter is required if and only if:
* New zone is a forward zone
* Nameserver is defined inside the new zone

Add a new unit test to cover this functionality.

https://fedorahosted.org/freeipa/ticket/3603
2013-05-16 11:01:33 +02:00
Petr Vobornik 2ba3140aff Fix: HBAC Test tab is missing
Caused by typo in metadata provider source path.

No metadata -> no HBAC test entity -> no tab

https://fedorahosted.org/freeipa/ticket/3627
2013-05-14 18:43:54 +02:00
Alexander Bokovoy 03cdc22c94 Resolve SIDs in Web UI
Introduce new command, 'trust-resolve', to aid resolving SIDs to names
in the Web UI.

The command uses new SSSD interface, nss_idmap, to resolve actual SIDs.
SSSD caches resolved data so that future requests to resolve same SIDs
are returned from a memory cache.

Web UI code is using Dojo/Deferred to deliver result of SID resolution
out of band. Once resolved names are available, they replace SID values.

Since Web UI only shows ~20 records per page, up to 20 SIDs are resolved
at the same time. They all sent within the single request to the server.

https://fedorahosted.org/freeipa/ticket/3302
2013-05-06 20:44:00 +02:00
Petr Vobornik aedded862d Enable standalone facets in menu.add_item
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:31 +02:00
Petr Vobornik c7bd6de9be Fix crash on host deleletion
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:31 +02:00
Petr Vobornik 57c504a5b9 Fix crash on ssh key add
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:31 +02:00
Petr Vobornik 13ad7da19a Fix WebUI crash when server installed as CA-less
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:31 +02:00
Petr Vobornik 242a090807 Fix trustconfig specification
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik 853cdbbfd3 Navigation: handle invalid routes
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik c506087227 Builder: Singleton_registry: return null when construction spec not available
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik cf8bab45fc Fix: make association facets in selfservice readonly
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik 348dc948ff Builder: fix join of pre_ops and post_ops arrays
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik 504fa6c786 Do not offer already added members in association dialogs when different casing
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik 0674d67acc Switch customization and registration phase
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik c5e99d7cd6 Remove entities.js, facets.js
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:30 +02:00
Petr Vobornik a069841ff0 Replace ./facets with reg.facet
https://fedorahosted.org/freeipa/ticket/3235
2013-05-06 16:22:29 +02:00