diff options
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 |
commit | 69b20d50aed1e20cb3a76652fac671efea4e3991 (patch) | |
tree | 6036ccfb226f94417ebc292c7d6cfe445cf4fdd4 | |
parent | ccac2c5da06d2cf6cc0c7c9aee56cbb4cda9a319 (diff) | |
download | Ishtar-69b20d50aed1e20cb3a76652fac671efea4e3991.tar.bz2 Ishtar-69b20d50aed1e20cb3a76652fac671efea4e3991.zip |
Merge page - add more fields on table (refs #5447)
-rw-r--r-- | CHANGES.md | 1 | ||||
-rw-r--r-- | ishtar_common/models.py | 4 | ||||
-rw-r--r-- | ishtar_common/models_common.py | 55 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/merge.html | 7 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/merge_organization.html | 18 | ||||
-rw-r--r-- | ishtar_common/templates/ishtar/merge_person.html | 20 |
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> |