def register_to_sys_with_admin_list(class_inst, admin_list=None, is_normal_admin_needed=False):
    """
    :param class_inst: model class
    :param admin_list: admin class
    :param is_normal_admin_needed: is normal admin registration needed
    :return:
    """
    if admin_list is None:
        admin_class = get_valid_admin_class_with_list([], class_inst)
    else:
        admin_class = get_valid_admin_class_with_list(admin_list, class_inst)
    if is_normal_admin_needed:
        register_all_type_of_admin(admin_class, class_inst)
    else:
        register_admin(admin_class, class_inst)