691b3cd webui: hide user attributes for SMB services section if empty

1 file Authored by pvoborni 3 years ago, Committed by rcritten 3 years ago,
    webui: hide user attributes for SMB services section if empty
    
    This section should be hidded if user object hasn't ipantuserattrs
    object class. I.e. when trusts are not enabled.
    
    Web UI framework already supports hidding of sections if the
    section contains no visible field. So to achieve it we simply needs
    to hide the fields. Given that attributelevelrights
    contains rights only for attributes of current object classes, all
    of these are regarded as not writable.
    
    We can leverage feature of input_widget that it gets hidden
    when the attribute is not writable and has no value and widget's
    "hidden_if_empty" is set to true. Thus doing it here.
    
    For this to work, it is also required to fix an issue with
    "ipanthomedirectorydrive" which is optional (in API) but Web UI
    doesn't offer "empty" ("") value. Adding it here.
    
    fixes: https://pagure.io/freeipa/issue/8336
    
    Signed-off-by: Petr Vobornik <pvoborni@redhat.com>
    Reviewed-By: Serhii Tsymbaliuk <stsymbal@redhat.com>
    Reviewed-By: Alexander Bokovoy <abokovoy@redhat.com>