Commit Graph

93 Commits

Author SHA1 Message Date
Endi S. Dewata
d6d24be289 Refactored permission target section.
The permission target section has been modified to use widgets
to create the target selection and handle multiple fields.

Ticket #2098
2011-11-14 16:47:08 -05:00
Endi S. Dewata
9405e1a9db Added paging on search facet.
The search facet has been modified to support paging on most entities
using the --pkey-only option to get the primary keys and a batch command
to get the complete records.

Paging on DNS records is not supported because a record may appear as
multiple rows. The following entities do not have --pkey-only option:
Automount Key, Self-Service Permissions, Delegation.

The search and association facet have been refactored to reuse the
common code from the table facet base class.

Ticket #981
2011-11-11 14:44:25 +00:00
Petr Vobornik
9378e8b437 Extending facet's mechanism of gathering changes
https://fedorahosted.org/freeipa/ticket/2041

Adding option to gathering changes for update from widgets, sections, details facet.

Changes are represented by update_info { fields [] ((field_info)), commands [] ((command_info))  } object.

* On calling get_update_info() method widget, section and facet returns update_info object which represents all changes in nested objects. Thus usually widgets are creating update_infos, their containers are merging them.
* This object can be then used in details facet update method. In order to use it command_mode = 'init' has to be set. Command mode was introduced to support backward compatibility.
* command_info consists of command and priority. Priority can be set to specify exact exectuting order of commands. It can be defined on facet level by setting widget's priority. When widgit is creating command_info it should pas its priority to it.
2011-11-04 16:54:51 +00:00
Petr Vobornik
9afe4b98da Page is cleared before it is visible
https://fedorahosted.org/freeipa/ticket/1459

Changes:
 * added clear method to widgets, section, search, details, association facets
 * clear and refresh method in facet are called only if key/filter was changed
 * added id generator for widgets
2011-11-02 15:37:49 +00:00
Endi S. Dewata
7142cee430 Refactored validation code.
The validation code in details facet, dialog, and sections have
been modified to work more consistently.
2011-10-27 13:48:51 +00:00
Endi S. Dewata
725e2e4624 Merged widget's metadata and param_info.
The metadata and param_info attributes in widget have been merged
because they are redundant.

Ticket #1436
2011-10-27 13:48:17 +00:00
Endi S. Dewata
dceac44cfd Fixed problem clearing validation error on checkboxes.
The IPA.checkboxes_widget has been modified such that it performs
validation when the checkboxes are clicked. This will also clear any
validation errors.
2011-10-26 23:54:47 +00:00
Petr Vobornik
4833b208b2 Minor visual enhancement of required indicator
https://fedorahosted.org/freeipa/ticket/1696

Changes:
 * in details table facet '*' don't break colon alignment
 * bolder, bigger (-> IMHO nicer) asteriks
 * float (visual style) moved to css file
2011-10-25 15:13:30 +00:00
Endi S. Dewata
09f3e9869a Fixed inconsistent required/optional attributes.
The dialogs and details pages have been modified to use the * symbol
to mark required fields. The automount map and the DNS zone dialogs
have been modified to update the required fields according to the
input type.

Ticket #1696, #1973
2011-10-25 15:11:12 +00:00
Petr Vobornik
95b85f907b Disables gid field if not posix group in group adder dialog
https://fedorahosted.org/freeipa/ticket/1922

gidNumber is not an allowed attribute for a non-posix group.  When adding a non-posix group from the UI, unchecking the "Is this a POSIX group?:" box should disable the "GID:" field.
2011-10-06 13:14:51 +02:00
Endi S. Dewata
e9c8581ffc Added selectable labels for radio buttons.
The radio buttons in association facet and radio widget are now
linked to their labels so that they can be selected by clicking
the labels.

Ticket #1782
2011-10-05 15:08:07 +02:00
Endi S. Dewata
62817a4f72 I18n clean-up.
The hard-coded 'undo' and 'undo all' labels have been moved into
internal.py to allow translation.

Ticket #1897
2011-10-03 15:13:38 +02:00
Petr Vobornik
dabc6cd578 Fixed: Some widgets do not have space for validation error message
https://fedorahosted.org/freeipa/ticket/1454

The following widgets should call create_error_link() to create a space to show validation error messages:

  IPA.checkbox_widget
  IPA.checkboxes_widget
  IPA.radio_widget
  IPA.select_widget
  IPA.table_widget
  IPA.attributes_widget
  IPA.rights_widget
  IPA.target_section (it's a widget)

Solution:
 * added call to checkbox, checkboxes, radio, select, table, attributes widget
 * rights_widget inherits it from checkboxes_widget.
 * target_section IS NOT a widget as it doesn't inherit from widget. It's still a section, which shows different widgets based on its state.
 * table_widget displays error_link between pagination and summary.

Additional:
 * added padding and unified font-weight for error message
2011-09-29 16:57:37 +00:00
Endi S. Dewata
ecb58275e3 Use editable combobox for service type.
The service type field in the service adder dialog has been modified
to use an editable combobox.

Ticket #1633.
2011-09-29 16:57:05 +00:00
Endi S. Dewata
188cc5c496 Fixed problem displaying special characters.
Some jQuery objects in various locations have been modified to use
text() to show values obtained from the server (except messages).
The text() will automatically encode special characters.

Ticket #1798
2011-09-23 15:27:17 +00:00
Endi S. Dewata
eaf0a83ab1 Fixed problem on combobox with search limit.
The IPA.combobox_widget has been modified such that if the drop-down
list doesn't contain the stored value (due to search limit) it will
not select anything from the list.

The widget has also been modified not to select the value that matches
the filter automatically because that might not be the user's intention.

Ticket #1819
2011-09-23 13:15:57 +00:00
Endi S. Dewata
390d017e32 Modified dialog to use sections.
The IPA.dialog has been modified to store sections instead of fields.
If there is no sections specified, it will create a default section.

The adder dialog for automount map has been modified such that the
fields related to indirect map are stored in a section which will
only be visible when the map type is set to indirect.

The adder dialog for host has been modified such that it uses a
custom section for hostname and DNS zone and standard section for
the other fields.

Ticket #1394
2011-09-23 13:13:10 +00:00
Endi S. Dewata
21cd1857c8 Fixed posix group checkbox.
In the adder dialog for groups the checkbox has been modified to use
the correct field name "nonposix" and be checked by default.

Note: This is a temporary fix to minimize the changes due to release
schedule. Eventually the field label will be changed into "Non-POSIX
group" and the checkbox will be unchecked by default, which is more
consistent with CLI.

Ticket #1799
2011-09-20 18:50:46 +00:00
Petr Vobornik
df049ff13d Code cleanup: widget creation
https://fedorahosted.org/freeipa/ticket/1788

Removed code duplication of undo links.
Simplified code of widget creation to be more readable.
2011-09-13 17:32:18 +00:00
Endi S. Dewata
9cd76c5bf9 Fixed problem with combobox using Sahi
The IPA.combobox_widget has been temporarily fixed to support automation
using Sahi.

Ticket #1754
2011-09-01 21:22:31 +00:00
Endi S. Dewata
ebb0b386a3 Fixed problem with combobox.
The entity select widget has been modified to handle timing issue
in both dialog box and details page.

Ticket #1736
2011-08-31 16:29:55 +00:00
Petr Vobornik
6b19b2dc89 Enable update and reset button only if dirty
https://fedorahosted.org/freeipa/ticket/1697

Original problem:
WEBUI: Update automount location refer to unknown command
Update name of the automount location (Policy -> Automount ->
custom_location -> Settings -> Update) in the WEBUI refer to an unknown command.

Solution:
Tracking dirty state in field -> section -> details facet.
'Reset' and 'Updates' in details facet are enabled only if facet is dirty.

Removes the problem above and 'no modification to be performed' annoyance.
2011-08-31 05:08:18 +00:00
Endi S. Dewata
54503518aa Fixed host adder dialog to show default DNS zone.
The DNS zone widget for host adder dialog has been modified not to
provide an empty option, so it will show the first available zone.

Ticket #1685
2011-08-30 14:51:03 +00:00
Petr Vobornik
508217ada7 Modifying sudo options refreshes the whole page
https://fedorahosted.org/freeipa/ticket/1689

Currently adding or deleting sudo options will refresh the entire page. It's not a problem but the code could be optimized to refresh only the sudo options table
2011-08-29 15:21:15 +00:00
Endi S. Dewata
fcd927a126 Fixed default map type in automount map adder dialog.
The adder dialog for automount map has been modified to select the
direct map by default.

Ticket #1698
2011-08-25 13:57:08 +00:00
Petr Vobornik
950a5da34d Validation of details facet before update https://fedorahosted.org/freeipa/ticket/1676 The ticket is a duplicate of server error, but it revealed few UI errors.
Newly performs validation of details facet before update. If validation fails, notification dialog is shown and command isn't executed.
Fixed integer minimum and maximum value checking.
Read-only and non-writable fields are no longer considered required.
2011-08-25 00:50:52 +00:00
Petr Vobornik
4a72593893 Uncheck checkboxes in association after deletion
https://fedorahosted.org/freeipa/ticket/1639
2011-08-19 20:54:22 +00:00
Endi S. Dewata
2012f847f3 Fixed problem selecting value from combobox
The IPA.combobox_widget has been modified to use the 'change' event
to capture the selected value from the drop-down list.

Ticket #1654
2011-08-17 18:03:29 +00:00
Adam Young
b36df6e9b9 removing setters setup and init
change widget and widget unit tests to hold on to entity, not entity name.
    Replacing entity_name with entity.name  in most places.
       The one exception is columns for table_widget.
       Widgets that refer to other entities have to have late resolution of the entity object, due to circular dependencies.

    cleanup entity assignment.
    removed template and layout,
    merged setup into create
    adder dialogs adjust height for external
    removed init from widget, isection, association, facet, host and service

    Make unit tests use factory.
    fix functional tests to click find link correctly.
    tweak to activation test, but still broken.
    moved initialization code to the end
    use --all for hbacrule find, so the type shows up now

    fixed dns exception code and exception handling for get_entity
    replace metadata look up with value from entity.
    fixed author lines
    removed duplicate columns in managed by facets.
    tweak to nav fix in order to initialize tab.
    more defensive code
    update metadata for true false
    one line init for entity_name in widget
    move init code to end of constructor functions
    moved constants to start of function for adder_dialog
    external fields for dialogs initialized at dialog creation
    sudo sections: move add fields and columns to widget definition.

   The parameter validation in IPA.column ...This is precondition checking.  Note that it merely throws an exception if the entity_name is not set.  I want this stuff at the top of the function so that it is obvious to people looking to use them what is required.  I added a comment to make this clear, but I'd like to keep precondition checking at the top of the function.

   decreased the scope of the pkey_name and moved the initiailzation fof columns into the setup_column function for association_tables

   return false at the end of click handler

   removed blank labels in sudo command section

   fix radio buttons for sudo category

   fixed table side for adder dialogs with external fields
    comments for future direction with add_columns

    https://fedorahosted.org/freeipa/ticket/1451
    https://fedorahosted.org/freeipa/ticket/1462
    https://fedorahosted.org/freeipa/ticket/1493
    https://fedorahosted.org/freeipa/ticket/1497
    https://fedorahosted.org/freeipa/ticket/1532
    https://fedorahosted.org/freeipa/ticket/1534
2011-07-28 14:17:25 -04:00
Endi S. Dewata
538c7a7eb8 Removed reverse zones from host adder dialog.
The host adder dialog has been modified to specify the new flag
for retrieving the forward zones only.

Ticket #1458
2011-07-18 16:48:02 -04:00
Endi S. Dewata
571274e978 Entity select widget improvements
The IPA.entity_select_widget has been modified into a searchable and
editable drop down list. The base functionality has been extracted
into IPA.combobox_widget.

Ticket #1361
2011-07-18 14:47:57 -04:00
Adam Young
a746c613a4 dnsrecord-mod ui
Brings the DNS record infrastructure in line with the other entities.
Uses widgets, nested search, and a littel bit of overloading for dns specific behavior
The records now have their own page.

simplified link widget and use for dns
links work for nested entities.

change the field in the link widget to other_entity to avoid name collision.
unit test for entity link.

fixed reference to entity for getting pkeys

work around lack of setattr for dns record mod.
update wasn't deducing locked_field type correctly.
don't overwrite param_info in init
data is required on adder dialog
delete works for multiple records
use show instead of find for entity_link_widget.

https://fedorahosted.org/freeipa/ticket/1038
https://fedorahosted.org/freeipa/ticket/1448
https://fedorahosted.org/freeipa/ticket/577
https://fedorahosted.org/freeipa/ticket/1460
2011-07-13 21:57:18 +00:00
Adam Young
e0238b5218 entity_select naming
http://fedorahosted.org/freeipa/ticket/1467
2011-07-12 11:01:18 -04:00
Endi S. Dewata
3229eee074 Added sudo options.
A table has been added into sudo rule details page for managing
sudo options.

Ticket #1447
2011-07-11 22:11:40 +00:00
Adam Young
30492ef3fa clear errors on reset
https://fedorahosted.org/freeipa/ticket/1446
2011-07-08 17:34:55 +00:00
Adam Young
0a5f103733 check required on add
previsouly was checked on key down, but that does the check too soon.
Next attempt was on blur, but that had numerous problems.  This now checkes when the add button is clicked.
works for entity_select widget, too
Checks upon form submission

https://fedorahosted.org/freeipa/ticket/1437
2011-07-08 01:36:52 +00:00
Adam Young
e4a444ba81 HBAC deny warning
shows dialog if there are any HBAC deny rules.  Dialog provides option to navigate to the HBAC page.  Deny rules have their rule type value show up in red.

Only shows up fro administrators, not for self service users.

https://fedorahosted.org/freeipa/ticket/1421
2011-07-06 21:52:00 +00:00
Adam Young
a3a9267334 validate ints
validate integers whether meta comes from metadata or param_info

https://fedorahosted.org/freeipa/ticket/1415
2011-07-05 20:31:00 +00:00
Adam Young
7a25523d63 entity link for password policy
https://fedorahosted.org/freeipa/ticket/1111

reset() now hides both the link and the label
calucalating  should_link is now a function that can be overloaded.
2011-07-01 16:49:49 -04:00
Adam Young
9d8ddb5d46 config widgets entity select default group checkbox for migration 2011-06-30 22:26:19 -04:00
Endi S. Dewata
2a52723465 Fixed hard-coded messages.
Hard-coded messages in the UI have been replaced with I18n messages.

Ticket #1396
2011-06-30 14:50:09 -04:00
Endi S. Dewata
f1e1223bd9 Fixed undo all problem.
The IPA.multivalued_text_widget has been modified such that the
'undo all' will appear only if at least one of the values is dirty.

Ticket #1109
2011-06-27 20:55:47 -04:00
Adam Young
6e967d8fe7 validate required fields https://fedorahosted.org/freeipa/ticket/1329
overides required with optional.
2011-06-27 20:15:56 -04:00
Adam Young
3a36eced53 tooltips for host add
https://fedorahosted.org/freeipa/ticket/1363
https://fedorahosted.org/freeipa/ticket/1361
2011-06-22 02:12:25 +00:00
Adam Young
d3bf7e4284 editable entity_select
jsl fixes

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

remove redundant call to focus.
2011-06-20 15:36:30 -04:00
Adam Young
0399c140d9 entity select undo
Tests for dirty after the RPC call has completed and the select has updated
Passes the original value to the RPC completion, so it isn't lost upon RPC completion

https://fedorahosted.org/freeipa/ticket/1340
2011-06-20 17:24:21 +00:00
Endi S. Dewata
79ce958a3c Storing page number in URL.
The association facet has been modified to store the current page
number in the browser's URL. This way page changes are stored in
browser's history allowing the back button to work properly.

Ticket #1264
2011-06-17 16:01:40 -04:00
Adam Young
dbeae4e3f4 test dirty onchange
instead of blindly setting dirty, check if the filed has a different value than it originally did.

https://fedorahosted.org/freeipa/ticket/1337
2011-06-16 20:29:14 +00:00
Adam Young
c03fab1095 test dirty multivalue test the multivalue widgets for changes before showing the undo link. https://fedorahosted.org/freeipa/ticket/1337 2011-06-16 20:29:10 +00:00
Adam Young
c610a17383 test dirty textarea
runs the testdirty check before setting the undo tag for a textarea
2011-06-16 14:36:04 -04:00