Пример #1
0
def import_source_messages():
    """Import messagse from apps listed in **Translator App** as **Source Message**"""
    frappe.db.sql("update `tabSource Message` set disabled=1")
    for app in frappe.db.sql_list("select name from `tabTranslator App`"):
        app_version = frappe.get_hooks(app_name='frappe')['app_version'][0]
        messages = get_messages_for_app(app)
        for message in messages:
            source_message = frappe.db.get_value(
                "Source Message", {"message": message[1]},
                ["name", "message", "position", "app_version"],
                as_dict=True)
            if source_message:
                d = frappe.get_doc("Source Message", source_message['name'])
                if source_message["position"] != message[0] or source_message[
                        "app_version"] != app_version:
                    d.app_version = app_version
                    d.position = message[0]
                    d.app = app
                d.disabled = 0
            else:
                d = frappe.new_doc("Source Message")
                d.position = message[0]
                d.message = message[1]
                d.app = app
                d.app_version = app_version
            d.save()
Пример #2
0
def import_source_messages():
	frappe.db.sql("update `tabSource Message` set disabled=1")
	for app in frappe.db.sql_list("select name from `tabTranslator App`"):
		app_version = frappe.get_hooks(app_name='frappe')['app_version'][0]
		messages = get_messages_for_app(app)
		for message in messages:
			source_message = frappe.db.get_value("Source Message", {"message": message[1]}, ["name", "message", "position", "app_version"], as_dict=True)
			if source_message:
				d = frappe.get_doc("Source Message", source_message['name'])
				if source_message["position"] != message[0] or source_message["app_version"] != app_version:
					d.app_version = app_version
					d.position = message[0]
				d.disabled = 0
			else:
				d = frappe.new_doc("Source Message")
				d.position = message[0]
				d.message = message[1]
				d.app = app
				d.app_version = app_version
			d.save()
Пример #3
0
def get_formatted_messages():
	message_map = frappe._dict({})
	for app in get_apps_to_be_translated():
		messages = get_messages_for_app(app, False)
		# messages structure
		# [(position, source_text_1, context, line_no), (position, source_text_2)]
		for message_data in messages:
			position = message_data[0]
			message = message_data[1]
			context = message_data[2] or '' if len(message_data) > 2 else ''
			line_no = message_data[3] or 0 if len(message_data) == 4 else 0
			position_dict = frappe._dict({
				'position': position,
				'line_no': line_no,
				'app': app,
				'app_version': frappe.get_hooks(app_name=app).get('app_version', [''])[0]
			})
			if not message_map.get((message, context)):
				message_map[(message, context)] = [position_dict]
			else:
				message_map[(message, context)].append(position_dict)
	return message_map