diff --git a/main/models.py b/main/models.py
index dee152ac197679b11bef51ea880a9c5ec3ad57d7..f8817a7107f0833eb2266836b4edbfe651ac9907 100644
--- a/main/models.py
+++ b/main/models.py
@@ -160,9 +160,7 @@ class MainHomePage(MenuMixin, ExtendedMetadataHomePageMixin, MetadataPageMixin,
 
     def get_context(self, request, *args, **kwargs):
         context = super().get_context(request, args, kwargs)
-        tweets_page = request.GET.get('page', 1)
-        tweet_paginator = Paginator(Tweet.objects.order_by("-twitter_id"), self.max_items)
-        context["tweet_list"] = tweet_paginator.get_page(tweets_page)
+        context["tweet_list"] = Tweet.objects.order_by("-twitter_id")[:4]
         context["regions"] = REGION_CHOICES
         last_month = timezone.now().today().replace(day=1) - timedelta(days=1)
         first_day_of_last_month = last_month.replace(day=1)
@@ -173,40 +171,45 @@ class MainHomePage(MenuMixin, ExtendedMetadataHomePageMixin, MetadataPageMixin,
         context["article_data_list"] = sorted_article_qs[:3]
         return context
 
-    def serve(self, request, *args, **kwargs):
+    def get_region_response(self, request):
+        last_month = timezone.now().today().replace(day=1) - timedelta(days=1)
+        first_day_of_last_month = last_month.replace(day=1)
+        if request.GET.get('region', None) == 'VSK':
+            sorted_article_qs = MainArticlePage.objects.filter(
+                date__gt=first_day_of_last_month
+            ).order_by("-date")
+        else:
+            sorted_article_qs = MainArticlePage.objects.filter(
+                date__gt=first_day_of_last_month, region=request.GET.get('region', None)
+            ).order_by("-date")
+        context = {
+            "article_data_list": sorted_article_qs[:3]
+        }
+        data = {
+            'html': render(request, 'main/includes/small_article_preview.html', context).content.decode("utf-8")
+        }
+        return JsonResponse(data=data, safe=False)
+
+    def get_twitter_response(self, request):
+        tweet_paginator = Paginator(Tweet.objects.order_by("-twitter_id"), self.max_items)
+        tweet_page = tweet_paginator.get_page(request.GET.get('page', 1))
+        context = {
+            "tweet_list": tweet_page.object_list
+        }
+        html_content = render(request, 'main/includes/twitter_widget.html', context).content
+        data = {
+            'html': html_content.decode("utf-8"),
+            'last_page': tweet_page.paginator.num_pages,
+        }
+        return JsonResponse(data=data, safe=False)
 
+    def serve(self, request, *args, **kwargs):
         if not request.META.get('HTTP_X_REQUESTED_WITH') == 'XMLHttpRequest':
             return super().serve(request, *args, **kwargs)
         if 'region' in request.GET:
-            last_month = timezone.now().today().replace(day=1) - timedelta(days=1)
-            first_day_of_last_month = last_month.replace(day=1)
-            if request.GET.get('region', None) == 'VSK':
-                sorted_article_qs = MainArticlePage.objects.filter(
-                    date__gt=first_day_of_last_month
-                ).order_by("-date")
-            else:
-                sorted_article_qs = MainArticlePage.objects.filter(
-                    date__gt=first_day_of_last_month, region=request.GET.get('region', None)
-                ).order_by("-date")
-            context = {
-                "article_data_list": sorted_article_qs[:3]
-            }
-            data = {
-                'html': render(request, 'main/includes/small_article_preview.html', context).content.decode("utf-8")
-            }
-            return JsonResponse(data=data, safe=False)
+            return self.get_region_response(request)
         else:
-            tweet_paginator = Paginator(Tweet.objects.order_by("-twitter_id"), self.max_items)
-            tweet_page = tweet_paginator.get_page(request.GET.get('page', 1))
-            context = {
-                "tweet_list": tweet_page.object_list
-            }
-            html_content = render(request, 'main/includes/twitter_widget.html', context).content
-            data = {
-                'html': html_content.decode("utf-8"),
-                'last_page': tweet_page.paginator.num_pages,
-            }
-            return JsonResponse(data=data, safe=False)
+            return self.get_twitter_response(request)
 
     @cached_property
     def newsletter_subscribe_url(self):