Browse Source

add check for existing duplicates tasks. And remote target=blank

devel
Dmitry Novikov 7 years ago
parent
commit
b9d0f66250
  1. 14
      abonapp/templates/abonapp/debtors.html
  2. 2
      abonapp/templates/abonapp/editAbon.html
  3. 2
      abonapp/templates/abonapp/group_list.html
  4. 2
      abonapp/templates/abonapp/invoiceForPayment.html
  5. 2
      abonapp/templates/abonapp/modal_phonebook.html
  6. 2
      abonapp/templates/abonapp/payHistory.html
  7. 2
      abonapp/templates/abonapp/service.html
  8. 2
      accounts_app/templates/accounts/ext.htm
  9. 5
      devapp/templates/devapp/custom_dev_page/onu.html
  10. 7
      devapp/templates/devapp/custom_dev_page/onu_for_zte.html
  11. 2
      devapp/templates/devapp/group_list.html
  12. 2
      dialing_app/templates/index.html
  13. 2
      dialing_app/templatetags/telephone_filters.py
  14. 4
      msg_app/templates/msg_app/chat.html
  15. 4
      searchapp/templates/searchapp/index.html
  16. 3
      taskapp/locale/ru/LC_MESSAGES/django.po
  17. 8
      taskapp/templates/taskapp/details.html
  18. 18
      taskapp/views.py

14
abonapp/templates/abonapp/debtors.html

@ -31,13 +31,19 @@
{% for invoice in invoices %} {% for invoice in invoices %}
<tr> <tr>
<td>{{ invoice.id }}</td> <td>{{ invoice.id }}</td>
<td><a href="{% url 'abonapp:abon_home' invoice.abon.group.id invoice.abon.username %}"
target="_blank">{{ invoice.abon.username }}</a></td>
<td>
<a href="{% url 'abonapp:abon_home' invoice.abon.group.id invoice.abon.username %}">
{{ invoice.abon.username }}
</a>
</td>
<td>{{ invoice.amount }}</td> <td>{{ invoice.amount }}</td>
<td>{{ invoice.comment }}</td> <td>{{ invoice.comment }}</td>
<td>{{ invoice.date_create|date:'d b H:i' }}</td> <td>{{ invoice.date_create|date:'d b H:i' }}</td>
<td><a href="{% url 'acc_app:other_profile' invoice.author.id %}"
target="_blank">{{ invoice.author.username }}</a></td>
<td>
<a href="{% url 'acc_app:other_profile' invoice.author.id %}">
{{ invoice.author.username }}
</a>
</td>
</tr> </tr>
{% empty %} {% empty %}
<tr> <tr>

2
abonapp/templates/abonapp/editAbon.html

@ -136,7 +136,7 @@
<label for="id_method" class="col-sm-4 control-label">{% trans 'Device' %}</label> <label for="id_method" class="col-sm-4 control-label">{% trans 'Device' %}</label>
<div class="col-sm-8 btn-group btn-group-sm"> <div class="col-sm-8 btn-group btn-group-sm">
{% if device %} {% if device %}
<a href="{% url 'devapp:view' group.pk device.pk %}" target="_blank" class="btn btn-sm btn-default" title="{% trans 'Mac Address' %}: {{ device.mac_addr|default:_('Not assigned') }}">
<a href="{% url 'devapp:view' group.pk device.pk %}" class="btn btn-sm btn-default" title="{% trans 'Mac Address' %}: {{ device.mac_addr|default:_('Not assigned') }}">
<span class="glyphicon glyphicon-hdd"></span> <span class="glyphicon glyphicon-hdd"></span>
<span class="hidden-md">{{ device.comment|truncatechars:11 }} {{ device.ip_address|default:'' }}</span> <span class="hidden-md">{{ device.comment|truncatechars:11 }} {{ device.ip_address|default:'' }}</span>
</a> </a>

2
abonapp/templates/abonapp/group_list.html

@ -70,7 +70,7 @@
<span class="glyphicon glyphicon-usd"></span> <span class="hidden-xs">{% trans 'Fin report' %}</span> <span class="glyphicon glyphicon-usd"></span> <span class="hidden-xs">{% trans 'Fin report' %}</span>
</a> </a>
{% endif %} {% endif %}
<a href="{% url 'abonapp:vcards' %}" target="_blank" class="btn btn-default">
<a href="{% url 'abonapp:vcards' %}" class="btn btn-default">
<span class="glyphicon glyphicon-phone"></span> <span class="glyphicon glyphicon-phone"></span>
<span class="hidden-xs">{% trans 'Export vCards' %}</span> <span class="hidden-xs">{% trans 'Export vCards' %}</span>
</a> </a>

2
abonapp/templates/abonapp/invoiceForPayment.html

@ -49,7 +49,7 @@
{% endif %} {% endif %}
</td> </td>
<td class="col-xs-2"> <td class="col-xs-2">
<a href="{% url 'acc_app:other_profile' inv.author.id %}" target="_blank">{{ inv.author.username }}</a>
<a href="{% url 'acc_app:other_profile' inv.author.id %}">{{ inv.author.username }}</a>
</td> </td>
</tr> </tr>
{% empty %} {% empty %}

2
abonapp/templates/abonapp/modal_phonebook.html

@ -26,7 +26,7 @@
</table> </table>
<div class="modal-footer"> <div class="modal-footer">
<a href="{% url 'abonapp:phonebook' gid %}?f=csv" class="btn btn-default" target="_blank">
<a href="{% url 'abonapp:phonebook' gid %}?f=csv" class="btn btn-default">
<span class="glyphicon glyphicon-export"></span> {% trans 'Export to csv' %} <span class="glyphicon glyphicon-export"></span> {% trans 'Export to csv' %}
</a> </a>
</div> </div>

2
abonapp/templates/abonapp/payHistory.html

@ -18,7 +18,7 @@
<td>{{ ph.date|date:'d F Y, H:i:s' }}</td> <td>{{ ph.date|date:'d F Y, H:i:s' }}</td>
<td> <td>
{% if ph.author %} {% if ph.author %}
<a target="_blank" href="{% url 'acc_app:other_profile' ph.author.pk %}">{{ ph.author.username }}</a>
<a href="{% url 'acc_app:other_profile' ph.author.pk %}">{{ ph.author.username }}</a>
{% else %} {% else %}
{% trans 'System' %} {% trans 'System' %}
{% endif %} {% endif %}

2
abonapp/templates/abonapp/service.html

@ -117,7 +117,7 @@
<dt>{% trans 'Auto continue service.' %}</dt> <dt>{% trans 'Auto continue service.' %}</dt>
<dd> <dd>
<input type="checkbox" data-url="{% url 'abonapp:set_auto_continue_service' group.pk abon.username %}" class="autosave" {{ abon.autoconnect_service|yesno:'checked,' }}> <input type="checkbox" data-url="{% url 'abonapp:set_auto_continue_service' group.pk abon.username %}" class="autosave" {{ abon.autoconnect_service|yesno:'checked,' }}>
<a href="https://github.com/nerosketch/djing/blob/devel/docs/tarifs.md" title="{% trans 'Help' %}" target="_blank" data-toggle="tooltip">?</a>
<a href="https://github.com/nerosketch/djing/blob/devel/docs/tarifs.md" title="{% trans 'Help' %}" data-toggle="tooltip">?</a>
</dd> </dd>
</dl> </dl>

2
accounts_app/templates/accounts/ext.htm

@ -17,7 +17,7 @@
<div class="row"> <div class="row">
<div class="col-sm-3"> <div class="col-sm-3">
<div class="thumbnail"> <div class="thumbnail">
<a href="{{ userprofile.get_big_ava }}" class="thumbnail" target="_blank">
<a href="{{ userprofile.get_big_ava }}" class="thumbnail">
<img alt="ava" src="{{ userprofile.get_min_ava }}"/> <img alt="ava" src="{{ userprofile.get_min_ava }}"/>
</a> </a>
<div class="caption btn-group btn-group-sm"> <div class="caption btn-group btn-group-sm">

5
devapp/templates/devapp/custom_dev_page/onu.html

@ -21,8 +21,7 @@
{% for da in dev_accs %} {% for da in dev_accs %}
<li class="list-group-item">{% trans 'Attached user' %}: <li class="list-group-item">{% trans 'Attached user' %}:
{% if da.group %} {% if da.group %}
<a href="{% url 'abonapp:abon_home' da.group.pk da.username %}"
target="_blank">{{ da.get_full_name }}</a>
<a href="{% url 'abonapp:abon_home' da.group.pk da.username %}">{{ da.get_full_name }}</a>
{% else %} {% else %}
{{ da.get_full_name }} {{ da.get_full_name }}
{% endif %} {% endif %}
@ -32,7 +31,7 @@
<li class="list-group-item"> <li class="list-group-item">
{% with pdev=dev.parent_dev pdgrp=dev.parent_dev.group %} {% with pdev=dev.parent_dev pdgrp=dev.parent_dev.group %}
{% trans 'Parent device' %}: {% trans 'Parent device' %}:
<a href="{% url 'devapp:view' pdgrp.pk pdev.pk %}" title="{{ pdev.mac_addr|default:'' }}" target="_blank">
<a href="{% url 'devapp:view' pdgrp.pk pdev.pk %}" title="{{ pdev.mac_addr|default:'' }}">
{{ pdev.ip_address|default:'-' }} {{ pdev.comment }} {{ pdev.ip_address|default:'-' }} {{ pdev.comment }}
</a> </a>
{% endwith %} {% endwith %}

7
devapp/templates/devapp/custom_dev_page/onu_for_zte.html

@ -22,8 +22,7 @@
{% for da in dev_accs %} {% for da in dev_accs %}
<li class="list-group-item">{% trans 'Attached user' %}: <li class="list-group-item">{% trans 'Attached user' %}:
{% if da.group %} {% if da.group %}
<a href="{% url 'abonapp:abon_home' da.group.pk da.username %}"
target="_blank">{{ da.get_full_name }}</a>
<a href="{% url 'abonapp:abon_home' da.group.pk da.username %}">{{ da.get_full_name }}</a>
{% else %} {% else %}
{{ da.get_full_name }} {{ da.get_full_name }}
{% endif %} {% endif %}
@ -33,9 +32,7 @@
<li class="list-group-item"> <li class="list-group-item">
{% with pdev=dev.parent_dev pdgrp=dev.parent_dev.group %} {% with pdev=dev.parent_dev pdgrp=dev.parent_dev.group %}
{% trans 'Parent device' %}: {% trans 'Parent device' %}:
<a href="{% url 'devapp:view' pdgrp.pk pdev.pk %}"
title="{{ pdev.mac_addr|default:'' }}"
target="_blank">
<a href="{% url 'devapp:view' pdgrp.pk pdev.pk %}" title="{{ pdev.mac_addr|default:'' }}">
{{ pdev.ip_address|default:'-' }} {{ pdev.comment }} {{ pdev.ip_address|default:'-' }} {{ pdev.comment }}
</a> </a>
{% endwith %} {% endwith %}

2
devapp/templates/devapp/group_list.html

@ -35,7 +35,7 @@
<a href="{% url 'devapp:devices_null_group' %}" class="btn btn-primary"> <a href="{% url 'devapp:devices_null_group' %}" class="btn btn-primary">
<span class="glyphicon glyphicon-list-alt"></span> {% trans 'Devices without group' %} <span class="glyphicon glyphicon-list-alt"></span> {% trans 'Devices without group' %}
</a> </a>
<a href="{% url 'devapp:nagios_objects_conf' %}" class="btn btn-default" target="_blank">
<a href="{% url 'devapp:nagios_objects_conf' %}" class="btn btn-default">
<span class="glyphicon glyphicon-export"></span> {% trans 'Export to nagios objects' %} <span class="glyphicon glyphicon-export"></span> {% trans 'Export to nagios objects' %}
</a> </a>
</td> </td>

2
dialing_app/templates/index.html

@ -60,7 +60,7 @@
<span class="glyphicon glyphicon-play"></span> <span class="glyphicon glyphicon-play"></span>
<audio preload="metadata" src="{{ lurl|default:'#' }}"></audio> <audio preload="metadata" src="{{ lurl|default:'#' }}"></audio>
</button> </button>
<a href="{{ lurl|default:'#' }}" class="btn btn-default disabled" target="_blank" title="{% trans 'Download' %}">
<a href="{{ lurl|default:'#' }}" class="btn btn-default disabled" title="{% trans 'Download' %}">
<span class="glyphicon glyphicon-download-alt"></span> <span class="glyphicon glyphicon-download-alt"></span>
</a> </a>
</td> </td>

2
dialing_app/templatetags/telephone_filters.py

@ -14,7 +14,7 @@ def abon_if_telephone(value):
if value[0] != '+': if value[0] != '+':
value = '+' + value value = '+' + value
url = resolve_url('dialapp:to_abon', tel=value) url = resolve_url('dialapp:to_abon', tel=value)
a = '<a href="%s" target="_blank">%s</a>' % (url, value)
a = '<a href="%s">%s</a>' % (url, value)
return a return a
else: else:
return value return value

4
msg_app/templates/msg_app/chat.html

@ -37,7 +37,7 @@
<div class="row"> <div class="row">
<div class="col-sm-1"> <div class="col-sm-1">
{% if can_view_profile %} {% if can_view_profile %}
<a href="{% url 'acc_app:other_profile' author.pk %}" class="thumbnail" target="_blank" title="{{ author.get_full_name }}" data-toggle="tooltip">
<a href="{% url 'acc_app:other_profile' author.pk %}" class="thumbnail" title="{{ author.get_full_name }}" data-toggle="tooltip">
<img src="{{ author.get_min_ava }}" alt="ava"> <img src="{{ author.get_min_ava }}" alt="ava">
</a> </a>
{% else %} {% else %}
@ -51,7 +51,7 @@
<pre>{{ msg.text }}</pre> <pre>{{ msg.text }}</pre>
{% if msg.attachment %} {% if msg.attachment %}
<a href="{{ msg.attachment }}" class="btn btn-default btn-sm" target="_blank">
<a href="{{ msg.attachment }}" class="btn btn-default btn-sm">
<span class="glyphicon glyphicon-gift"></span> {{ msg.attachment }} <span class="glyphicon glyphicon-gift"></span> {{ msg.attachment }}
</a> </a>
{% endif %} {% endif %}

4
searchapp/templates/searchapp/index.html

@ -38,7 +38,7 @@
</form> </form>
<div class="list-group"> <div class="list-group">
{% for ab in abons %} {% for ab in abons %}
<a href="{% url 'abonapp:abon_home' ab.group.id ab.username %}" target="_blank" class="list-group-item">
<a href="{% url 'abonapp:abon_home' ab.group.id ab.username %}" class="list-group-item">
<h4 class="list-group-item-heading"> <h4 class="list-group-item-heading">
<span class="glyphicon glyphicon-user"></span> <span class="glyphicon glyphicon-user"></span>
{{ ab.username_display|safe }} {{ ab.username_display|safe }}
@ -70,7 +70,7 @@
{% else %} {% else %}
{% url 'devapp:fix_device_group' dev.pk as devviewlink %} {% url 'devapp:fix_device_group' dev.pk as devviewlink %}
{% endif %} {% endif %}
<a href="{{ devviewlink }}" target="_blank" class="list-group-item">
<a href="{{ devviewlink }}" class="list-group-item">
<h4 class="list-group-item-heading"> <h4 class="list-group-item-heading">
<span class="glyphicon glyphicon-hdd"></span> <span class="glyphicon glyphicon-hdd"></span>
{{ dev.comment|safe }} {{ dev.comment|safe }}

3
taskapp/locale/ru/LC_MESSAGES/django.po

@ -508,3 +508,6 @@ msgstr "Напоминание о задаче отправлено"
msgid "View all new tasks" msgid "View all new tasks"
msgstr "Все незавершённые задачи" msgstr "Все незавершённые задачи"
msgid "New task with this user already exists. You are redirected to it."
msgstr "Заявка для этого абонента уже создана. Вы перенаправлены к ней."

8
taskapp/templates/taskapp/details.html

@ -9,7 +9,7 @@
{% trans 'Task author' %}: {% trans 'Task author' %}:
{% if task and task.author %} {% if task and task.author %}
<a href="{% url 'acc_app:other_profile' task.author.pk %}" title="{{ task.author.get_full_name }}" data-toggle="tooltip" target="_blank">{{ task.author.username }}</a>
<a href="{% url 'acc_app:other_profile' task.author.pk %}" title="{{ task.author.get_full_name }}" data-toggle="tooltip">{{ task.author.username }}</a>
{% else %} {% else %}
<i>{% trans 'Not assigned' %}</i> <i>{% trans 'Not assigned' %}</i>
{% endif %}<br> {% endif %}<br>
@ -17,7 +17,7 @@
{% trans 'Implementers' %}: {% trans 'Implementers' %}:
<ul> <ul>
{% for recipient in task.recipients.all %} {% for recipient in task.recipients.all %}
<li><a href="{% url 'acc_app:other_profile' recipient.pk %}" target="_blank">{{ recipient.get_full_name }}</a></li>
<li><a href="{% url 'acc_app:other_profile' recipient.pk %}">{{ recipient.get_full_name }}</a></li>
{% endfor %} {% endfor %}
</ul> </ul>
{% trans 'A priority' %}: {{ task.get_priority_display }}<br> {% trans 'A priority' %}: {{ task.get_priority_display }}<br>
@ -28,13 +28,13 @@
{% trans 'Condition' %}: {{ task.get_state_display }}<br> {% trans 'Condition' %}: {{ task.get_state_display }}<br>
{% trans 'Subscriber' %} {% trans 'Subscriber' %}
{% if task.abon %} {% if task.abon %}
<a href="{% url 'abonapp:abon_home' task.abon.group.pk task.abon.username %}" target="_blank">{{ task.abon.get_full_name }}</a>
<a href="{% url 'abonapp:abon_home' task.abon.group.pk task.abon.username %}">{{ task.abon.get_full_name }}</a>
{% else %} {% else %}
<i>{% trans 'Not assigned' %}</i> <i>{% trans 'Not assigned' %}</i>
{% endif %}<br> {% endif %}<br>
{% if task.attachment %} {% if task.attachment %}
{% trans 'Attachment' %}: {% trans 'Attachment' %}:
<a href="{{ task.attachment.url }}" class="thumbnail" target="_blank">
<a href="{{ task.attachment.url }}" class="thumbnail">
<img src="{{ task.attachment.url }}"> <img src="{{ task.attachment.url }}">
</a> </a>
{% endif %} {% endif %}

18
taskapp/views.py

@ -141,6 +141,16 @@ class TaskUpdateView(LoginAdminMixin, UpdateView):
else: else:
if not request.user.has_perm('taskapp.change_task'): if not request.user.has_perm('taskapp.change_task'):
raise PermissionDenied raise PermissionDenied
# check if new task with user already exists
uname = request.GET.get('uname')
if uname:
exists_task = Task.objects.filter(abon__username=uname, state='S')
if exists_task.exists():
messages.info(request, _('New task with this user already exists.'
' You are redirected to it.'))
return redirect('taskapp:edit', exists_task.first().pk)
try: try:
return super(TaskUpdateView, self).dispatch(request, *args, **kwargs) return super(TaskUpdateView, self).dispatch(request, *args, **kwargs)
except TaskException as e: except TaskException as e:
@ -154,6 +164,14 @@ class TaskUpdateView(LoginAdminMixin, UpdateView):
return kwargs return kwargs
def form_valid(self, form): def form_valid(self, form):
# check if new task with picked user already exists
if form.cleaned_data['state'] == 'S':
exists_task = Task.objects.filter(abon=form.cleaned_data['abon'], state='S')
if exists_task.exists():
messages.info(self.request, _('New task with this user already exists.'
' You are redirected to it.'))
return redirect('taskapp:edit', exists_task.first().pk)
try: try:
self.object = form.save() self.object = form.save()
if self.object.author is None: if self.object.author is None:

Loading…
Cancel
Save