

def validates_host_edit(obj):
    checker = Checker()
    check = True
    _ = obj._
    checker.errors = []
    if (not is_param(obj.input, 'm_name')):
        check = False
        checker.add_error(_('Parameter m_name does not exist.'))
    else:
        check = (checker.check_string(_('Machine Name'), obj.input.m_name, ((CHECK_EMPTY | CHECK_LENGTH) | CHECK_ONLYSPACE), None, min=MACHINE_NAME_MIN_LENGTH, max=MACHINE_NAME_MAX_LENGTH) and check)
    if (not is_param(obj.input, 'm_connect_type')):
        check = False
        checker.add_error(_('Parameter m_connect_type does not exist.'))
    else:
        if (obj.input.m_connect_type == 'karesansui'):
            if (not is_param(obj.input, 'm_hostname')):
                check = False
                checker.add_error((_('"%s" is required.') % _('FQDN')))
            else:
                m_hostname_parts = obj.input.m_hostname.split(':')
                if (len(m_hostname_parts) > 2):
                    check = False
                    checker.add_error((_('%s contains too many colon(:)s.') % _('FQDN')))
                else:
                    check = (checker.check_domainname(_('FQDN'), m_hostname_parts[0], ((CHECK_EMPTY | CHECK_LENGTH) | CHECK_VALID), min=FQDN_MIN_LENGTH, max=FQDN_MAX_LENGTH) and check)
                    try:
                        check = (checker.check_number(_('Port Number'), m_hostname_parts[1], (((CHECK_EMPTY | CHECK_VALID) | CHECK_MIN) | CHECK_MAX), PORT_MIN_NUMBER, PORT_MAX_NUMBER) and check)
                    except IndexError:
                        pass
        if (obj.input.m_connect_type == 'libvirt'):
            if (not is_param(obj.input, 'm_uri')):
                check = False
                checker.add_error((_('"%s" is required.') % _('URI')))
            else:
                pass
            if (is_param(obj.input, 'm_auth_user') and (obj.input.m_auth_user != '')):
                check = (checker.check_username(_('User Name'), obj.input.m_auth_user, (CHECK_LENGTH | CHECK_ONLYSPACE), min=USER_MIN_LENGTH, max=USER_MAX_LENGTH) and check)
    if is_param(obj.input, 'note_title'):
        check = (checker.check_string(_('Title'), obj.input.note_title, (CHECK_LENGTH | CHECK_ONLYSPACE), None, min=NOTE_TITLE_MIN_LENGTH, max=NOTE_TITLE_MAX_LENGTH) and check)
    if is_param(obj.input, 'note_value'):
        check = (checker.check_string(_('Note'), obj.input.note_value, CHECK_ONLYSPACE, None, None, None) and check)
    if is_param(obj.input, 'tags'):
        for tag in comma_split(obj.input.tags):
            check = (obj.check_string(_('Tag'), tag, (CHECK_LENGTH | CHECK_ONLYSPACE), None, min=TAG_MIN_LENGTH, max=TAG_MAX_LENGTH) and check)
    obj.view.alert = checker.errors
    return check

dataset/ETHPy150Open karesansui/karesansui/karesansui/gadget/hostby1.py validates_host_edit/VarMisuse@586/848 `checker`->`obj`