Exemple #1
0
class FinancialAidEmailAuditAdmin(admin.ModelAdmin):
    """Admin for FinancialAidEmailAudit"""
    model = FinancialAidEmailAudit
    readonly_fields = get_field_names(FinancialAidEmailAudit)

    def has_add_permission(self, *args, **kwargs):  # pylint: disable=unused-argument, arguments-differ
        return False

    def has_delete_permission(self, *args, **kwargs):  # pylint: disable=unused-argument, signature-differs
        return False
Exemple #2
0
class OrderAuditAdmin(admin.ModelAdmin):
    """Admin for OrderAudit"""
    model = OrderAudit
    readonly_fields = get_field_names(OrderAudit)

    def has_add_permission(self, request):
        return False

    def has_delete_permission(self, request, obj=None):
        return False
Exemple #3
0
class ReceiptAdmin(admin.ModelAdmin):
    """Admin for Receipt"""
    model = Receipt
    readonly_fields = get_field_names(Receipt)

    def has_add_permission(self, request):
        return False

    def has_delete_permission(self, request, obj=None):
        return False
Exemple #4
0
class CouponInvoiceAuditAdmin(admin.ModelAdmin):
    """Admin for CouponInvoiceAudit"""
    model = CouponInvoiceAudit
    readonly_fields = get_field_names(CouponInvoiceAudit)

    def has_add_permission(self, request):
        return False

    def has_delete_permission(self, request, obj=None):
        return False
Exemple #5
0
class UserCouponAdmin(admin.ModelAdmin):
    """Admin for UserCoupon"""
    model = UserCoupon
    readonly_fields = get_field_names(UserCoupon)

    def save_model(self, request, obj, form, change):
        """
        Saves object and logs change to object
        """
        obj.save_and_log(request.user)
Exemple #6
0
 def test_get_field_names(self):
     """
     Assert that get_field_names does not include related fields
     """
     assert set(get_field_names(Order)) == {
         'user',
         'status',
         'total_price_paid',
         'created_at',
         'modified_at',
     }
Exemple #7
0
class LineAdmin(admin.ModelAdmin):
    """Admin for Line"""
    model = Line

    readonly_fields = get_field_names(Line)

    def has_add_permission(self, request):
        return False

    def has_delete_permission(self, request, obj=None):
        return False
Exemple #8
0
 def test_get_field_names(self):
     """
     Assert that get_field_names does not include related fields
     """
     assert set(get_field_names(Order)) == {
         'user',
         'status',
         'total_price_paid',
         'created_at',
         'modified_at',
     }
Exemple #9
0
def compile_model_data(model_cls, data, **additional_data):
    """
    Compiles a dictionary of data that will be set on a model object
    """
    model_data = {}
    field_names = get_field_names(model_cls)
    # If default values have been specified, set them on the model data dict
    if model_cls in MODEL_DEFAULTS:
        model_data.update(MODEL_DEFAULTS[model_cls])
    # For all keys that match valid model fields, update the model data dict
    model_data.update(filter_dict_by_key_set(data, field_names))
    # For any other data that has been specifically passed in, update the model data dict
    if additional_data:
        model_data.update(additional_data)
    return model_data
Exemple #10
0
def compile_model_data(model_cls, data, **additional_data):
    """
    Compiles a dictionary of data that will be set on a model object
    """
    model_data = {}
    field_names = get_field_names(model_cls)
    # If default values have been specified, set them on the model data dict
    if model_cls in MODEL_DEFAULTS:
        model_data.update(MODEL_DEFAULTS[model_cls])
    # For all keys that match valid model fields, update the model data dict
    model_data.update(filter_dict_by_key_set(data, field_names))
    # For any other data that has been specifically passed in, update the model data dict
    if additional_data:
        model_data.update(additional_data)
    return model_data
Exemple #11
0
class ProctoredExamGradeAuditAdmin(admin.ModelAdmin):
    """Admin for ProctoredExamGradeAudit"""
    model = models.ProctoredExamGradeAudit
    readonly_fields = get_field_names(models.ProctoredExamGradeAudit)
    list_display = (
        'id',
        'proctored_exam_grade',
    )
    ordering = (
        'proctored_exam_grade',
        'id',
    )
    list_filter = ('proctored_exam_grade__course__title', )

    def has_add_permission(self, *args, **kwargs):  # pylint: disable=unused-argument, arguments-differ
        return False

    def has_delete_permission(self, *args, **kwargs):  # pylint: disable=unused-argument, arguments-differ
        return False
Exemple #12
0
class FinalGradeAuditAdmin(admin.ModelAdmin):
    """Admin for FinalGradeAudit"""
    model = models.FinalGradeAudit
    readonly_fields = get_field_names(models.FinalGradeAudit)
    list_display = (
        'id',
        'final_grade',
    )
    ordering = (
        'final_grade',
        'id',
    )
    list_filter = ('final_grade__course_run__edx_course_key', )

    def has_add_permission(self, *args, **kwargs):  # pylint: disable=unused-argument, arguments-differ
        return False

    def has_delete_permission(self, *args, **kwargs):  # pylint: disable=unused-argument, arguments-differ
        return False
Exemple #13
0
class OrderAdmin(admin.ModelAdmin):
    """Admin for Order"""
    model = Order
    list_filter = ('status', )
    list_display = (
        'id',
        'user',
        'status',
        'created_at',
        'course_key',
    )
    search_fields = (
        'user__username',
        'user__email',
    )

    readonly_fields = [
        name for name in get_field_names(Order) if name != 'status'
    ]

    def course_key(self, obj):
        """
        returns first course key associated with order
        """
        line = obj.line_set.first()
        return line.course_key

    def has_add_permission(self, request):
        return False

    def has_delete_permission(self, request, obj=None):
        return False

    def save_model(self, request, obj, form, change):
        """
        Saves object and logs change to object
        """
        obj.save_and_log(request.user)