mirror of
https://github.com/django-helpdesk/django-helpdesk.git
synced 2024-12-14 19:00:44 +01:00
Merge branch 'master' of git@github.com:rossp/django-helpdesk
This commit is contained in:
commit
8f466966f5
@ -8,6 +8,7 @@ forms.py - Definitions of newforms-based forms for creating and maintaining
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
from StringIO import StringIO
|
||||||
|
|
||||||
from django import forms
|
from django import forms
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
@ -119,10 +120,7 @@ class TicketForm(forms.Form):
|
|||||||
instanceargs['max_digits'] = field.max_length
|
instanceargs['max_digits'] = field.max_length
|
||||||
elif field.data_type == 'list':
|
elif field.data_type == 'list':
|
||||||
fieldclass = forms.ChoiceField
|
fieldclass = forms.ChoiceField
|
||||||
choices = []
|
instanceargs['choices'] = field.choices_as_array
|
||||||
for line in field.list_values.split("\n"):
|
|
||||||
choices.append((line, line))
|
|
||||||
instanceargs['choices'] = choices
|
|
||||||
elif field.data_type == 'boolean':
|
elif field.data_type == 'boolean':
|
||||||
fieldclass = forms.BooleanField
|
fieldclass = forms.BooleanField
|
||||||
elif field.data_type == 'date':
|
elif field.data_type == 'date':
|
||||||
|
Binary file not shown.
@ -8,8 +8,8 @@ msgstr ""
|
|||||||
"Project-Id-Version: django-helpdesk\n"
|
"Project-Id-Version: django-helpdesk\n"
|
||||||
"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n"
|
"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n"
|
||||||
"POT-Creation-Date: 2011-02-07 10:33+0000\n"
|
"POT-Creation-Date: 2011-02-07 10:33+0000\n"
|
||||||
"PO-Revision-Date: 2011-04-18 08:49+0000\n"
|
"PO-Revision-Date: 2011-04-29 20:15+0000\n"
|
||||||
"Last-Translator: rossp <ross@rossp.org>\n"
|
"Last-Translator: albertogaona <gaona_consulting@yahoo.com>\n"
|
||||||
"Language-Team: Spanish (Castilian) <None>\n"
|
"Language-Team: Spanish (Castilian) <None>\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
@ -388,7 +388,7 @@ msgid ""
|
|||||||
"If using IMAP, what folder do you wish to fetch messages from? This allows "
|
"If using IMAP, what folder do you wish to fetch messages from? This allows "
|
||||||
"you to use one IMAP account for multiple queues, by filtering messages on "
|
"you to use one IMAP account for multiple queues, by filtering messages on "
|
||||||
"your IMAP server into separate folders. Default: INBOX."
|
"your IMAP server into separate folders. Default: INBOX."
|
||||||
msgstr ""
|
msgstr "Si utiliza IMAP, ¿qué carpeta"
|
||||||
|
|
||||||
#: models.py:164
|
#: models.py:164
|
||||||
msgid "E-Mail Check Interval"
|
msgid "E-Mail Check Interval"
|
||||||
@ -424,7 +424,7 @@ msgstr "Cerrado"
|
|||||||
#: models.py:240 templates/helpdesk/ticket.html:89
|
#: models.py:240 templates/helpdesk/ticket.html:89
|
||||||
#: templates/helpdesk/ticket.html.py:95 templates/helpdesk/ticket.html:108
|
#: templates/helpdesk/ticket.html.py:95 templates/helpdesk/ticket.html:108
|
||||||
msgid "Duplicate"
|
msgid "Duplicate"
|
||||||
msgstr ""
|
msgstr "Duplicado"
|
||||||
|
|
||||||
#: models.py:244
|
#: models.py:244
|
||||||
msgid "1. Critical"
|
msgid "1. Critical"
|
||||||
@ -479,7 +479,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: models.py:286
|
#: models.py:286
|
||||||
msgid "Assigned to"
|
msgid "Assigned to"
|
||||||
msgstr ""
|
msgstr "Asignado a"
|
||||||
|
|
||||||
#: models.py:290 templates/helpdesk/dashboard.html:26
|
#: models.py:290 templates/helpdesk/dashboard.html:26
|
||||||
#: templates/helpdesk/ticket_list.html:55
|
#: templates/helpdesk/ticket_list.html:55
|
||||||
@ -563,7 +563,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: models.py:494 models.py:861 models.py:1054
|
#: models.py:494 models.py:861 models.py:1054
|
||||||
msgid "User"
|
msgid "User"
|
||||||
msgstr ""
|
msgstr "Usuario"
|
||||||
|
|
||||||
#: models.py:498 templates/helpdesk/ticket.html:84
|
#: models.py:498 templates/helpdesk/ticket.html:84
|
||||||
msgid "New Status"
|
msgid "New Status"
|
||||||
@ -575,7 +575,7 @@ msgstr "Si el estado cambió, ¿que fue a lo que cambió?"
|
|||||||
|
|
||||||
#: models.py:531 models.py:588
|
#: models.py:531 models.py:588
|
||||||
msgid "Follow-up"
|
msgid "Follow-up"
|
||||||
msgstr ""
|
msgstr "Seguimiento"
|
||||||
|
|
||||||
#: models.py:535 models.py:1183
|
#: models.py:535 models.py:1183
|
||||||
msgid "Field"
|
msgid "Field"
|
||||||
@ -854,114 +854,118 @@ msgstr "¿Puede este CC entrar y actualizar el ticket?"
|
|||||||
|
|
||||||
#: models.py:1100
|
#: models.py:1100
|
||||||
msgid "Field Name"
|
msgid "Field Name"
|
||||||
msgstr ""
|
msgstr "Nombre del Campo"
|
||||||
|
|
||||||
#: models.py:1101
|
#: models.py:1101
|
||||||
msgid ""
|
msgid ""
|
||||||
"As used in the database and behind the scenes. Must be unique and consist of"
|
"As used in the database and behind the scenes. Must be unique and consist of"
|
||||||
" only lowercase letters with no punctuation."
|
" only lowercase letters with no punctuation."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Tal y como se usa en la base de datos que soporta al sistema. Debe ser único"
|
||||||
|
" y consistir solo de minúsculas sin signos de puntuación."
|
||||||
|
|
||||||
#: models.py:1106
|
#: models.py:1106
|
||||||
msgid "Label"
|
msgid "Label"
|
||||||
msgstr ""
|
msgstr "Etiqueta"
|
||||||
|
|
||||||
#: models.py:1108
|
#: models.py:1108
|
||||||
msgid "The display label for this field"
|
msgid "The display label for this field"
|
||||||
msgstr ""
|
msgstr "La etiqueta a desplegar para este campo"
|
||||||
|
|
||||||
#: models.py:1112
|
#: models.py:1112
|
||||||
msgid "Help Text"
|
msgid "Help Text"
|
||||||
msgstr ""
|
msgstr "Texto de ayuda"
|
||||||
|
|
||||||
#: models.py:1113
|
#: models.py:1113
|
||||||
msgid "Shown to the user when editing the ticket"
|
msgid "Shown to the user when editing the ticket"
|
||||||
msgstr ""
|
msgstr "Despeglado al usuario cuando se edita el ticket"
|
||||||
|
|
||||||
#: models.py:1119
|
#: models.py:1119
|
||||||
msgid "Character (single line)"
|
msgid "Character (single line)"
|
||||||
msgstr ""
|
msgstr "Caracter (línea sencilla)"
|
||||||
|
|
||||||
#: models.py:1120
|
#: models.py:1120
|
||||||
msgid "Text (multi-line)"
|
msgid "Text (multi-line)"
|
||||||
msgstr ""
|
msgstr "Texto (multi-línea)"
|
||||||
|
|
||||||
#: models.py:1121
|
#: models.py:1121
|
||||||
msgid "Integer"
|
msgid "Integer"
|
||||||
msgstr ""
|
msgstr "Entero"
|
||||||
|
|
||||||
#: models.py:1122
|
#: models.py:1122
|
||||||
msgid "Decimal"
|
msgid "Decimal"
|
||||||
msgstr ""
|
msgstr "Decimal"
|
||||||
|
|
||||||
#: models.py:1123
|
#: models.py:1123
|
||||||
msgid "List"
|
msgid "List"
|
||||||
msgstr ""
|
msgstr "Listado"
|
||||||
|
|
||||||
#: models.py:1124
|
#: models.py:1124
|
||||||
msgid "Boolean (checkbox yes/no)"
|
msgid "Boolean (checkbox yes/no)"
|
||||||
msgstr ""
|
msgstr "Booleano (checkbox sí/no)"
|
||||||
|
|
||||||
#: models.py:1126
|
#: models.py:1126
|
||||||
msgid "Time"
|
msgid "Time"
|
||||||
msgstr ""
|
msgstr "Hora"
|
||||||
|
|
||||||
#: models.py:1127
|
#: models.py:1127
|
||||||
msgid "Date & Time"
|
msgid "Date & Time"
|
||||||
msgstr ""
|
msgstr "Fecha y hora"
|
||||||
|
|
||||||
#: models.py:1129
|
#: models.py:1129
|
||||||
msgid "URL"
|
msgid "URL"
|
||||||
msgstr ""
|
msgstr "URL"
|
||||||
|
|
||||||
#: models.py:1130
|
#: models.py:1130
|
||||||
msgid "IP Address"
|
msgid "IP Address"
|
||||||
msgstr ""
|
msgstr "Dirección IP"
|
||||||
|
|
||||||
#: models.py:1135
|
#: models.py:1135
|
||||||
msgid "Data Type"
|
msgid "Data Type"
|
||||||
msgstr ""
|
msgstr "Tipo de dato"
|
||||||
|
|
||||||
#: models.py:1137
|
#: models.py:1137
|
||||||
msgid "Allows you to restrict the data entered into this field"
|
msgid "Allows you to restrict the data entered into this field"
|
||||||
msgstr ""
|
msgstr "Le permite restringir los datos introducidos en este campo"
|
||||||
|
|
||||||
#: models.py:1142
|
#: models.py:1142
|
||||||
msgid "Maximum Length (characters)"
|
msgid "Maximum Length (characters)"
|
||||||
msgstr ""
|
msgstr "Longitud máxima (caracteres)"
|
||||||
|
|
||||||
#: models.py:1148
|
#: models.py:1148
|
||||||
msgid "Decimal Places"
|
msgid "Decimal Places"
|
||||||
msgstr ""
|
msgstr "Lugales decimales"
|
||||||
|
|
||||||
#: models.py:1149
|
#: models.py:1149
|
||||||
msgid "Only used for decimal fields"
|
msgid "Only used for decimal fields"
|
||||||
msgstr ""
|
msgstr "Solo se utiliza en campos decimales"
|
||||||
|
|
||||||
#: models.py:1155
|
#: models.py:1155
|
||||||
msgid "List Values"
|
msgid "List Values"
|
||||||
msgstr ""
|
msgstr "Lista de valores"
|
||||||
|
|
||||||
#: models.py:1156
|
#: models.py:1156
|
||||||
msgid "For list fields only. Enter one option per line."
|
msgid "For list fields only. Enter one option per line."
|
||||||
msgstr ""
|
msgstr "Solo para listas de valores. Introduzca una opción por línea."
|
||||||
|
|
||||||
#: models.py:1162
|
#: models.py:1162
|
||||||
msgid "Required?"
|
msgid "Required?"
|
||||||
msgstr ""
|
msgstr "¿Obligatorio?"
|
||||||
|
|
||||||
#: models.py:1163
|
#: models.py:1163
|
||||||
msgid "Does the user have to enter a value for this field?"
|
msgid "Does the user have to enter a value for this field?"
|
||||||
msgstr ""
|
msgstr "¿El usuario está obligado a introducir un valor en este campo?"
|
||||||
|
|
||||||
#: models.py:1167
|
#: models.py:1167
|
||||||
msgid "Staff Only?"
|
msgid "Staff Only?"
|
||||||
msgstr ""
|
msgstr "¿Solo personal interno?"
|
||||||
|
|
||||||
#: models.py:1168
|
#: models.py:1168
|
||||||
msgid ""
|
msgid ""
|
||||||
"If this is ticked, then the public submission form will NOT show this field"
|
"If this is ticked, then the public submission form will NOT show this field"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Si está seleccionado, este campo NO será visible en la forma pública de "
|
||||||
|
"creación de tickets"
|
||||||
|
|
||||||
#: management/commands/escalate_tickets.py:146
|
#: management/commands/escalate_tickets.py:146
|
||||||
#, python-format
|
#, python-format
|
||||||
@ -990,7 +994,7 @@ msgstr "email_html_body.html"
|
|||||||
|
|
||||||
#: management/commands/get_email.py:285
|
#: management/commands/get_email.py:285
|
||||||
msgid " (Reopened)"
|
msgid " (Reopened)"
|
||||||
msgstr ""
|
msgstr "(Reabierto)"
|
||||||
|
|
||||||
#: management/commands/get_email.py:287
|
#: management/commands/get_email.py:287
|
||||||
msgid " (Updated)"
|
msgid " (Updated)"
|
||||||
@ -1009,7 +1013,7 @@ msgstr ""
|
|||||||
|
|
||||||
#: templates/helpdesk/base.html:7
|
#: templates/helpdesk/base.html:7
|
||||||
msgid "Powered by django-helpdesk"
|
msgid "Powered by django-helpdesk"
|
||||||
msgstr ""
|
msgstr "Con tecnología de django-helpdesk"
|
||||||
|
|
||||||
#: templates/helpdesk/base.html:12 templates/helpdesk/rss_list.html:9
|
#: templates/helpdesk/base.html:12 templates/helpdesk/rss_list.html:9
|
||||||
#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28
|
#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28
|
||||||
@ -1065,6 +1069,8 @@ msgid ""
|
|||||||
"Powered by <a href='https://github.com/rossp/django-helpdesk'>django-"
|
"Powered by <a href='https://github.com/rossp/django-helpdesk'>django-"
|
||||||
"helpdesk</a>."
|
"helpdesk</a>."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Con tecnología de <a href='https://github.com/rossp/django-helpdesk'>django-"
|
||||||
|
"helpdesk</a>."
|
||||||
|
|
||||||
#: templates/helpdesk/base.html:73 templates/helpdesk/rss_list.html:9
|
#: templates/helpdesk/base.html:73 templates/helpdesk/rss_list.html:9
|
||||||
#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15
|
#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15
|
||||||
@ -1101,12 +1107,18 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>Are you sure you want to delete this saved filter (<em>%(query_title)s</em>)? To re-create it, you will need to manually re-filter your ticket listing.</p>\n"
|
"<p>Are you sure you want to delete this saved filter (<em>%(query_title)s</em>)? To re-create it, you will need to manually re-filter your ticket listing.</p>\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Eliminar Consulta</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p> ¿Estás seguro que quieres eliminar este filtro guardado <em>( %(query_title)s )?</em> Para volver a crearlo, tendrá que manualmente volver a filtrar la lista de ticket. </p>\n"
|
||||||
|
|
||||||
#: templates/helpdesk/confirm_delete_saved_query.html:11
|
#: templates/helpdesk/confirm_delete_saved_query.html:11
|
||||||
msgid ""
|
msgid ""
|
||||||
"\n"
|
"\n"
|
||||||
"<p>You have shared this query, so other users may be using it. If you delete it, they will have to manually create their own query.</p>\n"
|
"<p>You have shared this query, so other users may be using it. If you delete it, they will have to manually create their own query.</p>\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<p> Ha compartido esta consulta para que los otros usuarios pueden usarla. Si la elimina tendrá que crear manualmente su propia consulta. </p>\n"
|
||||||
|
|
||||||
#: templates/helpdesk/confirm_delete_saved_query.html:15
|
#: templates/helpdesk/confirm_delete_saved_query.html:15
|
||||||
#: templates/helpdesk/delete_ticket.html:11
|
#: templates/helpdesk/delete_ticket.html:11
|
||||||
@ -1128,6 +1140,9 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>Unless otherwise stated, all fields are required. Please provide as descriptive a title and description as possible.</p>"
|
"<p>Unless otherwise stated, all fields are required. Please provide as descriptive a title and description as possible.</p>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"<h2> Enviar Ticket </h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p> A menos que se indique lo contrario, todos los campos son obligatorios. Por favor proporcione toda la información posible</p>"
|
||||||
|
|
||||||
#: templates/helpdesk/create_ticket.html:17
|
#: templates/helpdesk/create_ticket.html:17
|
||||||
#: templates/helpdesk/edit_ticket.html:19
|
#: templates/helpdesk/edit_ticket.html:19
|
||||||
@ -1154,6 +1169,9 @@ msgid ""
|
|||||||
"tickets, and those tickets that have no owner. Why not pick up an orphan "
|
"tickets, and those tickets that have no owner. Why not pick up an orphan "
|
||||||
"ticket and sort it out for a customer?"
|
"ticket and sort it out for a customer?"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"¡Bienvenido a su pizarra de Helpdesk! Desde aquí puede dar un vistazo a sus "
|
||||||
|
"tickets, y a los tickets sin asignar. ¿Porqué no toma un ticket huérfano y "
|
||||||
|
"comienza a atenderlo?"
|
||||||
|
|
||||||
#: templates/helpdesk/dashboard.html:25
|
#: templates/helpdesk/dashboard.html:25
|
||||||
msgid "Your Tickets"
|
msgid "Your Tickets"
|
||||||
@ -1241,6 +1259,12 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>You can either enter a whole e-mail address such as <em>email@domain.com</em> or a portion of an e-mail address with a wildcard, such as <em>*@domain.com</em> or <em>user@*</em>.</p>"
|
"<p>You can either enter a whole e-mail address such as <em>email@domain.com</em> or a portion of an e-mail address with a wildcard, such as <em>*@domain.com</em> or <em>user@*</em>.</p>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Ignorar dirección E-Mail</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Para ignorar una dirección e-mail y evitar que se creen tickets automáticos desde esa dirección, introduzca la dirección e-mail abajo.</p>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Puede especificar tanto una dirección de correo complete, tal como <em>email@dominio.com</em> o solo una porción de la dirección de correo con un wildcard, como por ejemplo <em>*@dominio.com</em> o <em>usuario@*</em>.</p>"
|
||||||
|
|
||||||
#: templates/helpdesk/email_ignore_del.html:3
|
#: templates/helpdesk/email_ignore_del.html:3
|
||||||
msgid "Delete Ignored E-Mail Address"
|
msgid "Delete Ignored E-Mail Address"
|
||||||
@ -1254,6 +1278,10 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>Are you sure you wish to stop removing this email address (<em>%(email_address)s</em>) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time.</p>\n"
|
"<p>Are you sure you wish to stop removing this email address (<em>%(email_address)s</em>) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time.</p>\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Des-ignorar dirección E-Mail</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>¿Está seguro de que quiere dejar de evitar esta dirección de correo (<em>%(email_address)s</em>) y permitir que los correos de esta dirección creen tickets en el sistema? Puede añadir la dirección e-mail en cualquier momento. </p>\n"
|
||||||
|
|
||||||
#: templates/helpdesk/email_ignore_del.html:11
|
#: templates/helpdesk/email_ignore_del.html:11
|
||||||
msgid "Keep Ignoring It"
|
msgid "Keep Ignoring It"
|
||||||
@ -1275,6 +1303,10 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can <a href='add/'>add a new e-mail address to the list</a> or delete any of the items below as required.</p>"
|
"<p>The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can <a href='add/'>add a new e-mail address to the list</a> or delete any of the items below as required.</p>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Direcciones E-Mail Ignoradas</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Las siguientes direcciones e-mail están siendo ignoradas en este momento por el procesador de correo entrante. Puedes <a href='add/'>añadir una nueva dirección e-mail a la lista</a> o borrar cualquiera de los elementos abajo, a discreción.</p>"
|
||||||
|
|
||||||
#: templates/helpdesk/email_ignore_list.html:13
|
#: templates/helpdesk/email_ignore_list.html:13
|
||||||
msgid "Date Added"
|
msgid "Date Added"
|
||||||
@ -1307,23 +1339,23 @@ msgstr ""
|
|||||||
|
|
||||||
#: templates/helpdesk/followup_edit.html:2
|
#: templates/helpdesk/followup_edit.html:2
|
||||||
msgid "Edit followup"
|
msgid "Edit followup"
|
||||||
msgstr ""
|
msgstr "Editar seguimiento"
|
||||||
|
|
||||||
#: templates/helpdesk/followup_edit.html:9
|
#: templates/helpdesk/followup_edit.html:9
|
||||||
msgid "Edit FollowUp"
|
msgid "Edit FollowUp"
|
||||||
msgstr ""
|
msgstr "Editar Seguimiento"
|
||||||
|
|
||||||
#: templates/helpdesk/followup_edit.html:14
|
#: templates/helpdesk/followup_edit.html:14
|
||||||
msgid "Reassign ticket:"
|
msgid "Reassign ticket:"
|
||||||
msgstr ""
|
msgstr "Re-asignar ticket:"
|
||||||
|
|
||||||
#: templates/helpdesk/followup_edit.html:16
|
#: templates/helpdesk/followup_edit.html:16
|
||||||
msgid "Title:"
|
msgid "Title:"
|
||||||
msgstr ""
|
msgstr "Título:"
|
||||||
|
|
||||||
#: templates/helpdesk/followup_edit.html:19
|
#: templates/helpdesk/followup_edit.html:19
|
||||||
msgid "Comment:"
|
msgid "Comment:"
|
||||||
msgstr ""
|
msgstr "Comentario:"
|
||||||
|
|
||||||
#: templates/helpdesk/kb_category.html:4
|
#: templates/helpdesk/kb_category.html:4
|
||||||
#: templates/helpdesk/kb_category.html:11
|
#: templates/helpdesk/kb_category.html:11
|
||||||
@ -1431,6 +1463,8 @@ msgid ""
|
|||||||
"Powered by <a href='http://github.com/rossp/django-helpdesk'>django-"
|
"Powered by <a href='http://github.com/rossp/django-helpdesk'>django-"
|
||||||
"helpdesk</a>."
|
"helpdesk</a>."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Con tecnología de <a href='http://github.com/rossp/django-helpdesk'>django-"
|
||||||
|
"helpdesk</a>."
|
||||||
|
|
||||||
#: templates/helpdesk/public_homepage.html:4
|
#: templates/helpdesk/public_homepage.html:4
|
||||||
#: templates/helpdesk/public_view_form.html:4
|
#: templates/helpdesk/public_view_form.html:4
|
||||||
@ -1472,6 +1506,11 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers.</p>\n"
|
"<p>We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers.</p>\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"<p>Lo sentimos, pero se generó un error al tratar de ingresar su ticket.</p>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Nuestro sistema ha catalogado su envío como <strong>spam</strong>, por lo que no podemos guardarlo. Si no es spam, por favor presione atrás y reingrese su mensaje. Intente no ingresar palabras que puedan sonar a spam, y si tiene ligas en su mensaje trate de eliminarlas si es posible.</p>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Sentimos el inconveniente, pero necesitamos verificar el correo contra spam para evitar que nuestros recursos de helpdesk sean bloqueados por spammers.</p>\n"
|
||||||
|
|
||||||
#: templates/helpdesk/public_view_form.html:8
|
#: templates/helpdesk/public_view_form.html:8
|
||||||
msgid "Error:"
|
msgid "Error:"
|
||||||
@ -1521,6 +1560,10 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>You haven't created any tickets yet, so you cannot run any reports.</p>\n"
|
"<p>You haven't created any tickets yet, so you cannot run any reports.</p>\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Reportes & Estadísticas</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>No ha creado tickets, por lo que no puede ejecutar ningún reporte aun.</p>\n"
|
||||||
|
|
||||||
#: templates/helpdesk/report_index.html:12
|
#: templates/helpdesk/report_index.html:12
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -1579,6 +1622,11 @@ msgid ""
|
|||||||
"all feeds provide information only on Open and Reopened cases. This ensures "
|
"all feeds provide information only on Open and Reopened cases. This ensures "
|
||||||
"your RSS reader isn't full of information about closed or historical tasks."
|
"your RSS reader isn't full of information about closed or historical tasks."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Los siguientes canales RSS están disponibles para que pueda monitorearlos "
|
||||||
|
"utilizando su herramienta preferida de RSS. Con la excepción del canal de "
|
||||||
|
"'Última Actividad', todos los canales proveen información solo de casos "
|
||||||
|
"Abiertos y Reabiertos. Esto para evitar saturar su lector de RSS con "
|
||||||
|
"información de tareas cerrados o históricas."
|
||||||
|
|
||||||
#: templates/helpdesk/rss_list.html:10
|
#: templates/helpdesk/rss_list.html:10
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -1605,6 +1653,8 @@ msgid ""
|
|||||||
"All unassigned tickets - useful for being alerted to new tickets opened by "
|
"All unassigned tickets - useful for being alerted to new tickets opened by "
|
||||||
"the public via the web or via e-mail"
|
"the public via the web or via e-mail"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Todos los tickes sin asignar - útil para recibir alertas sobre tickets "
|
||||||
|
"abiertos vía web o e-mail"
|
||||||
|
|
||||||
#: templates/helpdesk/rss_list.html:19
|
#: templates/helpdesk/rss_list.html:19
|
||||||
msgid ""
|
msgid ""
|
||||||
@ -1613,10 +1663,15 @@ msgid ""
|
|||||||
"manage the staff who utilise a particular queue, this may be used to view "
|
"manage the staff who utilise a particular queue, this may be used to view "
|
||||||
"new tickets coming into that queue."
|
"new tickets coming into that queue."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"Estos canales RSS le permiten ver un resumen ya sea de sus propios tickets o"
|
||||||
|
" de todos los tickes, para cada una de las colas de su helpdesk. Por "
|
||||||
|
"ejemplo, si usted es el supervisor del personal que utiliza una cola en "
|
||||||
|
"particular, esto puede utilizarse para ver los nuevos tickets llegando a esa"
|
||||||
|
" cola"
|
||||||
|
|
||||||
#: templates/helpdesk/rss_list.html:22
|
#: templates/helpdesk/rss_list.html:22
|
||||||
msgid "Per-Queue Feeds"
|
msgid "Per-Queue Feeds"
|
||||||
msgstr ""
|
msgstr "Canales por cola"
|
||||||
|
|
||||||
#: templates/helpdesk/rss_list.html:23
|
#: templates/helpdesk/rss_list.html:23
|
||||||
msgid "All Open Tickets"
|
msgid "All Open Tickets"
|
||||||
@ -1637,6 +1692,10 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>The following items can be maintained by you or other superusers:</p>"
|
"<p>The following items can be maintained by you or other superusers:</p>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Ajustes del sistema</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Los elementos siguientes solo pueden ser gestionados por usted o por otros super-usuarios:</p>"
|
||||||
|
|
||||||
#: templates/helpdesk/system_settings.html:11
|
#: templates/helpdesk/system_settings.html:11
|
||||||
msgid "E-Mail Ignore list"
|
msgid "E-Mail Ignore list"
|
||||||
@ -1760,6 +1819,10 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>To automatically send an email to a user or e-mail address when this ticket is updated, select the user or enter an e-mail address below.</p>"
|
"<p>To automatically send an email to a user or e-mail address when this ticket is updated, select the user or enter an e-mail address below.</p>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Añadir CC al Ticket</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Para enviar un email automático a un usuario o dirección de e-mail cuando este ticket sea actualizado, seleccione el usuario o ingrese una dirección de correo abajo.</p>"
|
||||||
|
|
||||||
#: templates/helpdesk/ticket_cc_add.html:21
|
#: templates/helpdesk/ticket_cc_add.html:21
|
||||||
msgid "Save Ticket CC"
|
msgid "Save Ticket CC"
|
||||||
@ -1777,6 +1840,10 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>Are you sure you wish to delete this email address (<em>%(email_address)s</em>) from the CC list for this ticket? They will stop receiving updates.</p>\n"
|
"<p>Are you sure you wish to delete this email address (<em>%(email_address)s</em>) from the CC list for this ticket? They will stop receiving updates.</p>\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Borrar CC al Ticket</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>¿Está seguro de que desea eliminar esta dirección de e-mail (<em>%(email_address)s</em>) de la lista CC para este ticket? Esta dirección dejará de recibir actualizaciones.</p>\n"
|
||||||
|
|
||||||
#: templates/helpdesk/ticket_cc_del.html:11
|
#: templates/helpdesk/ticket_cc_del.html:11
|
||||||
msgid "Don't Delete"
|
msgid "Don't Delete"
|
||||||
@ -1800,6 +1867,12 @@ msgid ""
|
|||||||
"\n"
|
"\n"
|
||||||
"<p>You can <a href='add/'>add a new e-mail address to the list</a> or delete any of the items below as required.</p>"
|
"<p>You can <a href='add/'>add a new e-mail address to the list</a> or delete any of the items below as required.</p>"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
"\n"
|
||||||
|
"<h2>Configuración de CC de Ticket</h2>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Las siguientes personas recibirán un e-mail cada que el ticket <em><a href='../'>%(ticket_title)s</a></em> se actualice. Algunas personas también pueden ver o editar el ticket con las vistas públicas de ticket.</p>\n"
|
||||||
|
"\n"
|
||||||
|
"<p>Usted puede <a href='add/'>añadir una nueva dirección e-mail a la lista</a> o borrar uno de los elementos abajo, como lo requiera.</p>"
|
||||||
|
|
||||||
#: templates/helpdesk/ticket_cc_list.html:14
|
#: templates/helpdesk/ticket_cc_list.html:14
|
||||||
msgid "Ticket CC List"
|
msgid "Ticket CC List"
|
||||||
|
BIN
helpdesk/locale/es_MX/LC_MESSAGES/django.mo
Normal file
BIN
helpdesk/locale/es_MX/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2204
helpdesk/locale/es_MX/LC_MESSAGES/django.po
Normal file
2204
helpdesk/locale/es_MX/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load Diff
BIN
helpdesk/locale/fr/LC_MESSAGES/django.mo
Normal file
BIN
helpdesk/locale/fr/LC_MESSAGES/django.mo
Normal file
Binary file not shown.
2177
helpdesk/locale/fr/LC_MESSAGES/django.po
Normal file
2177
helpdesk/locale/fr/LC_MESSAGES/django.po
Normal file
File diff suppressed because it is too large
Load Diff
@ -1169,6 +1169,14 @@ class CustomField(models.Model):
|
|||||||
null=True,
|
null=True,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def _choices_as_array(self):
|
||||||
|
from StringIO import StringIO
|
||||||
|
valuebuffer = StringIO(self.list_values)
|
||||||
|
choices = [[item.strip(), item.strip()] for item in valuebuffer.readlines()]
|
||||||
|
valuebuffer.close()
|
||||||
|
return choices
|
||||||
|
choices_as_array = property(_choices_as_array)
|
||||||
|
|
||||||
required = models.BooleanField(
|
required = models.BooleanField(
|
||||||
_('Required?'),
|
_('Required?'),
|
||||||
help_text=_('Does the user have to enter a value for this field?'),
|
help_text=_('Does the user have to enter a value for this field?'),
|
||||||
|
@ -2,6 +2,16 @@
|
|||||||
|
|
||||||
{% block helpdesk_title %}{% trans "Reports & Statistics" %}{% endblock %}
|
{% block helpdesk_title %}{% trans "Reports & Statistics" %}{% endblock %}
|
||||||
|
|
||||||
|
{% block helpdesk_head %}
|
||||||
|
<!--[if IE]><script language="javascript" type="text/javascript" src="{{ MEDIA_URL }}helpdesk/jquery.jqplot/excanvas.min.js"></script><![endif]-->
|
||||||
|
<script src='{{ MEDIA_URL }}helpdesk/jquery.jqplot/jquery.jqplot.min.js' type='text/javascript' language='javascript'></script>
|
||||||
|
<link rel='stylesheet' typ='text/css' href='{{ MEDIA_URL }}helpdesk/jquery.jqplot/jquery.jqplot.min.css' />
|
||||||
|
<script type="text/javascript" src="{{ MEDIA_URL }}helpdesk/jquery.jqplot/plugins/jqplot.categoryAxisRenderer.min.js"></script>
|
||||||
|
<script type="text/javascript" src="{{ MEDIA_URL }}helpdesk/jquery.jqplot/plugins/jqplot.barRenderer.min.js"></script>
|
||||||
|
<script type="text/javascript" src="{{ MEDIA_URL }}helpdesk/jquery.jqplot/plugins/jqplot.dateAxisRenderer.min.js"></script>
|
||||||
|
|
||||||
|
{% endblock %}
|
||||||
|
|
||||||
{% block helpdesk_body %}
|
{% block helpdesk_body %}
|
||||||
<h2>{% trans "Reports & Statistics" %}</h2>
|
<h2>{% trans "Reports & Statistics" %}</h2>
|
||||||
|
|
||||||
@ -12,6 +22,69 @@
|
|||||||
<tr class='row_{% cycle odd,even %}'>{% for f in d %}<td>{{ f }}</td>{% endfor %}</tr>{% endfor %}
|
<tr class='row_{% cycle odd,even %}'>{% for f in d %}<td>{{ f }}</td>{% endfor %}</tr>{% endfor %}
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
{% if chart %}<img src='{{ chart }}' />{% endif %}
|
<div class='jqPlot' id='placeholder' style='width: 600px; height: 400px;'></div>
|
||||||
|
{% ifequal charttype "date" %}
|
||||||
|
<script type='text/javascript'>
|
||||||
|
$.jqplot.config.enablePlugins = true;
|
||||||
|
var dataset = [];
|
||||||
|
|
||||||
|
{% for d in data %}
|
||||||
|
dataset[{{ forloop.counter0 }}] = [{% for f in d %}{% if not forloop.first %}['{% for h in headings %}{% ifequal forloop.counter0 forloop.parentloop.counter0 %}{{ h }}{% endifequal %}{% endfor %}', {{ f }}]{% if not forloop.last %}, {% endif %}{% endif %}{% endfor %}];{% endfor %}
|
||||||
|
|
||||||
|
plot = $.jqplot('placeholder', dataset, {
|
||||||
|
legend: {show: true, location: 'nw', xoffset: 55},
|
||||||
|
title: "{{ title }}",
|
||||||
|
series: [{% for d in data %}
|
||||||
|
{
|
||||||
|
label:'{{ d.0 }}',
|
||||||
|
lineWidth: 4,
|
||||||
|
markerOptions: { style: 'square'}
|
||||||
|
}{% if not forloop.last %},{% endif %}{% endfor %}
|
||||||
|
],
|
||||||
|
axes: {
|
||||||
|
xaxis: {
|
||||||
|
renderer: $.jqplot.DateAxisRenderer
|
||||||
|
},
|
||||||
|
yaxis: {
|
||||||
|
min: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
{% endifequal %}
|
||||||
|
{% ifequal charttype "bar" %}
|
||||||
|
<script type='text/javascript'>
|
||||||
|
$.jqplot.config.enablePlugins = true;
|
||||||
|
var dataset = [];
|
||||||
|
|
||||||
|
{% for d in data %}
|
||||||
|
dataset[{{ forloop.counter0 }}] = [{% for f in d %}{% if not forloop.first %}{{ f }}{% if not forloop.last %}, {% endif %}{% endif %}{% endfor %}];{% endfor %}
|
||||||
|
|
||||||
|
plot = $.jqplot('placeholder', dataset, {
|
||||||
|
legend: {show: true, location: 'nw', xoffset: 55},
|
||||||
|
title: "{{ title }}",
|
||||||
|
seriesDefaults: {
|
||||||
|
renderer: $.jqplot.BarRenderer,
|
||||||
|
rendererOptions: {barPadding: 8, barMargin: 20}
|
||||||
|
},
|
||||||
|
series: [{% for d in data %}
|
||||||
|
{label:'{{ d.0 }}'}{% if not forloop.last %},{% endif %}{% endfor %}
|
||||||
|
],
|
||||||
|
axes: {
|
||||||
|
xaxis: {
|
||||||
|
renderer: $.jqplot.CategoryAxisRenderer,
|
||||||
|
ticks: [{% for h in headings %}{% if not forloop.first %}'{{ h }}'{% if not forloop.last %}, {% endif %}{% endif %}{% endfor %}]
|
||||||
|
},
|
||||||
|
yaxis: {
|
||||||
|
min: 0
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
{% endifequal %}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
@ -84,6 +84,12 @@ def view_ticket(request):
|
|||||||
|
|
||||||
if ticket:
|
if ticket:
|
||||||
|
|
||||||
|
if request.user.is_staff:
|
||||||
|
redirect_url = reverse('helpdesk_view', args=[ticket_id])
|
||||||
|
if request.GET.has_key('close'):
|
||||||
|
redirect_url += '?close'
|
||||||
|
return HttpResponseRedirect(redirect_url)
|
||||||
|
|
||||||
if request.GET.has_key('close') and ticket.status == Ticket.RESOLVED_STATUS:
|
if request.GET.has_key('close') and ticket.status == Ticket.RESOLVED_STATUS:
|
||||||
from helpdesk.views.staff import update_ticket
|
from helpdesk.views.staff import update_ticket
|
||||||
# Trick the update_ticket() view into thinking it's being called with
|
# Trick the update_ticket() view into thinking it's being called with
|
||||||
|
@ -896,10 +896,13 @@ def run_report(request, report):
|
|||||||
|
|
||||||
if report in ('queuemonth', 'usermonth'):
|
if report in ('queuemonth', 'usermonth'):
|
||||||
chart_url = line_chart([columns] + data)
|
chart_url = line_chart([columns] + data)
|
||||||
|
charttype = 'date'
|
||||||
elif report in ('queuestatus', 'queuepriority', 'userstatus', 'userpriority'):
|
elif report in ('queuestatus', 'queuepriority', 'userstatus', 'userpriority'):
|
||||||
chart_url = bar_chart([columns] + data)
|
chart_url = bar_chart([columns] + data)
|
||||||
|
charttype = 'bar'
|
||||||
else:
|
else:
|
||||||
chart_url = ''
|
chart_url = ''
|
||||||
|
charttype = ''
|
||||||
|
|
||||||
return render_to_response('helpdesk/report_output.html',
|
return render_to_response('helpdesk/report_output.html',
|
||||||
RequestContext(request, {
|
RequestContext(request, {
|
||||||
@ -907,6 +910,7 @@ def run_report(request, report):
|
|||||||
'data': data,
|
'data': data,
|
||||||
'chart': chart_url,
|
'chart': chart_url,
|
||||||
'title': title,
|
'title': title,
|
||||||
|
'charttype': charttype,
|
||||||
}))
|
}))
|
||||||
run_report = staff_member_required(run_report)
|
run_report = staff_member_required(run_report)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user