From 3b0a3a17b6e7968ed40958cd8958bbf57ea6df6b Mon Sep 17 00:00:00 2001 From: nerosketch Date: Tue, 24 Apr 2018 01:52:06 +0600 Subject: [PATCH 1/2] update doc --- docs/dev.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/docs/dev.md b/docs/dev.md index f1f47fa..09d00e4 100644 --- a/docs/dev.md +++ b/docs/dev.md @@ -1,6 +1,12 @@ > Перед началом обязательно, хотя бы поверхностно, ознакомиться с документацией к > [Django](https://docs.djangoproject.com). +### Содержание +- [Добавление свича](#добавление-поддерживаемого-устройства-(свича)) +- [Свой сервис для API](#свой-сервис-для-api) + + + ## Добавление поддерживаемого устройства (Свича) Для того чтоб добавить новый тип устройства с которым потом сможет работать биллинг нужно открыть файл *devapp/dev_types.py* и переопределить 2 интерфейса. Первый это *BasePort* для порта свича, а второй *DevBase* для самого свича соответственно. @@ -343,7 +349,12 @@ def check_news(request): *exist* - Логическое значение, обозначает есть или нет информации в ответе. Если *exist* == True тогда возвращае ещё *content* и *title*. - *content* - Соответственно содержимое оповещения. *title* - Заголовок оповещения. + + +### Свой сервис для API +Сервисы общаются с биллингом через http запросы и могут быть самыми разными, но все они должны уметь одинаково +расчитывать хеш сумму для проведения транзакци, иначе web сервер биллинга просто вернёт 403. + From b83492cb51bddc8ca250c2f4df4db67d2508ef8c Mon Sep 17 00:00:00 2001 From: www-data Date: Tue, 24 Apr 2018 12:17:28 +0300 Subject: [PATCH 2/2] fix bug --- abonapp/views.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/abonapp/views.py b/abonapp/views.py index b4c2955..c691486 100644 --- a/abonapp/views.py +++ b/abonapp/views.py @@ -295,8 +295,6 @@ class AbonHomeUpdateView(UpdateView): messages.error(request, e) except (NasFailedResult, NasNetworkError) as e: messages.error(request, e) - except models.AbonRawPassword.DoesNotExist: - messages.warning(request, _('User has not have password, and cannot login')) except mydefs.MultipleException as errs: for err in errs.err_list: messages.error(request, err) @@ -331,10 +329,16 @@ class AbonHomeUpdateView(UpdateView): def get_initial(self): abon = self.object - passw = models.AbonRawPassword.objects.get(account=abon).passw_text - return { - 'password': passw - } + if self.initial: + return self.initial + try: + passw = models.AbonRawPassword.objects.get(account=abon).passw_text + return { + 'password': passw + } + except models.AbonRawPassword.DoesNotExist: + messages.warning(self.request, _('User has not have password, and cannot login')) + return {'password': ''} def get_context_data(self, **kwargs): abon = self.object