|
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', |