from optparse import make_option
from datetime import datetime as dt

from django.core.management.base import BaseCommand
from django.utils import translation
from django.conf import settings
from dateutil.relativedelta import *

from silver.documents_generator import DocumentsGenerator
from silver.models import Subscription


class Command(BaseCommand):
    help = 'Generates the billing documents (Invoices, Proformas).'
    option_list = BaseCommand.option_list + (
        make_option('--subscription',
            action='store',
            dest='subscription_id',
            type="int"),
        make_option('--date',
            action='store',
            dest='billing_date',
            type="string"),
    )

    def handle(self, *args, **options):
        translation.activate(settings.LANGUAGE_CODE)

        date = None
        if options['billing_date']:
            billing_date = dt.strptime(options['billing_date'], '%Y-%m-%d').date()

        docs_generator = DocumentsGenerator()
        if options['subscription_id']:
            try:
                subscription = Subscription.objects.get(id=options['subscription_id'])
                docs_generator.generate(subscription=subscription)
                self.stdout.write('Done. You can have a Club-Mate now. :)')
            except Subscription.DoesNotExist:
                msg = 'The subscription with the provided id does not exist.'
                self.stdout.write(msg)
        else:
            docs_generator.generate(billing_date=billing_date)
            self.stdout.write('Done. You can have a Club-Mate now. :)')

from optparse import make_option
from datetime import datetime as dt

from django.core.management.base import BaseCommand
from django.utils import translation
from django.conf import settings
from dateutil.relativedelta import *

from silver.documents_generator import DocumentsGenerator
from silver.models import Subscription


class Command(BaseCommand):
    help = 'Generates the billing documents (Invoices, Proformas).'
    option_list = BaseCommand.option_list + (
        make_option('--subscription',
            action='store',
            dest='subscription_id',
            type="int"),
        make_option('--date',
            action='store',
            dest='billing_date',
            type="string"),
    )

    def handle(self, *args, **options):
        translation.activate('en-us')

        date = None
        if options['billing_date']:
            billing_date = dt.strptime(options['billing_date'], '%Y-%m-%d').date()

        docs_generator = DocumentsGenerator()
        if options['subscription_id']:
            try:
                subscription = Subscription.objects.get(id=options['subscription_id'])
                docs_generator.generate(subscription=subscription)
                self.stdout.write('Done. You can have a Club-Mate now. :)')
            except Subscription.DoesNotExist:
                msg = 'The subscription with the provided id does not exist.'
                self.stdout.write(msg)
        else:
            docs_generator.generate(billing_date=billing_date)
            self.stdout.write('Done. You can have a Club-Mate now. :)')

Add language code in the command
Add language code in the command

  from optparse import make_option
  from datetime import datetime as dt
  
  from django.core.management.base import BaseCommand
  from django.utils import translation
  from django.conf import settings
  from dateutil.relativedelta import *
  
  from silver.documents_generator import DocumentsGenerator
  from silver.models import Subscription
  
  
  class Command(BaseCommand):
      help = 'Generates the billing documents (Invoices, Proformas).'
      option_list = BaseCommand.option_list + (
          make_option('--subscription',
              action='store',
              dest='subscription_id',
              type="int"),
          make_option('--date',
              action='store',
              dest='billing_date',
              type="string"),
      )
  
      def handle(self, *args, **options):
-         translation.activate(settings.LANGUAGE_CODE)
+         translation.activate('en-us')
  
          date = None
          if options['billing_date']:
              billing_date = dt.strptime(options['billing_date'], '%Y-%m-%d').date()
  
          docs_generator = DocumentsGenerator()
          if options['subscription_id']:
              try:
                  subscription = Subscription.objects.get(id=options['subscription_id'])
                  docs_generator.generate(subscription=subscription)
                  self.stdout.write('Done. You can have a Club-Mate now. :)')
              except Subscription.DoesNotExist:
                  msg = 'The subscription with the provided id does not exist.'
                  self.stdout.write(msg)
          else:
              docs_generator.generate(billing_date=billing_date)
              self.stdout.write('Done. You can have a Club-Mate now. :)')
  
Add language code in the command
## Code Before:
from optparse import make_option
from datetime import datetime as dt

from django.core.management.base import BaseCommand
from django.utils import translation
from django.conf import settings
from dateutil.relativedelta import *

from silver.documents_generator import DocumentsGenerator
from silver.models import Subscription


class Command(BaseCommand):
    help = 'Generates the billing documents (Invoices, Proformas).'
    option_list = BaseCommand.option_list + (
        make_option('--subscription',
            action='store',
            dest='subscription_id',
            type="int"),
        make_option('--date',
            action='store',
            dest='billing_date',
            type="string"),
    )

    def handle(self, *args, **options):
        translation.activate(settings.LANGUAGE_CODE)

        date = None
        if options['billing_date']:
            billing_date = dt.strptime(options['billing_date'], '%Y-%m-%d').date()

        docs_generator = DocumentsGenerator()
        if options['subscription_id']:
            try:
                subscription = Subscription.objects.get(id=options['subscription_id'])
                docs_generator.generate(subscription=subscription)
                self.stdout.write('Done. You can have a Club-Mate now. :)')
            except Subscription.DoesNotExist:
                msg = 'The subscription with the provided id does not exist.'
                self.stdout.write(msg)
        else:
            docs_generator.generate(billing_date=billing_date)
            self.stdout.write('Done. You can have a Club-Mate now. :)')

## Instruction:
Add language code in the command
## Code After:
from optparse import make_option
from datetime import datetime as dt

from django.core.management.base import BaseCommand
from django.utils import translation
from django.conf import settings
from dateutil.relativedelta import *

from silver.documents_generator import DocumentsGenerator
from silver.models import Subscription


class Command(BaseCommand):
    help = 'Generates the billing documents (Invoices, Proformas).'
    option_list = BaseCommand.option_list + (
        make_option('--subscription',
            action='store',
            dest='subscription_id',
            type="int"),
        make_option('--date',
            action='store',
            dest='billing_date',
            type="string"),
    )

    def handle(self, *args, **options):
        translation.activate('en-us')

        date = None
        if options['billing_date']:
            billing_date = dt.strptime(options['billing_date'], '%Y-%m-%d').date()

        docs_generator = DocumentsGenerator()
        if options['subscription_id']:
            try:
                subscription = Subscription.objects.get(id=options['subscription_id'])
                docs_generator.generate(subscription=subscription)
                self.stdout.write('Done. You can have a Club-Mate now. :)')
            except Subscription.DoesNotExist:
                msg = 'The subscription with the provided id does not exist.'
                self.stdout.write(msg)
        else:
            docs_generator.generate(billing_date=billing_date)
            self.stdout.write('Done. You can have a Club-Mate now. :)')
