platzky 0.2.12__tar.gz → 0.2.13__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. {platzky-0.2.12 → platzky-0.2.13}/PKG-INFO +1 -1
  2. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/db.py +2 -4
  3. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/graph_ql_db.py +34 -12
  4. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/json_db.py +5 -3
  5. {platzky-0.2.12 → platzky-0.2.13}/platzky/platzky.py +1 -1
  6. {platzky-0.2.12 → platzky-0.2.13}/pyproject.toml +1 -1
  7. {platzky-0.2.12 → platzky-0.2.13}/README.md +0 -0
  8. {platzky-0.2.12 → platzky-0.2.13}/platzky/__init__.py +0 -0
  9. {platzky-0.2.12 → platzky-0.2.13}/platzky/blog/__init__.py +0 -0
  10. {platzky-0.2.12 → platzky-0.2.13}/platzky/blog/blog.py +0 -0
  11. {platzky-0.2.12 → platzky-0.2.13}/platzky/blog/comment_form.py +0 -0
  12. {platzky-0.2.12 → platzky-0.2.13}/platzky/config.py +0 -0
  13. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/__init__.py +0 -0
  14. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/db_loader.py +0 -0
  15. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/google_json_db.py +0 -0
  16. {platzky-0.2.12 → platzky-0.2.13}/platzky/db/json_file_db.py +0 -0
  17. {platzky-0.2.12 → platzky-0.2.13}/platzky/locale/en/LC_MESSAGES/messages.po +0 -0
  18. {platzky-0.2.12 → platzky-0.2.13}/platzky/locale/pl/LC_MESSAGES/messages.po +0 -0
  19. {platzky-0.2.12 → platzky-0.2.13}/platzky/models.py +0 -0
  20. {platzky-0.2.12 → platzky-0.2.13}/platzky/plugin_loader.py +0 -0
  21. {platzky-0.2.12 → platzky-0.2.13}/platzky/plugins/google-tag-manager/entrypoint.py +0 -0
  22. {platzky-0.2.12 → platzky-0.2.13}/platzky/plugins/redirections/entrypoint.py +0 -0
  23. {platzky-0.2.12 → platzky-0.2.13}/platzky/plugins/sendmail/entrypoint.py +0 -0
  24. {platzky-0.2.12 → platzky-0.2.13}/platzky/seo/seo.py +0 -0
  25. {platzky-0.2.12 → platzky-0.2.13}/platzky/static/blog.css +0 -0
  26. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/404.html +0 -0
  27. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/base.html +0 -0
  28. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/blog.html +0 -0
  29. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/body_meta.html +0 -0
  30. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/feed.xml +0 -0
  31. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/head_meta.html +0 -0
  32. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/home.html +0 -0
  33. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/page.html +0 -0
  34. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/post.html +0 -0
  35. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/robots.txt +0 -0
  36. {platzky-0.2.12 → platzky-0.2.13}/platzky/templates/sitemap.xml +0 -0
  37. {platzky-0.2.12 → platzky-0.2.13}/platzky/www_handler.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: platzky
3
- Version: 0.2.12
3
+ Version: 0.2.13
4
4
  Summary: Not only blog engine
5
5
  License: MIT
6
6
  Requires-Python: >=3.10,<4.0
@@ -49,7 +49,7 @@ class DB(ABC):
49
49
  pass
50
50
 
51
51
  @abstractmethod
52
- def get_menu_items(self) -> list[MenuItem]:
52
+ def get_menu_items_in_lang(self, lang) -> list[MenuItem]:
53
53
  pass
54
54
 
55
55
  @abstractmethod
@@ -69,9 +69,7 @@ class DB(ABC):
69
69
  pass
70
70
 
71
71
  @abstractmethod
72
- def get_logo_url(
73
- self,
74
- ) -> str: # TODO provide alternative text along with the URL of logo
72
+ def get_logo_url(self) -> str: # TODO provide alternative text along with the URL of logo
75
73
  pass
76
74
 
77
75
  @abstractmethod
@@ -3,6 +3,7 @@
3
3
 
4
4
  from gql import Client, gql
5
5
  from gql.transport.aiohttp import AIOHTTPTransport
6
+ from gql.transport.exceptions import TransportQueryError
6
7
  from pydantic import Field
7
8
 
8
9
  from ..models import Color, Post
@@ -99,18 +100,39 @@ class GraphQL(DB):
99
100
 
100
101
  return [Post.model_validate(_standarize_post(post)) for post in raw_ql_posts]
101
102
 
102
- def get_menu_items(self):
103
- menu_items = gql(
104
- """
105
- query MyQuery {
106
- menuItems(stage: PUBLISHED){
107
- name
108
- url
109
- }
110
- }
111
- """
112
- )
113
- return self.client.execute(menu_items)["menuItems"]
103
+ def get_menu_items_in_lang(self, lang):
104
+ menu_items = []
105
+ try:
106
+ menu_items_with_lang = gql(
107
+ """
108
+ query MyQuery($lang: Lang!) {
109
+ menuItems(where: {language: $lang}, stage: PUBLISHED){
110
+ name
111
+ url
112
+ }
113
+ }
114
+ """
115
+ )
116
+ menu_items = self.client.execute(
117
+ menu_items_with_lang, variable_values={"language": lang}
118
+ )
119
+
120
+ # TODO remove try except block after bumping up version
121
+ # now it's backwards compatible with older versions
122
+ except TransportQueryError:
123
+ menu_items_without_lang = gql(
124
+ """
125
+ query MyQuery {
126
+ menuItems(stage: PUBLISHED){
127
+ name
128
+ url
129
+ }
130
+ }
131
+ """
132
+ )
133
+ menu_items = self.client.execute(menu_items_without_lang)
134
+
135
+ return menu_items["menuItems"]
114
136
 
115
137
  def get_post(self, slug):
116
138
  post = gql(
@@ -56,9 +56,11 @@ class Json(DB):
56
56
  page = Post.model_validate(next(list_of_pages))
57
57
  return page
58
58
 
59
- def get_menu_items(self) -> list[MenuItem]:
60
- menu_items_raw = self._get_site_content().get("menu_items", [])
61
- menu_items_list = [MenuItem.model_validate(x) for x in menu_items_raw]
59
+ def get_menu_items_in_lang(self, lang) -> list[MenuItem]:
60
+ menu_items_raw = self._get_site_content().get("menu_items", {})
61
+ items_in_lang = menu_items_raw.get(lang, {})
62
+
63
+ menu_items_list = [MenuItem.model_validate(x) for x in items_in_lang]
62
64
  return menu_items_list
63
65
 
64
66
  def get_posts_by_tag(self, tag, lang):
@@ -107,7 +107,7 @@ def create_engine(config: Config, db) -> Engine:
107
107
  "current_lang_country": country,
108
108
  "current_language": locale,
109
109
  "url_link": url_link,
110
- "menu_items": app.db.get_menu_items(),
110
+ "menu_items": app.db.get_menu_items_in_lang(locale),
111
111
  "logo_url": app.db.get_logo_url(),
112
112
  "favicon_url": app.db.get_favicon_url(),
113
113
  "font": app.db.get_font(),
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "platzky"
3
- version = "0.2.12"
3
+ version = "0.2.13"
4
4
  description = "Not only blog engine"
5
5
  authors = []
6
6
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes