Пример #1
0
    def get(self, request):
        glucose = BloodGlucoseResults.objects.filter(
            user=request.user,
            time__lt=datetime.now(),
            time__gte=(datetime.now() - timedelta(hours=24)))

        custom_style = Style(background='transparent',
                             plot_background='transparent',
                             foreground_subtle='#FFD200',
                             opacity='.6',
                             opacity_hover='.9',
                             transition='400ms ease-in',
                             colors=('#FFD200', '#5B5B5B'))

        chart = DateTimeLine(height=600,
                             width=1000,
                             explicit_size=True,
                             style=custom_style,
                             show_legend=False,
                             x_value_formatter=lambda dt: dt.strftime("%H:%M"))

        chart.add("Poziom cukru",
                  [(item.time, item.glucose) for item in glucose])

        rendered_chart = chart.render(unicode=True)
        ctx = {}
        print(rendered_chart)
        ctx['chart'] = rendered_chart.decode("utf-8")

        meals = Meals.objects.filter(user=request.user,
                                     time__lt=datetime.now(),
                                     time__gte=(datetime.now() -
                                                timedelta(hours=24)))
        insulin_inj = InsulinInjections.objects.filter(
            user=request.user,
            time__lt=datetime.now(),
            time__gte=(datetime.now() - timedelta(hours=24)))
        ctx['meals'] = meals
        ctx['insulin_inj'] = insulin_inj
        return render(request, 'smartdiabetes/stat.html', ctx)