Browse Source

Переводы и добавил предупреждение перед удалением услуги

devel
bashmak 9 years ago
parent
commit
d793f9511f
  1. 5
      tariff_app/custom_tariffs.py
  2. 103
      tariff_app/locale/ru/LC_MESSAGES/django.po
  3. 30
      tariff_app/templates/tariff_app/editTarif.html
  4. 30
      tariff_app/templates/tariff_app/modal_del_warning.html
  5. 25
      tariff_app/templates/tariff_app/tarifs.html
  6. 2
      tariff_app/urls.py
  7. 19
      tariff_app/views.py

5
tariff_app/custom_tariffs.py

@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
from datetime import timedelta, datetime
from django.utils import timezone
from django.utils.translation import ugettext as _
from .base_intr import TariffBase
from calendar import monthrange
@ -44,7 +45,7 @@ class TariffDefault(TariffBase):
@staticmethod
def description():
return 'Базовый расчётный функционал'
return _('Base calculate functionality')
class TariffDp(TariffDefault):
@ -71,7 +72,7 @@ class TariffCp(TariffDp):
@staticmethod
def description():
return 'Для внутреннего пользования'
return _('Private service')
# Первый - всегда по умолчанию

103
tariff_app/locale/ru/LC_MESSAGES/django.po

@ -0,0 +1,103 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the PACKAGE package.
# Dmitry Novikov nerosketch@gmail.com, 2017.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-06-15 13:44+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Dmitry Novikov nerosketch@gmail.com\n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
"%100>=11 && n%100<=14)? 2 : 3);\n"
#: tariff_app/templates/tariff_app/modal_del_warning.html:23
msgid "Delete"
msgstr "Удалить"
#: tariff_app/templates/tariff_app/modal_del_warning.html:26
msgid "Reset"
msgstr "Сбросить"
msgid "Tarifs"
msgstr "Тарифы"
msgid "Add"
msgstr "Добавить"
msgid "Edit"
msgstr "Редактировать"
msgid "Create"
msgstr "Создать"
msgid "tariff"
msgstr "тариф"
msgid "Service title"
msgstr "Название тарифа"
msgid "Service description"
msgstr "Описание тарифа"
msgid "Speed In"
msgstr "Входящая скорость"
msgid "Speed Out"
msgstr "Исходящая скорость"
msgid "Price"
msgstr "Стоимость"
msgid "Script"
msgstr "Скрипт"
msgid "Tech service"
msgstr "Административный тариф"
msgid "Save"
msgstr "Сохранить"
msgid "Service list"
msgstr "Список тарифов"
msgid "Services does not exist yet"
msgstr "Ещё нет созданных тарифов"
msgid "Base calculate functionality"
msgstr "Базовый расчётный функционал"
msgid "Private service"
msgstr "Для внутреннего пользования"
msgid "Service has been saved"
msgstr "Тариф успешно сохранён"
msgid "Some fields were filled incorrect, please try again"
msgstr "Не все поля заполнены правильно, проверте и попробуйте ещё раз"
msgid "Service has been deleted"
msgstr "Тарифный план успешно удалён"
msgid "Not have a confirmations of delete"
msgstr "Нет подтверждения удаления"
msgid "Delete service"
msgstr "Удалить тарифный план"
msgid "Attention"
msgstr "Внимание"
msgid ""
"after delete the tariff, subscribers who use that tariff will be disconnected from it."
msgstr ""
"После того как вы удалите тарифный план то абоненты, подписанные на него, сразу потеряют услугу по этому тарифу. "
"Так что сначала убедитесь что уже никто не пользуется тарифом, и только после этого удалите его."

30
tariff_app/templates/tariff_app/editTarif.html

@ -1,15 +1,15 @@
{% extends request.is_ajax|yesno:'bajax.html,base.html' %}
{% load i18n %}
{% block main %}
<ol class="breadcrumb">
<li><span class="glyphicon glyphicon-home"></span></li>
<li><a href="{% url 'tarifs:home' %}">Тарифы</a></li>
<li><a href="{% url 'tarifs:home' %}">{% trans 'Tarifs' %}</a></li>
<li class="active">
{% if tarif_id == 0 %}
Добавить
{% trans 'Add' %}
{% else %}
Редактировать
{% trans 'Edit' %}
{% endif %}
</li>
</ol>
@ -18,13 +18,13 @@
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">{% if tarif_id == 0 %}Создать{% else %}Редактировать{% endif %} тариф</h3>
<h3 class="panel-title">{% if tarif_id == 0 %}{% trans 'Create' %}{% else %}{% trans 'Edit' %}{% endif %} {% trans 'tariff' %}</h3>
</div>
<div class="panel-body">
<form role="form" action="{% url 'tarifs:edit' tarif_id %}" method="post">{% csrf_token %}
<div class="form-group">
<label for="id_title">Название тарифа</label>
<label for="id_title">{% trans 'Service title' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-tag"></span></span>
@ -33,7 +33,7 @@
</div>
<div class="form-group">
<label for="id_descr">Описание тарифа</label>
<label for="id_descr">{% trans 'Service description' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-comment"></span></span>
@ -42,7 +42,7 @@
</div>
<div class="form-group">
<label for="id_speedIn">Входящая скорость</label>
<label for="id_speedIn">{% trans 'Speed In' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-chevron-down"></span></span>
@ -51,7 +51,7 @@
</div>
<div class="form-group">
<label for="id_speedOut">Исходящая скорость</label>
<label for="id_speedOut">{% trans 'Speed Out' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-chevron-up"></span></span>
@ -60,7 +60,7 @@
</div>
<div class="form-group">
<label for="id_amount">Стоимость</label>
<label for="id_amount">{% trans 'Price' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-usd"></span></span>
@ -69,7 +69,7 @@
</div>
<div class="form-group">
<label for="id_calc_type">Скрипт</label>
<label for="id_calc_type">{% trans 'Script' %}</label>
<div class="input-group">
<span class="input-group-addon"><span class="glyphicon glyphicon-link"></span></span>
@ -78,15 +78,15 @@
</div>
<div class="checkbox">
<label>{{ form.is_admin }}Административный тариф</label>
<label>{{ form.is_admin }} {% trans 'Tech service' %}</label>
</div>
<div class="btn-group">
<button type="submit" class="btn btn-sm btn-primary">
<span class="glyphicon glyphicon-save"></span> Сохранить
<span class="glyphicon glyphicon-save"></span> {% trans 'Save' %}
</button>
<button type="reset" class="btn btn-sm btn-default">
<span class="glyphicon glyphicon-remove-circle"></span> Сбросить
<span class="glyphicon glyphicon-remove-circle"></span> {% trans 'Reset' %}
</button>
</div>
@ -94,4 +94,4 @@
</div>
</div>
{% endblock %}
{% endblock %}

30
tariff_app/templates/tariff_app/modal_del_warning.html

@ -0,0 +1,30 @@
{% load i18n %}
<form role="form" action="{% url 'tarifs:del' tid %}" method="post"> {% csrf_token %}
<div class="modal-header warning">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
<h4 class="modal-title"><span class="glyphicon glyphicon-exclamation-sign"></span>{% trans 'Delete service' %}</h4>
</div>
{% include 'message_block.html' %}
<div class="modal-body">
<div class="form-group-sm">
<label for="id_dev">{% trans 'Attention' %}</label>
<p>{% blocktrans %}after delete the tariff, subscribers who use that tariff will be disconnected from it.{% endblocktrans %}</p>
<input type="hidden" name="confirm" value="yes">
</div>
<div class="btn-group">
<button type="submit" class="btn btn-sm btn-danger">
<span class="glyphicon glyphicon-remove"></span> {% trans 'Delete' %}
</button>
<button type="reset" class="btn btn-sm btn-default">
<span class="glyphicon glyphicon-retweet"></span> {% trans 'Reset' %}
</button>
</div>
</div>
</form>

25
tariff_app/templates/tariff_app/tarifs.html

@ -1,43 +1,44 @@
{% extends 'base.html' %}
{% load i18n %}
{% block main %}
<ol class="breadcrumb">
<li><span class="glyphicon glyphicon-home"></span></li>
<li class="active">Тарифы</li>
<li class="active">{% trans 'Tarifs' %}</li>
</ol>
{% include 'message_block.html' %}
<h3>Список тарифов</h3>
<h3>{% trans 'Service list' %}</h3>
<div class="table-responsive">
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>
<a href="{% url 'tarifs:home' %}?order_by=title&dir={{ dir|default:"down" }}">
Тариф
{% trans 'tariff' %}
</a>
{% if order_by == 'title' %}<span class="glyphicon glyphicon-filter"></span>{% endif %}
</th>
<th>
<a href="{% url 'tarifs:home' %}?order_by=speedIn&dir={{ dir|default:"down" }}">
Входящая скорость
{% trans 'Speed In' %}
</a>
{% if order_by == 'speedIn' %}<span class="glyphicon glyphicon-filter"></span>{% endif %}
</th>
<th>
<a href="{% url 'tarifs:home' %}?order_by=speedOut&dir={{ dir|default:"down" }}">
Исходящая скорость
{% trans 'Speed Out' %}
</a>
{% if order_by == 'speedOut' %}<span class="glyphicon glyphicon-filter"></span>{% endif %}
</th>
<th>
<a href="{% url 'tarifs:home' %}?order_by=amount&dir={{ dir|default:"down" }}">
Стоимость
{% trans 'Price' %}
</a>
{% if order_by == 'amount' %}<span class="glyphicon glyphicon-filter"></span>{% endif %}
</th>
<th width="250">Название скрипта</th>
<th width="250">{% trans 'Service title' %}</th>
<th width="50">Do</th>
</tr>
</thead>
@ -57,7 +58,7 @@
<td>{{ tar.get_calc_type_display }}</td>
<td>
{% if perms.tariff_app.delete_tariff %}
<a href="{% url 'tarifs:del' tar.id %}" class="btn btn-sm btn-danger">
<a href="{% url 'tarifs:del' tar.id %}" class="btn btn-sm btn-danger btn-modal">
<span class="glyphicon glyphicon-remove-circle"></span>
</a>
{% endif %}
@ -65,9 +66,9 @@
</tr>
{% empty %}
<tr>
<td colspan="6">Ещё нет созданных тарифов.
<td colspan="6">{% trans 'Услуги пока не существуют' %}.
{% if perms.tariff_app.add_tariff %}
<a href="{% url 'tarifs:add' %}" class="lgtbx">Создать</a>
<a href="{% url 'tarifs:add' %}" class="lgtbx">{% trans 'Create' %}</a>
{% endif %}
</td>
</tr>
@ -79,7 +80,7 @@
<tr>
<td colspan="6">
<a href="{% url 'tarifs:add' %}" class="btn btn-sm btn-success">
<span class="glyphicon glyphicon-plus"></span> Добавить
<span class="glyphicon glyphicon-plus"></span> {% trans 'Add' %}
</a>
</td>
</tr>
@ -91,4 +92,4 @@
{% include 'toolbar_page.html' with pag=tariflist %}
{% endblock %}
{% endblock %}

2
tariff_app/urls.py

@ -7,5 +7,5 @@ urlpatterns = [
url(r'^$', views.tarifs, name='home'),
url(r'^(?P<tarif_id>\d+)$', views.edit_tarif, name='edit'),
url(r'^add$', views.edit_tarif, name='add'),
url(r'^del(?P<id>\d+)$', views.del_tarif, name='del')
url(r'^del(?P<tid>\d+)$', views.del_tarif, name='del')
]

19
tariff_app/views.py

@ -1,5 +1,7 @@
# -*- coding: utf-8 -*-
from django.contrib.auth.decorators import login_required, permission_required
from django.contrib.gis.shortcuts import render_to_text
from django.utils.translation import ugettext as _
from django.shortcuts import render, get_object_or_404, redirect
from django.contrib import messages
from django.core.exceptions import PermissionDenied
@ -45,10 +47,10 @@ def edit_tarif(request, tarif_id=0):
frm = forms.TariffForm(request.POST, instance=tarif)
if frm.is_valid():
frm.save()
messages.success(request, 'Тариф успешно сохранён')
messages.success(request, _('Service has been saved'))
return redirect('tarifs:edit', tarif_id=tarif_id)
else:
messages.warning(request, 'Не все поля заполнены правильно, проверте и попробуйте ещё раз')
messages.warning(request, _('Some fields were filled incorrect, please try again'))
else:
frm = forms.TariffForm(instance=tarif)
@ -60,7 +62,12 @@ def edit_tarif(request, tarif_id=0):
@login_required
@permission_required('tariff_app.delete_tariff')
def del_tarif(request, id):
tar_id = mydefs.safe_int(id)
get_object_or_404(Tariff, id=tar_id).delete()
return mydefs.res_success(request, 'tarifs:home')
def del_tarif(request, tid):
if request.method == 'POST':
if request.POST.get('confirm') == 'yes':
get_object_or_404(Tariff, id=tid).delete()
messages.success(request, _('Service has been deleted'))
else:
messages.error(request, _('Not have a confirmations of delete'))
return mydefs.res_success(request, 'tarifs:home')
return render_to_text('tariff_app/modal_del_warning.html', {'tid': tid}, request=request)
Loading…
Cancel
Save