Skip to content

Commit 2ff7e1b

Browse files
authored
fixing opengraph user agent responses (#1559)
1 parent 6865e05 commit 2ff7e1b

File tree

2 files changed

+31
-5
lines changed

2 files changed

+31
-5
lines changed

openstax/middleware.py

Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,33 @@ def process_response(self, request, response):
6464

6565
class CommonMiddlewareOpenGraphRedirect(CommonMiddleware):
6666
OG_USER_AGENTS = [
67-
'twitterbot',
67+
'baiduspider',
68+
'bingbot',
69+
'embedly',
6870
'facebookbot',
6971
'facebookexternalhit/1.1',
72+
'facebookexternalhit',
73+
'facebot',
74+
'google.*snippet',
75+
'googlebot',
76+
'linkedinbot',
77+
'MetadataScraper',
78+
'outbrain',
79+
'pinterest',
7080
'pinterestbot',
81+
'quora',
82+
'quora link preview',
83+
'rogerbot',
84+
'showyoubot',
85+
'slackbot',
7186
'slackbot-linkexpanding',
87+
'twitterbot',
88+
'vkShare',
89+
'W3C_Validator',
90+
'WhatsApp',
91+
'MetadataScraper',
92+
'yandex',
93+
'yahoo',
7294
]
7395

7496
def __init__(self, get_response):
@@ -84,7 +106,7 @@ def __call__(self, request, *args, **kwargs):
84106

85107
full_url = unquote(request.build_absolute_uri())
86108

87-
# imdex of last / to find slug, except when there isn't a last /
109+
# index of last / to find slug, except when there isn't a last /
88110
if url_path == '':
89111
page_slug = "openstax-homepage"
90112
else:
@@ -119,8 +141,11 @@ def __call__(self, request, *args, **kwargs):
119141
else:
120142
page = self.page_by_slug(page_slug)
121143

122-
template = self.build_template(page[0], full_url)
123-
return HttpResponse(template)
144+
if page:
145+
template = self.build_template(page[0], full_url)
146+
return HttpResponse(template)
147+
else:
148+
return self.get_response(request)
124149
else:
125150
return self.get_response(request)
126151
return self.get_response(request)
@@ -169,7 +194,7 @@ def page_by_slug(self, page_slug):
169194
if page_slug == 'supporters':
170195
return Supporters.objects.all()
171196
if page_slug == 'openstax-homepage':
172-
return HomePage.objects.filter(locale = 1)
197+
return HomePage.objects.filter(locale=1)
173198

174199

175200

snippets/models.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@ def get_news_logo(self):
247247
index.SearchField('name', boost=10),
248248
index.AutocompleteField('name'),
249249
index.FilterField('name'),
250+
index.FilterField('locale_id')
250251
]
251252

252253
def __str__(self):

0 commit comments

Comments
 (0)