Merge pull request #16541 from alyf-de/develop

feat(regional): Germany module with address template
diff --git a/erpnext/regional/germany/__init__.py b/erpnext/regional/germany/__init__.py
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/erpnext/regional/germany/__init__.py
diff --git a/erpnext/regional/germany/address_template.html b/erpnext/regional/germany/address_template.html
new file mode 100644
index 0000000..0df7867
--- /dev/null
+++ b/erpnext/regional/germany/address_template.html
@@ -0,0 +1,8 @@
+{{ address_line1 }}<br>
+{% if address_line2 %}{{ address_line2 }}<br>{% endif -%}
+{{ pincode }} {{ city }}<br>
+{% if country %}{{ country }}<br>{% endif -%}
+<br>
+{% if phone %}Tel: {{ phone }}<br>{% endif -%}
+{% if fax %}Fax: {{ fax }}<br>{% endif -%}
+{% if email_id %}E-Mail: {{ email_id }}<br>{% endif -%}
diff --git a/erpnext/regional/germany/setup.py b/erpnext/regional/germany/setup.py
new file mode 100644
index 0000000..a547136
--- /dev/null
+++ b/erpnext/regional/germany/setup.py
@@ -0,0 +1,31 @@
+import os
+import frappe
+
+
+def setup(company=None, patch=True):
+	if not patch:
+		update_address_template()
+
+
+def update_address_template():
+	"""
+	Read address template from file. Update existing Address Template or create a
+	new one.
+	"""
+	dir_name = os.path.dirname(__file__)
+	template_path = os.path.join(dir_name, 'address_template.html')
+
+	with open(template_path, 'r') as template_file:
+		template_html = template_file.read()
+
+	address_template = frappe.db.get_value('Address Template', 'Germany')
+
+	if address_template:
+		frappe.db.set_value('Address Template', 'Germany', 'template', template_html)
+	else:
+		# make new html template for Germany
+		frappe.get_doc(dict(
+			doctype='Address Template',
+			country='Germany',
+			template=template_html
+		)).insert()