From e29d062644097fe2fbb951f22a97e46a36812bd2 Mon Sep 17 00:00:00 2001
From: daniquilez <dani.quilez@gmail.com>
Date: Fri, 14 Mar 2025 11:30:29 +0100
Subject: [PATCH] =?UTF-8?q?[FIX]=20=F0=9F=90=9B=20Avoid=20landing=20api=20?=
 =?UTF-8?q?problems=20for=20why=5Fbecome=5Fcooperator=20and=20become=5Fcoo?=
 =?UTF-8?q?perator=5Fprocess=20Text=20fields?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 energy_communities/models/landing_page.py | 30 ++++++++++++-----------
 1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/energy_communities/models/landing_page.py b/energy_communities/models/landing_page.py
index 784428d8c..7b6a34031 100644
--- a/energy_communities/models/landing_page.py
+++ b/energy_communities/models/landing_page.py
@@ -155,6 +155,9 @@ class LandingPage(models.Model):
         )
 
     def to_dict(self):
+        # TODO: Refactor this image processing. Build it into a method
+        # images
+        # company logo
         if self.company_logo:
             attachment_query = [
                 ("res_id", "=", self.company_id.id),
@@ -165,10 +168,10 @@ class LandingPage(models.Model):
             company_logo_write_date = self._get_image_write_date(
                 "company_logo", attachment_query
             )
-
         else:
             company_logo = ""
             company_logo_write_date = ""
+        # primary image
         if self.primary_image_file:
             primary_image_file = self._get_image_payload("primary_image_file")
             primary_image_file_write_date = self._get_image_write_date(
@@ -177,6 +180,7 @@ class LandingPage(models.Model):
         else:
             primary_image_file = ""
             primary_image_file_write_date = ""
+        # secondary image
         if self.secondary_image_file:
             secondary_image_file = self._get_image_payload("secondary_image_file")
             secondary_image_file_write_date = self._get_image_write_date(
@@ -185,15 +189,7 @@ class LandingPage(models.Model):
         else:
             secondary_image_file = ""
             secondary_image_file_write_date = ""
-        if self.map_place_id:
-            map_reference = self.map_place_id.slug_id
-        else:
-            map_reference = ""
-        if self.why_become_cooperator == "<p><br></p>":
-            self.why_become_cooperator = ""
-        if self.become_cooperator_process == "<p><br></p>":
-            self.become_cooperator_process = ""
-        legal_form_dict = dict(_LEGAL_FORM_VALUES)
+        # returned dict
         return {
             "landing": {
                 "id": self.id,
@@ -206,7 +202,7 @@ class LandingPage(models.Model):
                 "community_type": self.community_type,
                 "community_secondary_type": self.community_secondary_type,
                 "legal_form": get_translation(
-                    source=legal_form_dict[self.community_secondary_type],
+                    source=dict(_LEGAL_FORM_VALUES)[self.community_secondary_type],
                     lang=self.env.context["lang"],
                     mods="energy_communities",
                 ),
@@ -228,9 +224,15 @@ class LandingPage(models.Model):
                 "company_logo_write_date": company_logo_write_date,
                 "short_description": self.short_description or "",
                 "long_description": self.long_description or "",
-                "why_become_cooperator": self.why_become_cooperator,
-                "become_cooperator_process": self.become_cooperator_process,
-                "map_reference": map_reference,
+                "why_become_cooperator": ""
+                if self.why_become_cooperator == "<p><br></p>"
+                or not self.why_become_cooperator
+                else self.why_become_cooperator,
+                "become_cooperator_process": ""
+                if self.become_cooperator_process == "<p><br></p>"
+                or not self.become_cooperator_process
+                else self.become_cooperator_process,
+                "map_reference": self.map_place_id.slug_id if self.map_place_id else "",
                 "street": self.street or "",
                 "postal_code": self.postal_code or "",
                 "city": self.city or "",
-- 
GitLab