def yandex_metrika_callback_view(request): try: state = request.GET['state'] code = request.GET['code'] module = UserDashboardModule.objects.get(pk=state) client = YandexMetrikaClient() result, exception = client.oath_token_request(code) if result is None: messages.error(request, _('API request failed.')) else: module.update_settings(result) return redirect(reverse('jet-dashboard:update_module', kwargs={'pk': module.pk})) except KeyError: return HttpResponse(_('Bad arguments')) except UserDashboardModule.DoesNotExist: return HttpResponse(_('Module not found'))
def yandex_metrika_grant_view(request, pk): client = YandexMetrikaClient() return redirect(client.get_oauth_authorize_url(pk))