From d3208ac7e761f9499b06c093c272cc3810713610 Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Thu, 18 Oct 2018 11:33:04 +0100 Subject: [PATCH] people: List IPFire phone numbers Signed-off-by: Michael Tremer --- src/backend/accounts.py | 17 +++++++++++++++ src/templates/people/user.html | 40 ++++++++++++++++++++++++++++------ 2 files changed, 50 insertions(+), 7 deletions(-) diff --git a/src/backend/accounts.py b/src/backend/accounts.py index 1c956c8b..dca60aa4 100644 --- a/src/backend/accounts.py +++ b/src/backend/accounts.py @@ -509,6 +509,19 @@ class Account(Object): # Phone Numbers + @lazy_property + def phone_number(self): + """ + Returns the IPFire phone number + """ + if self.sip_id: + return phonenumbers.parse("+4923636035%s" % self.sip_id) + + @lazy_property + def fax_number(self): + if self.sip_id: + return phonenumbers.parse("+49236360359%s" % self.sip_id) + def get_phone_numbers(self): ret = [] @@ -548,6 +561,10 @@ class Account(Object): def _all_telephone_numbers(self): ret = [ self.sip_id, ] + if self.phone_number: + s = phonenumbers.format_number(self.phone_number, phonenumbers.PhoneNumberFormat.E164) + ret.append(s) + for number in self.phone_numbers: s = phonenumbers.format_number(number, phonenumbers.PhoneNumberFormat.E164) ret.append(s) diff --git a/src/templates/people/user.html b/src/templates/people/user.html index 98c9ea2c..f5b23cc3 100644 --- a/src/templates/people/user.html +++ b/src/templates/people/user.html @@ -28,17 +28,43 @@ {% end %} - {% if account.phone_numbers %} -
-
{{ _("Phone Numbers") }}
+
+ {% if account.phone_number or account.fax_number %} +
{{ _("Phone Numbers") }}
+ + + {% end %} + + {% if account.phone_numbers %} +
{{ _("External Phone Numbers") }}
    {% for number in account.phone_numbers %}
  • {% if phonenumbers.number_type(number) == phonenumbers.PhoneNumberType.MOBILE %} - + {% else %} - + {% end %} {% end %}
-
- {% end %} + {% end %} +
-- 2.47.3