Commit Graph

1126 Commits

Author SHA1 Message Date
Petr Vobornik
7e7fe57fc9 webui: hide non-readable fields
hide widgets if associated field had received attribute level rights
without 'r' right.

Explicit rights are required to avoid hiding of special widgets which
are not associated with any LDAP attribute.

https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
2b2f379811 webui: hide empty fields and sections
Hide widgets without a value. Must be explicitly turned on. In widget by
`hidden_if_empty` flag. Or globally by `hide_empty_widgets` flag. Global
hiding can be individually turned off by `ignore_empty_hiding` flag.

https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
1f13e56ac6 webui: widget initialization
- used `ctor_init` instead of `init` to avoid name collision with
  existing logic
- `ctor_init` is called right after widget instantiation. Basically support
  better inheritance for the old class system which doesn't have proper
  contructors

https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
01a8175119 webui: better value-change reporting
- widget save() save method should try to always return value even if read only
- report value-change event with actual value to allow processing of the value

https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
2257f12652 webui: display fields based on otp token type
- in adder dialog

https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
15e85db8f8 webui: add i18n for the rest of QR code strings
https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
325bbf5bbf webui: add token from user page
Add 'Add OTP Token' action to user action menu.

This option is disabled in self-service when viewing other users.

https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
475f6e293e webui: better otp token type label
https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
72869e2687 webui: add measurement unit to otp token time fields
https://fedorahosted.org/freeipa/ticket/4402

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-11 17:55:17 +02:00
Petr Vobornik
ad6001fc2e webui: notify psw change success only once
Password change initiated from header menu notified success twice.
First one in `dialogs.password.dialog` and second one in a success
callback. The second notification was removed.

Caused by:
https://fedorahosted.org/freeipa/changeset/870db2f677dff01750aeec104c90fce3ca0e54be/

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-08 12:52:36 +02:00
Petr Vobornik
f70eafaedb webui: switch associators if default doesn't work
Make association auto-magic little bit less stupid. Now it supports
adding of new attribute member with add_member and remove_member
methods only on one side of the relationship.

https://fedorahosted.org/freeipa/ticket/4507

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-08 12:45:29 +02:00
Petr Vobornik
5e36cc5215 webui: do not show login error when switching back from otp sync screen
Errors should reflect only a result of last operation.

https://fedorahosted.org/freeipa/ticket/4470

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-08 12:42:16 +02:00
Petr Vobornik
050431c4dd webui: adjust behavior of bounce url
- bounce url param was renamed from 'redirect' to 'url'
- support for 'delay' param added

Behavior:

- "Continue to next page" link is shown if 'url' is present
- page is no longer automatically redirected if 'url' is present
- automatic redirect is controlled by 'delay' param - it specifies
  number of seconds until redirection
- info message 'You will be redirected in Xs' is show to notify
  the user that something will happen. It's useful even if delay
  is 0 or negative because redirection might be slow.
- counter is decremented every second
- delay is ignored if parsed as NaN

https://fedorahosted.org/freeipa/ticket/4440

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-08 12:32:16 +02:00
Petr Vobornik
c50dff2282 webui: extract complex pkey on Add and Edit
DNS zone 'Add and Edit' failed because of new DNS name encoding.

This patch makes sure that keys are extracted properly.

https://fedorahosted.org/freeipa/ticket/4520

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-09-05 15:10:47 +02:00
Petr Vobornik
981b399c4e webui: fix group type padding
Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 14:10:35 +02:00
Petr Vobornik
9446c4c8b4 webui: disable batch action buttons by default
action buttons associated with batch actions were enabled by default, but
they were disabled right after facet creation and a load of data. It caused
a visual flicker.

UX is enhanced by making them disabled by default.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 14:10:35 +02:00
Petr Vobornik
d138b44480 webui: sshkey widget - usability fixes
- save one click by opening edit dialog right after adding new row
- add margin between fingerprint and "show/edit" button
- fix honoring of writable/read-only flags upon row creation

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 14:10:35 +02:00
Petr Vobornik
356059e07d webui: improve rule table css
- category radio line has line-height large enough to contain
  undo button -> content doesn't move several pixels on change
- remove vertical padding from btns in table headers to maintain
  about the same height
- remove invisible border from link buttons to have the same height
  for disabled and enabled button

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 14:10:35 +02:00
Petr Vobornik
8f73bf3713 webui: convert widget.less indentation to spaces
Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 14:10:35 +02:00
Petr Vobornik
27128bd8f5 webui: better authentication types description
Tooltips were added to "User authentication types" and "Default user
authentication types" to describe their relationship and a meaning of
not-setting a value.

https://fedorahosted.org/freeipa/ticket/4471

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 10:47:08 +02:00
Petr Vobornik
19bef5bd01 webui: tooltip support
Allow to set 'tooltip' attribute in spec. It displays info icon
with Bootstrap's tooltip near field's label.

https://fedorahosted.org/freeipa/ticket/4471

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 10:47:08 +02:00
Petr Vobornik
def8696819 webui: rename tooltip to title
- use title for input's elements 'title' attribute
- tooltip for Bootstrap's tooltip component

https://fedorahosted.org/freeipa/ticket/4471

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-21 10:47:08 +02:00
Petr Vobornik
4832f2986d webui: login screen - improved button switching
- added cancel button to reset password view of login screen
- re-implemented buttons hiding mechanism
- switching between 'Reset Password' and 'Reset Password and Login' according to presence of value in OTP field

https://fedorahosted.org/freeipa/ticket/4470

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-20 19:28:06 +02:00
Petr Vobornik
cba5247f99 webui: improved info msgs on login/token sync/reset pwd pages
- add info icons to distinguish and classify the messages.
- add info text for OTP fields
- fix login instruction inaccuracy related to position of login button

https://fedorahosted.org/freeipa/ticket/4470

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-20 19:28:06 +02:00
Petr Vobornik
a94fc09b57 webui: display expired session notification in a more visible area
The notification is a primary information of the page. It should be more highlighted.

https://fedorahosted.org/freeipa/ticket/4470

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-20 19:28:06 +02:00
Petr Vobornik
e995d2b827 webui: better error reporting
On page:
- styled to use proper line breaks
- "centered" by .container class and not by huge padding

Console:
- proper line breaks
- links in stack trace are clickable(Chrome)

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-08-20 10:42:57 +02:00
Petr Vobornik
8288135b5b webui: add bounce url to reset_password.html
reset_password.html now redirects browser to URL specified in 'redirect'
uri component (if present).

The component has to be URI encoded. ie (in browser console):

$ encodeURIComponent('http://pvoborni.fedorapeople.org/doc/#!/guide/Debugging')

-->
"http%3A%2F%2Fpvoborni.fedorapeople.org%2Fdoc%2F%23!%2Fguide%2FDebugging"

-->

https://my.freeipa.server/ipa/ui/reset_password.html?redirect=http%3A%2F%2Fpvoborni.fedorapeople.org%2Fdoc%2F%23!%2Fguide%2FDebugging

https://fedorahosted.org/freeipa/ticket/4440

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:36:08 +02:00
Petr Vobornik
ac7df79a43 webui: remove remaining action-button-disabled occurrences
Buttons in hbactest check for 'action-button-disabled' but it's never set.

https://fedorahosted.org/freeipa/ticket/4258

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:24:21 +02:00
Petr Vobornik
3966417779 webui: replace action_buttons with action_widget
Simplify code base by reuse of 'disable' feature of button_widget. All
occurrences of action-button which were disabled/enabled were replaced
by button-widget.

https://fedorahosted.org/freeipa/ticket/4258

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:24:21 +02:00
Petr Vobornik
9aed114d82 webui: detach facet nodes
Detach/attach facet nodes when switching facets instead of
hiding/showing.

Keeps dom-tree more simple.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:21:37 +02:00
Petr Vobornik
fb975bba20 webui: internet explorer fixes
Fixed:
1. IE doesn't support value 'initial' in CSS rule.
2. setting innerHTML='' also destroys content of child nodes in
LoginScreen in IE -> reattached buttons have no text.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:20:15 +02:00
Petr Vobornik
4059aa12a4 webui: fix nested items creation in dropdown list
Items nested in other items were created in root list instead of nested list.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:18:44 +02:00
Petr Vobornik
855c59c7fc webui: support wildcard attribute level rights
Reproduction:
* add 'extensibleObject' object class to target object

https://fedorahosted.org/freeipa/ticket/4380

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-28 10:13:24 +02:00
Petr Vobornik
ad593a5c06 webui: fix disabled state of service's PAC type
Nested options (MS-PAC and PAD) of service's PAC type should be
disabled if no value is supplied (default value is "Inherited
from server configuration"). That was not the case - regression.

This patch fixes it and along with it simplifies the update method
of option_widget_base to be more comprehensible.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 12:39:16 +02:00
Petr Vobornik
8ba75506c2 webui: disable ipapermbindruletype if permission in a privilege
User is not able to change Bind Rule Type if permission is already
member of a privilege. Let's disable it and don't confuse user.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 12:30:23 +02:00
Petr Vobornik
62ac6edcf4 webui: fix selection of empty value in a select widget
Little regression - select widget could not handle empty or no array as an
input value.

It broke 'undo' operation in Permissions' 'Type' attribute while switching
between '' and some value.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 12:30:23 +02:00
Petr Vobornik
75a96fb4c2 webui: show managed fields as readonly and not disabled
Visible read-only fields are no longer displayed as disabled in
permission details facet.

https://fedorahosted.org/freeipa/ticket/4254

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 12:30:23 +02:00
Petr Vobornik
e60cfa2862 webui: fix add of input group class
The input-group class was added based on visibility of child elements.

This failed when it had to be determined *before* displaying the widget.

Now it's added if the buttons are not hidden by `display: none` CSS rule.

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 12:30:23 +02:00
Petr Vobornik
1a904708cc webui: reflect readonly state
Separate update of read-only state from update of value.

It should be possible to switch from read-only UI to editable UI without
value change.

https://fedorahosted.org/freeipa/ticket/4254

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 12:30:23 +02:00
Petr Vobornik
8fcf6d6b34 webui: option_widget_base: sort options
https://fedorahosted.org/freeipa/ticket/4253

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 10:47:06 +02:00
Petr Vobornik
d2f2fc5add webui: attr widget: get list of possible attrs from ipapermdefaultattr
Very useful for managed permissions since the list of attrs in metadata
might be smaller that default attributes. This smooths behavior if one
removes an attr from effective attrs which is not in metadata. Without
this it will disappear from the list and one has to add it manually
through 'Add'.

https://fedorahosted.org/freeipa/ticket/4253

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 10:47:06 +02:00
Petr Vobornik
4aefc0d6fe webui: custom attr in attributes widget
Web UI doesn't always know what are the possible attributes
for target object. This will allow to add custom attributes
if necessary.

https://fedorahosted.org/freeipa/ticket/4253

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 10:47:06 +02:00
Petr Vobornik
9fa447cb6e webui: optimize (re)creation of option widget
There is a case where attributes widget can contain > 1000 items.
It's about 3000 nodes. It's slow in jQuery. Simple move to dojo
speeds it up (is closer to native calls) while maintaining developer
friendliness.

Now the biggest lag is in browser's render. It's probably not worth
developer time to optimize that.

https://fedorahosted.org/freeipa/ticket/4253

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 10:47:06 +02:00
Petr Vobornik
740d42257f webui: add filter to attributes widget
Adds filter field to attribute box in permissions for better user
experience. User can then quickly find the desired attribute.

Initial version of the patch authored by: Adam Misnyovszki

https://fedorahosted.org/freeipa/ticket/4253

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 10:47:06 +02:00
Petr Vobornik
b68f819de7 webui: improve usability of attributes widget
Attributes widget layour was changed from tiny table which allowed
to display only few options to a checkbox list with multiple
columns (depends on container).

Check all attributes option was removed to force the user
to read through the attributes which he selects.

Initial version authored by: Adam Misnyovszki

https://fedorahosted.org/freeipa/ticket/4253

Reviewed-By: Endi Sukma Dewata <edewata@redhat.com>
2014-07-21 10:47:06 +02:00
Petr Vobornik
03c25bd98e webui: capitalize labels of undo and undo all buttons
Make the label of these buttons consistent with other buttons which have
capital first letters.

Reviewed-By: Fraser Tweedale <ftweedal@redhat.com>
2014-07-08 12:00:30 +02:00
Petr Vobornik
d0c12fb0c0 webui: display messages contained in API responses
API responses can contain warnings in "messages" array. This patch
also adds support for displaying multiple notifications at the same
time in order to show the message and a status of finished operation.

Reviewed-By: Petr Spacek <pspacek@redhat.com>
2014-07-07 15:30:41 +02:00
Petr Vobornik
0b0e77cf99 webui: new navigation structure
https://fedorahosted.org/freeipa/ticket/4418

Reviewed-By: Fraser Tweedale <ftweedal@redhat.com>
Reviewed-By: Martin Kosek <mkosek@redhat.com>
Reviewed-By: Petr Spacek <pspacek@redhat.com>
2014-07-04 16:31:38 +02:00
Petr Vobornik
bc1979ac09 webui: change ipatokennotbefore and ipatokennotafter types to datetime
https://fedorahosted.org/freeipa/ticket/3369

Reviewed-By: Martin Kosek <mkosek@redhat.com>
2014-07-04 08:47:58 +02:00
Petr Vobornik
76ec9384fb webui-build: use /usr/share/java/js.jar instead of rhino.jar
/usr/share/java/rhino.jar is a Fedora's symlink to /usr/share/java/js.jar

Debian doesn't have it. Direct usage of upstream /usr/share/java/js.jar should
work on both systems.

Reviewed-By: Timo Aaltonen <tjaalton@ubuntu.com>
2014-07-03 14:19:25 +02:00