def event_detail(request, event_id): template = "courses/event_detail.html" event = get_object_or_404(Event, id=event_id) contact_methods = ContactMethod.objects.filter(user=event.owner, deleted=False) accepted_cryptos = AcceptedCrypto.objects.filter(user=event.owner, deleted=False) owner_profile = Profile.objects.get(user=event.owner) academia_blockchain_timezones() event_user_timezone = None logged_user_profile = None event_is_bookmarked = False if request.user.is_authenticated: logged_user_profile = Profile.objects.get(user=request.user) try: # TODO mostrar los tiempos del evento en la hora del visitante user_timezone = pytz.timezone("America/Guayaquil") event_user_timezone = event.date_start.astimezone(user_timezone) except Exception as e: print("ERROR: %s" % e) event_is_bookmarked = Bookmark.objects.filter(event=event, user=request.user, deleted=False).exists() is_event_owner = (event.owner == request.user) event_bookmarks = Bookmark.objects.none() certificate_requests = CertificateRequest.objects.none() if is_event_owner: event_bookmarks = Bookmark.objects.filter(event=event, deleted=False) certificate_requests = CertificateRequest.objects.filter(event=event, deleted=False) context = { "event": event, "contact_methods": contact_methods, "accepted_cryptos": accepted_cryptos, "owner_profile": owner_profile, "event_user_timezone": event_user_timezone, "logged_user_profile": logged_user_profile, "event_is_bookmarked": event_is_bookmarked, "is_event_owner": is_event_owner, "event_bookmarks": event_bookmarks, "certificate_requests": certificate_requests } return render(request, template, context)
def profile_data(request): if request.method == "POST": email = request.POST.get("email") first_name = request.POST.get("first_name") last_name = request.POST.get("last_name") time_zone = request.POST.get("time_zone") interests = request.POST.get("interests") profile_description = request.POST.get("profile_description") request.user.email = email request.user.first_name = first_name request.user.last_name = last_name request.user.save() profile = Profile.objects.get(user=request.user) profile.timezone = time_zone profile.interests = interests profile.profile_description = profile_description profile.save() return redirect("profile_data") else: template = "profiles/profile_data.html" profile, created = Profile.objects.get_or_create( user=request.user) # loggear si created cryptos_string = get_cryptos_string(profile) contact_methods = ContactMethod.objects.filter(user=request.user, deleted=False) print("academia_blockchain_timezones():%s" % academia_blockchain_timezones()) profile_picture_form = ProfilePictureForm() context = { "profile_index_active": "active", "underline_data": "text-underline", "profile": profile, "academia_blockchain_timezones": academia_blockchain_timezones(), "cryptos_string": cryptos_string, "contact_methods": contact_methods, "profile_picture_form": profile_picture_form } return render(request, template, context)
def event_detail(request, event_id): template = "courses/event_detail.html" event = get_object_or_404(Event, id=event_id) logger.info("event: %s" % event) contact_methods = ContactMethod.objects.filter(user=event.owner, deleted=False) accepted_cryptos = AcceptedCrypto.objects.filter(user=event.owner, deleted=False) owner_profile = Profile.objects.get(user=event.owner) logger.info("contact_methods: %s" % contact_methods) logger.info("contact_methods: %s" % contact_methods) logger.info("contact_methods: %s" % contact_methods) academia_blockchain_timezones() event_user_timezone = None logged_user_profile = None event_is_bookmarked = False if request.user.is_authenticated: logged_user_profile = Profile.objects.get(user=request.user) try: user_timezone = pytz.timezone("America/Guayaquil") event_user_timezone = event.date_start.astimezone(user_timezone) except Exception as e: pass event_is_bookmarked = Bookmark.objects.filter(event=event, user=request.user, deleted=False).exists() logger.info("event_user_timezone: %s" % event_user_timezone) logger.info("logged_user_profile: %s" % logged_user_profile) logger.info("event_is_bookmarked: %s" % event_is_bookmarked) is_event_owner = (event.owner == request.user) event_bookmarks = Bookmark.objects.none() certificate_requests = CertificateRequest.objects.none() logger.info("is_event_owner: %s" % is_event_owner) if is_event_owner: event_bookmarks = Bookmark.objects.filter(event=event, deleted=False) certificate_requests = CertificateRequest.objects.filter( event=event, deleted=False, accepted=False) logger.info("event_bookmarks: %s" % event_bookmarks) logger.info("certificate_requests: %s" % certificate_requests) comments = Comment.objects.filter(event=event, deleted=False) rating = Rating.objects.for_instance(event) has_certificate = False if request.user.is_authenticated: has_certificate = Certificate.objects.filter( event=event, user=request.user).exists() logger.info("has_certificate: %s" % has_certificate) context = { "event": event, "contact_methods": contact_methods, "accepted_cryptos": accepted_cryptos, "owner_profile": owner_profile, "event_user_timezone": event_user_timezone, "logged_user_profile": logged_user_profile, "event_is_bookmarked": event_is_bookmarked, "is_event_owner": is_event_owner, "event_bookmarks": event_bookmarks, "certificate_requests": certificate_requests, "comments": comments, 'rating': rating, 'lack_certificate': not has_certificate } return render(request, template, context)