@@ 675-736 (lines=62) @@ | ||
672 | extra = 1 |
|
673 | ||
674 | ||
675 | class CustomerRatesAdmin(ImportExportMixin, admin.ModelAdmin): |
|
676 | list_display = ['id', |
|
677 | 'ratecard', |
|
678 | 'destination', |
|
679 | 'prefix', |
|
680 | 'destnum_length', |
|
681 | 'rate', |
|
682 | 'init_block', |
|
683 | 'block_min_duration', |
|
684 | 'minimal_time', |
|
685 | 'get_boolean_display', |
|
686 | ] |
|
687 | ordering = ['ratecard', |
|
688 | 'prefix'] |
|
689 | list_filter = ['ratecard', |
|
690 | 'enabled'] |
|
691 | search_fields = ['^prefix', |
|
692 | '^destination'] |
|
693 | actions = ['make_enabled', 'make_disabled'] |
|
694 | readonly_fields = ['id', ] |
|
695 | form = CustomerRatesAdminForm |
|
696 | ||
697 | def get_boolean_display(self, obj): |
|
698 | if obj.enabled: |
|
699 | return mark_safe('<span class="label label-success"><i class="icon-thumbs-up"></i> YES</span>') |
|
700 | return mark_safe('<span class="label label-warning"><i class="icon-thumbs-down"></i> NO</span>') |
|
701 | get_boolean_display.short_description = _(u'Enabled') |
|
702 | get_boolean_display.admin_order_field = _(u'enabled') |
|
703 | ||
704 | def has_change_permission(self, request, obj=None): |
|
705 | if request.user.is_superuser: |
|
706 | return True |
|
707 | else: |
|
708 | return False |
|
709 | ||
710 | def make_enabled(self, request, queryset): |
|
711 | rows_updated = queryset.update(enabled=True) |
|
712 | if rows_updated == 1: |
|
713 | message_bit = _(u"1 item was") |
|
714 | else: |
|
715 | message_bit = _(u"%s items were") % rows_updated |
|
716 | self.message_user(request, |
|
717 | _(u"%s successfully marked as enabled.") % message_bit) |
|
718 | make_enabled.short_description = _(u"mark selected items as enabled") |
|
719 | ||
720 | def make_disabled(self, request, queryset): |
|
721 | rows_updated = queryset.update(enabled=False) |
|
722 | if rows_updated == 1: |
|
723 | message_bit = _(u"1 item was") |
|
724 | else: |
|
725 | message_bit = _(u"%s items were") % rows_updated |
|
726 | self.message_user(request, |
|
727 | _(u"%s successfully marked as disabled.") % message_bit) |
|
728 | make_disabled.short_description = _(u"mark selected items as disabled") |
|
729 | ||
730 | def get_import_formats(self): |
|
731 | format_csv = DEFAULT_FORMATS |
|
732 | return [f for f in format_csv if f().can_import()] |
|
733 | ||
734 | def get_export_formats(self): |
|
735 | format_csv = DEFAULT_FORMATS |
|
736 | return [f for f in format_csv if f().can_export()] |
|
737 | ||
738 | ||
739 | class RateCardAdmin(admin.ModelAdmin): |
|
@@ 564-622 (lines=59) @@ | ||
561 | return False |
|
562 | ||
563 | ||
564 | class ProviderRatesAdmin(ImportExportMixin, admin.ModelAdmin): |
|
565 | list_display = ['id', |
|
566 | 'provider_tariff', |
|
567 | 'destination', |
|
568 | 'digits', |
|
569 | 'cost_rate', |
|
570 | 'block_min_duration', |
|
571 | 'init_block', |
|
572 | 'get_boolean_display', |
|
573 | 'date_added', |
|
574 | 'date_modified'] |
|
575 | ordering = ['provider_tariff', |
|
576 | 'digits'] |
|
577 | list_filter = ['provider_tariff', |
|
578 | 'enabled',] |
|
579 | search_fields = ['^digits', |
|
580 | '^destination'] |
|
581 | actions = ['make_enabled', |
|
582 | 'make_disabled'] |
|
583 | form = ProviderRatesAdminForm |
|
584 | ||
585 | def get_boolean_display(self, obj): |
|
586 | if obj.enabled: |
|
587 | return mark_safe('<span class="label label-success"><i class="icon-thumbs-up"></i> YES</span>') |
|
588 | return mark_safe('<span class="label label-warning"><i class="icon-thumbs-down"></i> NO</span>') |
|
589 | get_boolean_display.short_description = _(u'Enabled') |
|
590 | get_boolean_display.admin_order_field = _(u'enabled') |
|
591 | ||
592 | def has_change_permission(self, request, obj=None): |
|
593 | if request.user.is_superuser: |
|
594 | return True |
|
595 | else: |
|
596 | return False |
|
597 | ||
598 | def make_enabled(self, request, queryset): |
|
599 | rows_updated = queryset.update(enabled=True) |
|
600 | if rows_updated == 1: |
|
601 | message_bit = _(u"1 item was") |
|
602 | else: |
|
603 | message_bit = _(u"%s items were") % rows_updated |
|
604 | self.message_user(request, _(u"%s successfully marked as enabled.") % message_bit) |
|
605 | make_enabled.short_description = _(u"mark selected items as enabled") |
|
606 | ||
607 | def make_disabled(self, request, queryset): |
|
608 | rows_updated = queryset.update(enabled=False) |
|
609 | if rows_updated == 1: |
|
610 | message_bit = _(u"1 item was") |
|
611 | else: |
|
612 | message_bit = _(u"%s items were") % rows_updated |
|
613 | self.message_user(request, _(u"%s successfully marked as disabled.") % message_bit) |
|
614 | make_disabled.short_description = _(u"mark selected items as disabled") |
|
615 | ||
616 | def get_import_formats(self): |
|
617 | format_csv = DEFAULT_FORMATS |
|
618 | return [f for f in format_csv if f().can_import()] |
|
619 | ||
620 | def get_export_formats(self): |
|
621 | format_csv = DEFAULT_FORMATS |
|
622 | return [f for f in format_csv if f().can_export()] |
|
623 | ||
624 | # LCR |
|
625 |