Lines 175-205
def choices(syntax, udm_property):
|
Link Here
|
---|
|
175 |
""" |
175 |
""" |
176 |
MODULE.info('Find choices for syntax %s' % (syntax,)) |
176 |
MODULE.info('Find choices for syntax %s' % (syntax,)) |
177 |
opts = None |
177 |
opts = None |
178 |
if inspect.isclass(syntax) and issubclass(syntax, (udm_syntax.UDM_Objects, udm_syntax.UDM_Attribute)): |
178 |
syntax_class = syntax if inspect.isclass(syntax) else type(syntax) |
179 |
if issubclass(syntax, udm_syntax.UDM_Objects) and udm_property['multivalue'] and len(syntax.udm_modules) == 1 and not syntax.simple: |
179 |
if issubclass(syntax_class, (udm_syntax.UDM_Objects, udm_syntax.UDM_Attribute)): |
|
|
180 |
if issubclass(syntax_class, udm_syntax.UDM_Objects) and udm_property['multivalue'] and len(syntax.udm_modules) == 1 and not syntax.simple: |
180 |
opts = {'objectType': syntax.udm_modules[0]} |
181 |
opts = {'objectType': syntax.udm_modules[0]} |
181 |
else: |
182 |
else: |
182 |
opts = { |
183 |
opts = { |
183 |
'dynamicValues': 'udm/syntax/choices', |
184 |
'dynamicValues': 'udm/syntax/choices', |
184 |
'dynamicOptions': { |
185 |
'dynamicOptions': { |
185 |
'syntax': syntax.__name__, |
186 |
'syntax': syntax.name, |
186 |
}, |
187 |
}, |
187 |
'dynamicValuesInfo': 'udm/syntax/choices/info', |
188 |
'dynamicValuesInfo': 'udm/syntax/choices/info', |
188 |
} |
189 |
} |
189 |
if issubclass(syntax, udm_syntax.network): |
190 |
if issubclass(syntax_class, udm_syntax.network): |
190 |
opts['onChange'] = 'javascript:umc/modules/udm/callbacks:setNetwork' |
191 |
opts['onChange'] = 'javascript:umc/modules/udm/callbacks:setNetwork' |
191 |
elif isinstance(syntax, (udm_syntax.ldapDnOrNone, udm_syntax.ldapDn)) or inspect.isclass(syntax) and issubclass(syntax, (udm_syntax.ldapDnOrNone, udm_syntax.ldapDn)): |
192 |
elif issubclass(syntax_class, (udm_syntax.ldapDnOrNone, udm_syntax.ldapDn)): |
192 |
opts = { |
193 |
opts = { |
193 |
'dynamicValues': 'udm/syntax/choices', |
194 |
'dynamicValues': 'udm/syntax/choices', |
194 |
'dynamicOptions': { |
195 |
'dynamicOptions': { |
195 |
'syntax': inspect.isclass(syntax) and syntax.__name__ or syntax.__class__.__name__, |
196 |
'syntax': syntax.name, |
196 |
}, |
197 |
}, |
197 |
} |
198 |
} |
198 |
elif isinstance(syntax, udm_syntax.LDAP_Search): |
199 |
elif issubclass(syntax_class, udm_syntax.LDAP_Search): |
199 |
opts = { |
200 |
opts = { |
200 |
'dynamicValues': 'udm/syntax/choices', |
201 |
'dynamicValues': 'udm/syntax/choices', |
201 |
'dynamicOptions': { |
202 |
'dynamicOptions': { |
202 |
'syntax': syntax.__class__.__name__, |
203 |
'syntax': syntax.name, |
203 |
'options': { |
204 |
'options': { |
204 |
'syntax': syntax.name, |
205 |
'syntax': syntax.name, |
205 |
'filter': syntax.filter, |
206 |
'filter': syntax.filter, |
Lines 214-220
def choices(syntax, udm_property):
|
Link Here
|
---|
|
214 |
'sortDynamicValues': not syntax.appendEmptyValue, |
215 |
'sortDynamicValues': not syntax.appendEmptyValue, |
215 |
} |
216 |
} |
216 |
|
217 |
|
217 |
elif inspect.isclass(syntax) and issubclass(syntax, udm_syntax.select): |
218 |
elif issubclass(syntax_class, udm_syntax.select): |
218 |
if getattr(syntax, 'depends', None) is not None: |
219 |
if getattr(syntax, 'depends', None) is not None: |
219 |
opts = { |
220 |
opts = { |
220 |
'dynamicValues': 'javascript:umc/modules/udm/callbacks:setDynamicValues', |
221 |
'dynamicValues': 'javascript:umc/modules/udm/callbacks:setDynamicValues', |