'Sets choices and initial value'

def __init__(self, user, *args, **kwargs):

    super(SettingsForm, self).__init__(*args, **kwargs)
    self.fields['default_lead_status'].queryset = Object.filter_permitted(user, SaleStatus.objects.filter(use_leads=True))
    self.fields['default_opportunity_status'].queryset = Object.filter_permitted(user, SaleStatus.objects.filter(use_opportunities=True))
    self.fields['default_order_status'].queryset = Object.filter_permitted(user, SaleStatus.objects.filter(use_sales=True))
    self.fields['default_order_source'].queryset = Object.filter_permitted(user, SaleSource.objects.all())
    self.fields['order_fulfil_status'].queryset = Object.filter_permitted(user, SaleStatus.objects.filter(use_sales=True))
    self.fields['default_order_product'].queryset = Object.filter_permitted(user, Product.objects.filter(active=True))
    self.fields['default_currency'].label = _('Base    Currency')
    self.fields['default_lead_status'].label = _('Default    Lead    Status')
    self.fields['default_opportunity_status'].label = _('Default    Opportunity    Status')
    self.fields['default_order_status'].label = _('Default    Order    Status')
    self.fields['default_order_source'].label = _('Default    Order    Source')
    self.fields['default_order_product'].label = _('Default    Order    Product')
    self.fields['order_fulfil_status'].label = _('Order    Fulfilment    Status')
    try:
        self.fields['default_currency'].queryset = Currency.objects
        self.fields['default_currency'].initial = Currency.objects.get(is_default__exact=True)
        self.fields['default_currency'].widget.attrs.update({'popuplink': reverse('sales_currency_add')})
    except:
        pass
    try:
        conf = ModuleSetting.get_for_module('treeio.sales', 'default_opportunity_status')[0]
        default_opportunity_status = SaleStatus.objects.get(pk=long(conf.value))
        self.fields['default_opportunity_status'].initial = default_opportunity_status.id
    except:
        pass
    try:
        conf = ModuleSetting.get_for_module('treeio.sales', 'default_lead_status')[0]
        default_lead_status = SaleStatus.objects.get(pk=long(conf.value))
        self.fields['default_lead_status'].initial = default_lead_status.id
    except:
        pass
    try:
        conf = ModuleSetting.get_for_module('treeio.sales', 'default_order_status')[0]
        default_order_status = SaleStatus.objects.get(pk=long(conf.value))
        self.fields['default_order_status'].initial = default_order_status.id
    except:
        pass
    try:
        conf = ModuleSetting.get_for_module('treeio.sales', 'default_order_source')[0]
        default_order_source = SaleSource.objects.get(pk=long(conf.value))
        self.fields['default_order_source'].initial = default_order_source.id
    except:
        pass
    try:
        conf = ModuleSetting.get_for_module('treeio.sales', 'default_order_product')[0]
        default_order_product = Product.objects.get(pk=long(conf.value))
        self.fields['default_order_product'].initial = default_order_product.id
    except:
        pass
    try:
        conf = ModuleSetting.get_for_module('treeio.sales', 'order_fulfil_status')[0]
        order_fulfil_status = SaleStatus.objects.get(pk=long(conf.value))
        self.fields['order_fulfil_status'].initial = order_fulfil_status.id
    except:
        pass
