 Issue 5148261828526080:
  Issue 2119 - Add get_page_content template function.  (Closed)
    
  
    Issue 5148261828526080:
  Issue 2119 - Add get_page_content template function.  (Closed) 
  | Index: cms/utils.py | 
| diff --git a/cms/utils.py b/cms/utils.py | 
| index 52bcef5008158a00050440cc32df28fc5d7a2981..3d10a10171467f258b3aaf8279f27c9fe78045a0 100644 | 
| --- a/cms/utils.py | 
| +++ b/cms/utils.py | 
| @@ -17,7 +17,14 @@ | 
| from .converters import converters, TemplateConverter | 
| -def process_page(source, locale, page, format, site_url_override=None): | 
| +def get_page_params(source, locale, page, format=None, site_url_override=None): | 
| + # Guess page format if omitted, but default to HTML for friendlier exceptions | 
| + if format is None: | 
| + format = "html" | 
| 
Wladimir Palant
2015/04/07 21:17:11
Why default to HTML? That's a legacy format, if we
 
kzar
2015/04/08 08:15:24
Done.
 | 
| + for fmt in converters.keys(): | 
| + if source.has_page(page, fmt): | 
| + format = fmt | 
| + | 
| params = { | 
| "source": source, | 
| "template": "default", | 
| @@ -46,7 +53,6 @@ def process_page(source, locale, page, format, site_url_override=None): | 
| # Note: The converter might change some parameters so we can only read in | 
| # template data here. | 
| params["templatedata"] = source.read_template(params["template"]) | 
| - template_converter = TemplateConverter(params, key="templatedata") | 
| defaultlocale = params["config"].get("general", "defaultlocale") | 
| params["defaultlocale"] = defaultlocale | 
| @@ -62,4 +68,10 @@ def process_page(source, locale, page, format, site_url_override=None): | 
| params["available_locales"] = locales | 
| params["head"], params["body"] = converter() | 
| - return template_converter() | 
| + return params | 
| + | 
| +def process_page(source, locale, page, format, site_url_override=None): | 
| + return TemplateConverter( | 
| + get_page_params(source, locale, page, format, site_url_override), | 
| + key="templatedata" | 
| + )() |