summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2022-09-27 17:13:44 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2022-09-27 17:18:20 +0200
commit69b20d50aed1e20cb3a76652fac671efea4e3991 (patch)
tree6036ccfb226f94417ebc292c7d6cfe445cf4fdd4
parentccac2c5da06d2cf6cc0c7c9aee56cbb4cda9a319 (diff)
downloadIshtar-69b20d50aed1e20cb3a76652fac671efea4e3991.tar.bz2
Ishtar-69b20d50aed1e20cb3a76652fac671efea4e3991.zip
Merge page - add more fields on table (refs #5447)
-rw-r--r--CHANGES.md1
-rw-r--r--ishtar_common/models.py4
-rw-r--r--ishtar_common/models_common.py55
-rw-r--r--ishtar_common/templates/ishtar/merge.html7
-rw-r--r--ishtar_common/templates/ishtar/merge_organization.html18
-rw-r--r--ishtar_common/templates/ishtar/merge_person.html20
6 files changed, 69 insertions, 36 deletions
diff --git a/CHANGES.md b/CHANGES.md
index 510e51cdb..739eb2f87 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -12,6 +12,7 @@ v3.2.6 - 2022-09-
### Features ###
- organization: add columns to table - add town search criteria
+- merge pages: display all fields on table
v3.2.5 - 2022-09-18
--------------------
diff --git a/ishtar_common/models.py b/ishtar_common/models.py
index 470ea4e72..366c467c8 100644
--- a/ishtar_common/models.py
+++ b/ishtar_common/models.py
@@ -2412,10 +2412,6 @@ class Organization(Address, Merge, OwnPerms, BaseGenderedType, ValueGetter, Main
self.merge_key = slugify(self.name or "")
if not self.merge_key:
self.merge_key = self.EMPTY_MERGE_KEY
- if self.town:
- self.merge_key += "-" + slugify(self.town or "")
- if self.address:
- self.merge_key += "-" + slugify(self.address or "")
@property
def associated_filename(self):
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py
index e164677ba..22244e4e2 100644
--- a/ishtar_common/models_common.py
+++ b/ishtar_common/models_common.py
@@ -2248,38 +2248,51 @@ class Address(BaseHistorizedItem):
lbl += self.address_lbl()
return lbl
- def address_lbl(self):
- lbl = ""
+ def address_lbl(self, list=False):
+ lbls = []
prefix = ""
if self.alt_address_is_prefered:
prefix = "alt_"
if getattr(self, prefix + "address"):
- lbl += getattr(self, prefix + "address")
+ lbls.append((
+ getattr(self, prefix + "address"),
+ _("Address")
+ ))
if getattr(self, prefix + "address_complement"):
- if lbl:
- lbl += "\n"
- lbl += getattr(self, prefix + "address_complement")
+ lbls.append((
+ getattr(self, prefix + "address_complement"),
+ _("Address complement")
+ ))
postal_code = getattr(self, prefix + "postal_code")
town = getattr(self, prefix + "town")
if postal_code or town:
- if lbl:
- lbl += "\n"
- lbl += "{}{}{}".format(
- postal_code or "", " " if postal_code and town else "", town or ""
- )
+ lbls.append((
+ " ".join([postal_code, town]),
+ _("Postal code - Town")
+ ))
if self.phone:
- if lbl:
- lbl += "\n"
- lbl += "{} {}".format(str(_("Tel: ")), self.phone)
+ lbls.append((
+ self.phone,
+ _("Phone")
+ ))
if self.mobile_phone:
- if lbl:
- lbl += "\n"
- lbl += "{} {}".format(str(_("Mobile: ")), self.mobile_phone)
+ lbls.append((
+ self.mobile_phone,
+ _("Mobile")
+ ))
if self.email:
- if lbl:
- lbl += "\n"
- lbl += "{} {}".format(str(_("Email: ")), self.email)
- return lbl
+ lbls.append((
+ self.email,
+ _("Email")
+ ))
+ if list:
+ return lbls
+ return "\n".join([
+ value for value, lbl in lbls
+ ])
+
+ def address_lbl_list(self):
+ return self.address_lbl(list=True)
class Merge(models.Model):
diff --git a/ishtar_common/templates/ishtar/merge.html b/ishtar_common/templates/ishtar/merge.html
index 7f46231f1..a77ed2f91 100644
--- a/ishtar_common/templates/ishtar/merge.html
+++ b/ishtar_common/templates/ishtar/merge.html
@@ -39,7 +39,12 @@
{% endfor %}
<tbody>
</table>
-<input type="submit" value="{% trans "Validate" %}"/>
+ {% block "footer" %}
+ <div id="footer">
+ {% include 'ishtar/wizard/validation_bar.html' %}
+ {% include 'ishtar/blocks/footer.html' %}
+ </div>
+ {% endblock %}
</form>
</div>
{% endblock %}
diff --git a/ishtar_common/templates/ishtar/merge_organization.html b/ishtar_common/templates/ishtar/merge_organization.html
index 10730e8c5..f2ce05b41 100644
--- a/ishtar_common/templates/ishtar/merge_organization.html
+++ b/ishtar_common/templates/ishtar/merge_organization.html
@@ -1,4 +1,4 @@
-{% extends "ishtar/merge.html" %}
+{% extends "ishtar/merge.html" %}{% load i18n %}
{% block merge_field_row %}
{% if form.non_field_errors %}<tr><td colspan='4'></td><td colspan='3' class='errorlist'>{% for error in form.non_field_errors %}{{error}} {% endfor%}</tr>{% endif %}
<tr>
@@ -6,15 +6,23 @@
<a href="#" onclick="load_window('{% url 'show-organization' form.instance.from_organization.pk '' %}', 'organization');" class="display_details"><i class="fa fa-info-circle" aria-hidden="true"></i></a>
</td>
<td>
- {{form.instance.from_organization}} ({{form.instance.from_organization.pk}})<br />
- {{form.instance.from_organization.address_lbl|linebreaksbr}}
+ <span title="{% trans 'Name' %}">{{form.instance.from_organization.name}}</span> ({{form.instance.from_organization.pk}})<br>
+ {% if form.instance.from_organization.organization_type %}<span title="{% trans 'Type' %}">{{form.instance.from_organization.organization_type}}</span><br>{% endif %}
+ {% if form.instance.from_organization.url %}<span title="{% trans 'URL' %}">{{form.instance.from_organization.url}}</span><br>{% endif %}
+ {% for value, title in form.instance.from_organization.address_lbl_list %}
+ <span title="{{title}}">{{value}}</span>{% if not forloop.last %}<br>{% endif %}
+ {% endfor %}
</td>
<td>
<a href="#" onclick="load_window('{% url 'show-organization' form.instance.to_organization.pk '' %}', 'organization');" class="display_details"><i class="fa fa-info-circle" aria-hidden="true"></i></a>
</td>
<td>
- {{form.instance.to_organization}} ({{form.instance.to_organization.pk}})<br />
- {{form.instance.to_organization.address_lbl|linebreaksbr}}
+ <span title="{% trans 'Name' %}">{{form.instance.to_organization.name}}</span> ({{form.instance.to_organization.pk}})<br>
+ {% if form.instance.to_organization.organization_type %}<span title="{% trans 'Type' %}">{{form.instance.to_organization.organization_type}}</span><br>{% endif %}
+ {% if form.instance.to_organization.url %}<span title="{% trans 'URL' %}">{{form.instance.to_organization.url}}</span><br>{% endif %}
+ {% for value, title in form.instance.to_organization.address_lbl_list %}
+ <span title="{{title}}">{{value}}</span>{% if not forloop.last %}<br>{% endif %}
+ {% endfor %}
</td>
<td class='check'>{{form.b_is_duplicate_a}}</td>
<td class='check'>{{form.a_is_duplicate_b}}</td>
diff --git a/ishtar_common/templates/ishtar/merge_person.html b/ishtar_common/templates/ishtar/merge_person.html
index 0d03112c5..bb80a5645 100644
--- a/ishtar_common/templates/ishtar/merge_person.html
+++ b/ishtar_common/templates/ishtar/merge_person.html
@@ -1,4 +1,4 @@
-{% extends "ishtar/merge.html" %}
+{% extends "ishtar/merge.html" %}{% load i18n %}
{% block merge_field_row %}
{% if form.non_field_errors %}<tr><td colspan='4'></td><td colspan='3' class='errorlist'>{% for error in form.non_field_errors %}{{error}} {% endfor%}</tr>{% endif %}
<tr>
@@ -6,15 +6,25 @@
<a href="#" onclick="load_window('{% url 'show-person' form.instance.from_person.pk '' %}', 'person');" class="display_details"><i class="fa fa-info-circle" aria-hidden="true"></i></a>
</td>
<td>
- {{form.instance.from_person}} ({{form.instance.from_person.pk}})<br/>
- {{form.instance.from_person.address_lbl|linebreaksbr}}
+ <span title="{% trans 'Raw name' %}">{{form.instance.from_person.raw_name}}</span> ({{form.instance.from_person.pk}})<br>
+ <span title="{% trans 'Title' %}">{{form.instance.from_person.title|default:""}}</span> <span title="{% trans 'Name' %}">{{form.instance.from_person.name|default:""}}</span> <span title="{% trans 'Name' %}">{{form.instance.from_person.surname|default:""}}</span><br>
+ {% if form.instance.from_person.attached_to %}<span title="{% trans 'Organization' %}">{{form.instance.from_person.attached_to}}</span><br>{% endif %}
+ {% if form.instance.from_person.salutation %}<span title="{% trans 'Salutation' %}">{{form.instance.from_person.salutation}}</span><br>{% endif %}
+ {% for value, title in form.instance.from_person.address_lbl_list %}
+ <span title="{{title}}">{{value}}</span>{% if not forloop.last %}<br>{% endif %}
+ {% endfor %}
</td>
<td>
<a href="#" onclick="load_window('{% url 'show-person' form.instance.to_person.pk '' %}', 'person');" class="display_details"><i class="fa fa-info-circle" aria-hidden="true"></i></a>
</td>
<td>
- {{form.instance.to_person}} ({{form.instance.to_person.pk}})<br/>
- {{form.instance.to_person.address_lbl|linebreaksbr}}
+ <span title="{% trans 'Raw name' %}">{{form.instance.to_person.raw_name}}</span> ({{form.instance.to_person.pk}})<br>
+ <span title="{% trans 'Title' %}">{{form.instance.to_person.title|default:""}}</span> <span title="{% trans 'Name' %}">{{form.instance.to_person.name|default:""}}</span> <span title="{% trans 'Name' %}">{{form.instance.to_person.surname|default:""}}</span><br>
+ {% if form.instance.to_person.attached_to %}<span title="{% trans 'Organization' %}">{{form.instance.to_person.attached_to}}</span><br>{% endif %}
+ {% if form.instance.to_person.salutation %}<span title="{% trans 'Salutation' %}">{{form.instance.to_person.salutation}}</span><br>{% endif %}
+ {% for value, title in form.instance.to_person.address_lbl_list %}
+ <span title="{{title}}">{{value}}</span>{% if not forloop.last %}<br>{% endif %}
+ {% endfor %}
</td>
<td class='check'>{{form.b_is_duplicate_a}}</td>
<td class='check'>{{form.a_is_duplicate_b}}</td>