def home(request): new_services = Service.objects.all().order_by('-id')[0:5] new_solds = [] for srv in new_services: new_solds.append(sold_count(srv.sold_number)) if request.user.is_authenticated(): try: if request.user.site_user is not None: if request.user.site_user.get_fields()['super_type'] == 'tourist': recomended_services = send_recommended_mail(request.user.id) recomended_solds = [] for srv in recomended_services: recomended_solds.append(sold_count(srv.sold_number)) return render(request, 'base/home.html',{ 'new_services': zip(new_services, new_solds), 'recomended_services': zip(recomended_services, recomended_solds) }) except: pass return render(request, 'base/home.html',{ 'new_services': zip(new_services, new_solds), 'pics': AdvertiseBox.load() })
def do(self): tourists = Tourist.objects.all() for tourist in tourists: recommendations = send_recommended_mail(tourist.primary_user.id) recommendations.sort(key=lambda x: x.sold_number) times = {} for i, recommendation in enumerate(recommendations): times.update( {i: jdatetime.date.fromgregorian(date=recommendation.get_date()).strftime("%Y/%m/%d")}) send_mail('پیشنهادات سپاس ایران', '*****@*****.**', [tourist.primary_user.email], 'tourist/mail_birthday.txt', 'tourist/recommendation.html', {'recommendations': recommendations, 'tourist': tourist, 'times': times}, True)