def replace_toolbar(cls): name = "%s.%s" % (PageToolbar.__module__, PageToolbar.__name__) if name in toolbar_pool.toolbars.keys(): log.debug("unregister cms toolbar '%s'", PageToolbar) toolbar_pool.unregister(PageToolbar) log.debug("Register cms toolbar '%s'", cls) toolbar_pool.register(cls)
class NewPhTb(PlaceholderToolbar): def add_structure_mode_item(self, *args, **kwargs): if not self.toolbar.auto_translate: super(NewPhTb, self).add_structure_mode_item(*args, **kwargs) class NewPageTb(PageToolbar): def add_draft_live(self, *args, **kwargs): return self.add_draft_live_item( template='cms/toolbar/items/live_draft_translate.html') def add_publish_button(self, *args, **kwargs): if not self.toolbar.auto_translate: super(NewPageTb, self).add_publish_button(*args, **kwargs) # Remove existing page toolbar toolbar_pool.unregister(PlaceholderToolbar) toolbar_pool.register(NewPhTb) toolbar_pool.unregister(PageToolbar) toolbar_pool.register(NewPageTb) from cms.templatetags.cms_admin import TreePublishRow from cms.utils.compat.dj import force_unicode from django.utils.safestring import mark_safe old_render = TreePublishRow.render_tag def render_tag(self, context, page, language): if page.auto_translate(language) and not page.auto_empty(language): return mark_safe('<span style="background-color:#ad7fa8;" class="%s" title="%s"></span>' % ( 'translated', force_unicode(_('Managed Translation')))) return old_render(self, context, page, language)
def configuration_post_save(sender, **kwargs): import repanier.cms_toolbar from repanier import apps config = kwargs["instance"] if config.id is not None: apps.REPANIER_SETTINGS_CONFIG = config if config.name == PERMANENCE_NAME_PERMANENCE: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Permanence") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Permanences") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Permanence of ") elif config.name == PERMANENCE_NAME_CLOSURE: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Closure") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Closures") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Closure of ") elif config.name == PERMANENCE_NAME_DELIVERY: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Delivery") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Deliveries") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Delivery of ") elif config.name == PERMANENCE_NAME_ORDER: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Order") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Orders") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Order of ") elif config.name == PERMANENCE_NAME_OPENING: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Opening") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Openings") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Opening of ") else: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Distribution") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Distributions") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Distribution of ") apps.REPANIER_SETTINGS_MAX_WEEK_WO_PARTICIPATION = ( config.max_week_wo_participation) apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_CUSTOMER = ( config.send_abstract_order_mail_to_customer) apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_BOARD = ( config.send_order_mail_to_board) apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_CUSTOMER = ( config.send_invoice_mail_to_customer) apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_PRODUCER = ( config.send_invoice_mail_to_producer) apps.REPANIER_SETTINGS_DISPLAY_ANONYMOUS_ORDER_FORM = ( config.display_anonymous_order_form) apps.REPANIER_SETTINGS_DISPLAY_WHO_IS_WHO = config.display_who_is_who apps.REPANIER_SETTINGS_XLSX_PORTRAIT = config.xlsx_portrait # if config.bank_account is not None and len(config.bank_account.strip()) == 0: # apps.REPANIER_SETTINGS_BANK_ACCOUNT = None # else: apps.REPANIER_SETTINGS_BANK_ACCOUNT = config.bank_account # if config.vat_id is not None and len(config.vat_id.strip()) == 0: # apps.REPANIER_SETTINGS_VAT_ID = None # else: apps.REPANIER_SETTINGS_VAT_ID = config.vat_id apps.REPANIER_SETTINGS_PAGE_BREAK_ON_CUSTOMER_CHECK = ( config.page_break_on_customer_check) apps.REPANIER_SETTINGS_MEMBERSHIP_FEE = config.membership_fee apps.REPANIER_SETTINGS_MEMBERSHIP_FEE_DURATION = config.membership_fee_duration if config.currency == CURRENCY_LOC: apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "✿" apps.REPANIER_SETTINGS_AFTER_AMOUNT = False apps.REPANIER_SETTINGS_CURRENCY_XLSX = ( '_ ✿ * #,##0.00_ ;_ ✿ * -#,##0.00_ ;_ ✿ * "-"??_ ;_ @_ ') elif config.currency == CURRENCY_CHF: apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "Fr." apps.REPANIER_SETTINGS_AFTER_AMOUNT = False apps.REPANIER_SETTINGS_CURRENCY_XLSX = ( '_ Fr\. * #,##0.00_ ;_ Fr\. * -#,##0.00_ ;_ Fr\. * "-"??_ ;_ @_ ' ) else: apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "€" apps.REPANIER_SETTINGS_AFTER_AMOUNT = True apps.REPANIER_SETTINGS_CURRENCY_XLSX = ( '_ € * #,##0.00_ ;_ € * -#,##0.00_ ;_ € * "-"??_ ;_ @_ ') if config.home_site: apps.REPANIER_SETTINGS_HOME_SITE = config.home_site else: apps.REPANIER_SETTINGS_HOME_SITE = "/" # config.email = settings.DJANGO_SETTINGS_EMAIL_HOST_USER menu_pool.clear() toolbar_pool.unregister(repanier.cms_toolbar.RepanierToolbar) toolbar_pool.register(repanier.cms_toolbar.RepanierToolbar) cache.clear()
def configuration_post_save(sender, **kwargs): import repanier.cms_toolbar config = kwargs["instance"] if config.id is not None: repanier.apps.REPANIER_SETTINGS_CONFIG = config site = Site.objects.get_current() if site is not None: site.name = config.group_name site.domain = settings.ALLOWED_HOSTS[0] site.save() repanier.apps.REPANIER_SETTINGS_GROUP_NAME = config.group_name if config.name == PERMANENCE_NAME_PERMANENCE: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Permanence") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Permanences") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Permanence of ") elif config.name == PERMANENCE_NAME_CLOSURE: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Closure") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Closures") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Closure of ") elif config.name == PERMANENCE_NAME_DELIVERY: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Delivery") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Deliveries") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Delivery of ") elif config.name == PERMANENCE_NAME_ORDER: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Order") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Orders") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Order of ") elif config.name == PERMANENCE_NAME_OPENING: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Opening") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Openings") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Opening of ") else: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Distribution") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _( "Distributions") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Distribution of ") repanier.apps.REPANIER_SETTINGS_MAX_WEEK_WO_PARTICIPATION = config.max_week_wo_participation repanier.apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_CUSTOMER = config.send_abstract_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_BOARD = config.send_order_mail_to_board repanier.apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_CUSTOMER = config.send_invoice_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_PRODUCER = config.send_invoice_mail_to_producer repanier.apps.REPANIER_SETTINGS_DISPLAY_ANONYMOUS_ORDER_FORM = config.display_anonymous_order_form repanier.apps.REPANIER_SETTINGS_DISPLAY_WHO_IS_WHO = config.display_who_is_who repanier.apps.REPANIER_SETTINGS_XLSX_PORTRAIT = config.xlsx_portrait if config.bank_account is not None and len( config.bank_account.strip()) == 0: repanier.apps.REPANIER_SETTINGS_BANK_ACCOUNT = None else: repanier.apps.REPANIER_SETTINGS_BANK_ACCOUNT = config.bank_account if config.vat_id is not None and len(config.vat_id.strip()) == 0: repanier.apps.REPANIER_SETTINGS_VAT_ID = None else: repanier.apps.REPANIER_SETTINGS_VAT_ID = config.vat_id repanier.apps.REPANIER_SETTINGS_PAGE_BREAK_ON_CUSTOMER_CHECK = config.page_break_on_customer_check repanier.apps.REPANIER_SETTINGS_SMS_GATEWAY_MAIL = config.sms_gateway_mail repanier.apps.REPANIER_SETTINGS_MEMBERSHIP_FEE = config.membership_fee repanier.apps.REPANIER_SETTINGS_MEMBERSHIP_FEE_DURATION = config.membership_fee_duration if config.currency == CURRENCY_LOC: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "✿" repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = False repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = "_ ✿ * #,##0.00_ ;_ ✿ * -#,##0.00_ ;_ ✿ * \"-\"??_ ;_ @_ " elif config.currency == CURRENCY_CHF: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = 'Fr.' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = False repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = "_ Fr\. * #,##0.00_ ;_ Fr\. * -#,##0.00_ ;_ Fr\. * \"-\"??_ ;_ @_ " else: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "€" repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = True repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = "_ € * #,##0.00_ ;_ € * -#,##0.00_ ;_ € * \"-\"??_ ;_ @_ " if config.home_site is not None and len(config.home_site.strip()) == 0: repanier.apps.REPANIER_SETTINGS_HOME_SITE = "/" else: repanier.apps.REPANIER_SETTINGS_HOME_SITE = config.home_site repanier.apps.REPANIER_SETTINGS_TRANSPORT = config.transport repanier.apps.REPANIER_SETTINGS_MIN_TRANSPORT = config.min_transport menu_pool.clear() toolbar_pool.unregister(repanier.cms_toolbar.RepanierToolbar) toolbar_pool.register(repanier.cms_toolbar.RepanierToolbar) cache.clear()
from cms.toolbar_pool import toolbar_pool from cms.cms_toolbars import PlaceholderToolbar toolbar_pool.unregister(PlaceholderToolbar) @toolbar_pool.register class PlaceholderToolbarNoWizard(PlaceholderToolbar): def add_wizard_button(self): pass
def configuration_post_save(sender, **kwargs): import repanier.cms_toolbar from repanier.models import BankAccount, Producer, Customer config = kwargs["instance"] if config.id is not None: repanier.apps.REPANIER_SETTINGS_CONFIG = config repanier.apps.REPANIER_SETTINGS_TEST_MODE = config.test_mode site = Site.objects.get_current() if site is not None: site.name = config.group_name site.domain = settings.ALLOWED_HOSTS[0] site.save() repanier.apps.REPANIER_SETTINGS_GROUP_NAME = config.group_name if config.name == PERMANENCE_NAME_PERMANENCE: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Permanence") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Permanences") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Permanence on ") elif config.name == PERMANENCE_NAME_CLOSURE: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Closure") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Closures") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Closure on ") elif config.name == PERMANENCE_NAME_DELIVERY: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Delivery") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Deliveries") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Delivery on ") elif config.name == PERMANENCE_NAME_ORDER: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Order") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Orders") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Order on ") elif config.name == PERMANENCE_NAME_OPENING: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Opening") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Openings") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Opening on ") else: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Distribution") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Distributions") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Distribution on ") repanier.apps.REPANIER_SETTINGS_MAX_WEEK_WO_PARTICIPATION = config.max_week_wo_participation repanier.apps.REPANIER_SETTINGS_SEND_OPENING_MAIL_TO_CUSTOMER = config.send_opening_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_CUSTOMER = config.send_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_CANCEL_ORDER_MAIL_TO_CUSTOMER = config.send_cancel_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_CUSTOMER = config.send_abstract_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_PRODUCER = config.send_order_mail_to_producer repanier.apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_PRODUCER = config.send_abstract_order_mail_to_producer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_BOARD = config.send_order_mail_to_board repanier.apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_CUSTOMER = config.send_invoice_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_PRODUCER = config.send_invoice_mail_to_producer repanier.apps.REPANIER_SETTINGS_INVOICE = config.invoice repanier.apps.REPANIER_SETTINGS_CLOSE_WO_SENDING = config.close_wo_sending repanier.apps.REPANIER_SETTINGS_DISPLAY_ANONYMOUS_ORDER_FORM = config.display_anonymous_order_form repanier.apps.REPANIER_SETTINGS_DISPLAY_PRODUCER_ON_ORDER_FORM = config.display_producer_on_order_form if config.bank_account is not None and len(config.bank_account.strip()) == 0: repanier.apps.REPANIER_SETTINGS_BANK_ACCOUNT = None else: repanier.apps.REPANIER_SETTINGS_BANK_ACCOUNT = config.bank_account if config.vat_id is not None and len(config.vat_id.strip()) == 0: repanier.apps.REPANIER_SETTINGS_VAT_ID = None else: repanier.apps.REPANIER_SETTINGS_VAT_ID = config.vat_id repanier.apps.REPANIER_SETTINGS_PAGE_BREAK_ON_CUSTOMER_CHECK = config.page_break_on_customer_check repanier.apps.REPANIER_SETTINGS_SMS_GATEWAY_MAIL = config.sms_gateway_mail repanier.apps.REPANIER_SETTINGS_CUSTOMERS_MUST_CONFIRM_ORDERS = config.customers_must_confirm_orders repanier.apps.REPANIER_SETTINGS_MEMBERSHIP_FEE = config.membership_fee repanier.apps.REPANIER_SETTINGS_MEMBERSHIP_FEE_DURATION = config.membership_fee_duration if config.currency == CURRENCY_LOC: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = u'✿' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = False repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = u'_ ✿ * #,##0.00_ ;_ ✿ * -#,##0.00_ ;_ ✿ * "-"??_ ;_ @_ ' elif config.currency == CURRENCY_CHF: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = 'Fr.' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = False repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = '_ Fr\. * #,##0.00_ ;_ Fr\. * -#,##0.00_ ;_ Fr\. * "-"??_ ;_ @_ ' else: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = u'€' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = True repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = u'_ € * #,##0.00_ ;_ € * -#,##0.00_ ;_ € * "-"??_ ;_ @_ ' if config.home_site is not None and len(config.home_site.strip()) == 0: repanier.apps.REPANIER_SETTINGS_HOME_SITE = "/" else: repanier.apps.REPANIER_SETTINGS_HOME_SITE = config.home_site repanier.apps.REPANIER_SETTINGS_TRANSPORT = config.transport repanier.apps.REPANIER_SETTINGS_MIN_TRANSPORT = config.min_transport bank_account = BankAccount.objects.filter(operation_status=BANK_LATEST_TOTAL).order_by('?').first() if bank_account is None: # If not latest total exists, create it with operation date before all movements bank_account = BankAccount.objects.all().order_by("operation_date").first() if bank_account is None: BankAccount.objects.create(operation_status=BANK_LATEST_TOTAL, operation_date=timezone.now().date()) else: BankAccount.objects.create(operation_status=BANK_LATEST_TOTAL, operation_date=bank_account.operation_date + datetime.timedelta( days=-1)) producer_buyinggroup = Producer.objects.filter(represent_this_buyinggroup=True).order_by('?').first() if producer_buyinggroup is None: producer_buyinggroup = Producer.objects.create( short_profile_name="z-%s" % repanier.apps.REPANIER_SETTINGS_GROUP_NAME, long_profile_name=repanier.apps.REPANIER_SETTINGS_GROUP_NAME, represent_this_buyinggroup=True ) if producer_buyinggroup is not None: membership_fee_product = product.Product.objects.filter(is_membership_fee=True, is_active=True).order_by( '?').first() if membership_fee_product is None: membership_fee_product = product.Product.objects.create( producer_id=producer_buyinggroup.id, is_membership_fee=True, order_unit=PRODUCT_ORDER_UNIT_SUBSCRIPTION, vat_level=VAT_100 ) cur_language = translation.get_language() for language in settings.PARLER_LANGUAGES[settings.SITE_ID]: language_code = language["code"] translation.activate(language_code) membership_fee_product.set_current_language(language_code) membership_fee_product.long_name = "%s" % (_("Membership fee")) membership_fee_product.save() translation.activate(cur_language) customer_buyinggroup = Customer.objects.filter(represent_this_buyinggroup=True).order_by('?') if not customer_buyinggroup.exists(): user = User.objects.create_user( username="******" % repanier.apps.REPANIER_SETTINGS_GROUP_NAME, email="%s%s" % ( repanier.apps.REPANIER_SETTINGS_GROUP_NAME, settings.DJANGO_SETTINGS_ALLOWED_MAIL_EXTENSION), password=uuid.uuid1().hex, first_name=EMPTY_STRING, last_name=repanier.apps.REPANIER_SETTINGS_GROUP_NAME) Customer.objects.create( user=user, short_basket_name="z-%s" % repanier.apps.REPANIER_SETTINGS_GROUP_NAME, long_basket_name=repanier.apps.REPANIER_SETTINGS_GROUP_NAME, phone1='0499/96.64.32', represent_this_buyinggroup=True ) menu_pool.clear() toolbar_pool.unregister(repanier.cms_toolbar.RepanierToolbar) toolbar_pool.register(repanier.cms_toolbar.RepanierToolbar) cache.clear()
def configuration_post_save(sender, **kwargs): import repanier.cms_toolbar from repanier import apps config = kwargs["instance"] if config.id is not None: apps.REPANIER_SETTINGS_CONFIG = config if config.name == PERMANENCE_NAME_PERMANENCE: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Permanence") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Permanences") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Permanence of ") elif config.name == PERMANENCE_NAME_CLOSURE: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Closure") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Closures") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Closure of ") elif config.name == PERMANENCE_NAME_DELIVERY: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Delivery") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Deliveries") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Delivery of ") elif config.name == PERMANENCE_NAME_ORDER: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Order") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Orders") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Order of ") elif config.name == PERMANENCE_NAME_OPENING: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Opening") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Openings") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Opening of ") else: apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Distribution") apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Distributions") apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Distribution of ") apps.REPANIER_SETTINGS_MAX_WEEK_WO_PARTICIPATION = config.max_week_wo_participation apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_CUSTOMER = config.send_abstract_order_mail_to_customer apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_BOARD = config.send_order_mail_to_board apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_CUSTOMER = config.send_invoice_mail_to_customer apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_PRODUCER = config.send_invoice_mail_to_producer apps.REPANIER_SETTINGS_DISPLAY_ANONYMOUS_ORDER_FORM = config.display_anonymous_order_form apps.REPANIER_SETTINGS_DISPLAY_WHO_IS_WHO = config.display_who_is_who apps.REPANIER_SETTINGS_XLSX_PORTRAIT = config.xlsx_portrait # if config.bank_account is not None and len(config.bank_account.strip()) == 0: # apps.REPANIER_SETTINGS_BANK_ACCOUNT = None # else: apps.REPANIER_SETTINGS_BANK_ACCOUNT = config.bank_account # if config.vat_id is not None and len(config.vat_id.strip()) == 0: # apps.REPANIER_SETTINGS_VAT_ID = None # else: apps.REPANIER_SETTINGS_VAT_ID = config.vat_id apps.REPANIER_SETTINGS_PAGE_BREAK_ON_CUSTOMER_CHECK = config.page_break_on_customer_check apps.REPANIER_SETTINGS_MEMBERSHIP_FEE = config.membership_fee apps.REPANIER_SETTINGS_MEMBERSHIP_FEE_DURATION = config.membership_fee_duration if config.currency == CURRENCY_LOC: apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "✿" apps.REPANIER_SETTINGS_AFTER_AMOUNT = False apps.REPANIER_SETTINGS_CURRENCY_XLSX = "_ ✿ * #,##0.00_ ;_ ✿ * -#,##0.00_ ;_ ✿ * \"-\"??_ ;_ @_ " elif config.currency == CURRENCY_CHF: apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = 'Fr.' apps.REPANIER_SETTINGS_AFTER_AMOUNT = False apps.REPANIER_SETTINGS_CURRENCY_XLSX = "_ Fr\. * #,##0.00_ ;_ Fr\. * -#,##0.00_ ;_ Fr\. * \"-\"??_ ;_ @_ " else: apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = "€" apps.REPANIER_SETTINGS_AFTER_AMOUNT = True apps.REPANIER_SETTINGS_CURRENCY_XLSX = "_ € * #,##0.00_ ;_ € * -#,##0.00_ ;_ € * \"-\"??_ ;_ @_ " if config.home_site: apps.REPANIER_SETTINGS_HOME_SITE = config.home_site else: apps.REPANIER_SETTINGS_HOME_SITE = "/" # config.email = settings.DJANGO_SETTINGS_EMAIL_HOST_USER menu_pool.clear() toolbar_pool.unregister(repanier.cms_toolbar.RepanierToolbar) toolbar_pool.register(repanier.cms_toolbar.RepanierToolbar) cache.clear()
def configuration_post_save(sender, **kwargs): import repanier.cms_toolbar from repanier.models.bankaccount import BankAccount from repanier.models.producer import Producer from repanier.models.customer import Customer config = kwargs["instance"] if config.id is not None: repanier.apps.REPANIER_SETTINGS_CONFIG = config repanier.apps.REPANIER_SETTINGS_TEST_MODE = config.test_mode site = Site.objects.get_current() if site is not None: site.name = config.group_name site.domain = settings.ALLOWED_HOSTS[0] site.save() repanier.apps.REPANIER_SETTINGS_GROUP_NAME = config.group_name if config.name == PERMANENCE_NAME_PERMANENCE: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Permanence") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Permanences") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Permanence on ") elif config.name == PERMANENCE_NAME_CLOSURE: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Closure") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Closures") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Closure on ") elif config.name == PERMANENCE_NAME_DELIVERY: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Delivery") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Deliveries") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Delivery on ") elif config.name == PERMANENCE_NAME_ORDER: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Order") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Orders") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _("Order on ") elif config.name == PERMANENCE_NAME_OPENING: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Opening") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _("Openings") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Opening on ") else: repanier.apps.REPANIER_SETTINGS_PERMANENCE_NAME = _("Distribution") repanier.apps.REPANIER_SETTINGS_PERMANENCES_NAME = _( "Distributions") repanier.apps.REPANIER_SETTINGS_PERMANENCE_ON_NAME = _( "Distribution on ") repanier.apps.REPANIER_SETTINGS_MAX_WEEK_WO_PARTICIPATION = config.max_week_wo_participation repanier.apps.REPANIER_SETTINGS_SEND_OPENING_MAIL_TO_CUSTOMER = config.send_opening_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_CUSTOMER = config.send_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_CANCEL_ORDER_MAIL_TO_CUSTOMER = config.send_cancel_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_CUSTOMER = config.send_abstract_order_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_PRODUCER = config.send_order_mail_to_producer repanier.apps.REPANIER_SETTINGS_SEND_ABSTRACT_ORDER_MAIL_TO_PRODUCER = config.send_abstract_order_mail_to_producer repanier.apps.REPANIER_SETTINGS_SEND_ORDER_MAIL_TO_BOARD = config.send_order_mail_to_board repanier.apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_CUSTOMER = config.send_invoice_mail_to_customer repanier.apps.REPANIER_SETTINGS_SEND_INVOICE_MAIL_TO_PRODUCER = config.send_invoice_mail_to_producer repanier.apps.REPANIER_SETTINGS_INVOICE = config.invoice repanier.apps.REPANIER_SETTINGS_CLOSE_WO_SENDING = config.close_wo_sending repanier.apps.REPANIER_SETTINGS_DISPLAY_ANONYMOUS_ORDER_FORM = config.display_anonymous_order_form repanier.apps.REPANIER_SETTINGS_DISPLAY_PRODUCER_ON_ORDER_FORM = config.display_producer_on_order_form repanier.apps.REPANIER_SETTINGS_DISPLAY_WHO_IS_WHO = config.display_who_is_who if config.bank_account is not None and len( config.bank_account.strip()) == 0: repanier.apps.REPANIER_SETTINGS_BANK_ACCOUNT = None else: repanier.apps.REPANIER_SETTINGS_BANK_ACCOUNT = config.bank_account if config.vat_id is not None and len(config.vat_id.strip()) == 0: repanier.apps.REPANIER_SETTINGS_VAT_ID = None else: repanier.apps.REPANIER_SETTINGS_VAT_ID = config.vat_id repanier.apps.REPANIER_SETTINGS_PAGE_BREAK_ON_CUSTOMER_CHECK = config.page_break_on_customer_check repanier.apps.REPANIER_SETTINGS_SMS_GATEWAY_MAIL = config.sms_gateway_mail repanier.apps.REPANIER_SETTINGS_CUSTOMERS_MUST_CONFIRM_ORDERS = config.customers_must_confirm_orders repanier.apps.REPANIER_SETTINGS_MEMBERSHIP_FEE = config.membership_fee repanier.apps.REPANIER_SETTINGS_MEMBERSHIP_FEE_DURATION = config.membership_fee_duration if config.currency == CURRENCY_LOC: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = u'✿' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = False repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = u'_ ✿ * #,##0.00_ ;_ ✿ * -#,##0.00_ ;_ ✿ * "-"??_ ;_ @_ ' elif config.currency == CURRENCY_CHF: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = 'Fr.' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = False repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = '_ Fr\. * #,##0.00_ ;_ Fr\. * -#,##0.00_ ;_ Fr\. * "-"??_ ;_ @_ ' else: repanier.apps.REPANIER_SETTINGS_CURRENCY_DISPLAY = u'€' repanier.apps.REPANIER_SETTINGS_AFTER_AMOUNT = True repanier.apps.REPANIER_SETTINGS_CURRENCY_XLSX = u'_ € * #,##0.00_ ;_ € * -#,##0.00_ ;_ € * "-"??_ ;_ @_ ' if config.home_site is not None and len(config.home_site.strip()) == 0: repanier.apps.REPANIER_SETTINGS_HOME_SITE = "/" else: repanier.apps.REPANIER_SETTINGS_HOME_SITE = config.home_site repanier.apps.REPANIER_SETTINGS_TRANSPORT = config.transport repanier.apps.REPANIER_SETTINGS_MIN_TRANSPORT = config.min_transport bank_account = BankAccount.objects.filter( operation_status=BANK_LATEST_TOTAL).order_by('?').first() if bank_account is None: # If not latest total exists, create it with operation date before all movements bank_account = BankAccount.objects.all().order_by( "operation_date").first() if bank_account is None: BankAccount.objects.create( operation_status=BANK_LATEST_TOTAL, operation_date=timezone.now().date()) else: if bank_account.producer is None and bank_account.customer is None: bank_account.operation_status = BANK_LATEST_TOTAL bank_account.save(update_fields=['operation_status']) else: BankAccount.objects.create( operation_status=BANK_LATEST_TOTAL, operation_date=bank_account.operation_date + datetime.timedelta(days=-1)) producer_buyinggroup = Producer.objects.filter( represent_this_buyinggroup=True).order_by('?').first() if producer_buyinggroup is None: producer_buyinggroup = Producer.objects.create( short_profile_name="z-%s" % repanier.apps.REPANIER_SETTINGS_GROUP_NAME, long_profile_name=repanier.apps.REPANIER_SETTINGS_GROUP_NAME, represent_this_buyinggroup=True) if producer_buyinggroup is not None: membership_fee_product = Product.objects.filter( order_unit=PRODUCT_ORDER_UNIT_MEMBERSHIP_FEE, is_active=True).order_by('?').first() if membership_fee_product is None: membership_fee_product = Product.objects.create( producer_id=producer_buyinggroup.id, order_unit=PRODUCT_ORDER_UNIT_MEMBERSHIP_FEE, vat_level=VAT_100) cur_language = translation.get_language() for language in settings.PARLER_LANGUAGES[settings.SITE_ID]: language_code = language["code"] translation.activate(language_code) membership_fee_product.set_current_language(language_code) membership_fee_product.long_name = "%s" % (_("Membership fee")) membership_fee_product.save() translation.activate(cur_language) repanier.apps.REPANIER_SETTINGS_GROUP_PRODUCER_ID = producer_buyinggroup.id customer_buyinggroup = Customer.objects.filter( represent_this_buyinggroup=True).order_by('?').first() if customer_buyinggroup is None: user = User.objects.create_user( username="******" % repanier.apps.REPANIER_SETTINGS_GROUP_NAME, email="%s%s" % (repanier.apps.REPANIER_SETTINGS_GROUP_NAME, settings.DJANGO_SETTINGS_ALLOWED_MAIL_EXTENSION), password=uuid.uuid1().hex, first_name=EMPTY_STRING, last_name=repanier.apps.REPANIER_SETTINGS_GROUP_NAME) customer_buyinggroup = Customer.objects.create( user=user, short_basket_name="z-%s" % repanier.apps.REPANIER_SETTINGS_GROUP_NAME, long_basket_name=repanier.apps.REPANIER_SETTINGS_GROUP_NAME, phone1='0499/96.64.32', represent_this_buyinggroup=True) repanier.apps.REPANIER_SETTINGS_GROUP_CUSTOMER_ID = customer_buyinggroup.id menu_pool.clear() toolbar_pool.unregister(repanier.cms_toolbar.RepanierToolbar) toolbar_pool.register(repanier.cms_toolbar.RepanierToolbar) cache.clear()
# coding: utf-8 from __future__ import unicode_literals # from django.utils.translation import ugettext_lazy as _ from cms.toolbar_pool import toolbar_pool # from cms.utils.urlutils import admin_reverse from djangocms_misc.alternate_toolbar.cms_toolbars import AlternateBasicToolbar toolbar_pool.unregister(AlternateBasicToolbar) @toolbar_pool.register class CustomToolbar(AlternateBasicToolbar): def add_more_admin_menu_items(self): pass # self.admin_menu.add_sideframe_item( # _('Projects'), # url=admin_reverse('newsevents_event_changelist') # )